:root{color-scheme:light dark;--radius: 12px;--font: system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", Menlo, monospace;--ease: .15s ease;--bg: #f1f5f9;--surface: #ffffff;--preview: #0b1020;--border: rgba(15, 23, 42, .1);--text: #0f172a;--muted: #64748b;--accent: #14b8a6;--accent-soft: rgba(20, 184, 166, .14);--success: #059669;--success-soft: rgba(5, 150, 105, .12);--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .1);--track: #e2e8f0;--scan: #38bdf8;--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .04);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px)}@media(prefers-color-scheme:dark){:root{--bg: #070b14;--surface: #111827;--preview: #05080f;--border: rgba(148, 163, 184, .14);--text: #e2e8f0;--muted: #94a3b8;--accent: #2dd4bf;--accent-soft: rgba(45, 212, 191, .16);--success: #34d399;--success-soft: rgba(52, 211, 153, .14);--danger: #f87171;--danger-soft: rgba(248, 113, 113, .14);--track: #1e293b;--shadow: 0 1px 3px rgba(0, 0, 0, .3), 0 12px 32px rgba(0, 0, 0, .25)}}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font);line-height:1.45;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--text)}#app{width:min(100%,960px);margin:0 auto;padding:max(.75rem,var(--safe-top)) 1rem calc(1.25rem + var(--safe-bottom))}.site-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.brand{display:flex;align-items:center;gap:.65rem;min-width:0}.brand-mark{width:2.25rem;height:2.25rem;border-radius:.65rem;background:var(--accent);display:grid;place-items:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 28%,transparent)}.brand-mark svg{width:58%;height:58%;display:block}.brand h1{margin:0;font-size:clamp(1.05rem,3.5vw,1.25rem);font-weight:700;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.85rem;box-shadow:var(--shadow)}.tab{appearance:none;border:none;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.92rem;padding:.7rem .5rem;border-radius:calc(var(--radius) - 4px);cursor:pointer;transition:var(--ease);min-height:2.75rem;touch-action:manipulation}.tab:hover{color:var(--text)}.tab.active{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}.panel{display:none}.panel.active{display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem;box-shadow:var(--shadow)}.card-split{display:grid;gap:0;padding:0;overflow:hidden;align-items:stretch}.split-controls{padding:.9rem;min-width:0}.split-preview{padding:.65rem .75rem .75rem;min-width:0;display:flex;flex-direction:column;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface-muted, var(--surface)) 55%,transparent)}@media(min-width:720px){.card-split{grid-template-columns:minmax(0,17rem) minmax(0,1fr)}.split-preview{border-top:none;border-left:1px solid var(--border)}}@media(min-width:900px){.card-split{grid-template-columns:minmax(0,19rem) minmax(0,1fr)}}.card-preview{padding:.65rem}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;min-height:1.25rem}.card-meta span{font-size:.8rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}label{display:block;font-size:.72rem;font-weight:600;color:var(--muted);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.04em}.field{margin-bottom:.7rem}.field:last-of-type{margin-bottom:.85rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.7rem}input[type=text],select{width:100%;padding:.65rem .7rem;border-radius:9px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:.95rem;min-height:2.6rem;touch-action:manipulation}input[type=text]:focus,select:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 3px var(--accent-soft)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.actions-3{grid-template-columns:1fr 1fr 1fr}.actions-full{grid-template-columns:1fr;margin-top:.45rem}button{appearance:none;border:1px solid transparent;border-radius:9px;padding:.65rem .55rem;font:inherit;font-weight:600;font-size:.88rem;cursor:pointer;transition:var(--ease);min-height:2.65rem;touch-action:manipulation;white-space:nowrap}button:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#0ea5e9,#6366f1);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(1.06)}.btn-secondary{background:var(--bg);border-color:var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--accent-soft)}.btn-danger{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger)}.btn-success{background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 30%,transparent);color:var(--success)}.dropzone{border:1.5px dashed color-mix(in srgb,var(--muted) 40%,transparent);border-radius:10px;padding:.85rem .65rem;text-align:center;color:var(--muted);background:var(--bg);cursor:pointer;font-size:.88rem;transition:var(--ease);min-height:3.5rem;display:flex;align-items:center;justify-content:center;touch-action:manipulation}.dropzone:hover,.dropzone.dragover{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.preview-wrap{position:relative;background:var(--preview);border:1px solid var(--border);border-radius:10px;overflow:hidden;width:100%;aspect-ratio:5 / 4;max-height:min(70dvh,560px)}@media(min-width:720px){.preview-wrap{max-height:min(75dvh,640px)}}.preview-wrap canvas{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:crisp-edges;background:#0a0e18}.preview-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:.85rem;pointer-events:none;z-index:1;padding:1rem;text-align:center}.preview-wrap.has-image .preview-placeholder{display:none}.scan-overlay{position:absolute;left:0;right:0;height:2px;background:var(--scan);box-shadow:0 0 10px var(--scan);pointer-events:none;opacity:0;z-index:2;transition:opacity .12s ease,top .06s linear}.scan-overlay.visible{opacity:1}.live-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--danger);opacity:0;flex-shrink:0}.live-dot.active{opacity:1;animation:pulse 1.1s ease infinite}@keyframes pulse{50%{opacity:.35}}.status{margin-top:.7rem;padding:.55rem .65rem;border-radius:9px;background:var(--bg);border:1px solid var(--border);font-size:.8rem;color:var(--muted);font-family:var(--mono);word-break:break-word;line-height:1.35}.status.info{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.status.ok{color:var(--success);background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 25%,var(--border))}.status.err{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 25%,var(--border))}.bars{display:grid;gap:.4rem;margin-top:.65rem}.bar{height:6px;background:var(--track);border-radius:999px;overflow:hidden}.bar>span{display:block;height:100%;width:0%;border-radius:inherit;transition:width .08s linear}.bar-level>span{background:linear-gradient(90deg,#22d3ee,#2dd4bf)}.bar-progress>span{background:linear-gradient(90deg,var(--accent),#14b8a6);transition:width .12s ease}.site-footer{margin-top:1.25rem;padding-top:.75rem;border-top:1px solid var(--border);color:var(--muted);font-size:.75rem;text-align:center}.site-footer .footer-link{color:var(--muted);text-decoration:none;font-weight:600}.site-footer .footer-link:hover{color:var(--text)}@media(max-width:380px){#app{padding-left:.75rem;padding-right:.75rem}.actions-3{grid-template-columns:1fr 1fr}.actions-3 .btn-primary{grid-column:1 / -1}button{font-size:.82rem;padding:.6rem .4rem}}@media(max-height:500px)and (min-width:640px){.preview-wrap{max-height:min(80dvh,420px)}}.split-preview{min-width:0;min-height:0;overflow:hidden}.preview-wrap.qr-wrap{width:min(100%,min(70dvh,28rem));max-width:100%;aspect-ratio:1 / 1;height:auto;margin-inline:auto;background:#fff;display:flex;align-items:center;justify-content:center;padding:clamp(.5rem,2.5vw,.9rem);box-sizing:border-box;overflow:hidden;max-height:min(70dvh,28rem)}.preview-wrap.qr-wrap canvas{position:static!important;inset:auto!important;width:100%!important;height:100%!important;max-width:100%;max-height:100%;object-fit:contain;background:#fff!important;image-rendering:pixelated;image-rendering:crisp-edges;padding:0!important;margin:0;flex:0 1 auto;display:block}@media(min-width:720px){.preview-wrap.qr-wrap{width:min(100%,min(68dvh,32rem));max-height:min(68dvh,32rem)}}@media(max-height:500px)and (min-width:640px){.preview-wrap.qr-wrap{width:min(100%,min(78dvh,22rem));max-height:min(78dvh,22rem)}}.preview-wrap.video-wrap{aspect-ratio:3 / 4;background:#000}.preview-wrap.video-wrap video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.preview-wrap.video-wrap canvas.scan-canvas{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.progress-track{height:.45rem;border-radius:999px;background:var(--track);overflow:hidden;margin-top:.55rem}.progress-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#14b8a6,#6366f1);transition:width .15s ease}.hint{font-size:.78rem;color:var(--muted);line-height:1.4;margin:0 0 .65rem}.meta-stack{display:flex;flex-direction:column;gap:.15rem;min-width:0}.meta-stack strong{font-size:.85rem;font-weight:650;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}input[type=range]{width:100%;accent-color:var(--accent)}.range-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.range-row span{font-size:.8rem;font-family:var(--mono);color:var(--muted);min-width:3.5rem;text-align:right}.check-row{display:flex;align-items:center;gap:.45rem;margin-bottom:.7rem;font-size:.88rem;color:var(--text)}.check-row input{width:1.05rem;height:1.05rem;accent-color:var(--accent)}.chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:650;padding:.2rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}html[data-skin=liquid-glass]{color-scheme:light dark;--radius: 18px;--radius-lg: 24px;--radius-pill: 999px;--ease: .22s cubic-bezier(.22, 1, .36, 1);--ease-press: .12s cubic-bezier(.4, 0, .2, 1);--bg: #dfe8f5;--bg-elevated: #eaf0fa;--surface: rgba(255, 255, 255, .62);--surface-hover: rgba(255, 255, 255, .78);--surface-muted: rgba(255, 255, 255, .42);--surface-solid: rgba(255, 255, 255, .88);--text: #0b1220;--muted: #5a6a82;--border: rgba(255, 255, 255, .72);--border-dark: rgba(15, 23, 42, .1);--border-strong: rgba(15, 23, 42, .14);--accent: #2b7fff;--accent-soft: rgba(43, 127, 255, .14);--success: #0d9f6e;--success-soft: rgba(13, 159, 110, .12);--danger: #e5484d;--danger-soft: rgba(229, 72, 77, .12);--warn: #d99a00;--warn-soft: rgba(217, 154, 0, .14);--brand-gradient: linear-gradient(145deg, #38bdf8 0%, #818cf8 45%, #e879f9 100%);--accent-fallback: var(--accent);--shadow-xs: 0 1px 0 rgba(255, 255, 255, .85) inset, 0 -1px 0 rgba(15, 23, 42, .04) inset, 0 1px 2px rgba(15, 23, 42, .06);--shadow: 0 1.5px 0 rgba(255, 255, 255, .9) inset, 0 -1px 0 rgba(15, 23, 42, .06) inset, 0 4px 14px rgba(15, 23, 42, .08), 0 1px 3px rgba(15, 23, 42, .05);--shadow-lg: 0 1.5px 0 rgba(255, 255, 255, .95) inset, 0 -1px 0 rgba(15, 23, 42, .05) inset, 0 18px 48px rgba(15, 23, 42, .12), 0 6px 16px rgba(15, 23, 42, .06);--shadow-float: 0 2px 0 rgba(255, 255, 255, .95) inset, 0 -1px 1px rgba(15, 23, 42, .06) inset, 0 24px 64px rgba(15, 23, 42, .16), 0 8px 20px rgba(15, 23, 42, .08);--shadow-pressed: 0 2px 6px rgba(15, 23, 42, .12) inset, 0 1px 0 rgba(255, 255, 255, .35) inset;--face: linear-gradient(180deg, rgba(255, 255, 255, .92) 0%, rgba(255, 255, 255, .55) 100%);--face-hover: linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .7) 100%);--face-accent: linear-gradient(180deg, color-mix(in srgb, var(--accent) 18%, #fff) 0%, color-mix(in srgb, var(--accent) 8%, #fff) 100%);--glass-blur: 28px;--glass-saturate: 1.45;--bg-mesh: radial-gradient(1100px 580px at 5% -15%, rgba(56, 189, 248, .38), transparent 55%), radial-gradient(900px 520px at 100% -5%, rgba(129, 140, 248, .28), transparent 50%), radial-gradient(800px 480px at 70% 100%, rgba(232, 121, 249, .14), transparent 50%), radial-gradient(600px 400px at 0% 80%, rgba(255, 255, 255, .5), transparent 45%), linear-gradient(165deg, #eef3fb 0%, #dce6f4 48%, #e8edf7 100%);--preview: rgba(11, 18, 32, .94);--track: rgba(15, 23, 42, .08);--scan: #38bdf8;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}@media(prefers-color-scheme:dark){html[data-skin=liquid-glass]{--bg: #05070d;--bg-elevated: #0a0e18;--surface: rgba(22, 28, 44, .62);--surface-hover: rgba(34, 42, 64, .78);--surface-muted: rgba(14, 18, 30, .55);--surface-solid: rgba(18, 24, 40, .9);--text: #f0f4ff;--muted: #93a0b8;--border: rgba(255, 255, 255, .14);--border-dark: rgba(0, 0, 0, .45);--border-strong: rgba(255, 255, 255, .2);--accent: #5eb1ff;--accent-soft: rgba(94, 177, 255, .16);--success: #34d399;--success-soft: rgba(52, 211, 153, .14);--danger: #ff7a81;--danger-soft: rgba(255, 122, 129, .14);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .14);--brand-gradient: linear-gradient(145deg, #38bdf8 0%, #a78bfa 48%, #f472b6 100%);--shadow-xs: 0 1px 0 rgba(255, 255, 255, .1) inset, 0 -1px 0 rgba(0, 0, 0, .35) inset, 0 1px 3px rgba(0, 0, 0, .4);--shadow: 0 1.5px 0 rgba(255, 255, 255, .12) inset, 0 -1px 0 rgba(0, 0, 0, .4) inset, 0 8px 28px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .35);--shadow-lg: 0 1.5px 0 rgba(255, 255, 255, .12) inset, 0 -1px 0 rgba(0, 0, 0, .45) inset, 0 24px 64px rgba(0, 0, 0, .6), 0 8px 20px rgba(0, 0, 0, .45);--shadow-float: 0 2px 0 rgba(255, 255, 255, .14) inset, 0 -1px 1px rgba(0, 0, 0, .5) inset, 0 28px 72px rgba(0, 0, 0, .65), 0 10px 24px rgba(0, 0, 0, .5);--shadow-pressed: 0 3px 10px rgba(0, 0, 0, .55) inset, 0 1px 0 rgba(255, 255, 255, .06) inset;--face: linear-gradient(180deg, rgba(48, 56, 80, .75) 0%, rgba(22, 28, 44, .55) 100%);--face-hover: linear-gradient(180deg, rgba(58, 68, 96, .85) 0%, rgba(30, 38, 58, .7) 100%);--face-accent: linear-gradient( 180deg, color-mix(in srgb, var(--accent) 28%, #1e293b) 0%, color-mix(in srgb, var(--accent) 12%, #0f172a) 100% );--bg-mesh: radial-gradient(1000px 520px at 0% -12%, rgba(56, 189, 248, .2), transparent 55%), radial-gradient(860px 480px at 100% 0%, rgba(167, 139, 250, .18), transparent 50%), radial-gradient(700px 420px at 50% 110%, rgba(244, 114, 182, .1), transparent 55%), linear-gradient(165deg, #070a12 0%, #04060c 50%, #060912 100%);--preview: #03050a;--track: rgba(255, 255, 255, .08);--scan: #5eb1ff}}html[data-skin=liquid-glass],html[data-skin=liquid-glass] body{background-color:var(--bg);background-image:var(--bg-mesh);background-attachment:fixed;background-repeat:no-repeat;background-size:cover}html[data-skin=liquid-glass] body.admin-panel{background:#030712;background-image:none}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){html[data-skin=liquid-glass] .sidebar,html[data-skin=liquid-glass] .mobile-header,html[data-skin=liquid-glass] .bus-info-panel,html[data-skin=liquid-glass] .no-buses-overlay,html[data-skin=liquid-glass] .status-toast,html[data-skin=liquid-glass] .toast-card,html[data-skin=liquid-glass] .idle-card,html[data-skin=liquid-glass] .idle-overlay,html[data-skin=liquid-glass] .mode-toggle,html[data-skin=liquid-glass] .tabs,html[data-skin=liquid-glass] .card,html[data-skin=liquid-glass] .panel,html[data-skin=liquid-glass] .app,html[data-skin=liquid-glass] .site-header{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}html[data-skin=liquid-glass] .idle-overlay{background:#080c1647!important;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2)}}html[data-skin=liquid-glass] .app:has(.main-content),html[data-skin=liquid-glass] .app:has(.map-wrapper){background:transparent!important;background-image:none!important}html[data-skin=liquid-glass] .sidebar,html[data-skin=liquid-glass] .bus-info-panel,html[data-skin=liquid-glass] .no-buses-overlay,html[data-skin=liquid-glass] .toast-card,html[data-skin=liquid-glass] .idle-card,html[data-skin=liquid-glass] .card,html[data-skin=liquid-glass] .panel,html[data-skin=liquid-glass] a.app,html[data-skin=liquid-glass] .apps>.app{background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-float)!important;border-radius:var(--radius-lg)}html[data-skin=liquid-glass] .sidebar{background:color-mix(in srgb,var(--surface) 38%,transparent)!important;border-right:1px solid var(--border)!important;border-radius:0;box-shadow:1px 0 #fff6 inset,8px 0 40px #0f172a1a!important;-webkit-backdrop-filter:blur(32px) saturate(1.55)!important;backdrop-filter:blur(32px) saturate(1.55)!important}@media(prefers-color-scheme:dark){html[data-skin=liquid-glass] .sidebar{background:color-mix(in srgb,var(--surface) 42%,transparent)!important;box-shadow:1px 0 #ffffff14 inset,12px 0 48px #00000073!important}}html[data-skin=liquid-glass] .sidebar-header,html[data-skin=liquid-glass] .sidebar .status-section,html[data-skin=liquid-glass] .sidebar .mode-section,html[data-skin=liquid-glass] .sidebar .stats-section,html[data-skin=liquid-glass] .sidebar .filters-section,html[data-skin=liquid-glass] .sidebar .footer-section,html[data-skin=liquid-glass] .sidebar .sidebar-content{background:transparent!important;border-color:color-mix(in srgb,var(--border) 70%,transparent)!important}html[data-skin=liquid-glass] .sidebar-header{background:color-mix(in srgb,var(--surface) 22%,transparent)!important;border-bottom:1px solid var(--border)!important;-webkit-backdrop-filter:blur(20px) saturate(1.4)!important;backdrop-filter:blur(20px) saturate(1.4)!important}html[data-skin=liquid-glass] .mobile-header{background:color-mix(in srgb,var(--surface) 45%,transparent)!important;border-bottom:1px solid var(--border)!important;-webkit-backdrop-filter:blur(24px) saturate(1.45)!important;backdrop-filter:blur(24px) saturate(1.45)!important}html[data-skin=liquid-glass] .sidebar .stat-card,html[data-skin=liquid-glass] .sidebar .search-input{background:color-mix(in srgb,var(--surface) 55%,transparent)!important;-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);border:1px solid var(--border)!important;box-shadow:var(--shadow-xs)!important}html[data-skin=liquid-glass] .sidebar-overlay{background:#080c1652!important;-webkit-backdrop-filter:blur(8px) saturate(1.15);backdrop-filter:blur(8px) saturate(1.15)}html[data-skin=liquid-glass] .route-filter,html[data-skin=liquid-glass] .mode-btn,html[data-skin=liquid-glass] .tab,html[data-skin=liquid-glass] .sidebar-toggle,html[data-skin=liquid-glass] .sidebar-reopen,html[data-skin=liquid-glass] .clear-btn,html[data-skin=liquid-glass] .idle-continue-btn,html[data-skin=liquid-glass] .app{border-radius:calc(var(--radius) - 2px);transition:transform var(--ease-press),box-shadow var(--ease),background var(--ease),border-color var(--ease),color var(--ease)}html[data-skin=liquid-glass] .route-filter,html[data-skin=liquid-glass] .sidebar-toggle,html[data-skin=liquid-glass] .sidebar-reopen,html[data-skin=liquid-glass] .basemap-toggle,html[data-skin=liquid-glass] a.app,html[data-skin=liquid-glass] .apps>.app{background-image:var(--face)!important;background-color:transparent!important;border:1px solid var(--border)!important;box-shadow:var(--shadow)!important}html[data-skin=liquid-glass] .route-filter:hover,html[data-skin=liquid-glass] .sidebar-toggle:hover,html[data-skin=liquid-glass] .sidebar-reopen:hover,html[data-skin=liquid-glass] .basemap-toggle:hover,html[data-skin=liquid-glass] a.app:hover,html[data-skin=liquid-glass] .apps>.app:hover{background-image:var(--face-hover)!important;transform:translateY(-2px);box-shadow:var(--shadow-lg)!important;border-color:color-mix(in srgb,var(--accent) 28%,var(--border))!important}html[data-skin=liquid-glass] .route-filter:active,html[data-skin=liquid-glass] .sidebar-toggle:active,html[data-skin=liquid-glass] .basemap-toggle:active,html[data-skin=liquid-glass] a.app:active,html[data-skin=liquid-glass] .apps>.app:active,html[data-skin=liquid-glass] .mode-btn:active,html[data-skin=liquid-glass] .tab:active{transform:translateY(1px) scale(.985);box-shadow:var(--shadow-pressed)!important}html[data-skin=liquid-glass] .route-filter.selected,html[data-skin=liquid-glass] .mode-btn.active,html[data-skin=liquid-glass] .tab.active{background-image:var(--face-accent)!important;background-color:transparent!important;border-color:color-mix(in srgb,var(--accent) 45%,var(--border))!important;box-shadow:0 1.5px #ffffffbf inset,0 -1px color-mix(in srgb,var(--accent) 25%,transparent) inset,0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 10px 28px color-mix(in srgb,var(--accent) 22%,transparent),0 2px 6px #0f172a14!important;color:var(--text)!important}html[data-skin=liquid-glass] .mode-toggle,html[data-skin=liquid-glass] .tabs{background:color-mix(in srgb,var(--surface-muted) 55%,transparent)!important;border:1px solid var(--border-dark)!important;box-shadow:0 2px 8px #0f172a14 inset,0 1px #ffffff59!important;border-radius:var(--radius);padding:.3rem}html[data-skin=liquid-glass] .mode-btn,html[data-skin=liquid-glass] .tab{background:transparent;border:1px solid transparent!important;border-radius:calc(var(--radius) - 6px)!important;box-shadow:none!important}html[data-skin=liquid-glass] .mode-btn.active,html[data-skin=liquid-glass] .tab.active{background-image:var(--face)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow)!important}html[data-skin=liquid-glass] .route-badge{border-radius:12px!important;box-shadow:0 1px #ffffff59 inset,0 4px 10px color-mix(in srgb,var(--route-color, var(--accent)) 35%,transparent)!important;border:1px solid color-mix(in srgb,#fff 35%,transparent)!important}html[data-skin=liquid-glass] .route-filter.selected .route-badge{box-shadow:0 1px #ffffff73 inset,0 0 0 2px color-mix(in srgb,var(--route-color, var(--accent)) 35%,transparent),0 6px 16px color-mix(in srgb,var(--route-color, var(--accent)) 40%,transparent)!important}html[data-skin=liquid-glass] .brand-mark{background:var(--brand-gradient)!important;border-radius:14px!important;border:1px solid rgba(255,255,255,.4)!important;box-shadow:0 1.5px #ffffff8c inset,0 -1px #0000001f inset,0 10px 28px color-mix(in srgb,#818cf8 40%,transparent)!important}html[data-skin=liquid-glass] .idle-continue-btn{background-image:linear-gradient(180deg,color-mix(in srgb,var(--accent) 100%,#fff 12%) 0%,var(--accent) 100%)!important;color:#fff!important;border:1px solid color-mix(in srgb,var(--accent) 70%,#fff)!important;border-radius:var(--radius-pill)!important;box-shadow:0 1.5px #fff6 inset,0 8px 24px color-mix(in srgb,var(--accent) 40%,transparent)!important;font-weight:700}html[data-skin=liquid-glass] .idle-continue-btn:hover{transform:translateY(-1px);box-shadow:0 1.5px #ffffff73 inset,0 12px 32px color-mix(in srgb,var(--accent) 48%,transparent)!important}html[data-skin=liquid-glass] .status-pill{border-radius:var(--radius-pill);box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);border:1px solid color-mix(in srgb,currentColor 22%,var(--border))}html[data-skin=liquid-glass] .leaflet-control-attribution{background:color-mix(in srgb,var(--surface) 82%,transparent)!important;-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);border-radius:10px!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-xs)!important;overflow:hidden}html[data-skin=liquid-glass] a.app,html[data-skin=liquid-glass] .apps>.app{border-radius:var(--radius-lg)!important}html[data-skin=liquid-glass] .basemap-toggle{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-radius:calc(var(--radius) - 2px)!important}html[data-skin=liquid-glass] .main-content{background:transparent!important}html[data-skin=liquid-glass] .app-icon-box{border-radius:16px!important;box-shadow:0 1px #ffffff80 inset,0 6px 16px color-mix(in srgb,var(--accent) 22%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}html[data-skin=liquid-glass] .card,html[data-skin=liquid-glass] .panel{border-radius:var(--radius-lg)!important}html[data-skin=liquid-glass] .footer-link:hover,html[data-skin=liquid-glass] .back-link:hover{color:var(--accent)}@media(prefers-reduced-transparency:reduce){html[data-skin=liquid-glass]{--surface: #ffffff;--surface-hover: #f8fafc;--surface-muted: #f1f5f9;--glass-blur: 0px;--bg-mesh: none}@media(prefers-color-scheme:dark){html[data-skin=liquid-glass]{--surface: #111827;--surface-hover: #152033;--surface-muted: #0b1220}}}@media(prefers-reduced-motion:reduce){html[data-skin=liquid-glass] .route-filter,html[data-skin=liquid-glass] .mode-btn,html[data-skin=liquid-glass] .tab,html[data-skin=liquid-glass] .app{transition:none!important}html[data-skin=liquid-glass] .route-filter:hover,html[data-skin=liquid-glass] .app:hover{transform:none!important}}
