.iso-root{z-index:5;font-family:Manrope, var(--ui-font);color:#f3e9dc;touch-action:none;background:radial-gradient(120% 90% at 22% 8%,#7836848c,#0000 55%),radial-gradient(90% 80% at 88% 96%,#4a235699,#0000 60%),linear-gradient(160deg,#2a1430 0%,#1d0e24 60%,#150a1b 100%);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.iso-chips{scrollbar-width:none;padding:calc(env(safe-area-inset-top) + 64px) 12px 8px;flex-wrap:nowrap;align-items:center;gap:6px;display:flex;overflow-x:auto}.iso-chips::-webkit-scrollbar{display:none}.iso-chip{border-radius:var(--ui-radius-pill);color:#c9a9d4;background:#00000059;border:1px solid #5a3d63b3;flex-shrink:0;min-height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.iso-chip-on{color:#2a1430;background:#f3e9dc;border-color:#f3e9dc}.iso-chip-role{letter-spacing:.04em;opacity:.75;text-transform:uppercase;margin-top:1px;font-size:9px;font-weight:600;display:block}.iso-sep{background:#5a3d63b3;flex-shrink:0;width:1px;height:20px}.iso-stage{cursor:grab;flex:1;min-height:0;position:relative}.iso-stage:active{cursor:grabbing}.iso-svg{transform-origin:50% 45%;width:100%;height:100%;font-family:"Space Grotesk", Manrope, var(--ui-font)}.iso-floor{transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .5s}.iso-box{cursor:pointer;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.iso-route{animation:1.6s linear infinite iso-dash}@keyframes iso-dash{to{stroke-dashoffset:-36px}}.iso-pulse{transform-origin:50%;animation:1.8s ease-out infinite iso-pulse}@keyframes iso-pulse{0%{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.9)}}.iso-hint{left:50%;bottom:calc(env(safe-area-inset-bottom) + 8px);border-radius:var(--ui-radius-pill);color:#a98fb3;white-space:nowrap;pointer-events:none;background:#0006;margin:0;padding:4px 12px;font-size:11px;position:absolute;translate:-50%}.you-marker{width:22px;height:22px}.you-gps .you-dot{background:var(--ui-acPrimary);border:3.5px solid var(--ui-routeCasing);box-shadow:var(--ui-shadow-standard);border-radius:50%;position:absolute;inset:2px}.you-gps .you-pulse{background:color-mix(in srgb, var(--ui-acPrimary) 22%, transparent);border-radius:50%;animation:2s ease-out infinite you-pulse;position:absolute;inset:-8px}@keyframes you-pulse{0%{opacity:.9;transform:scale(.55)}to{opacity:0;transform:scale(1.35)}}.you-anchor .you-dot{background:var(--ui-acAnchor);border:2px solid var(--ui-routeCasing);box-shadow:var(--ui-shadow-standard);border-radius:7px;position:absolute;inset:0}.you-anchor .you-dot:after{content:"";background:var(--ui-routeCasing);border-radius:50%;width:6px;height:6px;position:absolute;inset:50% auto auto 50%;translate:-50% -50%}.you-steps .you-dot{border:2.5px dashed var(--ui-acPrimary);background:color-mix(in srgb, var(--ui-acPrimary) 10%, transparent);border-radius:50%;position:absolute;inset:0}.you-label{white-space:nowrap;border-radius:var(--ui-radius-pill);background:var(--ui-surfCard);color:var(--ui-txPrimary);box-shadow:var(--ui-shadow-standard);padding:2px 8px;font-size:12px;font-weight:600;position:absolute;top:28px;left:50%;translate:-50%}.you-label:empty{display:none}.route-start-marker{background:var(--ui-acAnchor);border:2.5px solid var(--ui-routeCasing);border-radius:5px;width:16px;height:16px}.route-target-marker{width:26px;height:26px}.route-target-pin{background:var(--ui-acPrimary);border:2.5px solid var(--ui-routeCasing);box-shadow:var(--ui-shadow-standard);border-radius:50% 50% 50% 4px;animation:2.2s ease-in-out infinite pin-breathe;position:absolute;inset:0;rotate:45deg}@keyframes pin-breathe{50%{transform:scale(1.08)}}.orient-phrase{margin:var(--ui-space-sm) 0 0;font-size:19px;font-weight:700}.orient-arrow{margin-top:var(--ui-space-md);color:var(--ui-txMuted);place-items:center;display:grid}.orient-arrow svg{width:96px;height:96px;transition:rotate .2s var(--ui-ease)}.orient-arrow-live{color:var(--ui-acPrimary)}.orient-note{margin:var(--ui-space-md) 0 0;text-align:center;color:var(--ui-txMuted);font-size:13.5px}.orient-note-warn{color:var(--ui-acWarn)}.search-overlay{z-index:25;background:var(--ui-bgTop);padding:calc(env(safe-area-inset-top) + var(--ui-space-sm)) var(--ui-space-lg) var(--ui-space-lg);position:absolute;inset:0;overflow-y:auto}.search-head{gap:var(--ui-space-sm);align-items:center;display:flex}.search-input{height:52px;padding:0 var(--ui-space-lg);border:1.5px solid var(--ui-bdStrong);border-radius:var(--ui-radius-button);background:var(--ui-surfCard);color:var(--ui-txPrimary);flex:1;font-family:inherit;font-size:17px}.search-input:focus{border-color:var(--ui-acPrimary);outline:none}.search-section{margin-top:var(--ui-space-lg)}.search-section-title{margin:0 0 var(--ui-space-sm);color:var(--ui-txDim);text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:700}.search-row{justify-content:space-between;align-items:center;gap:var(--ui-space-md);width:100%;padding:14px var(--ui-space-lg);margin-bottom:var(--ui-space-sm);border-radius:var(--ui-radius-button);background:var(--ui-surfCard);color:var(--ui-txPrimary);text-align:left;box-shadow:var(--ui-shadow-standard);border:none;font-family:inherit;font-size:16px;display:flex}.search-row-name{flex-direction:column;gap:2px;display:flex}.search-row-tag{color:var(--ui-acOkText);font-size:12px;font-style:normal}.search-row-eta{color:var(--ui-txMuted);white-space:nowrap;font-weight:700}.search-missed{text-align:center;color:var(--ui-txMuted);padding:var(--ui-space-xl) 0}.search-missed-ok{color:var(--ui-acOkText);font-weight:600}.anchor-toast{top:calc(env(safe-area-inset-top) + 64px);z-index:15;background:var(--ui-txPrimary);color:var(--ui-surfCard);text-align:center;box-shadow:var(--ui-shadow-big);animation:toast-in var(--ui-motion-calm) var(--ui-ease);pointer-events:none;border-radius:14px;padding:10px 16px;position:absolute;left:50%;translate:-50%}.anchor-toast strong{font-size:14px;font-weight:700;display:block}.anchor-toast span{opacity:.7;font-size:12px;display:block}@keyframes toast-in{0%{opacity:0;translate:-50% -12px}}.offline-badge{top:calc(env(safe-area-inset-top) + 56px);left:var(--ui-space-lg);z-index:9;border-radius:var(--ui-radius-pill);background:var(--ui-surfCard);color:var(--ui-txMuted);box-shadow:var(--ui-shadow-standard);pointer-events:none;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:600;display:flex;position:absolute}.offline-badge:before{content:"";background:var(--ui-acOk);border-radius:50%;width:6px;height:6px}.pos-badge{margin-top:var(--ui-space-xs);border-radius:var(--ui-radius-pill);letter-spacing:.3px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.pos-gps{background:var(--ui-tintAccent);color:var(--ui-acPrimary)}.pos-anchor{background:var(--ui-surfSunken);color:var(--ui-txPrimary)}.pos-none{background:var(--ui-surfSunken);color:var(--ui-txMuted)}.progress{margin-top:var(--ui-space-md);background:var(--ui-progressTrack);border-radius:3px;height:6px;overflow:hidden}.progress>i{background:var(--ui-acPrimary);height:100%;transition:width .4s var(--ui-ease);border-radius:3px;display:block}.stepper-label{margin:var(--ui-space-md) 0 0;color:var(--ui-txMuted);font-size:15px}.arrived-head{justify-items:center;gap:var(--ui-space-sm);padding-top:var(--ui-space-sm);display:grid}.arrived-check{background:var(--ui-acOk);color:#fff;border-radius:50%;place-items:center;width:74px;height:74px;font-size:34px;font-weight:800;animation:2.2s ease-in-out infinite pin-breathe;display:grid;position:relative}.arrived-check i{width:7px;height:7px;animation:confetti .9s var(--ui-ease) forwards;border-radius:2px;position:absolute}.arrived-check i:first-child{background:var(--ui-acPrimary);--dx:-46px;--dy:-34px}.arrived-check i:nth-child(2){--dx:44px;--dy:-40px;background:#ffb020;animation-delay:60ms}.arrived-check i:nth-child(3){background:var(--ui-acOk);--dx:-38px;--dy:30px;animation-delay:.12s}.arrived-check i:nth-child(4){background:var(--ui-acWarn);--dx:48px;--dy:26px;animation-delay:.18s}@keyframes confetti{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(140deg)}}.arrived-title{text-align:center;margin:0;font-size:26px;font-weight:800}.arrived-sub{color:var(--ui-txMuted);margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){.you-gps .you-pulse,.route-target-pin,.arrived-check{animation:none}.arrived-check i{display:none}}.em-panel{z-index:40;padding-top:calc(env(safe-area-inset-top) + var(--ui-space-xl));padding-inline:var(--ui-space-lg);padding-bottom:calc(env(safe-area-inset-bottom) + var(--ui-space-xl));-webkit-overflow-scrolling:touch;transition:background-color var(--ui-motion-calm) var(--ui-ease);flex-direction:column;display:flex;position:absolute;inset:0;overflow-y:auto}.em-header{border-radius:var(--ui-radius-card);padding:var(--ui-space-md) var(--ui-space-lg);margin-bottom:var(--ui-space-lg);text-align:center}.em-panel--evacuation{background:var(--ui-dark-bg,#0d0f14);color:#fff}.em-panel--evacuation .em-header{background:var(--ui-acOk)}.em-panel--shelter{background:var(--ui-dark-bg,#0d0f14);color:#fff}.em-panel--shelter .em-header{background:var(--ui-dark-accent,#5b82ff)}.em-panel--drill{background:var(--ui-bgTop);color:var(--ui-txPrimary);outline:4px solid var(--ui-acWarn);outline-offset:-4px}.em-panel--drill .em-header{background:var(--ui-acWarn)}.em-mode-badge{letter-spacing:1.5px;color:#fff;text-transform:uppercase;font-size:22px;font-weight:800;display:block}.em-drill-watermark{letter-spacing:4px;color:var(--ui-acWarn);opacity:.07;pointer-events:none;-webkit-user-select:none;user-select:none;text-transform:uppercase;justify-content:center;align-items:center;font-size:clamp(56px,18vw,120px);font-weight:900;display:flex;position:absolute;inset:0}.em-body{gap:var(--ui-space-lg);flex-direction:column;flex:1;display:flex}.em-headline{margin:0;font-size:24px;font-weight:800;line-height:1.25}.em-instruction{opacity:.87;margin:0;font-size:17px;font-weight:500;line-height:1.5}.em-route-btn{border-radius:var(--ui-radius-button);background:var(--ui-acOk);color:#fff;cursor:pointer;height:64px;box-shadow:var(--ui-shadow-standard);transition:opacity var(--ui-motion-calm) var(--ui-ease);border:none;align-self:stretch;font-family:inherit;font-size:18px;font-weight:700}.em-route-btn:active{opacity:.85}.em-panel--drill .em-route-btn{background:var(--ui-acWarn)}.em-panel--shelter .em-route-btn{background:var(--ui-dark-accent,#5b82ff)}.em-no-route{opacity:.7;margin:0;font-size:16px;font-style:italic}.em-signed{opacity:.6;margin:0;font-size:13px;font-weight:600}.em-disclaimer{margin-top:var(--ui-space-xl);padding:var(--ui-space-md) var(--ui-space-lg);border-radius:var(--ui-radius-card);opacity:.8;text-align:center;background:#ffffff14;font-size:13px;line-height:1.5}.em-panel--drill .em-disclaimer{background:var(--ui-surfSunken);color:var(--ui-txMuted);opacity:1}.em-map-bar{z-index:40;padding:var(--ui-space-md) var(--ui-space-lg) calc(env(safe-area-inset-bottom) + var(--ui-space-md));background:var(--ui-dark-bg,#0d0f14);justify-content:center;display:flex;position:absolute;bottom:0;left:0;right:0}.em-back-btn{height:52px;padding:0 var(--ui-space-xl);border-radius:var(--ui-radius-button);color:#fff;cursor:pointer;transition:background var(--ui-motion-calm) var(--ui-ease);background:0 0;border:1.5px solid #ffffff40;font-family:inherit;font-size:16px;font-weight:600}.em-back-btn:active{background:#ffffff1f}@media (prefers-reduced-motion:reduce){.em-panel,.em-route-btn,.em-back-btn{transition:none}}.viewer,.map,.map.maplibregl-map{position:absolute;inset:0}.map{background:var(--ui-surfMap)}.map.maplibregl-map{font-family:var(--ui-font)}.overlay{z-index:30;place-content:center;gap:var(--ui-space-lg);background:var(--ui-bgTop);text-align:center;justify-items:center;display:grid;position:absolute;inset:0}.overlay-error{max-width:28ch;color:var(--ui-txMuted);font-size:17px}.hdr{z-index:10;justify-content:space-between;align-items:center;gap:var(--ui-space-md);padding:calc(env(safe-area-inset-top) + var(--ui-space-sm)) var(--ui-space-lg) var(--ui-space-sm);background:linear-gradient(color-mix(in srgb, var(--ui-bgTop) 92%, transparent), transparent);pointer-events:none;display:flex;position:absolute;top:0;left:0;right:0}.hdr-title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:20px;font-weight:700;overflow:hidden}.hdr-actions{gap:var(--ui-space-sm);flex-shrink:0;display:flex}.lang-btn{pointer-events:auto;min-width:var(--ui-size-tapMin);border:1.5px solid var(--ui-bdStrong);border-radius:var(--ui-radius-pill);background:var(--ui-surfCard);height:40px;color:var(--ui-txPrimary);letter-spacing:.4px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.chips{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + var(--ui-space-lg));z-index:10;gap:var(--ui-space-sm);padding:0 var(--ui-space-lg);pointer-events:none;flex-wrap:wrap;justify-content:center;display:flex;position:absolute}.chip{pointer-events:auto;height:48px;padding:0 var(--ui-space-xl);border:1.5px solid var(--ui-bdStrong);border-radius:var(--ui-radius-pill);background:var(--ui-surfCard);color:var(--ui-txPrimary);box-shadow:var(--ui-shadow-standard);font-family:inherit;font-size:15px;font-weight:600}.chip-on{background:var(--ui-txPrimary);border-color:var(--ui-txPrimary);color:var(--ui-surfCard)}.sheet{left:var(--ui-space-sm);right:var(--ui-space-sm);bottom:calc(env(safe-area-inset-bottom) + var(--ui-space-sm));z-index:20;padding:var(--ui-space-lg);border-radius:var(--ui-radius-sheet);background:var(--ui-surfCard);box-shadow:var(--ui-shadow-sheet);animation:sheet-in var(--ui-motion-calm) var(--ui-ease);position:absolute}.sheet:before{content:"";background:#00000024;border-radius:2px;width:40px;height:4px;position:absolute;top:8px;left:50%;translate:-50%}@keyframes sheet-in{0%{opacity:0;translate:0 24px}}.sheet-head{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-md);display:flex}.sheet-title{margin:0;font-size:19px;font-weight:700}.sheet-sub{color:var(--ui-txMuted);margin:2px 0 0;font-size:14px}.sheet-phone{margin-top:var(--ui-space-sm);color:var(--ui-acPrimary);font-weight:600;text-decoration:none;display:inline-block}.sheet-eta{margin:var(--ui-space-md) 0 0;font-size:17px;font-weight:600}.eta-big{margin:var(--ui-space-md) 0 0;font-size:32px;font-weight:800;line-height:1.1}.eta-sub{color:var(--ui-txDim);margin:2px 0 0;font-size:13.5px;font-weight:500}.sheet-warn{color:var(--ui-acWarn)}.info-chips{gap:var(--ui-space-sm);margin-top:var(--ui-space-md);flex-wrap:wrap;display:flex}.info-chip{border-radius:var(--ui-radius-pill);background:var(--ui-surfSunken);color:var(--ui-txMuted);padding:6px 12px;font-size:13px;font-weight:600}.info-chip-ok{background:var(--ui-tintOk);color:var(--ui-acOkText)}.icon-btn{border-radius:var(--ui-radius-pill);background:var(--ui-surfSunken);width:44px;height:44px;color:var(--ui-txMuted);border:none;flex-shrink:0;font-family:inherit;font-size:18px}.btn-primary,.btn-secondary{width:100%;min-height:var(--ui-size-tapLarge);margin-top:var(--ui-space-lg);border-radius:var(--ui-radius-button);border:none;font-family:inherit;font-size:18px;font-weight:700}.btn-primary{background:var(--ui-acPrimary);color:var(--ui-txOnAccent);box-shadow:var(--ui-shadow-glow)}.btn-primary:disabled{background:var(--ui-surfSunken);color:var(--ui-txDim);box-shadow:none}.btn-secondary{background:var(--ui-surfSunken);color:var(--ui-txPrimary)}.btn-quiet{width:100%;min-height:52px;margin-top:var(--ui-space-sm);border-radius:var(--ui-radius-button);color:var(--ui-txMuted);background:0 0;border:none;font-family:inherit;font-size:15px;font-weight:600}.btn-go{font-size:19px}.btn-row{gap:var(--ui-space-md);display:flex}.btn-row>button{flex:1}.conn-row{gap:var(--ui-space-sm);margin-top:var(--ui-space-md);display:flex}.conn-btn{border:1.5px solid var(--ui-bdHair);background:var(--ui-surfCard);color:var(--ui-txPrimary);border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;font-family:inherit;display:flex}.conn-on{border-color:var(--ui-acPrimary);background:var(--ui-tintAccent)}.conn-label{font-size:14px;font-weight:700}.conn-note{color:var(--ui-txMuted);font-size:11px}.car-bar{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 78px);z-index:11;gap:var(--ui-space-sm);padding:0 var(--ui-space-lg);justify-content:center;align-items:center;display:flex;position:absolute}.car-bar-col{flex-direction:column}.car-return,.car-save{height:48px;padding:0 var(--ui-space-xl);border-radius:var(--ui-radius-pill);background:var(--ui-acPrimary);color:var(--ui-txOnAccent);box-shadow:0 3px 12px color-mix(in srgb, var(--ui-acPrimary) 35%, transparent);border:none;font-family:inherit;font-size:15px;font-weight:700}.car-save{background:var(--ui-surfCard);color:var(--ui-txPrimary);border:1.5px solid var(--ui-bdStrong);box-shadow:var(--ui-shadow-standard)}.car-forget{border-radius:var(--ui-radius-pill);background:var(--ui-surfCard);width:40px;height:40px;color:var(--ui-txMuted);box-shadow:var(--ui-shadow-standard);border:none;font-size:15px}.car-hint{background:var(--ui-surfCard);max-width:32ch;color:var(--ui-txMuted);text-align:center;box-shadow:var(--ui-shadow-standard);border-radius:14px;margin:0;padding:8px 12px;font-size:13px}.map .maplibregl-ctrl-top-right{top:calc(env(safe-area-inset-top) + 48px)}.map .maplibregl-ctrl-group button{width:44px;height:44px}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}
