:root{--bg:#08111f;--bg-2:#0d1b31;--surface:#0f1d34;--surface-2:#132441;--ink:#eef3fb;--muted:#94a6c2;--line:#22385c;--paint:#233c63;--sign:#1a73ff;--sign-ink:#ffffff;--bright:#3d9bff;--glow:rgba(26,115,255,.55);--curb:#ffc531;--curb-ink:#241a00;--go:#3ddc97;--warn:#f5a524;--stop:#ff6b6b;--chip:#0c1a30;--logo-ink:#ffffff;--logo-dot:#2f6bff;--wordmark:var(--font-quicksand),"Overpass",system-ui,sans-serif;--display:var(--font-overpass),"Arial Narrow",system-ui,sans-serif;--body:var(--font-overpass),system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-overpass-mono),ui-monospace,"SF Mono",Consolas,monospace;color-scheme:dark}*{box-sizing:border-box}body,html{margin:0}body{background:radial-gradient(1200px 600px at 50% -200px,var(--bg-2),var(--bg)) fixed,var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5;min-height:100vh}[hidden]{display:none!important}.wrap{max-width:640px;margin:0 auto;padding-block:20px 96px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:20px}.wrap.wide{max-width:900px}h1,h2,h3{font-family:var(--display);margin:0;text-wrap:balance}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--sign)}:focus-visible{outline:3px solid var(--sign);outline-offset:2px}.mono{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:13px}header{justify-content:space-between;flex-wrap:wrap}.brand,header{display:flex;align-items:center;gap:12px}.brand h1{font-family:var(--wordmark);font-size:34px;font-weight:700;letter-spacing:-.01em;line-height:1;color:var(--logo-ink)}.wm-i{position:relative;display:inline-block}.wm-i:after{content:"";position:absolute;left:50%;top:.03em;width:.25em;height:.25em;margin-left:-.11em;border-radius:50%;background:var(--logo-dot)}.brand p{margin:2px 0 0;color:var(--muted);font-size:14px}.header-right{display:flex;align-items:center;gap:8px}.credits{display:flex;align-items:baseline;gap:6px;border:1px solid var(--line);padding:6px 14px}.credits:hover{border-color:var(--muted)}.credits b{font-family:var(--mono);font-size:18px}.credits.empty b{color:var(--stop)}.plate{color:var(--sign-ink);border-radius:8px;display:grid;place-items:center;box-shadow:inset 0 0 0 2px var(--sign),inset 0 0 0 4px var(--sign-ink);font-family:var(--display);font-weight:800}.notice{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14px}.notice.error{border-color:var(--stop)}.wallet{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:14px}.wallet-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.wallet h2{font-size:20px}.wallet .bal{font-family:var(--mono);font-size:40px;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.wallet .bal small{font-family:var(--body);font-size:14px;color:var(--muted);font-weight:600;margin-left:6px}.ledger{width:100%;border-collapse:collapse;font-size:14px}.ledger td{padding:7px 0;border-top:1px solid var(--line)}.ledger td:last-child{text-align:right;font-family:var(--mono);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:12px}.ledger tr.total td{border-top:2px solid var(--ink);font-weight:800}.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:10px;gap:10px}.rule{background:var(--bg);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:4px}.rule .amt{font-family:var(--mono);font-size:22px;font-weight:700}.rule .amt.plus{color:var(--go)}.rule .amt.minus{color:var(--stop)}.rule b{font-size:14px}.rule span{font-size:13px;color:var(--muted)}.handoff{border:2px solid var(--sign);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:14px}.handoff .eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--sign)}.handoff h2{font-size:22px}.timers{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.timer{background:var(--bg);border-radius:10px;padding:10px 12px}.timer .lbl{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.timer .val{font-family:var(--mono);font-size:28px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.timer .val.text{font-size:18px;padding-top:6px}.timer .val.late{color:var(--stop)}.directions{background:var(--bg);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px}.directions .lbl{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.directions .exact{font-family:var(--display);font-size:20px;font-weight:800;overflow-wrap:anywhere}.directions p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.directions a.btn{align-self:flex-start;text-decoration:none}.confirms{display:flex;flex-direction:column;gap:4px}.status-line{display:flex;align-items:center;gap:8px;font-weight:600}.dot{width:10px;height:10px;border-radius:50%;background:var(--muted);flex:none}.dot.go{background:var(--go)}.dot.wait{background:var(--curb)}.dot.stop{background:var(--stop)}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:9px 14px;font-weight:600;display:inline-block}.btn:hover:not(:disabled){border-color:var(--muted)}.btn.primary{background:var(--sign);color:var(--sign-ink)}.btn.primary:hover:not(:disabled){filter:brightness(1.08)}.btn.dibs{background:var(--curb);border-color:var(--curb);color:var(--curb-ink);font-weight:800}.btn.danger{color:var(--stop)}.btn.sm{padding:6px 10px;font-size:13px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--chip);border-radius:12px;padding:4px;grid-gap:4px;gap:4px}.tabs button{border:0;background:transparent;padding:10px;border-radius:9px;font-weight:800;font-family:var(--display);font-size:16px}.tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}.panel{display:flex;flex-direction:column;gap:12px}.nearbar{display:grid;align-items:center;grid-gap:8px 12px;gap:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.nearbar label{font-family:var(--display);font-weight:800;font-size:16px}.nearbar select{min-width:0}.nearbar .hint{grid-column:1/-1;font-size:13px;color:var(--muted)}.lots{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.lotchip{flex:none;display:flex;align-items:center;gap:6px;border:1px solid var(--line);padding:6px 12px;font-weight:600;font-size:14px;white-space:nowrap}.lotchip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.lotchip .n{font-family:var(--mono);font-size:12px;background:var(--curb);color:var(--curb-ink);border-radius:999px;padding:0 6px}.lotchip .bell{width:7px;height:7px;border-radius:50%;background:var(--sign)}.lotchip[aria-pressed=true] .bell{background:var(--curb)}.watchbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px}.board{background:var(--surface);border:1px solid var(--line);border-radius:14px}.stall{display:grid;grid-template-columns:auto 1fr;grid-gap:14px;gap:14px;padding:16px}.stall+.stall{border-top:3px dashed var(--paint)}.stall .plate{width:52px;height:52px;font-size:28px;padding-top:4px}.stall-main{min-width:0;display:flex;flex-direction:column;gap:6px}.stall-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.stall h3{font-size:18px;line-height:1.25;overflow-wrap:anywhere}.stall .where{color:var(--muted);font-size:14px}.dist{font-size:13px;font-weight:700;color:var(--muted)}.dist.near{color:var(--go)}.pill{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:3px 8px;white-space:nowrap}.pill.open{background:var(--curb);color:var(--curb-ink)}.pill.claimed{background:var(--chip)}.pill.mine{background:var(--sign);color:var(--sign-ink)}.leaving{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;font-size:15px}.etas{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.etas .lbl{font-size:13px;color:var(--muted);margin-right:4px}.eta{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:8px;padding:6px 10px;font-family:var(--mono);font-weight:700}.eta:hover:not(:disabled){border-color:var(--curb)}.empty{padding:36px 20px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}.empty .plate{width:52px;height:52px;font-size:32px;opacity:.35;padding-top:4px}.empty h3{font-size:18px}.empty p{margin:0;max-width:40ch;color:var(--muted)}.card-form{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;gap:16px}.card-form,.field{display:flex;flex-direction:column}.field{gap:6px}.field>.label,.field>label{font-weight:700;font-size:14px}.field .hint{font-size:13px;color:var(--muted)}.private{border:1px dashed var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:14px}.private-head{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px}.tag{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--sign);color:var(--sign-ink);border-radius:5px;padding:2px 7px}input[type=email],input[type=number],input[type=text],select,textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;width:100%}textarea{resize:vertical;min-height:72px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row>input{flex:1 1 180px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg button{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;padding:8px 12px;font-family:var(--mono);font-weight:700;min-width:56px}.seg button[aria-pressed=true]{background:var(--sign);color:var(--sign-ink);border-color:var(--sign)}.card-form .btn.primary.big{padding:12px;font-size:16px;font-family:var(--display);font-weight:800}.how{display:flex;flex-direction:column;gap:10px}.how h2{font-size:18px}.how ol{margin:0;padding:0;list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:10px}.how li{counter-increment:s;display:grid;grid-template-columns:28px 1fr;grid-gap:10px;gap:10px;font-size:14px}.how li:before{content:counter(s);font-family:var(--mono);font-weight:700;color:var(--sign);border-radius:6px;height:26px;display:grid;place-items:center;font-size:13px}.how li b{color:var(--ink)}.admin-table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px}.admin-table{width:100%;border-collapse:collapse;font-size:14px;min-width:720px}.admin-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}.admin-table td{padding:8px 12px;border-top:1px solid var(--line);vertical-align:middle}.admin-table input[type=number],.admin-table input[type=text]{padding:7px 9px}.admin-table tr.hidden-area td{opacity:.6}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:14px;gap:14px}.check{display:flex;gap:8px;align-items:center;font-weight:600}.map{height:260px;width:100%;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--chip);z-index:0}.map.tall{height:380px}.map-pin{display:grid;place-items:center;width:30px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--sign);border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35)}.map-pin b{transform:rotate(45deg);color:#fff;font:800 14px/1 var(--display)}.map-pin.open{background:var(--curb)}.map-pin.open b{color:var(--curb-ink)}.map-pin.claimed{background:#8a93a3}.map-pin.mine,.map-pin.target{background:var(--sign)}.map-me{display:block;width:18px;height:18px;border-radius:50%;background:var(--bright);border:3px solid #fff;box-shadow:0 0 0 6px color-mix(in srgb,var(--bright) 30%,transparent)}.leaflet-container{font-family:var(--body)}.viewtoggle{display:inline-grid;grid-template-columns:1fr 1fr;background:var(--chip);border-radius:10px;padding:3px;gap:3px;align-self:flex-start}.viewtoggle button{border:0;background:transparent;color:var(--muted);padding:6px 14px;border-radius:8px;font-weight:700}.viewtoggle button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}details.paste summary{cursor:pointer;font-size:13px;color:var(--muted)}details.paste[open] summary{margin-bottom:6px}.toasts{position:fixed;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;padding:0 max(16px,env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom, 0px)) max(16px,env(safe-area-inset-left,0px));z-index:1000}.toast{pointer-events:auto;max-width:520px;width:100%;background:var(--ink);color:var(--bg);border-radius:12px;padding:12px 16px;font-weight:600;box-shadow:0 6px 24px rgba(0,0,0,.25);animation:up .25s ease-out}.toast.spot{background:var(--curb);color:var(--curb-ink)}.toast.good{background:var(--go);color:#fff}.toast.bad{background:var(--stop);color:#fff}@keyframes up{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.admin-table-wrap,.board,.card-form,.nearbar,.notice,.panel-card,.wallet{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0)),var(--surface);border:1px solid var(--line);border-radius:18px}input[type=email],input[type=number],input[type=text],select,textarea{background:var(--chip);border-color:var(--line);border-radius:12px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--sign);box-shadow:0 0 0 3px rgba(26,115,255,.25)}.credits{align-items:center;gap:8px;padding:8px 18px;border-radius:999px;background:var(--surface);border:1.5px solid var(--sign);box-shadow:0 0 18px -6px var(--glow);color:var(--ink)}.credits svg{color:var(--bright)}.credits b{font-size:20px}.tabs{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:6px;gap:6px}.tabs button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 10px;border-radius:13px;font-size:17px;color:var(--muted)}.tabs button[aria-selected=true]{background:linear-gradient(180deg,#2a83ff,var(--sign));color:#fff;box-shadow:0 0 22px -2px var(--glow),inset 0 1px 0 rgba(255,255,255,.25)}.nearbar{grid-template-columns:auto 1fr;padding:16px 18px;gap:10px 14px}.nearbar label{display:flex;align-items:center;gap:8px}.nearbar label svg{color:var(--bright)}.lotchip{border-radius:999px;padding:9px 16px;background:var(--surface);border:1.5px solid var(--line);color:var(--ink);font-size:15px}.lotchip small{color:var(--muted);font-weight:600;font-size:12px}.lotchip[aria-pressed=true]{background:var(--surface-2);color:#fff;border-color:var(--sign);box-shadow:0 0 16px -4px var(--glow)}.lotchip[aria-pressed=true] small{color:#c7dcff}.lots{scrollbar-color:var(--sign) var(--surface);padding-bottom:8px}.watchbar .watch-label{display:flex;align-items:center;gap:10px;color:var(--ink)}.watchbar .watch-label svg{color:var(--bright);background:var(--surface-2);border-radius:8px;padding:5px;box-sizing:content-box}.watchbar .btn{display:inline-flex;align-items:center;gap:8px;border-radius:12px}.viewtoggle{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:4px}.viewtoggle button{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:10px;font-size:15px}.viewtoggle button[aria-pressed=true]{background:var(--sign);color:#fff;box-shadow:0 0 14px -3px var(--glow)}.btn{border-radius:12px;background:var(--surface-2);border-color:var(--line)}.btn.primary{background:linear-gradient(180deg,#2a83ff,var(--sign));border-color:var(--sign);box-shadow:0 0 18px -6px var(--glow)}.btn.ghost{background:transparent}.btn.dibs{box-shadow:0 0 16px -6px rgba(255,197,49,.7)}.plate{background:var(--sign);box-shadow:inset 0 0 0 2px var(--sign),inset 0 0 0 4px #fff,0 0 20px -4px var(--glow);border-radius:10px}.board{overflow:hidden}.stall+.stall{border-top:2px dashed var(--paint)}.pill.claimed{background:var(--surface-2);color:var(--muted)}.empty.scene{position:relative;min-height:300px;padding:44px 24px 96px;isolation:isolate}.empty.scene .nightlot{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.9}.empty.scene .plate{opacity:1;width:64px;height:64px;font-size:40px}.empty.scene h3{font-size:22px}.empty.scene p{color:#c9d6ea}.handoff{border:1.5px solid var(--sign);box-shadow:0 0 30px -12px var(--glow);background:var(--surface)}.directions,.rule,.timer{background:var(--surface-2)}.how h2{font-size:22px}.how ol{gap:14px}.how li{grid-template-columns:34px 1fr;position:relative;color:var(--muted);font-size:15px}.how li:before{width:32px;height:32px;border-radius:9px;border:2px solid var(--sign);color:#fff;background:var(--surface);box-shadow:0 0 12px -3px var(--glow);font-size:14px}.how li:not(:last-child):after{content:"";position:absolute;left:16px;top:34px;bottom:-14px;border-left:2px dashed var(--sign);opacity:.6}.map{border-radius:16px;border-color:var(--line)}.leaflet-tile-pane{filter:invert(1) hue-rotate(185deg) brightness(.95) contrast(.9) saturate(.55)}.leaflet-container{background:#0b1527}.leaflet-control-attribution{background:rgba(8,17,31,.75)!important;color:var(--muted)!important}.leaflet-control-attribution a{color:var(--bright)!important}.leaflet-bar a{background:var(--surface-2)!important;color:var(--ink)!important;border-color:var(--line)!important}.leaflet-tooltip{background:var(--surface-2);color:var(--ink);border-color:var(--line)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px}.status-line .dot.stop{background:var(--stop)}.wm-i:after{box-shadow:0 0 10px 1px var(--glow)}.ad{position:relative;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,rgba(61,155,255,.1),rgba(255,255,255,0) 60%),var(--surface);border:1px solid var(--line)}.ad-tag{position:absolute;top:8px;right:12px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ad-img{width:64px;height:64px;object-fit:cover;border-radius:12px;flex:none;background:var(--surface-2)}.ad-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1;padding-right:56px}.ad-text b{font-family:var(--display);font-size:16px;color:var(--ink)}.ad-text span{font-size:14px;color:var(--muted)}.ad-sponsor{font-size:12px!important;font-weight:700;color:var(--bright)!important;text-transform:uppercase;letter-spacing:.05em}.ad-cta{flex:none;text-decoration:none}.ad-banner{min-height:72px}.board .ad-inline{border-radius:0;border-width:2px 0 0;border-top:2px dashed var(--paint);background:linear-gradient(135deg,rgba(61,155,255,.08),rgba(255,255,255,0) 60%)}.ad-footer{padding:18px}.ad-house{border-style:dashed;background:var(--surface)}.ad-house .ad-text{padding-right:60px}.ad-contact{color:var(--bright);font-weight:700;-webkit-user-select:all;-moz-user-select:all;user-select:all}@media (max-width:480px){.ad{flex-wrap:wrap}.ad-text{padding-right:0;flex-basis:calc(100% - 80px)}.ad-cta{margin-left:auto}}