:root{color-scheme:dark;--bg:#07101e;--panel:#101c2c;--panel2:#111f30;--edge:#223247;--muted:#8195ae;--muted2:#5a728d;--text:#eaf5ff;--cyan:#42e7ff;--cyan2:#14a8c4;--green:#81ffd6;--orange:#ffba7b}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;background:radial-gradient(circle at 60% -10%,#173451 0,transparent 43%),var(--bg);color:var(--text);font-size:14px}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.shell{max-width:1920px;margin:auto;padding:0 30px}.topbar{height:83px;border-bottom:1px solid #243348;display:flex;justify-content:space-between;align-items:center}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none}.brand-symbol{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#193c56,#103044);font-size:26px;font-weight:1000;letter-spacing:-4px;color:#bfe8ff;padding-right:4px}.brand-dot{color:var(--cyan)}.brand-name{font-size:21px;font-weight:800;letter-spacing:-.8px}.brand-name small{display:block;font-size:8px;letter-spacing:2.7px;color:#6e879e;font-weight:800;margin-top:3px}.top-right{display:flex;align-items:center;gap:16px}.live-indicator{white-space:nowrap;font-size:10px;letter-spacing:1.3px;color:#a5f1ce;background:#123328;border:1px solid #1c5c48;border-radius:30px;padding:9px 12px;font-weight:800}.live-indicator i{display:inline-block;background:#65e3ab;width:6px;height:6px;border-radius:50%;margin-right:7px;box-shadow:0 0 8px #6ef5bd}.version{color:#718ba5;border-left:1px solid #274057;padding-left:15px;font-size:11px;letter-spacing:.6px}.version b{color:#a5d9ee}.workspace{display:grid;grid-template-columns:390px minmax(0,1fr);gap:25px;padding-top:24px}.sidebar{background:linear-gradient(155deg,#122136,#0c192a);border:1px solid #25384b;border-radius:20px;padding:26px;box-shadow:0 14px 40px #01081560;align-self:start}.location-label{display:flex;align-items:flex-start;gap:13px;border-bottom:1px solid #24364b;padding:2px 0 22px}.marker-icon{display:flex;align-items:center;justify-content:center;width:40px;height:43px;border:1px solid #2c5a6c;border-radius:13px;background:#183848;color:var(--cyan);font-size:29px}.eyebrow,.map-eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#6b9cb4}.location-name{font-size:17px;font-weight:800;margin-top:5px}.location-sub{display:block;color:#819bb2;font-size:12px;margin-top:3px}.dot-sep{display:inline-block;background:#43627a;width:3px;height:3px;border-radius:50%;vertical-align:middle;margin:0 6px}.headline{padding:27px 0 20px}.headline h1{font-size:30px;letter-spacing:-1.2px;line-height:1.12;margin:0 0 11px;font-weight:820}.headline h1 em{font-style:normal;color:var(--cyan)}.headline p{font-size:12px;color:#9aacbf;line-height:1.7;margin:0}.route-form{display:flex;gap:16px}.side-stripe{display:flex;align-items:center;flex-direction:column;padding-top:41px;min-width:12px}.side-stripe>div{width:2px;height:88px;background:repeating-linear-gradient(to bottom,#39697c 0 5px,transparent 5px 11px)}.start-ball{height:10px;width:10px;background:var(--green);border:2px solid #d3fff1;border-radius:50%;box-shadow:0 0 12px #44ffd3}.end-ball{height:12px;width:12px;border:3px solid var(--cyan);border-radius:50%;box-shadow:0 0 10px #43d5ff}.route-controls{flex:1;min-width:0;position:relative}.field-wrap{position:relative;margin-bottom:21px}.field-wrap label{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;color:#9cb7ce;letter-spacing:1.1px;margin-bottom:9px}.sub-label{font-size:9px;letter-spacing:0;font-weight:500;color:#6e859c}.search-wrap{height:49px;display:flex;align-items:center;background:#081524;border:1px solid #37516a;border-radius:10px;padding:0 11px;transition:border-color .15s;position:relative}.search-wrap:focus-within{border-color:#49e5fa;box-shadow:0 0 0 3px #22bad21a}.search-wrap.destination-search{border-color:#2d6a80}.search-glyph{font-size:23px;color:#7bdbeb;margin-right:9px}.search-wrap input{background:none;border:0;outline:0;color:#eaf9ff;font-size:13px;min-width:0;width:100%;padding:12px 0}.search-wrap input::placeholder{color:#627d95}.clear-picker{border:0;background:transparent;color:#7792a6;font-size:20px;line-height:1;display:none}.clear-picker.visible{display:block}.picker-results{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;display:none;max-height:286px;overflow-y:auto;border:1px solid #40647d;border-radius:12px;background:#102439;box-shadow:0 16px 28px #020813bd}.picker-results.open{display:block}.pick-row{display:flex;align-items:center;gap:11px;padding:10px 12px;width:100%;text-align:left;color:#deefff;background:none;border:0;border-bottom:1px solid #253b4e}.pick-row:last-child{border-bottom:0}.pick-row:hover,.pick-row:focus{outline:0;background:#1b4053}.pick-code{display:inline-flex;justify-content:center;background:#24485c;min-width:51px;border-radius:6px;color:#8be3ed;font-size:10px;font-weight:900;padding:6px 5px}.pick-name{font-size:12px;font-weight:650;line-height:1.4}.pick-name small{display:block;color:#94a8ba;font-size:10px;font-weight:400;margin-top:2px}.pick-row.unplaced{opacity:.53}.pick-noresults{padding:16px;color:#91a6b9;font-size:12px}.swap-button{position:absolute;right:4px;top:92px;z-index:2;width:27px;height:27px;border:1px solid #2d536e;background:#193048;border-radius:7px;color:#99eeff}.swap-button:hover{background:#2e4e66}.section-top{display:flex;justify-content:space-between;align-items:center;color:#9bb1c6;font-size:10px;font-weight:800;letter-spacing:1.1px;margin-bottom:12px}.section-top .fine{color:#536d85}.quick-section{margin-top:5px}.quick-picks{display:flex;gap:7px;flex-wrap:wrap}.quick-pick{border:1px solid #32465c;color:#c4d9e9;background:#15273a;border-radius:20px;font-size:11px;padding:8px 11px;transition:.15s}.quick-pick:hover{color:var(--cyan);border-color:#3fabc1}.action-row{display:flex;gap:9px;margin:22px 0 16px}.primary-btn{height:49px;flex:1;border:0;border-radius:11px;background:linear-gradient(105deg,#55e3f3,#44acd9);color:#032032;font-size:12px;font-weight:900;letter-spacing:1px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;box-shadow:0 9px 22px #0c8eae24}.primary-btn:hover:not(:disabled){filter:brightness(1.07)}.primary-btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.btn-arrow{font-size:21px}.icon-btn{width:49px;border:1px solid #345267;border-radius:11px;color:#a8c0d4;background:#172b40;font-size:24px}.summary{background:linear-gradient(145deg,#133d4a,#112c3b);border:1px solid #2d7583;border-radius:12px;padding:15px 14px;margin:13px 0}.summary-caption{color:#7ae6c1;font-size:10px;font-weight:900;letter-spacing:1.1px;display:flex;align-items:center;gap:8px}.summary-dot{background:#5df0c8;width:7px;height:7px;border-radius:50%;box-shadow:0 0 10px #5df0c8}.summary-small{color:#7fb3c4;font-size:8px;margin-left:auto}.route-pair{color:#f1fbff;font-size:13px;margin-top:12px;font-weight:750;line-height:1.5}.steps{color:#a8d9e2;font-size:11px;margin-top:8px;line-height:1.55}.summary-actions{display:flex;gap:15px;margin-top:12px;border-top:1px solid #315964;padding-top:10px}.text-button{border:0;background:none;padding:2px 0;color:#90e8ff;font-size:11px}.text-button:hover{text-decoration:underline}.notice{display:flex;gap:10px;background:#151c2a;border:1px solid #29384b;border-radius:10px;padding:12px 11px;color:#8a9eb2;font-size:10.5px;line-height:1.65}.notice p{margin:0}.notice strong{color:#bad1e4}.notice-icon{font-size:17px;color:#7dacbd}.source-line{margin-top:15px;font-size:10px;color:#607992}.source-line a{color:#89c1da;text-decoration:none}.source-line a:hover{text-decoration:underline}.map-column{min-width:0;display:flex;flex-direction:column}.map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 16px}.map-title{display:flex;gap:11px;align-items:center}.map-title h2{font-size:26px;letter-spacing:-.9px;margin:4px 0 0}.map-floor{font-weight:900;font-size:11px;color:#8ddfff;border:1px solid #246984;background:#163146;border-radius:5px;padding:6px;margin-top:4px}.map-toolbar{display:flex;align-items:center;gap:6px;padding:4px;background:#0b1828;border:1px solid #25384b;border-radius:10px}.toolbtn{border:0;border-radius:7px;background:none;color:#879bb0;padding:11px 12px;font-weight:800;font-size:10px;letter-spacing:.45px;white-space:nowrap}.toolbtn span{font-size:15px;vertical-align:middle;margin-right:5px}.toolbtn.selected{background:#1a4054;color:#9cefff;box-shadow:inset 0 0 0 1px #30627a}.map-stage{position:relative;border:1px solid #365371;border-radius:16px;overflow:hidden;background:#bac5ce;box-shadow:0 18px 60px #01061280;min-height:530px;display:flex;align-items:center;justify-content:center}.map-scroll{width:100%;overflow:auto;touch-action:pan-x pan-y}.map-scroll svg{display:block;width:100%;height:auto;min-width:650px;max-height:76vh;object-fit:contain}#routeLayer{pointer-events:none}.debug-graph{pointer-events:none}.map-top-label{position:absolute;z-index:5;top:12px;left:12px;border-radius:7px;color:#d7f8ff;background:#081e32ed;padding:9px 13px;font-size:9px;font-weight:900;letter-spacing:1.1px;pointer-events:none}.map-top-label span{color:#74a9c3}.map-hint{position:absolute;z-index:4;bottom:15px;left:15px;border-radius:7px;background:#0d263be9;color:#d8edfa;border:1px solid #52768b;padding:9px 13px;font-size:11px;pointer-events:none}.map-scale-note{position:absolute;z-index:4;top:12px;right:12px;background:#071c2ccc;color:#b0d9e8;border-radius:6px;padding:8px 10px;font-size:9px;letter-spacing:.5px;pointer-events:none}.map-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:14px 0}.legend,.map-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:7px;font-size:10px;color:#94aabf}.legend i{display:inline-block}.legend-start{background:var(--green);border:2px solid white;border-radius:50%;width:12px;height:12px}.legend-end{background:#ff795f;border:2px solid white;border-radius:50%;width:12px;height:12px}.legend-route{background:#42edff;border-radius:8px;width:24px;height:4px;box-shadow:0 0 10px #38eafa}.mini-btn{font-size:10px;color:#9eb5c7;background:#112237;border:1px solid #2d455f;padding:9px 10px;border-radius:8px;white-space:nowrap}.mini-btn:hover{border-color:#62b0cc}.mini-btn.active{color:#79f0ff;border-color:#2e6f85}.map-foot{border-top:1px solid #28394e;padding:15px 2px;display:flex;justify-content:space-between;align-items:center;color:#758fa6;font-size:10px;gap:15px}.map-foot #statusMsg{color:#b5d3e0;text-align:right}.shell>footer{display:flex;justify-content:space-between;color:#48657f;padding:22px 0;font-size:10px;letter-spacing:.8px;gap:12px}.route-glow{stroke:#26ddff;stroke-width:25;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.55;filter:url(#pathGlow)}.route-base{stroke:#074659;stroke-width:10;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.route-core{stroke:#3bf1ff;stroke-width:6;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14 7;animation:routeScroll 1.65s linear infinite}.route-core.is-static{animation:none}.route-head{fill:#c1faff;stroke:#09bcd6;stroke-width:2}.map-pin{stroke:#fff;stroke-width:4}.map-pin-ring{fill:none;stroke-width:4;opacity:.9}.map-pin-start{fill:#1fe6ac}.map-pin-end{fill:#ff816a}.map-pin-text{fill:#fff;stroke:#132337;stroke-width:4;paint-order:stroke fill;font-size:20px;font-weight:900}.route-arrow{fill:#d3fcff;stroke:#088ca5;stroke-width:1.2;filter:drop-shadow(0 0 5px #33efff)}@keyframes routeScroll{to{stroke-dashoffset:-42}}.camera-pane{position:absolute;z-index:10;inset:0;background:#07101b;overflow:hidden}.camera-pane[hidden]{display:none}.camera-pane video{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;transform:none}.camera-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#06101ba8 0%,transparent 33%,transparent 45%,#04121de8 100%)}.camera-chip{position:absolute;top:24px;left:23px;padding:9px 13px;color:#c8fcff;background:#092c41b8;border:1px solid #4592af;border-radius:8px;font-weight:900;font-size:11px;letter-spacing:1.2px}.camera-live{font-weight:700;color:#8edbd6;margin-left:8px;font-size:9px}.camera-reticle{position:absolute;width:min(420px,65%);height:63%;top:12%;left:50%;transform:translateX(-50%);pointer-events:none}.corner{position:absolute;width:26px;height:26px;border:2px solid #2ce8ff;opacity:.8}.c1{top:0;left:0;border-right:none;border-bottom:none}.c2{top:0;right:0;border-left:none;border-bottom:none}.c3{bottom:0;left:0;border-right:none;border-top:none}.c4{bottom:0;right:0;border-left:none;border-top:none}.chevron-stack{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column;transform:perspective(480px) rotateX(30deg) translateY(55px);gap:0}.chevron-stack span{display:block;height:57px;line-height:62px;font-size:126px;font-weight:900;color:#6ceeff;text-shadow:0 0 5px #fff,0 0 19px #34dbff,0 9px 1px #056d94;opacity:.78;transform:scaleX(1.5);animation:camPulse 1.85s ease-in-out infinite}.chevron-stack span:nth-child(2){animation-delay:.23s}.chevron-stack span:nth-child(3){animation-delay:.46s}.chevron-stack span:nth-child(4){animation-delay:.69s}.floor-line{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);width:28%;height:13%;border:3px solid #3beaff;border-top:0;border-radius:40% 40% 50% 50%;opacity:.5;filter:drop-shadow(0 0 12px #3beaff)}@keyframes camPulse{0%,100%{opacity:.24;filter:brightness(.75);transform:scaleX(1.32) translateY(6px)}45%{opacity:1;filter:brightness(1.65);transform:scaleX(1.5) translateY(-5px)}}.camera-bottom{position:absolute;bottom:20px;left:20px;right:20px;text-align:center}.camera-guide{display:inline-block;padding:12px 20px;border:1px solid #398aa0;border-radius:10px;background:#072538db;font-size:15px;font-weight:800;color:#e1fbff}.camera-footnote{font-size:11px;color:#b3c5d0;margin:12px auto;max-width:510px;line-height:1.6}.back-btn{background:#12384e;border:1px solid #3d7993;color:#d0f5ff;padding:10px 16px;border-radius:8px;font-weight:750}.camera-error{position:absolute;top:75px;left:20px;right:20px;text-align:center;background:#412516dd;color:#f4dac8;padding:13px 15px;border-radius:8px;font-size:12px}.camera-pane:not([hidden])~.map-hint{display:none}.map-stage.expanded{position:fixed;z-index:100;inset:10px;min-height:auto}.map-stage.expanded .map-scroll svg{max-height:none}.map-stage.expanded .map-scroll{height:100%;display:flex;align-items:center}.map-stage.expanded .map-scroll svg{height:100%;width:auto;min-width:unset;margin:auto}.no-scroll{overflow:hidden}
@media(max-width:1180px){.shell{padding:0 20px}.workspace{grid-template-columns:340px minmax(0,1fr);gap:15px}.sidebar{padding:20px}.headline h1{font-size:27px}.map-stage{min-height:390px}.map-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:850px){.shell{padding:0 14px}.topbar{height:66px}.brand-name{font-size:19px}.workspace{display:flex;flex-direction:column;padding-top:13px;gap:15px}.sidebar{width:100%;padding:18px}.location-label{padding-bottom:12px}.headline{padding:14px 0}.headline h1{font-size:26px}.headline p{max-width:520px}.route-form{max-width:620px}.side-stripe>div{height:84px}.map-column{order:2}.map-head{margin:4px 1px 12px}.map-title h2{font-size:21px}.map-toolbar{gap:0}.toolbtn{padding:9px;font-size:9px}.map-stage{min-height:330px}.map-scroll{overflow:auto}.map-scroll svg{min-width:650px;max-height:none}.map-hint{font-size:9px;bottom:9px;left:9px;padding:7px}.map-scale-note{display:none}.map-top-label{top:8px;left:8px;font-size:8px}.map-bottom{margin:11px 0}.map-foot{flex-direction:column;align-items:flex-start;gap:5px}.map-foot #statusMsg{text-align:left}.shell>footer{font-size:8px;flex-wrap:wrap}.quick-section{margin-top:0}.source-line{margin-top:11px}}
@media(prefers-reduced-motion:reduce){.route-core,.chevron-stack span{animation:none}}

@media(max-width:430px){.top-right{gap:8px}.live-indicator{font-size:9px;padding:8px}.version{font-size:9px;padding-left:8px}.map-title h2{font-size:19px}.map-head{gap:7px}.map-eyebrow{font-size:9px}.toolbtn{padding:8px 6px}.toolbtn span{font-size:13px;margin-right:1px}}

/* AEON GF v0.3.1 Pulse+Turn: full tenant directory and manual survey support. */
.directory-panel{border:1px solid #2c4962;background:#0d2338;border-radius:14px;margin:9px 0 17px;overflow:visible;color:#d9f5ff}
.directory-panel summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 12px;list-style:none;cursor:pointer;font-size:10px;font-weight:900;letter-spacing:.8px;color:#a8eafd}
.directory-panel summary::-webkit-details-marker{display:none}
.directory-panel summary::before{content:'▸';font-size:13px;color:#54f0ef}
.directory-panel[open] summary::before{content:'▾'}
.directory-panel summary #directoryCount{margin-left:auto;font-size:10px;color:#8dabbf;white-space:nowrap;letter-spacing:0}
.directory-head{display:flex;flex-direction:column;gap:8px;padding:2px 10px 10px}
.directory-head input,.directory-head select{min-height:39px;min-width:0;width:100%;background:#162c40;border:1px solid #38617b;border-radius:9px;color:#e8f9ff;font-family:inherit;padding:0 10px;font-size:13px}
.directory-head input::placeholder{color:#8bafc7}
.directory-filters{display:flex;gap:5px;flex-wrap:wrap;padding:0 10px 10px}
.dir-filter{border:1px solid #31566e;border-radius:7px;background:#183146;color:#a7cada;font-size:10px;font-weight:750;padding:7px 8px;cursor:pointer}
.dir-filter.active{background:#1a6074;border-color:#61eaff;color:#e8ffff}
.directory-list{max-height:310px;overflow:auto;overscroll-behavior:contain;border-top:1px solid #295067;padding:4px}
.directory-list-count{color:#8ab4c7;font-size:10px;padding:7px 9px 8px}
.directory-item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:none;color:#ebf9ff;border:0;border-top:1px solid #294254;text-align:left;width:100%;padding:10px 9px;cursor:pointer}
.directory-item:hover,.directory-item:focus-visible{background:#204459;outline:1px solid #57d8e7}
.directory-item.needs-pin .dir-meta{color:#ffbca0}
.dir-store{font-size:12px;font-weight:760}
.dir-meta{font-size:10px;color:#8bd8c6;letter-spacing:.3px}
.dir-empty{padding:12px;font-size:12px}
.pin-setup{padding:11px 13px;margin:5px 0 12px;border:1px solid #956e42;border-radius:10px;background:#332c21;color:#f5deba;font-size:11px;line-height:1.5}
.pin-setup[hidden]{display:none!important}
.pin-button,.pin-clear{display:inline-block;margin:9px 7px 0 0;padding:9px 10px;background:#c58336;color:#1a1008;border:0;border-radius:7px;font-weight:900;cursor:pointer;font-size:11px}
.pin-clear{background:transparent;border:1px solid #cc8a77;color:#ffcabc}
.pin-placement #mapClickSurface{cursor:crosshair!important}
.turn-preview{margin-top:13px;padding-top:9px;border-top:1px solid #316879}
.turn-list-title{font-size:10px;color:#a9ecf5;font-weight:900;letter-spacing:.4px}
.turn-list{max-height:145px;overflow-y:auto;margin:7px 0 0;padding-left:20px;color:#aed5e0;font-size:11px;line-height:1.7}
.turn-list li.active{color:#fff1aa;font-weight:850}
/* Phone rotation is displayed as screen-space direction. It is NOT a 6-DoF AR anchor. */
.camera-pane:not([hidden]){isolation:isolate}
.camera-orientation{position:absolute;left:16px;right:16px;top:69px;text-align:center;z-index:5;pointer-events:auto}
.sensor-state{display:inline-block;border:1px solid #4b829b;background:#061e30d9;color:#a1dfec;font-size:10px;padding:7px 11px;border-radius:20px}
.orientation-cue{display:block;background:#06283de8;border:1px solid #2b9db1;border-radius:11px;padding:11px 13px;font-size:16px;line-height:1.45;font-weight:900;color:#e1ffff;max-width:450px;margin:9px auto 4px;text-shadow:0 2px 6px #001923}
.camera-step{display:inline-block;background:#112c3fd6;color:#fff1a1;font-size:10px;font-weight:800;border-radius:7px;padding:5px 8px;letter-spacing:1px}
.sensor-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:8px}
.sensor-buttons button,.camera-checkpoint button{border:1px solid #66a6b7;border-radius:9px;background:#093750e8;color:#e3ffff;padding:9px 10px;font-size:11px;font-weight:850;cursor:pointer}
.sensor-buttons button:hover,.camera-checkpoint button:hover{background:#155373}
.sensor-buttons button:disabled,.camera-checkpoint button:disabled{opacity:.45;cursor:not-allowed}
.direction-rotator{position:absolute;left:50%;top:47%;width:220px;height:220px;display:flex;align-items:center;justify-content:center;transform:translateX(-50%) rotate(0deg);transform-origin:50% 50%;transition:transform 90ms linear;filter:drop-shadow(0 0 13px #00dfff);will-change:transform}
.direction-arrow{font-family:system-ui,sans-serif;font-size:210px;font-weight:900;line-height:1;color:#75f6ff;text-shadow:0 0 10px #fff,0 0 28px #25dfff;transform:translateY(-5px)}
.direction-glow{position:absolute;inset:10%;border-radius:50%;background:radial-gradient(circle,#22d8fc25,#1cd2ff06 60%,transparent)}
.direction-shadow{position:absolute;width:110px;height:30px;border-radius:50%;background:#28e6f255;filter:blur(18px);top:100%}
.camera-checkpoint{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:8px auto}
.camera-checkpoint button{background:#163e52;border-color:#448097;padding:9px 12px}
.camera-bottom{z-index:8;bottom:10px;left:10px;right:10px}
.camera-guide{padding:9px 11px;font-size:12px;line-height:1.4}
.camera-footnote{margin:7px auto 8px;font-size:10px;line-height:1.4}
.camera-reticle{height:50%;top:24%}
.camera-reticle .floor-line{opacity:.55}
.map-stage:has(.camera-pane:not([hidden])){min-height:660px}
@media(max-width:850px){
 .map-stage:has(.camera-pane:not([hidden])){min-height:740px}
 .camera-orientation{top:55px;left:8px;right:8px}
 .orientation-cue{font-size:14px}
 .camera-reticle{top:26%;height:42%}
 .direction-rotator{top:38%;width:155px;height:155px}
 .direction-arrow{font-size:160px}
 .camera-bottom{bottom:7px}
 .camera-footnote{font-size:9px}
 .camera-guide{font-size:11px}
}
@media(max-width:400px){.camera-orientation{top:45px}.orientation-cue{font-size:12px;padding:8px 10px}.sensor-buttons button{font-size:10px}.map-stage:has(.camera-pane:not([hidden])){min-height:730px}}
.pin-button[hidden],.pin-clear[hidden]{display:none!important}
@keyframes directionBreathe{0%,100%{opacity:.76;filter:brightness(.8)}50%{opacity:1;filter:brightness(1.6)}}
.direction-arrow{animation:directionBreathe 1.45s ease-in-out infinite}

.mall-info{font-size:11px;margin:13px 0;color:#9dbecc;border-top:1px solid #24485e;padding-top:8px;line-height:1.6}.mall-info summary{cursor:pointer;color:#b8e3e6;font-weight:850;margin:4px 0 9px}.mall-info div{margin:4px 0}

/* MallNav AEON GF v0.3.2 — usability patch */
.picker-results{max-height:min(410px,55vh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4f839b #11283d}
.pick-count{position:sticky;top:0;z-index:2;background:#17364b;border-bottom:1px solid #426179;color:#a5ecf6;font-size:11px;font-weight:800;letter-spacing:.15px;padding:10px 12px;box-shadow:0 3px 8px #030e19aa}
.pick-row{min-height:48px}.pick-row.unplaced{opacity:1}.pick-row.unplaced .pick-code{border:1px solid #946e53;background:#422f28;color:#ffc6a6}
.close-expand{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:100;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:95px;min-height:48px;padding:9px 14px;border:1px solid #8adfff;border-radius:13px;background:#061d31f5;color:#eaffff;box-shadow:0 3px 16px #000b,0 0 0 1px #16384e;font-size:13px;font-weight:900;cursor:pointer}
.close-expand[hidden]{display:none!important}.close-expand:hover,.close-expand:focus-visible{background:#124663;outline:2px solid #b0faff;outline-offset:2px}
.map-stage.expanded{inset:0;border-radius:0;z-index:250;min-height:0;min-width:0;overflow:hidden}
.map-stage.expanded .map-top-label{top:max(15px,env(safe-area-inset-top));left:max(13px,env(safe-area-inset-left));max-width:calc(100% - 130px)}
.map-stage.expanded .map-scale-note{top:72px}
.direction-rotator{isolation:isolate}
.direction-chevrons{width:82%;height:82%;overflow:visible;position:relative;z-index:1;transform:perspective(470px) rotateX(18deg);filter:drop-shadow(0 0 9px #3af5ff)}
.direction-chevrons .nav-chevron{fill:none;stroke:url(#navChevronGrad);stroke-width:12;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 5px 3px #0074a9);animation:navChevronPulse 1.45s ease-in-out infinite;transform-origin:60px 80px}
.direction-chevrons .nav-chevron-b{animation-delay:.20s}
.direction-chevrons .nav-chevron-c{animation-delay:.40s}
@keyframes navChevronPulse{0%,100%{opacity:.58;transform:translateY(3px)}45%{opacity:1;transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.direction-chevrons .nav-chevron{animation:none;opacity:1}}
@media(max-width:850px){.picker-results{max-height:min(430px,58vh)}.map-stage.expanded .map-scroll{max-height:100dvh}.close-expand{min-height:52px}}

.map-stage{scroll-margin-top:8px}
