:root{
  color-scheme:dark;--content:1180px;
  --bg:#02040b;--ink:#eaf0ff;--mute:#8a97b8;--dim:#8392af;
  --line:rgba(255,255,255,.08);--glass:rgba(255,255,255,.045);--glass2:rgba(255,255,255,.075);
  --blue:#2f80ff;--blue2:#1b66ff;--sky:#7db4ff;--win:#22d38a;--loss:#ff5c73;--warn:#ffb84d;
  --r:16px;--ring:0 0 0 3px #2f80ff25;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px;scroll-padding-bottom:100px}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font:16px/1.55 "Avenir Next",Avenir,"Segoe UI",sans-serif;overflow-x:hidden}
.hidden{display:none!important}
button,input,select{font:inherit;color:inherit}
button{touch-action:manipulation}select{background:#0b1426;border:var(--hair) solid var(--line);border-radius:12px;min-height:44px;padding:10px 14px}option{background:#0b1426;color:var(--ink)}
:focus-visible{outline:2px solid var(--sky);outline-offset:2px}

/* fundo aurora */
.aurora{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(1200px 600px at 50% -10%,rgba(27,102,255,.16),transparent 60%),var(--bg)}
.aurora i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.23;animation:drift 22s ease-in-out infinite alternate}
.aurora i:nth-child(1){width:420px;height:420px;left:-120px;top:8%;background:#0f3fbf}
.aurora i:nth-child(2){width:360px;height:360px;right:-100px;top:38%;background:#1b66ff;animation-duration:28s;animation-delay:-8s}
.aurora i:nth-child(3){width:300px;height:300px;left:30%;bottom:-140px;background:#0a2a7a;animation-duration:25s;animation-delay:-14s}
@keyframes drift{to{transform:translate3d(60px,-40px,0) scale(1.15)}}

/* topo */
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:14px max(20px,calc((100vw - var(--content))/2));background:rgba(2,4,11,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:var(--hair) solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:600;letter-spacing:.2px}
.brand b{color:var(--sky)}
.mark{width:46px;height:28px;object-fit:contain}
.live-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:99px;background:rgba(34,211,138,.1);border:var(--hair) solid rgba(34,211,138,.3);color:var(--win);font-size:13px;font-weight:600}
.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--win);box-shadow:0 0 0 0 rgba(34,211,138,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(34,211,138,0)}100%{box-shadow:0 0 0 0 rgba(34,211,138,0)}}

/* etapas */
.steps{display:flex;align-items:center;justify-content:center;gap:0;max-width:760px;margin:18px auto 0;padding:0 18px}
.step{display:flex;align-items:center;gap:8px;color:var(--dim);font-size:12.5px;font-weight:600;white-space:nowrap}
.step .dot{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:var(--hair) solid var(--line);background:var(--glass);font-size:12px}
.step.done{color:var(--sky)}.step.done .dot{background:rgba(47,128,255,.18);border-color:rgba(125,180,255,.4)}
.step.on{color:var(--ink)}.step.on .dot{background:linear-gradient(135deg,var(--blue),var(--blue2));border-color:transparent;box-shadow:var(--ring)}
.step+.step::before{content:"";width:clamp(10px,4vw,34px);height:var(--hair);background:var(--line);margin:0 8px}
.step.done+.step::before,.step.on::before{background:rgba(125,180,255,.45)}
@media(max-width:560px){.step span.t{display:none}.step.on span.t{display:inline}}

.banner{width:calc(100% - 40px);max-width:1060px;margin:14px auto 0;padding:11px 15px;border-radius:12px;background:var(--glass);border:var(--hair) solid var(--line);font-size:14px;backdrop-filter:blur(10px)}
.banner.warn{border-color:rgba(255,184,77,.4);color:var(--warn)}
.banner.err{border-color:rgba(255,92,115,.45);color:var(--loss)}
main{width:100%;max-width:var(--content);margin:0 auto;padding:28px 20px 40px}
body[data-screen="0"] main{max-width:var(--content)}
body[data-screen="2"] main,body[data-screen="3"] main{max-width:800px}
.enter{animation:up .5s cubic-bezier(.2,.7,.2,1) both}
.stag{animation:none}
/* Mantém o conteúdo visível quando o navegador suspende a animação do portal. */
@keyframes up{from{transform:translateY(8px)}to{transform:none}}

/* hero */
.hero{text-align:center;padding:18px 0 8px}
.hero .big{width:min(150px,40vw);height:auto;margin:0 auto 6px;display:block;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 18px 40px rgba(27,102,255,.35))}
@keyframes float{50%{transform:translateY(-8px)}}
h1{margin:6px 0 8px;font-size:clamp(28px,3.2vw,40px);line-height:1.15;font-weight:750;letter-spacing:-1.1px;color:var(--ink)}
h2{margin:0 0 6px;font-size:19px;font-weight:700}
.lead{color:var(--mute);margin:0 0 22px;max-width:620px}
.hero .lead{margin:0 auto 22px;max-width:520px}
.searchbox{position:relative;display:flex;gap:10px;max-width:560px;margin:0 auto}
.searchbox .field{position:relative;flex:1;min-width:0}
.searchbox svg.ic{position:absolute;z-index:1;pointer-events:none;left:15px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--mute)}
.searchbox input{width:100%;padding:15px 16px 15px 46px;border-radius:14px;border:var(--hair) solid var(--line);background:var(--glass2);backdrop-filter:blur(12px);color:var(--ink);transition:.2s}
.searchbox input:focus{outline:none;border-color:rgba(125,180,255,.6);box-shadow:var(--ring)}
.searchbox input::placeholder{color:var(--dim)}
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0 0}
.perk{padding:14px;border-radius:14px;background:var(--glass);border:var(--hair) solid var(--line);text-align:left}
.perk svg{width:22px;height:22px;color:var(--sky);margin-bottom:6px}
.perk b{display:block;font-size:13.5px}.perk small{color:var(--mute);font-size:12px;line-height:1.35;display:block}
@media(max-width:560px){.perks{grid-template-columns:1fr}.perk{display:grid;grid-template-columns:auto 1fr;gap:0 12px;align-items:center}.perk svg{grid-row:1/3;margin:0}}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border:0;border-radius:13px;cursor:pointer;font-weight:650;min-height:44px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue2));box-shadow:0 4px 10px #285bda14;transition:transform .15s,box-shadow .2s,filter .2s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}
.btn:active{transform:none}
.btn svg{width:18px;height:18px}
.btn.ghost{background:var(--glass);border:var(--hair) solid var(--line);box-shadow:none;color:var(--ink)}
.btn.danger{background:linear-gradient(135deg,#ff5c73,#e0364f);box-shadow:0 8px 24px rgba(255,92,115,.28)}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* cartões */
.card{position:relative;background:linear-gradient(180deg,var(--glass2),var(--glass));border:var(--hair) solid var(--line);border-radius:var(--r);padding:18px;margin:14px 0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.card.unknown{border-color:rgba(255,184,77,.4)}
.sect{display:flex;align-items:baseline;justify-content:space-between;margin:2px 0 4px}
.sect small{color:var(--mute)}
.pagehead{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.pagehead .chip{padding:4px 12px;border-radius:99px;background:rgba(47,128,255,.14);border:var(--hair) solid rgba(125,180,255,.3);color:var(--sky);font-size:12px;font-weight:700}
.pagehead h1{margin:0;text-align:left}

/* traders */
.trader{display:grid;grid-template-columns:auto 1fr auto;gap:8px 14px;align-items:center;transition:transform .2s,border-color .2s,box-shadow .2s}
.trader:hover{transform:translateY(-2px);border-color:rgba(125,180,255,.35);box-shadow:0 12px 28px #233e6b0a}
.avatar{position:relative;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;font-size:24px;font-weight:800;color:hsl(var(--h,215) 80% 78%);background:hsl(var(--h,215) 45% 18%);box-shadow:none}
.rank{position:absolute;top:-7px;left:-7px;min-width:22px;height:22px;padding:0 5px;border-radius:99px;display:grid;place-items:center;background:#0a1226;border:var(--hair) solid var(--line);font-size:11px;font-weight:800;color:var(--sky)}
.r1 .rank{background:linear-gradient(135deg,#ffd76a,#ff9f1c);color:#3a2500;border:0}
.r2 .rank{background:linear-gradient(135deg,#eef2fb,#a9b4cc);color:#20283a;border:0}
.r3 .rank{background:linear-gradient(135deg,#f0b48a,#c06a2b);color:#2f1600;border:0}
.who .alias{font-size:22px;line-height:1.2;font-weight:750;letter-spacing:.4px}
.who small{display:block;margin-top:4px;color:var(--mute);font-size:12px}
.ring{--p:0;--c:var(--blue);position:relative;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--line) 0)}
.ring::before{content:"";position:absolute;inset:6px;border-radius:50%;background:#0b1426}
.ring b{position:relative;font-size:14px}
.ring.hi{--c:var(--win)}.ring.mid{--c:var(--blue)}.ring.lo{--c:var(--warn)}
.chips{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.ringwrap{text-align:center}.ringwrap small{display:block;margin-top:4px;font-size:10.5px;letter-spacing:.4px;color:var(--mute)}
.chipstat{padding:9px 11px;border-radius:12px;background:#0b1426;border:var(--hair) solid var(--line)}
.chipstat small{display:block;color:var(--mute);font-size:11.5px}
.chipstat b{font-size:15px;font-variant-numeric:tabular-nums}
.pos{color:var(--win)}.neg{color:var(--loss)}
.foot-row{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}
.meter{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--mute)}
.meter .bars{display:flex;gap:3px}
.meter .bars i{width:16px;height:6px;border-radius:3px;background:rgba(255,255,255,.1)}
.meter.baixo .bars i:nth-child(-n+1){background:var(--win)}
.meter.medio .bars i:nth-child(-n+2){background:var(--warn)}
.meter.alto .bars i{background:var(--loss)}
.skel{height:150px;border-radius:var(--r);margin:14px 0;background:linear-gradient(100deg,var(--glass) 30%,var(--glass2) 50%,var(--glass) 70%);background-size:200% 100%;animation:shine 1.2s linear infinite;border:var(--hair) solid var(--line)}
@keyframes shine{to{background-position:-200% 0}}

/* login */
.pair{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0 18px}
.pair .node{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--glass2);border:var(--hair) solid var(--line);font-weight:800}
.pair .node img{width:44px}
.pair .wire{position:relative;width:70px;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);overflow:hidden}
.pair .wire::after{content:"";position:absolute;top:-2px;width:20px;height:6px;border-radius:3px;background:var(--sky);filter:blur(3px);animation:run 1.6s linear infinite}
@keyframes run{from{left:-20px}to{left:70px}}
.list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px}
.list li{display:flex;gap:12px;align-items:flex-start;color:var(--mute);font-size:14.5px}
.list li svg{flex:none;width:20px;height:20px;color:var(--sky);margin-top:1px}

/* gestão */
.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:6px}
.preset{padding:12px 10px;border-radius:13px;border:var(--hair) solid var(--line);background:var(--glass);cursor:pointer;text-align:center;transition:.2s}
.preset b{display:block;font-size:14px}.preset small{color:var(--mute);font-size:11.5px}
.preset.on{border-color:rgba(125,180,255,.6);background:rgba(47,128,255,.14);box-shadow:var(--ring)}
.form{display:grid;gap:14px}
.f{display:grid;gap:6px;color:var(--mute);font-size:13.5px}
.f .in{position:relative}
.f .in em{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--dim);font-size:14px}
.f input,.f select{width:100%;padding:13px 14px;border-radius:12px;border:var(--hair) solid var(--line);background:#0b1426;color:var(--ink);transition:.2s;appearance:none}
.f .in input.pad{padding-left:38px}
.f input:focus,.f select:focus{outline:none;border-color:rgba(125,180,255,.6);box-shadow:var(--ring)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check{display:flex;gap:12px;align-items:flex-start;padding:13px;border-radius:12px;background:rgba(255,184,77,.06);border:var(--hair) solid rgba(255,184,77,.25);font-size:13.5px;color:var(--ink);cursor:pointer}
.form .check input,.check input{flex:none;width:20px;height:20px;min-height:20px;padding:0;margin-top:1px;accent-color:var(--sky)}
.sum{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:rgba(47,128,255,.09);border:var(--hair) solid rgba(125,180,255,.25);font-size:13.5px}
.sum b{font-variant-numeric:tabular-nums}
.deposit-prompt{flex-wrap:wrap;align-items:flex-start;gap:16px}
.deposit-prompt>div{flex:1;min-width:min(220px,100%)}
.deposit-prompt>.btn{flex:none}

/* ao vivo */
.status{display:flex;align-items:center;gap:14px}
.okring{position:relative;flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:rgba(34,211,138,.12);border:var(--hair) solid rgba(34,211,138,.4);color:var(--win)}
.okring svg{width:28px;height:28px;stroke-dasharray:none}
.okring::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:var(--hair) solid rgba(34,211,138,.25);animation:ping 2.4s ease-out infinite}
.okring.paused{background:rgba(255,184,77,.1);border-color:rgba(255,184,77,.4);color:var(--warn)}
.okring.paused::after{display:none}
.okring.completed{background:rgba(47,128,255,.12);border-color:rgba(125,180,255,.45);color:var(--sky)}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes ping{from{transform:scale(.9);opacity:1}to{transform:scale(1.35);opacity:0}}
.status .txt{min-width:0}
.status .txt p{margin:2px 0 0;color:var(--mute);font-size:14px}
.tagline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:99px;font-size:12px;font-weight:700;background:var(--glass2);border:var(--hair) solid var(--line)}
.badge i{width:7px;height:7px;border-radius:50%;background:currentColor}
.badge.running{color:var(--win)}.badge.running i{animation:pulse 1.8s infinite;box-shadow:0 0 0 0 rgba(34,211,138,.6)}
.badge.paused{color:var(--warn)}.badge.completed{color:var(--sky)}
.score{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.score .side{position:relative;overflow:hidden;padding:20px 12px 16px;border-radius:var(--r);text-align:center;border:var(--hair) solid var(--line);background:var(--glass)}
.score .side::before{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:radial-gradient(60% 100% at 50% 100%,var(--g),transparent)}
.score .w{--g:rgba(34,211,138,.22);border-color:rgba(34,211,138,.3)}
.score .l{--g:rgba(255,92,115,.2);border-color:rgba(255,92,115,.3)}
.score b{position:relative;display:block;font-size:56px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums}
.score .w b{color:var(--win)}.score .l b{color:var(--loss)}
.score span{position:relative;font-size:12.5px;letter-spacing:2px;font-weight:700;color:var(--mute)}
.bump{animation:bump .45s ease}
@keyframes bump{40%{transform:scale(1.25)}}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpi{padding:12px;border-radius:14px;background:#0b1426;border:var(--hair) solid var(--line)}
.kpi small{display:block;color:var(--mute);font-size:12px}
.kpi b{font-size:19px;font-variant-numeric:tabular-nums}
.bar{height:6px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:10px}
.bar i{display:block;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,var(--blue),var(--sky));transition:width .5s}
.spark{display:block;width:100%;height:64px;margin-top:12px}
.ops{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}
.op{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;align-items:center;padding:11px 12px;border-radius:13px;background:#0b1426;border:var(--hair) solid var(--line);border-left:3px solid var(--dim)}
.op.win{border-left-color:var(--win)}.op.loss{border-left-color:var(--loss)}.op.open{border-left-color:var(--sky)}
.op.new{animation:up .5s both}
.op .dir{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--glass2)}
.op .dir svg{width:18px;height:18px}.op .dir.up{color:var(--win)}.op .dir.down{color:var(--loss)}
.op b{font-size:14.5px}.op small{color:var(--mute);font-size:12px}
.op .res{grid-column:3;grid-row:1;justify-self:end;padding:2px 10px;border-radius:99px;font-size:11.5px;font-weight:800;letter-spacing:.5px;background:var(--glass2);color:var(--mute)}
.op.win .res{background:rgba(34,211,138,.15);color:var(--win)}.op.loss .res{background:rgba(255,92,115,.15);color:var(--loss)}.op.open .res{background:rgba(125,180,255,.14);color:var(--sky)}
.op .pl{grid-column:3;grid-row:2;justify-self:end;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.empty{padding:22px;text-align:center;color:var(--mute);font-size:14px}
.muted{color:var(--mute)}
.foot{max-width:760px;margin:0 auto;padding:0 18px calc(30px + env(safe-area-inset-bottom));color:var(--dim);font-size:12px;text-align:center}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.tag2{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:650;background:rgba(47,128,255,.13);border:var(--hair) solid rgba(125,180,255,.25);color:var(--sky)}
.tag2.gl{margin-left:8px;background:rgba(255,184,77,.12);border-color:rgba(255,184,77,.35);color:var(--warn)}
.card.notice{border-color:rgba(125,180,255,.3);background:#10203b}
.card.notice p{margin:6px 0 0;font-size:14px}
.chips{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.check.gale{background:rgba(255,92,115,.06);border-color:rgba(255,92,115,.3)}
.audit{margin:12px 0 0;font-size:12.5px;color:var(--mute)}

.topr{display:flex;align-items:center;gap:10px}
.btn.sm{padding:9px 13px;font-size:14px;border-radius:11px}
.btn.sm svg{width:16px;height:16px}
.btn.on{color:var(--win);border-color:rgba(34,211,138,.35)}
.btns{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.foot-row{flex-wrap:wrap}
.actions.tight{margin-top:10px}
.badge.paper{color:var(--warn);border-color:rgba(255,184,77,.35);margin-left:6px}
.sum.paper{justify-content:flex-start;gap:12px;background:rgba(255,184,77,.07);border-color:rgba(255,184,77,.3)}
.sum.paper svg{width:20px;height:20px;flex:none;color:var(--warn)}
.robothead{display:flex;gap:16px;align-items:center}
.robothead h1{margin:0 0 6px;text-align:left}
.avatar.big{width:72px;height:72px;font-size:28px;border-radius:20px;flex:none}
.small{font-size:13px;margin:8px 0 0}
.kpis.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.kpi .sub{display:block;font-size:11.5px;color:var(--mute);margin-top:2px}
@media(max-width:640px){.kpis.grid4{grid-template-columns:repeat(2,1fr)}}
.curve{display:block;width:100%;height:180px;margin-top:8px}
.lg{display:inline-block;width:14px;height:3px;border-radius:2px;margin:0 6px 2px 10px;vertical-align:middle}
.lg.blue{background:var(--blue)}.lg.amber{background:var(--warn)}
.tag2.ok{background:rgba(34,211,138,.12);border-color:rgba(34,211,138,.35);color:var(--win)}
.tag2.bad{background:rgba(255,92,115,.12);border-color:rgba(255,92,115,.35);color:var(--loss)}
.tag2.live{background:rgba(34,211,138,.12);border-color:rgba(34,211,138,.3);color:var(--win)}
.banner.inline{margin:10px 0}
/* admin */
main.wide{max-width:1180px}
.card.login{max-width:420px;margin:40px auto}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cols .card{margin:0}
@media(max-width:820px){.cols{grid-template-columns:1fr}}
.health{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}
.health li{display:grid;grid-template-columns:auto 130px 1fr;gap:4px 10px;align-items:center;font-size:14px}
.health li small{grid-column:2/-1;color:var(--mute);font-size:12px}
.hdot{width:10px;height:10px;border-radius:50%;background:var(--warn)}
.hdot.ok{background:var(--win);box-shadow:0 0 10px rgba(34,211,138,.6)}.hdot.bad{background:var(--loss);box-shadow:0 0 10px rgba(255,92,115,.6)}
.alerts{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}
.alerts li{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;font-size:14px}
.alerts li small{grid-column:2}
.tablewrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{text-align:left;color:var(--mute);font-weight:600;font-size:12px;padding:8px;border-bottom:var(--hair) solid var(--line);white-space:nowrap}
td{padding:10px 8px;border-bottom:var(--hair) solid var(--line);vertical-align:top}
tr.alert td{background:rgba(255,92,115,.06)}
td .msg{color:var(--mute);font-size:12px;margin-top:4px;max-width:260px}
.mono{font-family:ui-monospace,Menlo,monospace}

.btn.xl{padding:15px 28px;font-size:17px;width:100%;min-width:0}
.actions.center{justify-content:center;margin:4px 0 6px}
.logincard{max-width:520px;margin:6px auto 0;text-align:left}
.logincard .pair{margin-top:2px}
.alt{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:var(--hair) solid var(--line)}

/* corretoras */
.bicon{width:34px;height:34px;border-radius:10px;object-fit:contain;background:#0b1426;flex:none}
.bicon.letter{display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,hsl(var(--h,215) 70% 50%),hsl(calc(var(--h,215) + 40) 70% 32%))}
.bicon.md{width:44px;height:44px;border-radius:12px;font-size:20px}
.bicon.lg{width:64px;height:64px;border-radius:16px;font-size:28px}
.bsection{margin-top:28px;text-align:left}
.bgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:10px}
.btile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:12px;border-radius:14px;border:var(--hair) solid var(--line);background:var(--glass);cursor:pointer;text-align:left;transition:.2s}
.btile:hover{transform:translateY(-2px);border-color:rgba(125,180,255,.4)}
.btile .bicon{grid-row:1/3}
.btile .bname{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btile .bstate{font-size:11.5px;color:var(--mute)}
.btile.on{border-color:rgba(34,211,138,.35);background:#0b201f}
.btile.on .bstate{color:var(--win)}
.bhead{display:flex;gap:14px;align-items:center;margin-bottom:10px}
.bhead h1{margin:0;text-align:left}
.bhead a,.bcard a,.web a{color:var(--sky);text-decoration:none}
.bhead a:hover,.web a:hover{text-decoration:underline}
.web{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:12px}
.web li p{margin:3px 0 0;font-size:13.5px}
.web .dom{display:block;color:var(--win);font-size:12px}
a.btn{text-decoration:none}
.pagehead .bicon{margin-right:2px}

.tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.tab{padding:9px 16px;border-radius:11px;border:var(--hair) solid var(--line);background:var(--glass);color:var(--mute);font-weight:650;cursor:pointer}
.tab.on{color:var(--ink);border-color:rgba(125,180,255,.5);background:rgba(47,128,255,.14)}
.form input,.form textarea{width:100%;padding:12px 13px;border-radius:12px;border:var(--hair) solid var(--line);background:#0b1426;color:var(--ink);font:inherit;resize:vertical}
.rowbtns{display:flex;gap:6px;flex-wrap:wrap}
table a{color:var(--sky);text-decoration:none}
table a:hover{text-decoration:underline}

/* conta e dashboard */
.account-panel{width:calc(100% - 40px);max-width:1060px;margin:24px auto 0}
.account-bar{display:flex;align-items:center;gap:24px;padding:20px 24px;border:var(--hair) solid var(--line);border-radius:18px;background:#0b1426}
.account-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
.account-brand small,.account-balance small{display:block;color:var(--mute);font-size:12px}
.account-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#0b1426;color:#151d2e;font-weight:800;font-size:22px}
.account-tabs{display:flex;padding:4px;gap:4px;border-radius:12px;background:#080e1b;border:var(--hair) solid var(--line);flex-shrink:0}
.account-tabs button{min-height:40px;padding:8px 18px;border:0;border-radius:8px;background:transparent;font-weight:700;font-size:13px;color:var(--mute);cursor:pointer}
.account-tabs button.active{background:var(--blue2);color:#fff;box-shadow:0 3px 12px #1b66ff33}
.account-tabs button:disabled{opacity:.35;cursor:not-allowed}
.account-balance{min-width:0;flex:1}.account-balance strong{display:block;font-size:28px;line-height:1.25;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
.account-balance small{overflow-wrap:anywhere}
.balance-control{display:inline-flex;flex-wrap:wrap;align-items:center;gap:0 4px;max-width:100%;vertical-align:middle}
.balance-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--mute);cursor:pointer}
.balance-toggle svg{width:19px;height:19px}
.balance-toggle:hover{color:var(--ink);background:rgba(255,255,255,.06)}
.balance-toggle:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
.account-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.dashboard-hero{text-align:left;padding:0}.section-heading{margin-bottom:24px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--sky)}
.dashboard-hero .lead{margin:10px 0 0;max-width:none}.dashboard-hero .searchbox{max-width:none;margin:0}.dashboard-hero .bsection{margin-top:28px}
.dashboard-hero h1{margin-top:8px}.dashboard-hero .bgrid{gap:12px}.btile{min-height:78px}
.login-hero{padding:32px 0 16px}.login-hero .logincard{margin-top:24px;padding:24px}.login-hero .big{animation:none;margin-bottom:20px}.login-hero .pair{margin-bottom:24px}
.robot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.robot-grid .card{margin:0}.robot-grid .who{min-width:0}.robot-grid .who .alias{font-size:20px}
.kpis,.chips,.row,.presets{min-width:0}.kpi,.chipstat,.row>*{min-width:0}.kpi b,.chipstat b{overflow-wrap:anywhere}.sect{gap:12px}.sect small{text-align:right}
@media(max-width:800px){
 .account-bar{flex-wrap:wrap;gap:16px}.account-brand{flex:1}.account-balance{flex-basis:50%}.account-tools{margin-left:auto}
 .robot-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
 .top{padding:12px 16px}.brand{gap:8px;font-size:15px}.mark{width:34px;height:24px}.topr{gap:6px}.live-pill{font-size:11px;padding:5px 9px}.topr .btn.sm{font-size:11px;padding:6px 8px}
 main{padding:24px 16px 28px}.account-panel{width:calc(100% - 32px);margin-top:20px}.account-bar{padding:16px;gap:16px}.account-tabs button{padding:8px 13px}
 .account-brand small{font-size:11px}.account-balance strong{font-size:26px}.account-tools{max-width:46%}.account-tools .btn{font-size:12px;padding:8px 10px}.account-balance small:last-child{font-size:10px}
 .steps{padding:0 16px;justify-content:center}.step{gap:5px;font-size:11px}.step+.step::before{margin:0 5px;width:14px}.step .dot{width:24px;height:24px}
 .bgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.btile{padding:12px 10px;gap:3px 8px}.btile .bname{font-size:12px}.btile .bstate{font-size:10px}.bicon{width:30px;height:30px}
 .searchbox{gap:8px}.searchbox input{padding:13px 10px 13px 38px;font-size:14px}.searchbox svg.ic{left:12px;width:17px}.searchbox .btn{padding:12px;font-size:13px}
 .hero .lead{font-size:14px}.section-heading{margin-bottom:20px}.card{padding:16px}.row{gap:10px}.form input,.form select{font-size:16px;min-width:0}
 .presets{gap:6px}.preset{padding:12px 6px}.preset b{font-size:12px}.preset small{font-size:10px}
 .sum{flex-wrap:wrap;gap:8px}.kpis{gap:6px}.kpi{padding:10px}.kpi b{font-size:17px}.score b{font-size:44px}
 .foot-row{gap:10px}.btns{justify-content:flex-start;width:100%}.btns .btn{flex:1;padding:10px;font-size:12px}
 .robothead{align-items:flex-start}.robothead h1{font-size:26px}.avatar.big{width:54px;height:54px;font-size:22px}.pagehead{flex-wrap:wrap}.pagehead h1{font-size:28px}
 .op{gap:4px 8px;padding:10px 8px}.op b{font-size:12px}.op small{font-size:10px}.op .res{font-size:10px;padding:2px 6px}.op .dir{width:28px;height:28px}
 .banner{width:calc(100% - 32px)}.foot{padding-inline:20px;font-size:11px}.login-hero{padding-top:20px}.login-hero .logincard{padding:20px}
}
@media(max-width:360px){.account-bar{gap:12px}.account-mark{width:32px;height:32px}.account-tabs button{padding:8px 10px}.account-tools{max-width:45%}.brand{font-size:13px}.live-pill{gap:5px}.step+.step::before{width:8px}.row{grid-template-columns:1fr}}


/* Public website and profile catalogue */
.top{min-height:84px;padding-block:18px;gap:24px}
.brand{font-size:21px;letter-spacing:-.6px;flex-shrink:0}
.mark{background:#0d1d3c;border-radius:8px;padding:4px;width:40px;height:36px}
.site-nav{display:flex;gap:26px;margin-left:auto}
.site-nav button{border:0;background:none;font-size:14px;cursor:pointer;padding:10px 0;color:var(--mute)}
.site-nav button:hover{color:var(--sky)}
body[data-screen="0"] main{padding-top:35px}
.broker-home{max-width:1000px;margin:0 auto}.broker-home .searchbox{max-width:none;margin:24px 0 32px}
.bgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.btile{padding:24px;min-height:112px;background:#0d1425;border-radius:16px;gap:6px 16px}.btile .bname{font-size:20px}.btile .bstate{font-size:14px}.btile .bicon{width:46px;height:46px}.btile.on{background:#102221}.btile.on .bstate{color:var(--win)}
.robot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.robot-grid .trader{grid-template-columns:auto 1fr;padding:22px;background:#0b1426}.robot-grid .avatar{border-radius:50%;width:48px;height:48px;font-size:24px}.robot-grid .who .alias{font-size:23px}.robot-grid .chips{grid-template-columns:1fr 1fr}.robot-grid .chipstat{background:none;border:0;padding:6px 0}.robot-grid .foot-row{display:block;border-top:var(--hair) solid var(--line);padding-top:14px}.robot-grid .btns{margin-top:14px}.robot-grid .btns .btn{flex:1;font-size:13px}
.back-link{background:none;border:0;color:var(--sky);cursor:pointer;padding:0 0 20px;font-size:14px}.profile-info,.advanced{padding:16px 0;border-block:var(--hair) solid var(--line);color:var(--mute);font-size:14px}.profile-info p{line-height:1.7}.advanced summary,.profile-info summary{cursor:pointer;color:var(--ink)}.advanced[open]>summary{margin-bottom:18px}.advanced .row{margin-bottom:14px}.form>.f{font-size:15px;gap:10px}.form>.f input{font-size:20px}.form .actions>.btn:first-child{flex:1}.form>.sum{margin:0}.form{gap:22px}.account-balance strong{font-size:26px}.card{backdrop-filter:none;-webkit-backdrop-filter:none}.foot{border-top:var(--hair) solid var(--line);max-width:1140px;padding-top:24px;margin-top:24px;font-size:11px;line-height:1.7}.foot b{color:var(--mute)}
@media(max-width:1000px){.robot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.top{min-height:70px;gap:12px;padding:14px 20px}.brand{font-size:18px}.site-nav{gap:16px}.site-nav button{font-size:12px}.robot-grid{grid-template-columns:1fr}.btile{padding:18px;gap:4px 12px}.btile .bname{font-size:17px}.btile .bstate{font-size:12px}}
@media(max-width:480px){.top{padding-inline:16px}.brand{font-size:16px}.site-nav button{font-size:11px}.live-pill{font-size:10px;padding:6px}.top{gap:8px}.bgrid{gap:10px}.btile{padding:16px 12px;grid-template-columns:1fr;gap:8px;min-height:140px}.btile .bicon{grid-row:auto;width:36px;height:36px}.btile .bname{font-size:15px}.btile .bstate{font-size:11px}.broker-home .sect small{font-size:11px}.broker-home h1{font-size:29px}.broker-home .lead{font-size:14px}}

.account-mark{background:#112549;color:var(--sky)}
@media(max-width:560px){.account-bar{display:grid;grid-template-columns:1fr 1fr;gap:16px}.account-brand{grid-column:1/-1}.account-mark{width:34px;height:34px}.account-balance{grid-column:1}.account-bar>.btn{grid-column:2;font-size:12px;padding:10px}.account-brand small{font-size:12px}}

@media(max-width:360px){.top{flex-wrap:wrap}.topr{margin-left:auto}.account-bar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* Seleção simples de nomes fictícios, sem estatísticas. */
.btile{grid-template-rows:auto;min-height:94px}.btile .bicon{grid-row:auto}
.robot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.robot-grid .trader{grid-template-columns:auto minmax(0,1fr) auto;gap:14px;padding:18px}.robot-grid .who small{color:var(--mute);font-size:12px}.robot-grid .trader>.btn{font-size:13px;padding:10px 12px}
@media(max-width:760px){.robot-grid{grid-template-columns:1fr}}
@media(max-width:480px){.btile{grid-template-columns:1fr;min-height:110px}.robot-grid .trader{gap:10px;padding:16px}.robot-grid .avatar{width:40px;height:40px;font-size:20px}.robot-grid .who .alias{font-size:20px}}

/* Premium 09/10/2026: traços finos (meio pixel em telas retina), pesos leves, menos brilho. */
:root{--hair:1px;--line:rgba(255,255,255,.1);--sel:rgba(125,180,255,.7)}
@media(min-resolution:2dppx){:root{--hair:.5px;--line:rgba(255,255,255,.16)}}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1{font-weight:500;letter-spacing:-.8px}
h2{font-weight:500;letter-spacing:-.2px}
.brand{font-weight:500}
.lead{font-weight:400}
.btn{font-weight:500;letter-spacing:.2px;box-shadow:none}
.btn.danger{box-shadow:none}
.btn.ghost{background:transparent}
.card,.btile,.robot-grid .trader{background:rgba(255,255,255,.025)}
.btile .bname{font-weight:500}
.who .alias,.robot-grid .who .alias{font-weight:400;letter-spacing:2px}
.avatar,.robot-grid .avatar{font-weight:400;background:transparent;border:var(--hair) solid hsl(var(--h,215) 60% 60% / .55)}
.step{font-weight:500}.step .dot{background:transparent}
.step.on .dot{background:transparent;border:var(--hair) solid var(--sky);color:var(--sky);box-shadow:none}
.score b{font-weight:200;letter-spacing:-1px}
.score span{font-weight:500}
.kpi b,.chipstat b{font-weight:400}
.account-balance strong{font-weight:300}
.badge,.tag2{font-weight:500}
.op{border-left-width:2px}
.op .res{font-weight:600}
.op .pl{font-weight:500}
.okring::after{display:none}
.live-pill i{animation:none}
.trader:hover,.btile:hover{transform:none;box-shadow:none;border-color:rgba(125,180,255,.45)}

/* Seleção múltipla */
.btile{position:relative;grid-template-columns:auto 1fr auto}
.btile .tick{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:var(--hair) solid var(--line);color:transparent}
.btile .tick svg{width:13px;height:13px}
.btile.on,.trader.on{background:rgba(47,128,255,.07);border-color:var(--sel)}
.btile.on .tick{border-color:var(--sky);background:var(--sky);color:#02040b}
.trader .btn[aria-pressed="true"]{color:var(--sky);border-color:var(--sel)}
.bgroup{margin-top:30px}
.bgroup-head{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:var(--hair) solid var(--line)}
.bgroup-head h2{margin:0}
.bgroup-head small{margin-left:auto;color:var(--mute);font-size:12px}
.bgroup .robot-grid{margin-top:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bgroup .trader{grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px 4px;padding:8px 6px 6px;border-radius:12px;text-align:center}
.bgroup .trader .avatar{width:20px;height:20px;font-size:12px}
.bgroup .trader .who .alias{font-size:13px;font-weight:400;letter-spacing:.5px;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.bgroup .trader .who{min-height:34px;display:grid;align-content:center}
.bgroup .trader .btn{grid-column:1/-1;width:100%;min-height:44px;gap:4px;padding:6px 2px;font-size:12px;letter-spacing:0;border-radius:8px}
.bgroup .trader .btn svg{width:12px;height:12px;flex-shrink:0}
.strategy-note{margin:0 0 16px;color:var(--mute);font-size:13px;line-height:1.5}
.bgroup .trader .trader-rank{grid-column:1/-1;color:var(--mute);font-size:12px;line-height:1.5}
.bgroup .top-trader{border-color:rgba(125,180,255,.4);background:rgba(47,128,255,.04)}
.bgroup .top-trader .trader-rank{color:var(--sky)}
.trader-rate{grid-column:1/-1;display:grid;gap:2px;margin:4px 0;font-variant-numeric:tabular-nums}
.trader-rate b{color:var(--ink);font-size:20px;font-weight:500;line-height:1.2}
.trader-rate small{color:var(--mute);font-size:12px;line-height:1.4}
.target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-top:16px}
.target-grid .card{margin:0}.target-form{gap:12px}.target-form input{min-height:44px}.target-form [role=status]{min-height:22px}
@media(max-width:360px){.bgroup .trader .avatar{display:none}.bgroup .trader .who{grid-column:1/-1}}

/* Limites: três decisões simples, resumo visível e detalhes opcionais. */
.limits-card .form{gap:16px}
.limits-fields{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.limits-fields .f{color:var(--ink);font-size:15px;min-width:0}
.limits-card .f small{color:var(--mute);font-size:13px;line-height:1.5}
.limits-fields input{font-size:20px;font-variant-numeric:tabular-nums;min-width:0}
.limits-fields input[aria-invalid=true]{border-color:var(--loss)}
.limits-card .f .field-error{color:var(--loss);font-size:14px;margin:0}
.limits-card .advanced{padding:0;border:0}
.limits-card .advanced summary{min-height:44px;display:list-item;padding:10px 0}
.limits-card .advanced[open]>summary{margin-bottom:12px}
.selected-traders{margin:0 0 12px;color:var(--mute);font-size:14px}
.selected-traders summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--sky)}
.selected-traders .picks{margin-top:8px}
.strategy-choices{min-width:0;margin:0;padding:12px;border:var(--hair) solid var(--line);border-radius:12px}
.strategy-choices legend{padding:0 6px;color:var(--ink);font-size:14px}
.strategy-choices .check{margin:0;background:var(--glass);border-color:var(--line);min-height:44px}
.strategy-list{display:grid;gap:12px;align-content:start;max-height:900px;overflow:auto;scroll-padding-block:16px}
.strategy-list .card{margin:0}
.strategy-item h2{font-size:17px;overflow-wrap:anywhere}
.strategy-item .sect{margin:0 0 8px}
.strategy-item p{margin:0 0 12px}
.strategy-item button{min-height:44px}
.byfx-login{max-width:580px;margin:24px auto;display:grid;gap:16px}
.byfx-login .lead,.byfx-login p{margin:0}
.byfx-login>.btn{min-height:48px;width:100%}
@media(max-width:800px){.strategy-list{max-height:none;overflow:visible}}
.back-link{min-height:44px;padding:10px 0;margin-bottom:8px}
@media(max-width:600px){
 .limits-fields{grid-template-columns:1fr;gap:14px}
 .limits-fields .f{gap:5px}
 .limits-fields input{padding:10px 12px;min-height:48px}
 .limits-card .advanced .row{grid-template-columns:1fr}
 .limits-card .check{font-size:14px;min-height:44px}
}
.selbar{position:sticky;bottom:calc(14px + env(safe-area-inset-bottom));z-index:4;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding:12px 12px 12px 20px;border-radius:16px;border:var(--hair) solid var(--sel);background:rgba(6,12,28,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.selinfo{font-size:14px;color:var(--ink)}
.picks{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.pickchip{display:inline-flex;align-items:baseline;gap:6px;padding:5px 12px;border-radius:99px;border:var(--hair) solid var(--line);font-size:13px;letter-spacing:1px}
.pickchip small{color:var(--mute);font-size:11px;letter-spacing:0}
.card .picks{margin:14px 0 0}
@media(max-width:480px){.btile .tick{position:absolute;top:12px;right:12px}.selbar{padding:10px 10px 10px 16px}.selinfo{font-size:13px}}
.broker-home~.selbar{max-width:1000px;margin-inline:auto}

/* Radar azul (painel ao vivo) */
.radar-card{display:grid;justify-items:center;gap:12px;padding:26px 18px 20px}
.radar{--R:min(170px,38vw);position:relative;width:calc(var(--R)*2);aspect-ratio:1;border-radius:50%;overflow:hidden;
  background:radial-gradient(circle,rgba(47,128,255,.10),rgba(2,6,18,.95) 70%);border:var(--hair) solid rgba(125,180,255,.45);box-shadow:0 0 60px rgba(27,102,255,.12),inset 0 0 40px rgba(27,102,255,.12)}
.radar-grid{position:absolute;inset:0;border-radius:50%;
  background:repeating-radial-gradient(circle,transparent 0 calc(var(--R)/4 - 1px),rgba(125,180,255,.22) calc(var(--R)/4 - 1px) calc(var(--R)/4)),
  linear-gradient(90deg,transparent calc(50% - .5px),rgba(125,180,255,.22) 50%,transparent calc(50% + .5px)),
  linear-gradient(transparent calc(50% - .5px),rgba(125,180,255,.22) 50%,transparent calc(50% + .5px)),
  repeating-conic-gradient(from 0deg,rgba(125,180,255,.18) 0 .25deg,transparent .25deg 15deg)}
.radar-grid{-webkit-mask:radial-gradient(circle,#000 0 99%,transparent);mask:radial-gradient(circle,#000 0 99%,transparent)}
.radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 280deg,rgba(47,128,255,.05) 300deg,rgba(125,180,255,.45) 359deg,#7db4ff 360deg);animation:sweep 4s linear infinite}
.radar.off .radar-sweep{animation-play-state:paused;opacity:.35}
@keyframes sweep{to{transform:rotate(360deg)}}
.radar-core{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--sky);box-shadow:0 0 10px var(--sky)}
.radar-blips{position:absolute;inset:0}
.blip{--c:var(--sky);position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateY(calc(var(--R)*var(--f)*-1)) rotate(calc(var(--a)*-1));transition:opacity .6s}
.blip.in{animation:blip-in 1.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes blip-in{from{transform:rotate(var(--a)) translateY(calc(var(--R)*-1.05)) rotate(calc(var(--a)*-1));opacity:0}30%{opacity:1}}
.blip i{position:absolute;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 12px var(--c)}
.blip i::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:var(--hair) solid var(--c);opacity:0}
.blip.open i::after,.blip.in i::after{animation:blip-ping 1.6s ease-out infinite}
@keyframes blip-ping{from{transform:scale(.6);opacity:1}to{transform:scale(2.4);opacity:0}}
.blip small{position:absolute;left:9px;top:-7px;white-space:nowrap;font:10px/1 ui-monospace,Menlo,monospace;letter-spacing:.5px;color:var(--c)}
.blip.win{--c:var(--win)}.blip.loss{--c:var(--loss)}.blip.draw,.blip.unknown,.blip.rejected,.blip.cancelled{--c:var(--dim)}
.blip.old{opacity:.4}.blip.old small{display:none}
.radar-caption{margin:0;font:12px ui-monospace,Menlo,monospace;letter-spacing:1px;color:var(--sky);text-align:center}
@media(prefers-reduced-motion:reduce){.radar-sweep{animation:none}}

/* Menu lateral */
.menu-btn{display:grid;place-items:center;width:44px;height:44px;margin-right:4px;border-radius:12px;border:var(--hair) solid var(--line);background:transparent;color:var(--ink);cursor:pointer;flex-shrink:0}
.menu-btn svg{width:20px;height:20px}
.menu-btn:hover{color:var(--sky);border-color:rgba(125,180,255,.4)}
.top .brand{margin-right:auto}
.drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(320px,86vw);max-width:none;height:100%;max-height:none;padding:max(18px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));display:none;flex-direction:column;gap:10px;
  color:var(--ink);background:linear-gradient(180deg,#060b18,#02040b);border:0;border-right:var(--hair) solid rgba(125,180,255,.25);box-shadow:20px 0 60px rgba(0,0,0,.5)}
.drawer[open]{display:flex;animation:drawer-in .28s cubic-bezier(.2,.7,.2,1)}
.drawer::backdrop{background:rgba(2,4,11,.6);backdrop-filter:blur(3px)}
@keyframes drawer-in{from{transform:translateX(-100%)}}
.dhead{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 14px;border-bottom:var(--hair) solid var(--line)}
.dclose{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;border:0;background:transparent;color:var(--mute);cursor:pointer}
.dclose svg{width:20px;height:20px}
.drawer nav{display:grid;gap:4px;align-content:start;flex:1}
.drawer hr{border:0;border-top:var(--hair) solid var(--line);margin:8px 4px}
.ditem{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:10px 12px;border:var(--hair) solid transparent;border-radius:12px;background:transparent;color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}
.ditem svg{width:20px;height:20px;color:var(--sky);flex-shrink:0}
.ditem:hover{background:rgba(47,128,255,.08)}
.ditem.on{background:rgba(47,128,255,.14);border-color:rgba(125,180,255,.35)}
.ditem.push.on{background:transparent;border-color:transparent;color:var(--win)}.ditem.push.on svg{color:var(--win)}
.ditem:disabled{opacity:.55;cursor:default}
.dfoot{margin:0;padding:12px 4px 0;border-top:var(--hair) solid var(--line);font-size:12px;color:var(--mute)}

/* Histórico */
.hist{padding:0}
.hist>summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:6px 12px;align-items:center;padding:16px 18px;cursor:pointer}
.hist>summary::-webkit-details-marker{display:none}
.hist .hwhen{font-size:13px;color:var(--mute);font-variant-numeric:tabular-nums}
.hist .badge{justify-self:start}
.hist .hwho{grid-column:1/3;font-weight:500;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hist .hscore{grid-column:3;grid-row:1/3;text-align:right;font-variant-numeric:tabular-nums}
.hist .hscore em{font-style:normal;font-size:12px}
.hist .hscore strong{display:block;font-weight:500}
.hist[open]>summary{border-bottom:var(--hair) solid var(--line)}
.hist>.picks,.hist>p,.hist>.ops{margin:12px 18px}
.hist>.ops{margin-bottom:18px}
.empty-hist{display:grid;justify-items:center;gap:12px;text-align:center}

/* Topo compacto no celular (todas as telas) */
@media(max-width:760px){.site-nav{display:none}.topr{margin-left:auto}
 .top{min-height:56px;gap:10px;padding:max(8px,env(safe-area-inset-top)) 16px 8px}
 .menu-btn{width:44px;height:44px;margin:0;border-radius:11px}.brand{font-size:17px;gap:8px;min-width:0}.mark{width:36px;height:30px;padding:3px}}
@media(max-width:480px){.top{flex-wrap:nowrap;padding-inline:12px;gap:8px}#install{display:none}
 .brand{font-size:16px;letter-spacing:-.3px}.live-pill{font-size:11.5px;font-weight:500;padding:5px 10px;gap:6px}.live-pill i{width:6px;height:6px}}
@media(max-width:360px){.brand{font-size:15px;gap:7px}.mark{width:32px;height:28px}.live-pill{font-size:11px;padding:4px 9px}}
@media(max-width:340px){.brand{font-size:14px}.mark{width:30px;height:26px}.live-pill{font-size:11px;padding:4px 8px;gap:5px}}
.badge{white-space:nowrap}

/* Painel ao vivo: resumo com mini radar + abas */
body[data-screen="3"] #steps{display:none}
body[data-screen="3"] main{padding-top:10px}
.live{--winx:#3fe9a3;--lossx:#ff7d90;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.live .card{margin:0;padding:12px 14px}
.lsum{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"head head" "msg msg" "radar stats" "cap cap" "goal goal" "sim sim";gap:8px 16px}
.lrow{grid-area:head;display:flex;align-items:center;gap:12px}
.ltxt{flex:1;min-width:0}
.lsum h2{margin:0;font-size:17px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lmeta{display:flex;align-items:center;gap:8px;margin-top:3px;min-width:0;font-size:12.5px;color:var(--mute)}
.lmeta .badge{flex:none;padding:1px 8px;font-size:11px;gap:5px}
.lmeta .badge.paper{margin:0}
.lmeta .badge i,.lbdot{width:6px;height:6px;animation:none;box-shadow:none}
.badge.running i,.lbar[data-s=running] .lbdot{animation:blink 1.6s ease-in-out infinite}
@keyframes blink{50%{opacity:.3}}
.lline{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lline b{font-weight:500;color:var(--ink)}
.lext{display:none}
.lsum .actions{margin:0;flex:none}
.live .actions .btn{min-height:44px;padding:8px 16px;font-size:14px;border-radius:12px}
.lmsg{grid-area:msg;margin:0;font-size:12px;line-height:1.45;color:var(--mute);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lmsg:empty{display:none}

/* mini radar (rótulos ocultos: o texto do último sinal fica na legenda) */
.lradar{grid-area:radar;align-self:center}
.lsum .radar{--R:55px;overflow:visible;box-shadow:0 0 28px rgba(27,102,255,.14),inset 0 0 18px rgba(27,102,255,.14)}
.lsum .radar-core{width:4px;height:4px;margin:-2px}
.lsum .blip small{display:none}
.lsum .blip i{left:-3px;top:-3px;width:6px;height:6px}
.lsum .radar-caption{grid-area:cap;margin:0;max-width:100%;font-size:11px;letter-spacing:.3px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.blip[data-side=l] small{left:auto;right:9px}

/* números */
.stats{grid-area:stats;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.2fr);align-content:center;gap:8px 10px}
.st{min-width:0}
.st small{display:block;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--mute);white-space:nowrap}
.st b{display:block;font-size:17px;line-height:1.2;font-weight:400;letter-spacing:-.2px;font-variant-numeric:tabular-nums;white-space:nowrap}
.st.big{grid-column:1/-1}
.st.big b{font-size:32px;line-height:1.05;font-weight:400;letter-spacing:-.8px}
.live .pos{color:var(--winx)}.live .neg{color:var(--lossx)}

/* meta */
.goal{grid-area:goal;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:5px 0;padding-top:2px;font-size:12px;color:var(--mute)}
.goal .rem{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.goal .gm,.goal .gl{white-space:nowrap}
.goal .gl::before{content:"·";margin:0 6px;opacity:.6}
.goal b{font-weight:400;color:var(--ink);font-variant-numeric:tabular-nums}.goal b.neg{color:var(--lossx)}
.goal .bar{grid-column:1/-1;height:3px;margin:3px 0 0;border-radius:2px;background:rgba(255,255,255,.08)}
.goal .bar i{width:var(--p,0%)}
@media(max-width:380px){.goal{grid-template-columns:1fr auto}.goal .rem{grid-column:1/-1}.goal .gl{justify-self:end}.goal .gl::before{display:none}}

/* abas (segmented control) */
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:3px;border-radius:13px;border:var(--hair) solid var(--line);background:rgba(255,255,255,.025)}
.seg [role=tab]{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:6px 8px;border:var(--hair) solid transparent;border-radius:10px;background:transparent;color:var(--mute);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .2s,background .2s}
.seg [role=tab] small{font-size:12px;color:var(--dim);font-variant-numeric:tabular-nums}
.seg [role=tab]:hover{color:var(--ink)}
.seg [role=tab][aria-selected=true]{color:var(--ink);background:rgba(47,128,255,.14);border-color:rgba(125,180,255,.4)}
.seg [role=tab][aria-selected=true] small{color:var(--sky)}
.tp{min-width:0}
.tp:focus-visible{outline-offset:4px;border-radius:12px}
.tp>.sect{display:none}
.live .sect h2{font-size:15px;margin:0}
.live .sect b{font-weight:400;font-size:13px;color:var(--mute);font-variant-numeric:tabular-nums}
@media(max-width:899px){.tp:not(.on){display:none}}

/* operações: linhas compactas separadas por traço fino */
.live .ops{margin:0;gap:0;border:var(--hair) solid var(--line);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.02)}
.live .op{gap:1px 10px;padding:8px 12px 8px 10px;line-height:1.35;border:0;border-left:2px solid var(--dim);border-radius:0;background:transparent}
.live .op+.op{border-top:var(--hair) solid var(--line)}
.live .op.win{border-left-color:var(--win)}.live .op.loss{border-left-color:var(--loss)}.live .op.open{border-left-color:var(--sky);background:rgba(47,128,255,.06)}
.live .op .dir{width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.04)}
.live .op .dir svg{width:15px;height:15px}.live .op .dir.up{color:var(--winx)}.live .op .dir.down{color:var(--lossx)}
.live .op b{font-size:13px;font-weight:500;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live .op small{font-size:11px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.live .op .res{padding:1px 8px;font-size:11px;letter-spacing:.5px}
.live .op.win .res{color:var(--winx)}.live .op.loss .res{color:var(--lossx)}
.live .op .pl{font-size:13px}
.live .op .tag2.gl{margin-left:6px;padding:0 6px;font-size:11px}

/* traders */
.tp-traders .picks{margin:0;gap:6px}
.live .pickchip{padding:5px 12px;font-size:12.5px}
.lacct{margin:10px 2px 0;font-size:12px;color:var(--mute)}

.live .advanced{padding:12px 2px;font-size:13.5px}
.live .advanced[open]>summary{margin-bottom:12px}
.live .advanced .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.live .advanced .kpi{padding:10px 12px;background:transparent}
.live .advanced .kpi b{font-size:16px}
.live .advanced .btn{margin-top:12px}

/* barra fixa no celular quando o resumo sai da tela */
.lbar{position:fixed;left:0;right:0;bottom:0;z-index:6;display:flex;align-items:center;gap:10px;padding:8px 12px calc(8px + env(safe-area-inset-bottom)) 16px;background:#050a17;border-top:var(--hair) solid rgba(125,180,255,.3);transform:translateY(110%);transition:transform .25s ease;visibility:hidden}
.lbdot{flex:none;border-radius:50%;background:var(--sky)}
.lbar[data-s=running] .lbdot{background:var(--win)}.lbar[data-s=paused] .lbdot{background:var(--warn)}
.lbtxt{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbar .actions{margin:0}
body.lbar-on .lbar{transform:none;visibility:visible}
body[data-screen="3"].lbar-on main{padding-bottom:84px}
/* sem transform residual da entrada: senão a barra fixa fica presa ao conteúdo */
body[data-screen="3"] .enter{animation-fill-mode:backwards}

@media(max-width:480px){body[data-screen="3"] main{padding-inline:12px}.live .card{padding:12px}}
@media(max-width:360px){.lsum{column-gap:12px}.lsum .radar{--R:50px}.st.big b{font-size:28px}.st b{font-size:16px}.st small{letter-spacing:.3px}.live .actions .btn{padding:8px 13px}}
@media(max-width:340px){.lsum .radar{--R:45px}.stats{grid-template-columns:auto auto minmax(0,1fr);gap:6px 10px}.st small{letter-spacing:0;text-transform:none;font-size:12px}.st b{font-size:15px}}

/* desktop: nada escondido; radar grande no resumo, traders como chips, operações abaixo */
@media(min-width:900px){
 body[data-screen="3"] main{max-width:1040px}
 .live{gap:14px}
 .live>.seg,.lbar{display:none}
 .live>.lsum{padding:20px 22px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head radar" "msg radar" "stats radar" "goal radar" ". radar" "sim cap";grid-template-rows:auto auto auto auto 1fr auto;gap:14px 40px}
 .lsum .goal{margin-top:6px}
 .lsum h2{font-size:20px}
 .lext{display:inline}
 .lradar{padding:10px}
 .lsum .radar{--R:100px}
 .lsum .radar-core{width:6px;height:6px;margin:-3px}
 .lsum .blip i{left:-4px;top:-4px;width:8px;height:8px}
 .lsum .blip small{display:block}.lsum .blip.old small{display:none}
 .lsum .radar-caption{max-width:240px;text-align:center}
 .stats{grid-template-columns:repeat(4,max-content);justify-content:start;gap:0 34px;align-items:end}
 .st.big{grid-column:auto}
 .lacct{display:none}
 .tp>.sect{display:flex;margin:0 2px 10px}
}

/* Price and execution share a timeline; order markers always come from the broker receipt. */
.operation-charts{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media(min-width:900px){.operation-charts.split{grid-template-columns:repeat(2,minmax(0,1fr))}}
.price-chart{padding:18px 20px;min-width:0;overflow:hidden}
.chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.chart-asset{font-size:14px;font-weight:500;color:var(--ink)}
.chart-feed{display:block;font-size:11px;color:var(--mute);margin-top:6px}
.chart-feed.stale{color:var(--warn)}
.chart-quote{text-align:right;min-width:0}.chart-price{display:block;font-size:25px;font-weight:300;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.chart-timer{display:block;margin-top:4px;font-size:12px;color:var(--sky);font-variant-numeric:tabular-nums}
.chart-timer[data-result=win]{color:var(--win)}.chart-timer[data-result=loss]{color:var(--loss)}
.chart-svg{display:block;width:100%;height:260px;margin-top:10px;overflow:visible}
.chart-grid{stroke:var(--line);stroke-width:1}.chart-axis{fill:var(--mute);font:11px system-ui;font-variant-numeric:tabular-nums}
.chart-line{stroke:var(--sky);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.chart-now{fill:var(--sky)}.chart-entry-line{stroke:var(--mute);stroke-dasharray:5 5;stroke-width:1}
.chart-entry{fill:var(--bg);stroke:var(--ink);stroke-width:2}.chart-label{fill:var(--ink);font:11px system-ui}
.chart-expiry{stroke:var(--mute);stroke-dasharray:3 5;stroke-width:1}
.chart-exit{fill:var(--ink);stroke:var(--bg);stroke-width:1}.chart-exit[data-result=win]{fill:var(--win)}.chart-exit[data-result=loss]{fill:var(--loss)}
.chart-picker{appearance:none;display:block;font-size:16px!important;height:44px;min-height:44px;margin-top:6px;padding:9px 32px 9px 12px!important;width:100%;background-image:linear-gradient(45deg,transparent 50%,var(--mute) 50%),linear-gradient(135deg,var(--mute) 50%,transparent 50%);background-position:calc(100% - 18px) 18px,calc(100% - 12px) 18px;background-size:6px 6px;background-repeat:no-repeat}
.chart-picker:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
.chart-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px 16px;margin-top:12px;font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
.chart-status{color:var(--mute);font-size:12px;margin:12px 0 0}
@media(max-width:480px){.price-chart{padding:14px 12px}.chart-price{font-size:23px}.chart-asset{font-size:13px}.chart-head{gap:8px}.chart-feed{font-size:11px}.chart-timer{font-size:12px}.chart-svg{height:260px}}

/* App-branded notification; it never imitates a system permission or alert. */
.activity-toast{position:fixed;top:calc(184px + env(safe-area-inset-top));right:20px;z-index:30;display:flex;align-items:center;gap:12px;width:min(400px,calc(100vw - 32px));padding:16px 8px 16px 16px;border:1px solid rgba(255,255,255,.18);border-radius:23px;background:rgba(28,34,47,.96);box-shadow:0 12px 36px rgba(0,0,0,.32);animation:activity-in .32s cubic-bezier(.2,.8,.2,1);text-align:left;color:var(--ink)}
@supports(backdrop-filter:blur(18px)){.activity-toast{background:rgba(28,34,47,.84);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4)}}
.activity-logo{width:38px;height:38px;border-radius:11px;flex:none}.activity-content{flex:1;min-width:0}.activity-meta{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#b4bfd4;margin-bottom:5px}.activity-title{display:block;font-size:13px;font-weight:600;line-height:1.4}.activity-detail{display:block;font-size:12px;line-height:1.45;margin-top:3px;color:#c7d2e7}.activity-close{flex:none;align-self:flex-start;width:44px;min-width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#cad2e2;font:23px system-ui;cursor:pointer}.activity-close:hover{background:rgba(255,255,255,.08)}.activity-close:focus-visible{outline:2px solid var(--sky);outline-offset:0}
@keyframes activity-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.activity-toast{top:calc(144px + env(safe-area-inset-top));right:12px;width:calc(100vw - 24px);gap:10px;padding-left:12px}.activity-logo{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.activity-toast{animation:none}}
