:root{--bg: #111318;--card: #1a1d24;--edge: #2a2e38;--fg: #e8eaf0;--dim: #9aa1af;--accent: #4cc38a;--accent2: #6cb2ff;--radius: 14px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--fg);font:1rem/1.45 system-ui,-apple-system,Segoe UI,sans-serif;display:flex;justify-content:center;padding:max(12px,env(safe-area-inset-top)) 14px 24px}main{width:100%;max-width:560px}h1{font-size:1.05rem;font-weight:650;margin:10px 2px 2px;letter-spacing:.01em}h1 .cross{color:var(--accent)}.sub{color:var(--dim);font-size:.8rem;margin:0 2px 14px;min-height:1.2em}form{display:flex;gap:8px}input[type=text]{flex:1;min-width:0;font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--edge);border-radius:var(--radius);padding:13px 15px;outline:none}input[type=text]:focus{border-color:var(--accent)}input[type=text]::placeholder{color:#5d6470}button{font:inherit;cursor:pointer;color:var(--fg);background:var(--card);border:1px solid var(--edge);border-radius:var(--radius)}#go{background:var(--accent);border-color:var(--accent);color:#08110c;font-weight:600;padding:0 18px}.row2{display:flex;gap:8px;margin-top:8px}.row2 button{flex:1;font-size:.85rem;padding:9px 0;font-weight:500;color:var(--dim)}progress{width:100%;margin-top:10px;accent-color:var(--accent)}.out{margin-top:14px;background:var(--card);border:1px solid var(--edge);border-radius:var(--radius);padding:16px 18px;display:none}.out.show{display:block}.addr{font-size:.85rem;color:var(--dim);margin-bottom:8px}.addr .src{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:99px;font-size:.68rem;font-weight:600;letter-spacing:.03em;vertical-align:1px}.src.db,.src.city{background:#143d2b;color:var(--accent)}.src.osm{background:#1b2c44;color:var(--accent2)}.src.here,.src.reverse{background:#2b2440;color:#b9a6ff}.grid{font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums}.grid .ns{color:var(--accent)}.grid .ew{color:var(--accent2)}.grid button{font-size:.75rem;vertical-align:8px;margin-left:10px;padding:3px 10px;color:var(--dim);font-weight:500}.miles{color:var(--dim);font-size:.88rem;margin-top:4px}.near{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.near .lbl{color:var(--dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;width:100%}.near .xrow{display:flex;gap:10px;width:100%;align-items:baseline;color:var(--fg);font-size:.84rem}.near .xrow b{width:1em;color:var(--dim)}.near .xrow.on .xl{font-weight:600}.near .xrow.on .xd{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.near .xrow .xd{margin-left:auto;color:var(--dim);font-variant-numeric:tabular-nums}.chip{background:var(--card);border:1px solid var(--edge);color:var(--fg);border-radius:99px;padding:5px 11px;font-size:.78rem}.near .chip{color:var(--dim)}.ll{color:var(--dim);font-size:.78rem;margin-top:10px}.smapwrap{margin-top:12px;position:relative}.smapwrap[hidden]{display:none}.smapwrap canvas{display:block;width:100%;border:1px solid var(--edge);border-radius:10px;background:var(--bg);cursor:grab;touch-action:none}.smapwrap canvas.grabbing{cursor:grabbing}.smapwrap .zbtn{position:absolute;right:8px;width:30px;height:30px;border-radius:99px;font-size:17px;line-height:1;padding:0;color:var(--fg);backdrop-filter:blur(4px);background:color-mix(in srgb,var(--card) 78%,transparent)}.ll a{color:var(--accent2);text-decoration:none}.hist{margin-top:16px}.hist h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--dim);margin:0 4px 8px}.hist .chips{display:flex;flex-wrap:wrap;gap:8px}.hist .chip span{color:var(--dim);margin-left:6px;font-variant-numeric:tabular-nums}.err,.busy{margin-top:14px;font-size:.88rem;display:none}.err.show,.busy.show{display:block}.err{color:#ff8f8f}.busy{color:var(--dim)}footer{margin-top:26px;color:#565d69;font-size:.7rem;text-align:center}
