:root{
  --canvas:#001325;--surface:#002540;--raised:#001B2E;--hover:#00304F;
  --line:#0A325180;--line-strong:#0A3251;--line-hover:#0F4266;
  --fg:#E6F0F4;--fg-soft:#BBD4E0;--fg-muted:#A7C6D7;--fg-subtle:#7FA5C0;
  --accent:#1B85C4;--accent-text:#78CDFF;--accent-soft:#1B85C41a;
  --ai:#C4B5FD;--success:#34D399;--warning:#FBBF24;--danger:#FB7185;--orange:#FB923C;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--canvas);color:var(--fg);font-family:Geist,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent-text)}a:hover{color:var(--fg)}
button{font-family:inherit;cursor:pointer}
button:disabled{opacity:.4;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[hidden]{display:none !important}
.wrap{position:relative;min-height:100vh;overflow:hidden}
.halo{position:absolute;top:-260px;left:50%;width:760px;height:420px;margin-left:-380px;border-radius:9999px;background:var(--accent);opacity:.13;filter:blur(110px);pointer-events:none}
.container{position:relative;max-width:1152px;margin:0 auto;padding:0 24px}
header.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:24px}
.brand{display:flex;align-items:center;gap:14px}
.brand img{height:36px;width:auto;display:block}
.brand .wordmark{font-weight:700;font-size:18px;letter-spacing:-.02em}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--fg-muted);text-transform:uppercase}
.brand .eyebrow{border-left:1px solid var(--line-strong);padding-left:14px}
.chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:8px;background:var(--surface);border:1px solid var(--line-strong);font-size:13px;color:var(--fg-soft)}
.mono{font-family:var(--mono)}
.card{padding:24px;border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:inset 0 1px 0 #ffffff08,0 16px 40px -24px #000000e6}
.field{display:flex;flex-direction:column;gap:6px}
.field label,.label{font-size:13px;font-weight:500;color:var(--fg)}
.field .help{font-size:12px;line-height:16px;color:var(--fg-muted)}
.in{height:44px;padding:0 14px;border-radius:8px;border:1px solid var(--line-strong);background:var(--raised);color:var(--fg);font-size:15px;font-family:inherit;outline:none;transition:border-color 150ms,box-shadow 150ms;width:100%}
textarea.in{height:auto;padding:12px 14px;line-height:24px;resize:vertical}
.in:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1B85C433}
.in::placeholder{color:var(--fg-subtle)}
.in[readonly]{color:var(--fg-muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:8px;border:1px solid var(--line-strong);background:var(--raised);color:var(--fg);font-size:15px;font-weight:500;text-decoration:none}
.btn:hover{background:var(--hover);border-color:var(--line-hover)}
.btn.primary{background:var(--fg);color:var(--canvas);border:none;font-weight:600}
.btn.primary:hover{background:#ffffff}
.btn.ghost{background:transparent;border-color:transparent;color:var(--fg-muted)}
.btn.orange{background:var(--orange);color:var(--canvas);border:none;font-weight:600;height:52px;font-size:16px}
.btn.green{background:var(--success);color:var(--canvas);border:none;font-weight:600;height:52px;font-size:16px}
.btn svg{flex:0 0 auto}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.err{padding:12px 14px;border-radius:8px;background:#f43f5e1a;color:var(--fg);font-size:14px;line-height:22px;border:1px solid #f43f5e55}
.ok{padding:12px 14px;border-radius:8px;background:#10b9811a;color:var(--fg);font-size:14px;line-height:22px}
.warn{padding:12px 14px;border-radius:8px;background:#f59e0b1a;color:var(--fg);font-size:14px;line-height:22px}
.badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:500;background:#0A325180;color:var(--fg-soft)}
.badge.ai{background:#8b5cf61a;color:var(--ai)}
.badge.accent{background:var(--accent-soft);color:var(--accent-text)}
.badge.success{background:#10b9811a;color:var(--success)}
.badge.danger{background:#f43f5e1a;color:var(--danger)}
.badge.warning{background:#f59e0b1a;color:var(--warning)}

/* Identificação */
.hero{display:flex;flex-wrap:wrap;align-items:center;gap:48px;padding:56px 0 64px}
.hero h1{margin:0;font-size:52px;line-height:1.04;font-weight:600;letter-spacing:-.04em}
.hero p.lead{margin:0;max-width:480px;font-size:16px;line-height:26px;color:var(--fg-soft)}
.hero .left{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:28px}
.hero form{display:flex;flex-direction:column;gap:16px;max-width:460px}
.studio-anim{flex:1 1 440px;min-width:0;position:relative;height:560px}
@media (max-width:640px){.hero h1{font-size:36px}.studio-anim{height:420px;transform:scale(.8);transform-origin:top center}}
.frame{position:absolute;border-radius:12px;background:var(--surface);border:1px solid var(--line-hover);overflow:hidden;box-shadow:0 24px 48px -24px #000000e6}
.noise{position:absolute;inset:0;background-color:var(--hover);background-image:radial-gradient(#78CDFF40 1px,transparent 1.4px);background-size:7px 7px}
.scan{position:absolute;left:0;right:0;height:2px;background:var(--accent-text);box-shadow:0 0 14px var(--accent-text)}
.bar{border-radius:4px;background:var(--fg)}
.flabel{position:absolute;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--fg-muted)}
@keyframes ssDevelop{0%{filter:blur(9px);opacity:.25}55%{filter:blur(0);opacity:1}85%{filter:blur(0);opacity:1}100%{filter:blur(9px);opacity:.25}}
@keyframes ssScan{0%{top:-2%}55%{top:100%}100%{top:100%}}
@keyframes ssGrow{0%{transform:scaleX(0)}45%{transform:scaleX(1)}85%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes ssFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes ssPulse{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes ssSpin{to{transform:rotate(360deg)}}
@keyframes ssBar{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
@keyframes ssProgress{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
.dev{animation:ssDevelop 6s ease-in-out infinite}.d2{animation-delay:2s}.d4{animation-delay:4s}
.scan.a{animation:ssScan 6s ease-in-out infinite}
.grow{transform-origin:left center;animation:ssGrow 6s ease-in-out infinite}
.float{animation:ssFloat 5s ease-in-out infinite}.float2{animation:ssFloat 6s ease-in-out 1s infinite}
.pulse{animation:ssPulse 1.6s ease-in-out infinite}
.spin{animation:ssSpin 1.2s linear infinite}
.rec-bar{display:inline-block;width:3px;height:16px;border-radius:2px;background:var(--danger);transform-origin:center;animation:ssBar .9s ease-in-out infinite}
.prog{animation:ssProgress 1.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.dev,.scan.a,.grow,.float,.float2,.pulse,.spin,.rec-bar,.prog{animation:none !important}}

/* OTP */
.center{display:flex;justify-content:center;padding:80px 0}
.otp-box{display:flex;gap:8px}
.otp-box input{width:52px;height:60px;text-align:center;font-size:24px;font-family:var(--mono);padding:0}

/* Etapas */
.steps{display:flex;flex-wrap:wrap;gap:8px}
.step{flex:1 1 180px;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;text-align:left;border:1px solid var(--line);background:var(--raised);color:var(--fg-muted)}
.step.cur{border-color:var(--accent);background:var(--surface);color:var(--fg)}
.step.done{color:var(--fg)}
.step .dot{display:inline-flex;width:28px;height:28px;flex:0 0 28px;border-radius:9999px;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;background:var(--surface);border:1px solid var(--line-hover);color:var(--fg-muted)}
.step.cur .dot{background:var(--accent);border-color:var(--accent);color:#fff}
.step.done .dot{background:var(--success);border-color:var(--success);color:var(--canvas)}
.step .t{display:flex;flex-direction:column;gap:2px}
.step .t b{font-size:14px;font-weight:500}
.layout{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;padding:24px 0 64px}
.layout .main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:24px}
.layout aside{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:16px}
h2.title{margin:0;font-size:24px;font-weight:600;letter-spacing:-.02em}
p.sub{margin:6px 0 0;font-size:15px;line-height:24px;color:var(--fg-soft)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.pick{border:1px solid var(--line-strong);background:var(--raised);color:var(--fg-soft);transition:border-color 150ms,background-color 150ms}
.pick:hover{border-color:var(--line-hover)}
.pick[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--fg)}
.chip-btn{height:40px;padding:0 16px;border-radius:9999px;font-size:14px}
.nets{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.net{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;border-radius:12px;text-align:left}
.net svg{stroke:var(--fg-subtle)}
.net[aria-pressed="true"] svg{stroke:var(--accent-text)}
.net b{font-size:15px;color:var(--fg)}
.net small{font-size:12px;color:var(--fg-muted)}
.fmt{display:flex;flex-direction:column;border-radius:12px}
.fmt .row{display:flex;align-items:center;gap:4px}
.fmt .main-btn{flex:1 1 auto;display:flex;align-items:center;gap:16px;padding:14px 16px;border:none;background:transparent;color:inherit;text-align:left;border-radius:12px}
.fmt .thumb-box{display:flex;width:56px;height:48px;flex:0 0 56px;align-items:center;justify-content:center}
.fmt .thumb{display:block;border-radius:4px;background:var(--surface);border:1px solid var(--line-hover)}
.fmt[aria-selected="true"] .thumb{background:var(--accent);border-color:var(--accent-text)}
.fmt .txt{flex:1 1 auto;display:flex;flex-direction:column;gap:3px;min-width:0}
.fmt .txt b{font-size:15px;color:var(--fg)}
.fmt .txt span{font-size:13px;line-height:20px;color:var(--fg-soft)}
.fmt .size{font-family:var(--mono);font-size:12px;color:var(--fg-muted);white-space:nowrap}
.info-btn{display:inline-flex;width:44px;height:44px;flex:0 0 44px;margin-right:8px;border-radius:9999px;align-items:center;justify-content:center;border:1px solid var(--line-strong);background:var(--raised);color:var(--accent-text);font-family:Georgia,serif;font-style:italic;font-weight:700;font-size:16px}
.tip{margin:0 16px 16px 88px;padding:12px 14px;border-radius:8px;background:var(--accent-soft);font-size:14px;line-height:22px}
.tip b{color:var(--accent-text);font-weight:600}
@media (max-width:640px){.tip{margin-left:16px}.fmt .size{display:none}}
.opt{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:12px;text-align:left}
.opt b{font-size:15px;color:var(--fg)}
.opt span{font-size:13px;line-height:20px;color:var(--fg-soft)}
.drop{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px;border-radius:12px;border:1px dashed var(--line-hover);background:var(--raised);cursor:pointer;text-align:center;position:relative}
.drop.over{border-color:var(--accent)}
.file-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;background:var(--raised);border:1px solid var(--line)}
.file-row img{width:36px;height:36px;border-radius:6px;object-fit:cover;background:var(--line-hover)}
.file-row.bad{border-color:#f43f5e55}
.navbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:20px;border-top:1px solid var(--line)}
.sum{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.sum span:first-child{color:var(--fg-muted)}
.sum span:last-child{text-align:right}
.meter{height:6px;border-radius:9999px;background:#0A3251cc;overflow:hidden}
.meter div{height:100%;background:var(--accent)}

/* Geração */
.gen{display:flex;flex-wrap:wrap;gap:48px;align-items:center;justify-content:center;padding:56px 0 64px}
.phases{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.phases li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--fg-muted)}
.phases li.on,.phases li.done{color:var(--fg)}

/* Validação */
.review{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start;padding:32px 0 64px}
.review .art{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:12px;align-items:center}
.review canvas{width:auto;height:auto;max-width:100%;max-height:72vh;border-radius:12px;box-shadow:0 24px 48px -24px #000000e6;background:#fff}
.review .side{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:20px}
.vtabs{display:flex;gap:8px;flex-wrap:wrap;align-self:stretch}
.vtab{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:6px;font-family:var(--mono);font-size:12px;background:var(--raised);color:var(--fg-muted);border:1px solid var(--line-strong)}
.vtab.cur{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}
.adj-box{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:12px;background:var(--raised);border:1px solid #FB923C66}
.dots{display:inline-flex;gap:4px}
.dots i{width:10px;height:10px;border-radius:9999px;background:var(--line-hover)}
.dots i.on{background:var(--orange)}
footer.foot{padding:0 0 24px;font-size:12px;color:var(--fg-muted)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Início */
.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.hub-card{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;border-radius:16px;background:var(--surface);border:1px solid var(--line);color:var(--fg);text-align:left;box-shadow:inset 0 1px 0 #ffffff08,0 16px 40px -24px #000000e6;transition:border-color 150ms,transform 150ms}
.hub-card:hover{border-color:var(--line-hover);transform:translateY(-2px)}
.hub-card.hot{border-color:var(--accent)}
.hub-ico{display:flex;width:48px;height:48px;border-radius:12px;background:var(--raised);border:1px solid var(--line-strong);align-items:center;justify-content:center}
.hub-t{display:flex;flex-direction:column;gap:6px}
.hub-t b{font-size:20px;font-weight:600;letter-spacing:-.02em}
.hub-t span{font-size:14px;line-height:22px;color:var(--fg-soft)}
.hub-f{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:auto;font-size:13px;color:var(--fg-muted)}
.path-opt{display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:16px;text-align:left}
.path-opt[aria-pressed="true"]#p-human{border-color:var(--orange);background:#FB923C14}
.path-list{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--fg-soft)}
@media (prefers-reduced-motion:reduce){.hub-card:hover{transform:none}}

/* Pautas */
@keyframes ptInA{from{opacity:0;transform:translateX(40px) rotate(1.5deg)}to{opacity:1;transform:none}}
@keyframes ptInB{from{opacity:0;transform:translateX(40px) rotate(1.5deg)}to{opacity:1;transform:none}}
.pt-a{animation:ptInA 380ms cubic-bezier(.2,.8,.2,1)}.pt-b{animation:ptInB 380ms cubic-bezier(.2,.8,.2,1)}
.pt-card{position:relative;display:flex;flex-direction:column;gap:18px;padding:28px;border-radius:18px;background:var(--surface);border:1px solid var(--line-hover);box-shadow:inset 0 1px 0 #ffffff0a,0 24px 48px -24px #000000e6}
.pt-card h2{margin:0;font-size:32px;line-height:38px;font-weight:600;letter-spacing:-.03em}
.pt-chip{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 12px;border-radius:8px;font-size:13px}
.pt-why{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:12px;background:var(--raised);border:1px solid var(--line)}
.pt-note{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:14px;background:var(--raised);border:1px solid var(--line-strong)}
.pt-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pt-act{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:14px;border:none;font-size:15px;font-weight:600;transition:transform 150ms,filter 150ms}
.pt-act:hover{transform:translateY(-2px);filter:brightness(1.06)}
.pt-act.rej{border:1px solid #FB718566;background:#f43f5e14;color:var(--danger)}
.pt-act.adj{background:var(--orange);color:var(--canvas)}
.pt-act.ok{background:var(--success);color:var(--canvas)}
.pt-stat{padding:18px;border-radius:14px;text-align:center;display:flex;flex-direction:column;gap:2px}
.pt-stat b{font-size:34px;font-weight:600}.pt-stat span{font-size:13px}
@keyframes ptFall{0%{transform:translateY(-40px) rotate(0);opacity:0}10%{opacity:1}100%{transform:translateY(760px) rotate(540deg);opacity:0}}
.pt-conf{position:absolute;top:0;width:10px;height:14px;border-radius:2px;animation:ptFall 2.8s ease-in infinite}
@keyframes ptPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08);opacity:1}100%{transform:scale(1)}}
.pt-pop{animation:ptPop 500ms cubic-bezier(.2,.8,.2,1)}
@media (prefers-reduced-motion:reduce){.pt-a,.pt-b,.pt-pop{animation:none}.pt-conf{display:none}.pt-act:hover{transform:none}}

/* Posts */
.po-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;text-align:left;color:var(--fg);border:1px solid var(--line);background:var(--surface)}
.po-item[aria-current="true"]{border-color:var(--accent);background:var(--accent-soft)}
.po-media{flex:0 0 300px;display:flex;flex-direction:column;gap:8px;align-items:center}
.po-media img,.po-media video{width:100%;max-width:300px;max-height:560px;object-fit:contain;border-radius:12px;background:#000}
.switch{position:relative;width:40px;height:24px;flex:0 0 40px;border-radius:9999px;background:var(--line-hover)}
.switch i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:9999px;background:#fff;transition:left 150ms}
[aria-checked="true"] .switch{background:var(--success)}[aria-checked="true"] .switch i{left:19px}
.help{font-size:12px;line-height:16px;color:var(--fg-muted)}
