/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.m-0{margin:0}.min-h-screen{min-height:100vh}.min-w-80{min-width:calc(var(--spacing) * 80)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.border{border-style:var(--tw-border-style);border-width:1px}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}}:root{--ink:#120f0b;--panel:#211b16;--panel-soft:#2b241d;--cream:#f5e8d4;--muted:#bba995;--mustard:#e2aa34;--coral:#ff592d;--green:#55d987;--hard-shadow:7px 7px 0 #050403}body{background:radial-gradient(circle at 12% 0%, #e2aa3414, transparent 28rem), var(--ink);color:var(--cream);font-family:Trebuchet MS,Inter,ui-sans-serif,system-ui,sans-serif}button,select{font:inherit}.app-shell{width:min(1180px,100% - 40px);margin-inline:auto;padding-block:56px 72px}.app-header-row{justify-content:space-between;align-items:center;gap:24px;display:flex}.station-header{min-width:0}.station-title-group{align-items:center;gap:18px;display:flex}.station-mark{aspect-ratio:1;border:3px solid var(--cream);background:#62add0;border-radius:50%;place-items:center;width:76px;min-width:76px;font-size:2rem;display:grid;box-shadow:5px 5px #050403}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.station-title{letter-spacing:-.065em;margin:0;font-size:clamp(2.35rem,6vw,4.65rem);font-weight:900;line-height:.95}.station-status-row{justify-content:flex-end;display:flex}.chart-row{flex-direction:column;min-height:0;display:flex}.live-badge{border:3px solid var(--cream);background:var(--panel);border-radius:999px;justify-content:center;align-items:center;gap:10px;width:12.5rem;padding:10px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;transition:border-color 1.2s,color 1.2s;display:inline-flex;box-shadow:4px 4px #050403}.live-dot{background:var(--green);border-radius:50%;width:10px;height:10px;transition:background-color 1.2s}.live-badge[data-state=delayed]{border-color:var(--mustard);color:var(--mustard)}.live-dot[data-state=delayed]{background:var(--mustard)}.live-badge[data-state=unavailable]{border-color:var(--coral);color:var(--coral)}.live-dot[data-state=unavailable]{background:var(--coral)}.status-label{text-align:center;white-space:nowrap;min-width:0}.language-switcher{border:3px solid var(--cream);background:var(--panel);border-radius:999px;flex-shrink:0;padding:3px;display:flex;box-shadow:4px 4px #050403}.language-button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:7px 11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:800}.language-button[data-active=true]{background:var(--mustard);color:var(--ink)}.weather-panel{border:3px solid var(--cream);background:radial-gradient(circle, #f5e8d417 2px, transparent 2px) 0 0 / 34px 34px, var(--panel);box-shadow:var(--hard-shadow);border-radius:26px;padding:26px}.chart-controls{justify-content:space-between;align-items:center;gap:24px;display:flex}.metric-title{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4vw,3.1rem);font-weight:900}.chart-actions{align-items:center;gap:12px;display:flex}.range-control{border:3px solid var(--cream);background:var(--ink);border-radius:999px;padding:3px;display:flex;box-shadow:4px 4px #050403}.range-button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px 13px;font-size:.86rem;font-weight:900}.range-button[data-active=true]{background:var(--mustard);color:var(--ink)}.metric-select{cursor:pointer;border:3px solid var(--cream);background:var(--panel-soft);color:var(--cream);border-radius:14px;padding:10px 36px 10px 13px;font-weight:800;box-shadow:4px 4px #050403}.chart-stage{background:#120f0bdb;border:2px solid #f5e8d447;border-radius:18px;height:350px;margin:26px 0 14px;padding:14px 12px 4px 0}.empty-chart{height:100%;color:var(--muted);place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.reading-status{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;display:flex}.next-reading{color:var(--green);align-items:center;gap:9px;transition:color 1.2s;display:flex}.next-reading[data-state=delayed]{color:var(--mustard)}.countdown-ring{border-radius:50%;flex-shrink:0;width:17px;height:17px;transition:color 1.2s;position:relative}@media (prefers-reduced-motion:reduce){.live-badge,.live-dot,.next-reading,.countdown-ring{transition:none}}.countdown-ring:after{background:var(--panel);content:"";border-radius:50%;position:absolute;inset:4px}.error-banner{border:3px solid var(--cream);background:var(--coral);color:var(--ink);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;padding:14px 16px;font-weight:900;display:flex;box-shadow:5px 5px #050403}.retry-button{cursor:pointer;border:3px solid var(--ink);background:var(--cream);color:var(--ink);border-radius:999px;padding:7px 13px;font-weight:900}@media (width<=760px){html,body,#root{min-height:100%}body{overflow-y:auto}.app-shell{width:min(100% - 22px,1180px);padding-block:42px 36px}.app-header-row,.chart-controls,.reading-status{flex-direction:column;align-items:flex-start}.station-status-row{margin-top:20px}.station-mark{width:58px;min-width:58px}.chart-actions{flex-direction:column;align-items:stretch;width:100%}.range-control{justify-content:space-between}.weather-panel{border-radius:20px;margin-top:30px;padding:16px}.chart-stage{height:240px;margin-top:20px}}@media (width>=761px){html,body,#root{height:100%}body{overflow:hidden}.app-shell{grid-template-rows:auto auto minmax(0,1fr);gap:12px;height:100%;padding-block:18px;display:grid}.station-mark{width:62px;min-width:62px}.station-title{font-size:clamp(2.35rem,5vw,3.7rem)}.chart-row,.weather-panel,.chart-stage{min-height:0}.weather-panel{flex-direction:column;height:100%;padding:20px;display:flex}.chart-stage{flex:1;height:auto;margin:16px 0 10px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
