/* Real records are fetched only after authentication. The blurred shell contains static placeholders. */
body:has(.auth-gate:not([hidden])){overflow:hidden}
body:has(.auth-gate:not([hidden])) #workspace{filter:blur(12px) saturate(.64);pointer-events:none;user-select:none;transform:scale(1.018);transform-origin:center;min-height:100vh}
.auth-gate{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;padding:25px;background:rgba(7,17,29,.64);backdrop-filter:blur(2px)}
.auth-gate[hidden]{display:none}
.auth-card{width:min(100%,465px);padding:40px 41px 29px;border:1px solid rgba(210,233,245,.18);border-radius:21px;background:linear-gradient(155deg,#17283c,#101d2d 74%);box-shadow:0 28px 95px rgba(0,0,0,.48);color:#f2f5f9;font-family:inherit}
.auth-brand{display:flex;align-items:center;gap:13px;font-size:22px;letter-spacing:-.5px;font-weight:650}
.auth-brand b{color:#b6d3a5}
.auth-brand small{display:block;letter-spacing:2.1px;font-size:9px;font-weight:600;color:#94a5b4;margin-top:4px}
.auth-mark{display:inline-flex;justify-content:center;align-items:center;background:#d3e8b6;color:#122630;border-radius:13px;height:48px;width:48px;font-weight:800;font-size:27px}
.auth-mark span{font-size:12px;align-self:flex-start;margin-top:11px}
.auth-rule{margin:29px 0 23px;height:1px;background:rgba(255,255,255,.11)}
.auth-lock-icon{font-size:25px;color:#cde2b1;margin-bottom:12px}
.auth-eyebrow{color:#b7d4a0;font-size:10px;font-weight:750;letter-spacing:2px;margin:0 0 9px}
.auth-card h1{font-size:30px;line-height:1.18;letter-spacing:-.9px;margin:0 0 13px;font-weight:700}
.auth-description{font-size:13px;line-height:1.6;color:#b0bfcb;margin:0 0 28px}
#loginForm label{display:block;font-size:11px;letter-spacing:.45px;font-weight:650;color:#dfe6eb;margin-bottom:10px}
.auth-password-wrap{display:flex;align-items:center;border:1px solid #627080;border-radius:9px;background:#17283a;overflow:hidden}
.auth-password-wrap:focus-within{border-color:#cfe9ae;box-shadow:0 0 0 2px rgba(187,221,157,.13)}
.auth-password-wrap input{width:100%;min-width:0;background:transparent;color:#fff;padding:15px 14px;border:0;outline:0;font:inherit;font-size:14px}
.auth-password-wrap button{background:transparent;color:#bcc9d3;border:0;padding:10px 14px;cursor:pointer}
#gateSubmit{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:14px;background:#d1e6b3;color:#152337;border:0;border-radius:9px;padding:14px 16px;font-weight:750;font-size:14px;cursor:pointer}
#gateSubmit:hover{background:#e1f0ca}
#gateSubmit:disabled{opacity:.7;cursor:wait}
#gateError{color:#ffc1c1;font-size:12px;line-height:1.5;margin:10px 0 0;min-height:18px}
.auth-footer{margin-top:21px;color:#8396a6;font-size:9px;letter-spacing:.9px;display:flex;align-items:center;gap:8px}
.auth-pulse{height:7px;width:7px;border-radius:50%;background:#a1d1a0}
.auth-caption{margin:0;color:#c0cbd4;font-size:11px;letter-spacing:.5px}
@media(max-width:490px){.auth-card{padding:27px 23px}.auth-card h1{font-size:27px}}
