/* PB Core D0/D1 — deliberately scoped to the Citizen Dashboard only. */
.pb-surface--dashboard { --pb-d1-glass: rgba(9,19,34,.77); --pb-d1-edge: rgba(123,208,226,.26); --pb-d1-ink: #e8f5fa; --pb-d1-muted: #a9bfc9; gap:16px; }
.pb-surface--dashboard > .pb-dash-d1 { grid-column:1 / -1; }
.pb-dash-d1 { min-width:0; border:1px solid var(--pb-d1-edge); border-radius:18px; background:var(--pb-d1-glass); color:var(--pb-d1-ink); padding:clamp(16px,2.4vw,28px); box-shadow:0 18px 40px rgba(0,0,0,.26); }
.pb-dash-d1__intro { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:18px; }
.pb-dash-d1__intro h2 { margin:4px 0 6px; color:var(--pb-d1-ink); font-size:clamp(22px,2.5vw,32px); line-height:1.2; font-weight:750; letter-spacing:-.015em; text-transform:none; }
.pb-dash-d1__intro p { color:var(--pb-d1-muted); font-size:14px; margin:0; line-height:1.55; }
.pb-dash-d1__intro .pb-dash-d1__eyebrow { font-size:10px; font-weight:750; letter-spacing:.15em; color:#7cdaeb; }
.pb-dash-d1__counts { border:1px solid var(--pb-d1-edge); background:rgba(23,40,57,.85); padding:10px 14px; border-radius:12px; color:var(--pb-d1-muted); font-size:12px; }
.pb-dash-d1__counts strong { font-variant-numeric:tabular-nums; color:#def8ff; font-size:15px; }
.pb-dash-d1__counts span { color:#6fa7ba; margin:0 3px; }
.pb-dash-d1__filters { display:grid; grid-template-columns:minmax(140px,1fr) minmax(140px,240px); gap:8px 14px; margin-bottom:16px; }
.pb-dash-d1__filters label { display:block; color:var(--pb-d1-muted); font-size:12px; font-weight:650; grid-row:1; }
.pb-dash-d1__filters input, .pb-dash-d1__filters select { min-width:0; width:100%; grid-row:2; color:var(--pb-d1-ink); background:#101c2b; border:1px solid rgba(134,180,206,.38); border-radius:10px; min-height:44px; padding:9px 12px; font-size:14px; }
.pb-dash-d1__filters option { background:#101c2b; color:#f2faff; }
.pb-dash-d1__filters :is(input,select):focus-visible { outline:2px solid #78e5ff; outline-offset:2px; }
.pb-dash-d1__items { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr)); gap:10px; }
.pb-dash-d1__item { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; padding:12px; border:1px solid rgba(139,185,203,.2); border-radius:12px; background:rgba(11,27,42,.62); min-width:0; }
.pb-dash-d1__item[hidden] { display:none !important; }
.pb-dash-d1__item-name { flex:1 1 140px; min-width:0; display:flex; flex-direction:column; gap:2px; }
.pb-dash-d1__item-name b { color:#ecf7fb; font-size:13px; font-weight:700; overflow-wrap:anywhere; }
.pb-dash-d1__item-name small { color:var(--pb-d1-muted); font-size:11px; }
.pb-dash-d1__status,.pb-dash-d1__note { font-size:10px; letter-spacing:.045em; border-radius:999px; padding:4px 8px; background:rgba(92,161,185,.15); border:1px solid rgba(113,182,195,.32); color:#c5edf6; }
.pb-dash-d1__item[data-pb-d1-state="off"] .pb-dash-d1__status { color:#c0ccd3; background:rgba(120,130,140,.12); }
.pb-dash-d1__note { border-color:rgba(196,170,116,.25); color:#dbcda9; background:rgba(164,124,64,.1); }
.pb-dash-d1__jump { display:inline-flex; align-items:center; min-height:36px; padding:6px 10px; border:1px solid rgba(127,218,227,.36); border-radius:9px; text-decoration:none !important; color:#a9f2ff !important; font-size:12px; font-weight:650; }
.pb-dash-d1__jump:hover,.pb-dash-d1__jump:focus-visible { background:rgba(100,179,199,.15); outline-offset:2px; }
.pb-dash-d1__help { margin:16px 0 0; border-top:1px solid rgba(164,203,221,.18); padding-top:12px; font-size:12px; line-height:1.6; color:var(--pb-d1-muted); }
.pb-dash-d1__empty { padding:16px; color:#bfd6e0; }
.pb-surface--dashboard .pb-wrap { min-width:0; scroll-margin-top:100px; }
.pb-surface--dashboard .pb-wrap__hdr { display:flex; gap:10px; }
.pb-surface--dashboard .pb-wrap__disclosure { flex:1 1 auto; display:flex; align-items:center; justify-content:space-between; gap:14px; min-width:0; text-align:left; border:0; background:transparent; color:inherit; font:inherit; padding:0; cursor:pointer; }
.pb-surface--dashboard .pb-wrap__disclosure:focus-visible { outline:2px solid #80efff; outline-offset:4px; border-radius:5px; }
.pb-surface--dashboard .pb-wrap__right { flex:0 1 auto; }
.pb-surface--dashboard .pb-wrap__btn { min-height:34px; }
.pb-surface--dashboard .pb-wrap__btn:focus-visible { outline:2px solid #80efff; outline-offset:2px; }
.pb-surface--dashboard .pb-wrap__btn:disabled { opacity:.55; cursor:wait; }
.pb-surface--dashboard .pb-wrap__private-label { color:#abc0c9; font-size:11px; border:1px solid rgba(178,194,202,.28); padding:6px; border-radius:9px; }
.pb-surface--dashboard .pb-wrap__status { padding:7px 14px; color:#a9f4df; background:rgba(5,71,53,.3); font-size:12px; }
.pb-surface--dashboard .pb-wrap__status.is-error { color:#ffcccc; background:rgba(110,16,31,.34); }
@media (max-width:780px){ .pb-dash-d1__filters{grid-template-columns:1fr;} .pb-dash-d1__filters label,.pb-dash-d1__filters input,.pb-dash-d1__filters select {grid-row:auto;} .pb-dash-d1__filters label:nth-of-type(2){grid-row:3;} .pb-dash-d1__filters select{grid-row:4;} .pb-surface--dashboard .pb-wrap__hdr{align-items:flex-start;flex-direction:column;} .pb-surface--dashboard .pb-wrap__disclosure{width:100%;min-height:38px;} .pb-surface--dashboard .pb-wrap__right{width:100%;justify-content:flex-start;} }
@media (prefers-reduced-transparency:reduce){ .pb-dash-d1{background:#0c1724;} }

/* Compact default: the module directory opens only on demand. */
.pb-dash-d1__details > summary { display:flex; justify-content:space-between; align-items:center; gap:12px; list-style:none; cursor:pointer; padding:12px 16px; border:1px solid rgba(124,214,235,.3); border-radius:10px; color:#b5eeff; background:rgba(17,41,59,.52); font-weight:700; font-size:13px; }
.pb-dash-d1__details > summary::-webkit-details-marker { display:none; }
.pb-dash-d1__details > summary:focus-visible { outline:2px solid #78e5ff; outline-offset:2px; }
.pb-dash-d1__details[open] > summary { margin-bottom:15px; }
.pb-dash-d1__details[open] > summary span { transform:rotate(180deg); }
