/* ANALYTICS page: show / hide + station choice, tabs, cards, slot grid, charts */
body[data-view=analytics] #sg-analytics,body[data-view=analytics] #v-analytics{display:flex}
#v-analytics .anmain{display:flex;flex-direction:column;gap:var(--gap)}
#v-analytics .anmain[hidden],#v-analytics .anp[hidden],#v-analytics #anPick[hidden]{display:none!important}
#v-analytics .anp{display:flex;flex-direction:column;gap:var(--gap)}
#v-analytics .anpad{padding:14px 16px;margin:0}
#v-analytics .anok{color:#15803d;font-weight:700;padding:14px 16px;margin:0}
#v-analytics .nw{white-space:nowrap}

/* Duty Met: station choice */
.anpk{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;padding:16px}
.anpk-b{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:16px 18px;border-radius:14px;border:2px solid #d6e1f2;background:linear-gradient(180deg,#fff,#f4f8ff);color:var(--navy);cursor:pointer;text-align:left;font-family:var(--ff);transition:border-color .12s,box-shadow .12s,transform .12s}
.anpk-b:hover{border-color:#1d6bf3;box-shadow:0 6px 16px rgba(29,107,243,.18);transform:translateY(-1px)}
.anpk-b b{font-size:26px;letter-spacing:.06em}
.anpk-b span{font-size:15px;color:var(--mut);font-weight:600}

/* toolbar */
#v-analytics .anbar .fsel{height:44px}
#v-analytics .anto{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--navy)}
#v-analytics .anbar #anPrev,#v-analytics .anbar #anNext{width:44px;padding:0;font-size:24px;line-height:1;font-weight:800}
#v-analytics .anbar #anRange{margin-left:auto}
#v-analytics .antabs{align-self:flex-start;max-width:100%;overflow-x:auto}

/* cards */
#v-analytics .stat span{line-height:1.35}
#v-analytics .stat.k1{background:linear-gradient(135deg,#e2eeff,#edf4ff);border:1px solid #cce0fe;--g:#0d6efd}
#v-analytics .stat.k2{background:linear-gradient(135deg,#dff7e8,#edfcf2);border:1px solid #bcebd0;--g:#15803d}
#v-analytics .stat.k3{background:linear-gradient(135deg,#ffeedb,#fff6eb);border:1px solid #fbd8b0;--g:#ea580c}
#v-analytics .stat.k4{background:linear-gradient(135deg,#efe9ff,#f7f4ff);border:1px solid #d9cefd;--g:#6d28d9}
#v-analytics .stat.k5{background:linear-gradient(135deg,#fff3d6,#fffaeb);border:1px solid #f6e0a0;--g:#b45309}
#v-analytics .stat.k6{background:linear-gradient(135deg,#ffe3e3,#fff1f1);border:1px solid #f7c3c3;--g:#dc2626}
#v-analytics .stat.k7{background:linear-gradient(135deg,#e0f5f7,#eefafb);border:1px solid #b7e3e8;--g:#0e7490}
#v-analytics .stat.k8{background:linear-gradient(135deg,#eceff4,#f5f7fa);border:1px solid #d3dae5;--g:#475569}
.andl{font-weight:700;color:var(--mut)}
.andl.good{color:#15803d}
.andl.bad{color:#dc2626}

/* half-hourly slots (Day) + stacked bars (Week / Month / Custom) */
.slotg{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;padding:14px 16px}
.slot{padding:8px 0;border-radius:8px;text-align:center;font:700 13px var(--ff);font-variant-numeric:tabular-nums;color:#fff}
.slot.ok,i.ok{background:#16a34a}
.slot.late,i.late{background:#f59e0b}
.slot.miss,i.miss{background:#dc2626}
.slot.future,i.future{background:#e3e9f3}
.slot.future{color:#8a98ad}
.anleg{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0 16px 14px;font-size:13.5px;color:var(--mut);font-weight:600}
.anleg span{display:inline-flex;align-items:center;gap:7px}
.anleg i{display:inline-block;width:14px;height:14px;border-radius:4px}
.anbars .bc{flex:1 0 24px;max-width:60px}
.anbars .bs{flex:1;width:72%;display:flex;flex-direction:column;border-radius:7px;overflow:hidden;background:#eef2f8}
.anbars .bs i{display:block;width:100%}

/* weather */
.anchips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 0}
.anchips button{height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--navy);font:800 14.5px var(--ff);cursor:pointer}
.anchips button.on{background:linear-gradient(180deg,#2f7bff,#1560ec);border-color:#1560ec;color:#fff}
.antrend{padding:6px 10px 0}
.anchart{display:block;width:100%;height:auto}
.anchart text{font:600 11px var(--ff);fill:#64748b}
.anchart .gl{stroke:#e2e8f0;stroke-width:1}
.anchart .gl.v{stroke:#eef2f8}
.anrose{padding:8px 12px 0}
.anrosesvg{display:block;width:min(100%,300px);margin:0 auto}
.anrosesvg .rg{fill:none;stroke:#dbe4f0;stroke-width:1}
.anrosesvg .rl{font:800 13px var(--ff);fill:#334155}

/* compliance */
.anchips2{display:flex;flex-wrap:wrap;gap:8px}
.chip.miss{padding:6px 12px;border-radius:999px;background:#ffe3e3;border:1px solid #f7c3c3;color:#b91c1c;font:700 14px var(--ff);font-variant-numeric:tabular-nums}
@media(max-width:900px){.slotg{grid-template-columns:repeat(6,1fr)}#v-analytics .anbar #anRange{margin-left:0;width:100%}}
