:root{--ink:#2a1b45;--roxo:#3f1c78;--violeta:#5f379e;--profundo:#40227f;--roxo-rgb:63,28,120;--violeta-rgb:95,55,158;--brand:#5f379e;--brand-hover:#4c2b84;--on-brand:#fff;--on-brand-strong:#f1e9fc;--on-brand-soft:#e7d8fb;--on-brand-icon:#cdb6f5;--accent-ink:var(--roxo);--danger:#c24c86;--bg:#f6f4fa;--surface:#fff;--surface-2:#efe9f7;--line:#e4dcf0;--muted:#6e6685;--prata:#b8b8b8;--wa:#25d366;--wa-hover:#1ebe5a;--shadow:0 2px 4px rgba(var(--roxo-rgb),.05), 0 10px 30px rgba(var(--roxo-rgb),.08);--shadow-lg:0 8px 24px rgba(var(--roxo-rgb),.14), 0 24px 60px rgba(var(--roxo-rgb),.14);--radius:18px;--maxw:1180px;--art-a:#fbfafe;--art-b:#eee8f8;--font-head:"Montserrat", system-ui, -apple-system, sans-serif;--font-body:"Mulish", system-ui, -apple-system, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f1ecf8;--brand:#7a4fcb;--brand-hover:#8c64d8;--on-brand:#fff;--bg:#160f1f;--surface:#20172e;--surface-2:#2a2040;--line:#372b4e;--muted:#aea3c6;--accent-ink:#cdb6f5;--shadow:0 2px 4px #0000004d, 0 12px 30px #00000059;--shadow-lg:0 10px 30px #00000073, 0 24px 60px #00000080}}:root[data-theme=dark]{--ink:#f1ecf8;--brand:#7a4fcb;--brand-hover:#8c64d8;--on-brand:#fff;--bg:#160f1f;--surface:#20172e;--surface-2:#2a2040;--line:#372b4e;--muted:#aea3c6;--accent-ink:#cdb6f5;--shadow:0 2px 4px #0000004d, 0 12px 30px #00000059;--shadow-lg:0 10px 30px #00000073, 0 24px 60px #00000080}.cat--violeta{--cat:#6e44b8;--cat-bottle-top:#9778cc;--cat-bottle-bot:#4b2e7d;--cat-mini-top:#8e6dc8;--cat-mini-bot:#4f3184}.cat--ambar{--cat:#d99a17;--cat-bottle-top:#e4b658;--cat-bottle-bot:#946910;--cat-mini-top:#e1b04a;--cat-mini-bot:#9c6f11}.cat--verde{--cat:#2fa36b;--cat-bottle-top:#69bd94;--cat-bottle-bot:#206f49;--cat-mini-top:#5db78c;--cat-mini-bot:#22754d}.cat--azul{--cat:#3b6fb5;--cat-bottle-top:#7297ca;--cat-bottle-bot:#284b7b;--cat-mini-top:#668fc5;--cat-mini-bot:#2a5082}.cat--turquesa{--cat:#17a398;--cat-bottle-top:#58bdb5;--cat-bottle-bot:#106f67;--cat-mini-top:#4ab7af;--cat-mini-bot:#11756d}.cat--celeste{--cat:#4fa3d1;--cat-bottle-top:#80bdde;--cat-bottle-bot:#366f8e;--cat-mini-top:#76b7db;--cat-mini-bot:#397596}.cat--magenta{--cat:#c24c86;--cat-bottle-top:#d37ea8;--cat-bottle-bot:#84345b;--cat-mini-top:#cf73a1;--cat-mini-bot:#8c3760}.cat--lilas{--cat:#8a6fd1;--cat-bottle-top:#ab97de;--cat-bottle-bot:#5e4b8e;--cat-mini-top:#a48fdb;--cat-mini-bot:#635096}*{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}body.auth{font-family:var(--font-body);color:var(--ink);background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}body.auth h1,body.auth h2{font-family:var(--font-head)}.auth-card{background:var(--surface);border:1px solid var(--line);width:100%;max-width:940px;box-shadow:0 8px 24px rgba(var(--roxo-rgb),.1), 0 24px 60px rgba(var(--roxo-rgb),.12);border-radius:20px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}:root[data-theme=dark] .auth-card{box-shadow:var(--shadow-lg)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .auth-card{box-shadow:var(--shadow-lg)}}@media (width<=760px){.auth-card{grid-template-columns:1fr;max-width:440px}}.auth-brand{color:#fff;background:radial-gradient(120% 90% at 80% 10%, var(--violeta) 0%, var(--roxo) 55%, var(--profundo) 100%);padding:46px 42px;position:relative;overflow:hidden}.auth-brand .sym{opacity:.14;filter:brightness(0)invert();width:260px;position:absolute;top:-30px;right:-70px}.auth-brand .logo{height:34px;position:relative}.auth-brand h2{text-wrap:balance;margin-top:60px;font-size:1.7rem;font-weight:800;line-height:1.1;position:relative}.auth-brand p{color:var(--on-brand-soft);max-width:34ch;margin-top:12px;font-size:.95rem;position:relative}.auth-brand ul{flex-direction:column;gap:12px;margin-top:28px;list-style:none;display:flex;position:relative}.auth-brand li{color:var(--on-brand-strong);align-items:center;gap:11px;font-size:.9rem;display:flex}.auth-brand li svg{width:20px;height:20px;color:var(--on-brand-icon);flex:none}@media (width<=760px){.auth-brand{padding:32px 30px}.auth-brand h2{margin-top:26px;font-size:1.4rem}.auth-brand ul{display:none}}.auth-form{flex-direction:column;padding:46px 44px;display:flex}@media (width<=760px){.auth-form{padding:32px 30px}}.auth-form .eyebrow{font-family:var(--font-head);letter-spacing:.16em;text-transform:uppercase;color:var(--brand);font-size:.72rem;font-weight:700}.auth-form h1{margin-top:8px;font-size:1.6rem;font-weight:800}.auth-form .lead{color:var(--muted);margin-top:8px;font-size:.92rem}.auth-form form{flex-direction:column;gap:18px;margin-top:28px;display:flex}.field label{font-size:.8rem;font-weight:700;font-family:var(--font-head);color:var(--ink);margin-bottom:7px;display:block}.inp{position:relative}.inp>svg{width:19px;height:19px;color:var(--muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.inp input{width:100%;font-family:var(--font-body);color:var(--ink);background:var(--surface-2);border:1.5px solid var(--line);border-radius:12px;outline:none;padding:13px 44px 13px 42px;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.inp input::placeholder{color:var(--muted);opacity:.8}.inp input:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb, var(--brand) 18%, transparent)}.inp .toggle{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:8px;padding:6px;position:absolute;top:50%;left:auto;right:8px;transform:translateY(-50%)}.inp .toggle:hover{color:var(--brand)}.inp .toggle svg{width:19px;height:19px;display:block}.inp input.code{text-align:center;letter-spacing:.42em;font-family:var(--font-head);padding-left:16px;font-size:1.25rem;font-weight:700}.auth-form .btn{font-family:var(--font-head);cursor:pointer;background:var(--brand);color:var(--on-brand);border:none;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:14px;font-size:.98rem;font-weight:700;transition:background .2s,transform .15s;display:inline-flex}.auth-form .btn:hover{background:var(--brand-hover)}.auth-form .btn:active{transform:translateY(1px)}.auth-form .btn svg{width:18px;height:18px}.auth-form .btn[disabled]{opacity:.55;cursor:not-allowed}.auth-form .btn[disabled]:hover{background:var(--brand)}.msg{border-radius:12px;align-items:flex-start;gap:9px;padding:12px 14px;font-size:.85rem;display:flex}.msg svg{flex:none;width:18px;height:18px;margin-top:1px}.msg.info{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}.msg.info svg{color:var(--brand)}.msg.error{background:color-mix(in srgb, var(--danger) 12%, var(--surface));color:var(--ink);border:1px solid color-mix(in srgb, var(--danger) 40%, var(--line))}.msg.error svg{color:var(--danger)}.auth-help{color:var(--muted);font-size:.82rem;line-height:1.5}.auth-help b{color:var(--ink);font-weight:700}.auth-foot{color:var(--muted);text-align:center;margin-top:auto;padding-top:26px;font-size:.78rem}.auth-foot b{color:var(--ink)}.auth-note{text-align:center;color:var(--muted);margin-top:14px;font-size:.72rem}.auth-note span{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:5px 12px;display:inline-block}.inp .toggle .eye-off,.inp .toggle[aria-pressed=true] .eye-open{display:none}.inp .toggle[aria-pressed=true] .eye-off{display:inline}.qr-wrap{flex-direction:column;align-items:center;gap:12px;margin-top:24px;display:flex}.qr{border:1px solid var(--line);background:#fff;border-radius:14px;width:240px;height:240px;padding:10px}.qr-manual{color:var(--muted);text-align:center;font-size:.82rem}.qr-manual summary{cursor:pointer;color:var(--brand);font-weight:600}.qr-manual p{margin-top:8px}.qr-secret{font-family:var(--font-head);letter-spacing:.12em;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);word-break:break-all;border-radius:10px;margin-top:6px;padding:8px 12px;font-weight:700;display:inline-block}.codes{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;list-style:none;display:grid}.codes li{font-family:var(--font-head);letter-spacing:.06em;text-align:center;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:11px 8px;font-size:1rem;font-weight:700}.auth-form .btn[href]{margin-top:24px;text-decoration:none}.link{color:var(--brand);font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}
