        @import url('theme.css?v=36');
        * { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Inter', -apple-system, sans-serif; }
        body { background: var(--bg); color: var(--text); min-height: 100vh; -webkit-font-smoothing: antialiased; }
        .glow { position: fixed; border-radius: 50%; background: var(--gold); filter: blur(110px); opacity: .07; pointer-events: none; z-index:0; }
        .g1 { width: 360px; height: 360px; top: -80px; left: -80px; }
        .g2 { width: 480px; height: 480px; bottom: -120px; right: -120px; }

        /* ── LAYOUT 2 COLUNAS ── */
        .page { min-height:100vh; display:grid; grid-template-columns: 1.05fr 0.95fr; }
        @media (max-width:920px){ .page{ grid-template-columns:1fr; } }
        .promo { position:relative; z-index:1; padding:56px 5vw; display:flex; flex-direction:column; justify-content:center; gap:20px; }
        .auth { position:relative; z-index:1; background:var(--surface-2); border-left:1px solid rgba(51,51,51,.12); padding:40px 24px; display:flex; align-items:center; justify-content:center; }
        @media (max-width:920px){ .auth{ border-left:none; border-top:1px solid rgba(51,51,51,.12); } .promo{ padding:44px 24px 8px; } }

        /* ── PROMO ── */
        .promo-brand { font-size:1.5rem; font-weight:900; color:var(--gold); letter-spacing:.5px; }
        .promo-brand span { display:block; font-size:.62rem; color:var(--muted); text-transform:uppercase; letter-spacing:2px; font-weight:600; margin-top:2px; }
        .promo-badge { width:fit-content; background:rgba(51,51,51,.1); border:1px solid var(--border-gold); color:var(--gold); font-size:.66rem; font-weight:700; text-transform:uppercase; letter-spacing:1.6px; padding:4px 12px; border-radius:20px; }
        .promo-h1 { font-size:clamp(1.7rem,3.2vw,2.5rem); font-weight:900; line-height:1.18; letter-spacing:-.6px; }
        .promo-h1 em { font-style:normal; color:var(--gold); }
        .promo-sub { color:var(--text-2); font-size:1rem; line-height:1.7; max-width:520px; }
        .promo-feats { display:flex; flex-direction:column; gap:10px; margin-top:4px; }
        .promo-feat { display:flex; align-items:flex-start; gap:11px; font-size:.9rem; color:var(--text-2); line-height:1.5; }
        .promo-feat .fi { color:var(--gold); font-weight:800; flex-shrink:0; }
        .promo-feat b { color:var(--text); }
        .promo-stats { display:flex; gap:24px; margin-top:8px; flex-wrap:wrap; }
        .promo-stat .n { font-size:1.6rem; font-weight:900; letter-spacing:-1px; }
        .promo-stat .l { font-size:.72rem; color:var(--muted); }
        .promo-segs { display:flex; flex-wrap:wrap; gap:7px; margin-top:4px; }
        .promo-seg { font-size:.72rem; font-weight:600; color:#8892b0; border:1px solid rgba(255,255,255,.1); border-radius:20px; padding:4px 11px; }
        .box {
            background: var(--surface); backdrop-filter: blur(20px);
            border: 1px solid var(--border-gold); border-radius: 22px;
            width: 100%; max-width: 400px; padding: 36px 40px 40px;
            box-shadow: 0 20px 50px rgba(0,0,0,.55); z-index: 1;
            animation: fadeIn .55s ease-out;
        }
        @keyframes fadeIn { from { opacity:0; transform:translateY(-16px); } to { opacity:1; transform:translateY(0); } }
        .logo-name { color: var(--gold); font-size: 1.55rem; font-weight: 800; letter-spacing: 1px; text-align:center; margin-bottom: 20px; }

        /* ── TABS ── */
        .tab-nav { display: flex; background: rgba(0,0,0,.25); border-radius: 10px; padding: 4px; gap: 4px; margin-bottom: 24px; border: 1px solid rgba(255,255,255,.06); }
        .tab-btn { flex: 1; padding: 9px; border: none; border-radius: 7px; background: transparent; color: var(--muted); font-size: .83rem; font-weight: 600; font-family: inherit; cursor: pointer; transition: all .18s; }
        .tab-btn:hover { color: var(--text); background: rgba(255,255,255,.06); }
        .tab-btn.active { background: var(--gold); color: #020c1b; }

        /* ── FORMS ── */
        .input-group { margin-bottom: 15px; text-align: left; }
        label { display: block; font-size: .75rem; color: var(--muted); margin-bottom: 7px; font-weight: 500; letter-spacing: .3px; }
        input[type=email], input[type=password], input[type=text] {
            width: 100%; padding: 12px 14px; border-radius: 9px;
            background: var(--surface-2); border: 1px solid rgba(255,255,255,.09);
            color: white; outline: none; font-size: .9rem; font-family: inherit;
            transition: border-color .2s, box-shadow .2s;
        }
        input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(51,51,51,.09); }
        button[type=submit] {
            width: 100%; padding: 13px; border-radius: 9px;
            background: var(--gold); border: none; color: #020c1b;
            font-weight: 700; cursor: pointer; font-size: .9rem;
            font-family: inherit; letter-spacing: .3px; margin-top: 6px;
            transition: box-shadow .2s, transform .2s;
        }
        button[type=submit]:hover { box-shadow: 0 0 22px rgba(51,51,51,.4); transform: translateY(-1px); }

        /* ── MENSAGENS ── */
        .erro   { background: rgba(255,107,107,.08); border: 1px solid rgba(255,107,107,.35); color: #ff6b6b; padding: 11px 14px; border-radius: 9px; margin-bottom: 16px; font-size: .83rem; font-weight: 500; }
        .aviso  { background: rgba(102,102,102,.07);  border: 1px solid rgba(102,102,102,.28);  color: #999999; padding: 11px 14px; border-radius: 9px; margin-bottom: 16px; font-size: .83rem; }
        .sucesso{ background: rgba(46,204,113,.07);  border: 1px solid rgba(46,204,113,.28);  color: #2ecc71; padding: 11px 14px; border-radius: 9px; margin-bottom: 16px; font-size: .83rem; font-weight: 500; }
        .register-link { margin-top: 22px; color: var(--muted); font-size: .82rem; line-height: 1.6; text-align: center; }
        .register-link a { color: var(--gold); text-decoration: none; font-weight: 600; }
        .register-link a:hover { text-decoration: underline; }

        /* ── CÓDIGO ── */
        .code-hint { text-align:center; font-size:.82rem; color:var(--muted); margin-bottom:18px; line-height:1.6; }
        .code-hint strong { color:var(--text); }
        input.input-code {
            text-align:center; font-size:1.8rem; font-weight:800; letter-spacing:10px;
            font-family:monospace; padding:14px; color:var(--gold);
        }
        .link-reenviar { display:block; text-align:center; margin-top:12px; font-size:.8rem; color:var(--muted); }
        .link-reenviar a { color:var(--gold); text-decoration:none; font-weight:600; }
        .link-reenviar a:hover { text-decoration:underline; }
