:root{color-scheme:dark;font:15px/1.6 system-ui,sans-serif;background:#0c111c;color:#e9eef9;--muted:#93a4be;--line:#253047;--accent:#83aaff}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}header{max-width:1440px;margin:auto;padding:24px 36px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}a{color:var(--accent);text-decoration:none}.brand{font-weight:900;font-size:26px;color:white}.brand span{font-size:15px;letter-spacing:.22em;margin-left:10px}nav{display:flex;gap:24px;flex:1}nav a{font-size:14px}button,input,select{font:inherit;border:1px solid var(--line);border-radius:10px;padding:10px 16px;background:#151e2f;color:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:hover:enabled{border-color:var(--accent)}input:focus,button:focus-visible,select:focus{outline:2px solid var(--accent);outline-offset:3px}.primary{background:#3264d6;border-color:#3264d6;width:100%;font-weight:650}.eyebrow{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.22em}main{max-width:1368px;margin:auto;padding:32px}.login{min-height:70vh;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:80px}.login h1{font-size:clamp(35px,4vw,60px);line-height:1.15;letter-spacing:-.045em}.login h1 span{color:var(--accent)}.login-card{padding:40px;border:1px solid var(--line);border-radius:20px;background:#111a2a}.login-card h2{font-size:28px;margin:0 0 16px}.login-card p{color:var(--muted)}[role=alert]{color:#ffada9!important;min-height:24px}.title-row{display:flex;justify-content:space-between;align-items:center}h1{font-size:36px;line-height:1.2;margin:8px 0 20px}.title-row button{height:46px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.stat{padding:20px;border:1px solid var(--line);border-radius:12px}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font-size:28px;margin-top:8px}.filters{display:flex;gap:12px;margin:24px 0}.filters input{flex:1;min-width:150px}#status{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.card{border:1px solid var(--line);border-radius:14px;padding:24px;background:#111827;overflow-wrap:anywhere}.card h2{font-size:18px;margin:0 0 12px}.card p.text{white-space:pre-wrap}.meta{font-size:12px;color:var(--muted)}.badge{font-size:11px;color:#a9c2ff;background:#1b3057;border-radius:5px;padding:3px 7px;margin-left:8px}.card img,.card video{max-width:100%;max-height:450px;display:block;margin:16px 0}.files{padding-left:20px}.files li{margin:10px 0}.files button{font-size:12px;padding:6px 10px;margin-right:10px}.card-error{color:#ffada9}.empty{border:1px dashed var(--line);padding:40px;text-align:center;grid-column:1/-1;color:var(--muted)}#pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin:24px 0}.charts{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:20px 0}.bar{display:grid;grid-template-columns:110px 1fr 40px;gap:10px;font-size:12px;align-items:center;margin:7px 0}.bar meter{width:100%;height:15px}summary{cursor:pointer;color:var(--accent)}@media(max-width:760px){header{padding:16px;gap:16px;flex-wrap:wrap}nav{gap:16px}.brand{font-size:22px}main{padding:20px}.login{grid-template-columns:1fr;gap:24px;min-height:auto}.login-card{padding:24px}.login h1{font-size:40px}.stats{grid-template-columns:1fr 1fr}.filters{flex-wrap:wrap}.filters input{width:100%;flex-basis:100%}.grid,.charts{grid-template-columns:1fr}.card{padding:18px}h1{font-size:30px}}
/* Keep the public login layout consistent with the existing Argus site. */
.login-view{background:#f7f9fc;color:#10203e;color-scheme:light}
.login-view header{position:absolute;z-index:1;top:30px;left:3%;padding:0;border:0}
.login-view header nav,.login-view header #logout{display:none}
.login-view main{max-width:none;margin:0;padding:0}
.login-view .login{min-height:100svh;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.login-intro{display:flex;flex-direction:column;justify-content:center;padding:150px 6% 100px;background:radial-gradient(ellipse at 0 100%,#194a98 0,transparent 65%),#0c1730;color:#fff}
.login-intro .eyebrow{margin-bottom:26px}
.login-view .login h1{font-size:clamp(34px,3.6vw,60px);font-weight:650;line-height:1.17;letter-spacing:-.035em}
.login-view .login-card{align-self:center;width:100%;max-width:480px;justify-self:center;background:none;border:0;border-radius:0;padding:40px}
.login-view .login-card h2{font-size:34px;color:#10203e}
.login-view .login-card>p{color:#65738b;font-size:14px}
.login-view .primary{background:white;border:1px solid #ccd6e6;color:#173358;min-height:52px;margin-top:12px}
.login-view .primary:hover:enabled{background:#edf3ff;border-color:#688bd1}
.login-view .primary:disabled{cursor:not-allowed}
.login-view #login-error{color:#a22d33!important;font-size:13px;line-height:1.5}
.login-permissions{font-size:12px;line-height:1.5;color:#65738b}
.login-permissions summary{color:#65738b}
@media(max-width:760px){.login-view header{top:24px;left:24px}.login-view .login{grid-template-columns:1fr}.login-intro{min-height:38svh;padding:110px 24px 32px}.login-view .login h1{font-size:36px}.login-intro .eyebrow{margin-bottom:14px}.login-view .login-card{padding:40px 24px;align-self:start}.login-view .login-card h2{font-size:30px}}
