:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#070a10;--surface-1:#0f121a;--surface-2:#171b23;--surface-3:#20242e;--ink:#ebe5dc;--ink-soft:#acb1bc;--ink-muted:#7e838e;--accent:#eca938;--accent-strong:#da8a00;--danger:#f66e60;--ok:#5bc78e;--hairline:#ffffff12;--hairline-strong:#ffffff1c;--shadow-elevated:0 18px 50px #00000040;--radius-s:6px;--radius-m:10px;--radius-l:14px;--radius-pill:999px;--header-height:0px;--navigation-space:clamp(300px, 24vw, 420px);--font-ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-numeric:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", monospace;--font-display:"JetBrains Mono", var(--font-numeric);font-size:16px}@supports (color:lab(0% 0 0)){:root{--canvas:lab(2.71343% .0284314 -2.96205);--surface-1:lab(5.55497% .0137016 -5.35263);--surface-2:lab(9.53482% -.011988 -6.61939);--surface-3:lab(14.2814% -.0457466 -7.36642);--ink:lab(91.3326% .994504 5.26074);--ink-soft:lab(72.0837% -.216156 -6.02045);--ink-muted:lab(54.6715% -.197351 -6.74938);--accent:lab(74.3896% 18.3175 64.49);--accent-strong:lab(64.8146% 26.6921 76.9054);--danger:lab(63.591% 52.5925 34.6176);--ok:lab(72.7161% -42.3246 18.6471)}}*{box-sizing:border-box}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/JetBrainsMono-Light.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html,body{background:var(--canvas);min-height:100%;color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{touch-action:manipulation;-webkit-user-select:none;user-select:none;min-height:100svh;overflow-x:hidden}button,input{font:inherit}button{touch-action:manipulation}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:active:not(:disabled){transform:scale(.96)}.skip-link{z-index:100;border-radius:var(--radius-m);background:var(--ink);color:var(--canvas);padding:9px 12px;font-size:13px;font-weight:650;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}#navigation-wheel{z-index:20;width:var(--navigation-space);pointer-events:none;height:100svh;transition:transform .42s cubic-bezier(.22,1,.36,1);position:fixed;inset:0 auto 0 0;transform:translate(-100%)}#navigation-wheel.is-open{pointer-events:auto;transform:none}#navigation-wheel .option-wheel{pointer-events:none;overflow:visible}#navigation-wheel .option-wheel__item{pointer-events:auto}#navigation-wheel-toggle{z-index:21;width:36px;height:64px;color:var(--ink-soft);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);background:#090c129e;border:1px solid #ffffff2e;border-left:0;border-radius:0 18px 18px 0;place-items:center;padding:0;transition:background-color .18s,color .18s,width .18s;display:grid;position:fixed;top:50%;left:0;transform:translateY(-50%);box-shadow:0 10px 30px #00000052,inset 0 1px #ffffff24}#navigation-wheel-toggle span{font-size:28px;line-height:1;transform:translate(-1px)}#navigation-wheel-toggle:hover,#navigation-wheel-toggle:focus-visible{width:42px;color:var(--ink);background:#1b1e24cc}main{min-height:100svh;position:relative}.page{opacity:0;pointer-events:none;visibility:hidden;width:100%;min-height:100%;padding:clamp(20px,3.4vw,44px);transition:opacity .36s cubic-bezier(.22,1,.36,1),transform .46s cubic-bezier(.22,1,.36,1),visibility 0s linear .46s;position:absolute;inset:0;overflow:auto;transform:translate(24px)scale(.99)}.page.active{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:none}#page-clock{position:absolute}#page-world{padding:0}#clock-bg{background:#000;position:absolute;inset:0;overflow:hidden}#clock-bg:after{z-index:1;content:"";pointer-events:none;background:#090c1261;position:absolute;inset:0}#page-clock .clock-display{z-index:1;position:relative}.clock-panel{isolation:isolate;-webkit-backdrop-filter:blur(22px)saturate(1.35)brightness(1.08);backdrop-filter:blur(22px)saturate(1.35)brightness(1.08);background:linear-gradient(135deg,#ffffff2e,#ffffff0f 32%,#5227ff1a 68%,#ff9ffc1f) padding-box padding-box,padding-box padding-box,conic-gradient(from 210deg,#ffffff7a,#ff9ffc52 22%,#5227ff8a 52%,#fff3 78%,#ffffff7a);border:1px solid #0000;border-radius:32px;flex-direction:column;justify-content:center;align-items:center;gap:18px;width:min(92vw,920px);height:min(46vh,390px);display:flex;position:relative;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,0 24px 80px #0000006b,0 0 42px #5227ff1f}.clock-pip{width:42px;height:42px;color:var(--ink-soft);cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:14px;place-items:center;padding:0;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s,color .18s;display:grid;position:absolute;top:18px;right:18px}.clock-pip svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.clock-pip:hover{color:var(--ink);background:#ffffff29;transform:translateY(-2px)}.clock-pip:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.clock-pip.active{background:color-mix(in oklch, var(--ok) 18%, transparent);color:var(--ok)}.clock-panel>:not(.clock-pip){animation:.62s cubic-bezier(.22,1,.36,1) both clock-enter}.clock-panel>.clock-time{animation-delay:70ms}.clock-panel>.clock-meta{animation-delay:.14s}.clock-display{min-height:calc(100svh - var(--header-height) - clamp(40px, 6.8vw, 88px));text-align:center;justify-content:center;align-items:center;padding-bottom:6vh;display:flex}@keyframes clock-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.clock-time,.sw-time{color:var(--ink);font-family:var(--font-display);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum", "lnum"}.clock-time{letter-spacing:-.055em;font-size:clamp(58px,14vw,164px);font-weight:300;line-height:.96}.clock-date{color:var(--ink-muted);letter-spacing:.04em;text-wrap:balance;font-size:clamp(13px,1.6vw,15px);font-weight:520;line-height:1.6}.clock-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;max-width:100%;display:flex}.sync-badge{border-radius:var(--radius-pill);background:var(--surface-1);min-height:32px;color:var(--ink-soft);box-shadow:inset 0 0 0 1px var(--hairline);cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:560;transition-property:transform,background-color,color;transition-duration:.13s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:inline-flex}.sync-badge:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.sync-badge.ok{background:color-mix(in oklch, var(--ok) 8%, transparent);color:var(--ok);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--ok) 30%, transparent)}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.45}}.sync-badge.ok:before{animation:2.4s ease-in-out infinite sync-pulse}.sync-badge.bad{background:color-mix(in oklch, var(--danger) 8%, transparent);color:var(--danger);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--danger) 32%, transparent)}.sync-detail{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:12px;line-height:1.5}.world-layout{flex-direction:column;gap:0;width:100%;margin:0;display:flex}.world-side,.world-map-wrap{width:100%;box-shadow:none;background:0 0;border:0;border-radius:0}.world-side{border-top:1px solid var(--hairline);flex-direction:column;order:2;padding:20px 0 0;display:flex}.world-map-wrap{order:1;min-width:0;padding:0}.city-add-panel{z-index:2;position:relative}.city-add-controls{align-items:center;gap:8px;display:flex}#city-search-input{border-radius:var(--radius-m);background:var(--surface-2);min-width:0;min-height:44px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline);border:0;outline:0;flex:1;padding:10px 12px;font-size:14px;transition-property:box-shadow,background-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.16,1,.3,1)}#city-search-input::placeholder{color:var(--ink-muted)}#city-search-input:focus-visible{background:var(--surface-3);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--accent) 72%, transparent), 0 0 0 3px color-mix(in oklch, var(--accent) 13%, transparent)}.city-suggestions{z-index:20;border-radius:var(--radius-m);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--hairline-strong), 0 18px 40px #0000006b;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.city-suggestion{min-height:44px;color:var(--ink-soft);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;font-size:13px;display:flex}.city-suggestion+.city-suggestion{box-shadow:inset 0 1px var(--hairline)}.city-suggestion .tz{color:var(--ink-muted);font-family:var(--font-numeric);white-space:nowrap;font-size:11px}.city-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 24px;margin:16px 0 0;padding:0;list-style:none;display:grid}.city-item{min-height:52px;box-shadow:none;grid-template-columns:auto minmax(36px,1fr) auto 40px;align-items:center;gap:10px;padding:6px 2px 6px 10px;display:grid}.city-item.hover{background:color-mix(in oklch, var(--accent) 7%, transparent)}.city-add{border-radius:var(--radius-m);background:color-mix(in oklch, var(--accent) 12%, transparent);min-height:40px;color:var(--accent);box-shadow:none;cursor:pointer;border:0;align-self:flex-start;margin-top:18px;padding:8px 14px;font-size:13px;font-weight:650}.city-add-close{border-radius:var(--radius-m);width:40px;height:40px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;flex:0 0 40px;place-items:center;padding:0;font-size:20px;display:grid}.city-item .name{color:var(--ink);white-space:nowrap;font-size:14px;font-weight:650}.city-item .day{color:var(--ink-muted);font-size:11px}.city-item .time{color:var(--ink-soft);font-family:var(--font-numeric);font-variant-numeric:tabular-nums lining-nums;text-align:right;white-space:nowrap;font-size:15px}.city-item .remove{border-radius:var(--radius-m);width:40px;height:40px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:17px;transition-property:transform,color,background-color;transition-duration:.13s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:grid}#world-map{border-radius:0;outline:0;width:100%;height:auto;display:block}.sw-display{max-width:680px;min-height:calc(100svh - var(--header-height) - clamp(40px, 6.8vw, 88px));flex-direction:column;align-items:center;gap:18px;margin:0 auto;padding-top:clamp(3vh,6vh,70px);display:flex}.sw-time{letter-spacing:-.06em;font-size:clamp(52px,11.5vw,130px);font-weight:300;line-height:1}.sw-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(520px,100%);display:grid}.btn{border-radius:var(--radius-m);background:var(--surface-2);min-height:44px;color:var(--ink-soft);box-shadow:inset 0 0 0 1px var(--hairline);white-space:nowrap;cursor:pointer;border:0;padding:10px 16px;font-size:14px;font-weight:580;transition-property:transform,background-color,color,box-shadow;transition-duration:.13s;transition-timing-function:cubic-bezier(.16,1,.3,1)}.btn:disabled{color:color-mix(in oklch, var(--ink-muted) 50%, transparent);cursor:default;opacity:.56}.btn.primary{background:var(--accent);color:#170d05;color:lab(4.39645% 3.02226 4.62571);font-weight:720;box-shadow:inset 0 1px #ffffff3d,0 6px 16px #0000003d}.btn.active{color:var(--ok);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--ok) 46%, transparent)}.sw-preview,.pip-debug,.sw-laps{border-radius:var(--radius-l);background:var(--surface-1);width:min(520px,100%);box-shadow:inset 0 0 0 1px var(--hairline)}.sw-preview{color:var(--ink-muted);justify-content:space-between;align-items:center;gap:18px;padding:12px;font-size:12px;display:flex}.sw-preview-label{padding-left:3px;font-weight:560}.sw-preview-host{border-radius:var(--radius-m);background:var(--canvas);width:160px;height:90px;box-shadow:inset 0 0 0 1px var(--hairline-strong);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.sw-preview-host video{object-fit:cover;width:100%;height:100%;display:block}.pip-debug{color:var(--ink-muted);padding:12px 14px;font-size:12px}.pip-debug summary{cursor:pointer;min-height:24px}.pip-debug summary::marker{color:var(--accent)}.pip-debug pre{max-height:220px;color:var(--ink-soft);font-family:var(--font-numeric);white-space:pre-wrap;word-break:break-all;margin:12px 0;font-size:11px;line-height:1.6;overflow:auto}.pip-debug-actions{gap:8px;display:flex}.btn.small{min-height:40px;padding:8px 12px;font-size:12px}.sw-laps{flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.sw-laps:empty{display:none}.sw-laps li{min-height:44px;color:var(--ink-soft);box-shadow:inset 0 1px var(--hairline);font-family:var(--font-numeric);font-variant-numeric:tabular-nums lining-nums;grid-template-columns:1fr auto auto;align-items:baseline;gap:20px;padding:11px 14px;font-size:13px;display:grid}.sw-laps li:first-child{box-shadow:none}.sw-laps .lap-no{color:var(--ink-muted);font-family:var(--font-ui)}.pip-float{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:1000;border-radius:var(--radius-l);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--hairline-strong), 0 18px 50px #00000085;cursor:grab;touch-action:none;padding:14px 18px;position:fixed}.pip-float:active{cursor:grabbing}.pip-float-close{border-radius:var(--radius-m);width:40px;height:40px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:14px;display:grid;position:absolute;top:2px;right:4px}.pip-stopwatch{text-align:center;padding:12px 8px}.pip-clock{text-align:center;min-width:280px;padding:18px 24px}.pip-clock .pip-time{font-size:42px}.pip-date{color:var(--ink-muted);margin-top:6px;font-size:12px}.pip-time{font-family:var(--font-numeric);font-variant-numeric:tabular-nums lining-nums;font-size:34px;font-weight:400;line-height:1.2}.pip-state{color:var(--ink-muted);margin-top:4px;font-size:12px}.toast-root{bottom:max(24px, env(safe-area-inset-bottom));z-index:2000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-m);background:var(--ink);color:var(--canvas);white-space:nowrap;padding:10px 16px;font-size:13px;font-weight:620;box-shadow:0 14px 36px #0006}@media (hover:hover){.btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.sync-badge:not(.ok):not(.bad):hover{background:var(--surface-2);color:var(--ink)}.sync-badge.ok:hover{background:color-mix(in oklch, var(--ok) 13%, transparent)}.sync-badge.bad:hover{background:color-mix(in oklch, var(--danger) 13%, transparent)}.btn.primary:hover:not(:disabled){background:var(--accent-strong);color:#f6f1e9;color:lab(95.3884% .843316 4.50301)}.city-suggestion:hover{background:color-mix(in oklch, var(--accent) 8%, transparent);color:var(--ink)}.city-item .remove:hover,.pip-float-close:hover{background:color-mix(in oklch, var(--danger) 10%, transparent);color:var(--danger)}}@media (max-width:600px){:root{--navigation-space:280px}.page{padding:20px 12px}.clock-display{min-height:calc(100svh - var(--header-height) - 40px);padding-bottom:9vh}.clock-time{letter-spacing:-.065em;font-size:clamp(54px,18vw,78px)}.clock-date{font-size:13px}.sync-badge{max-width:100%;padding-inline:12px;font-size:11px}.world-layout{gap:0}.city-item{grid-template-columns:auto minmax(32px,1fr) auto 40px}.sw-display{min-height:calc(100svh - var(--header-height) - 40px);padding-top:3vh}.sw-time{font-size:clamp(48px,15vw,66px)}.sw-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-preview-host{width:144px;height:81px}}@media (max-width:340px){.page{padding-inline:10px}.city-item{gap:7px;padding-left:8px}.city-item .day{display:none}.sw-preview{gap:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.scanner-container{width:100%;height:100%;position:relative;overflow:hidden}.option-wheel{--ow-text-color:#a6a6a6;--ow-active-color:#fff;--ow-font-size:3rem;--ow-inset:80px;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;outline:none;width:100%;height:100%;position:relative;overflow:hidden}.option-wheel--dragging{cursor:grabbing}.option-wheel__item{top:50%;left:var(--ow-inset);white-space:nowrap;font-size:var(--ow-font-size);transform-origin:0;cursor:pointer;will-change:transform, opacity, filter;color:color-mix(in srgb, var(--ow-active-color) calc(var(--ow-p,0) * 100%), var(--ow-text-color));font-weight:200;line-height:1;position:absolute}.option-wheel--right .option-wheel__item{right:var(--ow-inset);transform-origin:100%;left:auto}.option-wheel__item--selected{font-weight:500}
