.desktop-app-nav{display:flex;align-items:center;justify-content:center;gap:3px;overflow:auto;scrollbar-width:none}.desktop-app-nav button{border:0;background:transparent;border-radius:999px;padding:8px 10px;font-weight:800;white-space:nowrap}.desktop-app-nav button:hover,.desktop-app-nav button.active{background:var(--mint)}.app>.service-switcher{height:42px;align-items:center;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:68px;z-index:11}.app>.service-switcher button:hover{background:var(--mint)}.app-grid{height:calc(100vh - 110px)}.ride-screen{min-height:calc(100vh - 110px)}
.real-map{isolation:isolate;background:#dfe9e3;z-index:0}.map-loading,.map-unavailable{height:100%;min-height:inherit;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--muted)}.map-spinner{width:34px;height:34px;border:4px solid #c6d8ce;border-top-color:var(--green);border-radius:50%;animation:map-spin .8s linear infinite}@keyframes map-spin{to{transform:rotate(360deg)}}.leaflet-container{font:14px/1.4 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;background:#dfe9e3}.leaflet-control-attribution{font-size:10px}.alahi-map-icon-shell{background:transparent;border:0}.alahi-map-icon{width:42px;height:42px;border:4px solid #fff;background:var(--ink);color:var(--lime);border-radius:50% 50% 50% 10%;transform:rotate(-45deg);box-shadow:0 7px 18px #082a2255;display:grid;place-items:center;font-size:10px;font-weight:950}.alahi-map-icon.vehicle.selected{width:48px;height:48px;background:var(--lime);color:var(--ink);border-color:var(--ink)}.alahi-map-icon.parking{background:#1766a8;color:#fff;border-radius:50%;font-size:16px}.alahi-map-icon.location{width:30px;height:30px;margin:7px;background:#3478f6;color:#fff;border-radius:50%;border-width:5px}.alahi-map-controls{display:grid;gap:4px;margin-left:2px}.alahi-map-controls button{width:34px;height:34px;border:0;border-radius:5px;background:#fff;box-shadow:0 1px 5px #0004;font-weight:900;font-size:20px}.alahi-map-controls button:hover{background:#f2f6f4}.reservation .real-map,.modal .real-map{min-height:260px;height:260px}.ride-screen .real-map{min-height:calc(100vh - 110px)}
.scan-camera{position:relative;overflow:hidden;min-height:330px;background:#082a22;color:#fff}.scan-camera video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scan-camera-overlay{position:relative;z-index:2;display:grid;place-items:center;gap:12px;min-height:280px;padding:24px;background:linear-gradient(#082a2255,#082a2299)}.scan-frame{width:190px;height:190px;border:4px solid var(--lime);border-radius:22px;box-shadow:0 0 0 999px #082a2230}.parking-checks{display:grid;gap:10px;margin:18px 0}.check-row{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:14px;background:var(--mint)}.check-row input{width:22px;height:22px}.bottom-nav button.active{color:var(--green);background:#f1f8f4}
@media(max-width:1100px){.desktop-app-nav button{padding:7px 6px;font-size:12px}.app-top{gap:10px;padding:0 14px}}@media(max-width:650px){.desktop-app-nav{display:none}.app>.service-switcher{display:none}.app-grid{height:auto}.ride-screen{min-height:calc(100vh - 60px)}.ride-screen .real-map{min-height:48vh;height:48vh}.scan-camera{min-height:calc(100vh - 330px)}.map-page .side-panel{touch-action:pan-y}.vehicle-list{max-height:26vh;overflow:auto}.bottom-nav{padding-bottom:env(safe-area-inset-bottom);height:calc(70px + env(safe-area-inset-bottom))}}
