/* Spring theme: sage canvas, white cards, mint + lime accents */
:root{
  --paper:#E9F1EB; --surface:#F3F8F4; --raised:#FFFFFF;
  --line:#E1EAE3; --line-strong:#C9D8CD;
  --ink:#16201A; --ink-2:#4B5A51; --ink-3:#7B897F; --chrome:#4B5A51;
  --mint:#C9EEDC; --mint-2:#DDF5E8; --lime:#E4F58A; --lime-2:#EEF9B7; --lime-deep:#A9CB3F;
  --c-apd:#2E8F6B; --c-afr:#D08A2A; --c-acs:#2F97B0; --c-ord:#8676D6;
  --c-apd-soft:#2E8F6B1C; --c-afr-soft:#D08A2A1F; --c-acs-soft:#2F97B01C; --c-ord-soft:#8676D61C;
  --pd:#3B8FC4; --pr:#D9822B;
  --hi:#B7791F; --gap:#DCE7DF;
  --k-alleg:#C8483F; --k-crit:#B7791F; --k-inq:#3B8FC4; --k-rec:#8676D6; --k-ann:#2E8F6B; --k-exp:#5F8A1F; --k-date:#4B5A51;
  --r:14px; --shadow:0 1px 2px rgba(22,50,35,.04),0 6px 20px rgba(22,50,35,.06);
  --mono:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --disp:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#0E1813; --surface:#15241C; --raised:#182A21; --line:#233829; --line-strong:#33503D;
  --ink:#E8F2EB; --ink-2:#A9BDB0; --ink-3:#7F9686; --chrome:#A9BDB0;
  --mint:#24503B; --mint-2:#1D3F2E; --lime:#C6DC5E; --lime-2:#2B3D18; --lime-deep:#B4D14A;
  --c-apd:#4FBF93; --c-afr:#E5A24A; --c-acs:#55B8CF; --c-ord:#A092E6;
  --c-apd-soft:#4FBF9326; --c-afr-soft:#E5A24A26; --c-acs-soft:#55B8CF26; --c-ord-soft:#A092E626;
  --pd:#63AEDD; --pr:#EBA35A; --hi:#E5B453; --gap:#2A4131;
  --k-alleg:#EE7F76; --k-crit:#E5B453; --k-inq:#63AEDD; --k-rec:#A092E6; --k-ann:#4FBF93; --k-exp:#A9D45E; --k-date:#A9BDB0;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25);
}}
:root[data-theme="dark"]{
  --paper:#0E1813; --surface:#15241C; --raised:#182A21; --line:#233829; --line-strong:#33503D;
  --ink:#E8F2EB; --ink-2:#A9BDB0; --ink-3:#7F9686; --chrome:#A9BDB0;
  --mint:#24503B; --mint-2:#1D3F2E; --lime:#C6DC5E; --lime-2:#2B3D18; --lime-deep:#B4D14A;
  --c-apd:#4FBF93; --c-afr:#E5A24A; --c-acs:#55B8CF; --c-ord:#A092E6;
  --c-apd-soft:#4FBF9326; --c-afr-soft:#E5A24A26; --c-acs-soft:#55B8CF26; --c-ord-soft:#A092E626;
  --pd:#63AEDD; --pr:#EBA35A; --hi:#E5B453; --gap:#2A4131;
  --k-alleg:#EE7F76; --k-crit:#E5B453; --k-inq:#63AEDD; --k-rec:#A092E6; --k-ann:#4FBF93; --k-exp:#A9D45E; --k-date:#A9BDB0;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25);
}
body{background:var(--paper);font-size:14.5px;letter-spacing:-.003em}
/* labels: sentence-ish, less techy than the mono caps */
.kicker,.tile .l,.covnum,.covyr,.mdur,.qstat,.cat,.act,.sig,.kind,.pctag,.chip,.themebtn,.tn-link,.stat span,.facts dt,h4.lbl,.elec th,.pill,.dt .dn,.matrix,.dot,.swing .v,.pubc .l,.cposture b,.tabbtn .b,.rc .m{letter-spacing:.04em}
h1{font-weight:800;letter-spacing:-.03em}
h2{font-weight:700}
/* top bar */
.topnav{background:transparent;color:var(--ink)}
.topnav-in{padding-block:16px}
.tn-brand{color:var(--ink);font-weight:800;font-size:17px;display:flex;align-items:center;gap:9px}
.tn-brand::before{content:"";width:22px;height:22px;border-radius:7px;background:linear-gradient(135deg,var(--mint) 0 50%,var(--lime) 50% 100%);box-shadow:inset 0 0 0 1.5px var(--ink)}
.tn-brand span{opacity:.55}
.tn-link{color:var(--ink-2);opacity:1;font-size:13px;font-weight:600;padding:8px 15px;border-radius:999px;border:0;background:transparent}
.tn-link:hover{background:var(--raised)}
.tn-link[aria-current="page"]{background:var(--lime);color:#1C2A10}
/* header */
header.mast{background:transparent;border:0}
.mast-in{padding-block:14px 8px}
.sub{color:var(--ink-2)}
.themebtn{background:var(--raised);border:0;border-radius:999px;box-shadow:var(--shadow);padding:9px 14px;font-weight:600;color:var(--ink-2)}
/* tabs -> segmented pill */
.tabs{border:0;gap:6px;margin-top:14px}
.tabbtn{border:0;border-radius:999px;background:var(--raised);color:var(--ink-2);padding:9px 16px;margin:0;box-shadow:var(--shadow);font-weight:700}
.tabbtn[aria-selected="true"]{background:var(--lime);color:#1C2A10}
.tabbtn .b{background:rgba(255,255,255,.7);border:0;color:inherit}
/* card surfaces */
.tiles,.stat,.queue,.mtgs,.rc,.citems,.cov,.prof,.callout,.cnote,.pubc,.flags{border:0;border-radius:var(--r)}
.cov,.prof,.mtgs,.queue,.citems,.rc,.flags{box-shadow:var(--shadow)}
.cov{padding:22px}
.callout,.cnote{background:var(--raised);border-left:0;box-shadow:var(--shadow);border-radius:var(--r);border-top:4px solid var(--lime-deep)}
.cnote{border-top-color:var(--mint)}
/* KPI tiles as separate cards, first one mint */
.tiles,.stat{background:transparent;gap:14px;overflow:visible;box-shadow:none;border:0}
.tile,.stat>div{border-radius:var(--r);box-shadow:var(--shadow);padding:18px 18px}
.tile:first-child,.stat>div:first-child{background:var(--mint)}
.tile .n{font-weight:800}
.tile .l{color:var(--ink-2)}
/* pills */
.chip{border:0;background:var(--raised);box-shadow:var(--shadow);border-radius:999px;padding:8px 14px;font-weight:600;color:var(--ink-2)}
.chip:hover{color:var(--ink);background:var(--lime-2)}
.chip[aria-pressed="true"]{background:var(--lime);color:#1C2A10}
.srch{border:0;border-radius:999px;box-shadow:var(--shadow);padding:10px 16px}
.cat,.kind,.act,.ts,.pctag{border-radius:999px}
.cat{padding:3px 9px}
.ts{background:var(--surface);border:0;color:var(--ink-2)}
.ts:hover{background:var(--lime);color:#1C2A10}
.kind{padding:3px 9px}
.watchlink{border-bottom-color:var(--lime-deep)}
/* meeting rows */
.mtgs,.queue,.citems,.rc,.flags{gap:0;background:var(--raised)}
.mtg,.qitem,.citem,.rc>div,.flag{border-bottom:1px solid var(--line)}
.mtg:last-child,.qitem,.citem:last-child,.rc>div:last-child,.flag:last-child{border-bottom:0}
.qitem{border-right:1px solid var(--line)}
.mtg-hd:hover{background:var(--mint-2)}
.mbody{background:var(--surface);border-top:0}
.covcell{border-radius:3px}
.covcell.on{background:var(--mint);box-shadow:inset 0 0 0 1px var(--c-apd)}
.covcell.pend{border-radius:3px}
.mixbar i,.bar,.bar i{border-radius:4px}
footer{border-top:0}
/* council page */
.dt{border:0;border-radius:var(--r);box-shadow:var(--shadow);background:var(--raised)}
.dt:hover,.dt[aria-pressed="true"]{box-shadow:0 0 0 2px var(--lime-deep),var(--shadow)}
.dt[aria-pressed="true"]{background:var(--lime-2)}
.dt::after{border-radius:999px;height:5px}
.party-D{--pc:var(--pd)}.party-R{--pc:var(--pr)}
.prof{padding:26px 28px}
.pill{border-radius:999px;padding:4px 11px}
.pill.o{border:0;background:var(--surface);color:var(--ink-2)}
.outlook{background:var(--mint-2);border-left:0;border-radius:var(--r)}
.dot{border-radius:999px;padding:3px 9px}
.dot.y{background:var(--mint);border:0;color:#124C33}
.dot.n{background:#F8DEC0;border:0;color:#7A4510}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .dot.y{color:#B5EBD1}:root:not([data-theme="light"]) .dot.n{background:#4A3417;color:#F3C88A}}
:root[data-theme="dark"] .dot.y{color:#B5EBD1}:root[data-theme="dark"] .dot.n{background:#4A3417;color:#F3C88A}
.swing .t{border-radius:999px;height:10px}.swing .t i{border-radius:999px}
.matrix td{border-radius:8px}
.mtg-hd{grid-template-columns:96px minmax(0,1fr) auto}
.mtg-hd>*{min-width:0}
.mmeta{flex:none}
.tiles{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}
.tabbtn .b{background:var(--surface);color:var(--ink-2)}
.tabbtn[aria-selected="true"] .b{background:rgba(255,255,255,.65);color:#1C2A10}
