:root{color-scheme:dark;font:16px/1.6 system-ui,sans-serif;background:#202020;color:#f4f4f4}*{box-sizing:border-box}body{margin:0}a{color:#65e7ac;text-decoration:none}a:hover{text-decoration:underline}header{display:flex;align-items:center;gap:2rem;padding:1rem 4%;border-bottom:1px solid #454545;background:#252525;flex-wrap:wrap}.brand{font-size:1.4rem;font-weight:750;color:#fff}.brand span{font-size:.9rem;color:#bcbcbc;margin-left:.7rem}nav{display:flex;gap:1.3rem;flex:1}main{max-width:1200px;margin:auto;padding:3rem 1.5rem}h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15;letter-spacing:-.04em}h2{line-height:1.3}.panel{background:#2b2b2b;border:1px solid #454545;border-radius:16px;padding:2rem;margin:1.5rem 0}.narrow{max-width:520px;margin:2rem auto}.muted,small,footer{color:#bcbcbc}.eyebrow{color:#65e7ac;font-size:.8rem;letter-spacing:.15em}label{display:block;margin:.8rem 0}input,select,button{font:inherit;border:1px solid #555;border-radius:8px;padding:.7rem;background:#202020;color:#fff}input:not([type=checkbox]),select{display:block;width:100%;margin-top:.35rem}input[type=checkbox]{accent-color:#39d98a}button{cursor:pointer;min-height:44px}.primary{background:#39d98a;color:#102219;border-color:#39d98a;font-weight:650}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}fieldset{border:1px solid #555;border-radius:8px}.warning{background:#3e321a;border:1px solid #bb8b2c;padding:1rem;border-radius:10px;color:#ffdb81}.table{overflow:auto;border:1px solid #454545;border-radius:12px}table{border-collapse:collapse;width:100%;background:#2b2b2b}td,th{text-align:left;padding:1rem;white-space:nowrap;border-bottom:1px solid #454545}small{display:block}footer{padding:2rem 0;font-size:.8rem}:focus-visible{outline:3px solid #83edbd;outline-offset:3px}@media(max-width:640px){header{gap:1rem;padding:1rem}nav{order:3;flex-basis:100%;justify-content:space-between;gap:.5rem}main{padding:1.5rem 1rem}.panel{padding:1.3rem}.grid{grid-template-columns:1fr}.brand span{display:block;margin:0}header form{margin-left:auto}}
:root .dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.badge{border:1px solid #399e72;color:#83edbd;border-radius:99px;padding:.4rem .8rem;font-size:.85rem}.badge.stale{color:#ffdb81;border-color:#bb8b2c}.climate-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.climate-cards .panel{margin:.5rem 0}.metric-value{display:flex;align-items:baseline;gap:.7rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.2}.metric-value small{font-size:1.1rem;color:#bcbcbc}.dashboard-selectors{display:flex;align-items:end;gap:1rem;flex-wrap:wrap}.dashboard-selectors label{min-width:190px}.chart-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.chart-controls{display:flex;flex-wrap:wrap;gap:.4rem}.chart-controls button{font-size:.85rem}.chart-controls [aria-pressed=true]{background:#39d98a;color:#102219;border-color:#39d98a}#climate-chart{min-height:180px;margin-top:1rem}#climate-chart svg{width:100%;display:block;font:12px system-ui}summary{cursor:pointer;font-weight:600}@media(max-width:640px){.climate-cards{gap:.6rem}.climate-cards .panel{padding:1rem}.metric-value{font-size:2.5rem}.metric-value small{font-size:.85rem}.climate-cards p{font-size:.85rem}.dashboard-selectors label{min-width:0;flex:1}.chart-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}}
:root{--canvas:#202020;--card:#2b2b2b;--edge:#454545;--green:#48dfa0;--blue:#59bdf5}
header nav a{padding:.5rem 0;border-bottom:2px solid transparent}header nav a[aria-current=page]{color:#fff;border-color:var(--green)}
.dashboard-heading h1{margin:.5rem 0}.dashboard-heading p{margin:.5rem 0 1.2rem}.dashboard-selectors{border-bottom:1px solid var(--edge);padding-bottom:1rem;margin-bottom:1.5rem}
.simple-overview{min-width:0}.simple-overview>.panel,.detailed-charts>.panel{margin:0}.simple-view .simple-overview{display:grid;gap:1.2rem;align-items:stretch}.simple-view .climate-cards{min-width:0}.detail-link,.button-link{display:inline-flex;align-items:center;min-height:44px;padding:.55rem .9rem;border:1px solid #59977a;border-radius:8px}.climate-cards .panel{min-width:0}.climate-cards .panel>p:first-child{font-weight:650}
.detailed-dashboard .simple-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.detailed-dashboard .climate-cards{grid-column:span 2}.derived-card{align-self:stretch}.derived-card h2{font-size:1.9rem;margin:.4rem 0}.derived-card h2 small{display:inline;font-size:1rem}.derived-card p{font-size:.9rem}.derived-card .eyebrow{font-size:.7rem}
.range-panel,.detailed-charts,.quality-summary{grid-column:1/-1}.detailed-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.trend-card{min-width:0;overflow:hidden}.trend-card h2{font-size:1.2rem}.history-chart{min-height:140px}.history-chart svg{width:100%;display:block;font:12px system-ui}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.stats-grid dt{font-size:.75rem;color:#bcbcbc}.stats-grid dd{margin:0;font-weight:600;font-size:.9rem}.sensor-current{font-size:2rem;font-weight:650;margin:.5rem 0}.sensor-current small{display:inline;font-size:.85rem;font-weight:400}.sensor-state{font-size:.8rem;color:#bcbcbc}.period-controls{margin:1rem 0}.custom-range{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.custom-range label{flex:1;min-width:140px}.custom-range small{flex-basis:100%}.compare-toggle{margin-top:1rem}.range-panel h2{margin:.4rem 0}.simple-dashboard[aria-busy=true] .history-chart{opacity:.65}
@media(min-width:1100px){main:has(.simple-dashboard){max-width:1500px;padding:2.5rem 3rem}.simple-view .simple-overview{grid-template-columns:minmax(280px,.8fr) minmax(0,1.8fr)}.simple-view .climate-cards{grid-template-columns:1fr}.simple-view .climate-cards .panel{margin:0}.simple-view #climate-chart{margin:2rem 0}.simple-view .metric-value{font-size:3.5rem}.simple-view .simple-overview>.panel{display:flex;flex-direction:column;justify-content:center}}
@media(max-width:1000px){.detailed-dashboard .simple-overview{grid-template-columns:1fr}.detailed-dashboard .climate-cards{grid-column:auto}.derived-card{padding:1.3rem}.detailed-charts{grid-template-columns:1fr}.custom-range{gap:.6rem}.detailed-dashboard .climate-cards .panel{margin:0}}
@media(max-width:640px){header nav{overflow-x:auto;justify-content:flex-start;gap:1.2rem}header nav a{white-space:nowrap}.dashboard-heading{align-items:start}.dashboard-heading h1{font-size:2rem}.badge{font-size:.8rem}.dashboard-selectors{gap:.6rem}.dashboard-selectors button{width:100%}.detailed-dashboard .simple-overview{gap:.8rem}.trend-card .chart-toolbar{gap:.2rem}.stats-grid{gap:.5rem}.custom-range button{width:100%}.period-controls{grid-template-columns:repeat(4,1fr);gap:.3rem}.period-controls button{font-size:.8rem;padding:.5rem}.range-panel .chart-toolbar{align-items:start}.quality-summary p{font-size:.9rem}.history-chart{margin-left:-.5rem;margin-right:-.5rem}}
