:root{--ink: #14140f;--ink-2: #1d1d17;--ink-3: #262620;--line: rgba(255, 255, 255, .1);--line-2: rgba(255, 255, 255, .18);--text: #f2efe6;--text-dim: #a8a498;--text-faint: #7d7a70;--accent: #e2564a;--accent-soft: rgba(226, 86, 74, .14);--warn: #e8a020;--radius: 14px;--radius-sm: 10px;--max: 720px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--ink);color:var(--text);font-family:Heebo,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}body{min-height:100dvh;background-image:radial-gradient(1200px 600px at 50% -10%,rgba(226,86,74,.09),transparent 70%),radial-gradient(900px 500px at 100% 100%,rgba(80,110,90,.08),transparent 70%)}.shell{max-inline-size:var(--max);margin-inline:auto;padding:18px 16px 56px}.site-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-block:6px 18px}.brand{display:flex;align-items:center;gap:11px;min-inline-size:0}.brand-mark{flex:none;inline-size:34px;block-size:34px}.brand-text{min-inline-size:0}.brand-title{margin:0;font-size:1.16rem;font-weight:800;letter-spacing:-.01em;line-height:1.15}.brand-sub{margin:3px 0 0;font-size:.775rem;color:var(--text-dim);line-height:1.3}.lang{flex:none;padding:7px 12px;font:inherit;font-size:.8rem;font-weight:600;color:var(--text);text-decoration:none;background:var(--ink-3);border:1px solid var(--line);border-radius:999px}.lang:active{background:#32322a}.banner{display:grid;gap:3px;padding:11px 13px;margin-block-end:16px;font-size:.82rem;line-height:1.45;border-radius:var(--radius-sm)}.banner strong{font-size:.8rem;letter-spacing:.02em;text-transform:uppercase}.banner-warn{color:#f6e2bd;background:#e8a0201f;border:1px solid rgba(232,160,32,.34)}.field{display:block}.field-label{display:block;margin-block-end:7px;font-size:.8rem;font-weight:600;color:var(--text-dim)}.field-input{inline-size:100%;padding:15px 16px;font:inherit;font-size:1.06rem;color:var(--text);background:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--radius);outline:none}.field-input::placeholder{color:var(--text-faint)}.field-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.hint{margin:8px 0 0;font-size:.8rem;color:var(--text-faint);line-height:1.45}.hint-detail{display:inline-block;margin-block-start:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;word-break:break-word;opacity:.85}.results{margin-block-start:18px}.results-count{margin:0 0 8px;font-size:.76rem;font-weight:600;color:var(--text-faint)}.result-list{margin:0;padding:0;list-style:none;display:grid;gap:7px}.result{display:flex;align-items:center;gap:12px;inline-size:100%;padding:12px 14px;font:inherit;text-align:start;color:var(--text);background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.result:active{background:var(--ink-3)}.result-names{display:grid;gap:1px;min-inline-size:0;flex:1}.result-name{font-size:1rem;font-weight:600}.result-alt{font-size:.775rem;color:var(--text-faint)}.empty{padding:20px 4px}.empty-title{margin:0;font-size:1rem;font-weight:600}.empty-hint{margin:5px 0 0;font-size:.83rem;color:var(--text-faint)}.back{padding:8px 13px 8px 11px;margin-block-end:14px;font:inherit;font-size:.85rem;font-weight:600;color:var(--text-dim);background:var(--ink-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}.guide-head{margin-block-end:16px}.guide-name{margin:0;font-size:1.55rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}.guide-alt{margin:4px 0 0;font-size:.9rem;color:var(--text-faint)}.guide-dest{display:inline-flex;align-items:center;gap:7px;margin-inline-start:10px;font-size:.95rem;font-weight:700;color:var(--chip, var(--accent));vertical-align:middle}.guide-dest-ref{padding:1px 7px;font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;color:#12120e;background:var(--chip, var(--accent));border-radius:999px}.place-lead{margin:12px 0 0;font-size:.8rem;color:var(--text-dim)}.place-geo{margin:10px 0 0;font-size:.85rem;color:var(--text-dim)}.place-pick{display:grid;gap:6px;margin-block-start:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.place-pick[data-count="1"]{grid-template-columns:minmax(0,1fr)}.place-pick[data-count="2"],.place-pick[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.place-opt{display:grid;gap:3px;align-content:start;min-inline-size:0;padding:9px 8px 10px;font:inherit;text-align:start;color:var(--text);background:var(--ink-2);border:1px solid var(--line);border-block-start:3px solid var(--chip, var(--line-2));border-radius:var(--radius-sm);cursor:pointer}.place-opt:active{background:var(--ink-3)}.place-opt.is-off{opacity:.5;cursor:default}.guide-back{display:inline-flex;align-items:center;gap:4px;padding:6px 12px 6px 9px;margin-block-end:10px;font:inherit;font-size:.8rem;font-weight:700;color:#fff;background:var(--ink-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}.guide-back:active{background:var(--ink-3)}[dir=rtl] .guide-back svg{transform:scaleX(-1)}.place-opt-kind{font-size:.66rem;font-weight:700;letter-spacing:.02em;color:var(--text-faint);text-transform:uppercase}.place-opt-where{font-size:.8rem;font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.place-opt-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin-block-start:2px}.place-opt-ref{padding:1px 6px;font-size:.7rem;font-weight:800;font-variant-numeric:tabular-nums;color:#12120e;background:var(--chip, var(--accent));border-radius:999px}.place-opt-dist{font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dim)}.place-opt.is-on .place-opt-dist{color:var(--text)}.tag{padding:6px 11px;font-size:.79rem;font-weight:600;color:var(--text-dim);background:var(--ink-3);border:1px solid var(--line);border-radius:999px}.tag-zone{color:#12120e;background:var(--chip, var(--accent));border-color:transparent}.also{margin:11px 0 0;font-size:.82rem;color:var(--text-dim)}.dial-row{display:flex;align-items:center;gap:16px;padding:16px;margin-block-start:16px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius)}.dial-row.is-recording{background:#e2564a1a;border-color:#e2564a66}.dial-row.is-inside{background:#3fb96b1a;border-color:#3fb96b59}.dial{flex:none;inline-size:92px;block-size:92px}.dial svg{display:block;inline-size:100%;block-size:100%}.dial-read{min-inline-size:0}.dist{margin:0;font-size:2.1rem;font-weight:800;letter-spacing:-.03em;line-height:1}.dial-hint{margin:6px 0 0;font-size:.88rem;color:var(--text-dim)}.acc{margin:4px 0 0;font-size:.74rem;color:var(--text-faint)}.acc.center{text-align:center}.geo-state{flex:1;display:grid;gap:6px;justify-items:start}.arrived{display:flex;align-items:center;gap:13px}.arrived-mark{flex:none;display:grid;place-items:center;inline-size:46px;block-size:46px;font-size:1.4rem;font-weight:800;color:#0f1a12;background:#3fb96b;border-radius:50%}.arrived-title{margin:0;font-size:1.05rem;font-weight:700}.arrived-hint{margin:3px 0 0;font-size:.83rem;color:var(--text-dim)}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-block-start:12px}.btn{padding:12px 17px;font:inherit;font-size:.9rem;font-weight:600;color:var(--text);text-decoration:none;background:var(--ink-3);border:1px solid var(--line-2);border-radius:var(--radius-sm);cursor:pointer}.btn:active{filter:brightness(1.25)}.btn.is-armed,.btn-primary{color:#17110f;background:var(--accent);border-color:transparent}.overview{margin-block-start:34px}.section-title{margin:0 0 4px;font-size:1.1rem;font-weight:700}.edit-picker{display:flex;flex-wrap:wrap;gap:6px;margin-block:12px}.edit-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;font:inherit;font-size:.8rem;font-weight:600;color:var(--text-dim);background:var(--ink-2);border:1px solid var(--line);border-inline-start:4px solid var(--chip, var(--accent));border-radius:8px;cursor:pointer}.edit-chip.is-on{color:var(--text);background:var(--ink-3);border-color:var(--chip, var(--accent))}.edit-chip.is-done .edit-chip-count{color:#3fb96b}.edit-chip-num{display:grid;place-items:center;inline-size:18px;block-size:18px;font-size:.72rem;font-weight:800;color:#12120e;background:var(--chip, var(--accent));border-radius:5px}.edit-chip-count{font-variant-numeric:tabular-nums;color:var(--text-faint)}.edit-now{display:grid;gap:2px;padding:10px 13px;margin-block-end:10px;font-size:.85rem;color:var(--text-dim);background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.edit-now strong{color:var(--text);font-size:.95rem}.edit-coords,.edit-rename{padding:12px 13px;margin-block-start:12px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.coord-area{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.6;resize:vertical}.coord-note{margin:8px 0 0;font-size:.82rem;font-weight:600;color:#7fd39a}.coord-err{margin:8px 0 0;font-size:.82rem;font-weight:600;color:#ff9c92}.rename-row{display:flex;gap:8px;flex-wrap:wrap}.rename-row .field-input{flex:1;min-inline-size:140px;padding:10px 12px;font-size:.9rem}.v-handle{display:block;inline-size:18px;block-size:18px;background:#fff;border:3px solid #1b1a17;border-radius:50%;box-shadow:0 1px 4px #00000080;cursor:grab}.v-handle.is-active{background:#e2564a;border-color:#fff;inline-size:20px;block-size:20px}.v-handle.is-mid{inline-size:12px;block-size:12px;background:#ffffff8c;border-width:2px;cursor:copy}.loc-check{display:grid;gap:12px}.loc-verdict{padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--ink-2)}.loc-verdict.is-good{background:#3fb96b1f;border-color:#3fb96b66}.loc-verdict.is-warn{background:#e8a0201f;border-color:#e8a02066}.loc-verdict.is-bad{background:#e2564a1f;border-color:#e2564a6b}.loc-verdict-text{margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.loc-stats{display:flex;gap:10px}.loc-stats>div{flex:1;display:grid;gap:2px;padding:10px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.loc-stat-label{font-size:.7rem;color:var(--text-faint)}.loc-stat-value{font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}.loc-spark{display:flex;align-items:flex-end;gap:3px;block-size:44px;padding:4px 8px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm);direction:ltr}.loc-spark span{flex:1;background:var(--warn);border-radius:2px 2px 0 0}.loc-spark span.is-good{background:#3fb96b}.loc-spark span.is-bad{background:var(--accent)}.map-shell{position:relative}.map-canvas{inline-size:100%;border-radius:var(--radius);overflow:hidden;background:#22221c;border:1px solid var(--line-2)}.map-canvas .leaflet-container{background:#22221c;font:inherit}.map-canvas .leaflet-control-attribution{background:#14140fb8;color:var(--text-faint);font-size:.62rem}.map-canvas .leaflet-control-attribution a{color:var(--text-dim)}.map-controls{position:absolute;inset-block-end:10px;inset-inline-start:10px;z-index:400;display:flex;gap:7px}.map-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font:inherit;font-size:.78rem;font-weight:600;color:var(--text);background:#14140fd1;border:1px solid var(--line-2);border-radius:999px;cursor:pointer;backdrop-filter:blur(6px)}.map-btn.is-on{color:#17110f;background:var(--accent);border-color:transparent}.map-btn svg{flex:none}.recorder{display:grid;gap:14px}.recorder .field,.recorder .hint{margin:0}.rec-who{display:flex;align-items:center;gap:8px}.rec-who select{flex:1;min-inline-size:0}.rec-step{display:flex;gap:6px;flex:none}.rec-step .btn{min-inline-size:44px;font-size:1.1rem;line-height:1}.rec-sec{display:grid;gap:10px;padding:13px 14px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius)}.rec-sec-title{display:flex;align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:800}.rec-num{display:grid;place-items:center;inline-size:22px;block-size:22px;font-size:.78rem;color:#12120e;background:var(--warn);border-radius:999px}.rec-state{margin-inline-start:auto;padding:2px 9px;font-size:.68rem;font-weight:800;letter-spacing:.02em;color:var(--text-faint);background:var(--ink);border:1px solid var(--line);border-radius:999px}.rec-state.is-done{color:#0f2417;background:#3fb96b;border-color:transparent}.rec-onrecord{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;padding:7px 10px;font-size:.8rem;background:#3fb96b1a;border:1px solid rgba(63,185,107,.3);border-radius:var(--radius-sm)}.rec-onrecord-vals{font-weight:700}.rec-when{font-size:.72rem;color:var(--text-faint)}.rec-replace{align-self:center;font-size:.72rem;color:var(--text-faint)}.rec-clear{justify-self:start;font-size:.78rem}.rec-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rec-or{margin:0;font-size:.78rem;color:var(--text-faint);line-height:1.45}.rec-colors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.rec-color{display:flex;align-items:center;gap:8px;padding:9px 10px;font:inherit;font-size:.85rem;font-weight:600;text-align:start;color:var(--text);background:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.rec-color.is-on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.rec-color-dot{flex:none;inline-size:18px;block-size:18px;border:1px solid var(--line-2);border-radius:999px}.sign-capture{display:grid;gap:12px}.sign-capture .field{margin-block-start:4px}.sign-capture .result-list{max-block-size:44vh;overflow-y:auto}.sign-tick{flex:none;font-size:1rem;font-weight:700;color:var(--text-dim)}.sign-panel{display:grid;gap:10px;padding:13px 14px;background:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--radius)}.sign-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pin-kind{display:flex;gap:6px;flex-wrap:wrap}.pin-kind-opt{flex:1 1 0;min-inline-size:0;padding:8px 6px;font:inherit;font-size:.8rem;font-weight:700;color:var(--text-dim);background:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.pin-kind-opt.is-on{color:var(--text);background:var(--ink-3);border-color:var(--line-2)}.sign-panel-name{margin:0;font-size:1.05rem;font-weight:700}.sign-panel-head .result-alt{display:block;margin-block-start:2px}.sign-sampling{display:grid;gap:6px}.sign-sampling .dial-hint{margin:0;font-weight:700}.sign-capture .hint{margin:0}.is-app .map-note{position:absolute;inset-block-start:calc(max(25px,env(safe-area-inset-top,0px)) + 216px);inset-inline-end:30px;z-index:700;max-inline-size:62vw;margin:0;padding:6px 10px;font-size:.72rem;font-weight:600;color:var(--chrome-ink);text-align:end;background:var(--chrome);border-radius:10px;box-shadow:0 2px 10px #0a0a1947}.area-label.leaflet-tooltip{padding:0;font-size:.82rem;font-weight:800;letter-spacing:.01em;line-height:1.2;color:#fff;text-align:center;white-space:normal;max-inline-size:130px;background:none;border:none;box-shadow:none;text-shadow:0 1px 3px rgba(10,10,8,.95),0 0 8px rgba(10,10,8,.8),0 0 2px rgba(10,10,8,1)}.area-label.leaflet-tooltip:before{display:none}.map-fallback{display:grid;place-items:center;padding:20px;color:var(--text-faint);font-size:.87rem;text-align:center;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius)}.zone-chip{display:grid;place-items:center;inline-size:26px;block-size:26px;font-size:.8rem;font-weight:800;color:#fff;background:#14140fd9;border:2px solid var(--chip, #fff);border-radius:50%}.zone-chip.is-target{inline-size:32px;block-size:32px;font-size:.95rem}.zone-chip.is-dim{opacity:.45}.leaflet-marker-icon picture{display:block}.spot-icon{display:block;filter:drop-shadow(0 3px 5px rgba(0,0,0,.55));pointer-events:none;user-select:none}.spot-overlay{filter:drop-shadow(0 0 3px rgba(0,0,0,.45))}[dir=rtl] .leaflet-tooltip{left:0;right:auto}.spot-label.leaflet-tooltip{margin:0;padding:2px 7px;font-size:.72rem;font-weight:700;line-height:1.35;white-space:nowrap;color:#fbf7ec;background:#12120ec7;border:none;border-radius:6px;box-shadow:0 1px 3px #00000080;opacity:1!important;pointer-events:none}.spot-label.leaflet-tooltip:before{display:none}.landmark-dot{display:block;inline-size:12px;block-size:12px;background:#fbf7ec;border:2px solid #3a352a;border-radius:50%}.map-wrap{margin-block-start:14px;overflow:hidden;background:#cbb78f;border:1px solid var(--line-2);border-radius:var(--radius)}.legend{display:grid;gap:2px;margin:14px 0 0;padding:6px;list-style:none;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.legend li{display:flex;align-items:center;gap:10px;padding:8px;font-size:.87rem}.legend li+li{border-block-start:1px solid var(--line)}.swatch{flex:none;inline-size:13px;block-size:13px;border-radius:4px}.legend-code{flex:none;inline-size:1.1em;font-weight:800}.legend-name{flex:1;min-inline-size:0;color:var(--text-dim)}.legend-count{flex:none;font-variant-numeric:tabular-nums;color:var(--text-faint)}.note{margin-block-start:16px;padding:12px 14px;font-size:.83rem;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.note summary{font-weight:600;cursor:pointer}.note p{margin:9px 0 0;color:var(--text-dim);line-height:1.55}.site-foot{margin-block-start:34px;padding-block-start:16px;font-size:.75rem;color:var(--text-faint);line-height:1.5;border-block-start:1px solid var(--line)}.site-foot a{color:var(--text-dim)}.cal-grid{display:grid;gap:9px;margin-block-start:16px}.cal-row{display:flex;align-items:center;gap:11px;padding:11px 13px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:.87rem}.cal-row.done{border-color:#3fb96b66}.cal-i{flex:none;inline-size:2.2em;font-weight:800;color:var(--text-faint)}.cal-val{flex:1;min-inline-size:0;font-variant-numeric:tabular-nums;color:var(--text-dim)}.cal-row .field-input{padding:10px 12px;font-size:.95rem}.cal-row .btn{flex:none;white-space:nowrap}.cal-row .btn:disabled{opacity:.45}.cal-val bdi{display:block;font-variant-numeric:tabular-nums}.cal-out{inline-size:100%;min-block-size:220px;margin-block-start:12px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;line-height:1.5;color:var(--text);background:#0d0d0a;border:1px solid var(--line);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;overflow:auto}@media(min-width:640px){.shell{padding:26px 22px 72px}.brand-title{font-size:1.32rem}.guide-name{font-size:1.85rem}.dial{inline-size:108px;block-size:108px}}:root{--chrome: #ffffff;--chrome-ink: #191942;--chrome-ink-dim: #6a6a86;--chrome-line: #191942;--chrome-rule: rgba(25, 25, 66, .9);--bar-h: 68px}body.is-app{position:fixed;inset:0;overflow:hidden;background-image:none;overscroll-behavior:none}body.sheet-open{overscroll-behavior:contain}.app{position:absolute;inset:0}.map-shell.is-fill{position:absolute;inset:0;z-index:0;overflow:hidden}.map-shell.is-fill .leaflet-container{background:var(--ink)}.map-shell.is-fill .map-canvas{position:absolute;inset:0;block-size:100%}.map-fallback.is-fill{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center}body.is-app .leaflet-bottom .leaflet-control-attribution{margin-block-end:calc(var(--bar-h) + env(safe-area-inset-bottom,0px) + 2px);font-size:9px;line-height:1.35;background:#ffffffb8;color:#33333f}body.is-app .leaflet-bottom .leaflet-control-attribution a{color:#33333f}.is-app .map-controls{inset-block-start:calc(max(25px,env(safe-area-inset-top,0px)) + 64px);inset-block-end:auto;inset-inline-end:30px;inset-inline-start:auto;z-index:700;flex-direction:column;gap:8px}.is-app .map-btn{display:grid;place-items:center;inline-size:40px;block-size:40px;padding:0;color:var(--chrome-ink);background:var(--chrome);border:none;border-radius:999px;box-shadow:0 2px 10px #0a0a1947}.is-app .map-btn:active{background:#ececf4}.is-app .map-btn.is-on{color:var(--chrome);background:var(--chrome-ink)}.is-app .map-btn-text{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app-top{position:absolute;inset-block-start:max(25px,env(safe-area-inset-top,0px));inset-inline:30px;z-index:800;display:grid;gap:8px}.searchbar{background:var(--chrome);border-radius:999px;box-shadow:0 2px 10px #0a0a1947}.searchbar:focus-within{box-shadow:0 0 0 3px #19194259,0 2px 10px #0a0a1947}.searchbar-input{inline-size:100%;block-size:52px;padding-inline:20px;font:inherit;font-size:1rem;color:var(--chrome-ink);background:transparent;border:none;border-radius:999px;outline:none}.searchbar-input::placeholder{color:var(--chrome-ink-dim)}.searchbar-input::-webkit-search-cancel-button{-webkit-appearance:none}.search-panel{max-block-size:min(46vh,380px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px;background:var(--chrome);border-radius:18px;box-shadow:0 6px 20px #0a0a194d}.search-panel .result-list{display:grid;gap:2px;margin:0;padding:0;list-style:none}.search-panel .result{inline-size:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;font:inherit;text-align:start;color:var(--chrome-ink);background:none;border:none;border-radius:12px;cursor:pointer}.search-panel .result:active{background:#19194212}.search-panel .result-names{display:grid;gap:1px;flex:1;min-inline-size:0}.search-panel .result-name{font-weight:700}.search-panel .result-alt{font-size:.78rem;color:var(--chrome-ink-dim)}.search-empty{margin:0;padding:12px;font-size:.85rem;color:var(--chrome-ink-dim)}.app-note{justify-self:start;margin:0;padding:3px 10px;font-size:.72rem;font-weight:700;color:#14140f;background:var(--warn);border-radius:999px}.app-error{position:absolute;inset-block-start:88px;inset-inline:16px;z-index:600}.tabbar{position:absolute;inset-inline:0;inset-block-end:0;z-index:800;display:grid;grid-template-columns:repeat(4,1fr);block-size:calc(var(--bar-h) + env(safe-area-inset-bottom,0px));padding-block-end:env(safe-area-inset-bottom,0px);background:var(--chrome);border-block-start:2px solid var(--chrome-line)}.tab{display:grid;place-items:center;padding:0;color:var(--chrome-ink);background:none;border:none;border-inline-start:2px solid var(--chrome-rule);cursor:pointer;-webkit-tap-highlight-color:transparent}.tab:first-child{border-inline-start:none}.tab.is-on{color:var(--accent)}.tab:active{background:#1919420f}.sheet-layer{position:absolute;inset:0;z-index:700}.sheet-scrim{position:absolute;inset:0;padding:0;background:#0c0c1c57;border:none;cursor:pointer}.sheet{position:absolute;inset-inline:0;inset-block-end:calc(var(--bar-h) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;max-block-size:min(68dvh,580px);background:var(--chrome);border-start-start-radius:20px;border-start-end-radius:20px;box-shadow:0 -6px 24px #0a0a194d;animation:sheet-rise .22s cubic-bezier(.2,.8,.2,1)}.sheet.is-tall{block-size:min(68dvh,580px)}@keyframes sheet-rise{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.sheet{animation:none}}.sheet:focus{outline:none}.sheet-head{position:relative;flex:none;display:flex;align-items:center;gap:10px;padding:14px 16px 10px;border-block-end:1px solid rgba(25,25,66,.12)}.sheet-grip{position:absolute;inset-block-start:6px;inset-inline:0;margin-inline:auto;inline-size:38px;block-size:4px;background:#19194238;border-radius:999px}.sheet-title{flex:1;margin:0;font-size:1rem;font-weight:800;color:var(--chrome-ink)}.sheet-close{display:grid;place-items:center;inline-size:32px;block-size:32px;color:var(--chrome-ink);background:#19194212;border:none;border-radius:999px;cursor:pointer}.sheet-body{flex:1;min-block-size:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 16px 16px}.sheet-lead{margin:0 0 12px;font-size:.85rem;line-height:1.5;color:var(--chrome-ink-dim)}.sheet-note{margin:16px 0 0;padding-block-start:12px;border-block-start:1px solid rgba(25,25,66,.12);font-size:.78rem;line-height:1.5;color:var(--chrome-ink-dim)}.sheet-body .note.faq{margin-block-end:8px}.sheet-body .note.faq summary{font-size:.9rem;line-height:1.4}.sheet-group{margin:16px 0 8px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--chrome-ink-dim)}.sheet-group:first-child{margin-block-start:4px}.sheet-body .results-count,.sheet-body .empty-hint{color:var(--chrome-ink-dim)}.sheet-body .empty-title{color:var(--chrome-ink)}.sheet-body .result,.sheet-body .place{inline-size:100%;display:flex;align-items:center;gap:12px;padding:12px;font:inherit;text-align:start;color:var(--chrome-ink);background:#1919420a;border:1px solid rgba(25,25,66,.1);border-radius:var(--radius-sm);cursor:pointer}.sheet-body .result-list,.sheet-body .place-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.sheet-body .result-names{display:grid;gap:1px;flex:1;min-inline-size:0}.sheet-body .result-name{font-weight:700}.sheet-body .result-alt{font-size:.78rem;color:var(--chrome-ink-dim)}.place-text{display:grid;gap:3px;flex:1;min-inline-size:0}.place-name{min-inline-size:0;font-weight:600}.place-desc{font-size:.78rem;line-height:1.45;color:var(--chrome-ink-dim)}.sheet-body .place{align-items:start}.sheet-body .place .place-swatch,.sheet-body .place .place-count{margin-block-start:3px}.place-count{font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--chrome-ink-dim)}.place-swatch{flex:none;inline-size:14px;block-size:14px;border-radius:4px}.place-swatch.is-dot{border-radius:999px}.sheet-body .note{color:var(--chrome-ink);background:#1919420a;border-color:#1919421a}.sheet-body .note p{color:var(--chrome-ink-dim)}.sheet-body .banner-warn,.guide-card .banner-warn,.app-error.banner-warn{color:#6a4708;background:#fdf1d8;border-color:#b4781073}.app-error.banner-warn{box-shadow:0 4px 16px #0a0a194d}.lang-row{display:flex;gap:8px}.lang-opt{flex:1;padding:11px 12px;font-size:.9rem;font-weight:700;text-align:center;text-decoration:none;color:var(--chrome-ink);background:#1919420d;border:1px solid rgba(25,25,66,.12);border-radius:var(--radius-sm)}.lang-opt.is-on{color:#fff;background:var(--chrome-ink);border-color:var(--chrome-ink);pointer-events:none}.guide-card{position:absolute;inset-inline:12px;inset-block-end:calc(var(--bar-h) + env(safe-area-inset-bottom,0px) + 12px);z-index:600;max-block-size:calc(100dvh - var(--bar-h) - 150px);overflow-y:auto;padding:14px 14px 16px;background:var(--chrome);border-radius:18px;box-shadow:0 6px 24px #0a0a1957}.guide-dismiss{float:inline-end;display:grid;place-items:center;inline-size:30px;block-size:30px;color:var(--chrome-ink);background:#19194212;border:none;border-radius:999px;cursor:pointer}.guide-id{margin-block-end:10px}.guide-card .guide-name{margin:0;font-size:1.15rem;font-weight:800;color:var(--chrome-ink)}.guide-card .guide-alt{margin:2px 0 0;font-size:.82rem;color:var(--chrome-ink-dim)}.guide-card .guide-desc{margin:6px 0 0;font-size:.82rem;line-height:1.5;color:var(--chrome-ink-dim);max-block-size:7.5em;overflow-y:auto;overscroll-behavior:contain}.guide-card .guide-tags{display:flex;flex-wrap:wrap;gap:6px;margin-block-end:12px}.guide-card .tag{padding:4px 9px;font-size:.75rem;font-weight:700;color:var(--chrome-ink);background:#1919420f;border:1px solid rgba(25,25,66,.12);border-radius:999px}.guide-card .tag-zone{border-inline-start:4px solid var(--chip, var(--accent))}.guide-card .dial-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#1919420d;border:1px solid rgba(25,25,66,.1);border-radius:var(--radius-sm)}.guide-card .dial{flex:none;inline-size:54px;block-size:54px}.guide-card .dial circle{stroke:#19194229}.guide-card .dist{margin:0;font-size:1.2rem;font-weight:800;color:var(--chrome-ink);direction:ltr}.guide-card .dial-hint{margin:2px 0 0;font-size:.82rem;color:var(--chrome-ink-dim)}.guide-card .acc{margin:3px 0 0;font-size:.74rem;color:var(--chrome-ink-dim)}.guide-card .arrived{display:flex;align-items:center;gap:12px}.guide-card .arrived-mark{display:grid;place-items:center;inline-size:40px;block-size:40px;font-size:1.2rem;font-weight:800;color:#0d2c17;background:#3fb96b;border-radius:999px}.guide-card .arrived-title{margin:0;font-weight:800;color:var(--chrome-ink)}.guide-card .arrived-hint{margin:2px 0 0;font-size:.8rem;color:var(--chrome-ink-dim)}.guide-card .actions{display:flex;flex-wrap:wrap;gap:8px;margin-block-start:10px}.guide-card .btn{padding:10px 14px;font-size:.85rem;font-weight:700;text-decoration:none;color:var(--chrome-ink);background:#1919420f;border:1px solid rgba(25,25,66,.14);border-radius:var(--radius-sm);cursor:pointer}.guide-card .btn-primary{color:#fff;background:var(--accent);border-color:var(--accent)}.guide-card .banner{margin-block-end:10px}
