html, body {
    background: #f4f8f5;
    color: #18332f;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: 0;
}

a, .btn-link {
    color: #27865d;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.auth-shell{color:#192c25;margin:0 auto;max-width:32rem;padding:1.25rem 1rem 3rem}.auth-header{margin-bottom:2rem}.auth-brand{color:#192c25;font-size:1.45rem;font-weight:850;letter-spacing:-.07em;text-decoration:none}.auth-brand span{color:#147856}.auth-card{background:#fff;border:1px solid #e7ede8;border-radius:1.4rem;box-shadow:0 18px 54px rgba(21,48,35,.065);padding:1.5rem}.auth-kicker{color:#147856;font-size:.72rem;font-weight:800;letter-spacing:.12em;margin:0 0 .5rem;text-transform:uppercase}.auth-card h1{font-size:2rem;letter-spacing:-.055em;line-height:1.1;margin:0}.auth-description{color:#74847b;line-height:1.55;margin:.8rem 0 1.5rem}.auth-form{display:flex;flex-direction:column;gap:.55rem}.auth-form label{font-size:.85rem;font-weight:750;margin-top:.5rem}.auth-form input{background:#f7f8f6;border:1px solid #dce8de;border-radius:.75rem;color:#192c25;font:inherit;min-height:3.1rem;padding:.75rem}.auth-form input:focus{border-color:#147856;box-shadow:0 0 0 3px #eaf8ef;outline:none}.auth-primary,.auth-external a{align-items:center;border-radius:.8rem;display:flex;font-weight:800;justify-content:center;min-height:3.15rem;text-decoration:none}.auth-primary{background:#147856;border:0;color:#fff;cursor:pointer;margin-top:1rem}.auth-primary:hover{background:#0e694a}.auth-forgot{align-self:flex-end;color:#147856;font-size:.82rem;font-weight:700;margin-top:.35rem;text-decoration:none}.auth-divider{align-items:center;color:#74847b;display:flex;font-size:.75rem;gap:.75rem;margin:1.5rem 0}.auth-divider:before,.auth-divider:after{background:#e7ede8;content:"";height:1px;flex:1}.auth-external{display:flex;flex-direction:column;gap:.65rem}.auth-external a{border:1px solid #dce8de;color:#192c25}.auth-footer{color:#74847b;font-size:.88rem;margin:1.5rem 0 0;text-align:center}.auth-footer a{color:#147856;font-weight:800;text-decoration:none}.auth-error,.auth-notice{background:#fff1f0;border:1px solid #ffd6d2;border-radius:.75rem;color:#a6352c;font-size:.88rem;line-height:1.45;margin:1rem 0;padding:.75rem}.auth-notice{background:#eaf8ef;border-color:#d8efe0;color:#286044}@media(min-width:640px){.auth-shell{padding-top:3rem}.auth-card{padding:2rem}}

/* First-run screens follow the approved light premium prototype. */
.first-shell{width:100%;max-width:38rem;margin:0 auto;padding:24px 20px 40px;color:#192c25;min-height:100svh;overflow-wrap:anywhere}
.first-header{display:flex;align-items:center;gap:14px;min-height:38px}.first-header .auth-brand{margin-right:auto}
.first-back{width:38px;height:38px;border:1px solid #E8EEE9;border-radius:12px;background:#fff;display:grid;place-items:center;color:#456454;text-decoration:none;flex:none}
.first-shell svg,.account-area svg{width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.first-language select{background:#fff;border:1px solid #E8EEE9;border-radius:99px;padding:8px;color:#0E694A;font-size:12px;font-weight:750;max-width:80px}
.first-intro{margin:46px 0 24px}.first-intro h1,.first-centered{font-size:clamp(27px,3vw,34px);font-weight:750;letter-spacing:-1px;line-height:1.18;margin:0 0 11px}
.first-intro p,.first-copy{color:#74847B;line-height:1.6;font-size:14px;margin:0}.first-centered{text-align:center}.first-copy{max-width:29rem;margin:0 auto 26px}
.first-panel{background:#FFFFFF;border:1px solid #E8EEE9;border-radius:21px;padding:19px;box-shadow:0 7px 25px rgba(26,57,35,.025);margin-bottom:4px;min-width:0}
.first-fields{display:flex;flex-direction:column;gap:16px}.first-fields [hidden]{display:none!important}
.first-shell label,.first-panel label{display:flex;flex-direction:column;gap:8px;color:#53685b;font-size:12px;font-weight:730;min-width:0}
.first-shell input,.first-shell select{font:inherit;background:#fbfcfb;border:1px solid #dce6de;border-radius:12px;color:#192C25;min-height:47px;padding:11px 12px;font-size:14px;width:100%;min-width:0}
.first-shell input:focus,.first-shell select:focus{border-color:#81c8a0;box-shadow:0 0 0 3px #e0f4e8;outline:none}
.first-shell .first-language select{min-height:36px;padding:8px;font-size:12px;border-radius:99px}
.first-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.first-moneyrow{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px}
.first-shell .auth-primary{padding:14px 18px;gap:10px;width:100%;margin-top:8px;min-height:52px;font-size:14px}.first-shell .auth-primary:hover{color:#fff}
.first-ghost,.first-outline{border:0;min-height:48px;border-radius:14px;padding:12px 16px;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;color:#147856;text-decoration:none;width:100%}
.first-outline{background:#fff;border:1px solid #dce7de}.first-outline:hover{color:#0E694A;background:#EAF8EF}
.first-hint{font-size:12px;color:#74847B;line-height:1.6;margin:12px 0}.first-hint a{color:#147856}
.first-illustration{width:78px;height:78px;background:#EAF8EF;border-radius:24px;display:grid;place-items:center;color:#147856;margin:55px auto 22px}.first-illustration svg{width:28px;height:28px}
.first-checklist{display:flex;flex-direction:column;gap:12px;margin:28px 0}.first-checkitem{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #E8EEE9;padding:15px;border-radius:15px;min-width:0;color:#192C25;text-decoration:none}
.first-checkitem>div{min-width:0;flex:1}.first-checkitem strong{display:block;font-size:14px}.first-checkitem small{display:block;font-size:12px;color:#74847B;margin-top:4px}.first-checkitem>svg{margin-left:auto;color:#147856}
.first-tile{width:45px;height:45px;border-radius:14px;background:#EAF8EF;color:#147856;display:grid;place-items:center;flex:none}.first-checkitem .first-tile{width:37px;height:37px;border-radius:11px}
.first-stephead{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:10px;font-size:11px;color:#6a8776;font-weight:750;letter-spacing:.1em}.first-stephead .first-ghost{width:auto;font-size:12px;padding:8px}
.first-progress{display:flex;gap:5px;margin:5px 0 32px}.first-progress span{height:5px;background:#dfe8e1;border-radius:5px;flex:1}.first-progress .done{background:#1a9166}.first-stepintro{margin-top:0}.first-stepintro .first-tile{margin-bottom:18px}
.first-helper{display:flex;gap:10px;align-items:flex-start;background:#edf7f0;color:#537866;border-radius:13px;padding:12px 14px;font-size:12px;line-height:1.5;margin:0}
.first-chips{display:flex;gap:8px;flex-wrap:wrap}.first-chips button{background:#fff;border:1px solid #e0e9e2;border-radius:99px;color:#587a65;padding:8px 12px;font-size:12px}
.first-saved{display:flex;flex-direction:column;gap:10px}.first-actions{display:flex;flex-direction:column;gap:10px;margin-top:26px}
.account-area{max-width:48rem;margin:auto;padding:24px 16px}.account-area .developer-tools{margin-top:32px;border-top:3px solid #E8EEE9}.developer-tools h2{font-size:18px}.account-area .first-outline{margin-top:10px}
.first-shell button:disabled{opacity:.55;cursor:wait}.first-shell button:focus-visible,.first-shell a:focus-visible{outline:3px solid #91d9b7;outline-offset:3px}
@media(min-width:768px){.first-shell{padding:42px 32px 64px;max-width:42rem}.first-panel{padding:26px}.first-intro{margin-top:55px}.first-illustration{margin-top:60px}.first-actions{margin-top:36px}}
@media(max-width:370px){.first-shell{padding-left:16px;padding-right:16px}.first-panel{padding:16px}.first-pair{grid-template-columns:1fr}.first-moneyrow{grid-template-columns:minmax(0,1fr) 94px}.first-intro{margin-top:32px}}


/* Lunar Dashboard is opt-in; financial accents never select the day/night sky. */
.lunar-scope,.lunar-layout { --lunar-page-background:radial-gradient(ellipse at 20% 0%,#252b55 0%,transparent 50%),linear-gradient(165deg,#141d3d,#11152f 55%,#070d20); }
.lunar-layout:has(.today-shell[data-environment="day"]),.lunar-scope[data-environment="day"],.lunar-scope[data-environment="day"] .lunar-layout { --lunar-page-background:radial-gradient(ellipse at 20% 0%,#e5faff 0%,transparent 55%),linear-gradient(155deg,#c3dceb,#dce7f2 55%,#adc4dd); }
.lunar-theme {
    --lunar-text:#eef6ff; --lunar-muted:#b3c2dc; --lunar-line:#a3c4ee30;
    --lunar-panel:rgba(23,32,66,.78); --lunar-hero:linear-gradient(165deg,rgba(34,43,83,.9),rgba(13,24,52,.9));
    --lunar-accent:#91dfec; --lunar-accent-ink:#031d30; --lunar-glow-alpha:.25;
    --lunar-moon-bright:#fffefa; --lunar-moon-mid:#e9edf3; --lunar-moon-dark:#a3b6cd;
    --lunar-illumination:1; --lunar-shadow-strength:.08;
    --lunar-terrain:#080f2d; --lunar-radius:24px;
    color:var(--lunar-text); color-scheme:dark;
    font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
    font-synthesis:none; -webkit-font-smoothing:antialiased;
}
.lunar-theme[data-environment="day"] {
    --lunar-text:#152b48; --lunar-muted:#425b78; --lunar-line:#3d628b35;
    --lunar-panel:rgba(249,253,255,.58); --lunar-hero:linear-gradient(165deg,rgba(242,252,255,.85),rgba(208,229,246,.7));
    --lunar-accent:#256276; --lunar-accent-ink:#fff; --lunar-terrain:#8faccc;
    --lunar-moon-bright:#fffef8; --lunar-moon-mid:#edf2f7; --lunar-moon-dark:#acbed2;
    color-scheme:light;
}
.lunar-theme[data-mood="healthy"] { --lunar-glow-alpha:.26; --lunar-illumination:1; --lunar-shadow-strength:.08; }
.lunar-theme[data-mood="caution"] { --lunar-accent:#e9d3a2; --lunar-glow-alpha:.22; --lunar-illumination:.96; --lunar-shadow-strength:.22; }
.lunar-theme[data-mood="risk"] { --lunar-accent:#f3bb93; --lunar-glow-alpha:.17; --lunar-illumination:.86; --lunar-shadow-strength:.46; }
.lunar-theme[data-mood="critical"] { --lunar-accent:#f2b1be; --lunar-glow-alpha:.13; --lunar-illumination:.76; --lunar-shadow-strength:.66; }
.lunar-theme[data-mood="unknown"] { --lunar-accent:#b4c5e2; --lunar-glow-alpha:.18; --lunar-illumination:.91; --lunar-shadow-strength:.27; }
.lunar-theme[data-environment="day"][data-mood="caution"] { --lunar-accent:#76581a; }
.lunar-theme[data-environment="day"][data-mood="risk"] { --lunar-accent:#884917; }
.lunar-theme[data-environment="day"][data-mood="critical"] { --lunar-accent:#923d58; }
.lunar-theme[data-environment="day"][data-mood="unknown"] { --lunar-accent:#4d6480; }
.lunar-theme *, .lunar-theme *::before, .lunar-theme *::after { box-sizing:border-box; }
.lunar-theme :is(a,button,select,summary):focus-visible { outline:3px solid var(--lunar-accent); outline-offset:4px; }


/* Shared UI surfaces; real data and form handlers stay in the existing pages. */
.lunar-page { width:100%; max-width:1040px; margin:0 auto; padding:28px 24px 40px; color:var(--lunar-text); overflow-wrap:anywhere; }
.lunar-page :is(.row,.col,.card,.card-body,.list-group-item) { min-width:0; }
.lunar-page :is(h2,h3) { color:var(--lunar-text); font-weight:600; letter-spacing:-.025em; }
.lunar-page h2 { font-size:1.125rem; }
.lunar-page a { color:var(--lunar-accent); }
.lunar-page :is(.text-muted,.form-label,small) { color:var(--lunar-muted)!important; }
.lunar-page :is(.card,.list-group-item) { border:1px solid var(--lunar-line); background:var(--lunar-panel); color:var(--lunar-text); border-radius:24px; box-shadow:0 10px 32px #02091c14; }
.lunar-page .card-body { padding:22px; }
.lunar-page .list-group { gap:12px; }
.lunar-page .list-group-item { padding:18px; flex-wrap:wrap; gap:14px; }
.lunar-page .list-group-item>div { min-width:0; max-width:100%; }
.lunar-page .list-group-item .d-flex { flex-wrap:wrap; }
.lunar-page :is(strong,dd,.display-6,.fs-4) { font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.lunar-page .display-6 { font-size:clamp(1.4rem,4vw,2.1rem); }
.lunar-page .row { --bs-gutter-x:1rem; --bs-gutter-y:1rem; }
.lunar-page :is(.form-control,.form-select) { min-width:0; min-height:46px; width:100%; border:1px solid var(--lunar-line); border-radius:13px; background:var(--lunar-panel); color:var(--lunar-text); font-size:.875rem; padding:11px 13px; }
.lunar-page :is(.form-control,.form-select)::placeholder { color:var(--lunar-muted); opacity:.75; }
.lunar-page :is(.form-control,.form-select):focus { background:var(--lunar-panel); border-color:var(--lunar-accent); color:var(--lunar-text); box-shadow:0 0 0 3px color-mix(in srgb,var(--lunar-accent) 15%,transparent); }
.lunar-page .form-label { font-size:.8125rem; margin-bottom:8px; }
.lunar-page .btn { min-height:44px; padding:11px 16px; border-radius:13px; font-size:.8125rem; font-weight:600; white-space:normal; }
.lunar-page .btn-primary { color:var(--lunar-accent-ink); background:var(--lunar-accent); border-color:var(--lunar-accent); }
.lunar-page .btn-outline-danger { color:var(--lunar-danger,#f2b1be); border-color:color-mix(in srgb,var(--lunar-danger,#f2b1be) 45%,transparent); background:transparent; }
.lunar-page .btn-outline-danger:hover { background:color-mix(in srgb,var(--lunar-danger,#f2b1be) 12%,transparent); }
.lunar-page :is(.text-danger,.validation-message) { color:var(--lunar-danger,#f2b1be)!important; }
.lunar-page .validation-summary-errors { color:var(--lunar-danger,#f2b1be); }
.lunar-page .alert-warning { background:color-mix(in srgb,var(--lunar-warning,#e9d3a2) 10%,transparent); border:1px solid color-mix(in srgb,var(--lunar-warning,#e9d3a2) 35%,transparent); color:var(--lunar-warning,#e9d3a2); border-radius:16px; }
.lunar-page .input-group { gap:10px; flex-wrap:wrap; }
.lunar-page .input-group>.form-control { flex:1 1 180px; }
.lunar-page .input-group>.btn { border-radius:13px!important; }
.lunar-scope { --lunar-danger:#f2b1be; --lunar-warning:#e9d3a2; }
.lunar-scope[data-environment="day"] { --lunar-danger:#923d58; --lunar-warning:#76581a; }
.lunar-page :is(.btn,input,select,a,summary):focus-visible { outline:3px solid var(--lunar-accent); outline-offset:3px; }
.lunar-page input[type=number] { font-variant-numeric:tabular-nums; }
.lunar-page .lunar-stat strong { display:block; font-size:clamp(1.3rem,3vw,1.75rem); font-weight:600; margin-top:12px; }
.lunar-page .lunar-stat small { font-size:.8125rem; }
@media(max-width:767px) { .lunar-page { padding:24px max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)); }.lunar-page .card-body { padding:18px; } }
@media(max-width:360px) { .lunar-page { padding-left:max(14px,env(safe-area-inset-left)); padding-right:max(14px,env(safe-area-inset-right)); } }
.lunar-empty { border:1px dashed var(--lunar-line); border-radius:20px; padding:22px; color:var(--lunar-muted); font-size:.875rem; line-height:1.6; }
.lunar-page .cashflow-timeline { display:grid; gap:0; }
.lunar-page .timeline-event { position:relative; display:flex; align-items:flex-start; gap:14px; padding:4px 0 24px; }
.lunar-page .timeline-event:not(:last-child)::after { content:""; width:1px; background:var(--lunar-line); position:absolute; top:14px; bottom:0; left:5px; }
.lunar-page .timeline-dot { width:11px; height:11px; flex:none; border:2px solid var(--lunar-accent); border-radius:50%; margin-top:5px; background:var(--lunar-panel); }
.lunar-page .timeline-event.positive .timeline-dot { background:var(--lunar-accent); }
.lunar-page .timeline-event>div { min-width:0; }
.lunar-page .timeline-event strong { display:block; color:var(--lunar-text); font-size:.875rem; font-weight:600; }
.lunar-page .timeline-event small { display:block; font-size:.8125rem; margin-top:7px; }
.lunar-property-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:16px; }
.lunar-property-card { gap:20px; }
.lunar-property-link { display:flex; align-items:center; gap:12px; text-decoration:none; }
.lunar-property-link strong { min-width:0; flex:1; font-size:1rem; color:var(--lunar-text); }
.lunar-link-icon { width:38px; height:38px; flex:none; display:grid; place-items:center; border-radius:13px; background:color-mix(in srgb,var(--lunar-accent) 9%,transparent); color:var(--lunar-accent); }
.lunar-page svg { width:20px; height:20px; flex:none; }
.lunar-backlink { display:inline-flex; align-items:center; gap:8px; font-size:.8125rem; text-decoration:none; min-height:40px; margin-bottom:14px; }
.lunar-page .lunar-meter-row { display:flex; flex-direction:row; align-items:center; gap:14px; margin-bottom:12px; text-decoration:none; }
.lunar-meter-row>div { flex:1; min-width:0; }
.lunar-meter-row p { color:var(--lunar-muted); font-size:.8125rem; margin:7px 0 0; }
.lunar-page .lunar-result { border-color:color-mix(in srgb,var(--lunar-accent) 35%,transparent); }
.lunar-result .fs-4 { color:var(--lunar-accent); font-size:1.8rem!important; font-weight:600; }
.lunar-result dl { margin:0; }
.lunar-result dt,.lunar-result dd { padding-top:12px; padding-bottom:12px; margin:0; border-bottom:1px solid var(--lunar-line); font-size:.875rem; }
.lunar-result dt { color:var(--lunar-muted); font-weight:400; }
.lunar-result dd { color:var(--lunar-text); font-weight:600; }
@media(max-width:575px) { .lunar-result dt { padding-bottom:4px; border:0; }.lunar-result dd { padding-top:0; } }
.lunar-page .first-panel { background:var(--lunar-panel); color:var(--lunar-text); border-color:var(--lunar-line); }
.lunar-page .first-panel p { color:var(--lunar-muted); }
.lunar-page .first-outline { color:var(--lunar-accent); border-color:var(--lunar-line); background:transparent; }
.lunar-page .first-ghost { color:var(--lunar-muted); }
.lunar-page .first-checkitem { background:var(--lunar-panel); color:var(--lunar-text); border-color:var(--lunar-line); }
.lunar-more-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.lunar-more-grid .first-checkitem { font-size:.875rem; }
@media(max-width:575px) { .lunar-more-grid { grid-template-columns:1fr; } }

/* Profile, authentication and first-run forms share the existing Lunar tokens. */
.lunar-scope :is(.first-shell,.auth-shell,.account-area) { color:var(--lunar-text); }
.lunar-scope :is(.auth-brand,.auth-card h1,.first-intro h1,.first-centered) { color:var(--lunar-text); }
.lunar-scope .auth-brand span { color:var(--lunar-accent); }
.lunar-scope :is(.first-panel,.auth-card,.first-checkitem) { background:var(--lunar-panel); color:var(--lunar-text); border-color:var(--lunar-line); box-shadow:0 12px 32px #02091c14; }
.lunar-scope :is(.first-intro p,.first-copy,.first-hint,.first-stephead,.auth-description,.auth-footer,.first-checkitem small,.auth-divider) { color:var(--lunar-muted); }
.lunar-scope :is(.first-shell label,.first-panel label,.auth-form label) { color:var(--lunar-muted); font-size:.8125rem; font-weight:500; }
.lunar-scope :is(.first-shell input,.first-shell select,.auth-form input) { background:var(--lunar-panel); border-color:var(--lunar-line); color:var(--lunar-text); border-radius:13px; font-size:.875rem; }
.lunar-scope :is(.first-shell input,.first-shell select,.auth-form input):focus { border-color:var(--lunar-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--lunar-accent) 15%,transparent); }
.lunar-scope :is(.first-back,.first-outline,.auth-external a,.first-chips button) { border-color:var(--lunar-line); background:var(--lunar-panel); color:var(--lunar-accent); }
.lunar-scope :is(.first-ghost,.auth-kicker,.auth-forgot,.auth-footer a,.first-hint a,.first-shell>a) { color:var(--lunar-accent); }
.lunar-scope :is(.first-outline,.first-ghost,.first-checkitem,.auth-external a):hover { background:color-mix(in srgb,var(--lunar-accent) 8%,var(--lunar-panel)); color:var(--lunar-text); }
.lunar-scope .auth-primary { background:var(--lunar-accent); color:var(--lunar-accent-ink); border:1px solid var(--lunar-accent); font-weight:650; }
.lunar-scope .auth-primary:hover { background:var(--lunar-accent); color:var(--lunar-accent-ink); filter:brightness(1.08); }
.lunar-scope :is(.first-tile,.first-illustration,.first-helper) { background:color-mix(in srgb,var(--lunar-accent) 10%,transparent); color:var(--lunar-accent); }
.lunar-scope .first-progress span { background:var(--lunar-line); }
.lunar-scope .first-progress .done { background:var(--lunar-accent); }
.lunar-scope .auth-divider::before,.lunar-scope .auth-divider::after { background:var(--lunar-line); }
.lunar-scope .auth-error { color:var(--lunar-danger); border-color:color-mix(in srgb,var(--lunar-danger) 35%,transparent); background:color-mix(in srgb,var(--lunar-danger) 8%,transparent); }
.lunar-scope .auth-notice { color:var(--lunar-accent); border-color:var(--lunar-line); background:color-mix(in srgb,var(--lunar-accent) 8%,transparent); }
.lunar-scope .first-shell :is(.first-pair,.first-moneyrow)>* { min-width:0; }
.lunar-scope .first-checkitem { flex-wrap:wrap; }
.lunar-scope .first-checkitem>svg { color:var(--lunar-accent); }
.lunar-scope .account-area .developer-tools { border-color:var(--lunar-line); }
.lunar-scope .first-shell :is(input,select,button,a):focus-visible { outline:3px solid var(--lunar-accent); outline-offset:3px; }
/* The existing server-rendered development outbox has no interactive Layout. */
body:has(>.first-shell):not(:has(.lunar-scope)) { background:#11152f; color:#eef6ff; }
body>.first-shell { color:#eef6ff; }
body>.first-shell :is(.first-panel,.first-checkitem) { background:#172042; border-color:#a3c4ee30; color:#eef6ff; }
body>.first-shell a { color:#91dfec; }
