:root{--lui-deep:#0b1f35;--lui-navy:#102a43;--lui-action:#195e9b;--lui-accent:#215b92;--lui-ink:#182e45;--lui-muted:#5a7189;--lui-canvas:#f1f5fb;--lui-surface:#ffffff;--lui-tint:#e7f0fa;--lui-border:#d6e2f0;--lui-focus:#e2a64d;--lui-success:#187a61;--lui-warning:#a56919;--lui-danger:#b93f46;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;color:var(--lui-ink);background:var(--lui-canvas);font-synthesis:none}
*{box-sizing:border-box}
body.lumarini-auth-page{margin:0;min-height:100vh;min-height:100svh;background:linear-gradient(135deg,var(--lui-tint),var(--lui-canvas))}
.auth-shell{min-height:100svh;max-width:520px;margin:auto;padding:clamp(28px,7vh,74px) max(18px,env(safe-area-inset-right)) 30px;display:flex;flex-direction:column;justify-content:center}
.auth-brand{display:flex;align-items:center;gap:12px;color:var(--lui-navy);letter-spacing:1.2px;font-size:20px;font-weight:850;margin-bottom:28px}
.auth-brand small{display:block;font-size:11px;letter-spacing:1.4px;font-weight:650;color:var(--lui-muted);margin-top:3px}
.auth-brand-icon{display:grid;place-items:center;background:var(--lui-navy);color:#fff;width:44px;height:44px;border-radius:12px}
.auth-wordmark{font-weight:500}.auth-wordmark b{font-weight:850}
.auth-panel{background:#fff;border:1px solid var(--lui-border);border-radius:18px;padding:clamp(20px,5vw,36px);box-shadow:0 16px 38px rgba(16,42,67,.09)}
.auth-eyebrow{margin:0 0 8px;color:var(--lui-action);font-size:11px;letter-spacing:1.3px;text-transform:uppercase;font-weight:850}
.auth-panel h1{font-size:clamp(27px,7vw,35px);margin:0 0 8px;letter-spacing:-.8px}
.auth-description{font-size:14px;line-height:1.6;color:var(--lui-muted);margin:0 0 26px}
.auth-field{margin:0 0 18px}
.auth-field label{display:block;font-size:13px;font-weight:700;margin:0 0 7px}
.auth-field input{display:block;width:100%;min-height:48px;border:1px solid #b9cde1;background:#fff;border-radius:10px;padding:12px 13px;color:var(--lui-ink);font:inherit;font-size:16px}
.auth-field input:focus{outline:3px solid rgba(25,94,155,.22);border-color:var(--lui-action)}
.auth-field input[aria-invalid="true"]{border-color:#b94343}
.auth-primary{display:block;width:100%;min-height:50px;border:0;border-radius:10px;background:var(--lui-action);color:#fff;font:inherit;font-size:15px;font-weight:750;cursor:pointer}
.auth-primary:disabled{opacity:.65;cursor:progress}
.auth-primary:focus-visible,.auth-secondary:focus-visible{outline:3px solid var(--lui-focus);outline-offset:3px}
.auth-message{font-size:13px;line-height:1.5;min-height:20px;margin:15px 0 0;color:#9e332b}
.auth-message[data-state="info"]{color:var(--lui-action)}
.auth-footnote{text-align:center;color:var(--lui-muted);font-size:12px;line-height:1.6;margin:24px 12px 0}
.lumarini-admin-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin:12px 0;padding:12px;border:1px solid var(--lui-border);border-radius:12px;background:var(--lui-tint)}
.lumarini-admin-actions button{min-height:44px;padding:10px 14px;line-height:1.35;font:inherit;font-size:13px;font-weight:750;border-radius:9px;cursor:pointer}
.lumarini-admin-actions .auth-secondary{background:#fff;color:#173c63;border:1px solid #b9cde1}
.lumarini-admin-actions .auth-danger{background:#fff;color:#9c3535;border:1px solid #d9b0b0}
.lumarini-admin-actions button:disabled{opacity:.6;cursor:progress}
#lumarini-logout-status{flex-basis:100%;font-size:12px;color:var(--lui-muted);min-height:1.3em}
@media(max-width:480px){.auth-shell{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.lumarini-admin-actions{justify-content:stretch}.lumarini-admin-actions button{flex:1 1 100%}}
