.chart.svelte-hiph9t{width:100%;margin:0;position:relative}svg.svelte-hiph9t{touch-action:pan-y;width:100%;height:auto;display:block}svg.svelte-hiph9t:focus-visible{outline:3px solid var(--color-brand);outline-offset:3px;border-radius:var(--radius-sm)}.grid.svelte-hiph9t{stroke:var(--color-divider);stroke-width:1px}.axis.svelte-hiph9t{stroke:var(--color-border);stroke-width:2px}.y-lab.svelte-hiph9t,.x-lab.svelte-hiph9t{font-family:var(--font-mono);fill:var(--color-text-subtle);font-size:11px}.guide.svelte-hiph9t{stroke:var(--color-text-muted);stroke-width:1.5px;stroke-dasharray:2 5;opacity:.75}.guide-lab.svelte-hiph9t{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;fill:var(--color-text-muted);stroke:var(--color-surface);stroke-width:3px;paint-order:stroke;font-size:10px}.line.svelte-hiph9t{stroke:var(--c);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;animation:svelte-hiph9t-draw .7s var(--ease-out) backwards;animation-delay:calc(var(--i) * 90ms)}@keyframes svelte-hiph9t-draw{0%{stroke-dashoffset:1px;stroke-dasharray:1}to{stroke-dashoffset:0;stroke-dasharray:1}}.cross.svelte-hiph9t{stroke:var(--color-text);stroke-width:1px;stroke-dasharray:3 3;opacity:.55}.dot.svelte-hiph9t{fill:var(--c);stroke:var(--color-surface);stroke-width:2px}.tip.svelte-hiph9t{min-width:130px;padding:var(--space-2xs) var(--space-xs);background:var(--color-surface-dark);color:var(--color-on-dark);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hard-dark);pointer-events:none;z-index:5;position:absolute;top:0;transform:translate(12px)}.tip.flip.svelte-hiph9t{transform:translate(calc(-100% - 12px))}.tip-time.svelte-hiph9t{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.04em;color:var(--color-on-dark-muted);margin-bottom:var(--space-3xs);display:block}.tip-row.svelte-hiph9t{align-items:baseline;gap:var(--space-2xs);padding:2px 0;display:flex}.tip-dot.svelte-hiph9t{background:var(--c);border-radius:50%;flex-shrink:0;align-self:center;width:8px;height:8px}.tip-room.svelte-hiph9t{font-size:var(--fs-small);white-space:nowrap;flex:1}.tip-val.svelte-hiph9t{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:700}.tip-unit.svelte-hiph9t{font-family:var(--font-body);font-weight:400;font-size:var(--fs-mono-sm);color:var(--color-on-dark-muted);margin-left:.2ch}.sr-only.svelte-hiph9t{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.line.svelte-hiph9t{animation:none}}.controls.svelte-67ipla{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.chips.svelte-67ipla{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.chip.svelte-67ipla{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.02em;color:var(--color-text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);padding:.4rem .75rem}.chip.svelte-67ipla:hover{color:var(--color-text);background:var(--color-surface-warm)}.chip.on.svelte-67ipla{background:var(--color-text);color:var(--color-surface);border-color:var(--color-border)}.chip.svelte-67ipla:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}.seg.svelte-67ipla{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);padding:3px;display:inline-flex}.seg-btn.svelte-67ipla{border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;padding:.35rem .85rem}.seg-btn.svelte-67ipla:hover{color:var(--color-text)}.seg-btn.on.svelte-67ipla{background:var(--color-brand);color:var(--color-on-brand);font-weight:600}.seg-btn.svelte-67ipla:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}.chart-panel.svelte-67ipla{padding:var(--space-md) var(--space-md) var(--space-sm);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-hard-dark);margin-bottom:var(--space-lg)}.chart-note.svelte-67ipla{margin:var(--space-2xs) 0 0;font-size:var(--fs-small);color:var(--color-text-muted);max-width:68ch;line-height:1.5}.stale.svelte-67ipla{margin:0 0 var(--space-sm);font-size:var(--fs-small);color:var(--aqi-moderate-ink);align-items:baseline;gap:.6ch;max-width:68ch;line-height:1.5;display:flex}.stale-dot.svelte-67ipla{background:var(--aqi-moderate);border-radius:50%;flex-shrink:0;align-self:center;width:8px;height:8px}.sensors.svelte-67ipla{gap:var(--space-2xs);flex-direction:column;list-style:none;display:flex}.sensor.svelte-67ipla{align-items:center;gap:var(--space-md);text-align:left;width:100%;padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);grid-template-columns:minmax(140px,1.4fr) auto 1fr auto;display:grid}.sensor.svelte-67ipla:hover{box-shadow:4px 4px 0 var(--c-deep);transform:translate(-2px,-2px)}.sensor.svelte-67ipla:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}.sensor.muted.svelte-67ipla{opacity:.45}.sensor.muted.svelte-67ipla .s-dot:where(.svelte-67ipla){box-shadow:inset 0 0 0 2px var(--c);background:0 0}.s-id.svelte-67ipla{align-items:center;gap:.6ch;min-width:0;display:inline-flex}.s-dot.svelte-67ipla{background:var(--c);border-radius:50%;flex-shrink:0;width:12px;height:12px}.s-room.svelte-67ipla{font-weight:600;font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.s-latest.svelte-67ipla{text-align:right;flex-direction:column;gap:.05rem;display:flex}.s-val.svelte-67ipla{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h3);font-variant-numeric:tabular-nums;line-height:1}.s-unit.svelte-67ipla{font-family:var(--font-body);font-weight:400;font-size:var(--fs-small);color:var(--color-text-subtle);margin-left:.2ch}.s-cat.svelte-67ipla{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.02em}.s-range.svelte-67ipla{gap:var(--space-md);font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.02em;color:var(--color-text-subtle);text-transform:uppercase;display:flex}.s-range.svelte-67ipla b:where(.svelte-67ipla){font-family:var(--font-display);font-size:var(--fs-body);color:var(--color-text);font-variant-numeric:tabular-nums}.s-nodata.svelte-67ipla{text-align:right;font-family:var(--font-mono);font-size:var(--fs-mono-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle);grid-column:2/-1}.spark.svelte-67ipla{width:96px;height:30px}.spark.svelte-67ipla path:where(.svelte-67ipla){stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}@media (width<=720px){.sensor.svelte-67ipla{gap:var(--space-2xs) var(--space-sm);grid-template-columns:1fr auto}.s-range.svelte-67ipla,.spark.svelte-67ipla{display:none}}@media (prefers-reduced-motion:reduce){.sensor.svelte-67ipla,.chip.svelte-67ipla,.seg-btn.svelte-67ipla{transition:none}}
