:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-color:#121212;--text-color:#fff;--card-bg:#1e1e1e;--border:#333;--toolbar-bg:#2c2c2c;--input-bg:#444;--input-text:#fff;--subtext-color:#aaa;--status-good:#0f0;--status-bad:#f44;--btn-danger:#c00;--grid-line:#ffffff0f;--tfl-station-title:#fff;--arrival-time-color:#fa0;--kmb-red:#ed1d24;--lwb-orange:#fd8204;--ctb-yellow:#f8cc00;--ctb-blue:#036;--nlb-green:#00845b;--tfl-bus-red:#dc241f}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-color:#f0f0f5;--text-color:#111;--card-bg:#fff;--border:#ccc;--toolbar-bg:#e0e0e0;--input-bg:#fff;--input-text:#111;--subtext-color:#555;--status-good:#080;--status-bad:#c00;--btn-danger:#f44;--grid-line:#0000000f;--tfl-station-title:#000;--arrival-time-color:#000}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{background-color:var(--bg-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;transition:background-color .3s,color .3s}.app-container{background-color:var(--bg-color);flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.toolbar{background-color:var(--toolbar-bg);border-bottom:1px solid var(--border);z-index:9999;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;padding:15px;display:flex;position:relative}:-webkit-any(:fullscreen .toolbar,:-webkit-full-screen .toolbar,:fullscreen .toolbar,:fullscreen .toolbar){display:none!important}:-moz-any(:fullscreen .toolbar,:fullscreen .toolbar,:-moz-full-screen .toolbar,:fullscreen .toolbar){display:none!important}:is(:fullscreen .toolbar,:fullscreen .toolbar,:fullscreen .toolbar,:-ms-fullscreen .toolbar){display:none!important}:is(:fullscreen .toolbar,:fullscreen .toolbar,:fullscreen .toolbar,:fullscreen .toolbar){display:none!important}button,select,input{background:var(--input-bg);color:var(--input-text);border:1px solid var(--border);cursor:pointer;border-radius:4px;padding:8px 12px;font-size:16px}input[type=text]{cursor:text}.dropdown-content{background-color:var(--toolbar-bg);border:1px solid var(--border);z-index:10000;border-radius:4px;min-width:240px;max-height:500px;padding:15px;display:none;position:absolute;top:40px;overflow-y:auto;box-shadow:0 8px 16px #00000080}.dropdown-content.show{display:block}.dropdown-content label{cursor:pointer;margin-bottom:8px;font-size:15px;display:block}.dropdown-content input[type=checkbox]{cursor:pointer;margin-right:8px}.line-category{margin-top:10px;margin-bottom:5px}.line-item{margin-left:20px;margin-bottom:5px!important;font-size:14px!important}.dashboard,.dashboard-container{box-sizing:border-box;-webkit-overflow-scrolling:touch;flex:1;width:100%;height:100%;min-height:0;position:relative;overflow:auto}.dashboard-canvas{box-sizing:border-box;min-width:100%;min-height:100%;position:relative;top:0;left:0}.dashboard::-webkit-scrollbar{width:10px;height:10px}.dashboard-container::-webkit-scrollbar{width:10px;height:10px}.dashboard::-webkit-scrollbar-track{background:0 0}.dashboard-container::-webkit-scrollbar-track{background:0 0}.dashboard::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}.dashboard-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px}.dashboard::-webkit-scrollbar-thumb:hover{background:var(--subtext-color)}.dashboard-container::-webkit-scrollbar-thumb:hover{background:var(--subtext-color)}:-webkit-any(:fullscreen .dashboard,:-webkit-full-screen .dashboard,:fullscreen .dashboard,:fullscreen .dashboard){height:100vh!important}:-moz-any(:fullscreen .dashboard,:fullscreen .dashboard,:-moz-full-screen .dashboard,:fullscreen .dashboard){height:100vh!important}:is(:fullscreen .dashboard,:fullscreen .dashboard,:fullscreen .dashboard,:-ms-fullscreen .dashboard){height:100vh!important}:is(:fullscreen .dashboard,:fullscreen .dashboard,:fullscreen .dashboard,:fullscreen .dashboard){height:100vh!important}:-webkit-any(.dashboard-container.fullscreen-mode,:fullscreen .dashboard-container,:-webkit-full-screen .dashboard-container,:fullscreen .dashboard,:-webkit-full-screen .dashboard){scrollbar-width:none;-ms-overflow-style:none}:is(.dashboard-container.fullscreen-mode,:fullscreen .dashboard-container,:fullscreen .dashboard-container,:fullscreen .dashboard,:fullscreen .dashboard){scrollbar-width:none;-ms-overflow-style:none}.dashboard-container.fullscreen-mode::-webkit-scrollbar{width:0;height:0;display:none}:fullscreen .dashboard-container::-webkit-scrollbar{width:0;height:0;display:none}:-webkit-full-screen .dashboard-container::-webkit-scrollbar{width:0;height:0;display:none}:fullscreen .dashboard::-webkit-scrollbar{width:0;height:0;display:none}:-webkit-full-screen .dashboard::-webkit-scrollbar{width:0;height:0;display:none}.dashboard-container{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-height:calc(100vh - 60px);position:relative;overflow:auto}.grid-background{background-position:0 0;background-image:linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);background-size:20px 20px}.widget{background-color:var(--card-bg);border:1px solid var(--border);resize:both;box-sizing:border-box;border-radius:10px;flex-direction:column;padding:20px;display:flex;position:absolute;overflow:hidden;box-shadow:0 4px 12px #0000004d}.widget-content{flex:1;height:0;min-height:0;overflow:hidden auto}.widget-content::-webkit-scrollbar{width:8px;height:8px}.widget-content::-webkit-scrollbar-track{background:0 0}.widget-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.widget-content::-webkit-scrollbar-thumb:hover{background:var(--subtext-color)}.borderless-mode .widget{box-shadow:none;background-color:#0000;border-color:#0000;resize:none!important}.borderless-mode .widget-header{border-bottom-color:#0000}.borderless-mode .delete-btn,.borderless-mode .refresh-btn{display:none}.borderless-mode .dep-board-header,.borderless-mode .jti-board-header,.borderless-mode .weather-board-header{display:none!important}.borderless-mode .widget-content{scrollbar-width:none;-ms-overflow-style:none}.borderless-mode .widget-content::-webkit-scrollbar{width:0;height:0;display:none}.widget-header{border-bottom:2px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;display:flex}.widget-header:active{cursor:grabbing}.widget-title{pointer-events:none;font-size:1.2rem;font-weight:700}.header-controls{align-items:center;gap:15px;display:flex}.refresh-btn{color:var(--subtext-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.2rem;font-weight:700;line-height:1;transition:color .15s;display:inline-flex}.refresh-btn:hover{color:var(--text-color)}.refresh-btn:disabled{color:var(--border);cursor:not-allowed}.delete-btn{color:var(--subtext-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;transition:color .15s;display:inline-flex}.refresh-btn svg,.delete-btn svg{vertical-align:middle}.delete-btn:hover{color:var(--btn-danger)}.fade-container{opacity:1;transition:opacity .4s ease-in-out}.fade-container.hidden{opacity:0}.status-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 0;font-size:1.1rem;display:flex}.status-row.has-detail.tfl-status,.status-row.has-detail.mtr-status{grid-template-columns:var(--badge-width,176px) 1fr max-content;border-bottom:1px solid var(--border);align-items:start;gap:15px;padding:12px 0;display:grid}.tfl-badge-container,.mtr-badge-container{width:var(--badge-width,176px);flex-shrink:0;justify-content:center;display:flex}.status-reason{text-align:left;color:var(--subtext-color);font-size:1rem;line-height:1.4}.status-text{text-align:right;font-weight:700}.status-good{color:var(--status-good)}.status-bad{color:var(--status-bad)}.status-offline{color:#adb5bd}.line-badge-small{white-space:nowrap;text-overflow:ellipsis;text-align:center;box-sizing:border-box;color:#fff;border-radius:4px;width:100%;padding:4px 10px;font-size:.95rem;font-weight:700;display:inline-block;overflow:hidden}.arrival-row{box-sizing:border-box;grid-template-columns:minmax(96px,1fr) minmax(0,176px) minmax(0,180px) 70px;align-items:center;gap:15px;padding:8px 0;font-size:1.1rem;display:grid}.arrival-row>*{min-width:0}.mtr-arrival-row{grid-template-columns:minmax(0, 1fr) var(--mtr-line-col-width,140px) auto 92px;gap:12px;padding:8px 0}.mtr-arrival-row .arrival-platform{justify-content:center;align-items:center;display:flex}.nr-arrival-row .arrival-platform{align-items:center;display:flex}.nr-arrival-row{grid-template-columns:minmax(96px,1fr) minmax(0,150px) 104px 96px}.nr-arrival-row.has-time{grid-template-columns:minmax(96px,1fr) minmax(0,150px) 104px 96px 56px}.nr-arrival-row .arrival-platform,.nr-arrival-row .arrival-time,.nr-arrival-row .arrival-time-left{text-align:left;justify-content:flex-start}.nr-arrival-row .arrival-time{min-width:0}.hkbus-arrival-row,.hkbus-route-arrival-row{grid-template-columns:minmax(0,1fr) 90px 115px;gap:10px}.hkbus-comp-arrival-row{grid-template-columns:max-content 90px 115px;gap:10px}.hkbus-comp-arrival-row .arrival-dest{text-overflow:clip;padding-right:10%;overflow:visible}.arrival-time-left{text-align:right;color:var(--arrival-time-color);white-space:nowrap;font-weight:700}.arrival-dest{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:500;overflow:hidden}.arrival-platform{color:var(--subtext-color);white-space:nowrap}.arrival-time{text-align:right;color:var(--arrival-time-color);white-space:nowrap;min-width:65px;padding-right:2px;font-weight:700}.mtr-arrival-row .arrival-time{min-width:92px}.platform-subtext{color:var(--subtext-color);font-size:.85rem}.mtr-plat-group{flex-shrink:0;justify-content:center;align-items:center;gap:4px;display:inline-flex}.mtr-plat-circle{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.9rem;font-weight:700;line-height:1;display:inline-flex}.mtr-icon{border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-right:8px;display:inline-block}.mtr-icon-normal{background-color:#28a745}.mtr-icon-delay{background-color:#ffc107}.mtr-icon-disruption{background-color:#dc3545}.mtr-icon-offline{background-color:#adb5bd}.strategic-roads-container{--sr-surface:#ffffff0b;--sr-rule:#ffffff1a;--sr-border:#ffffff21;--sr-dir-bg:#60a5fa2e;--sr-dir-fg:#9ec5fe;--sr-dir-border:#60a5fa73;--sr-id-bg:#ffffff17;--sr-id-fg:#c7ccd4;--sr-free-fg:#4ade80;--sr-free-bg:#4ade8024;--sr-busy-fg:#fbbf24;--sr-busy-bg:#fbbf2426;--sr-heavy-fg:#fca5a5;--sr-heavy-bg:#f8717129;flex-direction:column;gap:16px;padding:4px 0;display:flex}[data-theme=light] .strategic-roads-container{--sr-surface:#f6f8fc;--sr-rule:#0f172a17;--sr-border:#dbe2ec;--sr-dir-bg:#e2edff;--sr-dir-fg:#1d4ed8;--sr-dir-border:#bcd6ff;--sr-id-bg:#eef1f6;--sr-id-fg:#475569;--sr-free-fg:#166534;--sr-free-bg:#e7f6ec;--sr-busy-fg:#9a4a06;--sr-busy-bg:#fdf1de;--sr-heavy-fg:#be123c;--sr-heavy-bg:#fdeaee}.strategic-road-card{background:var(--sr-surface);border:1px solid var(--sr-border);border-radius:10px;padding:12px 14px}.strategic-road-header{border-bottom:1px solid var(--sr-rule);justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;padding-bottom:8px;display:flex}.strategic-road-title-group{flex-direction:column;min-width:0;display:flex}.strategic-road-tc{color:var(--text-color);font-size:1.15rem;font-weight:700}.strategic-road-en{color:var(--subtext-color);margin-top:2px;font-size:.85rem}.strategic-road-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.road-dir-badge{background-color:var(--sr-dir-bg);color:var(--sr-dir-fg);border:1px solid var(--sr-dir-border);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:700}.road-id-badge{background-color:var(--sr-id-bg);color:var(--sr-id-fg);white-space:nowrap;border-radius:999px;padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;font-weight:600}.strategic-lanes-table{flex-direction:column;display:flex}.strategic-lanes-header{color:var(--subtext-color);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--sr-rule);grid-template-columns:1.2fr 1fr 1fr 1fr;padding-bottom:6px;font-size:.72rem;font-weight:700;display:grid}.strategic-lane-row{grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:center;padding:6px 0;font-size:.95rem;display:grid}.strategic-lane-row+.strategic-lane-row{border-top:1px solid var(--sr-rule)}.col-lane{text-align:left}.col-speed,.col-occ{text-align:center}.col-vol{text-align:right}.font-lane{font-weight:600}.font-val{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.strategic-lane-row .col-occ{border-radius:999px;justify-self:center;padding:2px 9px;font-weight:700}.strategic-lane-row .col-occ[data-band=free]{background:var(--sr-free-bg);color:var(--sr-free-fg)}.strategic-lane-row .col-occ[data-band=busy]{background:var(--sr-busy-bg);color:var(--sr-busy-fg)}.strategic-lane-row .col-occ[data-band=heavy]{background:var(--sr-heavy-bg);color:var(--sr-heavy-fg)}.strategic-lane-row .col-occ[data-band=none]{color:var(--subtext-color)}.unit{color:var(--subtext-color);margin-left:2px;font-size:.7rem}.aed-widget{flex-direction:column;gap:12px;display:flex}.aed-message{color:var(--subtext-color);align-items:center;gap:8px;padding:14px 4px;font-size:.95rem;display:flex}.aed-message--error{color:var(--status-bad)}.aed-message--quiet{font-size:.88rem;font-style:italic}.aed-card{border:1px solid var(--border);background:#8080800a;border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.aed-card-head{align-items:center;gap:8px;min-width:0;display:flex}.aed-hosp-icon{width:26px;height:26px;color:var(--text-color);background:#8080802e;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.aed-hosp-name{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;font-weight:700;overflow:hidden}.aed-cluster{letter-spacing:.03em;color:var(--subtext-color);white-space:nowrap;background:#80808033;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.7rem;font-weight:600}.aed-headline{border-left:4px solid var(--aed-severity,var(--subtext-color));background:#80808014;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.aed-headline-value{color:var(--aed-severity,var(--text-color));font-size:1.6rem;font-weight:800;line-height:1.1}.aed-headline-label{color:var(--subtext-color);font-size:.72rem;line-height:1.3}.aed-card.severity-low{--aed-severity:#22a06b}.aed-card.severity-moderate{--aed-severity:#d99000}.aed-card.severity-high{--aed-severity:#e06c1f}.aed-card.severity-severe{--aed-severity:#d64545}.aed-card.severity-unknown{--aed-severity:var(--subtext-color)}.aed-resus{color:#d64545;background:#d6454524;border-radius:7px;align-items:center;gap:6px;padding:6px 9px;font-size:.8rem;font-weight:700;display:flex}.aed-triage{flex-direction:column;gap:2px;margin:0;display:flex}.aed-triage-row{border-bottom:1px solid #80808029;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;display:flex}.aed-triage-row:last-child{border-bottom:none}.aed-triage-label{color:var(--subtext-color);align-items:center;gap:7px;min-width:0;margin:0;font-size:.82rem;display:flex}.aed-tone-dot{background:var(--aed-tone,var(--subtext-color));border-radius:50%;flex-shrink:0;width:8px;height:8px}.aed-triage-row.tone-critical{--aed-tone:#d64545}.aed-triage-row.tone-emergency{--aed-tone:#e06c1f}.aed-triage-row.tone-urgent{--aed-tone:#d99000}.aed-triage-row.tone-routine{--aed-tone:#3b82f6}.aed-triage-value{color:var(--text-color);text-align:right;white-space:nowrap;align-items:center;gap:7px;margin:0;font-size:.88rem;font-weight:700;display:flex}.aed-managing{color:#3b82f6;background:#3b82f62e;border-radius:999px;align-items:center;gap:3px;padding:1px 6px;font-size:.68rem;font-weight:700;display:inline-flex}.aed-note{color:var(--subtext-color);opacity:.85;margin:0;font-size:.68rem;line-height:1.35}.aed-updated{color:var(--subtext-color);border-top:1px solid var(--border);align-items:center;gap:5px;padding-top:8px;font-size:.72rem;display:flex}.widget-region-notice{background:var(--sr-busy-bg,#d9a75a21);color:var(--sr-busy-fg,#b45309);border-radius:8px;align-items:center;padding:16px 14px;font-size:.88rem;line-height:1.55;display:flex}.widget.is-arriving,.widget.is-settling{overflow:hidden}.widget.is-arriving{animation:.26s cubic-bezier(.22,1,.36,1) both widget-arrive}@keyframes widget-arrive{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.widget.is-settling{transition:width .46s cubic-bezier(.2,.9,.25,1),height .46s cubic-bezier(.2,.9,.25,1)}.widget.is-arriving .widget-content,.widget.is-arriving .widget-header,.widget.is-settling .widget-content,.widget.is-settling .widget-header{opacity:0}.widget.is-ready .widget-content,.widget.is-done .widget-content{animation:.32s both widget-content-in}.widget.is-ready .widget-header,.widget.is-done .widget-header{animation:.32s both widget-header-in}@keyframes widget-content-in{0%{opacity:0}to{opacity:1}}@keyframes widget-header-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.widget-boot{z-index:5;border-radius:inherit;background:color-mix(in srgb, var(--card-bg) 62%, transparent);-webkit-backdrop-filter:blur(9px)saturate(1.2);justify-content:center;align-items:center;animation:.24s forwards paused widget-boot-out;display:flex;position:absolute;inset:0;overflow:hidden}.widget.is-ready .widget-boot{animation-play-state:running}@keyframes widget-boot-out{to{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}}.widget-boot-scan{background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--cp-accent,#3b82f6) 26%, transparent), transparent);height:34%;animation:1.6s cubic-bezier(.4,0,.2,1) infinite widget-boot-scan;position:absolute;left:0;right:0}@keyframes widget-boot-scan{0%{transform:translateY(-120%)}to{transform:translateY(420%)}}.widget-boot-text{letter-spacing:.16em;text-transform:uppercase;color:var(--cp-accent,#3b82f6);text-shadow:0 0 18px color-mix(in srgb, var(--cp-accent,#3b82f6) 45%, transparent);font-size:.82rem;font-weight:600;position:relative}.widget-boot-text i{opacity:0;font-style:normal;animation:1.2s infinite widget-boot-dot}.widget-boot-text i:nth-child(2){animation-delay:.2s}.widget-boot-text i:nth-child(3){animation-delay:.4s}@keyframes widget-boot-dot{0%,60%,to{opacity:0}30%{opacity:1}}.widget.is-leaving{pointer-events:none;animation:.26s cubic-bezier(.4,0,1,1) both widget-leave}@keyframes widget-leave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.86)}}@media (prefers-reduced-motion:reduce){.widget.is-arriving,.widget.is-leaving,.widget.is-ready .widget-content,.widget.is-ready .widget-header,.widget.is-done .widget-content,.widget.is-done .widget-header,.widget-boot,.widget-boot-scan,.widget-boot-text i{animation:none}.widget.is-settling{transition:none}.widget.is-arriving .widget-content,.widget.is-arriving .widget-header,.widget.is-settling .widget-content,.widget.is-settling .widget-header{opacity:1}}.jti-widgets-wrapper{box-sizing:border-box;flex-direction:column;gap:16px;width:100%;padding:2px;display:flex}.jti-signboard-outer{box-sizing:border-box;border:3px solid #fff;border-radius:14px;flex-direction:column;width:100%;max-width:100%;padding:4px;display:flex;box-shadow:0 4px 12px #00000080}.jti-signboard-outer.jti-theme-blue{color:#fff;background-color:#004b9b}.jti-signboard-outer.jti-theme-green{color:#fff;background-color:#007336}.jti-signboard-inner{box-sizing:border-box;border:2px solid #fff;border-radius:9px;flex-direction:column;align-items:center;width:100%;padding:12px 14px;display:flex}.jti-signboard-header{text-align:center;box-sizing:border-box;flex-direction:column;align-items:center;width:100%;display:flex}.jti-header-en{color:#fff;letter-spacing:.3px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:1.05rem;font-weight:800;line-height:1.25}.jti-header-tc{color:#fff;letter-spacing:1.5px;margin-top:4px;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,Noto Sans TC,Heiti TC,sans-serif;font-size:1.25rem;font-weight:900;line-height:1.25}.jti-divider-line{box-sizing:border-box;background-color:#fff;width:100%;height:2px;margin:10px 0 14px}.jti-cards-row{box-sizing:border-box;flex-wrap:nowrap;justify-content:center;align-items:stretch;gap:14px;width:100%;display:flex}.jti-dest-box{box-sizing:border-box;border:2px solid #fff;border-radius:8px;flex-direction:column;flex:1;min-width:96px;max-width:160px;display:flex;overflow:hidden}.jti-dest-box.full-name{min-width:115px;max-width:180px}.jti-box-top-v1{text-align:center;color:#fff;letter-spacing:1px;border-bottom:2px solid #fff;padding:6px 4px;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,Arial,sans-serif;font-size:1.15rem;font-weight:900;line-height:1.15}.jti-box-top-v3{text-align:center;box-sizing:border-box;border-bottom:2px solid #fff;flex-direction:column;justify-content:center;align-items:center;min-height:42px;padding:6px;display:flex}.jti-v3-name-tc{color:#fff;letter-spacing:1px;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,Noto Sans TC,sans-serif;font-size:1.1rem;font-weight:900;line-height:1.15}.jti-v3-name-en{color:#fff;white-space:nowrap;margin-top:2px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:.72rem;font-weight:800;line-height:1.1}.jti-box-bottom-split{box-sizing:border-box;width:100%;min-height:54px;display:flex}.jti-led-screen-left{box-sizing:border-box;background-color:#000;flex:1.25;justify-content:center;align-items:center;padding:4px 6px;display:flex}.jti-led-screen-full{box-sizing:border-box;background-color:#000;justify-content:center;align-items:center;width:100%;min-height:54px;padding:6px 8px;display:flex}.jti-unit-column-right{color:#fff;box-sizing:border-box;border-left:2px solid #fff;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2px 4px;line-height:1.15;display:flex}.jti-unit-mins{font-family:Arial,sans-serif;font-size:.85rem;font-weight:800}.jti-unit-tc{font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif;font-size:.85rem;font-weight:900}.jti-led-digit{text-align:center;font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:2.3rem;font-weight:900;line-height:1}.jti-led-digit.large{font-size:2.65rem}.jti-glow-green{color:#3f3;text-shadow:0 0 8px #3f3,0 0 16px #3f39}.jti-glow-amber{color:#fa0;text-shadow:0 0 8px #fa0,0 0 16px #fa09}.jti-glow-red{color:#f33;text-shadow:0 0 8px #f33,0 0 16px #f339}.jti-glow-dim{color:#555}.jti-signboard-card.alt-v4{box-sizing:border-box;border:2px solid #fff;border-radius:8px;width:100%;padding:12px}.jti-signboard-card.alt-v5{box-sizing:border-box;border-radius:8px;flex-direction:column;width:100%;max-width:100%;padding:14px 16px;display:flex;box-shadow:0 4px 12px #0009}.jti-signboard-card.alt-v5.jti-theme-blue{background-color:#0b407a;border:1px solid #1f7ae0}.jti-signboard-card.alt-v5.jti-theme-green{background-color:#085226;border:1px solid #0fa64c}.jti-v5-header{text-align:left;box-sizing:border-box;flex-direction:column;width:100%;display:flex}.jti-v5-title-tc{color:#fff;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif;font-size:1.15rem;font-weight:900}.jti-v5-title-en{color:#fff;opacity:.95;margin-top:2px;font-family:Arial,sans-serif;font-size:.85rem;font-weight:700}.jti-v5-cards-row{box-sizing:border-box;gap:10px;width:100%;margin-top:12px;display:flex}.jti-v5-card{box-sizing:border-box;background-color:#05264c;border:1px solid #1a5ca6;border-radius:6px;flex-direction:column;flex:1;align-items:center;min-width:0;padding:8px 6px 10px;display:flex}.jti-theme-green .jti-v5-card{background-color:#043317;border-color:#0c6a30}.jti-v5-dest-group{text-align:center;box-sizing:border-box;flex-direction:column;align-items:center;width:100%;margin-bottom:8px;display:flex}.jti-v5-dest-tc{color:#fff;white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif;font-size:.95rem;font-weight:700}.jti-v5-dest-en{color:#fff;opacity:.85;white-space:nowrap;font-size:.75rem;font-weight:700}.jti-v5-led-pill{box-sizing:border-box;background-color:#000;border-radius:4px;justify-content:center;align-items:baseline;gap:4px;width:100%;padding:4px 8px;display:flex;box-shadow:inset 0 0 6px #000000e6}.jti-v5-led-digit{font-family:Arial,sans-serif;font-size:1.6rem;font-weight:900;line-height:1}.jti-v5-led-min{color:#fff;opacity:.8;font-size:.72rem;font-weight:700}.jti-v5-status-bar{box-sizing:border-box;border-radius:2px;width:100%;height:3px;margin-top:6px}.jti-signboard-card.alt-v6{box-sizing:border-box;border-radius:10px;flex-direction:column;width:100%;max-width:100%;padding:14px 16px;display:flex}.jti-signboard-card.alt-v6.jti-theme-blue{background-color:#0f4d92;border:1px solid #1a6fd0}.jti-signboard-card.alt-v6.jti-theme-green{background-color:#1b6e38;border:1px solid #24914a}.jti-v6-header{text-align:left;box-sizing:border-box;flex-direction:column;width:100%;margin-bottom:8px;display:flex}.jti-v6-title-tc{color:#fff;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif;font-size:1.15rem;font-weight:900}.jti-v6-title-en{color:#fff;opacity:.9;margin-top:2px;font-size:.85rem;font-weight:600}.jti-v6-divider{box-sizing:border-box;background-color:#ffffff40;width:100%;height:1px;margin-bottom:12px}.jti-v6-rows-list{box-sizing:border-box;flex-direction:column;gap:10px;width:100%;display:flex}.jti-v6-row{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;display:flex}.jti-v6-left{box-sizing:border-box;align-items:center;gap:8px;min-width:0;padding-right:8px;display:flex}.jti-v6-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.jti-v6-dest-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.jti-v6-right{box-sizing:border-box;flex-shrink:0;align-items:baseline;gap:10px;display:flex}.jti-v6-status-label{text-align:right;min-width:70px;font-size:.95rem;font-weight:800}.jti-v6-time-val{color:#fff;text-align:right;min-width:22px;font-family:monospace,Arial,sans-serif;font-size:1.25rem;font-weight:900}.jti-v6-mins-label{color:#fff;font-size:.85rem;font-weight:600}.gmb-traditional-header-container{--gmb-sign-scale:.6;margin-bottom:calc(12px * var(--gmb-sign-scale));border-bottom:none;padding:0;position:relative}.gmb-traditional-header{border:calc(14px * var(--gmb-sign-scale)) solid #5c9e38;border-radius:calc(20px * var(--gmb-sign-scale));padding:calc(15px * var(--gmb-sign-scale)) calc(30px * var(--gmb-sign-scale));justify-content:center;align-items:center;gap:calc(30px * var(--gmb-sign-scale));background-color:#084a86;display:flex}.gmb-traditional-badge-wrapper{justify-content:center;align-items:center;display:flex}.gmb-traditional-badge{color:#fff;width:calc(90px * var(--gmb-sign-scale));height:calc(90px * var(--gmb-sign-scale));background-color:#d31010;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gmb-traditional-route-text{font-family:Arial,sans-serif;font-weight:700;line-height:1;font-size:calc(2.8rem * var(--gmb-sign-scale))}.gmb-traditional-route-text.is-long-route{font-size:calc(2.2rem * var(--gmb-sign-scale))}.gmb-traditional-dest{text-align:center;color:#fff;flex-direction:column;align-items:center;display:flex}.gmb-traditional-dest-en{font-size:calc(1.28rem * var(--gmb-sign-scale));margin-bottom:calc(5px * var(--gmb-sign-scale));font-family:Arial,sans-serif;font-weight:700}.gmb-traditional-dest-tc{font-size:calc(2.56rem * var(--gmb-sign-scale));letter-spacing:calc(4px * var(--gmb-sign-scale));white-space:nowrap;font-family:DFKai-SB,KaiTi,BiauKai,Songti TC,MingLiU,serif;font-weight:700}.gmb-led-header-container{margin-bottom:15px;padding-top:35px;display:block;position:relative;border-bottom:none!important}.gmb-led-header{background-color:#111;border:5px solid #008e36;border-radius:12px;align-items:center;gap:20px;padding:12px 20px;display:flex;box-shadow:inset 0 0 10px #000c}.gmb-led-badge{color:#fa0;text-shadow:0 0 8px #fa0;letter-spacing:2px;font-family:Courier New,Courier,monospace;font-size:2.8rem;font-weight:700}.gmb-led-dest{flex-direction:column;justify-content:center;line-height:1.2;display:flex}.gmb-led-dest-tc{color:#fa0;text-shadow:0 0 6px #fa0;letter-spacing:2px;font-size:1.5rem;font-weight:700}.gmb-led-dest-en{color:#fa0;text-shadow:0 0 6px #fa0;font-size:1rem;font-weight:700}.gmb-stop-header-container,.nlb-stop-header-container{margin-bottom:15px;padding-top:35px;display:block;position:relative;border-bottom:none!important}.gmb-stop-header{box-sizing:border-box;background-color:#008e36;border-radius:14px;justify-content:center;align-items:center;width:100%;padding:15px 25px;display:flex}.gmb-stop-title-container{text-align:center;color:#fff;flex-direction:column;align-items:center;display:flex}.gmb-stop-title-tc{letter-spacing:2px;font-family:DFKai-SB,KaiTi,BiauKai,Songti TC,MingLiU,serif;font-size:2.2rem;font-weight:700;line-height:1.2}.gmb-stop-title-en{margin-top:6px;font-family:Arial,sans-serif;font-size:1.3rem;font-weight:700}.nlb-stop-header{border:6px solid var(--nlb-green,#00845b);box-sizing:border-box;background-color:#0000;border-radius:20px;justify-content:center;align-items:center;width:100%;padding:15px 25px;display:flex}.nlb-stop-title-container{text-align:center;color:var(--text-color);flex-direction:column;align-items:center;display:flex}.nlb-stop-title-tc{letter-spacing:2px;color:var(--text-color);font-family:DFKai-SB,KaiTi,BiauKai,Songti TC,MingLiU,sans-serif;font-size:2.2rem;font-weight:700;line-height:1.2}.nlb-stop-title-en{color:var(--text-color);margin-top:6px;font-family:Arial,sans-serif;font-size:1.3rem;font-weight:700}.widget-header.mtr-style-header{margin-bottom:15px;padding-bottom:0;display:block;position:relative;border-bottom:none!important}.widget-header.mtr-style-header .header-controls{z-index:10;pointer-events:auto;position:absolute;top:0;right:0}.mtr-title-container{color:#002d5d;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}[data-theme=dark] .mtr-title-container{color:#fff}.mtr-name-tc{letter-spacing:6px;font-family:Songti TC,MingLiU,Microsoft JhengHei,serif;font-size:3rem;font-weight:700;line-height:1.1}.mtr-name-en{margin-bottom:8px;font-family:Helvetica,Arial,sans-serif;font-size:1.6rem;font-weight:600}.mtr-line-bg{background-color:var(--line-color);width:calc(100% + 40px);height:20px;margin:12px -20px 5px;position:relative}.mtr-line-circle{box-sizing:border-box;z-index:1;background-color:#fff;border:8px solid #000;border-radius:50%;width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}[data-theme=dark] .mtr-line-circle{border-color:#000}.widget-header.tfl-style-header{margin-bottom:10px;padding-bottom:0;display:block;position:relative;border-bottom:none!important}.widget-header.tfl-style-header .header-controls{z-index:10;pointer-events:auto;position:absolute;top:0;right:0}.tfl-title-container{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.tfl-name-en{color:var(--tfl-station-title);margin-bottom:12px;font-family:Helvetica,Arial,sans-serif;font-size:1.8rem;font-weight:700}.tfl-line-bg{background-color:#0000;width:calc(100% + 40px);margin-bottom:10px;margin-left:-20px;margin-right:-20px;position:relative}.tfl-line-bg.solid{background-color:var(--line-color);height:20px}.tfl-line-bg.double{border-top:6px solid var(--line-color);border-bottom:6px solid var(--line-color);box-sizing:border-box;height:20px}.tfl-line-bg.triple{border-top:4px solid var(--line-color);border-bottom:4px solid var(--line-color);box-sizing:border-box;height:20px}.tfl-line-bg.triple:after{content:"";background-color:var(--line-color);z-index:0;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}[data-theme=dark] .tfl-line-circle{border-color:#000}.nr-traditional-line-container{align-items:center;width:calc(100% + 40px);height:40px;margin:10px -20px;display:flex}.nr-traditional-line{flex:1;height:100%;position:relative}.nr-traditional-line:before,.nr-traditional-line:after{content:"";background-color:#ee1c25;width:100%;height:16.15%;position:absolute;left:0}.nr-traditional-line:before{top:20.92%}.nr-traditional-line:after{top:62.92%}.tfl-platform-name{text-align:left;width:100%;color:var(--subtext-color);margin-top:5px;font-size:1.1rem;font-weight:700}.hkbus-comp-header{margin-bottom:25px;position:relative;border-bottom:none!important}.hkbus-comp-title-container{align-items:center;gap:15px;display:flex}.hkbus-comp-badge{color:#fff;border-radius:8px;padding:8px 25px;font-size:2.4rem;font-weight:700}.hkbus-comp-dest{text-align:left;flex-direction:column;justify-content:center;display:flex}.hkbus-comp-dest-tc{color:var(--text-color);font-size:1.4rem;font-weight:700}.hkbus-comp-dest-en{color:var(--text-color);font-size:1.1rem;font-weight:700}.kmb-route-map{flex-direction:column;padding:10px;display:flex}.kmb-route-stop-item{gap:15px;padding-bottom:25px;display:flex;position:relative}.kmb-route-stop-item:before{content:"";background-color:var(--kmb-red,#e3002b);z-index:0;width:6px;height:calc(100% - 36px);position:absolute;top:36px;left:18px;transform:translate(-50%)}.kmb-route-stop-item:last-child:before{display:none}.kmb-stop-node{border:4px solid var(--kmb-red,#e3002b);background-color:var(--bg-color,#fff);width:36px;height:36px;color:var(--text-color,#000);z-index:1;box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.kmb-stop-content{flex-direction:column;gap:8px;padding-top:2px;display:flex}.kmb-stop-name{color:var(--text-color,#000);font-size:1.05rem;font-weight:700}.kmb-bus-indicators{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.kmb-bus-indicator{background-color:var(--kmb-red);color:#fff;border-radius:12px;align-items:center;padding:3px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.kmb-bus-indicator.lwb{background-color:var(--lwb-orange)}.kmb-route-stop-item.nlb:before{background-color:var(--nlb-green,#00845b)}.kmb-stop-node.nlb{border-color:var(--nlb-green,#00845b)}.kmb-bus-indicator.nlb{background-color:var(--nlb-green,#00845b)}.kmb-route-stop-item.tfl-bus:before{background-color:var(--tfl-bus-red)}.kmb-stop-node.tfl-bus{border-color:var(--tfl-bus-red)}.kmb-bus-indicator.tfl-bus{background-color:var(--tfl-bus-red)}.widget-header.tfl-bus-stop-header{margin-bottom:15px;padding-bottom:0;display:block;border-bottom:none!important}.tfl-bus-stop-header-container{align-items:center;width:100%;margin-bottom:15px;display:flex}.tfl-bus-stop-circle{background-color:var(--tfl-bus-red,#dc241f);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;margin-right:15px;font-size:2.2rem;font-weight:700;display:flex}.tfl-bus-stop-text-group{flex-direction:column;flex-grow:1;justify-content:center;display:flex}.tfl-bus-stop-name{color:var(--text-color);font-size:1.8rem;font-weight:700;line-height:1.2}.tfl-bus-stop-id{color:var(--subtext-color);margin-top:5px;font-size:.95rem}.tfl-bus-stop-line{background-color:#666;justify-content:center;align-items:center;width:calc(100% + 40px);height:18px;margin-left:-20px;margin-right:-20px;display:flex}.tfl-bus-stop-badge{color:#fff;letter-spacing:1px;font-size:10px;font-weight:700}.led-board-widget{color:#fc0;box-sizing:border-box;text-shadow:0 0 4px #fc0;background-color:#080808;border:4px inset #222;border-radius:6px;flex-direction:column;height:100%;padding:20px;font-family:Courier New,Courier,monospace;display:flex;overflow:hidden}.led-board-header{text-transform:uppercase;border-bottom:2px dashed #fc0;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;font-size:1.15rem;display:flex}.led-train-row{white-space:pre;margin:8px 0;font-size:1.25rem;font-weight:700;display:flex}.led-train-row.first-train{font-size:1.4rem}.led-marquee-container,.modern-marquee-container{white-space:nowrap;box-sizing:border-box;width:100%;margin-bottom:15px;font-size:1.2rem;overflow:hidden}.led-marquee-content,.modern-marquee-content{padding-left:100%;animation:24s linear infinite led-scroll;display:inline-block}@keyframes led-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.led-clock{text-align:center;letter-spacing:4px;margin-top:auto;font-size:2.2rem;font-weight:700}.modern-board-widget{color:#fff;box-sizing:border-box;background-color:#001f3f;border:none;border-radius:6px;flex-direction:column;height:100%;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;overflow:hidden}.modern-board-header{border-bottom:2px solid #fff;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;font-size:1.15rem;font-weight:700;display:flex}.modern-train-row{white-space:pre;margin:8px 0;font-size:1.25rem;display:flex}.modern-train-row.first-train{color:#fc0;font-size:1.4rem}.modern-train-row span:last-child{color:#fc0;font-weight:700}.modern-clock{text-align:center;margin-top:auto;font-size:2.2rem;font-weight:700}.darwin-disruption-box{color:#f44;white-space:nowrap;background-color:#200;border-bottom:2px dashed #f44;margin-bottom:12px;padding:8px 0;font-size:1.1rem;overflow:hidden}.modern-board-widget .darwin-disruption-box{color:#fff;background-color:#8b0000;border-bottom:2px solid #fff}.darwin-reason-text{color:#fa0;white-space:normal;margin-top:-6px;margin-bottom:12px;margin-left:70px;font-size:1rem;font-style:italic;display:block}.modern-board-widget .darwin-reason-text{color:#fc0}.darwin-scroll-area{flex:1;padding-right:5px;overflow-y:auto}.darwin-scroll-area::-webkit-scrollbar{width:6px}.darwin-scroll-area::-webkit-scrollbar-thumb{background:#fc0;border-radius:3px}.modern-board-widget .darwin-scroll-area::-webkit-scrollbar-thumb{background:#fff}.darwin-row-v1{grid-template-columns:70px 1fr 80px 120px;align-items:center;gap:15px;width:100%;display:grid!important}.darwin-row-v2{grid-template-columns:70px minmax(100px,max-content) 1fr 80px 120px;align-items:center;gap:15px;width:100%;display:grid!important}.darwin-inline-marquee-container{white-space:nowrap;align-items:center;width:100%;min-width:0;display:flex;overflow:hidden}.kmb-route-stop-item.gmb:before{background-color:#008e36}.kmb-stop-node.gmb{border-color:#008e36}.kmb-bus-indicator.gmb{background-color:#008e36}.bus-stop-code{box-sizing:border-box;background-color:var(--tfl-bus-red,#dc241f);color:#fff;letter-spacing:.02em;text-align:center;white-space:nowrap;vertical-align:.08em;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:1.55em;height:1.55em;margin-left:.42em;padding:0 .32em;font-size:.74em;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 1px 2px #00000047}.hkbus-comp-dest-en .bus-stop-code{vertical-align:.1em}.lrt-message{color:var(--subtext-color);align-items:center;gap:8px;padding:14px 4px;font-size:.95rem;display:flex}.lrt-message--error{color:var(--status-bad)}.lrt-message--quiet{font-size:.88rem;font-style:italic}.lrt-route-badge{box-sizing:border-box;letter-spacing:.02em;white-space:nowrap;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.lrt-route-badge--md{min-width:52px;padding:5px 9px;font-size:.95rem}.lrt-route-badge.is-special{outline-offset:-4px;outline:2px dashed #ffffffbf}.lrt-station-view{flex-direction:column;gap:14px;display:flex}.lrt-platform-block{flex-direction:column;display:flex}.lrt-platform-heading{letter-spacing:.05em;text-transform:uppercase;color:var(--subtext-color);border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:4px;padding-bottom:6px;font-size:.82rem;font-weight:700;display:flex}.lrt-platform-circle{color:#000;background-color:#d8a200;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.8rem;font-weight:800;display:inline-flex}.lrt-arrival-row{grid-template-columns:minmax(0,1fr) 74px 60px 96px;align-items:center;gap:10px}.lrt-badge-cell,.lrt-length-cell{justify-content:center;align-items:center;display:flex}.lrt-train-length{color:var(--subtext-color);gap:1px;display:inline-flex}.lrt-remark{color:var(--arrival-time-color);grid-column:1/-1;padding:2px 0 6px;font-size:.78rem;line-height:1.35}.lrt-route-list{flex-direction:column;padding:2px 0;display:flex}.lrt-stop-item{gap:14px;padding-bottom:22px;display:flex;position:relative}.lrt-stop-item:before{content:"";background-color:var(--lrt-line-color,#d8a200);z-index:0;width:5px;height:calc(100% - 32px);position:absolute;top:32px;left:16px;transform:translate(-50%)}.lrt-stop-item.is-last:before{display:none}.lrt-stop-node{border:4px solid var(--lrt-line-color,#d8a200);background-color:var(--card-bg,#fff);width:32px;height:32px;color:var(--text-color);z-index:1;box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.lrt-stop-body{flex-direction:column;gap:3px;min-width:0;padding-top:3px;display:flex}.lrt-stop-name{color:var(--text-color);font-size:1rem;font-weight:700}.lrt-stop-sub{color:var(--subtext-color);flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.lrt-stop-id{background-color:#80808038;border-radius:4px;padding:1px 6px;font-size:.72rem}.lrt-eta-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.lrt-eta-pill{white-space:nowrap;border-radius:12px;align-items:center;gap:4px;padding:3px 9px;font-size:.82rem;font-weight:700;display:inline-flex}.lrt-route-rule{text-align:center;align-items:center;margin-top:14px;display:flex}.lrt-route-rule-line{border-bottom:4px solid var(--lrt-line-color,#d8a200);flex:1}.lrt-route-rule-label{letter-spacing:.04em;border-radius:12px;margin:0 10px;padding:4px 12px;font-size:.85rem;font-weight:700}.mtrbus-message{color:var(--subtext-color);align-items:center;gap:8px;padding:14px 4px;font-size:.95rem;display:flex}.mtrbus-message--error{color:var(--status-bad)}.mtrbus-message--quiet{font-size:.88rem;font-style:italic}.mtrbus-route-badge{box-sizing:border-box;white-space:nowrap;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.mtrbus-route-badge--md{min-width:54px;padding:5px 9px;font-size:.95rem}.mtrbus-eta-pill{white-space:nowrap;border-radius:12px;align-items:center;gap:4px;padding:3px 9px;font-size:.82rem;font-weight:700;display:inline-flex}.mtrbus-eta-pill.is-scheduled{border:1px dashed var(--subtext-color);color:var(--subtext-color);background-color:#0000;font-weight:600}.mtrbus-suspended{color:var(--status-bad);align-items:center;gap:5px;font-size:.8rem;font-weight:700;display:inline-flex}.mtrbus-route-list{flex-direction:column;padding:2px 0;display:flex}.mtrbus-stop-item{gap:14px;padding-bottom:22px;display:flex;position:relative}.mtrbus-stop-item:before{content:"";background-color:var(--mtrbus-line-color,#0b4f9e);z-index:0;width:5px;height:calc(100% - 32px);position:absolute;top:32px;left:16px;transform:translate(-50%)}.mtrbus-stop-item.is-last:before{display:none}.mtrbus-stop-node{border:4px solid var(--mtrbus-line-color,#0b4f9e);background-color:var(--card-bg,#fff);width:32px;height:32px;color:var(--text-color);z-index:1;box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.mtrbus-stop-body{flex-direction:column;gap:3px;min-width:0;padding-top:3px;display:flex}.mtrbus-stop-name{color:var(--text-color);font-size:1rem;font-weight:700}.mtrbus-stop-sub{color:var(--subtext-color);flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.mtrbus-stop-id{background-color:#80808038;border-radius:4px;padding:1px 6px;font-size:.72rem}.mtrbus-eta-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.mtrbus-footer-remark{color:var(--subtext-color);border-top:1px solid var(--border);margin-top:4px;padding-top:8px;font-size:.72rem;line-height:1.4}.mtrbus-stop-view{flex-direction:column;gap:8px;display:flex}.mtrbus-arrival-row{grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:12px}.mtrbus-badge-cell{align-items:center;display:flex}.mtrbus-more-cell{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.mtrbus-detail-card{border:1px solid var(--border);border-left:4px solid var(--mtrbus-line-color,#0b4f9e);border-radius:8px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.mtrbus-detail-head{align-items:center;gap:10px;display:flex}.mtrbus-detail-glyph{color:var(--subtext-color)}.mtrbus-detail-list{flex-direction:column;gap:6px;display:flex}.mtrbus-detail-row{align-items:center;gap:10px;display:flex}.mtrbus-detail-index{width:18px;height:18px;color:var(--subtext-color);background-color:#80808038;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.mtrbus-detail-note{color:var(--subtext-color);font-size:.74rem;font-style:italic}.tfl-line-mark{box-sizing:border-box;align-items:center;width:calc(100% + 40px);margin:8px -20px 12px;display:flex}.tfl-line-rule{background:var(--line-color,currentColor);flex:1 1 0;min-width:0;height:20px}.tfl-line-disc{border:8px solid var(--line-color,currentColor);box-sizing:border-box;z-index:1;background:#fff;border-radius:50%;flex-shrink:0;width:44px;height:44px;margin:0 -5px;position:relative;box-shadow:0 0 0 3px #111}.tfl-line-mark.double .tfl-line-rule{box-sizing:border-box;border-top:6px solid var(--line-color,currentColor);border-bottom:6px solid var(--line-color,currentColor);background:0 0;height:21px}.tfl-line-mark.triple .tfl-line-rule{box-sizing:border-box;border-top:4px solid var(--line-color,currentColor);border-bottom:4px solid var(--line-color,currentColor);background:0 0;height:22px;position:relative}.tfl-line-mark.triple .tfl-line-rule:after{content:"";background:var(--line-color,currentColor);height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.nr-rule-stack{box-sizing:border-box;width:calc(100% + 40px);margin:18px -20px 20px;position:relative}.nr-rule{background:var(--nr-red,#ee1c25);border-radius:2px;height:7px}.nr-rule--bottom{margin-top:9px}.nr-rule-marker{border:8px solid var(--nr-red,#ee1c25);box-sizing:border-box;background:#fff;border-radius:50%;width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #111}.weather-widget{flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.weather-main-row{align-items:center;gap:20px;margin-bottom:20px;display:flex}.weather-temp{color:var(--text-color);font-size:4rem;font-weight:700}.weather-icon{width:80px;height:80px;color:var(--text-color)}.weather-desc{color:var(--subtext-color);text-transform:capitalize;margin-top:-10px;margin-bottom:20px;font-size:1.2rem}.weather-details-grid{grid-template-columns:1fr 1fr;gap:15px 30px;width:100%;max-width:400px;display:grid}.weather-detail-item{border-bottom:1px solid var(--grid-line);justify-content:space-between;align-items:center;padding-bottom:5px;font-size:1.1rem;display:flex}.weather-detail-label{color:var(--subtext-color)}.weather-detail-value{color:var(--text-color);font-weight:700}.time-widget{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.time-display{color:var(--text-color);font-variant-numeric:tabular-nums;letter-spacing:2px;margin:10px 0;font-size:3.5rem;font-weight:700}.analogue-clock{width:160px;height:160px;margin:15px auto;display:block}.clock-face{fill:#0000;stroke:var(--text-color);stroke-width:2px}.clock-hand-h{stroke:var(--text-color);stroke-width:4px;stroke-linecap:round}.clock-hand-m{stroke:var(--text-color);stroke-width:3px;stroke-linecap:round}.clock-hand-s{stroke:var(--status-bad);stroke-width:2px;stroke-linecap:round}.clock-center{fill:var(--status-bad)}.date-display{color:var(--subtext-color);margin-bottom:8px;font-size:1.2rem;font-weight:500}.day-of-week-highlight{background-color:var(--text-color);color:var(--bg-color);text-transform:uppercase;letter-spacing:1px;border-radius:20px;margin-bottom:15px;padding:4px 15px;font-size:.95rem;font-weight:700;display:inline-block}.calendar-wrapper{width:100%;max-width:300px;margin:0 auto}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:5px;font-size:.95rem;display:grid}.cal-day{color:var(--subtext-color);padding:5px 0}.cal-header{color:var(--text-color);font-weight:700}.cal-today{background:var(--text-color);color:var(--bg-color);border-radius:4px;font-weight:700}.jti-scroll-area{box-sizing:border-box;flex-direction:column;gap:20px;padding:5px;display:flex}.jti-scroll-area::-webkit-scrollbar{width:6px}.jti-scroll-area::-webkit-scrollbar-thumb{background:#039;border-radius:3px}.jti-sign{color:#fff;background-color:#039;border:2px solid #fff;border-radius:8px;flex-shrink:0;padding:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;box-shadow:inset 0 0 0 2px #039,inset 0 0 0 4px #fff}.jti-header{text-align:center;letter-spacing:1px;border-bottom:2px solid #fff6;margin-bottom:12px;padding-bottom:6px;font-size:1.15rem;font-weight:700}.jti-tunnels{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.jti-tunnel-box{text-align:center;background-color:#00000026;border:2px solid #fff;border-radius:6px;flex-direction:column;align-items:center;min-width:65px;padding:6px 10px;display:flex}.jti-tunnel-name{border-bottom:2px solid #fff;width:100%;margin-bottom:6px;padding-bottom:4px;font-size:1.15rem;font-weight:700}.jti-time{text-shadow:0 0 8px;font-family:Courier New,Courier,monospace;font-size:2.6rem;font-weight:700;line-height:1}.jti-color-1{color:#f33}.jti-color-2{color:#fc0}.jti-color-3{color:#3f3}.jti-tunnel-box-v2{background-color:#039;border:2px solid #fff;border-radius:8px;flex-direction:column;min-width:85px;display:flex;overflow:hidden}.jti-tunnel-top-v2{color:#fff;text-align:center;background-color:#039;border-bottom:2px solid #fff;padding:6px 10px;font-size:1.3rem;font-weight:700}.jti-tunnel-bottom-v2{background-color:#000;flex-direction:row;display:flex}.jti-time-v2{text-align:center;text-shadow:0 0 8px;flex:1;padding:4px 12px;font-family:Courier New,Courier,monospace;font-size:2.8rem;font-weight:700}.jti-mins-v2{color:#fff;background-color:#039;border-left:2px solid #fff;flex-direction:column;justify-content:center;align-items:center;padding:0 8px;line-height:1.2;display:flex}.jti-sign.green-theme{background-color:#007a3d!important;box-shadow:inset 0 0 0 2px #007a3d,inset 0 0 0 4px #fff!important}.jti-tunnel-box.green-theme{background-color:#0003!important}.jti-tunnel-box-v2.green-theme,.jti-tunnel-top-v2.green-theme,.jti-mins-v2.green-theme{background-color:#007a3d!important}.clock-roman .roman-bezel{fill:#d9c9a3;stroke:#b09a6b;stroke-width:.8px}.clock-roman .roman-face{fill:#fbf7ec;stroke:#cbbb95;stroke-width:.6px}.clock-roman .roman-ring{fill:none;stroke:#3c301c38;stroke-width:.4px}.clock-roman .roman-tick{stroke:#2d261873;stroke-width:.5px;stroke-linecap:round}.clock-roman .roman-numeral{fill:#2b2418;letter-spacing:-.3px;font-family:Times New Roman,Georgia,Songti SC,serif;font-size:8px;font-weight:700}.clock-roman .roman-hand-h,.clock-roman .roman-hand-m{fill:#23324f;stroke:#23324f;stroke-width:.4px;stroke-linejoin:round}.clock-roman .roman-hand-s,.clock-roman .roman-counterweight{stroke:#a3241f;fill:#a3241f;stroke-width:1px;stroke-linecap:round}.clock-roman .roman-center{fill:#d4af37;stroke:#8a6d1f;stroke-width:.5px}.clock-neon .neon-face{fill:#0d1020;stroke:#78a0ff40;stroke-width:.8px}.clock-neon .neon-track{fill:none;stroke:#8caaff24;stroke-width:3px}.clock-neon .neon-arc{fill:none;stroke:url(#neonArcGradient);stroke-width:3px;stroke-linecap:round}.clock-neon .neon-tick{stroke:#96beff59;stroke-width:.9px;stroke-linecap:round}.clock-neon .neon-tick.is-major{stroke:#b4d7ffd9;stroke-width:1.6px}.clock-neon .neon-hand-h{stroke:#7ee0ff;stroke-width:3.4px;stroke-linecap:round}.clock-neon .neon-hand-m{stroke:#c9a3ff;stroke-width:2.4px;stroke-linecap:round}.clock-neon .neon-hand-s{stroke:#ff4d7a;stroke-width:1.1px;stroke-linecap:round}.clock-neon .neon-center{fill:#fff}.hko-widget{color:#fff;min-height:100%}.hko-content{z-index:1;flex-direction:column;gap:14px;padding:2px 0 4px;display:flex;position:relative}.widget[data-type=hko_weather]{border-radius:20px}.widget-header--bare{z-index:2;border-bottom:none;height:0;min-height:0;margin:0;padding:0;position:relative}.widget[data-type=hko_weather] .refresh-btn,.widget[data-type=hko_weather] .delete-btn{color:#fff;text-shadow:0 1px 6px #0006}.hko-hero{text-shadow:0 1px 10px #00000059;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.hko-hero-place{letter-spacing:.01em;opacity:.92;align-items:center;gap:5px;font-size:.9rem;font-weight:600;display:flex}.hko-hero-temp{letter-spacing:-.03em;margin:2px 0 0 -3px;font-size:4.6rem;font-weight:200;line-height:1}.hko-hero-deg{opacity:.75;font-weight:200}.hko-hero-cond{opacity:.95;align-items:center;gap:6px;font-size:1.05rem;font-weight:600;display:flex}.hko-hero-cond svg{flex-shrink:0}.hko-hero-extra{opacity:.8;align-items:center;gap:4px;font-size:.82rem;display:flex}.hko-metrics{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;display:grid}.hko-metric{-webkit-backdrop-filter:blur(7px);background:#ffffff29;border:1px solid #ffffff29;border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:9px 11px;display:flex}.hko-metric-label{letter-spacing:.06em;text-transform:uppercase;opacity:.82;align-items:center;gap:5px;font-size:.68rem;font-weight:700;display:flex}.hko-metric-value{font-size:1.5rem;font-weight:300;line-height:1.15}.hko-metric-unit{opacity:.7;margin-left:3px;font-size:.8rem;font-weight:500}.hko-metric-note{opacity:.75;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.hko-metric[data-uv=moderate] .hko-metric-value{color:#ffe57a}.hko-metric[data-uv=high] .hko-metric-value{color:#ffc75a}.hko-metric[data-uv=very-high] .hko-metric-value{color:#ff9d5c}.hko-metric[data-uv=extreme] .hko-metric-value{color:#ff7a7a}.hko-notices{flex-direction:column;gap:6px;display:flex}.hko-notice{white-space:pre-line;background:#0000003d;border:1px solid #ffffff24;border-radius:10px;align-items:flex-start;gap:7px;margin:0;padding:9px 11px;font-size:.8rem;line-height:1.4;display:flex}.hko-notice svg{flex-shrink:0;margin-top:1px}.hko-notice--warning{background:#b4281473;border-color:#ffbea066;font-weight:600}.hko-section-title{letter-spacing:.08em;text-transform:uppercase;opacity:.78;margin:0 0 6px;font-size:.68rem;font-weight:700}.hko-station-list{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:2px 14px;margin:0;padding:0;list-style:none;display:grid}.hko-station{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:baseline;gap:10px;padding:5px 0;font-size:.84rem;display:flex}.hko-station-name{text-overflow:ellipsis;white-space:nowrap;opacity:.9;overflow:hidden}.hko-station-temp{flex-shrink:0;font-weight:600}.hko-updated{opacity:.75;align-items:center;gap:5px;font-size:.72rem;display:flex}.hko-message{color:var(--subtext-color);padding:14px 2px;font-size:.9rem}.hko-message--error{color:var(--status-bad);align-items:center;gap:6px;display:flex}.wx-sky{pointer-events:none;z-index:0;background:linear-gradient(180deg, var(--wx-from,#4a6fa5) 0%, var(--wx-to,#24344d) 100%);position:absolute;inset:0;overflow:hidden;container-type:size}.wx-sky--sunny{--wx-from:#3d9be9;--wx-to:#7fc4f0}.wx-sky--partly{--wx-from:#4a90d9;--wx-to:#8bb8dd}.wx-sky--hot{--wx-from:#f0803c;--wx-to:#f7c05a}.wx-sky--dry{--wx-from:#d99a4e;--wx-to:#f0c88a}.wx-sky--showers{--wx-from:#4a7fb5;--wx-to:#8aa8bd}.wx-sky--cloudy{--wx-from:#6b7f96;--wx-to:#9aa9b8}.wx-sky--overcast{--wx-from:#56637a;--wx-to:#7d8899}.wx-sky--rain{--wx-from:#3f5a75;--wx-to:#63788c}.wx-sky--heavy-rain{--wx-from:#2c3f56;--wx-to:#47596d}.wx-sky--thunderstorm{--wx-from:#232f45;--wx-to:#3d4a60}.wx-sky--clear-night{--wx-from:#0b1733;--wx-to:#26375c}.wx-sky--cloudy-night{--wx-from:#16203a;--wx-to:#38455f}.wx-sky--windy{--wx-from:#4b7f92;--wx-to:#8fb6bd}.wx-sky--fog{--wx-from:#7d8a94;--wx-to:#b3bcc2}.wx-sky--haze{--wx-from:#a08a6a;--wx-to:#d3bd97}.wx-sky--humid{--wx-from:#5a8a86;--wx-to:#93b6ad}.wx-sky--cold{--wx-from:#4a6a92;--wx-to:#8fa8c4}.wx-sun{background:radial-gradient(circle,#fff4c8f2 0%,#ffdc828c 38%,#ffd27800 70%);border-radius:50%;width:168px;height:168px;animation:7s ease-in-out infinite wx-pulse;position:absolute;top:-46px;right:-34px}.wx-moon{background:radial-gradient(circle at 36% 34%,#fffdf0f2 0%,#e2e8f5b3 52%,#c8d6f000 74%);border-radius:50%;width:62px;height:62px;animation:11s ease-in-out infinite wx-pulse;position:absolute;top:-16px;right:22px}.wx-star{opacity:.5;background:#fff;border-radius:50%;animation:3.6s ease-in-out infinite wx-twinkle;position:absolute}.wx-cloud{will-change:transform;background:radial-gradient(at 50% 62%,#ffffff80 0%,#ffffff38 48%,#fff0 72%);border-radius:999px;width:44%;height:62px;animation-name:wx-drift;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;left:-46%}.wx-drop{will-change:transform;--wx-fall:560px;background:linear-gradient(#fff0 0%,#e2f0ffeb 55%,#e2f0ff40 100%);border-radius:999px;width:2px;height:15px;animation-name:wx-fall;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-14%}@supports (height:100cqh){.wx-drop{--wx-fall:112cqh}}.wx-gust{will-change:transform;background:linear-gradient(90deg,#fff0 0%,#ffffff6b 50%,#fff0 100%);border-radius:999px;height:2px;animation:3.4s linear infinite wx-gust;position:absolute;left:-40%}.wx-haze{filter:blur(6px);will-change:transform;background:linear-gradient(#fff0 0%,#ffffff4d 50%,#fff0 100%);width:160%;height:34%;animation-name:wx-haze;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;left:-30%}.wx-shimmer{background:linear-gradient(120deg,#fff0 38%,#ffffff29 50%,#fff0 62%);animation:9s ease-in-out infinite wx-shimmer;position:absolute;inset:0}.wx-flash{opacity:0;background:#e2eeffd9;animation:8s ease-out infinite wx-flash;position:absolute;inset:0}@keyframes wx-drift{0%{transform:translateX(0) scale(var(--s,1))}to{transform:translateX(340%) scale(var(--s,1))}}@keyframes wx-fall{0%{opacity:0;transform:translateY(0)}10%{opacity:1}to{transform:translateY(var(--wx-fall));opacity:.9}}@keyframes wx-twinkle{0%,to{opacity:.25}50%{opacity:.95}}@keyframes wx-pulse{0%,to{opacity:.82;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes wx-gust{0%{opacity:0;transform:translate(0)}20%{opacity:1}to{opacity:0;transform:translate(260%)}}@keyframes wx-haze{0%,to{transform:translate(-6%)}50%{transform:translate(6%)}}@keyframes wx-shimmer{0%,to{opacity:0;transform:translate(-30%)}50%{opacity:1;transform:translate(30%)}}@keyframes wx-flash{0%,88%,to{opacity:0}89%{opacity:.55}90%{opacity:0}91%{opacity:.75}93%{opacity:0}}.scale-to-fit-inner .wx-sky{border-radius:18px}.scale-to-fit-inner .hko-content{padding:2px 14px 14px}.widget[data-type=hko_weather] .scale-to-fit-inner .widget-header{padding:14px 14px 10px}@media (prefers-reduced-motion:reduce){.wx-sun,.wx-moon,.wx-star,.wx-cloud,.wx-drop,.wx-gust,.wx-haze,.wx-shimmer,.wx-flash{animation:none}.wx-cloud{left:8%}.wx-gust{left:12%}.wx-flash{opacity:0}.wx-drop{opacity:.8;top:20%}}.aqhi-widget{flex-direction:column;gap:12px;display:flex}.aqhi-message{color:var(--subtext-color);align-items:center;gap:8px;padding:14px 4px;font-size:.95rem;display:flex}.aqhi-message--error{color:var(--status-bad)}.aqhi-message--quiet{font-size:.88rem;font-style:italic}.aqhi-chip{font-variant-numeric:tabular-nums;background:var(--aqhi-fill,#80808059);color:var(--aqhi-ink,var(--text-color));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff59,0 1px 3px #00000047}.aqhi-chip--lg{min-width:44px;height:44px;padding:0 8px;font-size:1.32rem}.aqhi-chip[data-band=unknown]{color:var(--subtext-color);box-shadow:inset 0 0 0 1.5px var(--border);background:0 0}.aqhi-summary{border-left:5px solid var(--aqhi-fill,var(--border));background:#80808017;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.aqhi-summary-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.aqhi-summary-label{letter-spacing:.04em;text-transform:uppercase;color:var(--subtext-color);font-size:.7rem}.aqhi-summary-place{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.aqhi-summary-count{color:var(--text-color);font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;align-items:flex-end;font-size:1.15rem;font-weight:800;line-height:1.1;display:flex}.aqhi-summary-count-unit{letter-spacing:.03em;color:var(--subtext-color);font-size:.66rem;font-weight:500}.aqhi-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:10px;display:grid}.aqhi-card{border:1px solid var(--border);border-top:3px solid var(--aqhi-fill,var(--border));background:#8080800a;border-radius:10px;flex-direction:column;gap:9px;min-width:0;padding:11px 12px;display:flex}.aqhi-card-head{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.aqhi-place{flex-direction:column;gap:3px;min-width:0;display:flex}.aqhi-place-name{color:var(--text-color);overflow-wrap:anywhere;font-size:1.02rem;font-weight:700;line-height:1.2}.aqhi-station-type{color:var(--subtext-color);white-space:nowrap;background:#8080802e;border-radius:999px;align-self:flex-start;align-items:center;gap:4px;padding:1px 7px 1px 5px;font-size:.68rem;font-weight:600;display:inline-flex}.aqhi-card[data-station=roadside] .aqhi-station-type{box-shadow:inset 0 0 0 1px var(--border);background:#80808042}.aqhi-category{color:var(--subtext-color);align-items:center;gap:7px;margin:0;font-size:.8rem;display:flex}.aqhi-category-dot{background:var(--aqhi-fill,var(--subtext-color));border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:inset 0 0 0 1px #ffffff59}.aqhi-category-label{flex:1;min-width:0}.aqhi-category-value{color:var(--text-color);white-space:nowrap;font-size:.9rem}.aqhi-scale{flex-direction:column;gap:3px;display:flex}.aqhi-scale-track{align-items:flex-end;gap:2px;height:12px;display:flex}.aqhi-scale-step{background:var(--aqhi-step);opacity:.32;border-radius:2px;flex:1;height:6px;transition:opacity .12s,height .12s}.aqhi-scale-step[data-here=true]{opacity:1;height:12px;box-shadow:inset 0 0 0 1px #ffffff73}.aqhi-scale-ends{color:var(--subtext-color);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.62rem;display:flex}.aqhi-facts{flex-direction:column;gap:2px;margin:0;display:flex}.aqhi-fact{border-bottom:1px solid #80808029;justify-content:space-between;align-items:baseline;gap:10px;padding:4px 0;display:flex}.aqhi-fact:last-child{border-bottom:none}.aqhi-fact dt{color:var(--subtext-color);min-width:0;margin:0;font-size:.76rem}.aqhi-fact-unit{opacity:.75;margin-left:4px;font-size:.66rem}.aqhi-fact dd{color:var(--text-color);white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-size:.82rem;font-weight:700}.aqhi-advice{border-left:3px solid var(--aqhi-fill,var(--border));background:#80808014;border-radius:7px;flex-direction:column;gap:3px;margin:0;padding:7px 9px;display:flex}.aqhi-advice-who{letter-spacing:.03em;text-transform:uppercase;color:var(--subtext-color);align-items:center;gap:5px;font-size:.68rem;font-weight:700;display:inline-flex}.aqhi-advice-text{color:var(--text-color);font-size:.78rem;line-height:1.42}.aqhi-legend{border:1px solid var(--border);background:#8080800a;border-radius:9px;flex-wrap:wrap;gap:6px 14px;padding:9px 11px;display:flex}.aqhi-legend-item{align-items:center;gap:6px;display:inline-flex}.aqhi-legend-swatch{background:var(--aqhi-fill);border-radius:3px;flex-shrink:0;width:13px;height:13px;box-shadow:inset 0 0 0 1px #ffffff59}.aqhi-legend-label{color:var(--text-color);align-items:baseline;gap:5px;font-size:.74rem;font-weight:600;display:inline-flex}.aqhi-legend-range{color:var(--subtext-color);font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:500}.aqhi-updated{color:var(--subtext-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding-top:2px;font-size:.7rem;display:flex}.aqhi-updated-time,.aqhi-source{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}@media (width<=520px){.aqhi-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.aqhi-scale-step{transition:none}}:root{--tfl-blue:#10069f;--tfl-red:#e32017;--tfl-panel-bg:#10069f0d;--tfl-panel-border:#10069f2e;--tfl-panel-text:var(--text-color)}[data-theme=dark]{--tfl-panel-bg:#788cff12;--tfl-panel-border:#8ca0ff2e}.tfl-extras{flex-direction:column;gap:10px;margin-top:14px;display:flex}.tfl-panel{border:1px solid var(--tfl-panel-border);background:var(--tfl-panel-bg);border-left:3px solid var(--tfl-blue);border-radius:12px;padding:10px 12px 12px}.tfl-panel[data-tone=warn]{border-left-color:var(--tfl-red);background:#e3201714}.tfl-panel-head{align-items:center;gap:7px;margin-bottom:9px;display:flex}.tfl-panel-title{letter-spacing:.09em;text-transform:uppercase;color:var(--tfl-panel-text);align-items:center;gap:6px;font-size:.72rem;font-weight:800;display:inline-flex}.tfl-panel-note{color:var(--subtext-color);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.68rem}.tfl-msg{color:var(--subtext-color);margin:0;font-size:.82rem}.tfl-msg--error{color:var(--status-bad)}.tfl-msg--note{align-items:flex-start;gap:6px;line-height:1.45;display:flex}.tfl-msg--note svg{opacity:.8;flex-shrink:0;margin-top:2px}.tfl-msg--key{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.tfl-msg--key code{background:#7f7f7f2e;border-radius:4px;padding:1px 5px;font-size:.76rem}.tfl-meter{flex-direction:column;gap:5px;margin-bottom:10px;display:flex}.tfl-meter-top{align-items:baseline;gap:8px;display:flex}.tfl-meter-value{font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:300;line-height:1}.tfl-meter-band{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:.74rem;font-weight:800}.tfl-meter-track{background:#7f7f7f38;border-radius:999px;height:8px;overflow:hidden}.tfl-meter-fill{border-radius:999px;height:100%;transition:width .5s;display:block}.tfl-meter-caption{color:var(--subtext-color);font-variant-numeric:tabular-nums;font-size:.7rem}.tfl-meter[data-band=quiet] .tfl-meter-fill,.tfl-profile-bar[data-band=quiet],.tfl-week-fill[data-band=quiet]{background:#00782a}.tfl-meter[data-band=moderate] .tfl-meter-fill,.tfl-profile-bar[data-band=moderate],.tfl-week-fill[data-band=moderate]{background:#ffd300}.tfl-meter[data-band=busy] .tfl-meter-fill,.tfl-profile-bar[data-band=busy],.tfl-week-fill[data-band=busy]{background:#ee7c0e}.tfl-meter[data-band=packed] .tfl-meter-fill,.tfl-profile-bar[data-band=packed],.tfl-week-fill[data-band=packed]{background:var(--tfl-red)}.tfl-meter[data-band=unknown] .tfl-meter-fill{background:#6f6f6f}.tfl-meter[data-band=quiet] .tfl-meter-band{color:#24a349;background:#00782a2e}.tfl-meter[data-band=moderate] .tfl-meter-band{color:#c9a400;background:#ffd30033}.tfl-meter[data-band=busy] .tfl-meter-band{color:#f08c2e;background:#ee7c0e33}.tfl-meter[data-band=packed] .tfl-meter-band{color:#ff6a60;background:#e3201733}.tfl-profile{flex-direction:column;gap:4px;display:flex}.tfl-profile-chart{align-items:flex-end;gap:1px;height:52px;padding:0 1px;display:flex}.tfl-profile-bar{opacity:.55;border-radius:1px 1px 0 0;flex:1 1 0;min-width:0}.tfl-profile-bar[data-now=true]{opacity:1;outline:1px solid var(--text-color);outline-offset:1px}.tfl-profile-axis{color:var(--subtext-color);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.62rem;display:flex}.tfl-peaks{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.tfl-peak{color:var(--subtext-color);font-variant-numeric:tabular-nums;background:#7f7f7f29;border-radius:999px;padding:2px 7px;font-size:.68rem}.tfl-week{flex-direction:column;gap:3px;margin-top:8px;display:flex}.tfl-week-day{grid-template-columns:34px 1fr 42px;align-items:center;gap:8px;font-size:.72rem;display:grid}.tfl-week-day[data-today=true] .tfl-week-name{color:var(--tfl-red);font-weight:800}.tfl-week-name{color:var(--subtext-color);letter-spacing:.04em;font-weight:700}.tfl-week-track{background:#7f7f7f33;border-radius:999px;height:6px;overflow:hidden}.tfl-week-fill{border-radius:999px;height:100%;display:block}.tfl-week-value{text-align:right;color:var(--subtext-color);font-variant-numeric:tabular-nums}.tfl-week-caption{color:var(--subtext-color);margin-top:3px;font-size:.65rem}.tfl-status+.tfl-status{margin-top:8px}.tfl-status-pill{color:#24a349;background:#00782a2e;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.tfl-status[data-state=warn] .tfl-status-pill{color:#ff6a60;background:#e3201733}.tfl-status-detail{color:var(--subtext-color);margin:6px 0 0;font-size:.78rem;line-height:1.4}.tfl-platform+.tfl-platform{border-top:1px solid var(--tfl-panel-border);margin-top:10px;padding-top:10px}.tfl-platform-name{letter-spacing:.05em;text-transform:uppercase;color:var(--tfl-blue);margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}[data-theme=dark] .tfl-platform-name{color:#8ea2ff}.tfl-trains{flex-wrap:wrap;gap:6px;display:flex}.tfl-train{background:#7f7f7f24;border-radius:8px;align-items:baseline;gap:6px;padding:3px 9px;font-size:.8rem;display:inline-flex}.tfl-train b{font-variant-numeric:tabular-nums;color:var(--arrival-time-color)}.tfl-train-dest{color:var(--subtext-color)}.tfl-train-none{color:var(--subtext-color);font-size:.78rem}.tfl-detail-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tfl-detail{grid-template-columns:62px minmax(90px,1fr) auto;align-items:center;gap:8px;padding:3px 0;font-size:.78rem;display:grid}.tfl-detail-time{font-variant-numeric:tabular-nums;color:var(--arrival-time-color);align-items:center;gap:4px;font-weight:700;display:inline-flex}.tfl-detail-dest{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.tfl-detail-loc{color:var(--subtext-color);text-align:right;justify-self:end;align-items:center;gap:4px;font-size:.72rem;display:inline-flex}.tfl-detail[data-stalled=true]{background:#e320171a;border-radius:6px;padding:3px 6px}.tfl-detail-flag{letter-spacing:.05em;text-transform:uppercase;color:#ff6a60;grid-column:1/-1;font-size:.68rem;font-weight:800}@media (width<=767px){.tfl-detail{grid-template-columns:58px 1fr}.tfl-detail-loc{text-align:left;grid-column:1/-1;justify-self:start}}.widget[data-hkstop-board=true]:not(.widget-mobile),.widget[data-hkstop-board=true] .scale-to-fit-inner{flex-direction:row;align-items:stretch;gap:16px}.widget-header.hkstop-signpost{border-bottom:none;flex-direction:column;flex:0 0 226px;justify-content:flex-start;align-self:stretch;align-items:center;width:226px;margin-bottom:0;padding-bottom:0;overflow:hidden auto}.widget[data-hkstop-board=true] .widget-content{align-self:stretch;height:auto;padding-top:30px}.widget.widget-mobile[data-hkstop-board=true] .widget-content{padding-top:0}.hkstop-post{--hkstop-pole:#98a3ab;--hkstop-pole-line:#737e86;flex-direction:column;align-items:center;width:100%;height:100%;min-height:0;display:flex}.hkstop-stack{flex-direction:column;flex:none;align-items:center;width:100%;display:flex}.hkstop{box-sizing:border-box;flex-shrink:0;position:relative}.hkstop--kmb{background:var(--kmb-red,#ed1d24);border-radius:50%;justify-content:center;align-items:center;width:210px;height:210px;display:flex;box-shadow:0 2px 8px #0000004d}.hkstop--lwb{background:var(--lwb-orange,#f37021)}.hkstop--kmb-ext{border-radius:28px;align-items:center;width:210px;height:auto;min-height:108px;padding:11px 0 9px}.hkstop--kmb-ext .hkstop-kmb-inner{max-height:none}.hkstop-kmb-inner{flex-direction:column;align-items:center;gap:2px;width:106px;max-height:175px;display:flex}.hkstop-logo{color:#fff;flex-shrink:0}.hkstop-side{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;color:#fff;letter-spacing:.04em;font-size:1.49rem;font-weight:700;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.hkstop-side--left{left:18px}.hkstop-side--right{right:18px}.hkstop-foot{color:#fff;letter-spacing:.06em;font-size:1.08rem;font-weight:800;line-height:1}.hkstop--ctb{background:var(--ctb-yellow,#f8cc00);border:3px solid var(--ctb-blue,#036);border-radius:10px;flex-direction:column;gap:5px;width:176px;padding:6px;display:flex;box-shadow:0 2px 8px #0000004d}.hkstop-ctb-head,.hkstop-ctb-foot{background:var(--ctb-blue,#036);color:var(--ctb-yellow,#f8cc00);border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:4px 6px;display:flex}.hkstop-ctb-foot{letter-spacing:.04em;font-size:.6rem;font-weight:700}.hkstop-panel{background:#fff;border:1.5px solid #111;border-radius:2px;width:100%;overflow:hidden}.hkstop-panel--ctb{border-color:var(--ctb-blue,#036);border-radius:4px}.hkstop-panel-head{color:#111;white-space:nowrap;border-bottom:1.5px solid #111;justify-content:space-between;align-items:center;gap:4px;padding:1px 4px;font-size:.5rem;font-weight:700;display:flex}.hkstop-panel--ctb .hkstop-panel-head{border-bottom-color:var(--ctb-blue,#036);color:var(--ctb-blue,#036)}.hkstop-grid{display:grid}.hkstop-cell{color:#111;border-bottom:1.5px solid #111;border-right:1.5px solid #111;justify-content:center;align-items:center;min-width:0;font-weight:800;line-height:1;display:flex;overflow:hidden}.hkstop-grid--ctb .hkstop-cell{border-color:var(--ctb-blue,#036);color:var(--ctb-blue,#036)}.hkstop-cell:nth-child(3n){border-right:none}.hkstop-cell:nth-last-child(-n+3){border-bottom:none}.hkstop-grid[data-size=lg] .hkstop-cell{height:19px;font-size:.72rem}.hkstop-grid[data-size=md] .hkstop-cell{height:17px;font-size:.66rem}.hkstop-name{text-align:center;box-sizing:border-box;overflow-wrap:anywhere;border-radius:8px;flex:none;width:100%;padding:8px 10px;box-shadow:0 2px 6px #00000047}.hkstop-name--kmb{background:var(--kmb-red,#ed1d24);color:#fff}.hkstop-name--lwb{background:var(--lwb-orange,#f37021);color:#fff}.hkstop-name--ctb{background:var(--ctb-yellow,#f8cc00);color:var(--ctb-blue,#036)}.hkstop-name-tc{letter-spacing:.02em;font-size:1.1rem;font-weight:800;line-height:1.2}.hkstop-name-en{opacity:.94;margin-top:2px;font-size:.8rem;font-weight:600;line-height:1.25}.hkstop-name-detail{opacity:.92;margin-top:1px;font-size:.82em;font-weight:600}.hkstop-name-id{letter-spacing:.03em;background:#0000003d;border-radius:4px;margin-top:7px;padding:1px 7px;font-size:.68rem;font-weight:700;display:inline-block}.hkstop-name--ctb .hkstop-name-id{background:#00336629}.hkstop-pole-stub,.hkstop-pole-shaft{background:var(--hkstop-pole);border-left:1px solid var(--hkstop-pole-line);border-right:1px solid var(--hkstop-pole-line);box-sizing:border-box;width:16px}.hkstop-pole-stub{flex:none;height:14px}.hkstop-pole{flex-direction:column;flex:auto;align-items:center;width:100%;min-height:78px;display:flex}.hkstop-pole-shaft{flex:auto;min-height:8px}.hkstop-pole-base{flex:none;margin-top:-2px;display:block}@media (width<=767px){.widget-header.hkstop-signpost{padding-right:0}}:root{--cp-bg:#1c1c21;--cp-bar-bg:linear-gradient(180deg, #232328 0%, #1b1b1f 100%);--cp-surface:#26262c;--cp-surface-hover:#2f2f36;--cp-surface-sunken:#17171a;--cp-border:#35353d;--cp-border-strong:#46464f;--cp-text:#f1f1f4;--cp-text-muted:#9b9ba6;--cp-text-faint:#6f6f7a;--cp-accent:#3b82f6;--cp-accent-alt:#7c5cf0;--cp-accent-hover:#2f74e6;--cp-accent-text:#fff;--cp-accent-soft:#3b82f638;--cp-accent-glow:#4e6ef08c;--cp-selected-bg:#3b82f642;--cp-selected-text:#bfdbfe;--cp-selected-line:#3b82f6;--cp-danger:#ef4444;--cp-danger-soft:#ef444424;--cp-ok:#22c55e;--cp-arrow:%239b9ba6;--cp-shadow-pop:0 12px 32px #0000008c;--cp-radius:9px;--cp-radius-sm:6px;--cp-h:34px}[data-theme=light]{--cp-bg:#f8f8fa;--cp-bar-bg:linear-gradient(180deg, #fff 0%, #f4f4f7 100%);--cp-surface:#fff;--cp-surface-hover:#f2f2f6;--cp-surface-sunken:#ececf1;--cp-border:#d9d9e0;--cp-border-strong:#c2c2cc;--cp-text:#17171c;--cp-text-muted:#64646f;--cp-text-faint:#8a8a95;--cp-accent:#2563eb;--cp-accent-alt:#6d45e0;--cp-accent-hover:#1d4fd8;--cp-accent-text:#fff;--cp-accent-soft:#2563eb29;--cp-accent-glow:#3d52e266;--cp-selected-bg:#2563eb29;--cp-selected-text:#1d4ed8;--cp-selected-line:#2563eb;--cp-danger:#dc2626;--cp-danger-soft:#dc26261a;--cp-ok:#16a34a;--cp-arrow:%2364646f;--cp-shadow-pop:0 12px 32px #0f0f1e29}.control-panel{background:var(--cp-bar-bg);border-bottom:1px solid var(--cp-border);color:var(--cp-text);flex-wrap:wrap;align-items:stretch;gap:0;padding:10px 14px}.cp-zone{flex-direction:column;gap:6px;min-width:0;padding:0 14px;display:flex}.cp-zone:first-child{padding-left:0}.cp-zone--source{flex:none}.cp-zone--config{border-left:1px solid var(--cp-border);border-right:1px solid var(--cp-border);flex:380px;min-width:0}.cp-zone--actions{flex:none;padding-right:0}.cp-zone-title{letter-spacing:.09em;text-transform:uppercase;color:var(--cp-text-faint);white-space:nowrap;align-items:center;gap:7px;font-size:10px;font-weight:700;line-height:1;display:flex}.cp-zone-title em{letter-spacing:.02em;text-transform:none;color:var(--cp-accent);text-overflow:ellipsis;max-width:320px;font-size:11px;font-style:normal;font-weight:600;overflow:hidden}.cp-zone-body{flex-wrap:wrap;align-items:flex-end;gap:10px;min-width:0;display:flex}.cp-field{flex-direction:column;gap:3px;min-width:0;display:flex}.cp-field-label{letter-spacing:.04em;color:var(--cp-text-muted);white-space:nowrap;padding-left:1px;font-size:10px;font-weight:600;line-height:1}.cp-options-row{flex-wrap:wrap;align-items:flex-end;gap:10px;min-width:0;display:flex}.cp-loading{color:var(--cp-text-muted);height:var(--cp-h);align-items:center;gap:8px;font-size:12px;display:inline-flex}.cp-loading:before{content:"";border:2px solid var(--cp-border-strong);border-top-color:var(--cp-accent);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite cp-spin}@keyframes cp-spin{to{transform:rotate(360deg)}}.cp-empty{color:var(--cp-text-faint);height:var(--cp-h);align-items:center;font-size:12px;font-style:italic;display:inline-flex}.control-panel select,.control-panel input[type=text],.control-panel .cp-btn{height:var(--cp-h);box-sizing:border-box;background:var(--cp-surface);color:var(--cp-text);border:1px solid var(--cp-border);border-radius:var(--cp-radius-sm);padding:0 10px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s,box-shadow .15s}.control-panel select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%239b9ba6' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M2.5 4.5 6 8l3.5-3.5'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:11px;max-width:260px;padding-right:28px}[data-theme=light] .control-panel select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%2364646f' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M2.5 4.5 6 8l3.5-3.5'/%3E%3C/svg%3E")}.control-panel select:hover,.control-panel input[type=text]:hover{border-color:var(--cp-border-strong);background-color:var(--cp-surface-hover)}.control-panel select:focus,.control-panel input[type=text]:focus{border-color:var(--cp-accent);box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.control-panel input[type=text]{cursor:text}.control-panel select:disabled,.control-panel input:disabled{opacity:.45;cursor:not-allowed;background-color:var(--cp-surface-sunken)}.control-panel select:disabled:hover,.control-panel input:disabled:hover{border-color:var(--cp-border);background-color:var(--cp-surface-sunken)}.control-panel input[type=text]::placeholder{color:var(--cp-text-faint)}.control-panel option{background:var(--cp-surface);color:var(--cp-text)}.control-panel optgroup{background:var(--cp-surface-sunken);color:var(--cp-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-style:normal;font-weight:700}.control-panel optgroup option{text-transform:none;letter-spacing:normal;color:var(--cp-text);font-size:13px;font-weight:400}.cp-select--primary{min-width:250px;font-weight:600!important}.control-panel .cp-btn{cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.control-panel .cp-btn:hover{background:var(--cp-surface-hover);border-color:var(--cp-border-strong)}.control-panel .cp-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.control-panel .cp-btn:active{transform:translateY(1px)}.control-panel .cp-btn svg{flex-shrink:0}.control-panel .cp-btn--primary{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);color:var(--cp-accent-text);box-shadow:0 1px 2px #0003, 0 4px 14px -4px var(--cp-accent-glow);border-color:#0000;padding:0 16px}.control-panel .cp-btn--primary:hover{filter:brightness(1.08);box-shadow:0 1px 2px #0003, 0 6px 18px -4px var(--cp-accent-glow)}.control-panel .cp-btn--block{width:100%;height:46px;font-size:15px}.control-panel .cp-btn--danger:hover{background:var(--cp-danger-soft);border-color:var(--cp-danger);color:var(--cp-danger)}.control-panel .cp-btn--icon{width:var(--cp-h);padding:0}.control-panel .cp-dropdown-trigger{background:var(--cp-surface);justify-content:space-between;gap:8px;min-width:150px}.control-panel .cp-dropdown-trigger[data-open=true]{border-color:var(--cp-accent);box-shadow:0 0 0 3px var(--cp-accent-soft)}.cp-caret{border-right:1.6px solid var(--cp-text-muted);border-bottom:1.6px solid var(--cp-text-muted);flex-shrink:0;width:9px;height:9px;transition:transform .18s;transform:rotate(45deg)translate(-2px,-2px)}.cp-dropdown-trigger[data-open=true] .cp-caret{transform:rotate(225deg)translate(-2px,-2px)}.cp-count-badge{background:var(--cp-accent);color:var(--cp-accent-text);text-align:center;border-radius:999px;min-width:16px;padding:3px 6px;font-size:10px;font-weight:700;line-height:1}.control-panel .dropdown-content{background:var(--cp-surface);border:1px solid var(--cp-border-strong);border-radius:var(--cp-radius);box-shadow:var(--cp-shadow-pop);top:calc(var(--cp-h) + 6px);scrollbar-width:thin;color:var(--cp-text);padding:10px}.control-panel .dropdown-content::-webkit-scrollbar{width:8px}.control-panel .dropdown-content::-webkit-scrollbar-thumb{background:var(--cp-border-strong);border-radius:4px}.control-panel .dropdown-content label{border-radius:var(--cp-radius-sm);margin-bottom:0;font-size:13px;transition:background .12s}.control-panel .dropdown-content label:hover{background:var(--cp-surface-hover)}.control-panel select option:checked{background:var(--cp-selected-bg);color:var(--cp-selected-text);font-weight:600}.control-panel .dropdown-content hr{border:none;border-top:1px solid var(--cp-border)}.control-panel .dropdown-content button{background:var(--cp-surface-sunken);border:1px solid var(--cp-border);color:var(--cp-text);border-radius:var(--cp-radius-sm);cursor:pointer;font-family:inherit;font-weight:600;transition:background .15s,border-color .15s}.control-panel .dropdown-content button:hover{background:var(--cp-accent-soft);border-color:var(--cp-accent)}.cp-autocomplete-panel{padding:5px!important}.cp-autocomplete-item{cursor:pointer;border-radius:var(--cp-radius-sm);padding:8px 10px;font-size:13px;line-height:1.35;transition:background .12s;border-bottom:none!important}.cp-autocomplete-item:hover,.cp-autocomplete-item[data-active=true]{background:var(--cp-accent-soft)}.cp-autocomplete-empty{color:var(--cp-text-faint);padding:10px;font-size:12px}.control-panel input[type=checkbox]{appearance:none;border:1.5px solid var(--cp-border-strong);background:var(--cp-surface-sunken);cursor:pointer;border-radius:4px;flex-shrink:0;width:16px;height:16px;margin:0;padding:0;transition:background .15s,border-color .15s;position:relative}.control-panel input[type=checkbox]:hover{border-color:var(--cp-accent)}.control-panel input[type=checkbox]:checked{background:var(--cp-accent);border-color:var(--cp-accent)}.control-panel input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:.5px;left:4px;transform:rotate(45deg)}.control-panel input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.control-panel .cp-toggle,.cp-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--cp-text-muted);height:var(--cp-h);white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:inline-flex}.cp-toggle:hover{color:var(--cp-text)}.control-panel .cp-toggle input[type=checkbox]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.cp-toggle-track{background:var(--cp-surface-sunken);border:1px solid var(--cp-border-strong);border-radius:999px;flex-shrink:0;width:32px;height:18px;transition:background .18s,border-color .18s;display:block;position:relative}.cp-toggle-track:after{content:"";background:var(--cp-text-faint);border-radius:50%;width:12px;height:12px;transition:transform .18s,background .18s;position:absolute;top:2px;left:2px}.cp-toggle input:checked+.cp-toggle-track{background:var(--cp-accent);border-color:var(--cp-accent)}.cp-toggle input:checked+.cp-toggle-track:after{background:#fff;transform:translate(14px)}.cp-toggle input:checked~.cp-toggle-text{color:var(--cp-text);font-weight:600}.cp-toggle input:focus-visible+.cp-toggle-track{box-shadow:0 0 0 3px var(--cp-accent-soft)}.cp-field .cp-toggle{height:var(--cp-h);padding:0 2px}.cp-actions-row{align-items:center;gap:8px;display:flex}.cp-actions-divider{background:var(--cp-border);align-self:stretch;width:1px;margin:0 2px}.cp-db-status{height:var(--cp-h);background:var(--cp-surface-sunken);border:1px solid var(--cp-border);color:var(--cp-text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:11px;display:inline-flex}.cp-db-dot{background:var(--cp-text-faint);border-radius:50%;flex-shrink:0;width:7px;height:7px}.cp-db-status[data-ok=true] .cp-db-dot{background:var(--cp-ok);box-shadow:0 0 0 3px #22c55e2e}.cp-db-status[data-ok=false] .cp-db-dot{background:var(--cp-danger);box-shadow:0 0 0 3px var(--cp-danger-soft)}.cp-db-label{color:var(--cp-text);letter-spacing:.02em;font-weight:700}.cp-db-time{color:var(--cp-text-faint)}.control-panel .line-category{margin-top:0;margin-bottom:8px}.control-panel .line-item{margin-left:0;margin-bottom:0!important;font-size:13px!important}.cp-popover-head{gap:8px;margin-bottom:8px;display:flex}.cp-popover-head button{flex:1;height:28px;font-size:11px!important}.cp-step{background:var(--cp-surface-sunken);border:1px solid var(--cp-border-strong);width:15px;height:15px;color:var(--cp-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:9px;font-weight:700;line-height:1;display:inline-flex}.cp-picker{display:inline-block;position:relative}.cp-picker--full{width:100%;display:block}.cp-picker-trigger{width:100%;min-width:268px;height:var(--cp-h);box-sizing:border-box;background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:var(--cp-radius-sm);color:var(--cp-text);text-align:left;cursor:pointer;align-items:center;gap:9px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,box-shadow .15s;display:inline-flex}.cp-picker--full .cp-picker-trigger{min-width:0}.cp-picker-trigger:hover{border-color:var(--cp-border-strong);background:var(--cp-surface-hover)}.cp-picker-trigger:focus-visible,.cp-picker-trigger[data-open=true]{border-color:var(--cp-accent);box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.cp-picker-icon{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);color:#fff;width:24px;height:24px;box-shadow:0 2px 6px -2px var(--cp-accent-glow);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cp-picker-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cp-picker-chevron{color:var(--cp-text-muted);flex-shrink:0;transition:transform .18s}.cp-picker-trigger[data-open=true] .cp-picker-chevron{transform:rotate(180deg)}.cp-picker-panel{top:calc(var(--cp-h) + 6px);background:var(--cp-surface);border:1px solid var(--cp-border-strong);border-radius:var(--cp-radius);width:350px;max-width:calc(100vw - 32px);box-shadow:var(--cp-shadow-pop);z-index:10001;animation:.14s ease-out cp-pop;position:absolute;left:0;overflow:hidden}.cp-picker--full .cp-picker-panel{width:100%}@keyframes cp-pop{0%{opacity:0;transform:translateY(-4px)scale(.99)}to{opacity:1;transform:none}}.cp-picker-search{border-bottom:1px solid var(--cp-border);color:var(--cp-text-faint);background:var(--cp-surface-sunken);align-items:center;gap:8px;padding:9px 11px;display:flex}.control-panel .cp-picker-search input,.cp-sheet .cp-picker-search input{min-width:0;height:auto;color:var(--cp-text);background:0 0;border:none;flex:1;padding:0;font-family:inherit;font-size:13px}.control-panel .cp-picker-search input:focus,.cp-sheet .cp-picker-search input:focus{box-shadow:none;border:none;outline:none}.cp-picker-list{scrollbar-width:thin;max-height:340px;padding:5px;overflow-y:auto}.cp-picker-list::-webkit-scrollbar{width:8px}.cp-picker-list::-webkit-scrollbar-thumb{background:var(--cp-border-strong);border-radius:4px}.cp-picker-group+.cp-picker-group{margin-top:4px}.cp-picker-group-title{letter-spacing:.09em;text-transform:uppercase;color:var(--cp-text-faint);padding:8px 9px 4px;font-size:9.5px;font-weight:700}.cp-picker-option{border-radius:var(--cp-radius-sm);color:var(--cp-text);cursor:pointer;align-items:center;gap:9px;padding:8px 9px;font-size:13px;transition:background .12s;display:flex}.cp-picker-option>svg:first-child{color:var(--cp-text-muted);flex-shrink:0}.cp-picker-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cp-picker-option[data-active=true]{background:var(--cp-accent-soft)}.cp-picker-option[data-selected=true]{font-weight:600}.cp-picker-option[data-selected=true]>svg:first-child,.cp-picker-option[data-selected=true]>svg:last-child{color:var(--cp-accent)}.cp-picker-empty{color:var(--cp-text-faint);text-align:center;padding:16px 12px;font-size:12px}.cp-segmented{background:var(--cp-surface-sunken);border-bottom:1px solid var(--cp-border);gap:3px;padding:7px 8px;display:flex}.cp-segment{border-radius:var(--cp-radius-sm);height:28px;color:var(--cp-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;flex:1;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-family:inherit;font-size:11.5px;font-weight:600;transition:background .14s,color .14s,box-shadow .14s;display:inline-flex}.cp-segment:hover{background:var(--cp-surface-hover);color:var(--cp-text)}.cp-segment:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.cp-segment[data-active=true]{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);color:var(--cp-accent-text);box-shadow:0 2px 8px -3px var(--cp-accent-glow)}.cp-segment-count{background:var(--cp-surface);color:var(--cp-text-faint);border-radius:999px;padding:1px 5px;font-size:9.5px;font-weight:700;line-height:1.4}.cp-segment[data-active=true] .cp-segment-count{color:#fff;background:#ffffff38}.cp-collapse-btn{background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:var(--cp-radius-sm);width:26px;height:26px;color:var(--cp-text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.cp-collapse-btn:hover{background:var(--cp-surface-hover);border-color:var(--cp-border-strong);color:var(--cp-text)}.cp-collapse-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.control-panel:not(.cp-collapsed) .cp-collapse-btn{z-index:2;position:static}.control-panel:not(.cp-collapsed) .cp-topbar{justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:2px;display:flex}.cp-mode{background:var(--cp-surface-sunken);border:1px solid var(--cp-border);isolation:isolate;border-radius:999px;align-items:center;padding:2px;display:inline-flex;position:relative}.cp-mode-thumb{background:var(--cp-accent);z-index:-1;border-radius:999px;width:calc(50% - 2px);transition:transform .22s cubic-bezier(.32,.72,0,1);position:absolute;top:2px;bottom:2px;left:2px;box-shadow:0 1px 3px #00000040}.cp-mode--three .cp-mode-thumb{width:calc(33.3333% - 1.34px)}.cp-mode-thumb[data-at=advanced]{transform:translate(100%)}.cp-mode-thumb[data-at=map]{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);transform:translate(200%)}.cp-mode-btn{min-width:92px;color:var(--cp-text-muted);letter-spacing:.01em;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-size:.76rem;font-weight:600;transition:color .18s;display:inline-flex}.cp-mode-btn[data-active=true]{color:var(--cp-accent-text)}.cp-mode-btn:hover[data-active=false]{color:var(--cp-text)}.cp-mode-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft);outline:none}.cp-sheet-mode{padding:4px 0 14px;display:flex}.cp-sheet-mode .cp-mode{width:100%}.cp-sheet-mode .cp-mode-btn{flex:1 1 0;min-width:0;padding:9px 12px;font-size:.9rem}@media (prefers-reduced-motion:reduce){.cp-mode-thumb{transition:none}}.control-panel.cp-collapsed{--cp-h:28px;flex-wrap:nowrap;align-items:center;gap:8px;padding:6px 12px;animation:.16s ease-out cp-collapse-in}@keyframes cp-collapse-in{0%{opacity:.4}to{opacity:1}}.control-panel.cp-collapsed .cp-picker{min-width:0;margin-right:auto}.control-panel.cp-collapsed .cp-picker-trigger{min-width:240px;font-size:12.5px}.control-panel.cp-collapsed .cp-picker-icon{border-radius:5px;width:20px;height:20px}.control-panel .cp-btn--sm{height:28px;padding:0 10px;font-size:12px}.control-panel .cp-btn--icon.cp-btn--sm{width:28px;padding:0}.control-panel.cp-collapsed .cp-toggle{font-size:11.5px}.cp-widget-count{height:var(--cp-h);background:var(--cp-surface-sunken);border:1px solid var(--cp-border);color:var(--cp-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:11.5px;font-weight:700;display:inline-flex}.cp-widget-count[data-full=true]{background:var(--cp-danger-soft);border-color:var(--cp-danger);color:var(--cp-danger)}.cp-db-glyph{color:var(--cp-text-faint);flex-shrink:0}.cp-db-status[data-ok=false] .cp-db-dot{animation:1.6s ease-in-out infinite cp-pulse}@keyframes cp-pulse{0%,to{box-shadow:0 0 #ef444480}50%{box-shadow:0 0 0 5px #ef444400}}@media (prefers-reduced-motion:reduce){.cp-db-status[data-ok=false] .cp-db-dot,.cp-picker-panel,.cp-loading:before{animation:none}}@media (width<=900px){.cp-db-label{display:none}}@media (width<=1320px){.cp-zone{border-top:1px solid var(--cp-border);width:100%;padding:8px 0;border-left:none!important;border-right:none!important;flex-basis:100%!important}.cp-zone:first-child{border-top:none;padding-top:0}.cp-select--primary{width:100%;min-width:0;max-width:100%}.cp-actions-row{flex-wrap:wrap;row-gap:8px}}.cp-topbar-end{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.cp-topbar-end .cp-seg{height:28px}.cp-topbar-end .cp-seg-option{padding:0 10px;font-size:11.5px}.cp-seg{height:var(--cp-h);box-sizing:border-box;background:var(--cp-surface-sunken);border:1px solid var(--cp-border);border-radius:var(--cp-radius-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.cp-seg-option{height:100%;color:var(--cp-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0 11px;font-family:inherit;font-size:12.5px;font-weight:600;transition:background .14s,color .14s;display:inline-flex}.cp-seg-option:hover{color:var(--cp-text);background:var(--cp-surface-hover)}.cp-seg-option[data-active=true]{background:var(--cp-selected-bg);color:var(--cp-selected-text);box-shadow:inset 0 0 0 1px var(--cp-selected-line)}.cp-seg-option[data-active=true]:hover{background:var(--cp-selected-bg);color:var(--cp-selected-text)}.cp-seg-option:focus-visible{box-shadow:0 0 0 2px var(--cp-accent-soft);outline:none}.cp-seg--accent .cp-seg-option[data-active=true]{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);color:var(--cp-accent-text);box-shadow:0 2px 8px -3px var(--cp-accent-glow)}.cp-seg--sm{height:28px}.cp-seg--sm .cp-seg-option{padding:0 9px;font-size:11.5px}.cp-stepper{height:var(--cp-h);box-sizing:border-box;background:var(--cp-surface-sunken);border:1px solid var(--cp-border);border-radius:var(--cp-radius-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.cp-stepper-btn{background:var(--cp-surface);width:24px;height:100%;color:var(--cp-text);cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;font-family:inherit;font-size:15px;font-weight:700;line-height:1;transition:background .14s,opacity .14s;display:inline-flex}.cp-stepper-btn:hover:not(:disabled){background:var(--cp-surface-hover)}.cp-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.cp-stepper-value{text-align:center;min-width:74px;color:var(--cp-text);white-space:nowrap;padding:0 6px;font-size:12.5px;font-weight:600}.cp-stepper-value[data-all=true]{color:var(--cp-text-faint)}.cp-stepper-all{height:100%;color:var(--cp-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 9px;font-family:inherit;font-size:11.5px;font-weight:700;transition:background .14s,color .14s}.cp-stepper-all:hover{color:var(--cp-text);background:var(--cp-surface-hover)}.cp-stepper-all[data-active=true]{background:linear-gradient(135deg, var(--cp-accent) 0%, var(--cp-accent-alt) 100%);color:var(--cp-accent-text)}.control-panel .cp-options-trigger{gap:7px;min-width:0}.control-panel .cp-options-trigger svg{color:var(--cp-text-muted)}.cp-options-panel{padding:12px!important}.cp-popover-field{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.cp-popover-field:last-child{margin-bottom:0}.cp-popover-field-label{letter-spacing:.05em;text-transform:uppercase;color:var(--cp-text-faint);font-size:10.5px;font-weight:700}.cp-options-panel select,.cp-options-panel .cp-seg,.cp-options-panel .cp-stepper{box-sizing:border-box;width:100%;max-width:100%}.cp-options-panel .cp-seg,.cp-options-panel .cp-stepper{display:flex}.cp-options-panel .cp-seg-option,.cp-options-panel .cp-stepper-value{flex:1}.cp-options-divider{background:var(--cp-border);height:1px;margin:12px -12px}.cp-pole-ids{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.cp-pole-id{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;background:#3a3a3c;border-radius:5px;align-items:center;gap:5px;padding:2px 7px;font-size:.78rem;font-weight:700;display:inline-flex}.cp-pole-id em{letter-spacing:.06em;opacity:.68;font-size:.62rem;font-style:normal;font-weight:800}.cp-pole-id[data-op=CTB]{color:#ffd200;background:#4a4536}.control-panel.cp-map-bar{--cp-h:28px;flex-wrap:nowrap;align-items:center;gap:12px;padding:7px 12px;display:flex}.cp-map-bar .cp-topbar-end{align-items:center;gap:8px;margin-left:auto;display:flex}.cp-map-title{letter-spacing:.03em;color:var(--cp-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;overflow:hidden}@media (width<=768px){.cp-map-title{display:none}.control-panel.cp-map-bar{gap:8px;padding:6px 8px}.cp-map-bar .cp-mode-btn{min-width:0;padding:5px 9px}.cp-map-bar .cp-mode-btn span{display:none}}.hkmap-mode{background:#0b1020;flex-direction:column;flex:auto;min-height:0;display:flex;position:relative;overflow:hidden}.hkmap-mode .hkmap-legal-bar{z-index:5;background:var(--cp-surface-sunken,#17171a);border-top:1px solid var(--cp-border,#35353d);padding:5px 12px calc(5px + env(safe-area-inset-bottom));flex:none;position:static}.hkmap-stage{flex:auto;min-height:0;position:relative}.hkmap-stage .hkmap-canvas{width:100%;height:100%;position:absolute;inset:0}.hkmap-stage .hkmap-weather{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.hkmap-booting{color:#8fa3c8;letter-spacing:.02em;z-index:5;background:#0b1020;place-items:center;font-size:.85rem;display:grid;position:absolute;inset:0}.hkmap-sky{z-index:4;-webkit-backdrop-filter:blur(14px)saturate(1.2);color:#eaf0fb;pointer-events:none;background:#0c101e9e;border:1px solid #ffffff21;border-radius:14px;min-width:190px;padding:11px 14px 12px;position:absolute;top:14px;right:14px;box-shadow:0 14px 40px #0006}.hkmap-sky-clock{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600;line-height:1.05}.hkmap-sky-tz{letter-spacing:.12em;opacity:.55;vertical-align:.45em;margin-left:6px;font-size:.6rem;font-weight:600}.hkmap-sky-phase{letter-spacing:.04em;text-transform:uppercase;color:#b9c8e4;align-items:center;gap:6px;margin-top:5px;font-size:.7rem;font-weight:600;display:flex}.hkmap-sky-dot{background:#6ea8ff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 10px}.hkmap-sky[data-phase=day] .hkmap-sky-dot{color:#ffd76a;background:#ffd76a}.hkmap-sky[data-phase=golden] .hkmap-sky-dot{color:#ff9a4d;background:#ff9a4d}.hkmap-sky[data-phase=night] .hkmap-sky-dot{color:#4a5a8c;background:#4a5a8c}.hkmap-sky[data-phase=dawn] .hkmap-sky-dot{color:#ff9a4d;background:#ff9a4d;animation:4s ease-in-out infinite hkmap-dawn}.hkmap-sky[data-phase=dusk] .hkmap-sky-dot{color:#ff7a4d;background:#ff7a4d;animation:4s ease-in-out infinite hkmap-dusk}@keyframes hkmap-dawn{0%,to{color:#6d7fd8;background:#6d7fd8}50%{color:#ffd76a;background:#ffd76a}}@keyframes hkmap-dusk{0%,to{color:#ff9a4d;background:#ff9a4d}50%{color:#6d7fd8;background:#6d7fd8}}.hkmap-sky-shift{align-items:center;gap:8px;margin-top:7px;display:flex}.hkmap-sky-shift-bar{background:#ffffff24;border-radius:999px;flex:1;height:3px;overflow:hidden}.hkmap-sky-shift-bar i{background:linear-gradient(90deg,#6d7fd8,#ff9a4d,#ffd76a);border-radius:999px;height:100%;transition:width 4s linear;display:block}.hkmap-sky-shift-text{letter-spacing:.02em;color:#c3d0e6;white-space:nowrap;font-size:.64rem;font-weight:600}@media (prefers-reduced-motion:reduce){.hkmap-sky[data-phase=dawn] .hkmap-sky-dot,.hkmap-sky[data-phase=dusk] .hkmap-sky-dot{animation:none}.hkmap-sky-shift-bar i{transition:none}}.hkmap-sky-sun{letter-spacing:.02em;text-transform:none;opacity:.7;font-variant-numeric:tabular-nums;margin-left:auto;font-weight:500}.hkmap-sky-places{color:#c3d0e6;border-top:1px solid #ffffff1a;flex-direction:column;gap:2px;margin:8px 0 0;padding:8px 0 0;font-size:.72rem;list-style:none;display:flex}.hkmap-sky-places li{align-items:baseline;gap:10px;display:flex}.hkmap-sky-places li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hkmap-sky-places li strong{color:#fff;font-variant-numeric:tabular-nums;margin-left:auto;font-size:.9rem}.hkmap-sky-weather{color:#c3d0e6;flex-wrap:wrap;align-items:baseline;gap:4px 9px;margin-top:7px;font-size:.72rem;display:flex}.hkmap-sky-signals{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.hkmap-signal{background:color-mix(in srgb, var(--signal) 28%, transparent);border:1px solid var(--signal);color:#fff;letter-spacing:.02em;text-shadow:0 1px 2px #00000080;border-radius:999px;padding:2px 8px;font-size:.63rem;font-weight:700}.hkmap-signal[data-kind=rainstorm],.hkmap-signal[data-kind=typhoon]{animation:2.4s ease-in-out infinite hkmap-signal}@keyframes hkmap-signal{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--signal) 55%, transparent)}60%{box-shadow:0 0 0 7px #0000}}@media (prefers-reduced-motion:reduce){.hkmap-signal{animation:none}}.hkmap-sky-warnings{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.hkmap-warning{color:#ffd79a;letter-spacing:.03em;text-transform:uppercase;background:#f0a02833;border:1px solid #f0aa3c73;border-radius:999px;padding:2px 7px;font-size:.63rem;font-weight:700}.hkmap-station-pin{-webkit-backdrop-filter:blur(10px);color:#eaf0fb;white-space:nowrap;pointer-events:auto;cursor:default;background:#0c101ed1;border:1px solid #fff3;border-radius:999px;align-items:center;gap:6px;padding:4px 9px 4px 6px;font-size:.68rem;font-weight:600;transition:gap .42s cubic-bezier(.22,.68,.24,1),padding .42s cubic-bezier(.22,.68,.24,1);display:flex;transform:translateY(-6px);box-shadow:0 8px 22px #0006}.hkmap-station-pin-dot{background:#63b3ff;border-radius:50%;flex:none;width:8px;height:8px;transition:width .42s cubic-bezier(.22,.68,.24,1),height .42s cubic-bezier(.22,.68,.24,1),opacity .24s ease-out;animation:2.6s ease-out infinite hkmap-pulse;box-shadow:0 0 #63b3ff99}@keyframes hkmap-pulse{70%{box-shadow:0 0 0 9px #63b3ff00}to{box-shadow:0 0 #63b3ff00}}.hkmap-station-pin-name{grid-template-columns:1fr;transition:grid-template-columns .42s cubic-bezier(.22,.68,.24,1),opacity .28s ease-out;display:grid}.hkmap-station-pin-name>span{min-width:0;overflow:hidden}.hkmap-station-pin-temp{color:#ffd76a;font-style:normal;font-weight:700}.hkmap-station-pin[data-collapsed=true]{gap:0;padding:4px 7px}.hkmap-station-pin[data-collapsed=true] .hkmap-station-pin-name{opacity:0;grid-template-columns:0fr}.hkmap-station-pin[data-collapsed=true] .hkmap-station-pin-dot{opacity:0;width:0;height:0}.hkmap-station-pin[data-collapsed=true]{animation:2.6s ease-out infinite hkmap-pin-pulse}@keyframes hkmap-pin-pulse{0%{box-shadow:0 8px 22px #0006,0 0 #63b3ff73}70%{box-shadow:0 8px 22px #0006,0 0 0 10px #63b3ff00}to{box-shadow:0 8px 22px #0006,0 0 #63b3ff00}}@media (prefers-reduced-motion:reduce){.hkmap-station-pin,.hkmap-station-pin-dot,.hkmap-station-pin-name{transition:none}.hkmap-station-pin-dot,.hkmap-station-pin[data-collapsed=true]{animation:none}}.hkmap-hover{z-index:6;-webkit-backdrop-filter:blur(12px);color:#eaf0fb;pointer-events:none;background:#0c101ee6;border:1px solid #ffffff24;border-radius:12px;min-width:190px;max-width:290px;padding:10px 12px 11px;animation:.14s ease-out hkmap-pop;position:absolute;transform:translate(-50%,calc(-100% - 18px));box-shadow:0 16px 44px #0000008c}@keyframes hkmap-pop{0%{opacity:0;transform:translate(-50%,calc(-100% - 10px))}}.hkmap-hover:after{content:"";background:#0c101ee6;border-bottom:1px solid #ffffff24;border-right:1px solid #ffffff24;width:11px;height:11px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.hkmap-hover-title{align-items:center;gap:7px;font-size:.82rem;font-weight:650;line-height:1.3;display:flex}.hkmap-hover-route{font-variant-numeric:tabular-nums;background:#ffffff26;border-radius:5px;padding:1px 7px}.hkmap-hover-light{border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 9px}.hkmap-hover-light[data-band=quiet]{color:#31a24c;background:#31a24c}.hkmap-hover-light[data-band=busy]{color:#e8a020;background:#e8a020}.hkmap-hover-light[data-band=heavy]{color:#e0562c;background:#e0562c}.hkmap-hover-light[data-band=severe]{color:#c62828;background:#c62828}.hkmap-hover-light[data-band=unknown]{color:#8a8f98;background:#8a8f98}.hkmap-hover-sub{color:#9fb0cd;margin-top:3px;font-size:.7rem}.hkmap-hover-rows{grid-template-columns:auto 1fr;gap:3px 10px;margin:9px 0 0;font-size:.71rem;display:grid}.hkmap-hover-rows dt{color:#92a3c1}.hkmap-hover-rows dd{text-align:right;margin:0;font-weight:600}.hkmap-hover-rows dd em{opacity:.6;font-style:normal;font-weight:400}.hkmap-hover-foot{color:#8496b4;border-top:1px solid #ffffff1a;margin-top:8px;padding-top:7px;font-size:.64rem;line-height:1.4}.hkmap-panel{z-index:4;-webkit-backdrop-filter:blur(18px)saturate(1.25);color:#e8eefb;background:#0e111cc2;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;width:328px;display:flex;position:absolute;top:14px;bottom:14px;left:14px;overflow:hidden;box-shadow:0 22px 60px #00000080}.hkmap-panel-head{border-bottom:1px solid #ffffff17;flex:none;align-items:flex-start;gap:10px;padding:14px 14px 12px;display:flex}.hkmap-panel-head h2{letter-spacing:.01em;margin:0;font-size:.9rem;font-weight:650}.hkmap-panel-head p{color:#8fa1c0;margin:3px 0 0;font-size:.68rem;line-height:1.4}.hkmap-panel-collapse,.hkmap-panel-reopen{color:#cddaf0;cursor:pointer;background:#ffffff12;border:1px solid #ffffff24;border-radius:8px;align-items:center;gap:6px;padding:5px;transition:background .15s;display:inline-flex}.hkmap-panel-collapse:hover,.hkmap-panel-reopen:hover{background:#ffffff24}.hkmap-panel-reopen{z-index:4;-webkit-backdrop-filter:blur(14px);background:#0e111ccc;padding:8px 12px 8px 9px;font-size:.74rem;font-weight:600;position:absolute;top:14px;left:14px}.hkmap-panel-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex:auto;min-height:0;overflow-y:auto}.hkmap-panel-scroll::-webkit-scrollbar{width:8px}.hkmap-panel-scroll::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:4px}.hkmap-panel-scroll::-webkit-scrollbar-track{background:0 0}.hkmap-section{border-bottom:1px solid #ffffff12;padding:13px 14px}.hkmap-section h3{letter-spacing:.11em;text-transform:uppercase;color:#8fa1c0;align-items:center;gap:8px;margin:0 0 9px;font-size:.66rem;font-weight:700;display:flex}.hkmap-count{letter-spacing:.02em;font-variant-numeric:tabular-nums;color:#b9c8e4;background:#ffffff17;border-radius:999px;margin-left:auto;padding:1px 7px;font-size:.65rem}.hkmap-count[data-full=true]{color:#ffd79a;background:#f0a02833}.hkmap-empty,.hkmap-note{color:#8496b4;margin:0;font-size:.68rem;line-height:1.5}.hkmap-note{margin-top:8px}.hkmap-chosen{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.hkmap-chosen li{border-left:3px solid var(--route-colour,#3d8bfd);background:#ffffff0d;border-radius:10px;align-items:center;gap:9px;padding:7px 8px 7px 9px;animation:.22s ease-out hkmap-slide-in;display:flex}@keyframes hkmap-slide-in{0%{opacity:0;transform:translate(-8px)}}.hkmap-chosen-badge{background:var(--route-colour,#3d8bfd);color:#fff;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid}.hkmap-chosen-text{flex-direction:column;flex:auto;min-width:0;line-height:1.25;display:flex}.hkmap-road-radar{isolation:isolate;position:relative;overflow:visible}.hkmap-road-radar i{border:1px solid var(--route-colour);opacity:.35;border-radius:50%;position:absolute;inset:-4px}.hkmap-road-watch[data-status=live] .hkmap-road-radar i{animation:2.8s ease-out infinite hkmap-detector-ping}.hkmap-road-readout{font-variant-numeric:tabular-nums}.hkmap-road-signal{height:14px;color:var(--route-colour);align-items:center;gap:3px;margin-top:4px;display:flex}.hkmap-road-signal i{transform-origin:50%;opacity:.5;background:currentColor;border-radius:2px;width:4px;height:4px}.hkmap-road-watch[data-status=live] .hkmap-road-signal i{animation:1.5s ease-in-out infinite hkmap-detector-wave;animation-delay:calc(var(--i) * -.16s)}.hkmap-panel[data-map-theme=cyber] .hkmap-road-watch{background:linear-gradient(110deg,#19d2e61a,#080f1ccc);box-shadow:inset 0 0 18px #14d2e60f}.hkmap-panel[data-map-theme=cyber] .hkmap-road-signal{filter:drop-shadow(0 0 4px)}.hkmap-panel[data-map-theme=cyber] .hkmap-road-radar{box-shadow:0 0 12px var(--route-colour)}@keyframes hkmap-detector-ping{0%{opacity:.7;transform:scale(.7)}to{opacity:0;transform:scale(1.6)}}@keyframes hkmap-detector-wave{0%,to{opacity:.45;transform:scaleY(1)}50%{opacity:1;transform:scaleY(3)}}@media (prefers-reduced-motion:reduce){.hkmap-road-watch[data-status=live] .hkmap-road-radar i,.hkmap-road-watch[data-status=live] .hkmap-road-signal i{animation:none}}.hkmap-layer-notice{z-index:4;border:1px solid var(--map-control-border);background:var(--map-control-bg);max-width:calc(100% - 32px);color:var(--map-control-text);border-radius:10px;padding:9px 14px;font-size:.8rem;position:absolute;bottom:70px;left:50%;transform:translate(-50%)}.hkmap-chosen-text strong{flex-wrap:wrap;align-items:center;gap:2px 5px;min-width:0;font-size:.8rem;display:flex}.hkmap-chosen-code{background:color-mix(in srgb, var(--route-colour,#3d8bfd) 26%, transparent);border:1px solid color-mix(in srgb, var(--route-colour,#3d8bfd) 55%, transparent);color:#eaf1ff;letter-spacing:.04em;border-radius:4px;flex:none;padding:0 4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.6rem;font-weight:700;line-height:1.5}.hkmap-chosen-name{overflow-wrap:anywhere;min-width:0}.hkmap-chosen-text em{color:#8fa1c0;text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;font-style:normal;overflow:hidden}.hkmap-chosen li[data-joint=true]{background-image:linear-gradient(180deg, var(--joint-a,#d81f2a) 0 50%, var(--joint-b,#f8ba00) 50% 100%);background-position:0;background-repeat:no-repeat;background-size:3px 100%;border-left:0;padding-left:12px}.hkmap-chosen-count{color:#cddaf0;font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:999px;flex:none;margin-left:auto;padding:1px 7px;font-size:.64rem;font-weight:700}.hkmap-chosen-count[data-none=true]{color:#7b8aa6;background:0 0;font-style:italic;font-weight:500}.hkmap-chosen li button{color:#8fa1c0;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;margin-left:4px;display:grid}.hkmap-chosen li button:hover{color:#ffb4b4;background:#ef44442e}.hkmap-tabs{background:#00000047;border-radius:9px;grid-template-columns:repeat(2,1fr);gap:3px;margin-bottom:9px;padding:3px;display:grid}.hkmap-tabs button{color:#8fa1c0;cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-width:0;padding:6px;font-size:.68rem;font-weight:600;transition:background .16s,color .16s;display:inline-flex}.hkmap-tabs button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hkmap-tabs button>svg{flex:none}.hkmap-tabs button[data-active=true]{color:#fff;background:#ffffff21}.hkmap-field{color:#8fa1c0;background:#00000042;border:1px solid #ffffff21;border-radius:9px;align-items:center;gap:8px;height:34px;padding:0 9px;display:flex}.hkmap-field:focus-within{border-color:#6096ff99;box-shadow:0 0 0 3px #3b82f633}.hkmap-field input{color:#eaf0fb;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.78rem}.hkmap-field input::placeholder{color:#6d7f9e}.hkmap-field input::-webkit-search-cancel-button{display:none}.hkmap-field button{color:#8fa1c0;cursor:pointer;background:0 0;border:none;place-items:center;display:grid}.hkmap-spin{animation:.9s linear infinite hkmap-spin}@keyframes hkmap-spin{to{transform:rotate(360deg)}}.hkmap-results{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex-direction:column;gap:3px;max-height:42vh;margin:9px 0 0;padding:0 2px 0 0;list-style:none;display:flex;overflow-y:auto}.hkmap-results::-webkit-scrollbar{width:7px}.hkmap-results::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:4px}.hkmap-results button{color:#dbe4f5;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;width:100%;padding:6px 8px;transition:background .13s;display:flex}.hkmap-results button:hover:not(:disabled){background:#ffffff14}.hkmap-results button:disabled{cursor:default;opacity:.55}.hkmap-results button[data-chosen=true]{opacity:.85}.hkmap-result-chip{color:#fff;text-align:center;text-shadow:0 1px 2px #00000059;font-variant-numeric:tabular-nums;border-radius:6px;flex:none;min-width:42px;padding:3px 6px;font-size:.72rem;font-weight:700}.hkmap-result-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.hkmap-result-text strong{font-size:.72rem;font-weight:600}.hkmap-result-text em{color:#8496b4;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;font-style:normal;overflow:hidden}.hkmap-result-on{color:#4ade80;margin-left:auto;font-size:.7rem}.hkmap-results button>svg:last-child{opacity:.6;flex:none;margin-left:auto}.hkmap-theme{isolation:isolate;background:#00000047;border-radius:9px;padding:3px;display:flex;position:relative}.hkmap-theme-thumb{background:var(--cp-accent,#3b82f6);z-index:-1;border-radius:7px;width:calc(50% - 3px);transition:transform .22s cubic-bezier(.32,.72,0,1),background .22s;position:absolute;top:3px;bottom:3px;left:3px}.hkmap-theme-thumb[data-at=cyber]{background:linear-gradient(120deg,#00e5ff 0%,#7b5cff 100%);transform:translate(100%);box-shadow:0 0 14px #00e5ff73}.hkmap-theme button{color:#8fa1c0;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-width:0;padding:6px 8px;font-size:.72rem;font-weight:650;transition:color .18s;display:inline-flex}.hkmap-theme button[data-active=true]{color:#fff}.hkmap-theme button:hover[data-active=false]{color:#dbe4f5}.hkmap-theme button:focus-visible{outline:none;box-shadow:0 0 0 3px #3b82f659}@media (prefers-reduced-motion:reduce){.hkmap-theme-thumb{transition:none}}.hkmap-switch{cursor:pointer;align-items:flex-start;gap:10px;padding:7px 0;display:flex}.hkmap-switch input{opacity:0;width:0;height:0;position:absolute}.hkmap-switch-track{background:#ffffff24;border:1px solid #ffffff1f;border-radius:999px;flex:none;width:34px;height:19px;margin-top:2px;transition:background .18s;position:relative}.hkmap-switch-track>span{background:#dbe4f5;border-radius:50%;width:13px;height:13px;transition:transform .2s cubic-bezier(.32,.72,0,1);position:absolute;top:2px;left:2px}.hkmap-switch input:checked+.hkmap-switch-track{background:#3b82f6}.hkmap-switch input:checked+.hkmap-switch-track>span{background:#fff;transform:translate(15px)}.hkmap-switch input:focus-visible+.hkmap-switch-track{box-shadow:0 0 0 3px #3b82f659}.hkmap-switch-text{flex-direction:column;gap:2px;min-width:0;display:flex}.hkmap-switch-text strong{align-items:center;gap:6px;font-size:.76rem;font-weight:600;display:flex}.hkmap-switch-text em{color:#8496b4;font-size:.66rem;font-style:normal;line-height:1.45}.hkmap-station{border-top:1px solid #ffffff14;flex-direction:column;gap:5px;margin-top:8px;padding-top:9px;display:flex}.hkmap-station-head{letter-spacing:.03em;color:#8fa1c0;align-items:center;gap:5px;width:100%;margin:0;font-size:.66rem;font-weight:600;display:flex}.hkmap-places-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#fff3 transparent;max-height:168px;padding-right:4px;overflow-y:auto}.hkmap-places-scroll::-webkit-scrollbar{width:7px}.hkmap-places-scroll::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:4px}.hkmap-places-group+.hkmap-places-group{margin-top:9px}.hkmap-places-label{letter-spacing:.1em;color:#7b8aa6;z-index:1;background:linear-gradient(#0e111cf5 60%,#0e111c00);margin:0 0 5px;padding:2px 0 4px;font-size:.62rem;font-weight:700;position:sticky;top:0}.hkmap-places{flex-wrap:wrap;gap:4px;margin:2px 0 0;padding:0;list-style:none;display:flex}.hkmap-places button{color:#b9c8e4;cursor:pointer;background:#00000042;border:1px solid #ffffff24;border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:600;transition:background .14s,color .14s,border-color .14s}.hkmap-places button:hover:not(:disabled){color:#eaf0fb;background:#ffffff1a}.hkmap-places button[data-on=true]{color:#fff;background:#3b82f6;border-color:#3b82f6}.hkmap-places button:disabled{opacity:.4;cursor:default}.hkmap-station-head .hkmap-count{margin-left:auto}.hkmap-panel-foot{color:#8496b4;flex:none;padding:11px 14px 13px;font-size:.68rem}.hkmap-panel-foot p{margin:0}.hkmap-panel-foot p+p{margin-top:6px}.hkmap-panel-foot strong{color:#eaf0fb;font-variant-numeric:tabular-nums}.hkmap-disclaimer{opacity:.85;font-size:.63rem;line-height:1.45}.hkmap-dimension{z-index:4;-webkit-backdrop-filter:blur(12px);color:#dbe4f5;letter-spacing:.04em;cursor:pointer;background:#0e111cd1;border:1px solid #ffffff24;border-radius:10px;align-items:center;gap:6px;padding:7px 11px;font-size:.72rem;font-weight:700;transition:background .16s,color .16s;display:inline-flex;position:absolute;bottom:132px;right:10px;box-shadow:0 8px 24px #0006}.hkmap-dimension:hover{color:#fff;background:#1e263ce6}.hkmap-dimension[data-flat=true]{color:#fff;background:#3b82f6d9;border-color:#78aaff99}.hkmap-dimension:focus-visible{outline:none;box-shadow:0 0 0 3px #3b82f673}.hkmap-dimension-hint{opacity:.55}.hkmap-stage{--map-control-bg:#0e111ce6;--map-control-text:#b9c8e4;--map-control-link:#9fc0ff;--map-control-border:#ffffff1f;--map-control-icon-filter:invert(1) brightness(1.6)}.hkmap-stage[data-map-tone=light]{--map-control-bg:#f8fafcf0;--map-control-text:#334155;--map-control-link:#1d4ed8;--map-control-border:#33415540;--map-control-icon-filter:none}.hkmap-stage .maplibregl-ctrl-group{background:var(--map-control-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--map-control-border);border-radius:10px;box-shadow:0 8px 24px #0006}.hkmap-stage .maplibregl-ctrl-group button+button{border-top:1px solid var(--map-control-border)}.hkmap-stage .maplibregl-ctrl-group button .maplibregl-ctrl-icon{filter:var(--map-control-icon-filter)}.hkmap-stage .maplibregl-ctrl.maplibregl-ctrl-attrib,.hkmap-stage .maplibregl-ctrl-scale{background:var(--map-control-bg);color:var(--map-control-text);border:1px solid var(--map-control-border);border-radius:7px;font-size:.62rem}.hkmap-stage .maplibregl-ctrl-attrib a{color:var(--map-control-link)}.hkmap-stage .maplibregl-ctrl-attrib .maplibregl-ctrl-attrib-button{filter:var(--map-control-icon-filter);background-color:#0000}.hkmap-stage .maplibregl-ctrl-attrib a:focus-visible,.hkmap-stage .maplibregl-ctrl-attrib-button:focus-visible{outline:2px solid var(--map-control-link);outline-offset:2px}@media (width<=768px){.hkmap-panel{overscroll-behavior:contain;width:auto;max-height:66vh;inset:auto 8px 52px;overflow-y:auto}.hkmap-results{max-height:34vh}.hkmap-dimension{padding:6px 9px;bottom:120px;right:8px}.hkmap-tabs button>span{display:none}.hkmap-tabs{grid-template-columns:repeat(4,1fr)}.hkmap-sky{min-width:0;padding:9px 12px 10px;top:8px;left:8px;right:8px}.hkmap-sky-clock{font-size:1.2rem}.hkmap-panel-reopen{top:auto;bottom:52px;left:8px}.hkmap-hover{max-width:240px}}@media (prefers-reduced-motion:reduce){.hkmap-chosen li,.hkmap-hover{animation:none}.hkmap-spin{animation-duration:3s}}.hkg-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--cp-text-muted,#9b9ba6);align-items:center;gap:6px;font-size:.68rem;font-weight:700;display:inline-flex}.hkg-scrim .hkg-stage{background:radial-gradient(120% 100% at 50% 0%, #3b82f633, transparent 64%), var(--cp-surface-sunken,#17171a)}.hkg-scrim .ob-skip{background:var(--cp-surface,#26262c);border-color:var(--cp-border,#35353d)}.hkg-scrim .ob-skip:hover{background:var(--cp-surface-hover,#2f2f36)}[data-theme=light] .hkg-scrim .ob-warn{background:#fff4df;border-color:#946200}[data-theme=light] .hkg-scrim .ob-warn svg{color:#946200}.hkg-art{width:240px;height:120px;position:relative}.hkg-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hkg-route{fill:none;stroke:#d81f2a;stroke-width:3px;stroke-linecap:round;filter:drop-shadow(0 0 6px #d81f2a8c)}.hkg-stop{fill:#fff;stroke:#d81f2a;stroke-width:2.5px}.hkg-bus{offset-path:path("M18 92 C 70 92, 74 34, 122 34 S 190 74, 222 40");offset-rotate:auto 0deg;animation:5.2s cubic-bezier(.45,0,.55,1) infinite hkg-run}.hkg-bus-body{fill:#d81f2a;stroke:#fff;stroke-width:2px}.hkg-bus-halo{fill:#d81f2a59}@keyframes hkg-run{0%{offset-distance:0%}38%,46%{offset-distance:48%}92%,to{offset-distance:100%}}.hkg-eta{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border-strong,#46464f);color:var(--cp-text,#f1f1f4);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 7px;font-size:.62rem;font-weight:700;animation:5.2s ease-in-out infinite hkg-tick;position:absolute}.hkg-eta--a{top:2px;left:92px}.hkg-eta--b{animation-delay:.6s;top:8px;right:-6px}@keyframes hkg-tick{0%,to{transform:translateY(2px)}30%,60%{transform:none}}.hkg-art--pick{flex-direction:column;gap:7px;display:flex}.hkg-field{border:1px solid var(--cp-accent,#3b82f6);background:var(--cp-surface,#26262c);height:26px;color:var(--cp-text,#f1f1f4);border-radius:8px;align-items:center;gap:7px;padding:0 9px;font-size:.72rem;font-weight:600;display:flex}.hkg-field svg{color:var(--cp-text-muted,#9b9ba6)}.hkg-caret{background:var(--cp-accent,#3b82f6);width:1px;height:12px;animation:1.1s steps(2,jump-none) infinite hkg-blink}@keyframes hkg-blink{50%{opacity:0}}.hkg-rows{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.hkg-rows li{background:var(--cp-surface,#26262c);color:var(--cp-text,#f1f1f4);opacity:0;border-radius:7px;align-items:center;gap:7px;padding:3px 7px;font-size:.68rem;font-weight:600;animation:3.4s ease-out infinite hkg-drop;display:flex}@keyframes hkg-drop{0%{opacity:0;transform:translateY(-5px)}18%,76%{opacity:1;transform:none}to{opacity:0;transform:translateY(-5px)}}.hkg-chip{border-radius:3px;flex:none;width:16px;height:10px}.hkg-chip--kmb{background:#d81f2a}.hkg-chip--mtr{background:#ed1d24}.hkg-chip--road{background:#e8a020}.hkg-chip--jti{background:#31a24c}.hkg-chip--joint{background:linear-gradient(90deg,#d81f2a 50%,#f8ba00 50%)}.hkg-joint{align-self:center;width:120px;height:24px}.hkg-joint path{fill:none;stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:112}.hkg-joint-a{stroke:#d81f2a;animation:3.4s ease-out infinite hkg-draw}.hkg-joint-b{stroke:#f8ba00;animation:3.4s ease-out .18s infinite hkg-draw}@keyframes hkg-draw{0%{stroke-dashoffset:112px}40%,to{stroke-dashoffset:0}}.hkg-art--budget{flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.hkg-meter{gap:5px;display:flex}.hkg-pip{background:var(--cp-border-strong,#46464f);border-radius:999px;width:25px;height:12px;animation:4.2s ease-in-out infinite hkg-fill}@keyframes hkg-fill{0%,8%{background:var(--cp-border-strong,#46464f)}22%,82%{background:var(--cp-accent,#3b82f6)}96%,to{background:var(--cp-border-strong,#46464f)}}.hkg-costs{gap:14px;display:flex}.hkg-costs span{color:var(--cp-text,#f1f1f4);align-items:center;gap:6px;font-size:.74rem;font-weight:700;display:inline-flex}.hkg-art--layers{justify-content:center;align-items:center;gap:26px;display:flex}.hkg-badge{color:#fff;border-radius:13px;place-items:center;width:44px;height:44px;display:grid;position:relative;box-shadow:0 6px 18px #0006}.hkg-badge--jti{background:#31a24c}.hkg-badge--road{background:#e0562c}.hkg-badge--hosp{background:#e8a020}.hkg-ring{color:inherit;border:2px solid;border-radius:15px;animation:2.4s ease-out infinite hkg-pulse;position:absolute;inset:0}.hkg-ring--b{animation-delay:.9s}@keyframes hkg-pulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.85)}}.hkg-art--sky{border-radius:12px;overflow:hidden}.hkg-sky{border-radius:12px;animation:9s ease-in-out infinite hkg-daynight;position:absolute;inset:0}@keyframes hkg-daynight{0%,to{background:linear-gradient(#8ec5ef,#dceaf6)}35%{background:linear-gradient(#3f6ea8,#f0a35c)}65%{background:linear-gradient(#050a18,#152a4a)}}.hkg-sun{offset-path:path("M6 96 A 114 74 0 0 1 234 96");background:#ffd76a;border-radius:50%;width:18px;height:18px;animation:9s linear infinite hkg-arc;position:absolute;box-shadow:0 0 18px #ffd76ad9}@keyframes hkg-arc{0%{offset-distance:0%;opacity:0}10%{opacity:1}60%{opacity:1}72%,to{offset-distance:100%;opacity:0}}.hkg-skyline{background:linear-gradient(90deg,#0000 0 8px,#1b2136 8px 26px,#0000 26px 40px,#1b2136 40px 52px,#0000 52px 70px,#1b2136 70px 96px,#0000 96px 112px,#1b2136 112px 126px,#0000 126px 150px,#1b2136 150px 176px,#0000 176px 194px,#1b2136 194px 214px,#0000 214px);height:42px;position:absolute;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000 22%);mask-image:linear-gradient(#0000,#000 22%)}.hkg-rain{opacity:0;background-image:repeating-linear-gradient(72deg,#e2eeff8c 0 1px,#0000 1px 9px);border-radius:12px;animation:9s ease-in-out infinite hkg-shower;position:absolute;inset:0}@keyframes hkg-shower{0%,40%{opacity:0;background-position:0 0}55%,78%{opacity:.5}to{opacity:0;background-position:60px 180px}}.hkg-sun-note{color:var(--cp-text-muted,#9b9ba6);align-items:center;gap:5px;font-size:.66rem;display:inline-flex}@media (prefers-reduced-motion:reduce){.hkg-bus,.hkg-eta,.hkg-caret,.hkg-rows li,.hkg-joint path,.hkg-pip,.hkg-ring,.hkg-sky,.hkg-sun,.hkg-rain{animation:none}.hkg-rows li{opacity:1}.hkg-joint path{stroke-dashoffset:0}.hkg-pip{background:var(--cp-accent,#3b82f6)}.hkg-bus{offset-distance:48%}.hkg-sun{offset-distance:30%;opacity:1}.hkg-sky{background:linear-gradient(#3f6ea8,#f0a35c)}}.hkmap-theme--sub{background:#00000057;margin:8px 0 0 34px;padding:2px}.hkmap-theme--sub .hkmap-theme-thumb{width:calc(50% - 2px);box-shadow:none;background:#3d7d4f;top:2px;bottom:2px;left:2px}.hkmap-theme--sub .hkmap-theme-thumb[data-at=cyber]{box-shadow:none;background:#3d7d4f}.hkmap-theme--sub button{padding:5px 6px;font-size:.68rem}.hkmap-hover-aqhi-chip{font-variant-numeric:tabular-nums;color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 5px;font-size:.82rem;font-weight:800;display:inline-flex;box-shadow:inset 0 0 0 1.5px #ffffff8c}.hkmap-hover-aqhi-chip[data-band=low],.hkmap-hover-aqhi-chip[data-band=moderate]{color:#101010}.hkmap-hover-advice{color:#cfdcef;background:#ffffff12;border-left:3px solid;border-radius:7px;margin:9px 0 0;padding:7px 9px;font-size:.69rem;line-height:1.45}.hkmap-hover-aqhi[data-band=low] .hkmap-hover-advice{border-left-color:#44af35}.hkmap-hover-aqhi[data-band=moderate] .hkmap-hover-advice{border-left-color:#f5aa00}.hkmap-hover-aqhi[data-band=high] .hkmap-hover-advice{border-left-color:#e40012}.hkmap-hover-aqhi[data-band=very-high] .hkmap-hover-advice{border-left-color:#a94616}.hkmap-hover-aqhi[data-band=serious] .hkmap-hover-advice{border-left-color:#fff}@supports (height:100dvh){html,body,.app-container{height:100dvh}}.dashboard-container.mobile-mode{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;background-image:none;overflow:hidden auto}.dashboard-canvas.dashboard-stack{width:100%;min-width:0;height:auto;min-height:100%;padding:12px 12px calc(24px + env(safe-area-inset-bottom));box-sizing:border-box;flex-direction:column;gap:12px;display:flex}.widget.widget-mobile{box-sizing:border-box;flex:none;max-width:100%;padding:8px 14px 14px;resize:none!important;width:100%!important;height:auto!important;position:relative!important}.widget.widget-mobile .widget-content{flex:0 auto;overflow:visible;height:auto!important}.widget.widget-mobile .widget-header,.widget.widget-mobile .widget-mobile-chrome{cursor:grab;touch-action:pan-y;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.widget.widget-mobile .widget-mobile-chrome{flex-shrink:0;justify-content:flex-end;align-items:center;gap:2px;height:34px;margin:0 -6px 2px 0;display:flex;position:relative}.widget.widget-mobile .widget-mobile-grip{background:var(--border);pointer-events:none;border-radius:999px;width:36px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.widget.widget-mobile .widget-mobile-actions{align-items:center;gap:2px;display:flex;position:static}.widget.widget-mobile .refresh-btn,.widget.widget-mobile .delete-btn{width:36px;height:36px}.control-panel.cp-mobile-bar{padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top));flex-wrap:nowrap;align-items:center;gap:8px}.cp-mobile-summary{background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:var(--cp-radius);min-width:0;height:44px;color:var(--cp-text);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex:1;align-items:center;gap:10px;padding:0 11px;font-family:inherit;display:flex}.cp-mobile-summary:active{background:var(--cp-surface-hover)}.cp-mobile-summary>svg:last-child{color:var(--cp-text-muted);flex-shrink:0}.cp-mobile-summary-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.cp-mobile-summary-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--cp-text-faint);font-size:9.5px;font-weight:700;line-height:1}.cp-mobile-summary-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.control-panel.cp-mobile-bar .cp-btn--icon{flex-shrink:0;width:44px;height:44px}.cp-sheet-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10050;background:#00000080;animation:.18s ease-out cp-fade-in;position:fixed;inset:0}.cp-sheet{background:var(--cp-bar-bg);max-height:88vh;color:var(--cp-text);border-top:1px solid var(--cp-border-strong);z-index:10051;border-radius:18px 18px 0 0;flex-direction:column;animation:.24s cubic-bezier(.32,.72,0,1) cp-sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 40px #00000073}@supports (max-height:88dvh){.cp-sheet{max-height:88dvh}}@keyframes cp-sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes cp-fade-in{0%{opacity:0}to{opacity:1}}.cp-sheet-handle{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-shrink:0}.cp-sheet-handle:active{cursor:grabbing}.cp-sheet-grip{background:var(--cp-border-strong);border-radius:999px;flex-shrink:0;width:38px;height:4px;margin:10px auto 4px}.cp-sheet-head{border-bottom:1px solid var(--cp-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 14px 10px;display:flex}.cp-sheet-title{font-size:15px;font-weight:700}.cp-sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;padding:4px 14px 14px;overflow-y:auto}.cp-sheet-section{border-bottom:1px solid var(--cp-border);padding:14px 0}.cp-sheet-section:last-child{border-bottom:none}.cp-sheet-section .cp-zone-title{margin-bottom:10px}.cp-sheet-fields .cp-options-row,.cp-sheet-fields{flex-direction:column;align-items:stretch;gap:12px;display:flex}.cp-sheet-fields .cp-field{width:100%}.control-panel.cp-sheet-root{display:contents}.cp-sheet select,.cp-sheet input[type=text],.cp-sheet .cp-btn:not(.cp-btn--icon),.cp-sheet .cp-dropdown-trigger{box-sizing:border-box;width:100%;max-width:100%;height:42px;font-size:16px}.cp-sheet .cp-btn--icon{flex-shrink:0;width:38px;height:38px}.cp-sheet .cp-picker-trigger{height:42px;font-size:15px}.cp-sheet .cp-toggle{height:42px;font-size:14px}.cp-sheet-toggles{flex-direction:column;gap:2px;display:flex}.cp-sheet-actions{gap:8px;display:flex}.cp-sheet-actions .cp-btn{flex:1}.cp-sheet .cp-db-status{width:fit-content;height:34px}.cp-sheet .dropdown-content,.cp-sheet .cp-picker-panel{box-sizing:border-box;width:100%;max-width:100%;min-width:0!important}.cp-sheet .cp-autocomplete-panel{position:absolute}.cp-sheet-foot{padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--cp-border);background:var(--cp-surface-sunken);flex-shrink:0}@media (width<=767px){.cp-sheet input[type=text]{width:100%!important}.cp-sheet .cp-picker-list{max-height:45dvh}.cp-sheet .dropdown-content label,.cp-sheet .cp-picker-option,.cp-sheet .cp-autocomplete-item{min-height:40px}.cp-sheet .dropdown-content label{align-items:center;display:flex}}.scale-to-fit{width:100%;overflow:visible}.scale-to-fit-inner{transform-origin:0 0;will-change:transform;flex-direction:column;display:flex}.widget.widget-mobile{border-radius:14px;transition:transform .18s cubic-bezier(.32,.72,0,1),box-shadow .18s,opacity .18s;box-shadow:0 1px 2px #00000029,0 6px 16px -8px #00000057}.widget.widget-mobile.is-reordering{z-index:20;cursor:grabbing;transform:scale(1.03);box-shadow:0 10px 28px #0000006b}.widget.widget-mobile.is-reordering .widget-mobile-grip{background:var(--cp-accent,#3b82f6)}.widget.widget-mobile.is-reordering .widget-header,.widget.widget-mobile.is-reordering .widget-mobile-chrome{touch-action:none}.widget.widget-mobile.is-reorder-peer{opacity:.62;transform:scale(.985)}.dashboard-stack:has(.is-reordering){-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion:reduce){.widget.widget-mobile{transition:none}.widget.widget-mobile.is-reordering,.widget.widget-mobile.is-reorder-peer{transform:none}}.ob-scrim{z-index:10100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080a0e9e;justify-content:center;align-items:center;padding:20px;animation:.2s both ob-fade;display:flex;position:fixed;inset:0}.ob-dialog{background:var(--cp-bg,#1c1c21);width:100%;max-height:calc(100vh - 40px);color:var(--cp-text,#f1f1f4);border:1px solid var(--cp-border,#35353d);border-radius:16px;flex-direction:column;animation:.28s cubic-bezier(.32,.72,0,1) both ob-rise;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #00000080}.ob-dialog--guide{max-width:560px}.ob-dialog--legal{max-width:760px}@keyframes ob-fade{0%{opacity:0}to{opacity:1}}@keyframes ob-rise{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}.ob-icon-btn{color:var(--cp-text-muted,#9b9ba6);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.78rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.ob-icon-btn:hover{background:var(--cp-surface-hover,#2f2f36);color:var(--cp-text,#f1f1f4)}.ob-icon-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-guide-top{z-index:3;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;top:12px;left:12px;right:12px}.ob-guide-top>*{pointer-events:auto}.ob-skip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0e128c}.ob-lang--guide{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0e128c;border-color:#ffffff24}.ob-lang--guide button{padding:5px 13px;font-size:.78rem}.ob-stage{background:radial-gradient(120% 100% at 50% 0%, #3b82f629, transparent 62%), var(--cp-surface-sunken,#17171a);border-bottom:1px solid var(--cp-border,#35353d);flex-shrink:0;justify-content:center;align-items:center;height:176px;display:flex;overflow:hidden}.ob-art{width:240px;height:120px;position:relative}.ob-art--live{justify-content:center;align-items:center;display:flex}.ob-live-glyph{color:var(--cp-accent,#3b82f6);z-index:1;position:relative}.ob-pulse{border:1.5px solid var(--cp-accent,#3b82f6);border-radius:999px;width:44px;height:44px;margin:-22px 0 0 -22px;animation:2.6s ease-out infinite ob-ping;position:absolute;top:50%;left:50%}.ob-pulse--b{animation-delay:.85s}.ob-pulse--c{animation-delay:1.7s}@keyframes ob-ping{0%{opacity:.65;transform:scale(.6)}to{opacity:0;transform:scale(2.6)}}.ob-art--add{align-items:center;gap:18px;display:flex}.ob-panel-mock{flex-direction:column;gap:8px;display:flex}.ob-mock-row{color:var(--cp-text-faint,#6f6f7a);align-items:center;gap:8px;font-size:.66rem;font-weight:700;display:flex}.ob-mock-chip{background:var(--cp-surface,#26262c);border-radius:4px;width:74px;height:13px;animation:3.6s ease-in-out infinite ob-fill;display:block}.ob-step-1{animation-delay:0s}.ob-step-2{animation-delay:.35s}.ob-step-3{animation-delay:.7s}@keyframes ob-fill{0%,8%{background:var(--cp-surface,#26262c)}18%,62%{background:var(--cp-accent,#3b82f6)}76%,to{background:var(--cp-surface,#26262c)}}.ob-card-drop{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border-strong,#46464f);border-radius:8px;width:104px;height:74px;animation:3.6s ease-in-out infinite ob-drop}@keyframes ob-drop{0%,68%{opacity:0;transform:translateY(-10px)scale(.94)}80%,94%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)scale(.94)}}.ob-art--desktop{align-items:center;gap:20px;display:flex}.ob-win{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border-strong,#46464f);border-radius:8px;width:100px;height:72px;padding:7px;position:relative}.ob-win-bar{background:var(--cp-text-faint,#6f6f7a);border-radius:3px;width:58%;height:6px;display:block}.ob-win--move{animation:3s ease-in-out infinite ob-move}@keyframes ob-move{0%,12%{transform:none}45%,62%{transform:translate(12px,-9px)}92%,to{transform:none}}.ob-win--resize{animation:3s ease-in-out infinite ob-resize}@keyframes ob-resize{0%,12%{width:100px;height:72px}45%,62%{width:122px;height:88px}92%,to{width:100px;height:72px}}.ob-win-grip{border-right:2px solid var(--cp-text-faint,#6f6f7a);border-bottom:2px solid var(--cp-text-faint,#6f6f7a);width:8px;height:8px;position:absolute;bottom:3px;right:3px}.ob-cursor{color:var(--cp-text,#f1f1f4);filter:drop-shadow(0 1px 2px #0009);position:absolute}.ob-cursor--drag{animation:3s ease-in-out infinite ob-move;top:10px;left:40px}.ob-cursor--corner{animation:3s ease-in-out infinite ob-corner;bottom:-4px;right:-4px}@keyframes ob-corner{0%,12%{transform:none}45%,62%{transform:translate(22px,16px)}92%,to{transform:none}}.ob-art--mobile{justify-content:center;align-items:center;display:flex}.ob-phone{background:var(--cp-surface-sunken,#17171a);border:1px solid var(--cp-border,#35353d);border-radius:12px;flex-direction:column;gap:10px;width:116px;padding:10px;display:flex}.ob-phone-card{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border-strong,#46464f);border-radius:7px;height:40px;padding:7px;position:relative}.ob-phone-card--lift{z-index:2;animation:3.4s ease-in-out infinite ob-lift}@keyframes ob-lift{0%,22%{box-shadow:none;transform:none}34%,46%{transform:scale(1.05);box-shadow:0 8px 18px #00000073}64%,84%{transform:translateY(50px)scale(1.05);box-shadow:0 8px 18px #00000073}96%,to{box-shadow:none;transform:none}}.ob-phone-card--peer{animation:3.4s ease-in-out infinite ob-peer}@keyframes ob-peer{0%,46%{opacity:1;transform:none}64%,84%{opacity:.6;transform:translateY(-50px)}96%,to{opacity:1;transform:none}}.ob-tap{border:2px solid var(--cp-accent,#3b82f6);border-radius:999px;width:16px;height:16px;margin:-3px 0 0 -3px;animation:3.4s ease-out infinite ob-tapping;position:absolute;top:8px;left:46px}.ob-tap--second{animation-delay:.24s}@keyframes ob-tapping{0%{opacity:0;transform:scale(.4)}6%{opacity:.9;transform:scale(.4)}16%{opacity:0;transform:scale(1.8)}to{opacity:0}}.ob-body{padding:22px 26px 6px;animation:.3s cubic-bezier(.32,.72,0,1) both ob-slide;overflow-y:auto}@keyframes ob-slide{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.ob-title{letter-spacing:-.01em;text-wrap:balance;margin:0 0 6px;font-size:1.22rem;font-weight:700}.ob-lead{color:var(--cp-text-muted,#9b9ba6);margin:0 0 16px;font-size:.92rem;line-height:1.55}.ob-warn{background:#d9a75a21;border-left:3px solid #d9a75a;border-radius:0 8px 8px 0;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;font-size:.87rem;line-height:1.5;display:flex}.ob-warn svg{color:#d9a75a;flex-shrink:0;margin-top:1px}.ob-points,.ob-gestures{flex-direction:column;gap:10px;margin:0 0 6px;padding:0;list-style:none;display:flex}.ob-points li{align-items:flex-start;gap:11px;font-size:.9rem;line-height:1.5;animation:.34s cubic-bezier(.32,.72,0,1) both ob-step-in;display:flex}@keyframes ob-step-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.ob-tick{color:var(--cp-accent,#3b82f6);flex-shrink:0;margin-top:2px}.ob-num{background:var(--cp-accent,#3b82f6);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:.72rem;font-weight:700;display:inline-flex}.ob-gestures li{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border,#35353d);border-radius:9px;flex-direction:column;gap:2px;padding:10px 13px;animation:.34s cubic-bezier(.32,.72,0,1) both ob-step-in;display:flex}.ob-gestures strong{font-size:.88rem;font-weight:650}.ob-gestures span{color:var(--cp-text-muted,#9b9ba6);font-size:.83rem}.ob-platform,.ob-lang{background:var(--cp-surface-sunken,#17171a);border:1px solid var(--cp-border,#35353d);border-radius:999px;gap:2px;margin:0 0 14px;padding:2px;display:inline-flex}.ob-platform button,.ob-lang button{color:var(--cp-text-muted,#9b9ba6);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:.76rem;font-weight:600;transition:background .16s,color .16s;display:inline-flex}.ob-platform button[data-active=true],.ob-lang button[data-active=true]{background:var(--cp-accent,#3b82f6);color:#fff}.ob-platform button:focus-visible,.ob-lang button:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-lang{margin:0}.ob-foot{flex-shrink:0;justify-content:space-between;align-items:center;gap:14px;padding:16px 26px 12px;display:flex}.ob-dots{gap:7px;display:flex}.ob-dot{background:var(--cp-border-strong,#46464f);cursor:pointer;border:none;border-radius:999px;width:7px;height:7px;padding:0;transition:width .24s cubic-bezier(.32,.72,0,1),background .2s}.ob-dot[data-done=true]{background:var(--cp-accent,#3b82f6);opacity:.5}.ob-dot[data-active=true]{background:var(--cp-accent,#3b82f6);opacity:1;width:20px}.ob-dot:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-foot-actions{align-items:center;gap:8px;display:flex}.ob-btn{cursor:pointer;border:1px solid #0000;border-radius:9px;align-items:center;gap:7px;padding:9px 16px;font-size:.86rem;font-weight:650;transition:background .16s,border-color .16s,transform .12s;display:inline-flex}.ob-btn:active{transform:translateY(1px)}.ob-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-btn--primary{background:var(--cp-accent,#3b82f6);color:#fff}.ob-btn--primary:hover{background:var(--cp-accent-hover,#2f74e6)}.ob-btn--ghost{color:var(--cp-text-muted,#9b9ba6);border-color:var(--cp-border,#35353d);background:0 0}.ob-btn--ghost:hover{color:var(--cp-text,#f1f1f4);border-color:var(--cp-border-strong,#46464f)}.ob-optout{border-top:1px solid var(--cp-border,#35353d);background:var(--cp-surface-sunken,#17171a);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:13px 26px;display:flex}.ob-check{color:var(--cp-text-muted,#9b9ba6);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:.84rem;display:inline-flex}.ob-check input{opacity:0;width:0;height:0;position:absolute}.ob-check-box{background:var(--cp-surface,#26262c);border:1.5px solid var(--cp-border-strong,#46464f);color:#0000;border-radius:5px;justify-content:center;align-items:center;width:18px;height:18px;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.ob-check input:checked+.ob-check-box{background:var(--cp-accent,#3b82f6);border-color:var(--cp-accent,#3b82f6);color:#fff}.ob-check input:focus-visible+.ob-check-box{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638)}.ob-check:hover .ob-check-box{border-color:var(--cp-accent,#3b82f6)}.ob-link{color:var(--cp-accent,#3b82f6);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-items:center;gap:6px;padding:4px 2px;font-size:.83rem;font-weight:600;text-decoration:underline;display:inline-flex}.ob-link:hover{color:var(--cp-accent-hover,#2f74e6)}.ob-link:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);border-radius:5px;outline:none}.ob-legal-head{border-bottom:1px solid var(--cp-border,#35353d);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px 12px 16px;display:flex}.ob-legal-tabs{flex-wrap:wrap;gap:4px;display:flex}.ob-legal-tab{color:var(--cp-text-muted,#9b9ba6);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:.82rem;font-weight:600;transition:background .16s,color .16s;display:inline-flex}.ob-legal-tab[data-active=true]{background:var(--cp-accent,#3b82f6);color:#fff}.ob-legal-tab:hover[data-active=false]{background:var(--cp-surface-hover,#2f2f36);color:var(--cp-text,#f1f1f4)}.ob-legal-tab:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-legal-actions{align-items:center;gap:8px;display:flex}.ob-legal-body{padding:22px 26px 28px;line-height:1.62;animation:.26s cubic-bezier(.32,.72,0,1) both ob-slide;overflow-y:auto}.ob-legal-title{letter-spacing:-.01em;margin:0 0 3px;font-size:1.3rem;font-weight:700}.ob-legal-updated{color:var(--cp-text-faint,#6f6f7a);font-variant-numeric:tabular-nums;margin:0 0 16px;font-size:.75rem}.ob-legal-intro{color:var(--cp-text,#f1f1f4);max-width:68ch;margin:0 0 22px;font-size:.95rem}.ob-legal-section{max-width:72ch;margin-bottom:22px}.ob-legal-section h3{margin:0 0 7px;font-size:.95rem;font-weight:700}.ob-legal-section p{color:var(--cp-text-muted,#9b9ba6);margin:0 0 9px;font-size:.88rem}.ob-legal-section[data-tone=warning]{background:#d9a75a1c;border-left:3px solid #d9a75a;border-radius:0 8px 8px 0;max-width:none;padding:14px 16px}.ob-legal-section[data-tone=warning] h3{color:#e5bd7d}.ob-legal-section[data-tone=warning] p{color:var(--cp-text,#f1f1f4)}.ob-sources{flex-direction:column;gap:10px;margin:0 0 20px;padding:0;list-style:none;display:flex}.ob-sources li{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border,#35353d);border-radius:9px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.ob-sources strong{font-size:.88rem}.ob-source-scope{color:var(--cp-text-muted,#9b9ba6);font-size:.82rem}.ob-sources code{color:var(--cp-text-faint,#6f6f7a);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem}.ob-legal-note{color:var(--cp-text-faint,#6f6f7a);max-width:72ch;font-size:.8rem}@media (width<=640px){.ob-scrim{align-items:flex-end;padding:0}.ob-dialog{border-bottom:none;border-radius:18px 18px 0 0;max-height:94vh}.ob-stage{height:148px}.ob-body,.ob-legal-body,.ob-foot,.ob-optout{padding-left:18px;padding-right:18px}.ob-foot{flex-direction:column-reverse;align-items:stretch;gap:12px}.ob-foot-actions{justify-content:stretch}.ob-foot-actions .ob-btn{flex:1 1 0;justify-content:center}.ob-dots{justify-content:center}.ob-legal-head{flex-direction:column;align-items:stretch;gap:10px}}@media (prefers-reduced-motion:reduce){.ob-scrim,.ob-dialog,.ob-body,.ob-legal-body,.ob-points li,.ob-gestures li,.ob-pulse,.ob-mock-chip,.ob-card-drop,.ob-win--move,.ob-win--resize,.ob-cursor--drag,.ob-cursor--corner,.ob-phone-card--lift,.ob-phone-card--peer,.ob-tap{animation:none!important}.ob-dot,.ob-btn{transition:none}}.app-legal-bar{z-index:40;padding:5px 12px calc(5px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg-color,#121212) 55%, transparent);color:var(--subtext-color,#aaa);pointer-events:none;justify-content:center;align-items:center;gap:8px;font-size:.72rem;display:flex;position:fixed;bottom:0;left:0;right:0}.app-legal-bar .app-legal-contact{align-items:center;gap:4px;display:inline-flex}.app-legal-bar button,.app-legal-bar .app-legal-contact{color:inherit;font-size:inherit;cursor:pointer;pointer-events:auto;text-underline-offset:3px;opacity:.72;background:0 0;border:none;padding:3px 4px;font-family:inherit;text-decoration:underline;transition:opacity .15s,color .15s}.app-legal-bar button:hover,.app-legal-bar .app-legal-contact:hover{opacity:1;color:var(--text-color,#fff)}.app-legal-bar button:focus-visible,.app-legal-bar .app-legal-contact:focus-visible{opacity:1;box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);border-radius:4px;outline:none}.borderless-mode~.app-legal-bar{display:none}body:has(.borderless-mode) .app-legal-bar{display:none}@media (width<=640px){.app-legal-bar{font-size:.68rem}}.ob-region{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;display:flex}.ob-region-label{letter-spacing:.06em;text-transform:uppercase;color:var(--cp-text-faint,#6f6f7a);margin-right:2px;font-size:.75rem;font-weight:600}.ob-region button{background:var(--cp-surface,#26262c);border:1px solid var(--cp-border,#35353d);color:var(--cp-text-muted,#9b9ba6);cursor:pointer;border-radius:999px;padding:4px 11px;font-size:.78rem;font-weight:600;transition:background .16s,color .16s,border-color .16s}.ob-region button[data-active=true]{background:var(--cp-accent,#3b82f6);border-color:var(--cp-accent,#3b82f6);color:#fff}.ob-region button:hover[data-active=false]{border-color:var(--cp-border-strong,#46464f);color:var(--cp-text,#f1f1f4)}.ob-region button:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-legal-jurisdiction{background:var(--cp-surface,#26262c);border-left:3px solid var(--cp-accent,#3b82f6);color:var(--cp-text-muted,#9b9ba6);border-radius:0 6px 6px 0;margin:0 0 18px;padding:9px 13px;font-size:.83rem}.tabbusy{z-index:10200;background:var(--bg-color,#121212);color:var(--text-color,#fff);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tabbusy-card{background:var(--card-bg,#1e1e1e);border:1px solid var(--border,#333);text-align:left;border-radius:16px;width:min(440px,100%);padding:30px 30px 26px;box-shadow:0 24px 60px -20px #0009}.tabbusy-glyph{background:var(--cp-accent-soft,#3b82f638);width:42px;height:42px;color:var(--cp-accent,#3b82f6);border-radius:12px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.tabbusy-title{text-wrap:balance;margin:0 0 10px;font-size:1.3rem;font-weight:700;line-height:1.25}.tabbusy-lead,.tabbusy-note,.tabbusy-hint{color:var(--subtext-color,#aaa);margin:0 0 12px;font-size:.92rem;line-height:1.55}.tabbusy-note{margin-bottom:20px}.tabbusy-btn{background:var(--cp-accent,#3b82f6);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 18px;font-family:inherit;font-size:.95rem;font-weight:600;transition:background .16s;display:inline-flex}.tabbusy-btn:hover{background:var(--cp-accent-hover,#2f74e6)}.tabbusy-btn:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.tabbusy-hint{margin:12px 0 0;font-size:.82rem}.ob-contact{background:var(--cp-accent-soft,#3b82f629);color:var(--cp-accent,#3b82f6);border-radius:10px;align-items:center;gap:9px;margin-top:18px;padding:11px 13px;font-size:.88rem;line-height:1.45;text-decoration:none;transition:background .16s;display:flex}.ob-contact:hover{background:var(--cp-accent-soft,#3b82f642);text-underline-offset:3px;text-decoration:underline}.ob-contact:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);outline:none}.ob-contact>svg:first-child{flex-shrink:0}.ob-contact>svg:last-child{opacity:.7;flex-shrink:0}.ob-legal-foot{border-top:1px solid var(--cp-border,#35353d);background:var(--cp-surface-sunken,#17171a);color:var(--cp-text-muted,#9b9ba6);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:11px 22px;font-size:.78rem;display:flex}.ob-legal-foot a{color:var(--cp-accent,#3b82f6);align-items:center;gap:5px;font-weight:600;text-decoration:none;display:inline-flex}.ob-legal-foot a:hover{text-underline-offset:3px;text-decoration:underline}.ob-legal-foot a:focus-visible{box-shadow:0 0 0 3px var(--cp-accent-soft,#3b82f638);border-radius:4px;outline:none}
