:root{--bg: #ffffff;--surface: #f8fafc;--ink: #181d26;--ink-soft: #41454d;--line: #dddddd;--sea: #f8fafc;--land: #ffffff;--land-stroke: #dddddd;--accent: #ffdc58;--on-accent: #000000;--accent-ink: #181d26;--on-livery: #ffffff;--link: #1b61c9;--focus: #458fff;--heat-amber: #f4d35e;--heat-orange: #fcab79;--heat-hot: #d9a441;--heat-max: #aa2d00;--boost-gold: #d9a441;--difficulty-easy: #006400;--difficulty-medium: #254fad;--difficulty-hard: #aa2d00;--difficulty-expert: #181d26;--on-difficulty: #ffffff;--danger: #aa2d00;--livery-kmb: #d71920;--livery-ctb: #fdb913;--livery-nlb: #00934b;--livery-mtr: #007dc5;--shadow-color: var(--ink);--shadow: 3px 3px 0 0 var(--shadow-color);--shadow-lg: 6px 6px 0 0 var(--shadow-color);--border-strong: var(--ink);--glass: color-mix(in srgb, var(--surface) 80%, transparent);--font-head: "Archivo Black", "Helvetica Neue", "PingFang HK", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-sans: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang HK", "PingFang TC", "Microsoft JhengHei", sans-serif;--fs-2xs: .6875rem;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-md: .875rem;--fs-base: .9375rem;--fs-lg: 1rem;--fs-xl: 1.0625rem;--fs-2xl: 1.1875rem;--fs-3xl: 1.375rem;--fs-4xl: 1.5rem;--fs-5xl: 1.625rem;--fs-6xl: 1.75rem;--r-xs: .125rem;--r-sm: .375rem;--r-md: .625rem;--r-lg: .75rem;--r-xl: .75rem;--r-2xl: .75rem;--r-3xl: .75rem;--r-pill: 9999px;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--kb-inset: 0px;color-scheme:light}body.dark{--bg: #181d26;--surface: #262a34;--ink: #ffffff;--ink-soft: #9297a0;--line: #333840;--sea: #131720;--land: #1d1f25;--land-stroke: #2e333d;--accent: #ffdc58;--on-accent: #000000;--accent-ink: #ffdc58;--danger: #fcab79;--difficulty-easy: #39bf45;--difficulty-medium: #458fff;--difficulty-hard: #d9a441;--difficulty-expert: #ffffff;--on-difficulty: #181d26;--heat-max: #d71920;--shadow-color: rgba(0, 0, 0, .6);--border-strong: #4a5262;--glass: color-mix(in srgb, var(--surface) 80%, transparent);color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);transition:background .25s ease,color .25s ease}h1,h2{font-family:var(--font-head);font-weight:400}button{font:inherit;color:inherit;cursor:pointer;border:none;background:none;padding:0}button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-xs)}.app-shell{min-height:100dvh;display:flex;flex-direction:column}main{flex:1;width:min(1080px,100%);margin:0 auto;padding:0 20px}.hidden-typing-input{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;border:none;padding:0}.topbar{width:min(1080px,100%);margin:0 auto;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:400;letter-spacing:.02em;font-size:var(--fs-base);white-space:nowrap}.brand-mark{width:24px;height:24px;display:block}.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.top-actions,.top-actions-desktop{display:flex;gap:8px}.top-actions-mobile{display:none}.location-picker{position:relative}.location-current{max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:190px;margin:0;padding:6px;list-style:none;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.location-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600;text-align:left}.location-option:not(:disabled):hover{background:var(--bg)}.location-option.active{color:var(--accent-ink);background:color-mix(in srgb,var(--accent) 18%,transparent)}.location-option:disabled{cursor:default;color:var(--ink-soft)}.location-soon{flex:none;font-size:var(--fs-2xs);font-weight:700;color:var(--ink-soft);border:1px solid var(--line);border-radius:var(--r-pill);padding:2px 7px;white-space:nowrap}.icon-button{display:flex;align-items:center;gap:5px;padding:8px 10px;border-radius:var(--r-md);background:var(--surface);border:2px solid var(--border-strong);box-shadow:var(--shadow);font-size:var(--fs-xs);font-weight:700;transition:transform .12s ease,border-color .12s ease}.icon-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--ink) 25%,var(--line))}.map-lights-inline.on{color:var(--boost-gold);border-color:color-mix(in srgb,var(--boost-gold) 55%,var(--border-strong));box-shadow:0 0 12px color-mix(in srgb,var(--boost-gold) 40%,transparent),var(--shadow)}footer{width:min(1080px,100%);margin:40px auto 0;padding:22px 20px 30px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;color:var(--ink-soft);font-size:var(--fs-xs)}.footer-brand{display:flex;flex-direction:column;gap:8px}.footer-wordmark{font-weight:500;letter-spacing:.04em;color:var(--ink)}.footer-lines{display:flex;gap:4px}.footer-lines i{width:16px;height:5px;border-radius:3px}.footer-meta{text-align:right}.footer-meta p{margin:4px 0}.footer-label{font-weight:700;margin-right:6px;letter-spacing:.06em}.footer-sep{margin:0 6px}footer a{color:var(--link)}.loading{display:flex;align-items:center;gap:10px;justify-content:center;padding:80px 0;color:var(--ink-soft)}.loading span{width:16px;height:16px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent-ink);animation:spin .8s linear infinite}.data-error{margin:60px auto;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;display:flex;flex-direction:column;gap:10px;text-align:center;box-shadow:var(--shadow)}.data-error button{align-self:center;padding:8px 18px;border-radius:var(--r-md);background:var(--accent);color:var(--on-accent);font-weight:700}.hk-map{width:100%;height:100%;display:block;background:var(--sea)}.hk-land{fill:var(--land);stroke:var(--land-stroke)}.hk-route polyline{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:opacity .25s ease}@keyframes overspeed-pulse{50%{box-shadow:0 0 14px color-mix(in srgb,var(--heat-hot) 55%,transparent)}}@keyframes overspeed-tremble{25%{transform:translate(.6px,-.4px)}75%{transform:translate(-.6px,.4px)}}.game-streak.streak-tier-1 strong{color:var(--heat-amber)}.game-streak.streak-tier-2 strong{color:var(--heat-orange)}.game-streak.streak-tier-2{animation:overspeed-pulse .7s ease-in-out infinite}.game-streak.streak-tier-3 strong{color:var(--heat-max)}.game-streak.streak-tier-3{animation:overspeed-pulse .35s ease-in-out infinite,overspeed-tremble .12s linear infinite}.hk-map.overview .hk-route polyline{opacity:.7}.hk-map.overview .hk-route:hover polyline{opacity:1}.hk-route.dimmed polyline{opacity:.18}.hk-route.unplayed polyline:not(.hk-route-hit){stroke:color-mix(in srgb,var(--ink) 22%,var(--bg))}body.dark .hk-map.overview .hk-route:not(.unplayed):not(.dimmed) polyline:not(.hk-route-hit){filter:brightness(1.18) saturate(1.25) drop-shadow(0 0 .5px var(--line-color)) drop-shadow(0 0 2px var(--line-color)) drop-shadow(0 0 6px var(--line-color))}.hk-backdrop{pointer-events:none}.hk-backdrop.dimmed{opacity:.25}.backdrop-line{fill:none;stroke:color-mix(in srgb,var(--ink) 14%,var(--bg));stroke-width:calc(.27px * var(--unit-scale, 1));stroke-linecap:round;stroke-linejoin:round}.backdrop-glow{fill:none;stroke:var(--livery);stroke-width:calc(.27px * var(--unit-scale, 1));stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}.backdrop-glow.lit,.hk-backdrop.all-lit .backdrop-glow{stroke-dashoffset:0}@media (prefers-reduced-motion: no-preference){.hk-route.daily:not(.dimmed) polyline:not(.hk-route-hit){animation:daily-blink 2.8s ease-in-out infinite}body.dark .hk-route.daily:not(.dimmed) polyline:not(.hk-route-hit){animation-name:daily-blink-dark}.backdrop-glow{transition:stroke-dashoffset .2s cubic-bezier(.33,1,.68,1) var(--lit-delay-rev, 0s)}.hk-backdrop.all-lit .backdrop-glow{transition-delay:var(--lit-delay, 0s)}.hk-route polyline:not(.hk-route-hit){transition:stroke .5s ease var(--draw-delay, 0s),filter 0s linear var(--draw-delay, 0s)}.landing-map .hk-route polyline:not(.hk-route-hit),.landing-map .backdrop-line{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-route .9s ease-out var(--draw-delay, 0s) forwards}.landing-map .hk-route.selected polyline:not(.hk-route-hit){animation:draw-route .45s ease-out forwards}.landing-map .hk-route.daily:not(.dimmed) polyline:not(.hk-route-hit){animation:draw-route .9s ease-out var(--draw-delay, 0s) forwards,daily-blink 2.8s ease-in-out 1.2s infinite}body.dark .landing-map .hk-route.daily:not(.dimmed) polyline:not(.hk-route-hit){animation:draw-route .9s ease-out var(--draw-delay, 0s) forwards,daily-blink-dark 2.8s ease-in-out 1.2s infinite}}@keyframes draw-route{to{stroke-dashoffset:0}}@keyframes daily-blink{0%,to{filter:saturate(1) brightness(1) drop-shadow(0 0 1px var(--line-color, #e60012))}50%{filter:saturate(.3) brightness(1.7) drop-shadow(0 0 6px var(--line-color, #e60012))}}@keyframes daily-blink-dark{0%,to{filter:saturate(1) brightness(1) drop-shadow(0 0 1px var(--line-color, #e60012))}50%{filter:saturate(.85) brightness(1.4) drop-shadow(0 0 7px var(--line-color, #e60012))}}.hk-route-hit{stroke:transparent;stroke-width:14;cursor:pointer;pointer-events:stroke}.hk-station{fill:var(--surface);stroke:var(--line-color, var(--accent))}.hk-station.done{fill:var(--line-color, var(--accent))}.hk-train{transition:transform .6s cubic-bezier(.35,.85,.35,1);pointer-events:none}.hk-train-body{transform-box:fill-box;transform-origin:center}.hk-train-body.shake{animation:train-shake .18s ease}@keyframes train-shake{25%{transform:translateY(-1.6px) rotate(-5deg)}75%{transform:translateY(1.6px) rotate(5deg)}}.hk-train-body.boost{animation:train-boost-pop .5s ease-out}@keyframes train-boost-pop{30%{transform:scale(1.35)}}.hk-train-boost-ring{fill:none;stroke:var(--boost-gold);animation:train-boost-ring .5s ease-out}@keyframes train-boost-ring{0%{r:8;stroke-width:2.2;opacity:.9}to{r:22;stroke-width:.3;opacity:0}}.station-sign{pointer-events:none}.station-sign-pop{animation:station-sign-pop 1.4s ease both}.station-sign text{font-family:inherit;text-anchor:middle;fill:#15181c}.station-sign-en{font-size:15px;font-weight:700}.station-sign-zh{font-size:17px;font-weight:600}@keyframes station-sign-pop{0%{opacity:0;transform:translateY(12px)}16%{opacity:1;transform:translateY(-3px)}26%{transform:translateY(0)}78%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.landing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1}.landing-map{position:absolute;top:0;right:0;bottom:0;left:0}.topbar.floating{position:fixed;top:0;left:0;right:0;z-index:20;width:100%}.landing-credits{position:absolute;right:12px;bottom:6px;z-index:5;margin:0;font-size:var(--fs-2xs);color:var(--ink-soft)}.landing-credits a{color:inherit}.map-lights-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--border-strong);background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--ink-soft);cursor:pointer;box-shadow:var(--shadow);transition:color .3s ease,box-shadow .3s ease}.map-lights-toggle:hover{color:var(--ink)}.map-lights-toggle.on{color:var(--boost-gold);box-shadow:0 0 14px color-mix(in srgb,var(--boost-gold) 45%,transparent),var(--shadow)}@media (min-width: 641px){.map-lights-toggle{position:absolute;left:20px;bottom:40px;z-index:10;display:inline-flex}}.island{position:absolute;left:50%;bottom:calc(max(40px,calc(env(safe-area-inset-bottom) + 20px)) + var(--kb-inset));transform:translate(-50%);z-index:10;width:min(880px,calc(100% - 28px));max-height:66dvh;overflow-y:auto;padding:18px 22px;border-radius:var(--r-3xl);border:2px solid var(--border-strong);background:var(--glass);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:var(--shadow-lg);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease}.island.docked{transform:translate(calc(50vw + 50%));opacity:0;pointer-events:none}.island:not(.game-island){background:linear-gradient(90deg,var(--livery-kmb) 0 25%,var(--livery-ctb) 25% 50%,var(--livery-nlb) 50% 75%,var(--livery-mtr) 75% 100%) top / 100% 4px no-repeat,var(--glass)}.island-handle-row{position:relative;display:flex;align-items:center}.island-handle{display:flex;justify-content:center;align-items:center;width:100%;padding:0 0 6px;color:var(--ink-soft)}.island-dock{display:inline-flex;position:absolute;top:-2px;right:0;align-items:center;justify-content:center;padding:4px;border-radius:var(--r-md);color:var(--ink-soft);transition:color .15s ease}.island-dock:hover{color:var(--ink)}.island-dock-tab{position:absolute;right:0;bottom:128px;z-index:11;display:inline-flex;align-items:center;justify-content:center;width:40px;height:48px;padding-left:4px;border:2px solid var(--border-strong);border-right:none;border-radius:var(--r-xl) 0 0 var(--r-xl);background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--ink-soft);cursor:pointer;box-shadow:var(--shadow);transform:translate(100%);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease,color .15s ease}.island-dock-tab.shown{transform:translate(0);opacity:1;pointer-events:auto}.island-dock-tab:hover{color:var(--ink)}.island.collapsed .line-strip,.island.collapsed .island-controls,.island.collapsed .island-title p,.island.collapsed .operator-group,.island.collapsed .search-group,.island.collapsed .island-hint{display:none}.island.collapsed .island-title h1{font-size:var(--fs-base)}.island.collapsed.game-island .game-stats,.island.collapsed.game-island .station-names,.island.collapsed.game-island .game-progress{display:none}.island.collapsed.game-island .typing-panel{padding-top:0}.island-title h1{margin:0;font-size:var(--fs-2xl);letter-spacing:.05em}.island-title p{margin:3px 0 12px;font-size:var(--fs-sm);color:var(--ink-soft)}.line-strip{display:flex;flex-wrap:wrap;gap:8px}.island-title{position:relative}.type-switch{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.type-button{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-xs);font-weight:650;white-space:nowrap;transition:border-color .12s ease}.type-button:not(.active):hover{border-color:var(--line-color, var(--accent))}.type-button svg{flex:0 0 auto}.type-button.active{color:var(--line-color);border-color:var(--line-color);box-shadow:inset 0 0 0 1px var(--line-color)}.line-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 8px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);font-size:var(--fs-sm);font-weight:650;transition:transform .12s ease,border-color .12s ease}.line-pill:hover{transform:translateY(-2px);border-color:var(--line-color)}.route-pill{padding:4px}.route-pill.named-pill{padding:5px 12px 5px 5px}.line-pill-name{font-size:var(--fs-xs);font-weight:650;white-space:nowrap}.operator-group,.random-group{margin-top:var(--sp-4)}.random-group .island-label{display:inline-flex;align-items:center;gap:5px;margin-bottom:7px}.random-button[disabled]{opacity:.5;cursor:progress}.operator-group .operator-label{display:block;margin-bottom:7px;color:var(--line-color)}.search-group{margin-bottom:var(--sp-2)}.search-field{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--r-sm);border:2px solid var(--border-strong);background:var(--surface);color:var(--ink-soft);box-shadow:2px 2px 0 0 var(--shadow-color);transition:outline-color .12s ease}.search-field:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search-field input{flex:1;border:none;outline:none;background:transparent;color:var(--ink);font:inherit;font-size:var(--fs-sm)}.search-status{margin:8px 0 0;font-size:var(--fs-xs);color:var(--ink-soft)}.search-results{list-style:none;margin:8px 0 0;padding:0;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.search-result{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border-radius:var(--r-md);border:1px solid transparent;background:transparent;font-size:var(--fs-sm);font-weight:600;text-align:left}.search-result:hover,.search-result:focus-visible{border-color:var(--line);background:var(--surface)}.search-result-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-note{font-size:var(--fs-2xs);color:var(--ink-soft)}.search-result-note.error{color:var(--danger)}.difficulty-badge{flex-shrink:0;padding:1px 7px;border-radius:var(--r-pill);font-size:var(--fs-2xs);font-weight:700;line-height:1.5;color:var(--on-difficulty);white-space:nowrap;vertical-align:middle}.search-result .difficulty-badge{margin-left:auto}.try-tag{padding:1px 6px;border-radius:var(--r-pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-2xs);font-weight:700;line-height:1.4;white-space:nowrap}.difficulty-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.difficulty-easy{background:var(--difficulty-easy)}.difficulty-medium{background:var(--difficulty-medium)}.difficulty-hard{background:var(--difficulty-hard)}.difficulty-expert{background:var(--difficulty-expert)}.leaderboard-panel{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:4px}.leaderboard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.leaderboard-list li{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;padding:8px 12px;border-radius:var(--r-sm);font-size:var(--fs-sm)}.leaderboard-list li:nth-child(odd){background:var(--surface)}.leaderboard-me{outline:2px solid var(--line-color);font-weight:700}.leaderboard-rank{width:1.4em;text-align:right;color:var(--ink-soft);font-variant-numeric:tabular-nums}.leaderboard-name{flex:1;overflow-wrap:anywhere}.leaderboard-score{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.island-head{display:flex;align-items:center;gap:11px}.island-head .back-button{padding:6px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface)}.island-head .line-names{flex:1;display:flex;flex-direction:column}.island-head .line-names strong{font-size:var(--fs-xl)}.island-head .line-names small{display:inline-flex;align-items:center;gap:4px;color:var(--ink-soft);font-size:var(--fs-xs)}.island-head .start-button{padding:10px 18px;font-size:var(--fs-md)}.island-controls{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 22px;margin-top:14px}.island-group{display:flex;flex-direction:column;gap:6px}.island-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);font-weight:700}.island .option-button,.island .direction-button{padding:7px 11px;font-size:var(--fs-xs);border-radius:var(--r-md)}.island .start-hint{margin-top:12px}.station-select{font:inherit;font-size:var(--fs-sm);font-weight:600;color:inherit;padding:8px 10px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);min-width:170px}.start-button:disabled{background:var(--line);color:var(--ink-soft);cursor:not-allowed;box-shadow:none;filter:none}.line-chip{min-width:40px;padding:5px 7px;border-radius:var(--r-sm);color:var(--on-livery);font-weight:600;font-size:var(--fs-xs);text-align:center;letter-spacing:.04em}.line-chip.large{min-width:52px;font-size:var(--fs-base);padding:9px 8px}.line-names{display:flex;flex-direction:column;flex:1}.line-names small{color:var(--ink-soft)}.back-button{display:inline-flex;align-items:center;gap:4px;color:var(--ink-soft);font-size:var(--fs-sm);font-weight:600;align-self:flex-start}.back-button:hover{color:var(--ink)}.option-row{display:flex;flex-wrap:wrap;gap:10px}.option-button,.direction-button{padding:9px 14px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-sm);font-weight:600;display:inline-flex;align-items:center;gap:7px}.option-button.active{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.start-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:var(--r-xl);background:var(--accent);color:var(--on-accent);font-size:var(--fs-lg);font-weight:500;letter-spacing:0;box-shadow:var(--shadow);transition:filter .12s ease,transform .12s ease}.start-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.start-hint{margin:0;font-size:var(--fs-xs);color:var(--ink-soft);text-align:center}.ghost-button{padding:12px 18px;border-radius:var(--r-xl);border:1px solid var(--line);background:var(--surface);font-weight:700}.game{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1}.game-map-bg{position:absolute;top:0;right:0;bottom:0;left:0;contain:layout paint}.game-top{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px}.game-top-right{display:flex;align-items:stretch;gap:8px}.game-top .back-button,.game-top .sound-button,.game-line,.game-timer{background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:8px 12px}.game-line{display:flex;align-items:center;gap:9px;font-size:var(--fs-md)}.game-timer{display:flex;align-items:baseline;gap:7px;min-width:88px;justify-content:flex-end}.game-timer small{color:var(--ink-soft);font-size:var(--fs-2xs)}.game-timer strong{font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;color:var(--accent-ink)}.game-island{width:min(760px,calc(100% - 28px));border-top:4px solid var(--line-color, var(--accent))}.typing-panel{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:14px}.typing-panel.shake{animation:shake .18s ease}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.station-names{text-align:center}.station-names small{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft)}.station-names h2{margin:4px 0 0;font-size:var(--fs-6xl)}.station-names p{margin:2px 0 0;color:var(--ink-soft);font-size:var(--fs-base)}.target{display:flex;flex-wrap:wrap;justify-content:center;gap:1px;font-size:var(--fs-5xl);font-weight:700;font-family:SF Mono,Menlo,Consolas,monospace}.target-word{display:flex;gap:1px}.target-char{display:inline-block;padding:1px 2px;border-bottom:3px solid transparent;color:var(--ink-soft);white-space:pre}.target-char.typed{color:var(--line-color, var(--accent))}.target-char.current{border-bottom-color:var(--line-color, var(--accent));color:var(--ink)}@media (prefers-reduced-motion: no-preference){.target-char.current{animation:char-pop .16s ease-out;transform-origin:bottom center}.station-name-current{animation:stop-cleared .42s cubic-bezier(.34,1.56,.64,1)}}@keyframes char-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes stop-cleared{0%{opacity:.2;transform:translateY(5px) scale(.96)}to{opacity:1;transform:none}}.composition{min-height:24px;font-size:var(--fs-xl);color:var(--ink-soft)}.tap-hint{display:none;margin:0;font-size:var(--fs-xs);color:var(--ink-soft)}.game-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-bottom:1px solid var(--line);padding-bottom:12px}.game-stats>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}.game-stats small{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}.game-stats strong{font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;color:var(--accent-ink)}.game-progress{display:none;flex-direction:column;gap:7px}.game-progress-labels{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--fs-xs);line-height:1.2}.game-progress-labels .from{color:var(--ink-soft);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-progress-labels .to{font-weight:700;color:var(--ink);text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-progress-track{display:flex;align-items:center;gap:6px;height:18px}.game-progress-dot{flex:none;width:10px;height:10px;border-radius:50%;border:2px solid var(--line-color, var(--accent));background:var(--surface)}.game-progress-dot.from{background:var(--line-color, var(--accent))}.game-progress-line{position:relative;flex:1;height:3px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--line) 70%,transparent)}.game-progress-fill{position:absolute;inset:0 auto 0 0;height:100%;border-radius:var(--r-pill);background:var(--line-color, var(--accent));transition:width .12s ease-out}.game-progress-bus{position:absolute;top:50%;transform:translate(-50%,-50%) scaleX(-1);font-size:var(--fs-base);line-height:1;pointer-events:none;transition:left .12s ease-out}.result{display:flex;justify-content:center;padding:60px 0}.result-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);border-top:5px solid var(--line-color);box-shadow:var(--shadow);padding:34px 38px;display:flex;flex-direction:column;align-items:center;gap:18px;max-width:480px;width:100%}.result-confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:2}.confetti-piece{position:absolute;top:-8%;left:var(--x);width:7px;height:11px;border-radius:1px;opacity:0}.result-card svg{color:var(--line-color)}.result-card h1{margin:0;font-size:var(--fs-4xl);text-align:center;text-wrap:balance}.result-expired-note{margin:0;max-width:34ch;text-align:center;text-wrap:balance;color:var(--ink-soft);font-size:var(--fs-sm)}.result-route{display:flex;flex-direction:column;align-items:center;gap:8px;justify-content:center;margin-top:-8px;max-width:100%;text-align:center}.result-route strong{max-width:100%;overflow-wrap:break-word;text-wrap:balance}.result-run{display:flex;flex-direction:column;align-items:center;gap:4px;max-width:100%}.result-run-endpoint{display:block}.result-run-arrow{color:var(--ink-soft);flex-shrink:0}.result-mode-label{font-size:var(--fs-xs);color:var(--ink-soft);border:1px solid var(--line);border-radius:var(--r-pill);padding:2px 10px}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:100%;text-align:center}.result-stats small{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);display:block}.result-stats strong{font-size:var(--fs-5xl);font-variant-numeric:tabular-nums;color:var(--accent-ink)}.result-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.result-actions .start-button{padding:12px 18px;font-size:var(--fs-base)}@media (prefers-reduced-motion: no-preference){.landing,.game,.result{animation:screen-in .32s ease both}}@keyframes screen-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: no-preference){.result-card{animation:result-card-in .5s cubic-bezier(.22,1,.36,1) both}.result-card>svg{animation:result-bus-in .7s cubic-bezier(.22,1,.36,1) .1s both}.result-card h1{animation:result-pop .5s cubic-bezier(.34,1.56,.64,1) .22s both}.result-stat{animation:result-rise .5s ease-out both;animation-delay:calc(.12s + var(--i, 0) * .09s)}.result-card.won{animation:result-card-in .5s cubic-bezier(.22,1,.36,1) both,result-won-glow 1.7s ease-out .3s}.confetti-piece{animation:confetti-fall 1.5s cubic-bezier(.4,.1,.7,1) var(--delay) forwards}}@keyframes result-won-glow{0%,to{box-shadow:var(--shadow)}40%{box-shadow:0 0 0 1px var(--line-color),0 10px 44px -6px var(--line-color)}}@keyframes confetti-fall{0%{opacity:0;transform:translate(0) rotate(0)}12%{opacity:1}to{opacity:0;transform:translate(var(--drift),440px) rotate(var(--spin))}}@keyframes result-card-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}@keyframes result-bus-in{0%{opacity:0;transform:translate(-34px)}60%{opacity:1}to{opacity:1;transform:none}}@keyframes result-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}@keyframes result-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (pointer: coarse){.start-hint{display:none}}@media (max-width: 640px){.top-actions-desktop{display:none}.top-actions-mobile{display:flex;align-items:center;gap:8px}.island{width:calc(100% - 16px);bottom:max(48px,calc(env(safe-area-inset-bottom) + 38px));padding:13px 14px;border-radius:var(--r-2xl)}.island-title h1{font-size:var(--fs-xl)}.island-title p{margin-bottom:10px;font-size:var(--fs-xs)}.landing-credits{right:10px;font-size:var(--fs-2xs)}.game{display:flex;flex-direction:column}.game-map-bg{z-index:0}.game-top .back-button,.game-top .sound-button,.game-line,.game-timer,.game-island{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,var(--surface) 94%,transparent)}.game-top{position:relative;flex-wrap:wrap;z-index:20}.game-top-right{flex-wrap:wrap;justify-content:flex-end}.game-island{position:relative;top:auto;bottom:auto;transform:none;left:auto;align-self:center;margin-top:8px;max-height:none;z-index:10}.game-island .game-stats,.game-island .station-names{display:none}.game-island .game-progress{display:flex}.game-island .typing-panel{padding-top:12px;gap:6px}.line-strip{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.line-pill{white-space:nowrap}.island-head{gap:8px}.island-head .line-names strong{font-size:var(--fs-md)}.island-head .line-names small{font-size:var(--fs-2xs)}.island-head .start-button{padding:9px 14px;font-size:var(--fs-sm)}.select-group{flex:1 1 150px;min-width:0}.station-select{width:100%;min-width:0}.game-top{padding:10px 12px}.game-top .back-label{display:none}.game-timer{white-space:nowrap}.game-line{min-width:0;flex:0 1 auto}.game-line strong{font-size:var(--fs-sm);min-width:0;overflow-wrap:anywhere}}@media (max-width: 820px){.island{padding:14px 16px}.island-head .line-names strong{font-size:var(--fs-base)}.island-controls{gap:10px 16px}.game-stats,.result-stats{grid-template-columns:repeat(2,1fr)}.station-names h2{font-size:var(--fs-4xl)}.target{font-size:var(--fs-3xl)}.tap-hint{display:block}}.auth-avatar-button .auth-avatar{width:22px;height:22px;border-radius:50%;display:block}.google-signin{display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 14px;border-radius:var(--r-md);background:#fff;color:#1f1f1f;border:2px solid var(--border-strong);box-shadow:var(--shadow);font-size:var(--fs-sm);font-weight:700;transition:transform .12s ease,border-color .12s ease}.google-signin:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--ink) 25%,var(--line))}.leaderboard-name{display:inline-flex;align-items:center;flex-wrap:wrap;gap:0 6px;min-width:0}.leaderboard-avatar{width:16px;height:16px;border-radius:50%;flex-shrink:0}.leaderboard-handle{color:var(--ink-soft);font-weight:400}.leaderboard-verified{color:var(--accent-ink);font-weight:700;flex-shrink:0}.daily-card{display:flex;flex-direction:column;gap:10px;margin:var(--sp-3) 0 var(--sp-4);padding:var(--sp-3) 14px;border:2px solid var(--border-strong);border-left:4px solid var(--line-color, var(--accent));border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.daily-card .island-label{display:inline-flex;align-items:center;gap:5px}.daily-route{display:flex;align-items:center;gap:8px;min-width:0}.daily-route-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-sm);font-weight:600}.daily-play{border-color:var(--line-color, var(--accent));font-weight:700}.challenge-modal{display:flex;flex-direction:column;gap:var(--sp-3)}.challenge-map{height:180px;padding:6px;border:2px solid var(--border-strong);border-radius:var(--r-lg);background:var(--map-bg, var(--surface-sunk, var(--surface)));overflow:hidden}.challenge-map .hk-map{width:100%;height:100%}.challenge-route{align-items:center}.challenge-route .daily-route-name{white-space:normal;font-size:var(--fs-md)}.challenge-tagline{margin:0;font-size:var(--fs-sm);color:var(--ink-soft)}.challenge-actions{display:flex;gap:var(--sp-2)}.challenge-actions .challenge-play{flex:1;border-color:var(--line-color, var(--accent));font-weight:700}.daily-board{display:flex;flex-direction:column;gap:12px}.daily-board-tabs{flex-wrap:wrap;gap:8px 10px}.daily-board-spacer{flex:1}.daily-board-pager{display:flex;align-items:center;justify-content:center;gap:var(--sp-2)}.daily-board-pager .option-button{padding:5px 12px}.daily-board-pager .option-button:disabled{opacity:.4}.daily-board-pager-info{min-width:3.5em;text-align:center;font-size:var(--fs-sm);color:var(--ink-soft);font-variant-numeric:tabular-nums}.daily-board-route{margin:0;font-size:var(--fs-xs);color:var(--ink-soft)}.leaderboard-you-pin{margin-top:6px;padding-top:6px;border-top:1px dashed var(--line)}.daily-result-you{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:6px}.daily-result-rank{font-weight:700;font-variant-numeric:tabular-nums}.daily-result-points{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.daily-result-caveat{flex-basis:100%;margin:0;font-size:var(--fs-xs)}.daily-result-top{margin-top:8px}.gallery-score{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-3)}.daily-score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.daily-score-list li{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:6px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm)}.daily-score-list li:nth-child(odd){background:var(--surface)}.daily-score-day{color:var(--ink-soft);font-variant-numeric:tabular-nums}.daily-score-board{flex:1;overflow-wrap:anywhere}.daily-score-rank{color:var(--ink-soft);font-variant-numeric:tabular-nums}.daily-score-points{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.daily-board-dialog{width:min(560px,100%);max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);box-shadow:var(--shadow-lg)}.daily-board-dialog h2{display:inline-flex;align-items:center;gap:var(--sp-2);margin:0;font-size:var(--fs-2xl)}.top-options{display:none}@media (min-width: 641px){.island:not(.game-island){left:auto;right:20px;transform:none;width:min(480px,calc(100% - 40px))}.top-options{position:fixed;top:74px;left:50%;transform:translate(-50%);z-index:25;display:flex;align-items:center;gap:14px;padding:8px 14px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.top-option{display:flex;align-items:center;gap:var(--sp-2)}.top-option .station-select{min-width:0}.island .mode-group,.island .typing-group{display:none}}.streak-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);font-size:var(--fs-xs);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;--streak-color: var(--heat-amber);color:var(--streak-color)}.streak-chip small{color:var(--ink-soft);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.08em}.streak-chip.dormant{--streak-color: var(--ink-soft);color:var(--ink-soft)}.streak-heat-1{--streak-color: var(--heat-amber)}.streak-heat-2{--streak-color: var(--heat-orange)}.streak-heat-3{--streak-color: var(--heat-hot)}.streak-heat-4{--streak-color: var(--boost-gold)}.streak-chip:not(.dormant) svg{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--streak-color) 55%,transparent))}.achievements-panel{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:4px}.achievements-panel-body{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.achievements-unlocked{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.achievements-unlocked-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--boost-gold)}.achievements-unlocked-list{display:flex;flex-wrap:wrap;gap:6px}@media (prefers-reduced-motion: no-preference){.achievements-unlocked-list .achievement-badge{animation:achievement-reveal .5s cubic-bezier(.34,1.56,.64,1) both}.achievements-unlocked-list .achievement-badge:nth-child(1){animation-delay:.7s}.achievements-unlocked-list .achievement-badge:nth-child(2){animation-delay:.84s}.achievements-unlocked-list .achievement-badge:nth-child(3){animation-delay:.98s}.achievements-unlocked-list .achievement-badge:nth-child(4){animation-delay:1.12s}.achievements-unlocked-list .achievement-badge:nth-child(n+5){animation-delay:1.26s}.achievements-unlocked-list .achievement-icon{animation:achievement-icon-glow .9s ease-out both;animation-delay:inherit}}@keyframes achievement-reveal{0%{opacity:0;transform:scale(.6) translateY(6px)}to{opacity:1;transform:none}}@keyframes achievement-icon-glow{0%,to{box-shadow:0 0 0 0 transparent}45%{box-shadow:0 0 12px 1px currentColor}}.achievement-badge{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}.achievement-badge.compact{padding:5px 9px 5px 5px;border-radius:var(--r-pill)}.achievement-badge.locked{opacity:.55}.achievement-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:var(--r-sm);color:var(--ink-soft);background:color-mix(in srgb,var(--ink-soft) 14%,transparent)}.achievement-badge.compact .achievement-icon{width:26px;height:26px;border-radius:50%}.achievement-icon.difficulty-easy{color:var(--difficulty-easy);background:color-mix(in srgb,var(--difficulty-easy) 16%,transparent)}.achievement-icon.difficulty-medium{color:var(--difficulty-medium);background:color-mix(in srgb,var(--difficulty-medium) 16%,transparent)}.achievement-icon.difficulty-hard{color:var(--difficulty-hard);background:color-mix(in srgb,var(--difficulty-hard) 16%,transparent)}.achievement-icon.difficulty-expert{color:var(--difficulty-expert);background:color-mix(in srgb,var(--difficulty-expert) 16%,transparent)}.achievement-icon.achievement-gold{color:var(--boost-gold);background:color-mix(in srgb,var(--boost-gold) 20%,transparent)}.achievement-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.achievement-meta strong{font-size:var(--fs-sm);font-weight:700}.achievement-badge.compact .achievement-meta strong{font-size:var(--fs-xs)}.achievement-meta small{font-size:var(--fs-2xs);color:var(--ink-soft)}.gallery-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:color-mix(in srgb,var(--bg) 55%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.achievements-gallery{width:min(560px,100%);max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2xl);box-shadow:var(--shadow-lg)}.gallery-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.gallery-header h2{margin:0;font-size:var(--fs-2xl)}.gallery-summary{display:flex;flex-wrap:wrap;gap:10px}.gallery-stat{display:flex;flex-direction:column;gap:2px;flex:1;min-width:72px;padding:10px;border-radius:var(--r-md);background:var(--bg);text-align:center}.gallery-stat strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.gallery-stat small{font-size:var(--fs-2xs);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.gallery-streak{display:inline-flex;align-items:center;gap:4px;justify-content:center;color:var(--heat-orange)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.guide-section-title{margin:0;font-size:var(--fs-xs);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.guide-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.guide-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--r-md);background:var(--bg)}.guide-item-icon{display:inline-flex;flex-shrink:0;color:var(--ink-soft)}.guide-item-body{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.guide-item-body small{font-size:var(--fs-xs);color:var(--ink-soft)}.guide-flag{flex-shrink:0;display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:var(--r-pill);border:1px solid var(--line);color:var(--ink-soft);font-size:var(--fs-2xs);font-weight:700;line-height:1.6;white-space:nowrap}.guide-flag.done{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.more-pill{color:var(--ink-soft);border-style:dashed}.more-pill:hover{border-color:var(--ink-soft)}.browse-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.browse-row{width:100%;display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);font-size:var(--fs-sm);font-weight:650;text-align:left;transition:border-color .12s ease}.browse-row:hover{border-color:var(--line-color)}.browse-row:disabled{opacity:.5}.browse-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}/*! 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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--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-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang HK", "PingFang TC", "Microsoft JhengHei", sans-serif;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--leading-snug:1.375;--radius-sm:.25rem;--radius-xl:.75rem;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--animate-spin:spin 1s linear infinite;--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-head:"Archivo Black", "Helvetica Neue", "PingFang HK", "PingFang TC", "Microsoft JhengHei", sans-serif}}.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{top:0;right:0;bottom:0;left:0}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-100{top:calc(var(--spacing) * 100)}.right-2{right:calc(var(--spacing) * 2)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.my-1{margin-block:var(--spacing)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-px{height:1px}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[85vh\]{max-height:85vh}.w-64{width:calc(var(--spacing) * 64)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-36{min-width:calc(var(--spacing) * 36)}.flex-1{flex:1}.shrink{flex-shrink:1}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-my-1{scroll-margin-block:var(--spacing)}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.375rem}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-border{border-color:var(--border-strong)}.bg-background{background-color:var(--bg)}.bg-border{background-color:var(--border-strong)}.bg-card{background-color:var(--surface)}.bg-destructive{background-color:var(--danger)}.bg-foreground\/20{background-color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.bg-foreground\/20{background-color:color-mix(in oklab,var(--ink) 20%,transparent)}}.bg-input,.bg-muted\/50{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--surface) 50%,transparent)}}.bg-popover{background-color:var(--surface)}.bg-primary{background-color:var(--accent)}.bg-secondary{background-color:var(--surface)}.bg-transparent{background-color:#0000}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.font-head{font-family:Archivo Black,Helvetica Neue,PingFang HK,PingFang TC,Microsoft JhengHei,sans-serif}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--ink)}.text-destructive{color:var(--danger)}.text-destructive-foreground{color:var(--on-accent)}.text-foreground{color:var(--ink)}.text-muted-foreground{color:var(--ink-soft)}.text-popover-foreground{color:var(--ink)}.text-primary-foreground{color:var(--on-accent)}.text-secondary-foreground{color:var(--ink)}.lowercase{text-transform:lowercase}.shadow-md{--tw-shadow:4px 4px 0 0 var(--tw-shadow-color,var(--shadow-color));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:2px 2px 0 0 var(--tw-shadow-color,var(--shadow-color));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}@media (hover:hover){.hover\:translate-y-1:hover{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-accent:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent:hover{background-color:color-mix(in srgb,var(--accent) 12%,var(--bg))}}.hover\:bg-destructive\/90:hover{background-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--danger) 90%,transparent)}}.hover\:bg-primary-hover:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary-hover:hover{background-color:color-mix(in srgb,var(--accent) 90%,var(--ink))}}.hover\:bg-secondary-hover:hover{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary-hover:hover{background-color:color-mix(in srgb,var(--surface) 90%,var(--ink))}}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:bg-accent:focus{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus\:bg-accent:focus{background-color:color-mix(in srgb,var(--accent) 12%,var(--bg))}}.focus\:text-accent-foreground:focus,:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--ink)}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-primary:focus-visible{outline-color:var(--accent)}.focus-visible\:outline-ring:focus-visible{outline-color:var(--focus)}.active\:translate-x-1:active{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:translate-y-2:active{--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:shadow-none:active{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--danger)}.data-disabled\:pointer-events-none[data-disabled]{pointer-events:none}.data-disabled\:opacity-50[data-disabled]{opacity:.5}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--ink-soft)}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[position\=popper\]\:h-\(--radix-select-trigger-height\)[data-position=popper]{height:var(--radix-select-trigger-height)}.data-\[position\=popper\]\:w-full[data-position=popper]{width:100%}.data-\[position\=popper\]\:min-w-\(--radix-select-trigger-width\)[data-position=popper]{min-width:var(--radix-select-trigger-width)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:rounded[data-size=sm]{border-radius:.375rem}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}@media (min-width:64rem){.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:py-3{padding-block:calc(var(--spacing) * 3)}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}.data-open\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-open\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-closed\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-closed\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--ink)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
