:root{color:#0f172a;background:#f8fafc}body{background:linear-gradient(180deg,#f8fafc,#eef2ff)}code{background:#e2e8f0;padding:.15rem .35rem;border-radius:.4rem}button,input,select{font:inherit}.app-shell{max-width:1440px;margin:0 auto;padding:2rem}.hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:#475569;margin:0 0 .35rem}.hero h1{margin:0;font-size:clamp(2rem,4vw,3rem)}.hero-copy{max-width:52rem;line-height:1.55;color:#475569}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.panel{background:#ffffffd1;border:1px solid rgba(148,163,184,.25);border-radius:1.25rem;padding:1.25rem;box-shadow:0 10px 30px #0f172a0f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-title{display:flex;align-items:center;gap:.5rem;font-weight:700;margin-bottom:1rem}.notice-card{margin-bottom:1rem;border-radius:1rem;padding:.9rem 1rem;background:#dbeafe;border:1px solid #93c5fd}.notice-card.success{background:#dcfce7;border-color:#86efac}.notice-card.error{background:#fee2e2;border-color:#fca5a5}.primary-btn,.secondary-btn,.icon-btn{border:none;border-radius:.9rem;padding:.8rem 1rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.primary-btn{background:#0f172a;color:#fff}.secondary-btn,.icon-btn{background:#fff;color:#0f172a;border:1px solid #cbd5e1}.filters-grid,.metrics-grid,.chart-grid,.two-column,.form-grid{display:grid;gap:1rem}.filters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filters-grid label,.field{display:flex;flex-direction:column;gap:.4rem;font-weight:600}.filters-grid select,.field input,.field select{padding:.8rem .9rem;border-radius:.9rem;border:1px solid #cbd5e1;background:#fff}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:1rem 0}.metric-card{display:flex;align-items:center;gap:1rem}.metric-icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:1rem;background:#e2e8f0}.metric-label{color:#64748b;font-size:.92rem}.metric-value{font-size:1.6rem;font-weight:800}.chart-grid{grid-template-columns:2fr 1fr;margin-bottom:1rem}.chart-grid .wide{grid-column:span 1}.chart-panel .chart-wrap{height:320px}.kpi-list{display:grid;gap:.8rem}.kpi-row{display:flex;justify-content:space-between;align-items:center;border:1px solid #e2e8f0;border-radius:1rem;padding:.9rem 1rem}.status-pill{padding:.35rem .7rem;border-radius:999px;font-weight:700}.status-pill.good{background:#dcfce7;color:#166534}.status-pill.warn{background:#fef3c7;color:#92400e}.status-pill.bad{background:#fee2e2;color:#991b1b}.two-column{grid-template-columns:1.45fr 1fr;margin-bottom:1rem}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th,.table-wrap td{text-align:left;padding:.8rem .7rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{grid-column:1 / -1}.footer-panel ul{margin:0;padding-left:1.2rem;line-height:1.7}@media(max-width:1100px){.metrics-grid,.filters-grid,.chart-grid,.two-column,.form-grid{grid-template-columns:1fr}.hero{flex-direction:column}.hero-actions{justify-content:flex-start}}
