:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--oway-indigo:#1e00ff;--oway-indigo-hi:#5236ff;--oway-orange:#f65c0e;--bg:#f5efe8;--bg-elevated:#fff;--panel-fill:#ffffffd6;--glass:#ffffffb8;--fill:#0a0a0b0a;--fill-hover:#0a0a0b0f;--fill-active:#0a0a0b1a;--fg:#0a0a0b;--fg-2:#0a0a0ba6;--fg-3:#0a0a0b80;--fg-on-indigo:#fff;--inverse:#0a0a0b;--on-inverse:#fff;--line-faint:#0a0a0b0f;--line:#0a0a0b1a;--line-strong:#0a0a0b33;--accent-soft:#1e00ff14;--accent-line:#1e00ff4d;--cell-weekly:#1e00ff0b;--cell-daily:#1e00ff1a;--oh-fill:#e9e4f8;--oh-fill-2:#dfd8f6;--oh-stroke:#1e00ff52;--lane:#1e00ff6b;--dot:#1e00ff;--dot-ring:#fff;--halo:#e6e0f7;--map-shadow:#1e00ff29;--sheen:inset 0 1px 0 #ffffffe6;--shadow-panel:0 6px 20px #0a0a0a0d;--shadow-sm:0 1px 2px #0a0a0a0f;--overlay-shadow:inset 0 0 1px #0a0a0b26,0 24px 60px #0a0a0a1f;--scrim:#0a0a0a66;--focus-ring:0 0 0 2px var(--bg-elevated),0 0 0 4px #1e00ffcc;--r:8px;--r-panel:16px;--font-sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--ease:cubic-bezier(.22,1,.36,1);--dur:.12s;--sky-1:246,92,14;--sky-2:74,37,236;--sky-mid:150,66,126;--sky-i:.9;--bg-canvas:radial-gradient(ellipse 105% 80% at 0% -5%,rgba(var(--sky-1),calc(.085*var(--sky-i))) 0%,transparent 58%), radial-gradient(ellipse 95% 70% at 20% 38%,rgba(var(--sky-mid),calc(.04*var(--sky-i))) 0%,transparent 62%), radial-gradient(ellipse 105% 95% at 58% 58%,rgba(var(--sky-mid),calc(.07*var(--sky-i))) 0%,transparent 68%), radial-gradient(ellipse 115% 105% at 102% 104%,rgba(var(--sky-2),calc(.11*var(--sky-i))) 0%,transparent 70%), var(--bg)}*{box-sizing:border-box}body{background:var(--bg);background-image:var(--bg-canvas);color:var(--fg);font:15px/1.5 var(--font-sans);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}button{font:inherit;color:inherit}:focus-visible{box-shadow:var(--focus-ring);outline:none}.wrap{max-width:1180px;margin:0 auto;padding:20px 24px 150px}.bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;display:flex}.brand{align-items:center;gap:14px;min-width:0;display:flex}.lockup{--lockup:24px;align-items:center;gap:calc(var(--lockup)*.533);display:flex}.chips-mark{height:calc(var(--lockup)*1.467);aspect-ratio:717/1270;flex:none;display:block}.chips-mark svg{width:100%;height:100%;display:block;overflow:visible}.lockup .wm{font-family:var(--font-sans);font-size:var(--lockup);letter-spacing:-.01em;color:var(--fg);font-weight:600;line-height:1}.brand .prod{border-left:1px solid var(--line-strong);white-space:nowrap;padding-left:14px;font-size:15px;font-weight:600}.for{align-items:center;gap:10px;font-size:14px;display:flex}.eyebrow{font:500 10.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.for b{font-weight:600}.intro{gap:12px;max-width:760px;margin-bottom:24px;display:grid}h1{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(30px,4vw,44px);font-weight:600;line-height:1.04}h1 .num{letter-spacing:-.05em;color:var(--oway-orange);font-weight:500}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-elevated);white-space:nowrap;height:26px;box-shadow:var(--shadow-sm);align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.chip .num{font-weight:600}.lede{color:var(--fg-2);max-width:60ch;margin:0;font-size:17px}.panel{background:var(--panel-fill);border-radius:var(--r-panel);box-shadow:var(--sheen),var(--shadow-panel);border:1px solid var(--line-faint);-webkit-backdrop-filter:blur(12px)saturate(150%);backdrop-filter:blur(12px)saturate(150%)}.mappanel{box-shadow:none;background:0 0;border:none;padding:0}#map{width:100%;height:clamp(400px,58vh,560px);display:block;overflow:visible}@media (width<=760px){#map{height:clamp(300px,50vh,400px)}}#map .oh{fill:url(#ohg);stroke:var(--oh-stroke)}#map .ohg1{stop-color:var(--oh-fill)}#map .ohg2{stop-color:var(--oh-fill-2)}#map feDropShadow{flood-color:var(--map-shadow)}#map .arc{fill:none;stroke:var(--lane);stroke-linecap:round;opacity:.38;transition:opacity var(--dur)}#map .arc.daily{stroke:var(--oway-indigo);opacity:1}#map .arc.weekly{stroke:var(--oway-indigo-hi);opacity:.9;stroke-dasharray:6 5}#map .arc.hi{opacity:1;stroke:var(--fg)}#map .city text{font-family:var(--font-sans);fill:var(--fg);paint-order:stroke;stroke:var(--halo);stroke-linejoin:round;font-weight:600}#map .city .z{font-family:var(--font-mono);fill:var(--fg-3);font-weight:500}.legend{color:var(--fg-2);flex-wrap:wrap;justify-content:center;gap:6px 20px;padding:4px 12px 0;font-size:13px;font-weight:500;display:flex}.legend span{align-items:center;gap:8px;display:flex}.legend .ln{border-top:3px solid;width:22px;height:0}.mhead{gap:4px;max-width:760px;margin:40px 0 16px;display:grid}.mhead h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:24px;font-weight:600;line-height:1.15}.mhead p{color:var(--fg-2);margin:0;font-size:14.5px}.mhead p b{color:var(--fg);font-weight:600}.tbl{border-radius:var(--r-panel);overflow-x:auto}table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1340px}thead th.corner{width:150px}th,td{padding:0}thead th{background:var(--bg-elevated);text-align:left;vertical-align:bottom;border-bottom:1px solid var(--line);z-index:1;padding:14px 10px 10px;font-weight:600;position:sticky;top:0}thead th.corner{z-index:3;white-space:nowrap;line-height:1.6;left:0}tbody th{background:var(--bg-elevated);text-align:left;border-right:1px solid var(--line);border-bottom:1px solid var(--line-faint);z-index:2;min-width:140px;padding:10px 16px;position:sticky;left:0}.hc{white-space:nowrap;font-size:13.5px;line-height:1.2;display:block}.hz{font:500 11px var(--font-mono);color:var(--fg-3);margin-top:3px;display:block}td{border-bottom:1px solid var(--line-faint);border-left:1px solid var(--line-faint);background:var(--bg-elevated)}tbody tr:last-child>*{border-bottom:none}.cell{min-height:78px;transition:background var(--dur) var(--ease);flex-direction:column;gap:7px;padding:9px 6px;display:flex}.cell.weekly{background:var(--cell-weekly)}.cell.daily{background:var(--cell-daily)}.meta{text-overflow:ellipsis;font:400 11px var(--font-mono);color:var(--fg-3);white-space:nowrap;position:relative;overflow:hidden}.meta b{color:var(--fg);font-weight:600}.meta .nm{font-family:var(--font-sans);color:var(--fg);font-size:11.5px;font-weight:600;display:none}.cell:hover .meta .mm,.cell:focus-within .meta .mm{display:none}.cell:hover .meta .nm,.cell:focus-within .meta .nm{display:inline}.seg{border:1px solid var(--line);border-radius:var(--r);background:var(--fill);gap:2px;padding:2px;display:flex}.opt{all:unset;cursor:pointer;text-align:center;letter-spacing:0;min-width:0;height:24px;color:var(--fg-2);white-space:nowrap;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease);border-radius:6px;flex:1 1 0;padding:0 4px;font-size:11px;font-weight:600;line-height:24px;overflow:hidden}.opt:hover{color:var(--fg);background:var(--bg-elevated)}.opt:active{transform:scale(.98)}.opt:focus-visible{box-shadow:var(--focus-ring)}.opt.w[aria-pressed=true]{background:var(--bg-elevated);color:var(--oway-indigo);box-shadow:inset 0 0 0 1px var(--accent-line),var(--shadow-sm)}.opt.d[aria-pressed=true]{background:var(--oway-indigo);color:var(--fg-on-indigo);box-shadow:var(--shadow-sm)}.help{color:var(--fg-2);margin:14px 2px 0;font-size:13.5px}.help .num{color:var(--fg);font-weight:600}.btn{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line);border-radius:var(--r);background:var(--fill-hover);height:36px;color:var(--fg);letter-spacing:-.01em;white-space:nowrap;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease),opacity var(--dur) var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover{background:var(--fill-active);border-color:var(--line-strong)}.btn:active:not([disabled]){opacity:.85;transform:scale(.98)}.btn:focus-visible{box-shadow:var(--focus-ring)}.btn.primary{background:var(--oway-indigo);color:var(--fg-on-indigo);border-color:#0000}.btn.primary:hover{background:var(--oway-indigo-hi)}.btn.ghost{color:var(--fg-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--fill);color:var(--fg)}.btn.sm{height:28px;padding:0 12px;font-size:13px}.btn[disabled]{opacity:.4;cursor:default}.btn.lg{height:40px;padding:0 22px;font-size:15px}.foot{padding:12px 24px calc(12px + env(safe-area-inset-bottom,0px));background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);border-top:1px solid var(--line);z-index:10;position:fixed;bottom:0;left:0;right:0}.foot .in{justify-content:space-between;align-items:center;gap:14px;max-width:1720px;margin:0 auto;display:flex}.foot .st{color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:14px;display:flex}.foot .st b{color:var(--fg);font-weight:600}.sw{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.sw.d{background:var(--oway-indigo)}.sw.w{background:var(--bg-elevated);box-shadow:inset 0 0 0 1.5px var(--oway-indigo-hi)}.toast{opacity:0;pointer-events:none;background:var(--inverse);color:var(--on-inverse);z-index:12;transition:opacity .16s var(--ease),transform .16s var(--ease);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:8px 8px 8px 16px;font-size:14px;display:flex;position:fixed;bottom:96px;left:50%;transform:translate(-50%,16px);box-shadow:0 16px 40px #0a0a0a38}.toast.on{opacity:1;pointer-events:auto;transform:translate(-50%)}.toast b{font-weight:600}.toast .x{all:unset;cursor:pointer;border-radius:var(--r);width:28px;height:28px;color:var(--on-inverse);opacity:.7;place-items:center;font-size:18px;line-height:1;display:grid}.toast .x:hover{opacity:1}.toast .x:focus-visible{box-shadow:var(--focus-ring)}.scrim{background:var(--scrim);z-index:20;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.scrim.on{display:flex}.modal{background:var(--bg-elevated);border-radius:var(--r-panel);width:min(460px,100%);box-shadow:var(--overlay-shadow);padding:24px}.modal h2{letter-spacing:-.02em;margin:0 0 6px;font-size:21px;font-weight:600}.modal p{color:var(--fg-2);margin:0 0 18px;font-size:14.5px}.field{gap:6px;margin-bottom:14px;display:grid}.field label{color:var(--fg-2);font-size:12.5px;font-weight:600}.field input,.field textarea{width:100%;font:inherit;color:var(--fg);background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r);height:38px;box-shadow:var(--shadow-sm);transition:border-color var(--dur) var(--ease);padding:0 12px;font-size:14.5px}.field textarea{resize:vertical;height:auto;min-height:76px;padding:9px 12px}.field input:hover,.field textarea:hover{border-color:var(--line-strong)}.field input:focus,.field textarea:focus{border-color:var(--oway-indigo);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field ::placeholder{color:var(--fg-3)}.modal .row{justify-content:flex-end;align-items:center;gap:8px;margin-top:6px;display:flex}.done{text-align:center}.done svg{width:56px;height:56px;margin:4px auto 14px;display:block}.done .ring{fill:none;stroke:var(--oway-indigo);stroke-width:3px;stroke-dasharray:157;stroke-dashoffset:157px;animation:draw .6s var(--ease) forwards}.done .tick{fill:none;stroke:var(--oway-indigo);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:32;stroke-dashoffset:32px;animation:draw .42s var(--ease) .38s forwards}@keyframes draw{to{stroke-dashoffset:0}}.wide{--W:max(100%,min(1720px,calc(100vw - 96px)));width:var(--W);margin-left:calc((100% - var(--W))/2)}.wide .hc{font-size:14px}@media (width>=1400px){.wide .cell{padding:10px 8px}.wide tbody th{padding:12px 18px}}@media (width<=760px){.wrap{padding:16px 16px 170px}.bar{margin-bottom:28px}.lockup{--lockup:21px}.lede{font-size:16px}.foot{padding-left:16px;padding-right:16px}.foot .in{flex-direction:column;align-items:stretch;gap:10px}.foot .st{justify-content:center;font-size:13.5px}.foot .btn{width:100%}.toast{bottom:140px}tbody th{min-width:124px;padding:10px 12px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.done .ring,.done .tick{stroke-dashoffset:0}}
