:root{font-family:'DM Sans',sans-serif;color:#f0f1e9;background:#111310;--panel:#1b1e19;--line:#30352e;--muted:#9b9f95;--lime:#d9f477;--orange:#ff9d77;--display:'Space Grotesk',sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 75% 0%,#242a1c,transparent 48%),#111310}button,input,select,textarea{font:inherit}.topbar{height:68px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:#111310e8;backdrop-filter:blur(10px);z-index:3}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:#f4f5ed;font:700 18px var(--display)}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--lime);color:#14170f;font-size:20px}.brand-lite{color:var(--muted);font-weight:500}.header-actions{display:flex;align-items:center;gap:14px}#session-status,footer,.eyebrow,.mono,th{font:10px var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.app-root{max-width:1480px;margin:0 auto;padding:34px 5vw 60px}.button{border:1px solid #444a3e;border-radius:9px;background:#252920;color:#eff1e9;padding:10px 14px;font-size:12px;font-weight:600;cursor:pointer}.button:hover{border-color:#879267}.button.primary{background:var(--lime);border-color:var(--lime);color:#171a12}.button.quiet{background:transparent;color:var(--muted)}.button.danger{color:#ffc3ad;border-color:#724d3c}.hidden{display:none!important}.panel,.section{border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#1d211b,#171a16);overflow:hidden}.login-layout{min-height:68vh;display:grid;grid-template-columns:1fr minmax(300px,440px);align-items:center;gap:7vw}.login-copy{max-width:650px}.eyebrow{color:var(--lime);margin-bottom:17px}.login-copy h1{font:600 clamp(40px,5vw,70px)/1.02 var(--display);letter-spacing:-.055em;margin:0 0 20px}.login-copy h1 em{font-style:normal;color:var(--lime)}p{line-height:1.6}.muted,.login-copy p{color:var(--muted)}.login-panel{padding:28px}.login-panel h2{font:600 25px var(--display);margin:12px 0}.form{display:grid;gap:15px;margin-top:23px}.form label{display:grid;gap:7px;color:#c3c8bd;font-size:12px}.form input,.form textarea,.form select,.search{width:100%;border:1px solid #3b4036;background:#10120f;color:#f4f5ed;padding:12px;border-radius:9px;outline:none}.form input:focus,.search:focus{border-color:var(--lime);box-shadow:0 0 0 3px #d9f47718}.message{font-size:12px;color:var(--orange);margin-top:12px;overflow-wrap:anywhere}.message.ok{color:var(--lime)}.mfa-box{margin:18px 0;padding:14px;background:#11140f;border:1px solid var(--line);border-radius:10px;overflow-wrap:anywhere}.mfa-box img{max-width:100%;background:white;padding:7px;border-radius:5px}.secret{font:12px var(--mono);color:var(--lime);word-break:break-all}.layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}.sidebar{position:sticky;top:92px;align-self:start;display:grid;gap:5px}.nav-label{font:10px var(--mono);letter-spacing:.1em;color:#73796c;padding:8px 12px}.nav-btn{border:1px solid transparent;border-radius:9px;background:transparent;color:#abb1a4;text-align:left;padding:12px;font-size:12px;cursor:pointer}.nav-btn:hover{background:#20241e}.nav-btn.active{border-color:#3e4930;background:#282e20;color:var(--lime)}.nav-icon{display:inline-block;width:25px}.content{min-width:0}.page-head{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:24px}.page-head h1{font:600 clamp(30px,3vw,44px)/1.05 var(--display);letter-spacing:-.05em;margin:0 0 10px}.page-head p{color:var(--muted);font-size:13px;margin:0;max-width:700px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat{border:1px solid var(--line);border-radius:13px;background:#1a1d18;padding:17px}.stat-label{font:10px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.stat-value{font:600 30px var(--display);margin-top:12px}.section{margin:14px 0}.section-head{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center}.section-head h2{font:600 17px var(--display);margin:0 0 4px}.section-head p{font-size:11px;color:var(--muted);margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:650px;font-size:12px}th,td{text-align:left;vertical-align:top;padding:13px 15px;border-bottom:1px solid #2a2e27}th{background:#171a16}td{color:#cbd0c4}td strong{color:#f3f4ed}tr:last-child td{border-bottom:0}.sub{display:block;color:var(--muted);font:10px var(--mono);margin-top:5px;overflow-wrap:anywhere}.pill{display:inline-block;padding:4px 7px;border-radius:30px;background:#28301f;color:var(--lime);font:10px var(--mono);text-transform:uppercase}.pill.warn{background:#362b1d;color:#f0c985}.pill.danger{background:#3b231b;color:#ffb39a}.pill.muted-pill{background:#2a2d27;color:#b2b7ac}.empty{padding:28px;text-align:center;color:var(--muted);font-size:12px}.callout{background:#252b1d;border:1px solid #48513a;color:#cddaac;border-radius:10px;padding:13px 15px;font-size:12px;line-height:1.6;margin:14px 0}.flag-row{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:18px;border-bottom:1px solid var(--line)}.flag-row:last-child{border-bottom:0}.flag-row small{display:block;color:var(--muted);margin-top:5px}.flag-row input{accent-color:var(--lime);width:18px;height:18px}.toast-area{position:fixed;bottom:18px;right:18px;display:grid;gap:8px;z-index:9}.toast{max-width:min(420px,90vw);padding:12px 15px;border:1px solid #596745;border-radius:9px;background:#293223;color:#e4f5b2;font-size:12px;box-shadow:0 8px 28px #0005}.toast.error{background:#39241d;border-color:#83503d;color:#ffd1bf}footer{text-align:center;padding:24px;color:#666d60;font-size:9px}
@media(max-width:900px){.login-layout{grid-template-columns:1fr;gap:22px;padding:30px 0}.login-copy h1{font-size:48px}.layout{grid-template-columns:1fr;gap:16px}.sidebar{position:static;display:flex;overflow:auto;padding-bottom:5px}.nav-label{display:none}.nav-btn{white-space:nowrap;padding:10px}.nav-icon{width:auto;margin-right:6px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{flex-direction:column}}@media(max-width:520px){.topbar{padding:0 17px}.app-root{padding:24px 17px 40px}.header-actions #session-status{display:none}.login-panel{padding:20px}.stat{padding:12px}.stat-value{font-size:25px}.section-head{padding:14px}}

/* Analytics and case-management controls */
.button-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chart-bars{display:flex;gap:8px;align-items:flex-end;min-height:180px;padding:16px 6px 4px;overflow-x:auto;border-bottom:1px solid #34382d}
.chart-col{display:flex;flex:1 0 24px;min-width:24px;height:160px;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}
.chart-bar{width:min(24px,80%);min-height:3px;border-radius:5px 5px 0 0;background:#d4f36b}
.chart-col small{font-size:9px;color:#8f9785;white-space:nowrap}

/* Accessible announcement composer */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 0}
.form-grid label{display:flex;flex-direction:column;gap:7px;color:var(--muted,#a6ad9b);font-size:13px}
.form-grid .wide{grid-column:1/-1}
.form-grid .input{width:100%;min-width:0}
.form-grid textarea{resize:vertical;min-height:100px}
@media(max-width:720px){.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .wide{grid-column:auto}}

/* Consistent controls for admin tools, including filters and composers */
.input{
  display:block;
  width:100%;
  min-width:0;
  min-height:42px;
  padding:10px 12px;
  border:1px solid #3b4036;
  border-radius:9px;
  background:#10120f;
  color:#f4f5ed;
  font-size:13px;
  line-height:1.4;
  outline:none;
  color-scheme:dark;
}
.input::placeholder{color:#747b6d;opacity:1}
.input:focus{border-color:var(--lime);box-shadow:0 0 0 3px #d9f47718}
.input:disabled{opacity:.55;cursor:not-allowed}
select.input{appearance:auto;cursor:pointer}
textarea.input{resize:vertical;min-height:100px}
input[type="checkbox"]{accent-color:var(--lime)}
.button:focus-visible,.nav-btn:focus-visible,.input:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.button-row .input{flex:1 1 260px;width:auto}
.empty{padding:30px 20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.6}
.callout{margin:0 0 14px;padding:14px 16px;border:1px solid #3e4930;border-radius:11px;background:#20251a;color:#dce6c8;font-size:12px;line-height:1.7}
@media(max-width:800px){
  .layout{grid-template-columns:1fr;gap:18px}
  .sidebar{position:static;display:flex;gap:6px;overflow-x:auto;padding-bottom:5px}
  .nav-label{display:none}
  .nav-btn{white-space:nowrap;flex:0 0 auto}
  .app-root{padding:22px 4vw 40px}
}
