:root {
    --lume-paper: #f4f7fc;
    --lume-surface: #ffffff;
    --lume-ink: #152842;
    --lume-muted: #61758e;
    --lume-blue: #2563eb;
    --lume-hero: #1e54ce;
    --lume-border: #dce5f1;
    --lume-soft: #edf3fd;
    --lume-focus: #93b8fd;
    --lume-shadow: rgba(18, 50, 91, .1);
}

html, body { background: var(--lume-paper); color: var(--lume-ink); font-family: Inter, "Segoe UI", sans-serif; }
.mud-main-content { background: var(--lume-paper); }
.mud-appbar { border-bottom: 1px solid var(--lume-border); box-shadow: none !important; backdrop-filter: blur(16px); }

.lume-top-brand { display:inline-flex; align-items:center; gap:8px; color:var(--lume-ink); text-decoration:none; }
.lume-top-mark,.auth-logo-mark,.auth-mobile-logo>b { display:grid; place-items:center; width:35px; height:35px; padding:0; border-radius:10px; color:#fff; background:var(--lume-hero); font-family:Inter,"Segoe UI",sans-serif; font-size:18px; font-style:normal; font-weight:850; line-height:1; }
.lume-top-brand strong { font-size:28px; letter-spacing:-1.7px; }.lume-top-brand strong>span { color:var(--lume-blue); }.lume-top-brand small { align-self:end; margin:0 0 5px 1px; color:var(--lume-muted); font-size:8px; font-weight:700; letter-spacing:1.2px; }
.lume-top-links { display:flex; flex-direction:row; align-items:center; gap:18px; margin-right:14px; }.lume-top-links a { padding:0; color:var(--lume-muted); font-size:11px; }.lume-top-links a:hover { color:var(--lume-blue); background:transparent; }
.lume-user-link { display:flex; align-items:center; justify-content:center; width:176px; min-height:39px; padding:0 10px; border:1px solid var(--lume-border); border-radius:8px; color:var(--lume-muted); background:#fff; font-size:11px; font-weight:700; text-align:center; text-decoration:none; }.lume-user-link:hover { color:var(--lume-blue); background:var(--lume-soft); }.lume-user-link.primary { color:#fff; border-color:var(--lume-blue); background:var(--lume-blue); }.lume-user-link.danger { color:#b84536; border-color:#efcbc6; background:#fff6f5; }
.lume-session-exit { display:inline-flex; align-items:center; justify-content:center; min-height:38px; margin-right:7px; padding:0 13px; border:1px solid #efcbc6; border-radius:9px; color:#b84536; background:#fff6f5; font-size:11px; font-weight:750; text-decoration:none; white-space:nowrap; }.lume-session-exit:hover { filter:brightness(.97); }
.lume-subscription-banner { display:flex; align-items:center; justify-content:center; gap:12px; padding:9px 18px; border-bottom:1px solid; font-size:12px; font-weight:650; }.lume-subscription-banner.trial { color:#805415; border-color:#f0d594; background:#fff4dc; }.lume-subscription-banner.expired { color:#a34138; border-color:#f2c8c2; background:#fff0ed; }.lume-subscription-banner a { color:inherit; font-weight:800; text-decoration:underline; }

.auth-shell { background:radial-gradient(circle at 12% 18%,rgba(59,120,240,.14),transparent 34%),radial-gradient(circle at 92% 86%,rgba(30,84,206,.11),transparent 30%),var(--lume-paper); }
.auth-glow-one { background:rgba(89,145,255,.14); }.auth-glow-two { background:rgba(30,84,206,.1); }
.auth-card { border-color:rgba(37,99,235,.1); box-shadow:0 30px 80px rgba(18,50,91,.15); }
.auth-brand-panel { background:linear-gradient(160deg,rgba(255,255,255,.09),transparent 42%),linear-gradient(145deg,#122e67 0%,#1e54ce 58%,#357af1 100%); }
.auth-logo { align-items:center; gap:8px; }.auth-logo-mark { flex:0 0 38px; width:38px; height:38px; background:#fff; color:var(--lume-hero); font-size:18px; }.auth-logo-name { margin:0; color:#fff; font-size:28px; font-weight:800; letter-spacing:-1.4px; }.auth-logo-dot { color:#acd0ff; }.auth-logo-tag { align-self:flex-end; margin:0 0 5px 1px; color:#c9dcff; font-size:8px; font-weight:700; letter-spacing:1.2px; }
.auth-eyebrow { color:#bcd5ff; }.auth-feature-list span { color:#d8e8ff; }.auth-kicker,.auth-form-options a,.auth-register a,.auth-legal a { color:var(--lume-blue); }.auth-form-heading h2 { color:var(--lume-ink); }.auth-form-heading p,.auth-register { color:var(--lume-muted); }
.auth-field { color:#344a66; }.auth-input-wrap input { border-color:var(--lume-border); color:var(--lume-ink); background:#f9fbff; }.auth-input-wrap svg { stroke:#7e90a8; }.auth-input-wrap input:focus { border-color:var(--lume-blue); background:#fff; box-shadow:0 0 0 4px rgba(37,99,235,.11); }.auth-remember input { accent-color:var(--lume-blue); }
.auth-submit { background:linear-gradient(135deg,var(--lume-hero),#357af1); box-shadow:0 12px 24px rgba(30,84,206,.22); }.auth-submit:hover { box-shadow:0 15px 28px rgba(30,84,206,.28); }.auth-register-button { color:var(--lume-muted); }.auth-register-button:hover { color:var(--lume-blue); }
.auth-mobile-logo { align-items:center; gap:7px; color:var(--lume-ink); font-size:27px; font-weight:750; letter-spacing:-1.5px; }.auth-mobile-logo>b { flex:0 0 34px; }.auth-mobile-logo>i { margin-left:-7px; color:var(--lume-blue); font-style:normal; }.auth-mobile-logo>small { align-self:flex-end; margin:0 0 5px 0; color:var(--lume-muted); font-size:8px; letter-spacing:1px; }

.account-page { color:var(--lume-ink) !important; }.account-eyebrow,.card-heading>div>span,.account-status>div>span { color:var(--lume-blue) !important; }.account-hero p,.account-status p,.subscription-card p,.capacity-card p,.identity-card dt,.trial-days span,.module small,.capacity span { color:var(--lume-muted) !important; }.account-button.primary { background:var(--lume-hero) !important; box-shadow:0 12px 24px rgba(30,84,206,.2) !important; }.account-button.secondary { border-color:var(--lume-border) !important; color:var(--lume-blue) !important; }.account-card,.account-loading,.account-message { border-color:var(--lume-border) !important; box-shadow:0 14px 40px var(--lume-shadow) !important; }.card-icon { color:var(--lume-blue) !important; background:var(--lume-soft) !important; }.trial-progress,.identity-card dl>div { background-color:transparent; border-color:var(--lume-border) !important; }.trial-progress { background:var(--lume-soft) !important; }.trial-progress span { background:linear-gradient(90deg,#6aa0ff,var(--lume-blue)) !important; }.text-link,.capacity strong { color:var(--lume-blue) !important; }.module,.capacity>div { background:var(--lume-soft) !important; }.module>span { color:var(--lume-blue) !important; background:#dce9ff !important; }.account-footer { background:var(--lume-ink) !important; }.account-footer span { color:#c9dcff !important; }

.admin-page { --admin-ink:var(--lume-ink) !important; --admin-muted:var(--lume-muted) !important; --admin-green:var(--lume-blue) !important; --admin-border:var(--lume-border) !important; }.admin-hero { background:radial-gradient(circle at 92% 15%,rgba(150,190,255,.3),transparent 28%),linear-gradient(135deg,#122e67 0%,#1e54ce 58%,#357af1 100%) !important; box-shadow:0 22px 55px rgba(30,84,206,.18) !important; }.admin-eyebrow { color:#bcd5ff !important; }.admin-primary-action { background:var(--lume-blue) !important; }.admin-card-icon,.stat-icon { color:var(--lume-blue) !important; background:var(--lume-soft) !important; }
.support-page { --support-ink:var(--lume-ink); --support-green:var(--lume-blue); --support-mint:var(--lume-soft); --support-border:var(--lume-border); }.support-hero { background:radial-gradient(circle at 92% 12%,rgba(160,200,255,.3),transparent 30%),linear-gradient(135deg,#163774,#2563eb) !important; box-shadow:0 18px 42px rgba(30,84,206,.16) !important; }.support-hero>div:first-child>span,.support-eyebrow { color:#bcd5ff; }.support-message.mine>div:last-child,.support-primary { background:var(--lume-blue) !important; }.support-ticket-row:hover,.support-ticket-row.selected { border-color:#bcd2fa !important; background:var(--lume-soft) !important; }
.admin-top-link { color:var(--lume-blue); border-color:var(--lume-border); background:var(--lume-soft); }.route-access-denied { background:var(--lume-paper); }.route-access-denied>div { border-color:var(--lume-border); box-shadow:0 20px 55px var(--lume-shadow); }.route-access-denied h1 { color:var(--lume-ink); }.route-access-denied p { color:var(--lume-muted); }.route-access-denied a { background:var(--lume-blue); }

@media(max-width:820px) { .auth-mobile-logo { display:flex; }.lume-top-links { display:none; } }
@media(max-width:560px) { .lume-top-brand small { display:none; }.lume-top-brand strong { font-size:23px; }.lume-top-mark { width:31px;height:31px;font-size:16px; }.lume-subscription-banner { flex-wrap:wrap; text-align:center; } }

.lume-theme-toggle { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 13px; border:1px solid var(--lume-border); border-radius:9px; color:var(--lume-blue); background:var(--lume-soft); font:inherit; font-size:11px; font-weight:700; cursor:pointer; }
.lume-theme-toggle:hover { filter:brightness(.97); }.show-in-dark { display:none; }[data-theme="dark"] .show-in-light { display:none; }[data-theme="dark"] .show-in-dark { display:inline; }
.auth-theme-toggle { position:absolute; top:22px; right:24px; z-index:3; color:#fff; border-color:rgba(255,255,255,.24); background:rgba(18,46,103,.7); backdrop-filter:blur(10px); }

:root[data-theme="dark"] {
    color-scheme: dark;
    --lume-paper: #0b1220;
    --lume-surface: #131f32;
    --lume-ink: #e5edfa;
    --lume-muted: #a0b2cb;
    --lume-blue: #7eacff;
    --lume-hero: #1948a9;
    --lume-border: #2b3a52;
    --lume-soft: #1c2c46;
    --lume-focus: #518aff;
    --lume-shadow: rgba(0,0,0,.34);
}
[data-theme="dark"] body,[data-theme="dark"] .mud-main-content { background:var(--lume-paper); color:var(--lume-ink); }
[data-theme="dark"] .mud-appbar,[data-theme="dark"] .mud-paper { color:var(--lume-ink) !important; border-color:var(--lume-border) !important; background:#131f32 !important; }
[data-theme="dark"] .mud-icon-button { color:var(--lume-muted) !important; }
[data-theme="dark"] .lume-top-brand { color:var(--lume-ink); }[data-theme="dark"] .lume-user-link { color:var(--lume-muted); border-color:var(--lume-border); background:var(--lume-surface); }[data-theme="dark"] .lume-user-link.primary { color:#fff; border-color:#326fe7; background:#245bc6; }[data-theme="dark"] .lume-user-link.danger { color:#ffa69a; border-color:#62353a; background:#3d252b; }
[data-theme="dark"] .lume-session-exit { color:#ffa69a; border-color:#62353a; background:#3d252b; }
[data-theme="dark"] .lume-theme-toggle { color:var(--lume-blue); border-color:var(--lume-border); background:var(--lume-soft); }
[data-theme="dark"] .lume-subscription-banner.trial { color:#f0c06c; border-color:#5a4727; background:#302819; }[data-theme="dark"] .lume-subscription-banner.expired { color:#ffa69a; border-color:#60343a; background:#352328; }

[data-theme="dark"] .auth-shell { background:radial-gradient(circle at 12% 18%,rgba(64,118,225,.17),transparent 34%),radial-gradient(circle at 92% 86%,rgba(37,86,180,.14),transparent 30%),var(--lume-paper); }
[data-theme="dark"] .auth-card { border-color:var(--lume-border); background:var(--lume-surface); box-shadow:0 30px 80px rgba(0,0,0,.38); }
[data-theme="dark"] .auth-form-panel { background:var(--lume-surface); }[data-theme="dark"] .auth-form-heading h2,[data-theme="dark"] .auth-mobile-logo { color:var(--lume-ink); }[data-theme="dark"] .auth-form-heading p,[data-theme="dark"] .auth-register,[data-theme="dark"] .auth-form-options,[data-theme="dark"] .auth-remember { color:var(--lume-muted); }
[data-theme="dark"] .auth-field { color:#c4d2e7; }[data-theme="dark"] .auth-input-wrap input { color:var(--lume-ink); border-color:var(--lume-border); background:#0f1929; }[data-theme="dark"] .auth-input-wrap input:focus { border-color:var(--lume-blue); background:#111d30; box-shadow:0 0 0 4px rgba(126,172,255,.12); }[data-theme="dark"] .auth-input-wrap input::placeholder { color:#71839d; }
[data-theme="dark"] .auth-alert-success { color:#79d8ae; border-color:#285344; background:#17392f; }[data-theme="dark"] .auth-alert-error { color:#ffa69a; border-color:#65363b; background:#3d252b; }

[data-theme="dark"] .account-card,[data-theme="dark"] .account-loading,[data-theme="dark"] .account-message,[data-theme="dark"] .account-button.secondary,[data-theme="dark"] .account-status-icon,[data-theme="dark"] .account-status>strong { color:var(--lume-ink) !important; border-color:var(--lume-border) !important; background:var(--lume-surface) !important; }
[data-theme="dark"] .account-status.trial { color:#f3d084; border-color:#5a4727; background:#302819; }[data-theme="dark"] .account-status.active { border-color:#285344; background:#17392f; }[data-theme="dark"] .account-status.suspended,[data-theme="dark"] .account-status.expired { border-color:#60343a; background:#352328; }
[data-theme="dark"] .account-button.secondary { color:var(--lume-blue) !important; }[data-theme="dark"] .module,[data-theme="dark"] .capacity>div,[data-theme="dark"] .card-icon { background:var(--lume-soft) !important; }[data-theme="dark"] .module>span { background:#254777 !important; }[data-theme="dark"] .account-footer { background:#08101d !important; }

[data-theme="dark"] .admin-create-card,[data-theme="dark"] .admin-list-card,[data-theme="dark"] .admin-stats article,[data-theme="dark"] .password-reset-card,[data-theme="dark"] .delete-account-dialog { color:var(--lume-ink); border-color:var(--lume-border); background:var(--lume-surface); }
[data-theme="dark"] .admin-table th,[data-theme="dark"] .admin-search,[data-theme="dark"] .account-tab,[data-theme="dark"] .admin-form-grid input,[data-theme="dark"] .admin-form-grid select,[data-theme="dark"] .admin-filters select,[data-theme="dark"] .password-reset-actions input,[data-theme="dark"] .trial-duration-fields input { color:var(--lume-ink); border-color:var(--lume-border); background:var(--lume-soft); }
[data-theme="dark"] .admin-table td,[data-theme="dark"] .admin-toolbar,[data-theme="dark"] .admin-form-footer { border-color:var(--lume-border); }[data-theme="dark"] .account-actions button { color:var(--lume-muted); border-color:var(--lume-border); background:var(--lume-soft); }[data-theme="dark"] .admin-text-action { color:var(--lume-muted); }

[data-theme="dark"] .support-new-card,[data-theme="dark"] .support-list-card,[data-theme="dark"] .support-conversation,[data-theme="dark"] .support-ticket-row,[data-theme="dark"] .support-tabs button,[data-theme="dark"] .support-message>div:last-child { color:var(--lume-ink); border-color:var(--lume-border); background:var(--lume-surface); }
[data-theme="dark"] .support-new-card input,[data-theme="dark"] .support-new-card textarea,[data-theme="dark"] .support-reply textarea,[data-theme="dark"] .admin-ticket-tools input,[data-theme="dark"] .admin-ticket-tools select { color:var(--lume-ink); border-color:var(--lume-border); background:#0f1929; }[data-theme="dark"] .support-messages,[data-theme="dark"] .admin-ticket-tools { background:#0f1929; }[data-theme="dark"] .support-conversation>header,[data-theme="dark"] .support-list-header,[data-theme="dark"] .support-reply,[data-theme="dark"] .admin-ticket-tools { border-color:var(--lume-border); }[data-theme="dark"] .support-message.mine>div:last-child { color:#fff; background:#245bc6 !important; }
[data-theme="dark"] .route-access-denied { background:var(--lume-paper); }[data-theme="dark"] .route-access-denied>div { color:var(--lume-ink); border-color:var(--lume-border); background:var(--lume-surface); }

@media(max-width:620px) { .auth-theme-toggle { top:14px; right:14px; min-height:34px; padding:0 10px; font-size:10px; } }
@media(max-width:760px) { .lume-session-exit { padding:0 10px; font-size:0; }.lume-session-exit::first-letter { font-size:15px; } }

/* Identidade visual vermelha exclusiva do autenticador izObras. */
:root {
    --lume-paper: #f8f5f5;
    --lume-surface: #ffffff;
    --lume-ink: #2a1b1d;
    --lume-muted: #756467;
    --lume-blue: #d71920;
    --lume-hero: #b91c1c;
    --lume-border: #eadcdf;
    --lume-soft: #fff1f2;
    --lume-focus: #fca5a5;
    --lume-shadow: rgba(91, 18, 25, .1);
}

.auth-shell {
    background: radial-gradient(circle at 12% 18%, rgba(239, 68, 68, .14), transparent 34%),
                radial-gradient(circle at 92% 86%, rgba(185, 28, 28, .1), transparent 30%),
                var(--lume-paper);
}

.auth-glow-one { background: rgba(248, 113, 113, .14); }
.auth-glow-two { background: rgba(185, 28, 28, .1); }
.auth-card { border-color: rgba(215, 25, 32, .1); box-shadow: 0 30px 80px rgba(91, 18, 25, .15); }
.auth-brand-panel { background: linear-gradient(160deg, rgba(255,255,255,.09), transparent 42%), linear-gradient(145deg, #65131a 0%, #b91c1c 58%, #e52b32 100%); }
.auth-logo-dot { color: #fecdd3; }
.auth-logo-tag, .auth-eyebrow { color: #ffe4e6; }
.auth-feature-list span { color: #fff1f2; }
.auth-input-wrap input:focus { box-shadow: 0 0 0 4px rgba(215, 25, 32, .11); }
.auth-submit { background: linear-gradient(135deg, var(--lume-hero), #e52b32); box-shadow: 0 12px 24px rgba(185, 28, 28, .22); }
.auth-submit:hover { box-shadow: 0 15px 28px rgba(185, 28, 28, .28); }
.auth-theme-toggle { background: rgba(101, 19, 26, .72); }

:root[data-theme="dark"] {
    --lume-paper: #160d0f;
    --lume-surface: #241518;
    --lume-ink: #fff1f2;
    --lume-muted: #d6b8bd;
    --lume-blue: #fb7185;
    --lume-hero: #b91c1c;
    --lume-border: #4d2b31;
    --lume-soft: #3a2025;
    --lume-focus: #fb7185;
    --lume-shadow: rgba(0, 0, 0, .34);
}

[data-theme="dark"] .auth-shell {
    background: radial-gradient(circle at 12% 18%, rgba(190, 24, 93, .17), transparent 34%),
                radial-gradient(circle at 92% 86%, rgba(185, 28, 28, .14), transparent 30%),
                var(--lume-paper);
}

[data-theme="dark"] .auth-input-wrap input:focus { box-shadow: 0 0 0 4px rgba(251, 113, 133, .12); }

