:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#101214;--panel:#1a1d21;--border:#2c3138;--text:#e5e7eb;--muted:#9ca3af;--board:#252a30;--board-text:#9ca3af;--accent:#d2c5b2;--action:#d2c5b2;--on-action:#25221e}}.board-wrap{min-width:0;max-width:100%;margin:4px 0;position:relative}.track-pick{grid-template-columns:1fr;gap:8px;height:auto;margin:0 0 10px;display:grid}.track-pick-col{border:1px solid var(--border);background:var(--panel);scrollbar-width:thin;border-radius:8px;min-width:0;padding:7px 9px;font-size:12px;line-height:1.45;overflow-y:auto}.track-pick-col::-webkit-scrollbar{width:4px}.track-pick-col::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.track-pick-col::-webkit-scrollbar-track{background:0 0}.track-pick-head{color:var(--muted);letter-spacing:.02em;margin-bottom:3px;font-size:11px;font-weight:700}.track-pick-empty{color:var(--muted);font-size:11px}.train-hover-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:6px;margin-bottom:4px;padding-bottom:4px;display:flex}.train-hover-sub{color:var(--muted);font-size:11px}.train-hover-rows{grid-template-columns:auto 1fr;gap:2px 10px;margin:0;display:grid}.train-hover-row{display:contents}.train-hover-row dt{color:var(--muted);white-space:nowrap}.train-hover-row dd{overflow-wrap:anywhere;min-width:0;margin:0}.train-hover-row--ok dd{color:var(--safe)}.train-hover-row--warn dd{color:var(--risky)}.train-hover-row--muted dd{color:var(--muted)}button.board-name{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;padding:0 2px;font-size:.72rem}button.board-name:hover,button.board-name:focus-visible{color:var(--text);border-radius:4px}button.board-name--sel{color:var(--accent);font-weight:700}.board-transfer-link{opacity:1;pointer-events:none;z-index:0;border-left:2px dashed #e2e4e8;width:0;transition:opacity .2s;display:none;position:absolute}.board-transfer-link--quiet{border-left-color:#e2e4e84d}.board-stop--transfer-entry .board-dot:before{content:"";pointer-events:none;z-index:-1;border-left:2px dashed #e2e4e8;height:28px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.board-transfer-walk-fill{border-left:2px dashed var(--accent);width:0;transition:height 1s linear;position:absolute;top:0;left:-2px}.board-transfer-walk-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;transition:top 1s linear;position:absolute;left:-1px;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #0073e62e}.board{z-index:1;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;flex-direction:column;gap:6px;min-width:0;display:flex;position:relative;overflow-x:auto}.board::-webkit-scrollbar{display:none}.board-fade{pointer-events:none;z-index:2;width:22px;position:absolute;top:0;bottom:0}.board-fade--left{background:linear-gradient(90deg, var(--panel), transparent);left:0}.board-fade--right{background:linear-gradient(-90deg, var(--panel), transparent);right:0}.board-edge{z-index:3;border:1px solid color-mix(in srgb, var(--line-color,var(--accent)) 55%, transparent);background:var(--panel);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;line-height:1.2;display:inline-flex;position:absolute;transform:translateY(-50%);box-shadow:0 1px 4px #0000001f}.board-edge--right{right:4px}.board-edge--left{left:4px}.board-edge-dot{background:var(--line-color,var(--accent));border-radius:50%;width:8px;height:8px}.board-edge-arrow{color:var(--muted);font-weight:700}.board-rail{z-index:1;grid-template-rows:1fr;min-width:max-content;padding:6px 4px 12px;transition:grid-template-rows .25s,padding-block .25s;display:grid;position:relative}.board-rail--hide{grid-template-rows:0fr;padding-block:0}.board>.board-rail:last-child{padding-bottom:2px}.board>.board-rail:has(+.board-rail--hide:last-child){padding-bottom:2px}.board-rail--hide>.board-rail-line{overflow:hidden}.board-rail-line{overflow:visible}.board-rail--preview{animation:.25s board-preview-in}@keyframes board-preview-in{0%{opacity:0}to{opacity:1}}.board-rail-line{justify-content:flex-start;align-self:stretch;align-items:flex-start;display:flex}.board-cell{flex-shrink:0;align-items:flex-start;width:68px;display:flex;position:relative}.board-stop{box-sizing:border-box;z-index:auto;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:68px;min-width:0;padding:0 6px;display:flex;position:relative}.board-horses{pointer-events:none;justify-content:center;align-items:flex-end;gap:6px;width:100%;min-width:0;height:30px;display:flex}.board-train--track{z-index:3;pointer-events:auto;position:absolute;bottom:calc(100% + 11px);left:0;transform:translate(-50%)}.board-dot{z-index:1;background:var(--panel);border:2px solid var(--border);border-radius:50%;width:14px;height:14px;position:relative}.board-name{text-align:center;white-space:nowrap;width:64px;color:var(--muted);font-size:.72rem;line-height:1.12;transition:color .2s;overflow:visible}.board-name-line{display:block}.board-badge{color:var(--panel);background:var(--risky);border-radius:5px;margin-top:2px;padding:1px 7px;font-size:.6rem;font-weight:800}.board-link{background:var(--border);border-radius:2px;width:68px;height:4px;margin-top:41px;position:absolute;left:-34px}.board-link.floor{width:28px;left:0}.board-link--passed{background:var(--line-color,var(--border))}.board-link--approach{background:var(--border)}.board-stop--passed .board-dot{z-index:1;background:var(--line-color,var(--safe));border-color:var(--line-color,var(--safe));position:relative}.board-stop--passed .board-name{color:#94a3b8}.board-stop--target .board-dot{z-index:1;background:var(--risky);border-color:var(--risky);position:relative;box-shadow:0 0 0 5px #d977062e}.board-stop--transfer .board-dot,.board-stop--dest .board-dot{z-index:1;background:#94a3b8;border-color:#94a3b8;position:relative;box-shadow:0 0 0 5px #94a3b838}.board-stop--transfer .board-badge,.board-stop--dest .board-badge,.board-stop--origin .board-badge{background:#94a3b8}.board-stop--origin .board-dot,.board-stop--via .board-dot{z-index:1;background:#94a3b8;border-color:#94a3b8;position:relative;box-shadow:0 0 0 5px #94a3b838}.board-stop--passed.board-stop--origin .board-dot,.board-stop--passed.board-stop--transfer .board-dot,.board-stop--passed.board-stop--dest .board-dot,.board-stop--passed.board-stop--via .board-dot{z-index:1;background:var(--line-color,var(--safe));border-color:var(--line-color,var(--safe));box-shadow:0 0 0 5px color-mix(in srgb, var(--line-color,var(--safe)) 22%, transparent);position:relative}.board-stop.board-stop--current .board-dot{z-index:1;background:var(--accent);border-color:var(--accent);position:relative;box-shadow:0 0 0 5px #0073e626}.board-transfer-walk-dot:after,.board-stop.board-stop--current .board-dot:after{content:"";background:var(--accent);pointer-events:none;border-radius:50%;animation:1.6s ease-out infinite board-me-pulse;position:absolute;inset:-2px}@keyframes board-me-pulse{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@media (prefers-reduced-motion:reduce){.board-stop.board-stop--current .board-dot:after,.board-transfer-walk-dot:after{opacity:0;animation:none}}.board-train{cursor:pointer;pointer-events:auto;background:0 0;border:none;flex-direction:column;flex-shrink:0;align-items:center;gap:1px;padding:0;display:inline-flex}.board-train-body{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 70%, var(--panel)), var(--accent));transform-origin:50% 100%;border:1.5px solid #ffffffe6;border-radius:5px;width:22px;height:14px;transition:transform .3s,opacity .3s,box-shadow .15s;display:block;position:relative;box-shadow:0 2px 5px #0073e64d}.board-train-body:before,.board-train-body:after{content:"";background:#ffffffe6;border-radius:1px;width:4px;height:4px;position:absolute;top:3px}.board-train-body:before{left:3px}.board-train-body:after{right:3px}.board-train-no{white-space:nowrap;letter-spacing:-.02em;color:color-mix(in srgb, var(--accent) 45%, var(--muted));font-size:.5rem;font-weight:600;line-height:1}.board-train:hover .board-train-body{transform:scale(1.08)}.board-train--follow .board-train-body{background:var(--line-color,var(--accent));box-shadow:0 2px 5px color-mix(in srgb, var(--line-color,var(--accent)) 45%, transparent)}.board-train--follow .board-train-no{color:color-mix(in srgb, var(--line-color,var(--accent)) 55%, var(--muted))}.board-train--live .board-train-body{animation:1.2s ease-in-out infinite board-train-pulse}.board-train--est .board-train-body{opacity:.45;box-shadow:none;animation:none}.board-train--alighted .board-train-body{opacity:.35;box-shadow:none;animation:none}.board-train--alighted .board-train-no{opacity:.55}.board-train--est .board-train-no{opacity:.6}.board-train--live .board-train-no{font-weight:700}@keyframes board-train-pulse{0%,to{box-shadow:0 0 0 var(--ring-min,0px) var(--ring-color,transparent), 0 2px 5px color-mix(in srgb, var(--pulse-glow,var(--line-color,var(--accent))) 35%, transparent)}50%{box-shadow:0 0 0 var(--ring-max,3px) var(--ring-color,transparent), 0 2px 5px color-mix(in srgb, var(--pulse-glow,var(--line-color,var(--accent))) 35%, transparent)}}.board-train--approach .board-train-body{--ring-max:3px;--ring-color:color-mix(in srgb, var(--line-color,var(--accent)) 22%, transparent);transform:translate(-1.5px)}.board-train--arrive .board-train-body{--ring-max:7px;--ring-color:color-mix(in srgb, var(--line-color,var(--accent)) 45%, transparent);transform:scale(1.06)}.board-train--depart .board-train-body{--ring-max:2px;--ring-color:color-mix(in srgb, var(--line-color,var(--accent)) 18%, transparent);opacity:.85;transform:translate(2px)}.board-train--riding .board-train-body{--ring-color:color-mix(in srgb, var(--accent) 40%, transparent);--pulse-glow:var(--accent)}.board-train-express-mark{color:#dc2626;margin-right:1px;font-size:.5rem;font-weight:800;line-height:1}.board-train--cand .board-train-body{background:color-mix(in srgb, var(--line-color,var(--accent)) 45%, transparent);box-shadow:0 1px 3px color-mix(in srgb, var(--line-color,var(--accent)) 30%, transparent)}.board-train--cand .board-train-no{color:var(--muted)}.board-train--cand-unb .board-train-body{background:color-mix(in srgb, var(--border) 70%, transparent);opacity:.55}.board-train--cand-unb .board-train-no{color:var(--na)}.board-train--pinned .board-train-body{outline-offset:1px;outline:2px solid #0073e666}.board-train--neighbor .board-train-body{background:color-mix(in srgb, var(--line-color,var(--accent)) 30%, transparent);opacity:.6}.board-train--neighbor .board-train-no{color:var(--muted);font-size:.45rem}.board-train-cand-label{color:var(--muted);white-space:nowrap;font-size:.45rem}.board-lane-head{z-index:2;border:1px solid color-mix(in srgb, var(--line-color,var(--line)) 35%, transparent);background:var(--panel);max-width:calc(100vw - 48px);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:3px 8px;font-size:.72rem;line-height:1.3;display:inline-flex;position:sticky;left:0}.board-lane-head b{color:var(--line-color,var(--text));font-weight:800}.board-lane-head .board-lane-sub{color:var(--muted)}.board-lane-dot{background:var(--line-color,var(--muted));border-radius:50%;flex-shrink:0;width:8px;height:8px}.board-lane-chev{color:var(--muted);margin-left:2px}.board-lane-head--folded{background:color-mix(in srgb, var(--line-color,var(--line)) 10%, var(--panel))}.board-train--overlap-front,.board-train--overlap-rear{position:relative}.board-train--track.board-train--overlap-front,.board-train--track.board-train--overlap-rear{position:absolute}.board-train--overlap-rear .board-train-body{opacity:.25}.board-train--overlap-rear .board-train-no{opacity:.55}.board-train--overlap-front .board-train-body{opacity:1}.board-rail-line--more-before{padding-left:30px}.board-rail-line--more-after{padding-right:30px}.board-link--tail{width:28px;left:40px}.board-more{z-index:2;width:30px;height:28px;color:color-mix(in srgb, var(--line-color,var(--muted)) 75%, var(--muted));font:inherit;letter-spacing:1px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.85rem;font-weight:700;line-height:28px;position:absolute;top:29px}.board-more:hover{color:var(--line-color,var(--text))}.board-more--before{left:-34px}.board-more--after{left:70px}.board-lane-headrow{z-index:2;align-self:flex-start;align-items:stretch;gap:6px;max-width:calc(100vw - 48px);display:inline-flex;position:sticky;left:0}.board-lane-headrow .board-lane-head{min-width:0;position:static}.tracker{border:0}.tracker-arrival{background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--accent);border-radius:8px;margin:8px 16px;padding:10px 12px;font-weight:700}.tracker .plan-head>span+.refresh-btn{margin-left:auto}.tracker-status{letter-spacing:.02em;border-radius:8px;width:fit-content;padding:4px 10px;font-size:.86rem;font-weight:800;line-height:1.3;display:inline-block}.tracker-big{font-variant-numeric:tabular-nums;color:var(--accent);font-size:2rem;font-weight:800;line-height:1.1}.tracker-sub{color:var(--text);font-size:.95rem}.tracker-sub.muted{color:var(--muted);font-size:.9rem}.rt-empty{color:var(--muted);padding:4px 0;font-size:.85rem}.sim-bar{border:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;padding:8px;display:flex}.sim-btn{color:var(--text);background:var(--panel);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700}.sim-btn:disabled{opacity:.5;cursor:default}.sim-btn:hover:not(:disabled){border-color:var(--accent)}.sim-btn--play{border-color:var(--accent);color:var(--accent)}.sim-btn--exit{color:var(--muted)}.sim-btn--tiny{padding:1px 5px;font-size:.68rem}.sim-meta{color:var(--muted);margin-left:auto;font-size:.72rem}.sim-badge{color:var(--accent);border:1px solid var(--accent);border-radius:6px;padding:1px 6px;font-size:.72rem;font-weight:700}.sim-edit{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 70%, transparent);border-radius:8px;margin:8px 0;padding:8px}.sim-edit-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sim-src{color:var(--muted);font-size:.72rem}.sim-src--edited{color:var(--accent);font-weight:700}.sim-msg{color:var(--muted);font-size:.72rem}.sim-edit-body{gap:6px;margin-top:6px;display:grid}.sim-meta-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.72rem;display:flex}.sim-id{color:var(--text);font-weight:800}.sim-input{font:inherit;color:var(--text);background:var(--bg,transparent);border:1px solid var(--border);border-radius:4px;padding:2px 4px;font-size:.72rem}.sim-input--wide{width:132px}.sim-input--num{width:56px}.sim-table{border-collapse:collapse;font-size:.72rem}.sim-table th{text-align:left;color:var(--muted);padding:2px 6px 2px 0;font-weight:700}.sim-table td{padding:1px 6px 1px 0}.sim-actions{flex-wrap:wrap;gap:6px;display:flex}.sim-hint{color:var(--muted);font-size:.7rem;line-height:1.4}.sim-pos{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.72rem}.sim-pos th{text-align:left;color:var(--muted);white-space:nowrap;padding:2px 4px;font-weight:600}.sim-pos td{white-space:nowrap;padding:2px 8px 2px 0;font-weight:700}.sim-pos tr+tr{border-top:1px solid color-mix(in srgb, var(--border) 45%, transparent)}.transfer-choice{color:var(--text);align-items:center}.transfer-choice-actions{flex-wrap:wrap;gap:6px;display:inline-flex}.transfer-choice-btn{border:1px solid var(--border,#d0d4da);background:var(--panel);color:var(--text);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:.8rem}.tracker-head-fill{flex:1;min-width:0}.track-settings-row{align-items:center;gap:8px;margin:0 0 8px;font-size:.85rem;display:flex}.track-settings-row .tracker-sim-open{width:auto;margin-left:auto;padding:0 10px}.tracker{position:relative}.tracker .plan-head.plan-head--float{z-index:6;background:0 0;border:0;gap:6px;padding:0;display:flex;position:absolute;top:6px;right:8px}.tracker .plan-head.plan-head--float .tracker-head-fill{display:none}.tracker .plan-head.plan-head--float .refresh-btn{background:color-mix(in srgb, var(--panel) 88%, transparent);width:34px;min-width:34px;height:34px}.tracker:has(.plan-head--float) .board-lane-headrow--first{max-width:calc(100vw - 140px)}.tracker:has(.plan-head--float) .board-lane-headrow--first .board-lane-head{min-width:0;overflow:hidden}.tracker:has(.plan-head--float) .board-lane-headrow--first .board-lane-head>span:not(.board-lane-dot):not(.board-lane-chev){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.debug-form{flex-direction:column;gap:8px;display:flex}.debug-note{box-sizing:border-box;border:1px solid var(--border,#e2e8f0);resize:vertical;border-radius:8px;width:100%;min-height:64px;padding:8px 10px;font-family:inherit;font-size:13px}.debug-note:focus{outline:2px solid color-mix(in srgb, var(--accent,#0073e6) 35%, transparent);border-color:var(--accent,#0073e6)}.debug-replay{background:#16a34a12;border:1px solid #16a34a59;border-radius:8px;gap:4px;padding:8px 10px;font-size:12px;display:grid}.replay-banner{background:#2563eb0d;border:1.5px dashed #2563eb;gap:6px;font-size:12.5px;display:grid}.replay-head{align-items:center;gap:8px;display:flex}.replay-head b{color:#2563eb}.replay-meta{color:var(--muted,#64748b);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.replay-note{font-size:12.5px}.replay-diff{color:#166534;border-top:1px solid #2563eb40;padding-top:6px}.replay-diff--fail{color:#9a3412}.replay-diff ul{color:var(--text,#0f172a);gap:2px;margin:4px 0 0;padding-left:16px;display:grid}.replay-extra{color:var(--muted,#64748b);margin-top:4px;font-size:11.5px}.debug-replay--fail{background:#d9770614;border-color:#d9770673}.debug-replay-head{font-size:12.5px;font-weight:800}.debug-replay-sub{color:var(--muted,#64748b);font-weight:400}.debug-replay ul{color:var(--text,#0f172a);gap:2px;margin:0;padding-left:16px;display:grid}.debug-replay .replay-bad{color:#b45309;font-weight:700}.debug-dashboard-link{color:var(--accent);margin-top:8px;font-size:12px;text-decoration:none;display:inline-block}.debug-dashboard-link:hover{text-decoration:underline}.test-push-preview{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 88%, gray);color:var(--fg);border-radius:8px;margin-top:6px;padding:8px 10px;font-size:12px}.test-push-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#eceef0;--panel:#fff;--border:#d6dae0;--text:#25282c;--muted:#62676e;--board:#f4f6f8;--board-text:#62676e;--amber:#ffb627;--accent:#655e53;--action:#3e3b36;--on-action:#fff;--safe:#16a34a;--risky:#d97706;--fail:#dc2626;--na:#9ca3af}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);margin:0;font-family:IBM Plex Sans KR,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Segoe UI,sans-serif}html{touch-action:manipulation;font-size:16px}html,body,#root{min-width:0;max-width:100%}.layout{max-width:720px;margin:0 auto;padding:24px 16px 64px}.header h1{margin:0 0 4px;font-size:1.5rem}.header p{color:var(--muted);margin:0 0 20px;font-size:.9rem}.panel{background:var(--panel);box-shadow:none;border:0;border-radius:14px}.form{gap:12px;padding:16px;display:grid}.row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex;position:relative}.field label{color:var(--muted);font-size:.8rem;font-weight:600}.field input,.field select{border:1px solid var(--border);background:var(--panel);height:38px;color:var(--text);border-radius:8px;width:100%;padding:0 10px;font-size:.95rem}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:-1px}input[type=time]{box-sizing:border-box!important;min-width:0!important}@supports (-webkit-touch-callout:none){input[type=time]{appearance:none!important}}.field-action{justify-content:flex-end}.swap-btn{border:1px solid var(--border);background:var(--panel);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.refresh-btn{border:1px solid var(--border);background:var(--panel);min-width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:8px;flex:none;margin-left:6px;padding:0 8px;font-size:.85rem;font-weight:600}.refresh-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.refresh-btn:disabled{opacity:.6;cursor:default}.swap-btn:hover{border-color:var(--accent);color:var(--accent)}.route{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px;display:grid}.route-list{flex-direction:column;gap:6px;min-width:0;display:flex;position:relative}.route-rail{border-left:2px dotted var(--border);position:absolute;top:19px;bottom:19px;left:5px}.route-row{align-items:center;gap:10px;min-width:0;display:flex}.route-dot{z-index:1;box-sizing:border-box;border:2px solid var(--muted);background:var(--panel);border-radius:50%;flex:none;width:12px;height:12px;position:relative}.route-dot--from{background:var(--panel);border:3px solid var(--accent)}.route-dot--to{background:var(--accent);border-color:var(--accent)}.route-input{flex:auto;min-width:0;position:relative}.route-input input{box-sizing:border-box;border:1px solid var(--border);background:var(--panel);width:100%;height:38px;color:var(--text);border-radius:8px;padding:0 34px 0 54px;font-size:.95rem}.route-input input:focus{outline:2px solid var(--accent);outline-offset:-1px}.route-tag{color:var(--muted);pointer-events:none;font-size:.75rem;font-weight:700;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.route-clear{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:.85rem;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.route-clear:hover{background:var(--bg,#f3f4f6);color:var(--text)}.route-add{color:var(--accent);cursor:pointer;background:0 0;border:0;align-self:flex-start;margin-left:22px;padding:2px 0;font-size:.85rem;font-weight:600}.route-add-hint{color:var(--muted);font-weight:400}.route .route-swap{align-self:stretch;height:auto;min-height:38px}.form-summary{flex-direction:column;padding:12px 16px 6px;display:flex}.form-summary-top{align-items:flex-start;gap:8px;display:flex}.form-summary-route{overflow-wrap:anywhere;flex:auto;min-width:0;font-weight:700}.form-summary-when{min-width:0;color:var(--muted);align-items:center;gap:4px;font-size:.85rem;display:inline-flex}.form-summary-now{min-height:36px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 4px;font-weight:600}.form-summary-now:disabled{opacity:.6;cursor:default}.form-summary-route--chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.form-summary-tools{flex:none;align-items:center;gap:4px;margin:-6px -8px 0 0;display:inline-flex}.form-summary--stacked{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;display:grid}.form-summary--stacked .form-summary-top{display:contents}.form-summary--stacked .form-summary-when{grid-area:1/1}.form-summary--stacked .form-summary-tools{grid-area:1/2}.form-summary--stacked .form-summary-route{white-space:nowrap;overflow-wrap:normal;flex-wrap:nowrap;grid-area:2/1/auto/-1;max-width:100%;overflow-x:auto}.form-summary--stacked .form-summary-route>*{flex-shrink:0}.form-summary--stacked>.error{grid-column:1/-1}.form-summary-track{display:inline-flex}.form-summary-track:empty{display:none}.form-summary-favorite{min-width:30px;min-height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:2px;font-size:21px}.form-summary-favorite[aria-pressed=true]{color:var(--accent);cursor:default}.form-summary-tools .refresh-btn{background:0 0;border:0;justify-content:center;align-items:center;width:36px;height:36px;margin:0;font-size:1.05rem;display:inline-flex}.form-summary .error{margin:0}.form-actions{gap:8px;display:flex}.now-btn{border:1px solid var(--border);background:var(--panel);height:38px;color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:8px;flex:none;padding:0 12px;font-size:.95rem;font-weight:600}.now-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.now-btn:disabled{opacity:.6;cursor:default}button.primary{background:var(--action);height:38px;color:var(--on-action);cursor:pointer;border:0;border-radius:10px;padding:0 20px;font-size:.95rem;font-weight:700}button.primary:disabled{opacity:.6;cursor:default}.suggest{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:8px;max-height:240px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #0000001f}.suggest li{cursor:pointer;justify-content:space-between;gap:8px;padding:8px 12px;display:flex}.suggest li:hover{background:#0073e614}.s-name{font-weight:600}.s-line{color:var(--muted);font-size:.85rem}.error,.errors p{color:var(--fail);margin:0;font-size:.9rem}.errors{gap:6px;margin-top:12px;padding:12px 16px;display:grid}@media (width<=520px){.layout{padding:16px 12px 48px}.header h1{font-size:1.3rem}.header p{margin-bottom:12px}.header .header-sub{display:none}.form,.settings{gap:10px;padding:12px}.row{gap:8px;min-width:0}.form>.row>.field{min-width:0}.form>.row>.field input:not([type=checkbox]),.form>.row>.field select{box-sizing:border-box;min-width:0;max-width:100%}.form>.row:nth-child(2){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.form>.row:nth-child(2)>.field:first-child{grid-column:1}.form>.row:nth-child(2)>.field:nth-child(2){grid-column:2}.form>.row:nth-child(2)>.field-action{grid-column:1/-1;align-self:end}.form>.row:nth-child(2)>.field-action .form-actions>button{flex:1 1 0}.form>.row:nth-child(2)>.field-action button.primary{width:auto;min-width:88px;padding-inline:12px}.form>.row:nth-child(2)>.field:first-child input[type=time]{width:100%;min-width:0;max-width:100%;padding-inline:8px;font-size:16px}.row:not(.form>.row:nth-child(2)) .field-action{grid-column:1/-1}.field input,.field select{font-size:16px}button.primary{white-space:normal;min-width:0;height:auto;min-height:44px;padding:8px 12px;line-height:1.25}.field-action button.primary{width:100%}.field-action .now-btn{min-height:44px}.plan-head{gap:6px;padding:10px 12px}.replay-banner,.replay-head,.replay-diff,.replay-diff li,.replay-note,.replay-extra{overflow-wrap:anywhere;min-width:0}.replay-head{flex-wrap:wrap}.replay-banner{overflow:hidden}.tracker .plan-body>.board-wrap{width:100%;max-width:100%;overflow:hidden}.board{overscroll-behavior-x:contain;touch-action:pan-x pan-y;max-width:100%}.plan-body{grid-template-columns:minmax(0,1fr);min-width:0;padding:10px 12px}.leg{grid-template-columns:minmax(72px,auto) minmax(0,1fr);gap:6px;min-width:0}.leg-time{gap:4px}.leg-info,.leg-desc{overflow-wrap:anywhere;min-width:0}.transfer-rt{flex-wrap:wrap;row-gap:4px;min-width:0}.transfer-rt>span{white-space:normal;overflow-wrap:anywhere}.tracker .plan-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.tracker .plan-head>span:first-child{grid-column:1}.tracker .plan-head>.refresh-btn:last-child{grid-area:1/2;margin-left:0}.tracker .plan-head .refresh-btn{min-width:40px;height:40px}.rt-row{flex-wrap:wrap;gap:4px 8px}.history-row{white-space:nowrap;flex-wrap:nowrap;gap:6px}.settings-row{flex-wrap:wrap}.settings table{max-width:100%;display:block;overflow-x:auto}}.panel.history{scroll-margin-top:12px}.panel.form{position:relative}.panel.form--closable{padding-top:40px}.form-close{z-index:1;width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1;position:absolute;top:6px;right:10px}.track-close{display:inline-flex;position:relative}.track-close-hint{z-index:20;background:var(--text,#222);color:var(--panel,#fff);white-space:nowrap;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:.8rem;font-weight:600;position:absolute;top:calc(100% + 4px);right:0}.departures-toggle{width:100%;min-height:44px;color:var(--text,inherit);font:inherit;text-align:left;cursor:pointer;border:0;justify-content:space-between;align-items:center;padding:10px 16px;font-weight:600;display:flex}.plan{margin-top:12px;overflow:hidden}.plan-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.badge{background:var(--bg);border-radius:8px;padding:3px 10px;font-size:.92rem;font-weight:700}.plan-body{gap:8px;padding:12px 16px;display:grid}.plan-body.plan-table{grid-template-columns:44px 58px minmax(0,1fr);align-items:baseline;gap:10px 8px}.plan-table>.notes{grid-column:1/-1}.leg,.leg-row{display:contents}.leg-cell{min-width:0}.leg-cell-time{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.leg-cell-label{white-space:nowrap}.leg-cell-main{flex-direction:column;gap:2px;min-width:0;display:flex}.leg-line1,.leg-line2{justify-content:space-between;align-items:baseline;gap:8px;min-width:0;display:flex}.leg-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.leg-name--train{color:var(--muted);white-space:normal;text-overflow:clip;word-break:keep-all;overflow-wrap:anywhere;font-size:.85rem;font-weight:500;overflow:visible}.leg-cell-main--train .leg-line1{grid-template-columns:minmax(0,1fr) auto auto;gap:2px 4px;display:grid}.leg-cell-main--train .leg-name{grid-area:1/1}.leg-cell-main--train .leg-line1:after{grid-area:1/3;align-self:start}.leg-cell-main--train .leg-cell-rt{grid-area:1/2}.leg-train-details{min-width:0}.leg-cell-main--train .leg-line2{text-align:left;justify-content:flex-start;gap:4px}.leg-line2{color:var(--muted);font-size:.8rem}.leg-sub{word-break:keep-all;overflow-wrap:anywhere;min-width:0}.leg-cell-rt{color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;min-width:0;font-size:.85rem;font-weight:700}@media (width<=430px){.plan-body.plan-table{grid-template-columns:40px 54px minmax(0,1fr);column-gap:6px}}.leg-extra{color:var(--muted);overflow-wrap:anywhere;grid-column:3/-1;min-width:0;font-size:.8rem}.leg>.error-text{grid-column:1/-1}.leg-time{white-space:nowrap;flex-direction:row;align-items:baseline;gap:6px;display:flex}.leg-label{color:var(--muted);text-transform:uppercase;font-size:.7rem}.leg .t,.transfer-arrive .t{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.leg-desc{color:var(--text);overflow-wrap:anywhere;align-items:baseline;gap:4px;min-width:0;font-size:.9rem;display:flex}.leg-desc b{font-size:.95rem}.leg-train-no{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:500}.hist-viewtabs{border-bottom:1px solid var(--border);margin-bottom:2px;display:flex}.hist-viewtab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:4px 10px;font-size:.82rem;font-weight:700}.hist-viewtab--on{color:var(--accent);border-bottom-color:var(--accent)}.tt-grid{gap:10px;max-height:50vh;display:grid;overflow-y:auto}.tt-dir-head{margin-bottom:2px;font-size:.8rem;font-weight:700}.tt-hour{border-top:1px solid var(--border);font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;padding:2px 0;display:flex}.tt-h{min-width:22px;font-size:.85rem;font-weight:700}.tt-mins{flex-wrap:wrap;gap:2px 8px;display:flex}.tt-min{border-radius:4px;align-items:baseline;gap:1px;padding:0 3px;font-size:.85rem;display:inline-flex}.tt-min--mine{background:var(--accent);color:#fff;font-weight:700}.tt-exp{color:#d33;font-size:.6rem}.tt-min--mine .tt-exp{color:#fff}.tt-dest{color:var(--muted);margin-left:1px;font-size:.65rem}.tt-min--mine .tt-dest{color:#fff}.history-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hist-daytabs{gap:4px;display:flex}.daytab{color:var(--muted);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:700}.daytab--on{color:var(--accent);border-color:var(--accent)}.history-head{flex-wrap:nowrap;align-items:flex-start}.history-head-text{flex-wrap:wrap;flex:auto;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.history-head .refresh-btn{background:0 0;border:0;margin:-8px -8px -8px 0;font-size:1.05rem}.history-title{font-size:.9rem;font-weight:700}.history-avg{white-space:nowrap;font-size:.8rem;font-weight:600}.history-avg--safe{color:var(--safe)}.history-avg--risky{color:var(--risky)}.history-sched{font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:.85rem;font-weight:700}.history-rows{gap:4px;display:grid}.history-row{align-items:baseline;gap:8px;font-size:.85rem;display:flex}.history-date{color:var(--muted);font-variant-numeric:tabular-nums;flex:0 0 8ch}.history-row .t{font-variant-numeric:tabular-nums;font-weight:700}.history-row .rt-buffer{box-sizing:border-box;min-width:46px}.history-empty{color:var(--muted);font-size:.8rem}.history-est{color:var(--muted);border:1px dashed var(--border);white-space:nowrap;border-radius:999px;padding:0 6px;font-size:.72rem}.leg-info{gap:4px;min-width:0;display:grid}.rt-buffer,.history-open{vertical-align:baseline;white-space:nowrap;max-width:100%;display:inline-block}.via-group{grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;row-gap:8px;display:grid}.leg.leg--group{grid-column:1/-1;grid-template-columns:subgrid;background:var(--bg);border-radius:10px;align-items:baseline;row-gap:8px;margin:0 -8px;padding:8px;display:grid}.leg.leg--group>.leg-row{display:contents}.leg-tag--tight{color:var(--risky);border-color:currentColor}.leg-tag{color:var(--muted);border:1px solid var(--border);vertical-align:1px;border-radius:6px;margin-right:6px;padding:0 5px;font-size:.6875rem;font-weight:600;line-height:1.4;display:inline-block}.leg-cell-time--muted{color:var(--muted);opacity:.6;font-weight:600}.route-stop{font-size:.92rem;font-weight:700}.line-chip{white-space:nowrap;border-radius:4px;align-items:center;padding:1px 5px;font-size:.6875rem;font-weight:700;line-height:1.4;display:inline-flex}.plan-head-seg{align-items:center;gap:6px;display:inline-flex}.transfer-arrive{align-items:baseline;gap:6px;min-width:84px;display:flex}.transfer-rt{grid-column:1/-1;align-items:center;gap:8px;display:flex}.transfer-rt>span{white-space:nowrap}.leg.dest .transfer-rt{grid-column:2}.rt-opt-name{color:var(--text);font-size:.78rem;font-weight:700}.rt-buffer{color:var(--safe);background:#16a34a1a;border-radius:999px;padding:1px 7px;font-size:.72rem;font-weight:800}.rt-buffer--tight{color:var(--risky);background:#d977061f}.rt-sep{opacity:.5}.rt-remain{color:var(--fail);font-weight:800}.dest{border-top:1px dashed var(--border);grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;column-gap:8px;padding-top:8px;display:grid}.notes{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:.82rem;display:flex}.error-text{color:var(--fail)}.tag-express{color:#fff;vertical-align:1px;background:#dc2626;border-radius:4px;margin:0 2px;padding:0 5px;font-size:.62rem;font-weight:700;line-height:1.5;display:inline-block}.track-this{border:1px solid var(--accent);color:var(--accent);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;margin-left:auto;padding:2px 10px;font-size:.68rem;font-weight:700}.track-this+.track-this{margin-left:6px}.track-this:hover{background:var(--accent);color:#fff}.departures-rows{gap:8px;display:grid}.dep-row{border-top:1px solid var(--border);grid-template-columns:1fr auto;gap:2px 8px;padding:6px 0;display:grid}.dep-row:first-child{border-top:none}.dep-main{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.dep-main .t{font-variant-numeric:tabular-nums;font-weight:700}.dep-train{font-size:.85rem}.dep-sub{color:var(--muted);flex-wrap:wrap;grid-column:1;gap:4px 10px;font-size:.8rem;display:flex}.dep-buffer--tight{color:var(--risky);font-weight:700}.dep-arrive{color:var(--text);font-weight:700}.dep-track{color:var(--accent);white-space:nowrap;grid-area:1/2/span 2;align-self:center;font-size:.8rem;font-weight:700}.dep-row{cursor:pointer;border-radius:8px;margin:0 -6px;padding-left:6px;padding-right:6px}.dep-row:hover,.dep-row:focus-visible{background:color-mix(in srgb, var(--accent) 7%, transparent);outline:none}.leg-cell-main--open{cursor:pointer;border-radius:6px;margin:-2px -4px;padding:2px 4px}.leg-cell-main--open:hover,.leg-cell-main--open:focus-visible{background:color-mix(in srgb, var(--accent) 7%, transparent);outline:none}.leg-cell-main--open .leg-line1:after{content:"›";color:var(--muted);flex:none;margin-left:6px;font-weight:700}.leg-cell-main--open .leg-cell-rt{margin-left:auto}.plan-body.plan-table{--strip-gap:14px;--strip-center:12px;column-gap:10px;row-gap:var(--strip-gap);grid-template-columns:22px 54px minmax(0,1fr)}@media (width<=430px){.plan-body.plan-table{grid-template-columns:22px 50px minmax(0,1fr);column-gap:8px}}.plan-table .leg-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.plan-table .leg-cell-label{align-self:stretch;position:relative}.plan-table .leg-cell-label:before{content:"";width:6px;left:8px;top:var(--strip-center);bottom:calc(-1 * (var(--strip-gap) + var(--strip-center)));background:var(--lc,var(--border));position:absolute}.plan-table .strip-start:before{top:var(--strip-center)}.plan-table .strip-end:before{display:none}.plan-table .strip-start:after,.plan-table .strip-via:after,.plan-table .strip-end:after{content:"";left:11px;top:var(--strip-center);box-sizing:border-box;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.plan-table .strip-start:after{background:var(--panel);border:4px solid var(--lc,var(--text));width:16px;height:16px}.plan-table .strip-via:after{width:22px;height:22px;top:var(--strip-center);background:var(--panel);border:3px solid var(--text)}.plan-table .strip-end:after{background:var(--lc,var(--text));width:16px;height:16px}.plan-table .leg.leg--group{background:0 0;margin:0;padding:0}.plan-table .leg-name{font-size:1.05rem}.plan-table .leg-name--train{font-size:.85rem}.xfer-chip{vertical-align:2px;white-space:nowrap;border-radius:4px;margin-left:8px;padding:1px 5px;font-size:.6875rem;font-weight:700;line-height:1.4;display:inline-block}.leg-name-group{flex-wrap:wrap;flex:auto;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.leg-name-group>.leg-name{max-width:100%}.leg-name-group>.xfer-chip{flex:none;margin-left:0}.slack-pill{background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;vertical-align:baseline;border-radius:6px;margin-right:8px;padding:3px 8px;font-size:.8rem;font-weight:700;display:inline-block}.slack-pill--before{background:var(--bg);color:var(--muted)}.rt-alt{justify-items:end;display:inline-grid}.rt-alt>span{white-space:nowrap;grid-area:1/1}.rt-alt .slack-pill{background:0 0;margin-right:0;padding:0}.rt-alt-a{animation:6s step-end infinite rt-alt-a}.rt-alt-b{animation:6s step-end infinite rt-alt-b}@keyframes rt-alt-a{0%{opacity:1}50%{opacity:0}}@keyframes rt-alt-b{0%{opacity:0}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.rt-alt-a,.rt-alt-b{animation:none}.rt-alt-a{opacity:0}.rt-alt-b{opacity:1}}.plan-table .via-trains{color:var(--muted);grid-column:2/-1;margin:0;padding:0;font-size:.8rem;list-style:none}.plan-table .dest{border-top:0;padding-top:0}@media (width<=360px){.leg-cell-main--train .leg-line2{margin-left:-58px}}.leg-cell-main--train .leg-line1 .leg-tag{margin-right:0}@media (width<=360px){.leg-cell-main--train .leg-line1 .leg-tag{white-space:nowrap;padding:0 3px;font-size:.64rem}.leg-cell-main--train .leg-cell-rt{font-size:.78rem}.leg-cell-main--train .rt-alt .slack-pill{font-size:inherit}}.header-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-btn{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin-right:-8px;padding:0;display:inline-flex}.settings-btn:hover{color:var(--accent)}.settings{gap:12px;margin-top:12px;padding:16px;display:grid}.settings-title{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:.85rem}.settings-row{align-items:center;gap:10px;display:flex}.settings-divider{border-top:1px solid var(--border);margin:4px 0 0}.settings-row>button{min-height:44px}.settings-row>button:not(.primary):not(.switch){border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:10px;padding:8px 14px;font-size:.9rem}.settings-row>button:disabled{opacity:.45;cursor:not-allowed}.arrival-alert-test{gap:10px;min-width:0;display:grid}.arrival-test-note{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.arrival-test-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.arrival-test-fields label{gap:5px;min-width:0;font-size:.85rem;display:grid}.arrival-test-fields input,.arrival-test-fields select{box-sizing:border-box;border:1px solid var(--border);background:var(--panel);width:100%;min-width:0;min-height:44px;color:var(--text);border-radius:10px;padding:8px 12px;font-size:16px}.arrival-test-actions{flex-wrap:wrap;gap:8px;display:flex}.arrival-test-actions button{border-radius:10px;min-height:44px;padding:8px 12px}.arrival-test-actions button:not(.primary){border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer}@media (width<=520px){.arrival-test-fields{grid-template-columns:minmax(0,1fr)}}.switch{cursor:pointer;min-height:44px;font:inherit;color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;margin-left:auto;padding:0 2px;display:inline-flex}.switch:disabled{opacity:.45;cursor:not-allowed}.switch:focus-visible{outline:2px solid var(--accent,var(--board));outline-offset:2px;border-radius:8px}.switch-text{text-align:right;min-width:2.2em;font-size:.85rem;font-weight:600}.switch-track{background:#b9c0ca;border-radius:999px;flex:none;width:46px;height:28px;transition:background-color .18s;position:relative}.switch-knob{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch--on{color:var(--text)}.switch--on .switch-track{background:var(--accent,var(--board))}.switch--on .switch-knob{transform:translate(18px)}@media (prefers-reduced-motion:reduce){.switch-track,.switch-knob{transition:none}}.route-shortcuts{margin-bottom:12px;padding:14px 16px}.shortcuts-heading{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;min-height:30px;padding:0;font-weight:650;display:flex}.shortcuts-heading-note{color:var(--muted);font-size:12px;font-weight:400}.commute-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.commute-shortcut{border:1px solid var(--border);background:var(--board);min-width:0;color:var(--text);text-align:left;cursor:pointer;font:inherit;border-radius:10px;padding:12px}.shortcut-top{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;display:flex}.shortcut-top>span{color:var(--muted);white-space:nowrap;font-size:11px}.shortcut-path{overflow-wrap:anywhere;font-size:12px;line-height:1.6;display:block}.shortcut-text-button{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;min-height:36px;padding:8px 0;font-size:12px}.shortcuts-hint,.shortcuts-empty{color:var(--muted);margin:0 0 6px;font-size:11px;line-height:1.6}.favorites-heading{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding-top:8px;display:flex}.favorites-heading h2{margin:0;font-size:13px;font-weight:650}.favorite-routes{margin:0 0 6px;padding:0;list-style:none}.favorite-routes li{border-bottom:1px solid var(--border);align-items:stretch;display:flex}.favorite-start{text-align:left;min-width:0;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:9px;padding:10px 2px;font-size:12px;line-height:1.6;display:flex}.favorite-start>span:nth-child(2){overflow-wrap:anywhere}.favorite-start-arrow{color:var(--muted);margin-left:auto}.favorite-delete{color:var(--muted);cursor:pointer;background:0 0;border:0;flex:0 0 40px;font-size:20px}.route-shortcuts button:disabled{opacity:.45;cursor:default}.route-shortcuts button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shortcuts-notice{color:var(--muted);margin:6px 0 0;font-size:12px}@media (width<=350px){.commute-shortcut{padding:10px}.shortcut-top{flex-wrap:wrap}.shortcuts-heading-note{font-size:11px}}
