:root{--app-viewport-height: calc(100vh / var(--page-scale, .75));--app-viewport-width: calc(100vw / var(--page-scale, .75));font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Arial,sans-serif;color:#000;background:#fff;font-synthesis:none;text-rendering:optimizeLegibility;--accent: #0088ff;--accent-strong: #006fcc;--paper: #ffffff;--muted: #6e7680;--line: rgba(0, 0, 0, .09);--glass-fill: rgba(255, 255, 255, .01);--glass-fill-strong: rgba(255, 255, 255, .0225);--glass-line: rgba(255, 255, 255, .3);--glass-text: #000000;--glass-shadow: 0 8px 24px rgba(18, 35, 52, .07), inset 0 1px 0 rgba(255, 255, 255, .58), inset 0 -1px 0 rgba(21, 44, 65, .035);--glass-blur: saturate(165%) contrast(102%) blur(12px);--glass-accent-fill: rgba(0, 136, 255, .64);--glass-accent-line: rgba(255, 255, 255, .64);--glass-accent-shadow: 0 5px 15px rgba(0, 112, 218, .2), inset 0 1px 0 rgba(255,255,255,.34);--standard-fill: rgba(255, 255, 255, .03);--standard-line: rgba(255, 255, 255, .28);--standard-shadow: 0 4px 14px rgba(20, 44, 65, .03), inset 0 1px 0 rgba(255,255,255,.38);--category-shadow: 0 2px 5px rgba(18, 35, 52, .1);--category-active-shadow: 0 2px 7px rgba(0, 112, 218, .22);--sheet-material: rgba(255, 255, 255, .025);--ambient-map-image: url(/assets/campus-map-retro-hd.webp);color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{width:100%;height:100%;min-height:100%;margin:0;background:var(--apple-app-background, #ffffff)}body{overflow:hidden}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}svg{width:20px;height:20px}.glass-filter-defs{position:absolute;width:0;height:0;overflow:hidden}.app-shell{--map-top: max(12px, env(safe-area-inset-top));--map-size: min(calc(calc(var(--app-viewport-width) * 1) - 28px), 692px);--sheet-docked-height: min(calc(var(--app-viewport-height) * .54), 460px);--sheet-collapsed-height: max(162px, calc(136px + env(safe-area-inset-bottom)) );position:relative;width:100%;max-width:720px;height:var(--app-viewport-height);min-height:560px;margin:0 auto;overflow:clip;background:#fff}.map-layer{position:relative;width:100%;height:100%;isolation:isolate;background:var(--apple-app-background, #ffffff)}.map-ambient{position:absolute;z-index:0;top:var(--map-top);left:50%;width:var(--map-size);aspect-ratio:1;pointer-events:none;background:transparent;border-radius:30px;transform:translate(-50%) scale(1.1)}.map-ambient:before,.map-ambient:after{content:"";position:absolute;pointer-events:none;border-radius:inherit;background:var(--ambient-map-image) center / cover no-repeat;mix-blend-mode:screen}.map-ambient:before{z-index:1;inset:-2px;filter:blur(17px) saturate(225%) brightness(1.18) contrast(1.08);opacity:.52;transform:scale(1.055);-webkit-mask-image:radial-gradient(ellipse at center,#000 50%,rgba(0,0,0,.84) 73%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 50%,rgba(0,0,0,.84) 73%,transparent 100%)}.map-ambient:after{z-index:0;inset:-36px;filter:blur(52px) saturate(210%) brightness(1.14);opacity:.48;box-shadow:0 0 72px 22px #f7d37a3d,0 0 150px 46px #36a5972b;-webkit-mask-image:radial-gradient(ellipse at center,#000 40%,rgba(0,0,0,.76) 68%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 40%,rgba(0,0,0,.76) 68%,transparent 100%)}.map-card{position:relative;z-index:1;width:var(--map-size);height:auto;max-height:none;aspect-ratio:1;margin:var(--map-top) auto 0;overflow:hidden;background:#fff;border:2px solid rgba(39,73,88,.66);border-radius:26px;box-shadow:0 0 18px 6px #f8d07029,0 0 46px 12px #3aa7991a,6px 6px #0070c41c;isolation:isolate;will-change:transform;backface-visibility:hidden}.map-card.is-fullscreen{position:fixed;z-index:40;inset:0;width:100%;max-width:none;height:var(--app-viewport-height);max-height:none;aspect-ratio:auto;margin:0;border:0;border-radius:0;box-shadow:none}.map-card.is-transitioning{z-index:40}.map-card.is-transitioning .vector-map-viewport{pointer-events:none}.map-card.is-transitioning .vector-map-viewport[data-browser-engine=safari] .maplibregl-marker{will-change:auto}.map-card.is-transitioning~.explore-sheet{will-change:transform,opacity}.vector-map-viewport{position:absolute;z-index:1;inset:0;overflow:hidden;background:#fff;touch-action:none;overscroll-behavior:contain;user-select:none;-webkit-user-select:none}.campus-fallback-map{position:absolute;z-index:0;display:block;max-width:none;pointer-events:none;-webkit-user-select:none;user-select:none}.campus-fallback-map{object-fit:fill;opacity:1;filter:none;image-rendering:auto;-webkit-user-drag:none}.campus-fallback-map-blur{opacity:0;filter:blur(6px);will-change:transform,opacity}.vector-map-viewport>.maplibregl-canvas-container{position:absolute;z-index:1;inset:0}.vector-map-viewport .maplibregl-map,.vector-map-viewport .maplibregl-canvas-container,.vector-map-viewport .maplibregl-canvas{width:100%;height:100%}.vector-map-viewport .maplibregl-canvas-container,.vector-map-viewport .maplibregl-canvas{touch-action:none!important}.vector-map-viewport .maplibregl-canvas{outline:none}.vector-map-viewport .maplibregl-canvas-container.maplibregl-interactive{cursor:grab}.vector-map-viewport .maplibregl-canvas-container.maplibregl-interactive:active{cursor:grabbing}.map-hotspot{z-index:3;width:auto;min-width:32px;min-height:26px;padding:6px 9px;color:#102c3a;font-size:clamp(9px,calc(var(--app-viewport-width) * .009000000000000001),10px);font-weight:900;line-height:1.1;white-space:nowrap;background:#f6fcff4d;border:1px solid rgba(34,70,87,.36);border-radius:999px;box-shadow:0 2px 6px #0f2d3b57,0 0 0 1px #ffffff38;-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:saturate(145%) blur(8px);backdrop-filter:saturate(145%) blur(8px);text-shadow:0 1px 1px rgba(255,255,255,.44);touch-action:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}.map-hotspot:hover{z-index:5;background:var(--glass-fill-strong)}.map-hotspot.selected{z-index:6;color:#fff;background:#0088ffd6;border-color:#ffffffc2;box-shadow:0 2px 6px #005fb43d;text-shadow:none}.map-hotspot.planned{color:#274958;background:#eaf6fb47;border:1px dashed rgba(36,77,98,.54);text-shadow:0 1px 1px rgba(255,255,255,.44)}.map-hotspot.planned.selected{border-style:solid;box-shadow:0 2px 6px #005fb43d}.map-hotspot.hidden-hotspot{visibility:hidden;opacity:0!important;pointer-events:none}.map-label-marker{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none}.map-detail-label{display:block;padding:2px 4px;color:#514b3f;font-size:clamp(11px,calc(var(--app-viewport-width) * .0092),13px);font-weight:800;line-height:1.15;letter-spacing:.01em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-text-stroke:3px rgba(255,251,238,.97);paint-order:stroke fill;text-shadow:0 1px 2px rgba(255,255,255,.92),0 1px 2px rgba(42,32,20,.3)}.map-detail-label--water{color:#155f71;font-size:clamp(13px,calc(var(--app-viewport-width) * .0108),15px);font-weight:900;letter-spacing:.12em;-webkit-text-stroke-color:rgba(191,237,239,.96)}.map-detail-label--bridge{padding:3px 5px;color:#58433b;font-size:11px;font-weight:850;letter-spacing:.04em;background:#fffbefe6;border:1px solid rgba(91,69,56,.3);border-radius:6px;-webkit-text-stroke:0;text-shadow:0 1px 1px rgba(255,255,255,.9)}.map-detail-label--place{color:#5d5445;font-weight:800}.map-detail-label--junction{padding:2px 5px;color:#9d2c7c;font-size:10px;font-weight:900;letter-spacing:.02em;background:#fff8e7f0;border:1px solid rgba(157,44,124,.35);border-radius:999px;-webkit-text-stroke:0;text-shadow:0 1px 1px rgba(255,255,255,.9)}.map-detail-label--direction{color:#9d2c7c;font-weight:900;letter-spacing:.04em}.map-detail-label--direction:after{content:" →";display:inline-block;transform:rotate(var(--map-label-arrow-rotation, 0deg));transform-origin:center}:root[data-theme=dark] .map-detail-label{color:#fff1c8;-webkit-text-stroke-color:rgba(44,48,36,.82);text-shadow:0 1px 3px rgba(0,0,0,.74)}:root[data-theme=dark] .map-detail-label--water{color:#c5f1eb;-webkit-text-stroke-color:rgba(16,75,78,.88)}:root[data-theme=dark] .map-detail-label--bridge{color:#fff0d4;background:#272a23d1;border-color:#fff0d447;text-shadow:0 1px 2px #000}:root[data-theme=dark] .map-detail-label--junction{color:#ffc0eb;background:#272a23e0;border-color:#ffc0eb61;text-shadow:0 1px 2px #000}@media(forced-colors:active){.map-detail-label{color:CanvasText;-webkit-text-stroke:0;text-shadow:none}.map-detail-label--bridge,.map-detail-label--junction{color:CanvasText;background:Canvas;border:1px solid CanvasText}}.user-location-marker,.maplibregl-marker.user-location-marker{position:absolute;z-index:14;width:0;height:0;pointer-events:none}.user-location-accuracy{position:absolute;top:0;left:0;display:block;width:var(--accuracy-size);aspect-ratio:1;background:#007aff29;border:1px solid rgba(0,122,255,.5);border-radius:50%;transform:translate(-50%,-50%)}.user-location-dot{position:absolute;top:0;left:0;display:block;width:18px;height:18px;background:#08f;border:4px solid #fff;border-radius:50%;box-shadow:0 1px 5px #002d6e66;transform:translate(-50%,-50%)}.search-box{display:flex;align-items:center;gap:9px;min-height:50px;padding:0 14px;background:var(--glass-fill);border:1px solid rgba(0,0,0,.54);border-radius:16px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:border-color .18s ease,box-shadow .18s ease}.search-box:focus-within{background:var(--glass-fill-strong);border-color:#000;box-shadow:0 0 0 2px #0000001a,var(--glass-shadow)}.search-box>svg{color:#000}.search-box input{min-width:0;flex:1;color:#000;font-size:16px;background:transparent;border:0;outline:0;touch-action:manipulation}.search-box input::placeholder{color:#000;opacity:.62}.search-box button,.sheet-close{display:grid;place-items:center;width:30px;height:30px;padding:0;color:var(--glass-text);background:var(--glass-fill-strong);border:1px solid var(--glass-line);border-radius:50%;box-shadow:0 2px 7px #281f2d1f,inset 0 1px #ffffffb8;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.search-box button svg,.sheet-close svg{width:16px}.expand-map-button{position:absolute;z-index:12;top:max(14px,env(safe-area-inset-top));right:13px;display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;color:var(--glass-text);background:var(--glass-fill);border:1px solid var(--glass-line);border-radius:50%;box-shadow:var(--glass-shadow);-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.expand-map-button svg{width:16px;height:16px}.expand-map-button:active{background:var(--glass-fill-strong);transform:scale(.96)}.explore-sheet{position:absolute;z-index:30;right:0;bottom:0;left:0;height:auto;min-height:0;overflow:visible;background:var(--sheet-material);border:1px solid var(--standard-line);border-bottom:0;border-radius:26px 26px 0 0;box-shadow:0 -8px 28px #102b431a,inset 0 1px #ffffff7a;isolation:isolate;-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);transition:top .24s cubic-bezier(.22,.8,.2,1),transform .24s cubic-bezier(.22,.8,.2,1);will-change:top,transform;backface-visibility:hidden;contain:layout style}.explore-sheet.is-dragging{border-bottom:1px solid var(--standard-line);border-radius:26px;box-shadow:0 10px 34px #102b4326,inset 0 1px #ffffff94;transition:none}.sheet-touch-edge{position:absolute;z-index:3;top:0;bottom:0;width:30px;touch-action:none;cursor:ns-resize}.sheet-touch-edge-left{left:0}.sheet-touch-edge-right{right:0}.sheet-pull-handle{position:relative;z-index:4;display:block;width:100%;height:38px;padding:14px 0 0;background:transparent;border:0;cursor:ns-resize;touch-action:none}.sheet-pull-handle .sheet-handle{display:block;margin:0 auto}.explore-sheet-content{position:relative;z-index:2;height:calc(100% - 38px);padding:4px 14px max(24px,env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:max(24px,env(safe-area-inset-bottom));touch-action:pan-y;-webkit-overflow-scrolling:touch}.sheet-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 12px}.sheet-title-row small,.sheet-title-row strong{display:block}.sheet-title-row small{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.06em}.sheet-title-row strong{margin-top:3px;font-size:18px}.sheet-heading{min-width:76px;flex:0 0 76px}.sheet-heading strong{white-space:nowrap}.sheet-kicker{display:flex;align-items:center;gap:7px}.version-number{color:#766d78;font-size:9px;font-weight:700;letter-spacing:0}.sheet-title-row .sheet-search-box{min-width:76px;min-height:36px;flex:1 1 auto;padding:0 8px;gap:5px;box-shadow:none}.sheet-title-row .sheet-search-box>svg{width:17px;height:17px;flex:0 0 auto}.sheet-title-row .sheet-search-box input{font-size:16px}.sheet-tools-button{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;padding:0;color:var(--apple-label, var(--glass-text));font-size:18px;font-weight:700;line-height:1;background:var(--apple-surface-secondary, var(--glass-fill));border:1px solid var(--apple-separator, var(--glass-line));border-radius:50%;box-shadow:var(--glass-shadow);-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.sheet-category-buttons{display:flex;gap:7px;margin:0 0 11px;padding:0 1px 2px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.sheet-category-buttons::-webkit-scrollbar{display:none}.sheet-category-buttons button{flex:0 0 auto;min-height:32px;padding:0 12px;color:var(--glass-text);font-size:12px;font-weight:700;white-space:nowrap;background:var(--glass-fill);border:1px solid var(--glass-line);border-radius:999px;box-shadow:var(--category-shadow);-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.sheet-category-buttons button.active{color:#fff;background:var(--glass-accent-fill);border-color:var(--glass-accent-line);box-shadow:var(--category-active-shadow)}.sheet-detail{position:relative;margin-top:4px;padding:14px;background:var(--standard-fill);border:1px solid var(--standard-line);border-radius:18px;box-shadow:var(--standard-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.sheet-detail .sheet-close{top:12px;right:18px}.sheet-detail>p{margin:11px 0 0;color:#777079;font-size:10px;line-height:1.6}.coordinate-card{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:10px 11px;color:#35485b;background:#0088ff14;border:1px solid rgba(0,136,255,.22);border-radius:12px}.coordinate-card span{color:#7a7180;font-size:9px;font-weight:700}.coordinate-card strong{color:#0072d6;font-size:11px;letter-spacing:.02em}.navigation-summary{display:flex;flex-direction:column;gap:3px;margin-top:8px;padding:9px 11px;background:#0088ff1f;border-radius:12px}.navigation-summary strong{color:#006fcf;font-size:11px}.navigation-summary small{color:#56718c;font-size:9px}.sheet-results{margin-top:2px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.explore-sheet .places-list{max-height:none;padding-bottom:max(12px,env(safe-area-inset-bottom));overflow:visible}.empty-results{margin:20px 4px;color:#777079;font-size:12px;text-align:center}.map-is-fullscreen .explore-sheet{pointer-events:none;opacity:0;transform:translateY(100%)}.sheet-handle{width:36px;height:4px;margin:0 auto 12px;background:#d7d2d8;border-radius:99px}.sheet-close{position:absolute;top:16px;right:16px}.poi-heading{display:flex;align-items:flex-start;gap:11px;padding-right:34px}.poi-heading small{color:var(--accent);font-size:9px;font-weight:700}.poi-heading h1{margin:3px 0 0;font-size:17px;line-height:1.3}.navigation-actions{display:grid;gap:8px;margin-top:14px}.route-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:43px;margin:0;padding:11px 12px;color:#fff;font-size:12px;font-weight:750;text-decoration:none;background:var(--glass-accent-fill);border:1px solid var(--glass-accent-line);border-radius:14px;box-shadow:var(--glass-accent-shadow);-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.route-button-primary{background:#0088ffc7}.route-button-app-secondary{color:var(--accent-strong);background:var(--glass-fill);border-color:#0088ff47;box-shadow:var(--glass-shadow)}.route-button-preview{color:var(--accent-strong);background:var(--glass-fill-strong);border-color:#0088ff3d;box-shadow:var(--glass-shadow)}.route-button-preview.is-active{color:#fff;background:var(--accent);border-color:#ffffffc7;box-shadow:0 5px 16px #0088ff47,inset 0 1px #ffffff61}.route-button svg{width:16px}.drawer-count{padding:9px 4px;color:#655e67;font-size:10px}.places-list{max-height:calc(calc(var(--app-viewport-height) * .78) - 105px);overflow-y:auto}.places-list>button{display:grid;grid-template-columns:1fr 18px;align-items:center;gap:10px;width:100%;margin-top:8px;padding:11px 12px;color:#000;text-align:left;background:var(--standard-fill);border:1px solid var(--standard-line);border-radius:15px;box-shadow:var(--standard-shadow);-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}.places-list>button:active,.route-button:active{transform:scale(.985)}.places-list strong,.places-list small{display:block}.places-list strong{font-size:12px;line-height:1.3}.places-list small{margin-top:3px;color:#8b858d;font-size:9px}.places-list b{color:#9b959d;font-size:20px}.status-announcement{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;border:0;clip-path:inset(50%)}.map-card.is-fullscreen .expand-map-button{top:max(14px,env(safe-area-inset-top));right:14px}@media(orientation:landscape)and (min-width:700px){.app-shell{max-width:1280px}.map-layer{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);grid-template-rows:minmax(0,1fr);gap:18px 28px;height:100%;padding:24px}.map-ambient{grid-column:1;grid-row:1;position:relative;top:auto;left:auto;width:min(100%,calc(var(--app-viewport-height) * .72),720px);align-self:center;justify-self:center;transform:scale(1.035)}.map-card{grid-column:1;grid-row:1;width:min(100%,calc(var(--app-viewport-height) * .72),720px);margin:0 auto;align-self:center}.explore-sheet{grid-column:2;grid-row:1;position:relative;top:auto!important;right:auto;bottom:auto;left:auto;height:auto;min-height:0;max-height:none;align-self:stretch;transform:none;border-radius:28px}.map-ambient{transform:scale(1.15) translateY(1%)}.sheet-pull-handle{display:none}.explore-sheet-content{height:100%;padding:18px 20px max(20px,env(safe-area-inset-bottom))}.sheet-title-row{margin-bottom:16px}.sheet-title-row strong{font-size:22px}.sheet-category-buttons button{min-height:38px;padding-inline:14px;font-size:13px}.sheet-detail{padding:18px}.places-list strong{font-size:14px}.places-list small{font-size:10px}.route-button{min-height:48px;font-size:13px}.map-card.is-fullscreen{width:100%}}@media(max-width:699px)and (max-height:680px){.app-shell{--map-size: clamp(236px, calc(var(--app-viewport-height) - 400px), calc(calc(var(--app-viewport-width) * 1) - 28px))}}@media(update:fast){.map-hotspot,.search-box,.places-list>button{transition-duration:.14s}.explore-sheet{transition-duration:.2s}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}button,select,input{color-scheme:inherit}.sheet-category-buttons button:focus-visible,.sheet-tools-button:focus-visible,.places-list>button:focus-visible,.route-button:focus-visible,.expand-map-button:focus-visible,.search-box:focus-within{outline:2px solid rgba(0,0,0,.72);outline-offset:2px}.map-hotspot:focus,.map-hotspot:focus-visible{outline:none!important}@media(hover:hover)and (pointer:fine){.map-hotspot:hover{z-index:7;background:#fff6;border-color:#22465794;box-shadow:0 2px 8px #0f2d3b57,0 0 0 2px #ffffff47,0 0 18px #3fb1a033}.places-list>button:hover{transform:translateY(-3px);background:#ffffff29;border-color:#ffffffa8;box-shadow:0 10px 22px #142c411f,0 0 18px #3fb1a029,inset 0 1px #ffffffb3}.sheet-category-buttons button:not(.active):hover,.search-box button:hover,.sheet-close:hover,.expand-map-button:hover,.sheet-tools-button:hover{transform:translateY(-2px);background:var(--glass-fill-strong);box-shadow:0 7px 16px #142c411f,0 0 14px #3fb1a024}.route-button:hover{transform:translateY(-2px);filter:brightness(1.04)}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color:#f5f5f7;background:#000;color-scheme:dark;--glass-fill: rgba(7, 12, 18, .0125);--glass-fill-strong: rgba(11, 18, 26, .0225);--glass-line: rgba(255, 255, 255, .22);--glass-text: #f5f5f7;--glass-shadow: 0 8px 24px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255,255,255,.17), inset 0 -1px 0 rgba(0,0,0,.18);--standard-fill: rgba(8, 13, 20, .025);--standard-line: rgba(255,255,255,.15);--standard-shadow: 0 4px 16px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.09);--category-shadow: 0 2px 5px rgba(0,0,0,.28);--category-active-shadow: 0 2px 7px rgba(0,96,190,.34);--sheet-material: rgba(0, 0, 0, .03);--ambient-map-image: url(/assets/campus-map-retro-dark-hd.webp)}:where(:root:not([data-theme=light])) .app-shell{background:#000}:where(:root:not([data-theme=light])) .map-card{background:#000;border-color:#ffffff6b;box-shadow:6px 6px #0088ff1c}:where(:root:not([data-theme=light])) .vector-map-viewport{background:#000}:where(:root:not([data-theme=light])) .campus-fallback-map:not(.campus-fallback-map-blur){opacity:1;filter:none}:where(:root:not([data-theme=light])) .explore-sheet{color:#f5f5f7;border-color:var(--standard-line)}:where(:root:not([data-theme=light])) .search-box{border-color:#ffffff70}:where(:root:not([data-theme=light])) .search-box>svg,:where(:root:not([data-theme=light])) .search-box input,:where(:root:not([data-theme=light])) .sheet-tools-button,:where(:root:not([data-theme=light])) .sheet-category-buttons button,:where(:root:not([data-theme=light])) .places-list>button{color:#f5f5f7}:where(:root:not([data-theme=light])) .search-box input::placeholder{color:#f5f5f7;opacity:.62}:where(:root:not([data-theme=light])) .map-hotspot{color:#eef9ff;background:#0a1c264d;border-color:#b4e0f16b;box-shadow:0 2px 7px #000000b3,0 0 0 1px #0003;text-shadow:0 1px 1px rgba(0,0,0,.58)}:where(:root:not([data-theme=light])) .map-hotspot.planned{color:#d3e9f2;background:#0d232e47;border-color:#96cde27a}:where(:root:not([data-theme=light])) .sheet-detail>p,:where(:root:not([data-theme=light])) .drawer-count,:where(:root:not([data-theme=light])) .places-list small,:where(:root:not([data-theme=light])) .coordinate-card span,:where(:root:not([data-theme=light])) .navigation-summary small{color:#c4c9cf}:where(:root:not([data-theme=light])) .coordinate-card strong,:where(:root:not([data-theme=light])) .navigation-summary strong{color:#5fb3ff}:where(:root:not([data-theme=light])) .coordinate-card,:where(:root:not([data-theme=light])) .navigation-summary{background:#0088ff21;border-color:#5fb3ff3d}:where(:root:not([data-theme=light])) .route-button-app-secondary{color:#87c7ff;background:#070c121a;border-color:#5fb3ff47}:where(:root:not([data-theme=light])) .route-button-preview{color:#87c7ff;background:#0088ff1a}:where(:root:not([data-theme=light])) .version-number{color:#b7b2ba}}:root[data-theme=dark]{color:#f5f5f7;background:#000;color-scheme:dark;--glass-fill: rgba(7, 12, 18, .0125);--glass-fill-strong: rgba(11, 18, 26, .0225);--glass-line: rgba(255, 255, 255, .22);--glass-text: #f5f5f7;--glass-shadow: 0 8px 24px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255,255,255,.17), inset 0 -1px 0 rgba(0,0,0,.18);--standard-fill: rgba(8, 13, 20, .025);--standard-line: rgba(255,255,255,.15);--standard-shadow: 0 4px 16px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.09);--category-shadow: 0 2px 5px rgba(0,0,0,.28);--category-active-shadow: 0 2px 7px rgba(0,96,190,.34);--sheet-material: rgba(0, 0, 0, .03);--ambient-map-image: url(/assets/campus-map-retro-dark-hd.webp)}:root[data-theme=dark] .app-shell{background:#000}:root[data-theme=dark] .map-card{background:#000;border-color:#ffffff6b;box-shadow:6px 6px #0088ff1c}:root[data-theme=dark] .vector-map-viewport{background:#000}:root[data-theme=dark] .campus-fallback-map:not(.campus-fallback-map-blur){opacity:1;filter:none}:root[data-theme=dark] .explore-sheet{color:#f5f5f7;border-color:var(--standard-line)}:root[data-theme=dark] .search-box{border-color:#ffffff70}:root[data-theme=dark] .search-box>svg,:root[data-theme=dark] .search-box input,:root[data-theme=dark] .sheet-tools-button,:root[data-theme=dark] .sheet-category-buttons button,:root[data-theme=dark] .places-list>button{color:#f5f5f7}:root[data-theme=dark] .search-box input::placeholder{color:#f5f5f7;opacity:.62}:root[data-theme=dark] .map-hotspot{color:#eef9ff;background:#0a1c264d;border-color:#b4e0f16b;box-shadow:0 2px 7px #000000b3,0 0 0 1px #0003;text-shadow:0 1px 1px rgba(0,0,0,.58)}:root[data-theme=dark] .map-hotspot.planned{color:#d3e9f2;background:#0d232e47;border-color:#96cde27a}:root[data-theme=dark] .sheet-detail>p,:root[data-theme=dark] .drawer-count,:root[data-theme=dark] .places-list small,:root[data-theme=dark] .coordinate-card span,:root[data-theme=dark] .navigation-summary small{color:#c4c9cf}:root[data-theme=dark] .coordinate-card strong,:root[data-theme=dark] .navigation-summary strong{color:#5fb3ff}:root[data-theme=dark] .coordinate-card,:root[data-theme=dark] .navigation-summary{background:#0088ff21;border-color:#5fb3ff3d}:root[data-theme=dark] .route-button-app-secondary{color:#87c7ff;background:#070c121a;border-color:#5fb3ff47}:root[data-theme=dark] .route-button-preview{color:#87c7ff;background:#0088ff1a}:root[data-theme=dark] .version-number{color:#b7b2ba}@media(prefers-reduced-transparency:reduce){:root{--glass-fill: rgba(255,255,255,.92);--glass-fill-strong: rgba(255,255,255,.98);--sheet-material: rgba(246,247,248,.98)}.search-box,.expand-map-button,.sheet-tools-button,.sheet-category-buttons button,.search-box button,.sheet-close{-webkit-backdrop-filter:none;backdrop-filter:none}.map-hotspot{background:#fffffff5;-webkit-backdrop-filter:none;backdrop-filter:none}.map-ambient{display:none}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:root:not([data-theme=light]){--glass-fill: rgba(20,24,30,.94);--glass-fill-strong: rgba(25,30,37,.98);--sheet-material: rgba(0,0,0,.98);--standard-fill: rgba(17,21,27,.96)}:where(:root:not([data-theme=light])) .map-hotspot{background:#0a1c26f5}}@media(max-width:699px),(orientation:portrait){.explore-sheet{top:calc(var(--app-viewport-height) - var(--sheet-collapsed-height));bottom:auto;height:var(--sheet-docked-height);min-height:var(--sheet-docked-height);max-height:none}}@media(orientation:landscape)and (min-width:700px){.explore-sheet{bottom:auto;height:auto;min-height:0}}@media(prefers-contrast:more){.search-box,.expand-map-button,.sheet-tools-button,.sheet-category-buttons button,.search-box button,.sheet-close,.map-hotspot{border-width:2px}}:root{--apple-app-background: #ffffff;--apple-surface: rgba(255, 255, 255, .78);--apple-surface-secondary: rgba(118, 118, 128, .12);--apple-label: #1d1d1f;--apple-secondary-label: rgba(60, 60, 67, .6);--apple-separator: rgba(60, 60, 67, .18);--apple-blue: #007aff;--apple-control-fill: rgba(118, 118, 128, .05);--apple-control-fill-hover: rgba(118, 118, 128, .12)}.app-shell{max-width:1440px;min-height:0;background:var(--apple-app-background)}.map-layer{gap:16px 20px;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.map-card{border:0;border-radius:26px;box-shadow:0 12px 30px #1e2d461f}.vector-map-viewport{border-radius:inherit}.explore-sheet{overflow:hidden;background:var(--apple-surface);border:1px solid var(--apple-separator);border-bottom:1px solid var(--apple-separator);border-radius:24px;box-shadow:0 12px 34px #1e2d461f;-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px)}.explore-sheet-content{--sheet-sticky-top-inset: 10px;--sheet-sticky-inline-inset: 14px;padding:10px 14px max(18px,env(safe-area-inset-bottom))}.sheet-title-row{position:sticky;top:0;z-index:5;margin:0 0 12px;padding:4px 0 10px;background:var(--apple-surface)}.sheet-title-row strong{margin-top:2px;color:var(--apple-label);font-size:22px;letter-spacing:-.02em}.version-number{color:var(--apple-secondary-label);font-size:10px}.sheet-title-row .sheet-search-box{min-height:38px;padding-inline:10px;background:var(--apple-surface-secondary);border:0;border-radius:12px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-title-row .sheet-search-box input{color:var(--apple-label);font-size:16px}.sheet-title-row .sheet-search-box>svg{color:var(--apple-secondary-label)}.sheet-tools-button{min-height:38px;color:var(--apple-label);background-color:var(--apple-surface-secondary);border:0;border-radius:50%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-category-buttons{gap:6px;margin-bottom:12px;padding:0}.sheet-category-buttons button{min-height:34px;padding-inline:13px;color:var(--apple-label);background:var(--apple-surface-secondary);border:0;border-radius:999px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-category-buttons button.active{color:#fff;background:var(--apple-blue);border:0;box-shadow:none}.sheet-results,.explore-sheet .places-list{padding-bottom:max(8px,env(safe-area-inset-bottom))}.places-list>button{margin-top:0;padding:13px 4px;color:var(--apple-label);background:transparent;border:0;border-bottom:1px solid var(--apple-separator);border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.places-list>button:last-child{border-bottom:0}.places-list strong{font-size:15px;font-weight:600}.places-list small{margin-top:4px;color:var(--apple-secondary-label);font-size:11px}.places-list b{color:var(--apple-secondary-label);font-size:22px;font-weight:400}.sheet-detail{margin-top:0;padding:8px 4px 16px;background:transparent;border:0;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-detail>p{color:var(--apple-secondary-label);font-size:13px;line-height:1.55}.poi-heading h1{font-size:22px;letter-spacing:-.02em}.coordinate-card,.navigation-summary{border:0;border-radius:12px}.route-button{min-height:44px;border:0;border-radius:12px;box-shadow:none}.route-button-primary{background:var(--apple-blue)}.route-button-app-secondary,.route-button-preview{background:var(--apple-surface-secondary)}.sheet-handle{background:#3c3c4357}@media(orientation:landscape)and (min-width:700px){.map-layer{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);grid-template-rows:minmax(0,1fr);padding:22px}.map-card,.map-ambient{width:min(100%,calc(var(--app-viewport-height) * .76),760px)}.explore-sheet{border-radius:24px}.explore-sheet-content{--sheet-sticky-top-inset: 18px;--sheet-sticky-inline-inset: 20px;padding:18px 20px max(18px,env(safe-area-inset-bottom))}.sheet-title-row{margin-bottom:14px}}@media(orientation:landscape)and (min-width:1120px){.map-layer{grid-template-columns:minmax(0,1.5fr) minmax(400px,.65fr);gap:18px 24px;padding:26px}.explore-sheet-content{--sheet-sticky-inline-inset: 22px;padding-inline:22px}}@media(max-width:699px),(orientation:portrait){.app-shell{background:var(--apple-app-background)}.map-layer{padding:max(10px,env(safe-area-inset-top)) 14px max(10px,env(safe-area-inset-bottom))}.map-card{width:calc(100% + -0px);margin-top:0;border-radius:24px;box-shadow:0 10px 26px #1e2d461f}.explore-sheet{border-radius:22px 22px 0 0;box-shadow:0 -10px 28px #1e2d4624}.sheet-pull-handle{height:34px;padding-top:12px}}@media(horizontal-viewport-segments:2){.map-layer{grid-template-columns:calc(50% - 12px) calc(50% - 12px);column-gap:24px;padding-inline:16px}.map-card{grid-column:1}.explore-sheet{grid-column:2;grid-row:1;position:relative;top:auto!important;right:auto;bottom:auto;left:auto;height:auto;transform:none}.explore-sheet-content{--sheet-sticky-inline-inset: 12px}}@media(vertical-viewport-segments:2){.map-layer{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:16px}.map-card{grid-column:1;grid-row:1;width:min(100%,calc(var(--app-viewport-height) * .72),720px);margin:0 auto}.map-ambient{grid-column:1;grid-row:1;width:min(100%,calc(var(--app-viewport-height) * .72),720px)}.explore-sheet{grid-column:1;grid-row:2;position:relative;top:auto!important;right:auto;bottom:auto;left:auto;height:auto;transform:none;border-radius:22px}.sheet-pull-handle{display:none}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--apple-app-background: #000;--apple-surface: rgba(28, 28, 30, .78);--apple-surface-secondary: rgba(118, 118, 128, .24);--apple-label: #f5f5f7;--apple-secondary-label: rgba(235, 235, 245, .6);--apple-separator: rgba(235, 235, 245, .18);--apple-blue: #0a84ff}:where(:root:not([data-theme=light])) .map-card{box-shadow:0 12px 30px #00000057}:where(:root:not([data-theme=light])) .sheet-title-row strong,:where(:root:not([data-theme=light])) .places-list>button,:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box input,:where(:root:not([data-theme=light])) .sheet-tools-button,:where(:root:not([data-theme=light])) .sheet-category-buttons button{color:var(--apple-label)}:where(:root:not([data-theme=light])) .sheet-handle{background:#ebebf557}}:root[data-theme=dark]{--apple-app-background: #000;--apple-surface: rgba(28, 28, 30, .78);--apple-surface-secondary: rgba(118, 118, 128, .24);--apple-label: #f5f5f7;--apple-secondary-label: rgba(235, 235, 245, .6);--apple-separator: rgba(235, 235, 245, .18);--apple-blue: #0a84ff}.vector-map-viewport .maplibregl-marker,.vector-map-viewport .map-hotspot{transition:none!important;will-change:transform}.map-hotspot{transition-property:opacity,box-shadow,background-color,border-color!important}.map-ambient:before{inset:-14px;border-radius:43% 57% 49% 51%/52% 44% 56% 48%;filter:blur(32px) saturate(245%) brightness(1.2) contrast(1.03);opacity:.5;transform:scale(1.07) rotate(-1.2deg);box-shadow:22px -18px 30px #f6d27c2e,-24px 24px 34px #34a49626}.map-ambient:after{inset:-72px;border-radius:48% 52% 58% 42%/44% 56% 46% 54%;filter:blur(88px) saturate(220%) brightness(1.14) contrast(1.01);opacity:.42;transform:scale(1.04) rotate(1.6deg);box-shadow:0 0 84px 28px #f7d37a38,34px 24px 130px 36px #36a59733,-38px -28px 118px 32px #6296ce1f}.explore-sheet{background:#ffffff38;border-color:#3c3c4338;-webkit-backdrop-filter:saturate(220%) contrast(108%) blur(32px);backdrop-filter:saturate(220%) contrast(108%) blur(32px);box-shadow:0 14px 40px #1e2d461a,inset 0 1px #ffffffd6,inset 0 -1px #2e40521a}.explore-sheet.is-dragging{background:#ffffff4d;border-top-color:#ffffffb8;border-radius:22px 22px 0 0;box-shadow:0 -12px 46px #1e2d4629,inset 0 1px #ffffffeb,inset 0 -1px #2e40521f}.explore-sheet-content{overscroll-behavior-y:contain}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .explore-sheet{background:#1c1c1e38;border-color:#ebebf533}:where(:root:not([data-theme=light])) .explore-sheet.is-dragging{background:#1c1c1e52}:root:not([data-theme=light]){--apple-control-fill: rgba(118,118,128,.12);--apple-control-fill-hover: rgba(118,118,128,.2)}}:root[data-theme=dark]{--apple-control-fill: rgba(118,118,128,.12);--apple-control-fill-hover: rgba(118,118,128,.2)}:root[data-theme=dark] .explore-sheet{background:var(--apple-control-fill);border-color:#ebebf533}:root[data-theme=dark] .explore-sheet.is-dragging{background:var(--apple-control-fill)}.map-hotspot{min-height:30px;padding:6px 10px;color:var(--apple-label);font-size:11px;font-weight:600;background:var(--apple-control-fill);border:0;box-shadow:inset 0 0 0 .5px #3c3c4333,0 2px 7px #1e2d461a;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);text-shadow:none}.map-hotspot:hover{background:var(--apple-control-fill-hover);border-color:transparent;box-shadow:inset 0 0 0 .5px #3c3c433d,0 5px 14px #1e2d4624}.map-hotspot.selected{color:#fff;background:var(--apple-blue);border:0;box-shadow:0 3px 10px #007aff47;text-shadow:none}.map-hotspot.planned{background:var(--apple-control-fill);border:0}.map-hotspot.planned.selected{background:var(--apple-blue);border:0}.expand-map-button{width:38px;height:38px;min-height:38px;color:var(--apple-label);background:var(--apple-control-fill);border:0;box-shadow:inset 0 0 0 .5px #3c3c4333,0 3px 10px #1e2d461f;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}.expand-map-button:hover{background:var(--apple-control-fill-hover);border-color:transparent;box-shadow:0 5px 14px #1e2d4629}.expand-map-button:active{background:var(--apple-control-fill-hover)}.explore-sheet,.explore-sheet.is-dragging{background:var(--apple-control-fill)}.sheet-title-row{position:relative;top:auto;z-index:auto;background:transparent;box-shadow:none}.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button{background:var(--apple-control-fill)}.sheet-title-row .sheet-search-box:hover,.sheet-tools-button:hover,.sheet-category-buttons button:not(.active):hover{background:var(--apple-control-fill-hover)}:root{--apple-control-fill: rgba(118, 118, 128, .14);--apple-control-fill-hover: rgba(118, 118, 128, .22);--apple-secondary-label: rgba(60, 60, 67, .78);--apple-separator: rgba(60, 60, 67, .24);--ambient-map-color: rgb(190 181 125);--ambient-map-color-soft: rgba(190 181 125 / .48);--ambient-map-color-glow: rgba(190 181 125 / .72)}button,a,select,input{font-family:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid rgba(0,122,255,.52);outline-offset:3px}.map-hotspot{min-height:32px;padding:7px 10px;color:#1d1d1f;font-size:12px;font-weight:650;line-height:1.15;background:#ffffff75;box-shadow:inset 0 0 0 .5px #3c3c4342,0 2px 8px #1e2d461f}.map-hotspot:hover{background:#ffffff9e}.map-hotspot.selected{color:#fff;background:#007aff}.expand-map-button{width:44px;height:44px;min-height:44px;background:#ffffff75}.expand-map-button:hover,.expand-map-button:active{background:#ffffff9e}.explore-sheet{background:#ffffff3d}.explore-sheet.is-dragging{background:#ffffff4d}.sheet-title-row strong{font-size:24px;font-weight:700;color:#1d1d1f}.version-number{font-size:11px;color:#3c3c43b8}.sheet-title-row .sheet-search-box{min-height:42px;background:#ffffff57}.sheet-title-row .sheet-search-box input{font-size:17px;color:#1d1d1f}.sheet-tools-button{min-height:42px;font-size:16px;background-color:#ffffff57}.sheet-category-buttons{gap:8px}.sheet-category-buttons button{min-height:38px;padding-inline:14px;color:#1d1d1f;font-size:13px;font-weight:650;background:#ffffff4d}.sheet-category-buttons button.active{color:#fff;background:#007aff}.drawer-count{padding:10px 4px;color:#3c3c43c7;font-size:12px}.places-list>button{min-height:58px;padding:14px 6px}.places-list strong{color:#1d1d1f;font-size:16px;font-weight:650;line-height:1.3}.places-list small{margin-top:4px;color:#3c3c43c7;font-size:12px}.places-list b{color:#3c3c43b8;font-size:24px}.sheet-detail>p{color:#3c3c43c7;font-size:14px}.poi-heading h1{color:#1d1d1f;font-size:24px}.poi-heading small,.coordinate-card span,.navigation-summary small{font-size:11px}.coordinate-card strong,.navigation-summary strong{font-size:13px}.route-button{min-height:48px;font-size:14px;font-weight:650}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--apple-control-fill: rgba(118,118,128,.24);--apple-control-fill-hover: rgba(118,118,128,.34);--apple-secondary-label: rgba(235,235,245,.76);--apple-separator: rgba(235,235,245,.24)}:where(:root:not([data-theme=light])) .map-hotspot,:where(:root:not([data-theme=light])) .expand-map-button,:where(:root:not([data-theme=light])) .explore-sheet,:where(:root:not([data-theme=light])) .explore-sheet.is-dragging{color:#f5f5f7;background:#1c1c1e9e}:where(:root:not([data-theme=light])) .map-hotspot:hover,:where(:root:not([data-theme=light])) .expand-map-button:hover,:where(:root:not([data-theme=light])) .expand-map-button:active{background:#37373ac2}:where(:root:not([data-theme=light])) .sheet-title-row strong,:where(:root:not([data-theme=light])) .places-list strong,:where(:root:not([data-theme=light])) .poi-heading h1,:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box input,:where(:root:not([data-theme=light])) .sheet-tools-button,:where(:root:not([data-theme=light])) .sheet-category-buttons button{color:#f5f5f7}:where(:root:not([data-theme=light])) .places-list small,:where(:root:not([data-theme=light])) .sheet-detail>p,:where(:root:not([data-theme=light])) .drawer-count,:where(:root:not([data-theme=light])) .version-number{color:#ebebf5c2}}:root[data-theme=dark]{--apple-control-fill: rgba(118,118,128,.24);--apple-control-fill-hover: rgba(118,118,128,.34);--apple-secondary-label: rgba(235,235,245,.76);--apple-separator: rgba(235,235,245,.24)}:root[data-theme=dark] .map-hotspot,:root[data-theme=dark] .explore-sheet,:root[data-theme=dark] .explore-sheet.is-dragging{color:#f5f5f7;background:#1c1c1e9e}.map-ambient:before{box-shadow:22px -18px 30px var(--ambient-map-color-soft),-24px 24px 34px color-mix(in srgb,var(--ambient-map-color-soft) 72%,transparent)}.map-ambient:after{background-color:var(--ambient-map-color-soft);box-shadow:0 0 84px 28px var(--ambient-map-color-soft),34px 24px 130px 36px color-mix(in srgb,var(--ambient-map-color-soft) 74%,transparent),-38px -28px 118px 32px color-mix(in srgb,var(--ambient-map-color-soft) 58%,transparent)}@media(max-width:699px),(orientation:portrait){.app-shell{--map-size: min(calc(calc(var(--app-viewport-width) * 1) - 28px), calc(var(--app-viewport-height) - var(--sheet-collapsed-height) - 220px))}.map-card,.map-ambient{width:var(--map-size)}}@media(max-width:479px){.app-shell{--map-size: min(calc(calc(var(--app-viewport-width) * 1) - 28px), calc(var(--app-viewport-height) - var(--sheet-collapsed-height) - 260px))}.map-card,.map-ambient{width:var(--map-size)}}@media(min-width:480px)and (max-width:699px){.app-shell{--map-size: min(calc(calc(var(--app-viewport-width) * 1) - 28px), calc(var(--app-viewport-height) - var(--sheet-collapsed-height) - 220px))}.map-card,.map-ambient{width:var(--map-size)}}.map-ambient:before{inset:0;filter:blur(11px) saturate(190%) brightness(1.12) contrast(1.05);opacity:.44;transform:scale(1.018);-webkit-mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.78) 80%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.78) 80%,transparent 100%);box-shadow:10px -8px 18px var(--ambient-map-color-soft),-12px 12px 20px color-mix(in srgb,var(--ambient-map-color-soft) 64%,transparent)}.map-ambient:after{inset:-12px;filter:blur(28px) saturate(175%) brightness(1.08);opacity:.34;box-shadow:0 0 38px 10px var(--ambient-map-color-soft),18px 14px 58px 14px color-mix(in srgb,var(--ambient-map-color-soft) 62%,transparent),-20px -16px 50px 12px color-mix(in srgb,var(--ambient-map-color-soft) 46%,transparent);-webkit-mask-image:radial-gradient(ellipse at center,#000 48%,rgba(0,0,0,.66) 74%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 48%,rgba(0,0,0,.66) 74%,transparent 100%)}.map-ambient:before{inset:0;border-radius:26px;background:transparent;border:5px solid var(--ambient-map-color-glow);mix-blend-mode:screen;filter:blur(5px);opacity:.62;transform:none;-webkit-mask-image:none;mask-image:none;box-shadow:0 0 14px 3px var(--ambient-map-color-soft),inset 0 0 16px 1px color-mix(in srgb,var(--ambient-map-color-soft) 52%,transparent)}.map-ambient:after{inset:-7px;border-radius:33px;background:transparent;border:7px solid var(--ambient-map-color-soft);filter:blur(14px);opacity:.38;-webkit-mask-image:none;mask-image:none;box-shadow:0 0 28px 7px color-mix(in srgb,var(--ambient-map-color-soft) 68%,transparent),0 0 58px 12px color-mix(in srgb,var(--ambient-map-color-soft) 34%,transparent)}.map-card{box-shadow:0 0 12px 2px var(--ambient-map-color-soft),0 0 26px 6px color-mix(in srgb,var(--ambient-map-color-soft) 46%,transparent),6px 6px #0070c41c}:root{--glass-reflection: rgba(255,255,255,.68);--glass-reflection-soft: rgba(255,255,255,.3)}.map-ambient:before{box-shadow:0 0 14px 3px var(--ambient-map-color-soft),inset 0 0 16px 1px color-mix(in srgb,var(--ambient-map-color-soft) 52%,transparent)}.map-ambient:after{box-shadow:0 0 28px 7px color-mix(in srgb,var(--ambient-map-color-soft) 68%,transparent),0 0 58px 12px color-mix(in srgb,var(--ambient-map-color-soft) 34%,transparent)}.map-card{box-shadow:0 0 12px 2px var(--ambient-map-color-soft),0 0 26px 6px color-mix(in srgb,var(--ambient-map-color-soft) 46%,transparent),6px 6px #0070c41c,inset 0 1px 0 var(--glass-reflection),inset 1px 0 0 var(--glass-reflection-soft);box-shadow:0 0 18px 4px var(--ambient-map-color-glow),0 0 42px 10px var(--ambient-map-color-soft),6px 6px #0070c41c,inset 0 1px 0 var(--glass-reflection),inset 1px 0 0 var(--glass-reflection-soft);filter:drop-shadow(0 0 10px var(--ambient-map-color-glow)) drop-shadow(0 0 24px var(--ambient-map-color-soft))}.map-hotspot,.expand-map-button,.explore-sheet,.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button,.places-list>button{box-shadow:var(--standard-shadow),inset 0 1px 0 var(--glass-reflection),inset 1px 0 0 var(--glass-reflection-soft)}.explore-sheet{border-top-color:var(--glass-reflection);border-left-color:var(--glass-reflection-soft)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--glass-reflection: rgba(255,255,255,.3);--glass-reflection-soft: rgba(255,255,255,.14)}}:root[data-theme=dark]{--glass-reflection: rgba(255,255,255,.3);--glass-reflection-soft: rgba(255,255,255,.14)}.map-ambient:before,.map-ambient:after{display:none}.map-card,.map-card.is-fullscreen{box-shadow:none;filter:none}.sheet-category-buttons button:not(.active){color:#1d1d1f;background:#76768021;border:1px solid rgba(60,60,67,.18);box-shadow:0 2px 6px #1e2d4614,inset 0 1px #ffffffd1}.sheet-category-buttons button:not(.active):hover,.sheet-category-buttons button:not(.active):focus-visible{background:#76768033;border-color:#3c3c4342}.sheet-title-row .sheet-search-box,.sheet-tools-button{color:#1d1d1f;background:#7676801c;border:1px solid rgba(60,60,67,.16);box-shadow:0 2px 8px #1e2d4612,inset 0 1px #ffffffd1}.sheet-title-row .sheet-search-box input,.sheet-title-row .sheet-search-box input::placeholder{color:#3c3c43}.sheet-tools-button:hover,.sheet-tools-button:focus-visible,.sheet-title-row .sheet-search-box:focus-within{background:#7676802e}.sheet-category-buttons button:not(.active){color:#1d1d1f;background:#f2f2f7eb;border:1px solid rgba(60,60,67,.24);box-shadow:0 2px 7px #1e2d461a,inset 0 1px #ffffffe6,inset 0 -1px #3c3c4314}.sheet-category-buttons button:not(.active):hover,.sheet-category-buttons button:not(.active):focus-visible{color:#1d1d1f;background:#e5e5eaf5;border-color:#3c3c4357}.sheet-category-buttons button.active{color:#fff;background:#007aff;border-color:#007aff;box-shadow:0 3px 9px #007aff47,inset 0 1px #ffffff52}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .sheet-category-buttons button:not(.active){color:#f5f5f7;background:#7676804d;border-color:#ebebf54d;box-shadow:0 2px 7px #00000038,inset 0 1px #ffffff2e}:where(:root:not([data-theme=light])) .sheet-category-buttons button:not(.active):hover,:where(:root:not([data-theme=light])) .sheet-category-buttons button:not(.active):focus-visible{color:#fff;background:#7676806b;border-color:#ebebf56b}}:root[data-theme=dark] .sheet-category-buttons button:not(.active){color:#f5f5f7;background:#7676804d;border-color:#ebebf54d;box-shadow:0 2px 7px #00000038,inset 0 1px #ffffff2e}:root[data-theme=dark] .sheet-category-buttons button:not(.active):hover,:root[data-theme=dark] .sheet-category-buttons button:not(.active):focus-visible{color:#fff;background:#7676806b;border-color:#ebebf56b}.sheet-category-buttons{flex-wrap:wrap;align-items:center;row-gap:8px;overflow:visible;max-width:100%}.sheet-category-buttons button{flex:0 0 auto}:root{--liquid-clear-fill: rgba(255, 255, 255, .2);--liquid-clear-hover: rgba(255, 255, 255, .3);--liquid-sheet-fill: rgba(255, 255, 255, .15);--liquid-standard-fill: rgba(255, 255, 255, .1);--liquid-control-fill: rgba(242, 242, 247, .62);--liquid-control-hover: rgba(229, 229, 234, .76)}.explore-sheet{background:var(--liquid-sheet-fill);border-color:#3c3c4333;-webkit-backdrop-filter:saturate(200%) contrast(106%) blur(30px);backdrop-filter:saturate(200%) contrast(106%) blur(30px)}.map-hotspot{background:var(--liquid-clear-fill);border-color:#22465757;-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px)}.map-hotspot:hover,.map-hotspot:focus-visible{background:var(--liquid-clear-hover)}.expand-map-button{background:var(--liquid-clear-fill);border-color:#3c3c4338;-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px)}.expand-map-button:hover,.expand-map-button:focus-visible,.expand-map-button:active{background:var(--liquid-clear-hover)}.search-box button,.sheet-close{background:#f2f2f770}.sheet-title-row .sheet-search-box,.sheet-tools-button{background:var(--liquid-control-fill);border-color:#3c3c4333;-webkit-backdrop-filter:saturate(180%) blur(22px);backdrop-filter:saturate(180%) blur(22px)}.sheet-title-row .sheet-search-box:focus-within,.sheet-tools-button:hover,.sheet-tools-button:focus-visible{background:var(--liquid-control-hover)}.sheet-category-buttons button:not(.active){background:var(--liquid-control-fill);border-color:#3c3c433d;box-shadow:0 2px 7px #1e2d4614,inset 0 1px #ffffffd6,inset 0 -1px #3c3c430f}.sheet-category-buttons button:not(.active):hover,.sheet-category-buttons button:not(.active):focus-visible{background:var(--liquid-control-hover)}.places-list>button{background:#ffffff12}.sheet-detail{background:#ffffff14}.route-button-app-secondary,.route-button-preview{background:#f2f2f770}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--liquid-clear-fill: rgba(10, 28, 38, .26);--liquid-clear-hover: rgba(24, 52, 66, .38);--liquid-sheet-fill: rgba(28, 28, 30, .18);--liquid-standard-fill: rgba(118, 118, 128, .14);--liquid-control-fill: rgba(118, 118, 128, .28);--liquid-control-hover: rgba(118, 118, 128, .4)}:where(:root:not([data-theme=light])) .explore-sheet{border-color:#ebebf533}:where(:root:not([data-theme=light])) .map-hotspot{border-color:#b4e0f161}:where(:root:not([data-theme=light])) .expand-map-button{border-color:#ebebf53d}:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box,:where(:root:not([data-theme=light])) .sheet-tools-button{border-color:#ebebf53d}:where(:root:not([data-theme=light])) .sheet-category-buttons button:not(.active){border-color:#ebebf54d}:where(:root:not([data-theme=light])) .places-list>button,:where(:root:not([data-theme=light])) .sheet-detail{background:#1c1c1e1a}:where(:root:not([data-theme=light])) .route-button-app-secondary,:where(:root:not([data-theme=light])) .route-button-preview{background:#7676803d}}:root[data-theme=dark]{--liquid-clear-fill: rgba(10, 28, 38, .26);--liquid-clear-hover: rgba(24, 52, 66, .38);--liquid-sheet-fill: rgba(28, 28, 30, .18);--liquid-standard-fill: rgba(118, 118, 128, .14);--liquid-control-fill: rgba(118, 118, 128, .28);--liquid-control-hover: rgba(118, 118, 128, .4)}:root[data-theme=dark] .explore-sheet{border-color:#ebebf533}:root[data-theme=dark] .map-hotspot{border-color:#b4e0f161}:root[data-theme=dark] .sheet-title-row .sheet-search-box,:root[data-theme=dark] .sheet-tools-button{border-color:#ebebf53d}:root[data-theme=dark] .sheet-category-buttons button:not(.active){border-color:#ebebf54d}:root[data-theme=dark] .places-list>button,:root[data-theme=dark] .sheet-detail{background:#1c1c1e1a}:root[data-theme=dark] .route-button-app-secondary,:root[data-theme=dark] .route-button-preview{background:#7676803d}@media(prefers-reduced-transparency:reduce){.explore-sheet{background:#f6f7f8f5;-webkit-backdrop-filter:none;backdrop-filter:none}.places-list>button,.sheet-detail{background:#fffffff0;-webkit-backdrop-filter:none;backdrop-filter:none}.map-hotspot,.expand-map-button{background:#fffffff5;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button:not(.active),.search-box button,.sheet-close,.route-button-app-secondary,.route-button-preview{background:#f2f2f7f5;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .explore-sheet,:where(:root:not([data-theme=light])) .places-list>button,:where(:root:not([data-theme=light])) .sheet-detail{background:#1c1c1ef5}:where(:root:not([data-theme=light])) .map-hotspot,:where(:root:not([data-theme=light])) .expand-map-button{background:#0a1c26f5}:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box,:where(:root:not([data-theme=light])) .sheet-tools-button,:where(:root:not([data-theme=light])) .sheet-category-buttons button:not(.active),:where(:root:not([data-theme=light])) .search-box button,:where(:root:not([data-theme=light])) .sheet-close,:where(:root:not([data-theme=light])) .route-button-app-secondary,:where(:root:not([data-theme=light])) .route-button-preview{background:#2c2c2ef5}}@media(max-width:699px),(orientation:portrait){.explore-sheet{--sheet-snap-y: var(--sheet-docked-snap-offset, calc(var(--app-viewport-height) - var(--sheet-docked-height)));top:0!important;right:0;bottom:auto;left:0;height:var(--app-viewport-height);min-height:var(--app-viewport-height);max-height:none;overflow:hidden;background:var(--liquid-sheet-fill);border-bottom:0;border-radius:22px 22px 0 0;transform:translate3d(0,var(--sheet-snap-y),0);transition:transform .24s cubic-bezier(.22,.8,.2,1),border-radius .24s cubic-bezier(.22,.8,.2,1);will-change:transform;backface-visibility:hidden;contain:layout style paint}.explore-sheet.collapsed{--sheet-snap-y: var(--sheet-collapsed-snap-offset, calc(var(--app-viewport-height) - var(--sheet-collapsed-height)))}.explore-sheet.docked{--sheet-snap-y: var(--sheet-docked-snap-offset, calc(var(--app-viewport-height) - var(--sheet-docked-height)))}.explore-sheet.fullscreen{--sheet-snap-y: 0px;border-radius:0}.sheet-snap-measure{position:absolute;top:0;left:-10000px;width:0;height:var(--sheet-docked-height);visibility:hidden;pointer-events:none;overflow:hidden}.explore-sheet.is-dragging{overflow:hidden;background:var(--liquid-sheet-fill);border-bottom:0;border-radius:22px 22px 0 0;transform:translate3d(0,var(--sheet-drag-y, var(--sheet-snap-y)),0)!important;transition:none!important}.explore-sheet-content{height:max(0px,calc(var(--app-viewport-height) - var(--sheet-drag-y, var(--sheet-snap-y)) - 34px));min-height:0}.explore-sheet.fullscreen .explore-sheet-content{padding-top:max(4px,env(safe-area-inset-top))}.map-is-fullscreen .explore-sheet{transform:translate3d(0,100%,0)}}@media(max-width:699px)and (prefers-reduced-transparency:reduce),(orientation:portrait)and (prefers-reduced-transparency:reduce){.explore-sheet,.explore-sheet.is-dragging{background:#f6f7f8f5}}@media(max-width:699px)and (prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce),(orientation:portrait)and (prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .explore-sheet,:where(:root:not([data-theme=light])) .explore-sheet.is-dragging{background:#1c1c1ef5}}.sheet-pull-handle{min-height:44px;padding-top:15px}.sheet-close{width:44px;height:44px;min-width:44px;min-height:44px}.sheet-close svg{width:18px;height:18px}.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button{min-height:44px}.sheet-pull-handle:focus-visible,.sheet-close:focus-visible{outline:3px solid var(--apple-blue);outline-offset:3px}@media(prefers-reduced-transparency:reduce){.explore-sheet,.map-hotspot,.expand-map-button,.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button,.sheet-close{-webkit-backdrop-filter:none;backdrop-filter:none}.explore-sheet{background:#f2f2f7}.map-hotspot,.expand-map-button,.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button,.sheet-close{background:#fff}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .explore-sheet{background:#1c1c1e}:where(:root:not([data-theme=light])) .map-hotspot,:where(:root:not([data-theme=light])) .expand-map-button,:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box,:where(:root:not([data-theme=light])) .sheet-tools-button,:where(:root:not([data-theme=light])) .sheet-category-buttons button,:where(:root:not([data-theme=light])) .sheet-close{background:#2c2c2e}}@media(prefers-reduced-transparency:reduce){:root[data-theme=dark] .explore-sheet{background:#1c1c1e}:root[data-theme=dark] .map-hotspot,:root[data-theme=dark] .expand-map-button,:root[data-theme=dark] .sheet-title-row .sheet-search-box,:root[data-theme=dark] .sheet-tools-button,:root[data-theme=dark] .sheet-category-buttons button,:root[data-theme=dark] .sheet-close{background:#2c2c2e}}@media(forced-colors:active){.explore-sheet,.map-hotspot,.expand-map-button,.sheet-title-row .sheet-search-box,.sheet-tools-button,.sheet-category-buttons button,.sheet-close,.route-button,.places-list>button{border:1px solid ButtonText;box-shadow:none}.sheet-category-buttons button.active,.route-button-primary,.route-button-preview.is-active,.map-hotspot.selected{color:HighlightText;background:Highlight}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid Highlight}}.app-shell{--drawer-surface-rgb: 255, 255, 255;--drawer-solid-fill: #f2f2f7}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .app-shell{--drawer-surface-rgb: 28, 28, 30;--drawer-solid-fill: #1c1c1e}}:root[data-theme=dark] .app-shell{--drawer-surface-rgb: 28, 28, 30;--drawer-solid-fill: #1c1c1e}:root .app-shell .explore-sheet.has-transparency-control,:root .app-shell .explore-sheet.has-transparency-control.is-dragging{background:rgba(var(--drawer-surface-rgb),var(--drawer-background-alpha, .18));-webkit-backdrop-filter:var(--drawer-background-filter, saturate(180%) blur(30px));backdrop-filter:var(--drawer-background-filter, saturate(180%) blur(30px))}.drawer-appearance{margin:0 0 12px;padding:10px 12px;color:var(--apple-label);border:1px solid var(--standard-line);border-radius:14px}.drawer-appearance-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.drawer-appearance-heading label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:650}.drawer-appearance-heading output{color:var(--accent);font-variant-numeric:tabular-nums}.drawer-appearance-heading button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;color:inherit;background:transparent;border:0;border-radius:10px}.drawer-appearance input{display:block;width:100%;min-height:44px;margin:0;accent-color:#0088ff;cursor:ew-resize;touch-action:pan-y}.drawer-appearance input:focus-visible{outline:2px solid #0088ff;outline-offset:2px;border-radius:8px}.drawer-appearance-hint{display:flex;justify-content:space-between;font-size:11px;color:var(--apple-secondary-label)}@media(prefers-reduced-transparency:reduce){:root .app-shell .explore-sheet.has-transparency-control,:root .app-shell .explore-sheet.has-transparency-control.is-dragging{background:var(--drawer-solid-fill);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){:root .app-shell .explore-sheet.has-transparency-control,:root .app-shell .explore-sheet.has-transparency-control.is-dragging{background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}.drawer-appearance{border-color:ButtonText}}.tool-placeholder{margin-top:12px;padding:18px;color:#000;background:#ffffffad;border:1px solid rgba(0,0,0,.12);border-radius:20px;box-shadow:0 5px 18px #142c4114,inset 0 1px #ffffffa8}.tool-placeholder-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.tool-placeholder-heading h2{margin:0;font-size:18px;line-height:1.3}.tool-placeholder-heading span{padding:6px 10px;color:#006fcc;font-size:12px;font-weight:750;background:#0088ff1a;border-radius:999px}.tool-placeholder p{margin:12px 0 16px;color:#626b75;font-size:14px;line-height:1.55}.tool-placeholder>button{min-height:44px;padding:0 14px;color:#fff;font-size:14px;font-weight:700;background:#08f;border:0;border-radius:13px}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .tool-placeholder{color:#f5f5f7;background:#2c2c2ee0;border-color:#ebebf52e}:where(:root:not([data-theme=light])) .tool-placeholder-heading span{color:#8fcaff;background:#0a84ff38}:where(:root:not([data-theme=light])) .tool-placeholder p{color:#ebebf5c2}}:root[data-theme=dark] .tool-placeholder{color:#f5f5f7;background:#2c2c2ee0;border-color:#ebebf52e}:root[data-theme=dark] .tool-placeholder-heading span{color:#8fcaff;background:#0a84ff38}@media(prefers-reduced-transparency:reduce){.tool-placeholder{-webkit-backdrop-filter:none;backdrop-filter:none}.tool-placeholder{background:#f2f2f7}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .tool-placeholder{background:#2c2c2e}}:root[data-theme=dark] .tool-placeholder p{color:#ebebf5c2}@media(prefers-reduced-transparency:reduce){:root[data-theme=dark] .tool-placeholder{background:#2c2c2e}}@media(forced-colors:active){.tool-placeholder,.tool-placeholder>button{border:1px solid ButtonText;box-shadow:none}.tool-placeholder>button{color:ButtonText;background:ButtonFace}.tool-placeholder-heading span{color:Highlight}}.map-layer.map-matches-drawer .map-card:not(.is-fullscreen),.map-layer.map-matches-drawer .map-ambient{width:var(--drawer-matched-map-size)}@media(orientation:portrait){.map-layer.map-matches-drawer .map-card:not(.is-fullscreen){margin-left:calc((100% - var(--drawer-matched-map-size)) / 2)}}@media(orientation:landscape)and (max-height:520px){.app-shell{max-width:none;min-height:0;--landscape-top-inset: 0px;--landscape-bottom-inset: 0px;--landscape-side-inset: max(10px, env(safe-area-inset-left));--landscape-column-gap: 12px;--landscape-map-limit: var(--app-viewport-height)}.map-layer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,min(360px,calc(100% - var(--landscape-map-limit) - var(--landscape-column-gap))));grid-template-rows:minmax(0,1fr);gap:8px var(--landscape-column-gap);height:100%;padding:var(--landscape-top-inset) max(10px,env(safe-area-inset-right)) var(--landscape-bottom-inset) var(--landscape-side-inset)}.map-ambient,.map-card{grid-column:1;grid-row:1;align-self:center;justify-self:center}.map-ambient{position:relative;top:auto;left:auto;transform:scale(1.095) translateY(1%)}.map-card{margin:0}.explore-sheet{grid-column:2;grid-row:1;position:relative;top:auto!important;right:auto;bottom:auto;left:auto;width:auto;height:auto;min-height:0;max-height:none;align-self:stretch;overflow:hidden;border:1px solid var(--standard-line);border-radius:22px;transform:none}.sheet-pull-handle,.sheet-touch-edge{display:none}.explore-sheet-content{height:100%;padding:max(10px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}}@media(orientation:landscape)and (max-height:520px)and (max-width:779px){.explore-sheet-content{--sheet-sticky-inline-inset: 10px;padding:max(10px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom))}.sheet-title-row{margin-bottom:8px}.sheet-heading strong{font-size:17px}.sheet-category-buttons{gap:5px;margin-bottom:7px}.sheet-category-buttons button{min-height:36px;padding-inline:9px;font-size:11px}.sheet-title-row{gap:8px}.sheet-heading{min-width:68px;flex:0 0 68px}.sheet-title-row .sheet-search-box{min-width:60px;padding-inline:8px;gap:4px}.sheet-tools-button{width:44px;flex-basis:44px;padding:0}}@media(orientation:landscape)and (max-height:520px)and (max-width:699px){.explore-sheet-content{--sheet-sticky-inline-inset: 8px;padding-inline:8px}.sheet-title-row{gap:6px}.sheet-heading{min-width:54px;flex-basis:54px}.sheet-title-row .sheet-search-box{min-width:42px;padding-inline:6px;gap:4px}.sheet-tools-button{width:44px;flex-basis:44px;padding:0}}.landscape-drawer-reveal{display:none}.app-shell.is-landscape-drawer-swiping{user-select:none;-webkit-user-select:none}.fanlou-explorer{--fanlou-blue: #007aff;--fanlou-ink: #18384e;--fanlou-line: rgba(31, 83, 116, .2);margin:16px 0 18px;padding:14px;color:var(--fanlou-ink);background:#ffffff94;border:1px solid rgba(48,95,127,.16);border-radius:20px;box-shadow:0 8px 22px #143c5c14,inset 0 1px #ffffffd1}.fanlou-explorer-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.fanlou-eyebrow{display:block;color:#567488;font-size:10px;font-weight:800;letter-spacing:.11em}.fanlou-explorer-heading h2{margin:4px 0 0;color:var(--fanlou-ink);font-size:16px;font-weight:750;line-height:1.25}.fanlou-level-nav{position:relative;display:grid;box-sizing:border-box;width:100%;height:54px;grid-template-columns:minmax(0,1fr);margin-top:12px;padding:0;overflow:visible;border:0;border-radius:17px;background:transparent;box-shadow:none;transition:width .46s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1),margin-top .38s cubic-bezier(.22,1,.36,1),padding .38s cubic-bezier(.22,1,.36,1),border-radius .42s cubic-bezier(.22,1,.36,1),grid-template-columns .3s ease,background-color .28s ease,box-shadow .28s ease,opacity .2s ease}.fanlou-level-nav:before{display:none}.fanlou-level-nav[data-depth="0"]{width:min(100%,132px);height:42px;margin-top:8px;padding:0;border-radius:999px}.fanlou-level-nav[data-depth="0"] .fanlou-level-step{min-height:38px;padding:5px 8px}.fanlou-level-nav[data-depth="0"] .fanlou-level-label{font-size:15px}.fanlou-level-nav[data-depth="1"],.fanlou-level-nav[data-depth="2"]{width:min(100%,198px);grid-template-columns:minmax(0,1fr);border-radius:999px}.fanlou-level-nav[data-depth="2"][data-has-zoom=true]{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;overflow:visible;border-color:transparent;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.fanlou-level-nav[data-depth="2"][data-has-zoom=true]:before{opacity:0}.fanlou-level-nav.is-transitioning{opacity:.48}.fanlou-level-step{position:relative;z-index:1;display:flex;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:center;gap:3px 10px;width:100%;min-width:0;min-height:44px;padding:6px 8px;color:var(--fanlou-blue);background:transparent;border:0;border-radius:13px;transition:color .2s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease,transform .24s cubic-bezier(.22,1,.36,1)}.fanlou-level-step:focus-visible{outline:2px solid var(--fanlou-blue);outline-offset:-2px}.fanlou-level-step:disabled{opacity:1;cursor:default}.fanlou-level-label{font-size:13px;font-weight:750;animation:fanlou-nav-label-in .3s cubic-bezier(.2,.8,.2,1) both}.fanlou-back-step{gap:7px}.fanlou-back-arrow{font-size:17px;font-weight:650;line-height:1;animation:fanlou-back-arrow-in .38s cubic-bezier(.18,1.35,.4,1) both}.fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,.fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:var(--fanlou-blue);border-radius:999px}.fanlou-zoom-step{transform-origin:left center;animation:fanlou-zoom-split .46s cubic-bezier(.2,.8,.2,1) both}.fanlou-zoom-step:disabled{opacity:.62}.fanlou-zoom-step:not(:disabled):active{transform:scale(.98);background:var(--liquid-clear-hover)}@keyframes fanlou-zoom-split{0%{opacity:0;filter:blur(5px);transform:translate(-13px) scaleX(.78)}72%{opacity:1;filter:blur(0)}to{opacity:1;filter:none;transform:translate(0) scaleX(1)}}.fanlou-back-step:not(:disabled):active{transform:scale(.985) translateY(1px);background:var(--liquid-clear-hover)}@media(hover:hover)and (pointer:fine){.fanlou-back-step:not(:disabled):hover{color:var(--fanlou-blue);background:var(--liquid-clear-hover)}:root[data-theme=dark] .fanlou-back-step:not(:disabled):hover{color:#9ed2ff}}@keyframes fanlou-nav-label-in{0%{opacity:0;filter:blur(3px);transform:translateY(5px) scale(.96)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}@keyframes fanlou-back-arrow-in{0%{opacity:0;transform:translate(7px) scale(.7) rotate(-24deg)}to{opacity:1;transform:translate(0) scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.fanlou-level-label,.fanlou-zoom-step{animation:none}}.fanlou-text-button{min-height:44px;padding:0 10px;color:var(--fanlou-blue);font-size:12px;font-weight:700;background:transparent;border:0;border-radius:11px;transition:background-color .18s ease,transform .18s ease}.fanlou-text-button:active{background:var(--liquid-clear-hover);transform:scale(.98)}.fanlou-stage{position:relative;height:520px;margin:8px 0 0;overflow:hidden;perspective:1400px;perspective-origin:50% 260px;transition:height var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1)}.fanlou-stage--floors,.fanlou-stage--floorplan{perspective-origin:50% 260px}.fanlou-stage--floors .fanlou-motion-plane,.fanlou-stage--floorplan .fanlou-motion-plane{transform-origin:50% 177px}.fanlou-camera-frame{position:absolute;inset:var(--camera-floor-top, 83px) 0 auto;height:354px;transform-origin:50% 177px;transform-style:preserve-3d}.fanlou-stage--zones{height:var(--fanlou-zone-stage-height, 280px)}.fanlou-stage.is-returning-zones:not(.restaurant-stage){height:var(--fanlou-zone-stage-height, 280px)}.fanlou-stage--zones .fanlou-camera-frame{top:var(--camera-zone-top, -65px)}.fanlou-stage.is-entering-zone[data-origin=zones] .fanlou-camera-frame{animation:fanlou-camera-position var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-zones .fanlou-camera-frame{animation:fanlou-camera-position var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-camera-position{0%{top:var(--camera-zone-top, -65px)}to{top:var(--camera-floor-top, 83px)}}.fanlou-motion-plane{position:absolute;inset:0;height:354px;transform-origin:50% 177px;transform-style:preserve-3d}.fanlou-view-surface{position:absolute;inset:0;height:354px}.fanlou-view-surface--xz{visibility:hidden}.fanlou-stage--floors .fanlou-view-surface--xy,.fanlou-stage--floors .fanlou-view-surface--xz,.fanlou-stage.is-entering-zone .fanlou-view-surface--xy{visibility:visible}.fanlou-stage.is-landing .fanlou-floorplan-plane{animation:fanlou-floor-settle var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-landing .fanlou-view-surface--xz{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-to-floors .fanlou-floorplan-plane{animation:fanlou-floor-settle var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-to-floors .fanlou-view-surface--xz{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-zone-retire{0%{opacity:1}70%,to{opacity:0}}@keyframes fanlou-floor-settle{0%{transform:matrix(1,0,-.5,.55,0,0);opacity:0}50%{opacity:0}to{transform:scale(1);opacity:1}}.fanlou-stage.has-room-match .fanlou-floorplan-plane{animation:fanlou-match-ui var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.has-room-match .fanlou-zone-plane{animation:none}.fanlou-stage.has-room-match .fanlou-origin-projection>path,.fanlou-stage.has-room-match .fanlou-origin-layer:not([data-selected=true]) .fanlou-layer-preview{animation:fanlou-preview-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.has-room-match .fanlou-origin-layer[data-selected=true] .fanlou-layer-preview{animation:fanlou-match-preview var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-to-floors.has-room-match .fanlou-floorplan-plane{animation:fanlou-match-ui var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-to-floors.has-room-match .fanlou-origin-projection>path,.fanlou-stage.is-returning-to-floors.has-room-match .fanlou-origin-layer:not([data-selected=true]) .fanlou-layer-preview{animation:fanlou-preview-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-to-floors.has-room-match .fanlou-origin-layer[data-selected=true] .fanlou-layer-preview{animation:fanlou-match-preview var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-match-preview{0%,80%{opacity:.85}to{opacity:0}}@keyframes fanlou-match-ui{0%,80%{opacity:0}to{opacity:1}}@keyframes fanlou-floor-retire{0%{opacity:1}60%{opacity:1}to{opacity:0}}.fanlou-card-content{height:100%;overflow:clip}.fanlou-zone-plane{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center}.fanlou-stage--floorplan .fanlou-zone-plane{visibility:hidden}.fanlou-floorplan-plane{position:relative;height:354px;overflow:clip}.fanlou-stage--floors:not(.is-landing):not(.is-returning-to-floors) .fanlou-floorplan-plane{visibility:hidden}.fanlou-stage--floors .fanlou-zone-plane>:not(svg){visibility:hidden}.fanlou-stage--floors[data-zone="2"].is-landing .fanlou-zone-plane>.fanlou-floorplan-plane,.fanlou-stage--floors[data-zone="3"].is-landing .fanlou-zone-plane>.fanlou-floorplan-plane,.fanlou-stage--floors[data-zone="4"].is-landing .fanlou-zone-plane>.fanlou-floorplan-plane,.fanlou-stage--floors[data-zone="2"].is-returning-to-floors .fanlou-zone-plane>.fanlou-floorplan-plane,.fanlou-stage--floors[data-zone="3"].is-returning-to-floors .fanlou-zone-plane>.fanlou-floorplan-plane,.fanlou-stage--floors[data-zone="4"].is-returning-to-floors .fanlou-zone-plane>.fanlou-floorplan-plane{visibility:visible}.fanlou-stage--floors .fanlou-zone-base{opacity:0;pointer-events:none;transition:opacity .3s}.fanlou-origin-layer{opacity:0;pointer-events:none}.fanlou-origin-layer path{fill:#d3e8f7;stroke:#42677f;stroke-width:4}.fanlou-origin-layer[data-selected=true] path{fill:#91c9ff;stroke:#007aff}.fanlou-layer-preview polygon{fill:#a8cce7;stroke:#648aa6;stroke-width:1.3}.fanlou-layer-preview .fanlou-preview-room--laboratory{fill:#b8b6d8}.fanlou-layer-preview .fanlou-preview-room--service{fill:#b8cec3}.fanlou-layer-preview .fanlou-preview-room--lounge{fill:#dacda5}.fanlou-layer-preview .fanlou-preview-room--unmarked{fill:#b5cfdd}.fanlou-layer-preview .fanlou-preview-feature--stair{fill:#a3b1bc}.fanlou-layer-preview .fanlou-preview-feature--male-restroom{fill:#70b4e9}.fanlou-layer-preview .fanlou-preview-feature--female-restroom{fill:#df96ad}.fanlou-layer-preview{opacity:.85}.fanlou-layer-emphasis{transform:translate(0);transition:transform .18s ease,filter .18s ease}.fanlou-origin-layer path,.fanlou-layer-preview polygon{transition:fill .18s ease,stroke .18s ease}.fanlou-origin-layer[data-hovered=true] .fanlou-layer-emphasis{transform:translate(12px,-6px);filter:drop-shadow(0 5px 3px rgba(0,100,200,.25))}.fanlou-origin-layer[data-hovered=true] path{fill:#9bceff;stroke:#007aff}.fanlou-origin-layer[data-hovered=true] .fanlou-layer-preview polygon{stroke:#007aff}.fanlou-stage--floors .fanlou-origin-layer{opacity:1;transform:translateY(calc(var(--layer-offset) * var(--origin-gap, 60px)))}.fanlou-stage--floors .fanlou-origin-projection{transform:matrix(1,0,-.5,.55,0,0)}.fanlou-stage.is-entering-zone .fanlou-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-landing .fanlou-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-to-floors .fanlou-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-entering-zone .fanlou-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-landing .fanlou-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-to-floors .fanlou-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}@keyframes fanlou-origin-separate{0%{transform:translateY(0);opacity:1}to{transform:translateY(calc(var(--layer-offset) * var(--origin-gap, 60px)));opacity:1}}.fanlou-stage.is-landing .fanlou-zone-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-to-floors .fanlou-zone-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-content-change{0%{opacity:.35}to{opacity:1}}.fanlou-stage--zones .fanlou-motion-plane{transform:rotateX(0) rotate(0)}.fanlou-stage--floors .fanlou-motion-plane{transform:rotateX(0) rotate(0);animation:fanlou-plane-rise var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage--floorplan .fanlou-motion-plane{transform:rotateX(0) rotate(0);transition:none}.fanlou-stage--floorplan .fanlou-floorplan-plane,.fanlou-stage--floors.is-landing .fanlou-floorplan-plane{width:100%;margin-inline:auto}.fanlou-zone-plane,.fanlou-elevation-plane,.fanlou-floorplan-plane{width:100%;min-height:220px;padding:12px}.fanlou-plane-caption{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#54748b;font-size:11px;font-weight:700;letter-spacing:.04em}.fanlou-plane-caption>span:first-child{display:inline-grid;min-width:30px;height:22px;place-items:center;color:var(--fanlou-blue);background:#007aff1a;border:1px solid rgba(0,122,255,.18);border-radius:7px}.fanlou-zone-map{display:block;width:min(100%,560px);height:auto;margin:0 auto;overflow:visible}.fanlou-stage[data-zone="1"]{--zone-focus-x: 80%;--zone-focus-y: 55%}.fanlou-stage[data-zone="2"]{--zone-focus-x: 44%;--zone-focus-y: 70%}.fanlou-stage[data-zone="3"]{--zone-focus-x: 44%;--zone-focus-y: 37%}.fanlou-stage[data-zone="4"]{--zone-focus-x: 13%;--zone-focus-y: 51%}.fanlou-stage--floors .fanlou-zone-map{transform-origin:var(--zone-focus-x) var(--zone-focus-y);transform:translate(calc(50% - var(--zone-focus-x)),var(--zone-offset-y, 0px)) scale(var(--zone-zoom, 2.6))}.fanlou-stage.is-entering-zone .fanlou-zone-map{animation:fanlou-zone-dive var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-landing .fanlou-zone-map{animation:fanlou-origin-flatten var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-to-floors .fanlou-zone-map{animation:fanlou-origin-flatten var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-origin-flatten{0%{transform:translate(calc(50% - var(--zone-focus-x)),var(--zone-offset-y, 0px)) scale(var(--zone-zoom, 2.6))}to{transform:translate(calc(50% - var(--zone-focus-x)),var(--zone-offset-y, 0px)) scale(var(--zone-zoom, 2.6))}}@keyframes fanlou-zone-dive{0%{transform:scale(1)}to{transform:translate(calc(50% - var(--zone-focus-x)),var(--zone-offset-y, 0px)) scale(var(--zone-zoom, 2.6))}}.fanlou-stage.is-returning-zones .fanlou-motion-plane{animation:fanlou-zone-return var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-zones .fanlou-zone-plane{visibility:visible}.fanlou-stage.is-returning-zones .fanlou-zone-map{transform-origin:var(--zone-focus-x) var(--zone-focus-y);animation:fanlou-zone-dive var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage.is-returning-zones .fanlou-zone-base{animation:fanlou-zone-restore var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-zones .fanlou-layer-preview{animation:fanlou-preview-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage--floors.is-returning-zones .fanlou-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage--floors.is-returning-zones .fanlou-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage--floorplan.is-returning-zones .fanlou-origin-layer{opacity:1;transform:translateY(0)}.fanlou-stage.is-returning-zones .fanlou-view-surface--xz,.fanlou-stage.is-returning-zones .fanlou-floorplan-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both;pointer-events:none}@keyframes fanlou-zone-return{0%{opacity:1}to{opacity:1}}@keyframes fanlou-zone-restore{0%,55%{opacity:0}to{opacity:1}}@keyframes fanlou-preview-retire{0%{opacity:.85}75%,to{opacity:0}}.fanlou-svg-zone{cursor:pointer;transition:fill .2s ease,filter .2s ease}.fanlou-svg-zone--1{fill:#d3e8f7}.fanlou-svg-zone--2{fill:#e1eef7}.fanlou-svg-zone--3{fill:#d9ebf8}.fanlou-svg-zone--4{fill:#cfe4f3}.fanlou-svg-zone:hover,.fanlou-svg-zone.is-selected{fill:#a9d6fb;filter:brightness(1.04)}.fanlou-svg-zone:focus-visible{outline:none;filter:drop-shadow(0 0 5px rgba(0,122,255,.85))}.fanlou-zone-outline{fill:none;stroke:#42677f;stroke-width:4;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.fanlou-zone-divider{fill:none;stroke:#fffffff5;stroke-width:5;stroke-linecap:square;vector-effect:non-scaling-stroke;pointer-events:none}.fanlou-zone-label{fill:#254d68;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:39px;font-weight:750;text-anchor:middle;pointer-events:none}.fanlou-zone-number{fill:#6b8ca4;font-size:28px;font-weight:800;letter-spacing:2px}.fanlou-zone-hint{fill:#68879d;font-size:21px;font-weight:600}.fanlou-elevation-plane{padding:10px 14px 8px}.fanlou-elevation-plane .fanlou-plane-caption{margin-bottom:6px}.fanlou-floor-stack{position:relative;top:22px;width:min(100%,310px);height:294px;margin:0 auto;padding:0;list-style:none}.fanlou-floor-stack li{position:absolute;inset:0 0 auto;height:44px;transform:translateY(calc(var(--floor-index) * 44px));z-index:calc(6 - var(--floor-index))}.fanlou-stage.is-entering-zone .fanlou-floor-stack li{animation:fanlou-floor-unfold var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}@keyframes fanlou-floor-unfold{0%{transform:translateY(110px) scale(.65);opacity:0}15%{opacity:1}to{transform:translateY(calc(var(--floor-index) * 44px)) scale(1);opacity:1}}.fanlou-stage.is-landing .fanlou-floor-stack li{animation:fanlou-floor-gather var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage.is-returning-to-floors .fanlou-floor-stack li{animation:fanlou-floor-gather var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-floor-gather{0%{transform:translateY(calc(var(--floor-index) * 44px))}to{transform:translateY(var(--floor-gather-y, 110px))}}.fanlou-floor-stack button{position:relative;display:flex;align-items:flex-start;justify-content:space-between;width:100%;height:44px;min-height:44px;padding:12px 14px;color:var(--fanlou-ink);text-align:left;background:transparent!important;border:0;box-shadow:none}@keyframes fanlou-layer-project{0%{transform:scale(1)}to{transform:matrix(1,0,-.5,.55,0,0)}}.fanlou-floor-stack button:hover{color:#005eb8}.fanlou-floor-stack button strong{font-size:12px}.fanlou-floor-stack button>span:last-child{justify-self:end;color:#6a8394;font-size:10px}.fanlou-floor-marker{width:8px;height:8px;background:var(--fanlou-blue);border:2px solid #dcedff;border-radius:50%;box-shadow:0 0 0 1px #007aff61}.fanlou-provisional-note{margin:7px 0 0;color:#708797;font-size:10px;text-align:center}.fanlou-floorplan-plane{min-height:220px;padding:10px}.fanlou-floorplan-plane.has-floor-model{min-height:0;padding:10px 8px 9px}.fanlou-floorplan-plane.has-floor-model{display:flex;flex-direction:column}.fanlou-floorplan-plane.has-floor-model .fanlou-model-scroll{display:flex;min-height:0;flex:1 1 0;align-items:center;justify-content:center}.fanlou-floorplan-plane.has-floor-model .fanlou-model-scroll>.fanlou-floor-model{width:100%;height:100%;max-width:100%;max-height:100%}.fanlou-floor-model .fanlou-plan-feature{pointer-events:none}.fanlou-stage--floors.is-landing .fanlou-motion-plane{transform:rotateX(0) rotate(0);animation:fanlou-plane-return var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.fanlou-stage--floors.is-returning-to-floors .fanlou-motion-plane{animation:fanlou-plane-return var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-floor-stack button[aria-pressed=true]{color:#005eb8}.fanlou-floor-stack button[aria-pressed=true]>span:last-child{color:#005eb8}.parcel-station-explorer{--parcel-ink: #18384e;--parcel-caption: #567488;--parcel-muted: #708797;--parcel-blue: #0088ff;margin:16px 0 18px;padding:14px;color:var(--night-title, var(--parcel-ink));background:var(--night-fanlou-surface, rgba(255, 255, 255, .58));border:1px solid var(--night-fanlou-line, rgba(48, 95, 127, .16));border-radius:20px;box-shadow:0 8px 22px #143c5c14,inset 0 1px #ffffffd1}.parcel-station-explorer-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.parcel-station-eyebrow{display:block;color:var(--night-fanlou-caption, var(--parcel-caption));font-size:10px;font-weight:800;letter-spacing:.11em}.parcel-station-explorer-heading h2{margin:4px 0 0;color:var(--night-fanlou-caption, var(--parcel-ink));font-size:16px;font-weight:750;line-height:1.25}.parcel-station-instruction{margin:9px 0 2px;color:var(--night-fanlou-muted, var(--parcel-muted));font-size:12px}.parcel-station-motion-frame{overflow:hidden;transition:height .34s cubic-bezier(.22,.7,.2,1)}.map-hotspot.map-hotspot--building-group{font-size:12px;font-weight:900;padding:8px 12px;z-index:4}.parcel-station-motion-content{display:flow-root;opacity:1;transform:translateY(0);transition:opacity .1s ease,transform .1s ease}.parcel-station-motion-content.is-leaving{opacity:0;transform:translateY(-5px)}.parcel-station-motion-view{display:flow-root;animation:parcel-station-enter .28s cubic-bezier(.22,.7,.2,1) both}@keyframes parcel-station-enter{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.parcel-station-motion-frame,.parcel-station-motion-content{transition:none}.parcel-station-motion-view{animation:none}}:root[data-page-motion=inactive] .parcel-station-motion-view{animation:none}.parcel-station-map{display:block;width:min(100%,560px);height:auto;margin:0 auto;overflow:visible;touch-action:manipulation}.parcel-station-shell{fill:var(--night-foundation, #d3b79a);stroke:var(--night-foundation-line, #755d49);stroke-width:2}.parcel-station-zone{fill:#ead9c5;cursor:pointer;outline:none;transition:fill .18s ease,filter .18s ease}.parcel-station-zone--1{fill:var(--night-zone-1, #ead9c5)}.parcel-station-zone--2{fill:var(--night-zone-2, #e3d0b8)}.parcel-station-zone--3{fill:var(--night-zone-3, #efdfcd)}.parcel-station-zone--4{fill:var(--night-zone-4, #dbc3a8)}.parcel-station-zone:hover,.parcel-station-zone.is-selected{fill:var(--night-zone-selected, #a9d6fb);filter:brightness(1.02)}.parcel-station-zone:focus-visible{filter:drop-shadow(0 0 5px rgba(0,122,255,.9))}.parcel-station-divider{fill:none;stroke:#fffffffa;stroke-width:5;stroke-linecap:square;vector-effect:non-scaling-stroke;pointer-events:none}.parcel-station-outline{fill:none;stroke:var(--night-foundation-line, #755d49);stroke-width:2.5;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.parcel-station-zone-labels{fill:var(--night-zone-label, #594b3d);font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif;font-size:17px;font-weight:750;text-anchor:middle;pointer-events:none}.parcel-station-zone-courier{font-size:18px;font-weight:800;letter-spacing:.04em}.parcel-station-selection{display:flex;min-height:38px;align-items:center;justify-content:center;gap:5px;margin:4px 0 0;color:var(--night-fanlou-muted, var(--parcel-muted));font-size:12px;font-weight:650}.parcel-station-selection span{display:inline-grid;width:19px;height:19px;place-items:center;color:#fff;background:var(--parcel-blue);border-radius:50%;font-size:11px}.parcel-station-schematic-note{margin:2px 0 0;color:var(--night-fanlou-muted, var(--parcel-muted));font-size:10px;line-height:1.45;text-align:center}@media(max-width:420px){.parcel-station-explorer{margin-top:12px;padding:11px}.parcel-station-zone-labels{font-size:18px}}@media(prefers-reduced-motion:reduce){.parcel-station-zone{transition-duration:.01ms}}@media(prefers-reduced-transparency:reduce){.parcel-station-explorer{background:var(--night-fanlou-surface, #fff)}}@media(forced-colors:active){.parcel-station-zone{fill:Canvas;stroke:ButtonText;stroke-width:1.5}.parcel-station-zone[aria-pressed=true]{fill:Highlight}.parcel-station-outline,.parcel-station-divider{stroke:ButtonText}.parcel-station-zone-labels{fill:CanvasText}}@keyframes fanlou-plane-rise{0%{transform:rotateX(0) rotate(0)}to{transform:rotateX(0) rotate(0)}}@keyframes fanlou-plane-return{0%{transform:rotateX(0) rotate(0)}to{transform:rotateX(0) rotate(0)}}.fanlou-floorplan-empty{height:146px;margin:8px 0 5px;background:#ffffff7a;border:1px dashed rgba(59,104,136,.24);border-radius:10px}.fanlou-floorplan-empty{display:grid;place-items:center;color:#7890a0;font-size:12px}.fanlou-model-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 4px}.fanlou-model-view-switch,.fanlou-model-zoom{display:inline-flex;align-items:center;gap:4px}.fanlou-model-view-switch{padding:3px;background:#41698414;border:1px solid rgba(65,105,132,.12);border-radius:12px}.fanlou-model-view-switch button,.fanlou-model-zoom button{min-width:44px;min-height:44px;padding:0 10px;color:#45677e;font:inherit;font-size:11px;font-weight:700;background:transparent;border:0;border-radius:9px}.fanlou-model-view-switch button[aria-pressed=true]{color:#075da5;background:#fff;box-shadow:0 1px 4px #18384e21}.fanlou-model-zoom{gap:2px;color:#627d90;font-size:11px;font-weight:750}.fanlou-model-zoom button{padding:0;font-size:18px}.fanlou-model-zoom button:disabled{opacity:.38}.fanlou-facility-key{display:flex;align-items:center;gap:14px;min-height:28px;padding:0 3px;color:#365b75;font-size:12px;font-weight:750}.fanlou-facility-key span{display:inline-flex;align-items:center;gap:5px}.fanlou-facility-key>button{margin-left:auto}.fanlou-facility-key i{width:14px;height:14px;border:1.5px solid rgba(31,71,96,.46);border-radius:4px}.fanlou-facility-key__male{background:#357eae}.fanlou-facility-key__female{background:#c55b69}.fanlou-model-scroll{width:100%;max-width:100%;overflow:clip}.fanlou-floor-model{display:block;height:auto;max-width:none;margin:0 auto;overflow:visible;user-select:none;-webkit-user-select:none}.fanlou-stage[data-zone="2"] .fanlou-floor-model{min-width:0}.fanlou-stage[data-zone="2"].is-landing .fanlou-floor-model,.fanlou-stage[data-zone="3"].is-landing .fanlou-floor-model,.fanlou-stage[data-zone="4"].is-landing .fanlou-floor-model{transform-origin:top left;animation:fanlou-detail-expand var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.fanlou-stage[data-zone="2"].is-returning-to-floors .fanlou-floor-model,.fanlou-stage[data-zone="3"].is-returning-to-floors .fanlou-floor-model,.fanlou-stage[data-zone="4"].is-returning-to-floors .fanlou-floor-model{transform-origin:top left;animation:fanlou-detail-expand var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}@keyframes fanlou-detail-expand{0%{transform:translate(var(--fanlou-preview-inset, 0px)) scale(var(--fanlou-preview-scale, 1))}to{transform:translate(0) scale(1)}}.fanlou-model-foundation{fill:#e6eef3;fill-rule:evenodd;stroke:#6f8998;stroke-width:2.2;stroke-linejoin:round}.fanlou-model-foundation-side{fill:#a9bac5;fill-rule:evenodd;stroke:#637c8c;stroke-width:1.5;stroke-linejoin:round}.fanlou-model-atrium{fill:#f8fbfe;stroke:#9fb2bf;stroke-width:1.6}.fanlou-model-atrium-label{fill:#7b929f;font:650 14px -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.fanlou-feature-top{fill:#b3c4cf;stroke:#6c8595;stroke-width:1.4}.fanlou-feature-side{fill:#8299a7;stroke:#617987;stroke-width:1}.fanlou-feature-label{fill:#294e66;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-weight:800;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.fanlou-restroom-marker polygon{stroke:#fff;stroke-width:.7}.fanlou-restroom-marker text{fill:#fff;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-weight:900;text-anchor:middle;dominant-baseline:middle;paint-order:stroke fill;stroke:#16304259;stroke-width:1.3px;stroke-linejoin:round;pointer-events:none}.fanlou-plan-feature--male-restroom polygon{fill:#237fbc}.fanlou-plan-feature--female-restroom polygon{fill:#ca4f60}.fanlou-stair-tread{stroke:#526f81;stroke-width:.8}.fanlou-plan-feature--entrance .fanlou-feature-top{fill:#a5cda8}.fanlou-plan-feature--service .fanlou-feature-top{fill:#cfe5d1}.fanlou-room{cursor:default;outline:none;pointer-events:none}.fanlou-room-top{stroke:#526f81;stroke-width:1.25;stroke-linejoin:round;transition:fill .16s ease,stroke .16s ease,filter .16s ease}.fanlou-room--classroom .fanlou-room-top{fill:#c7dff0}.fanlou-room--laboratory .fanlou-room-top{fill:#e8d4e7}.fanlou-room--lounge .fanlou-room-top{fill:#eee4b7}.fanlou-room--service .fanlou-room-top{fill:#cfe5d1}.fanlou-room--restroom .fanlou-room-top{fill:#efc7c9}.fanlou-room--unmarked .fanlou-room-top{fill:#d2e4ed}.fanlou-room.is-search-match .fanlou-room-top{fill:#62b8ff;stroke:#08f;stroke-width:3}.fanlou-room-side{stroke:#526f81;stroke-width:.85;stroke-linejoin:round}.fanlou-room--classroom .fanlou-room-side{fill:#91b3cc}.fanlou-room--laboratory .fanlou-room-side{fill:#bc9fbd}.fanlou-room--lounge .fanlou-room-side{fill:#c6b87e}.fanlou-room--service .fanlou-room-side{fill:#98bc9c}.fanlou-room--restroom .fanlou-room-side{fill:#c69497}.fanlou-room-label{fill:#173d56;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-weight:800;text-anchor:middle;dominant-baseline:middle;paint-order:stroke fill;stroke:#fffffff0;stroke-width:.7px;stroke-linejoin:round;pointer-events:none}.fanlou-room-selection{display:flex;align-items:baseline;gap:8px;min-height:44px;margin:3px 2px;padding:8px 10px;color:#698292;background:#44708f12;border:1px solid rgba(68,112,143,.12);border-radius:10px;font-size:11px}.fanlou-room-selection strong{color:#315b76;font-size:14px}.fanlou-room-selection small{margin-left:auto;font-size:10px}.fanlou-room-selection.has-selection{color:#496f89;background:#007aff14;border-color:#007aff33}.fanlou-room-index{margin:0 2px;color:#527087;font-size:11px}.fanlou-room-index summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 4px;font-weight:750;cursor:pointer}.fanlou-room-index summary span{color:#7b929f;font-weight:600}.fanlou-room-index-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:2px 0 8px}.fanlou-room-index-list button{display:grid;min-height:44px;align-content:center;gap:2px;padding:3px 5px;color:#31566e;background:#fff;border:1px solid rgba(62,104,133,.17);border-radius:8px}.fanlou-room-index-list button[aria-pressed=true]{color:#075da5;background:#e8f4ff;border-color:#5ea7e5}.fanlou-room-index-list button span{font-size:11px;font-weight:800}.fanlou-room-index-list button small{color:#7890a0;font-size:9px}.fanlou-reference{margin:4px 2px 8px;font-size:12px;color:var(--fanlou-ink)}.fanlou-reference summary{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;cursor:pointer}.fanlou-reference summary span{color:#708797;font-size:10px}.fanlou-reference p{margin:8px 0;font-size:12px;line-height:1.6}.fanlou-reference img{display:block;width:100%;height:auto;margin-bottom:10px;border-radius:8px}.fanlou-large-view{width:min(1000px,calc(calc(var(--app-viewport-width) * 1) - 24px));max-width:none;max-height:calc(var(--app-viewport-height) - 24px);padding:16px;overflow:auto;color:var(--fanlou-ink);background:#f8fbfe;border:1px solid var(--fanlou-line);border-radius:18px;box-shadow:0 20px 60px #0a1e2d40}.fanlou-large-view::backdrop{background:#0a192880}.fanlou-large-view header{display:flex;align-items:center;justify-content:space-between;gap:8px}.fanlou-large-view h2{margin:0;font-size:17px}.fanlou-large-view p{font-size:13px}.fanlou-large-view-scroll{overflow:auto;max-height:calc(var(--app-viewport-height) - 170px);touch-action:pan-x pan-y}.fanlou-large-view .fanlou-floor-model{min-width:640px}:root[data-theme=dark] .fanlou-large-view{background:#203747}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .fanlou-large-view{background:#203747}}.fanlou-plan-note{margin:0;color:#7a8f9e;font-size:10px;text-align:right}.fanlou-explorer button:focus-visible{outline-color:var(--fanlou-blue)}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .fanlou-explorer{--fanlou-ink: #e4f2fb;--fanlou-line: rgba(171, 213, 240, .22);color:var(--fanlou-ink);background:#1c303ec2;border-color:#abd5f038}:where(:root:not([data-theme=light])) .fanlou-level-nav:before{display:none}:where(:root:not([data-theme=light])) .fanlou-explorer-heading h2{color:var(--fanlou-ink)}:where(:root:not([data-theme=light])) .fanlou-eyebrow,:where(:root:not([data-theme=light])) .fanlou-plane-caption,:where(:root:not([data-theme=light])) .fanlou-provisional-note,:where(:root:not([data-theme=light])) .fanlou-plan-note{color:#a9c1d0}:where(:root:not([data-theme=light])) .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,:where(:root:not([data-theme=light])) .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:#8bc9ff}:where(:root:not([data-theme=light])) .fanlou-svg-zone--1{fill:#29465a}:where(:root:not([data-theme=light])) .fanlou-svg-zone--2{fill:#2b4050}:where(:root:not([data-theme=light])) .fanlou-svg-zone--3{fill:#294354}:where(:root:not([data-theme=light])) .fanlou-svg-zone--4{fill:#26495f}:where(:root:not([data-theme=light])) .fanlou-svg-zone:hover,:where(:root:not([data-theme=light])) .fanlou-svg-zone.is-selected{fill:#28638c}:where(:root:not([data-theme=light])) .fanlou-zone-outline{stroke:#a6c8dc}:where(:root:not([data-theme=light])) .fanlou-zone-divider{stroke:#d7edf9e0}:where(:root:not([data-theme=light])) .fanlou-zone-label,:where(:root:not([data-theme=light])) .fanlou-zone-number,:where(:root:not([data-theme=light])) .fanlou-zone-hint{fill:#e4f2fb}:where(:root:not([data-theme=light])) .fanlou-floor-stack button{color:var(--fanlou-ink);background:#29465a;border-color:#abd5f03d}:where(:root:not([data-theme=light])) .fanlou-floor-stack button:hover{color:#eaf6ff;background:#214f73}:where(:root:not([data-theme=light])) .fanlou-zone-action,:where(:root:not([data-theme=light])) .fanlou-floor-stack button>span:last-child{color:#b0c6d4}:where(:root:not([data-theme=light])) .fanlou-floorplan-empty{background:#0a192429}:where(:root:not([data-theme=light])) .fanlou-model-view-switch,:where(:root:not([data-theme=light])) .fanlou-model-zoom{color:#b0c6d4}:where(:root:not([data-theme=light])) .fanlou-model-view-switch button,:where(:root:not([data-theme=light])) .fanlou-model-zoom button{color:#c0d3df}:where(:root:not([data-theme=light])) .fanlou-model-view-switch button[aria-pressed=true]{color:#eaf6ff;background:#31556b}:where(:root:not([data-theme=light])) .fanlou-facility-key{color:#d3e8f5}:where(:root:not([data-theme=light])) .fanlou-model-foundation{fill:#2a4352;stroke:#92afc0}:where(:root:not([data-theme=light])) .fanlou-model-foundation-side{fill:#1b303d;stroke:#829cac}:where(:root:not([data-theme=light])) .fanlou-model-atrium{fill:#1a2e3b;stroke:#7794a6}:where(:root:not([data-theme=light])) .fanlou-model-atrium-label,:where(:root:not([data-theme=light])) .fanlou-feature-label{fill:#c5dbe7}:where(:root:not([data-theme=light])) .fanlou-feature-top{fill:#466274;stroke:#9ab6c6}:where(:root:not([data-theme=light])) .fanlou-feature-side{fill:#304b5b;stroke:#91aaba}:where(:root:not([data-theme=light])) .fanlou-plan-feature--male-restroom rect{fill:#237fbc}:where(:root:not([data-theme=light])) .fanlou-plan-feature--female-restroom rect{fill:#ca4f60}:where(:root:not([data-theme=light])) .fanlou-plan-feature--entrance .fanlou-feature-top{fill:#557c5c}:where(:root:not([data-theme=light])) .fanlou-room-label{fill:#143044}:where(:root:not([data-theme=light])) .fanlou-room-selection{color:#b0c6d4;background:#08131b47;border-color:#abd5f038}:where(:root:not([data-theme=light])) .fanlou-room-selection strong{color:#e3f2fb}:where(:root:not([data-theme=light])) .fanlou-room-index{color:#d3e8f5}:where(:root:not([data-theme=light])) .fanlou-room-index summary span,:where(:root:not([data-theme=light])) .fanlou-room-index-list button small{color:#a9c1d0}:where(:root:not([data-theme=light])) .fanlou-room-index-list button{color:#d8eaf4;background:#29465a;border-color:#abd5f03d}:where(:root:not([data-theme=light])) .fanlou-room-index-list button[aria-pressed=true]{color:#eaf6ff;background:#214f73;border-color:#6ab2ec}}:root[data-theme=dark] .fanlou-explorer{--fanlou-ink: #e4f2fb;--fanlou-line: rgba(171, 213, 240, .22);color:var(--fanlou-ink);background:#1c303ec2;border-color:#abd5f038}:root[data-theme=dark] .fanlou-level-nav:before{display:none}:root[data-theme=dark] .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,:root[data-theme=dark] .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:#8bc9ff}:root[data-theme=dark] .fanlou-explorer-heading h2{color:var(--fanlou-ink)}:root[data-theme=dark] .fanlou-svg-zone--1{fill:#29465a}:root[data-theme=dark] .fanlou-svg-zone--2{fill:#2b4050}:root[data-theme=dark] .fanlou-svg-zone--3{fill:#294354}:root[data-theme=dark] .fanlou-svg-zone--4{fill:#26495f}:root[data-theme=dark] .fanlou-svg-zone:hover,:root[data-theme=dark] .fanlou-svg-zone.is-selected{fill:#28638c}:root[data-theme=dark] .fanlou-zone-outline{stroke:#a6c8dc}:root[data-theme=dark] .fanlou-zone-label,:root[data-theme=dark] .fanlou-zone-number,:root[data-theme=dark] .fanlou-zone-hint{fill:#e4f2fb}:root[data-theme=dark] .fanlou-floor-stack button{color:var(--fanlou-ink);background:#29465a;border-color:#abd5f03d}:root[data-theme=dark] .fanlou-floorplan-empty{background:#0a192429}:root[data-theme=dark] .fanlou-model-view-switch,:root[data-theme=dark] .fanlou-model-zoom{color:#b0c6d4}:root[data-theme=dark] .fanlou-model-view-switch button,:root[data-theme=dark] .fanlou-model-zoom button{color:#c0d3df}:root[data-theme=dark] .fanlou-model-view-switch button[aria-pressed=true]{color:#eaf6ff;background:#31556b}:root[data-theme=dark] .fanlou-facility-key{color:#d3e8f5}:root[data-theme=dark] .fanlou-model-foundation{fill:#2a4352;stroke:#92afc0}:root[data-theme=dark] .fanlou-model-foundation-side{fill:#1b303d;stroke:#829cac}:root[data-theme=dark] .fanlou-model-corridor{fill:#334e5e;stroke:#7c9aaa}:root[data-theme=dark] .fanlou-model-corridor-side{fill:#263d4b;stroke:#6b8798}:root[data-theme=dark] .fanlou-model-atrium{fill:#1a2e3b;stroke:#7794a6}:root[data-theme=dark] .fanlou-model-atrium-label,:root[data-theme=dark] .fanlou-feature-label{fill:#c5dbe7}:root[data-theme=dark] .fanlou-feature-top{fill:#466274;stroke:#9ab6c6}:root[data-theme=dark] .fanlou-feature-side{fill:#304b5b;stroke:#91aaba}:root[data-theme=dark] .fanlou-plan-feature--male-restroom rect{fill:#237fbc}:root[data-theme=dark] .fanlou-plan-feature--female-restroom rect{fill:#ca4f60}:root[data-theme=dark] .fanlou-room-label{fill:var(--night-room-ink, #f5f8fb);stroke:var(--night-room-halo, rgba(11, 20, 28, .96))}:root[data-theme=dark] .fanlou-room-selection{color:#b0c6d4;background:#08131b47;border-color:#abd5f038}:root[data-theme=dark] .fanlou-room-selection strong{color:#e3f2fb}:root[data-theme=dark] .fanlou-room-index{color:#d3e8f5}:root[data-theme=dark] .fanlou-room-index summary span,:root[data-theme=dark] .fanlou-room-index-list button small{color:#a9c1d0}:root[data-theme=dark] .fanlou-room-index-list button{color:#d8eaf4;background:#29465a;border-color:#abd5f03d}:root[data-theme=dark] .fanlou-room-index-list button[aria-pressed=true]{color:#eaf6ff;background:#214f73;border-color:#6ab2ec}@media(max-width:420px){.fanlou-explorer{margin-top:12px;padding:11px}}@media(prefers-reduced-transparency:reduce){.fanlou-level-nav{background:#f1f7fc;-webkit-backdrop-filter:none;backdrop-filter:none}.fanlou-level-nav:before{display:none}.fanlou-text-button{color:#005da8;background:#e6f3ff;border-color:#0069be38;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.fanlou-level-nav[data-depth="2"][data-has-zoom=true]{background:transparent;box-shadow:none}.fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,.fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:#005da8;background:#e6f3ff;border-color:#0069be38;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-theme=dark] .fanlou-level-nav{background:#29465a}:root[data-theme=dark] .fanlou-text-button{color:#d8ecfb;background:#31556b;border-color:#abd5f04d;box-shadow:none}:root[data-theme=dark] .fanlou-level-nav[data-depth="2"][data-has-zoom=true]{background:transparent}:root[data-theme=dark] .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,:root[data-theme=dark] .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:#d8ecfb;background:#31556b;border-color:#abd5f04d}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .fanlou-level-nav{background:#29465a}:where(:root:not([data-theme=light])) .fanlou-text-button{color:#d8ecfb;background:#31556b;border-color:#abd5f04d;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}:where(:root:not([data-theme=light])) .fanlou-level-nav[data-depth="2"][data-has-zoom=true]{background:transparent}:where(:root:not([data-theme=light])) .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-back-step,:where(:root:not([data-theme=light])) .fanlou-level-nav[data-depth="2"][data-has-zoom=true] .fanlou-zoom-step{color:#d8ecfb;background:#31556b;border-color:#abd5f04d}}@media(prefers-reduced-motion:reduce){.fanlou-motion-plane,.fanlou-svg-zone,.fanlou-floor-stack button{transition-duration:.01ms}.fanlou-level-label,.fanlou-back-arrow{animation:none}.fanlou-stage,.fanlou-stage--floors .fanlou-motion-plane,.fanlou-stage--floors .fanlou-camera-frame,.fanlou-card-content,.fanlou-stage .fanlou-zone-map,.fanlou-stage .fanlou-floor-stack li{animation-duration:.01ms;transition-duration:.01ms}.fanlou-stage--floorplan .fanlou-floorplan-plane{animation:none}}@media(forced-colors:active){.fanlou-explorer,.fanlou-level-nav,.fanlou-level-step,.fanlou-text-button,.fanlou-motion-plane,.fanlou-zone-plane,.fanlou-elevation-plane,.fanlou-floorplan-plane,.fanlou-svg-zone,.fanlou-floor-stack button,.fanlou-model-foundation,.fanlou-model-foundation-side,.fanlou-room-top,.fanlou-room-side,.fanlou-room-index-list button{color:CanvasText;background:Canvas;border:1px solid CanvasText;box-shadow:none}.fanlou-level-nav,.fanlou-level-step,.fanlou-text-button{-webkit-backdrop-filter:none;backdrop-filter:none}.fanlou-level-nav:before{display:none}.fanlou-room-label,.fanlou-feature-label,.fanlou-model-atrium-label{stroke:CanvasText;fill:CanvasText}.fanlou-room:focus-visible .fanlou-room-top{stroke:Highlight;stroke-width:4}}@media(orientation:landscape)and (min-width:700px),(orientation:landscape)and (max-height:520px),(horizontal-viewport-segments:2){.app-shell{max-width:none}.explore-sheet{touch-action:pan-y;transition:transform .34s cubic-bezier(.22,.8,.2,1);will-change:transform}.app-shell.landscape-drawer-hidden .explore-sheet{z-index:32;transform:translate3d(calc(80% + var(--landscape-drawer-end-inset, 0px)),0,0)}.app-shell.is-landscape-drawer-swiping .explore-sheet{transition:none!important;transform:translate3d(var(--landscape-drawer-swipe-offset, 0px),0,0)!important}.app-shell.is-landscape-drawer-settling .explore-sheet{transition:transform .34s cubic-bezier(.22,.8,.2,1)!important;transform:translate3d(var(--landscape-drawer-swipe-offset, 0px),0,0)!important}.sheet-pull-handle,.sheet-touch-edge{display:none}.landscape-drawer-reveal{position:absolute;z-index:5;inset:0 auto 0 0;display:none;width:20%;min-width:44px;height:100%;padding:0;color:transparent;background:transparent;border:0;border-radius:0;box-shadow:none;-webkit-appearance:none;appearance:none;touch-action:none}.app-shell.landscape-drawer-hidden .landscape-drawer-reveal{display:block}.landscape-drawer-reveal:focus-visible{outline:3px solid var(--apple-blue);outline-offset:-3px}}.vector-map-viewport .map-hotspot{min-width:28px;min-height:30px;padding:4px 7px;font-size:10.5px}.map-detail-label{padding-inline:3px;font-size:clamp(10.5px,calc(var(--app-viewport-width) * .0084),12px);-webkit-text-stroke-width:2.5px}.map-detail-label--water{font-size:clamp(12px,calc(var(--app-viewport-width) * .0098),14px)}.map-detail-label--bridge{padding:2px 4px;font-size:10.5px}.map-detail-label--junction{padding-inline:4px;font-size:9.5px}.expand-map-button svg{width:14px;height:14px}.user-location-dot{width:16px;height:16px;border-width:3px}.sheet-sticky-controls{position:sticky;top:calc(0px - var(--sheet-sticky-top-inset, 10px));z-index:8;margin:calc(var(--sheet-sticky-top-inset, 10px) * -1) calc(var(--sheet-sticky-inline-inset, 14px) * -1) 12px;padding:var(--sheet-sticky-top-inset, 10px) var(--sheet-sticky-inline-inset, 14px) 8px;background:var(--apple-surface);border-bottom:1px solid var(--apple-separator);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px)}.sheet-pull-handle{background:var(--apple-surface);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px)}.sheet-title-row{position:static;top:auto;z-index:auto;margin:0;background:transparent}.sheet-title-row .sheet-search-box{border-radius:999px}.sheet-tools{position:relative;z-index:12;flex:0 0 auto}.sheet-tools-button{box-sizing:border-box}.sheet-tools-button>span{display:block;transform:translateY(-2px)}.sheet-category-buttons{margin:0;padding:0 0 6px}@media(prefers-reduced-transparency:reduce){.sheet-pull-handle,.sheet-sticky-controls{background:var(--apple-app-background);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){.sheet-pull-handle,.sheet-sticky-controls{background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-sticky-controls{border-bottom-color:CanvasText}}.coordinate-card,.navigation-summary,.route-button,.drawer-appearance,.tool-placeholder,.tool-placeholder>button,.fanlou-level-step,.fanlou-text-button,.fanlou-plane-caption>span:first-child,.fanlou-floorplan-empty{border-radius:999px}.drawer-appearance-heading button{border-radius:50%}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .map-detail-label{color:#fff1c8;-webkit-text-stroke-color:rgba(24,28,24,.94);text-shadow:0 1px 3px rgba(0,0,0,.88)}:where(:root:not([data-theme=light])) .map-detail-label--water{color:#c5f1eb;-webkit-text-stroke-color:rgba(9,44,48,.96)}:where(:root:not([data-theme=light])) .map-detail-label--bridge{color:#fff0d4;background:#181c18e6;border-color:#fff0d47a;text-shadow:0 1px 2px #000}:where(:root:not([data-theme=light])) .map-detail-label--junction{color:#ffc0eb;background:#181c18eb;border-color:#ffc0eb94;text-shadow:0 1px 2px #000}:where(:root:not([data-theme=light])) .map-detail-label--direction{color:#ffc0eb}:where(:root:not([data-theme=light])) .map-hotspot{background:#0a1c269e;border-color:#b4e0f185}:where(:root:not([data-theme=light])) .map-hotspot.planned{background:#0d232e94;border-color:#96cde294}:where(:root:not([data-theme=light])) .sheet-title-row .sheet-search-box input::placeholder{color:#c6c8d0;opacity:1}:where(:root:not([data-theme=light])) .sheet-sticky-controls{background:var(--drawer-header-tint, rgba(28, 28, 30, .9));border-bottom-color:#ebebf538}}:root[data-theme=dark] .map-detail-label{color:#fff1c8;-webkit-text-stroke-color:rgba(24,28,24,.94);text-shadow:0 1px 3px rgba(0,0,0,.88)}:root[data-theme=dark] .map-detail-label--water{color:#c5f1eb;-webkit-text-stroke-color:rgba(9,44,48,.96)}:root[data-theme=dark] .map-detail-label--bridge{color:#fff0d4;background:#181c18e6;border-color:#fff0d47a;text-shadow:0 1px 2px #000}:root[data-theme=dark] .map-detail-label--junction{color:#ffc0eb;background:#181c18eb;border-color:#ffc0eb94;text-shadow:0 1px 2px #000}:root[data-theme=dark] .map-detail-label--direction{color:#ffc0eb}:root[data-theme=dark] .map-hotspot{background:#0a1c269e;border-color:#b4e0f185}:root[data-theme=dark] .map-hotspot.planned{background:#0d232e94;border-color:#96cde294}:root[data-theme=dark] .sheet-title-row .sheet-search-box input::placeholder{color:#c6c8d0;opacity:1}:root[data-theme=dark] .sheet-sticky-controls{background:var(--drawer-header-tint, rgba(28, 28, 30, .9));border-bottom-color:#ebebf538}@media(prefers-reduced-transparency:reduce){.map-hotspot{background:#0a1c26}.sheet-sticky-controls{background:var(--drawer-solid-fill, #1c1c1e)}}@media(prefers-color-scheme:dark)and (prefers-reduced-transparency:reduce){:where(:root:not([data-theme=light])) .map-hotspot{background:#0a1c26}:where(:root:not([data-theme=light])) .sheet-sticky-controls{background:#1c1c1e}}@media(prefers-reduced-transparency:reduce){:root[data-theme=dark] .map-hotspot{background:#0a1c26}:root[data-theme=dark] .sheet-sticky-controls{background:#1c1c1e}}@media(forced-colors:active){.map-detail-label{color:CanvasText;-webkit-text-stroke:0;text-shadow:none}.map-detail-label--bridge,.map-detail-label--junction{background:Canvas;border:1px solid CanvasText}.map-hotspot,.expand-map-button{color:CanvasText;background:Canvas;border-color:CanvasText;box-shadow:none;text-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.map-hotspot.selected{color:HighlightText;background:Highlight}.sheet-sticky-controls{background:Canvas;border-bottom-color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--night-title: #f5f8fb;--night-secondary: #c5d1da;--night-placeholder-opacity: 1;--night-marker-line: rgba(180, 224, 241, .68);--night-marker-shadow: 0 1px 2px rgba(0, 0, 0, .82);--night-marker-planned-ink: #d9edf7;--night-marker-planned-line: rgba(174, 216, 234, .68);--night-detail-surface: rgba(8, 13, 18, .24);--night-detail-line: rgba(197, 218, 233, .24);--night-fanlou-surface: rgba(23, 41, 54, .48);--night-fanlou-glass-surface: rgba(23, 41, 54, .12);--night-fanlou-line: rgba(192, 219, 235, .48);--night-fanlou-caption: #c7d5df;--night-fanlou-muted: #b2c2cd;--night-fanlou-nav-ink: #8fcaff;--night-fanlou-badge: #a9d8ff;--night-fanlou-badge-surface: rgba(0, 122, 255, .24);--night-fanlou-badge-line: rgba(148, 205, 246, .52);--night-zone-1: #2c4a5e;--night-zone-2: #304555;--night-zone-3: #2a4a5d;--night-zone-4: #294c61;--night-zone-selected: #176b9d;--night-zone-label: #f3f7fa;--night-zone-secondary: #c5d5df;--night-zone-hint: #c5d5df;--night-zone-outline: #c0d5e2;--night-floor-shell: #263f51;--night-floor-shell-line: #bdd2df;--night-floor-selected: #1c6593;--night-floor-selected-line: #d3edff;--night-floor-shadow: 0 1px 2px rgba(0, 0, 0, .82);--night-floor-ink: #f5f8fb;--night-floor-selected-ink: #ffffff;--night-label: #fff1c8;--night-marker-ink: #f5f8fb;--night-marker-surface: rgba(7, 22, 30, .88);--night-marker-planned: rgba(11, 28, 37, .88);--night-room-classroom: #3b5d73;--night-room-laboratory: #5a506d;--night-room-lounge: #6b5939;--night-room-service: #3b604b;--night-room-restroom: #70434e;--night-room-unmarked: #3d5b6d;--night-room-outline: #b5c9d6;--night-room-ink: #f5f8fb;--night-room-halo: rgba(11, 20, 28, .96);--night-room-atrium: #101c25;--night-room-atrium-line: #91aaba;--night-room-side-classroom: #29465a;--night-room-side-laboratory: #453d59;--night-room-side-lounge: #50452e;--night-room-side-service: #284936;--night-room-side-restroom: #57313b;--night-feature-top: #526a79;--night-feature-side: #344b59;--night-feature-male: #2775a3;--night-feature-female: #a8475d;--night-feature-line: #b3c8d4;--night-feature-side-line: #9eb4c1;--night-feature-restroom-line: #c4e8fb;--night-feature-ink: #d8e6ee;--night-atrium-ink: #c5dbe7;--night-foundation: #243b4b;--night-foundation-line: #b4c9d6;--night-foundation-side: #1a2c38;--night-foundation-side-line: #9db5c4;--night-empty-ink: #d5e0e7;--night-empty-surface: #152530;--night-empty-line: rgba(193, 218, 233, .44);--night-selection-ink: #c8d6df;--night-selection-surface: #12212b;--night-selection-line: rgba(193, 218, 233, .36);--night-selection-strong: #f3f7fa;--night-index-ink: #d8e4eb;--night-index-muted: #b8c7d1;--night-index-button-ink: #edf4f8;--night-index-button: #263f51;--night-index-button-line: rgba(193, 218, 233, .42);--night-index-selected-ink: #ffffff;--night-index-selected: #155d87;--night-index-selected-line: #a9d8f6;--night-large-view: #0d1820;--night-large-view-line: #7893a5;--night-large-view-backdrop: rgba(0, 0, 0, .78)}}:root[data-theme=dark]{--night-title: #f5f8fb;--night-secondary: #c5d1da;--night-placeholder-opacity: 1;--night-marker-line: rgba(180, 224, 241, .68);--night-marker-shadow: 0 1px 2px rgba(0, 0, 0, .82);--night-marker-planned-ink: #d9edf7;--night-marker-planned-line: rgba(174, 216, 234, .68);--night-detail-surface: rgba(8, 13, 18, .24);--night-detail-line: rgba(197, 218, 233, .24);--night-fanlou-surface: rgba(23, 41, 54, .48);--night-fanlou-glass-surface: rgba(23, 41, 54, .12);--night-fanlou-line: rgba(192, 219, 235, .48);--night-fanlou-caption: #c7d5df;--night-fanlou-muted: #b2c2cd;--night-fanlou-nav-ink: #8fcaff;--night-fanlou-badge: #a9d8ff;--night-fanlou-badge-surface: rgba(0, 122, 255, .24);--night-fanlou-badge-line: rgba(148, 205, 246, .52);--night-zone-1: #2c4a5e;--night-zone-2: #304555;--night-zone-3: #2a4a5d;--night-zone-4: #294c61;--night-zone-selected: #176b9d;--night-zone-label: #f3f7fa;--night-zone-secondary: #c5d5df;--night-zone-hint: #c5d5df;--night-zone-outline: #c0d5e2;--night-floor-shell: #263f51;--night-floor-shell-line: #bdd2df;--night-floor-selected: #1c6593;--night-floor-selected-line: #d3edff;--night-floor-shadow: 0 1px 2px rgba(0, 0, 0, .82);--night-floor-ink: #f5f8fb;--night-floor-selected-ink: #ffffff;--night-label: #fff1c8;--night-marker-ink: #f5f8fb;--night-marker-surface: rgba(7, 22, 30, .88);--night-marker-planned: rgba(11, 28, 37, .88);--night-room-classroom: #3b5d73;--night-room-laboratory: #5a506d;--night-room-lounge: #6b5939;--night-room-service: #3b604b;--night-room-restroom: #70434e;--night-room-unmarked: #3d5b6d;--night-room-outline: #b5c9d6;--night-room-ink: #f5f8fb;--night-room-halo: rgba(11, 20, 28, .96);--night-room-atrium: #101c25;--night-room-atrium-line: #91aaba;--night-room-side-classroom: #29465a;--night-room-side-laboratory: #453d59;--night-room-side-lounge: #50452e;--night-room-side-service: #284936;--night-room-side-restroom: #57313b;--night-feature-top: #526a79;--night-feature-side: #344b59;--night-feature-male: #2775a3;--night-feature-female: #a8475d;--night-feature-line: #b3c8d4;--night-feature-side-line: #9eb4c1;--night-feature-restroom-line: #c4e8fb;--night-feature-ink: #d8e6ee;--night-atrium-ink: #c5dbe7;--night-foundation: #243b4b;--night-foundation-line: #b4c9d6;--night-foundation-side: #1a2c38;--night-foundation-side-line: #9db5c4;--night-empty-ink: #d5e0e7;--night-empty-surface: #152530;--night-empty-line: rgba(193, 218, 233, .44);--night-selection-ink: #c8d6df;--night-selection-surface: #12212b;--night-selection-line: rgba(193, 218, 233, .36);--night-selection-strong: #f3f7fa;--night-index-ink: #d8e4eb;--night-index-muted: #b8c7d1;--night-index-button-ink: #edf4f8;--night-index-button: #263f51;--night-index-button-line: rgba(193, 218, 233, .42);--night-index-selected-ink: #ffffff;--night-index-selected: #155d87;--night-index-selected-line: #a9d8f6;--night-large-view: #0d1820;--night-large-view-line: #7893a5;--night-large-view-backdrop: rgba(0, 0, 0, .78)}.poi-heading h1,.places-list strong{color:var(--night-title, #1d1d1f)}.poi-heading small{color:var(--night-secondary, var(--accent))}.sheet-detail{color:var(--night-title, #1d1d1f);background:var(--night-detail-surface, transparent);border-color:var(--night-detail-line, transparent)}.sheet-detail>p,.drawer-count,.places-list small,.places-list b,.empty-results{color:var(--night-secondary, rgba(60, 60, 67, .78))}.search-box input::placeholder,.sheet-title-row .sheet-search-box input::placeholder{color:var(--night-secondary, #000);opacity:var(--night-placeholder-opacity, .62)}.map-hotspot{color:var(--night-marker-ink, #102c3a);background:var(--night-marker-surface, rgba(246, 252, 255, .3));border-color:var(--night-marker-line, rgba(34, 70, 87, .36));text-shadow:var(--night-marker-shadow, 0 1px 1px rgba(255, 255, 255, .44))}.map-hotspot.planned{color:var(--night-marker-planned-ink, #274958);background:var(--night-marker-planned, rgba(234, 246, 251, .28));border-color:var(--night-marker-planned-line, rgba(36, 77, 98, .54))}@media(prefers-reduced-transparency:reduce){.vector-map-viewport .map-hotspot:not(.selected){background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){.vector-map-viewport .map-hotspot:not(.selected){color:CanvasText;background:Canvas;border:1px solid CanvasText;box-shadow:none;text-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.vector-map-viewport .map-hotspot.selected{color:HighlightText;background:Highlight}}.map-detail-label{color:var(--night-label, #514b3f)}.fanlou-explorer{color:var(--night-title, var(--fanlou-ink));background:var(--night-fanlou-glass-surface, rgba(255, 255, 255, .1));border-color:var(--night-fanlou-line, rgba(48, 95, 127, .16))}.fanlou-eyebrow{color:var(--night-fanlou-caption, #567488)}.fanlou-plane-caption{color:var(--night-fanlou-caption, #54748b)}.fanlou-explorer-heading h2{color:var(--night-fanlou-caption, var(--fanlou-ink))}.fanlou-provisional-note{color:var(--night-fanlou-muted, #708797)}.fanlou-zone-action,.fanlou-floor-stack button>span:last-child{color:var(--night-fanlou-muted, #6a8394)}.fanlou-plane-caption>span:first-child{color:var(--night-fanlou-badge, #007aff);background:var(--night-fanlou-badge-surface, rgba(0, 122, 255, .1));border-color:var(--night-fanlou-badge-line, rgba(0, 122, 255, .18))}.fanlou-level-step,.fanlou-text-button{color:var(--night-fanlou-nav-ink, var(--fanlou-blue))}.fanlou-svg-zone--1{fill:var(--night-zone-1, #d3e8f7)}.fanlou-svg-zone--2{fill:var(--night-zone-2, #e1eef7)}.fanlou-svg-zone--3{fill:var(--night-zone-3, #d9ebf8)}.fanlou-svg-zone--4{fill:var(--night-zone-4, #cfe4f3)}.fanlou-svg-zone:hover,.fanlou-svg-zone.is-selected{fill:var(--night-zone-selected, #a9d6fb)}.fanlou-zone-outline{stroke:var(--night-zone-outline, #42677f)}.fanlou-zone-label{fill:var(--night-zone-label, #254d68)}.fanlou-zone-number{fill:var(--night-zone-secondary, #6b8ca4)}.fanlou-zone-hint{fill:var(--night-zone-hint, #68879d)}.fanlou-origin-layer path{fill:var(--night-floor-shell, #d3e8f7);stroke:var(--night-floor-shell-line, #42677f)}.fanlou-origin-layer[data-selected=true] path,.fanlou-origin-layer[data-hovered=true] path{fill:var(--night-floor-selected, #91c9ff);stroke:var(--night-floor-selected-line, #007aff)}.fanlou-layer-preview polygon{fill:var(--night-room-classroom, #a8cce7);stroke:var(--night-room-outline, #648aa6)}.fanlou-layer-preview .fanlou-preview-room--classroom{fill:var(--night-room-classroom, #a8cce7)}.fanlou-layer-preview .fanlou-preview-room--laboratory{fill:var(--night-room-laboratory, #b8b6d8)}.fanlou-layer-preview .fanlou-preview-room--lounge{fill:var(--night-room-lounge, #dacda5)}.fanlou-layer-preview .fanlou-preview-room--service{fill:var(--night-room-service, #b8cec3)}.fanlou-layer-preview .fanlou-preview-room--restroom{fill:var(--night-room-restroom, #efc7c9)}.fanlou-layer-preview .fanlou-preview-room--unmarked{fill:var(--night-room-unmarked, #b5cfdd)}.fanlou-layer-preview .fanlou-preview-feature--stair{fill:#647987}.fanlou-layer-preview .fanlou-preview-feature--male-restroom{fill:#2775a3}.fanlou-layer-preview .fanlou-preview-feature--female-restroom{fill:#a8475d}.fanlou-floor-stack button{color:var(--night-floor-ink, var(--fanlou-ink));text-shadow:var(--night-floor-shadow, none)}.fanlou-floor-stack button[aria-pressed=true],.fanlou-floor-stack button[aria-pressed=true]>span:last-child{color:var(--night-floor-selected-ink, #005eb8)}.fanlou-floor-stack button:hover{color:var(--night-floor-selected-ink, #005eb8)}.fanlou-model-foundation{fill:var(--night-foundation, #e6eef3);stroke:var(--night-foundation-line, #6f8998)}.fanlou-model-foundation-side{fill:var(--night-foundation-side, #a9bac5);stroke:var(--night-foundation-side-line, #637c8c)}.fanlou-model-atrium{fill:var(--night-room-atrium, #f8fbfe);stroke:var(--night-room-atrium-line, #9fb2bf)}.fanlou-room-top{stroke:var(--night-room-outline, #526f81)}.fanlou-room--classroom .fanlou-room-top{fill:var(--night-room-classroom, #c7dff0)}.fanlou-room--laboratory .fanlou-room-top{fill:var(--night-room-laboratory, #e8d4e7)}.fanlou-room--lounge .fanlou-room-top{fill:var(--night-room-lounge, #eee4b7)}.fanlou-room--service .fanlou-room-top{fill:var(--night-room-service, #cfe5d1)}.fanlou-room--restroom .fanlou-room-top{fill:var(--night-room-restroom, #efc7c9)}.fanlou-room--unmarked .fanlou-room-top{fill:var(--night-room-unmarked, #d2e4ed)}.fanlou-room-side{stroke:var(--night-room-outline, #526f81)}.fanlou-room--classroom .fanlou-room-side{fill:var(--night-room-side-classroom, #91b3cc)}.fanlou-room--laboratory .fanlou-room-side{fill:var(--night-room-side-laboratory, #bc9fbd)}.fanlou-room--lounge .fanlou-room-side{fill:var(--night-room-side-lounge, #c6b87e)}.fanlou-room--service .fanlou-room-side{fill:var(--night-room-side-service, #98bc9c)}.fanlou-room--restroom .fanlou-room-side{fill:var(--night-room-side-restroom, #c69497)}.fanlou-room-label{fill:var(--night-room-ink, #173d56);stroke:var(--night-room-halo, rgba(255, 255, 255, .94));stroke-width:var(--night-room-label-stroke, .7px)}.fanlou-feature-top{fill:var(--night-feature-top, #b3c4cf);stroke:var(--night-feature-line, #6c8595)}.fanlou-feature-side{fill:var(--night-feature-side, #8299a7);stroke:var(--night-feature-side-line, #617987)}.fanlou-plan-feature--male-restroom polygon{fill:var(--night-feature-male, #237fbc);stroke:var(--night-feature-restroom-line, #ffffff)}.fanlou-plan-feature--female-restroom polygon{fill:var(--night-feature-female, #ca4f60);stroke:var(--night-feature-restroom-line, #ffffff)}.fanlou-feature-label{fill:var(--night-feature-ink, #294e66)}.fanlou-model-atrium-label{fill:var(--night-atrium-ink, #7b929f)}.fanlou-floorplan-empty{color:var(--night-empty-ink, #7890a0);background:var(--night-empty-surface, rgba(255, 255, 255, .48));border-color:var(--night-empty-line, rgba(59, 104, 136, .24))}.fanlou-room-selection{color:var(--night-selection-ink, #698292);background:var(--night-selection-surface, rgba(68, 112, 143, .07));border-color:var(--night-selection-line, rgba(68, 112, 143, .12))}.fanlou-room-selection strong{color:var(--night-selection-strong, #315b76)}.fanlou-room-index{color:var(--night-index-ink, #527087)}.fanlou-room-index summary span,.fanlou-room-index-list button small{color:var(--night-index-muted, #7b929f)}.fanlou-room-index-list button{color:var(--night-index-button-ink, #31566e);background:var(--night-index-button, #ffffff);border-color:var(--night-index-button-line, rgba(62, 104, 133, .17))}.fanlou-room-index-list button[aria-pressed=true]{color:var(--night-index-selected-ink, #075da5);background:var(--night-index-selected, #e8f4ff);border-color:var(--night-index-selected-line, #5ea7e5)}.fanlou-large-view{color:var(--night-title, var(--fanlou-ink));background:var(--night-large-view, #f8fbfe);border-color:var(--night-large-view-line, var(--fanlou-line))}.fanlou-large-view::backdrop{background:var(--night-large-view-backdrop, rgba(10, 25, 40, .5))}.vector-map-viewport .map-detail-label{font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none}.map-detail-label--bridge,.map-detail-label--junction{background:transparent;border:0;border-radius:0}.vector-map-viewport[data-map-theme=dark] .map-detail-label{color:#f3f7fb;background:transparent;border:0;padding:2px 4px;border-radius:0;font-size:12px;font-weight:600;line-height:1.25;letter-spacing:0;-webkit-text-stroke:0;text-shadow:-1px 0 #14232d,1px 0 #14232d,0 -1px #14232d,0 1px #14232d}.vector-map-viewport[data-map-theme=dark] .map-detail-label--water{color:#c8f4ff;font-size:clamp(12px,calc(var(--app-viewport-width) * .0098),14px);letter-spacing:.08em}.vector-map-viewport[data-map-theme=dark] .map-detail-label--bridge{color:#ffe7b9;font-weight:600}.vector-map-viewport[data-map-theme=dark] .map-detail-label--junction,.vector-map-viewport[data-map-theme=dark] .map-detail-label--direction{color:#ffd2ed}.map-detail-label--delivery{padding:3px 6px;color:#006ac2;background:#ffffffe6;border:1px solid rgba(0,136,255,.42);border-radius:999px;font-weight:850;-webkit-text-stroke:0;text-shadow:none}.vector-map-viewport[data-map-theme=dark] .map-detail-label--delivery{color:#9bd2ff;background:#051422e6;border-color:#66bcff85;text-shadow:none}.restaurant-zone-plane{overflow:visible}.restaurant-stage--floors .restaurant-provisional-note{position:absolute;inset:auto 0 0}.restaurant-zone-map{touch-action:manipulation}.restaurant-stage[data-zone="1"]{--restaurant-focus-x: 26.2%}.restaurant-stage[data-zone="2"]{--restaurant-focus-x: 73.8%}.restaurant-stage--floors .restaurant-zone-map{transform-origin:var(--restaurant-focus-x) 50%;transform:translate(calc(50% - var(--restaurant-focus-x))) scale(var(--restaurant-zone-zoom, 1.5))}.restaurant-stage.is-entering-zone .restaurant-zone-map{animation:fanlou-zone-dive var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-returning-zones .restaurant-zone-map{transform-origin:var(--restaurant-focus-x) 50%;animation:fanlou-zone-dive var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage--floors .restaurant-zone-base{opacity:0;pointer-events:none;transition:opacity .3s ease}.restaurant-stage.is-returning-zones .restaurant-zone-base{animation:fanlou-zone-restore var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-entering-zone .restaurant-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-landing .restaurant-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-to-floors .restaurant-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage--floors .restaurant-origin-layer{opacity:1;transform:translateY(calc(var(--layer-offset) * var(--origin-gap, 58px)))}.restaurant-stage--floorplan .restaurant-origin-layer{opacity:0;transform:translateY(0)}.restaurant-stage--floors .restaurant-origin-projection{transform:matrix(1,0,-.5,.55,0,0)}.restaurant-stage.is-entering-zone .restaurant-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-landing .restaurant-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-to-floors .restaurant-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-landing .restaurant-zone-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-returning-to-floors .restaurant-zone-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage--floorplan .restaurant-zone-plane{visibility:hidden}.restaurant-stage--floors:not(.is-landing):not(.is-returning-to-floors) .restaurant-floorplan-plane{visibility:hidden}.restaurant-stage.is-landing .restaurant-floorplan-plane{animation:fanlou-floor-settle var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-returning-to-floors .restaurant-floorplan-plane{animation:fanlou-floor-settle var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-zones .restaurant-zone-plane{visibility:visible}.restaurant-stage.is-returning-zones .restaurant-zone-map{animation:fanlou-zone-dive var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-zones .restaurant-origin-layer{animation:fanlou-origin-separate var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-zones .restaurant-origin-projection{animation:fanlou-layer-project var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-stage.is-returning-zones .restaurant-floorplan-plane{animation:fanlou-floor-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both;pointer-events:none}.restaurant-stage--floorplan .restaurant-floorplan-plane{width:100%;margin-inline:auto;visibility:visible}.restaurant-stage:is(.is-landing,.is-returning-to-floors) .restaurant-zone-map{animation:none;transform-origin:var(--restaurant-focus-x) 50%;transform:translate(calc(50% - var(--restaurant-focus-x))) scale(var(--restaurant-zone-zoom, 1.5))}.restaurant-stage.is-landing .restaurant-floor-stack li,.restaurant-stage.is-returning-to-floors .restaurant-floor-stack li{animation-name:fanlou-floor-gather}.restaurant-stage.is-landing .restaurant-floorplan-plane,.restaurant-stage.is-returning-to-floors .restaurant-floorplan-plane{animation-name:fanlou-floor-settle}.restaurant-stage.is-landing :is(.restaurant-zone-plane,.fanlou-view-surface--xz),.restaurant-stage.is-returning-to-floors :is(.restaurant-zone-plane,.fanlou-view-surface--xz){animation-name:fanlou-floor-retire}.restaurant-svg-zone{fill:#d9eaf7;stroke:none}.restaurant-svg-zone--heyuan{fill:#cfe4f3}.restaurant-svg-zone:hover,.restaurant-svg-zone.is-selected{fill:#a9d6fb;filter:brightness(1.04)}.restaurant-zone-outline{stroke-width:4}.restaurant-zone-divider{stroke-width:5}.restaurant-zone-label{font-size:39px}.restaurant-zone-hint{font-size:21px}.restaurant-origin-layer{opacity:0;pointer-events:none}.restaurant-layer-footprint{stroke-linejoin:round}.restaurant-stage.is-returning-zones .restaurant-layer-footprint{animation:fanlou-preview-retire var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-elevation-plane{min-height:354px}.restaurant-floor-stack{position:absolute;top:var(--restaurant-label-top, 173px);right:14px;left:14px;width:auto;height:calc(var(--restaurant-floor-count, 2) * 44px)}.restaurant-floor-note{position:absolute;inset:auto 12px 8px}.restaurant-provisional-note{padding-inline:6px}.restaurant-floorplan-plane{box-sizing:border-box;display:flex;height:354px;min-height:0;align-items:center;justify-content:center;padding:10px}.restaurant-floor-drawing{display:grid;width:100%;height:100%;min-height:0;place-items:center}.restaurant-floor-plan-svg{display:block;width:min(100%,500px);height:100%;max-height:100%;margin:auto;overflow:visible}.restaurant-plan-footprint{fill:#e7eff4;stroke:#6f8998;stroke-width:6;stroke-linejoin:round}.restaurant-plan-level{fill:#294e66;font:800 50px -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.restaurant-plan-placeholder{fill:#59798f;font:750 37px -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.restaurant-plan-placeholder-subtitle{fill:#7992a2;font:600 27px -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.taoyuan-shop-plan{display:flex;flex-direction:column;justify-content:center;width:100%;min-width:0;height:auto;margin-top:18px;gap:16px;color:var(--fanlou-ink)}.taoyuan-shop-caption{margin:0;font-size:13px;font-weight:650}.taoyuan-shop-scroll{width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;scroll-snap-type:x proximity;scroll-padding-inline:4px;padding:8px 4px}.taoyuan-shop-row{display:flex;width:max-content;border-bottom:2px solid var(--fanlou-line);padding-bottom:10px;gap:4px}.taoyuan-shop-slot{display:flex;gap:4px;scroll-snap-align:start}.taoyuan-shop-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:94px;min-height:100px;padding:10px 8px;border:1px solid var(--fanlou-line);border-radius:12px;background:var(--liquid-clear-hover);color:inherit;cursor:pointer;touch-action:pan-x pan-y pinch-zoom;-webkit-tap-highlight-color:transparent;transition:background .16s,border-color .16s,transform .12s}.taoyuan-shop-button strong{font-size:14px;line-height:1.5}.taoyuan-shop-button span{font-size:11px;opacity:.7}.taoyuan-shop-button[aria-pressed=true]{border-color:#08f;background:#0088ff29}.taoyuan-shop-button:active{transform:scale(.97);background:#0088ff38}.taoyuan-shop-button:focus-visible{outline:2px solid #0088ff;outline-offset:2px}.taoyuan-shop-entrance{display:grid;place-items:center;width:88px;font-size:13px;border-inline:1px dashed var(--fanlou-line)}.taoyuan-shop-detail{min-height:82px;padding:12px 14px;border:1px solid var(--fanlou-line);border-radius:14px;background:var(--liquid-clear-hover)}.taoyuan-shop-detail h3{margin:0 0 8px;font-size:16px}.taoyuan-shop-detail p{margin:0;font-size:13px;line-height:1.6}.taoyuan-shop-detail>span{display:block;margin-top:8px;font-size:11px;opacity:.65}.restaurant-large-view .restaurant-floor-drawing{height:min(68vh,620px);min-height:280px}.restaurant-large-view .restaurant-floor-plan-svg{width:min(100%,720px)}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .restaurant-svg-zone{fill:#29465a}:where(:root:not([data-theme=light])) .restaurant-svg-zone--heyuan{fill:#26495f}:where(:root:not([data-theme=light])) .restaurant-zone-outline{stroke:#a6c8dc}:where(:root:not([data-theme=light])) .restaurant-zone-divider{stroke:#d7edf9e0}:where(:root:not([data-theme=light])) .restaurant-zone-label,:where(:root:not([data-theme=light])) .restaurant-zone-number,:where(:root:not([data-theme=light])) .restaurant-zone-hint{fill:#e4f2fb}:where(:root:not([data-theme=light])) .restaurant-plan-footprint{fill:#2a4352;stroke:#92afc0}:where(:root:not([data-theme=light])) .restaurant-plan-level,:where(:root:not([data-theme=light])) .restaurant-plan-placeholder{fill:#d8eaf4}:where(:root:not([data-theme=light])) .restaurant-plan-placeholder-subtitle{fill:#a9c1d0}}:root[data-theme=dark] .restaurant-svg-zone{fill:#29465a}:root[data-theme=dark] .restaurant-svg-zone--heyuan{fill:#26495f}:root[data-theme=dark] .restaurant-zone-outline{stroke:#a6c8dc}:root[data-theme=dark] .restaurant-zone-divider{stroke:#d7edf9e0}:root[data-theme=dark] .restaurant-zone-label,:root[data-theme=dark] .restaurant-zone-number,:root[data-theme=dark] .restaurant-zone-hint{fill:#e4f2fb}:root[data-theme=dark] .restaurant-plan-footprint{fill:#2a4352;stroke:#92afc0}:root[data-theme=dark] .restaurant-plan-level,:root[data-theme=dark] .restaurant-plan-placeholder{fill:#d8eaf4}:root[data-theme=dark] .restaurant-plan-placeholder-subtitle{fill:#a9c1d0}@media(forced-colors:active){.restaurant-plan-footprint{fill:Canvas;stroke:CanvasText}.restaurant-plan-level,.restaurant-plan-placeholder,.restaurant-plan-placeholder-subtitle{fill:CanvasText}.restaurant-origin-layer .restaurant-layer-footprint{fill:Canvas;stroke:CanvasText}.restaurant-origin-layer[data-selected=true] .restaurant-layer-footprint,.restaurant-origin-layer[data-hovered=true] .restaurant-layer-footprint{fill:Highlight;stroke:Highlight}}.explore-sheet .sheet-detail{border-radius:18px;padding:14px 12px 16px}.sheet-detail .poi-heading{padding-right:46px}.sheet-detail .poi-heading h1{font-size:21px;line-height:1.4;text-wrap:pretty}.explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer,.coordinate-card,.navigation-summary,.drawer-appearance,.places-list>button){transition:background-color .32s ease,border-color .32s ease,box-shadow .32s ease}.explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer){animation:drawer-content-arrive .32s cubic-bezier(.22,1,.36,1) backwards}@keyframes drawer-content-arrive{0%{opacity:0;transform:translate3d(0,5px,0)}to{opacity:1;transform:translateZ(0)}}.fanlou-level-nav.is-transitioning{opacity:.8}.restaurant-explorer{margin-top:14px;padding:12px}.restaurant-explorer .fanlou-eyebrow{letter-spacing:.04em;line-height:1.5}.restaurant-explorer .fanlou-explorer-heading h2{font-size:17px;line-height:1.4}.restaurant-stage{--camera-zone-top: -65px;--camera-floor-top: 18px;--floor-gather-y: var(--restaurant-layer-middle, 22px);height:390px;transition:height var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1)}.restaurant-stage--zones{height:var(--restaurant-zone-stage-height, 205px)}.restaurant-stage--floors{height:390px}.restaurant-stage[data-zone]{--zone-focus-x: var(--restaurant-focus-x);--zone-focus-y: 50%;--zone-zoom: var(--restaurant-zone-zoom, 1.5)}.restaurant-stage .fanlou-camera-frame{top:18px}.restaurant-stage--zones .fanlou-camera-frame{top:-65px}.restaurant-stage.is-entering-zone .fanlou-camera-frame{animation:fanlou-camera-position var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) both}.restaurant-stage.is-returning-zones .fanlou-camera-frame{animation:fanlou-camera-position var(--detail-motion-duration, .68s) cubic-bezier(.42,0,.58,1) reverse both}.restaurant-zone-label{font-size:47px}.restaurant-zone-hint{font-size:27px}.restaurant-zone-number{font-size:28px}.restaurant-provisional-note{max-width:26em;margin:14px auto 0;font-size:11px;line-height:1.6;text-align:center}.restaurant-floor-note{max-width:25em;margin:0 auto;font-size:11px;line-height:1.6;text-align:center}.expand-map-button{transition:background-color .24s ease,border-color .24s ease,box-shadow .24s ease}.map-card.is-transitioning .expand-map-button{opacity:1;visibility:visible}@media(prefers-reduced-motion:reduce){.explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer){animation:none}.restaurant-stage{transition:none}.restaurant-stage .fanlou-camera-frame{animation-duration:.01ms}}.map-card .expand-map-button{right:var(--map-control-inset, 14px)}.poi-heading-secondary{display:block;margin-top:4px;color:var(--apple-secondary-label);font-size:12px;font-weight:500;letter-spacing:0;line-height:1.5}.restaurant-stage .restaurant-elevation-plane{position:relative}.app-shell{--drawer-panel-tint: rgba(255, 255, 255, .08);--drawer-inset-tint: rgba(238, 248, 255, .12);--drawer-header-tint: rgba(255, 255, 255, .88);--drawer-inner-line: rgba(44, 79, 105, .14);--drawer-inner-shadow: inset 0 1px 0 rgba(255, 255, 255, .38)}@media(prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .app-shell{--drawer-panel-tint: rgba(28, 28, 30, .08);--drawer-inset-tint: rgba(30, 47, 59, .12);--drawer-header-tint: rgba(28, 28, 30, .9);--drawer-inner-line: rgba(189, 219, 238, .16);--drawer-inner-shadow: inset 0 1px 0 rgba(255, 255, 255, .14)}}:root[data-theme=dark] .app-shell{--drawer-panel-tint: rgba(28, 28, 30, .08);--drawer-inset-tint: rgba(30, 47, 59, .12);--drawer-header-tint: rgba(28, 28, 30, .9);--drawer-inner-line: rgba(189, 219, 238, .16);--drawer-inner-shadow: inset 0 1px 0 rgba(255, 255, 255, .14)}:root[data-theme=light] .app-shell{--drawer-surface-rgb: 255, 255, 255;--drawer-solid-fill: #f2f2f7}.explore-sheet .sheet-sticky-controls,.explore-sheet .sheet-pull-handle{background:var(--drawer-header-tint);border-color:var(--drawer-inner-line)}.explore-sheet .sheet-heading strong{color:var(--apple-label)}.explore-sheet .sheet-detail{background:var(--drawer-panel-tint);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.explore-sheet :is(.fanlou-explorer,.parcel-station-explorer,.coordinate-card,.navigation-summary,.drawer-appearance,.places-list>button){background:var(--drawer-inset-tint);border-color:var(--drawer-inner-line);box-shadow:var(--drawer-inner-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.explore-sheet :is(.route-button-app-secondary,.route-button-preview){background:var(--drawer-inset-tint);box-shadow:var(--drawer-inner-shadow)}.vector-map-viewport[data-map-theme=light] .campus-fallback-map{filter:saturate(112%) contrast(106%)}.vector-map-viewport[data-map-theme=light] .campus-fallback-map-blur{filter:saturate(112%) contrast(106%) blur(6px)}@media(prefers-reduced-transparency:reduce){.explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer,.coordinate-card,.navigation-summary,.drawer-appearance,.places-list>button,.sheet-sticky-controls,.sheet-pull-handle){background:var(--drawer-solid-fill)}}@media(forced-colors:active){.explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer,.coordinate-card,.navigation-summary,.drawer-appearance,.places-list>button,.sheet-sticky-controls,.sheet-pull-handle,.route-button-app-secondary,.route-button-preview){color:CanvasText;background:Canvas;border-color:CanvasText;box-shadow:none}}:root{--compat-control-solid: #f2f2f7;--compat-sheet-solid: #ffffff;--compat-glass-shadow: var(--standard-shadow), inset 0 1px 0 var(--glass-reflection), inset 1px 0 0 var(--glass-reflection-soft)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--compat-control-solid: #2c2c2e;--compat-sheet-solid: #1c1c1e}}:root[data-theme=dark]{--compat-control-solid: #2c2c2e;--compat-sheet-solid: #1c1c1e}.expand-map-button,.fanlou-level-step,.fanlou-text-button,.vector-map-viewport .map-hotspot:not(.selected),.vector-map-viewport .map-hotspot.planned:not(.selected){background:var(--liquid-clear-fill);border:0;box-shadow:var(--compat-glass-shadow);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);-webkit-appearance:none;appearance:none}.vector-map-viewport .map-hotspot{will-change:auto}.expand-map-button:is(:hover,:focus-visible,:active),.vector-map-viewport .map-hotspot:not(.selected):is(:hover,:focus-visible),.vector-map-viewport .map-hotspot.planned:not(.selected):is(:hover,:focus-visible),.fanlou-level-step:not(:disabled):is(:hover,:focus-visible,:active),.fanlou-text-button:is(:hover,:focus-visible,:active){background:var(--liquid-clear-hover);box-shadow:var(--compat-glass-shadow)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.expand-map-button,.fanlou-level-step,.fanlou-text-button,.vector-map-viewport .map-hotspot:not(.selected),.vector-map-viewport .map-hotspot.planned:not(.selected){--liquid-clear-fill: var(--compat-control-solid);--liquid-clear-hover: var(--compat-control-solid);background:var(--compat-control-solid)}.app-shell .explore-sheet.has-transparency-control,.sheet-sticky-controls,.sheet-pull-handle{background:var(--compat-sheet-solid)}}@media(prefers-reduced-transparency:reduce){.expand-map-button,.fanlou-level-step,.fanlou-text-button,.vector-map-viewport .map-hotspot:not(.selected),.vector-map-viewport .map-hotspot.planned:not(.selected){--liquid-clear-fill: var(--compat-control-solid);--liquid-clear-hover: var(--compat-control-solid);background:var(--compat-control-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){.expand-map-button,.fanlou-level-step,.fanlou-text-button,.vector-map-viewport .map-hotspot:not(.selected),.vector-map-viewport .map-hotspot.planned:not(.selected){--compat-glass-shadow: none;--liquid-clear-fill: Canvas;--liquid-clear-hover: Canvas;color:CanvasText;background:Canvas;border:1px solid CanvasText;box-shadow:none;text-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}@supports (height: 100dvh){:root{--app-viewport-height: calc(100dvh / var(--page-scale, .75))}}@supports not (overflow: clip){.app-shell,.fanlou-card-content,.fanlou-floorplan-plane,.fanlou-model-scroll{overflow:hidden}}:root[data-page-motion=inactive] .explore-sheet :is(.sheet-detail,.fanlou-explorer,.parcel-station-explorer),:root[data-page-motion=inactive] :is(.fanlou-level-nav,.fanlou-level-label,.fanlou-back-arrow,.fanlou-zoom-step),:root[data-page-motion=inactive] .fanlou-stage,:root[data-page-motion=inactive] .fanlou-stage *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.fanlou-level-nav,.fanlou-stage,.fanlou-stage *{animation:none!important;transition:none!important}}@media(forced-colors:active){:root .fanlou-level-nav[data-depth] .fanlou-level-step,:root[data-theme=dark] .fanlou-level-nav[data-depth] .fanlou-level-step{color:CanvasText;background:Canvas;border:1px solid CanvasText;box-shadow:none}}.sheet-title-row .sheet-tools-button,.sheet-title-row .sheet-search-box input{color:var(--apple-label)}@media(forced-colors:active){:root .sheet-title-row .sheet-tools-button,:root .sheet-title-row .sheet-search-box input,:root[data-theme=dark] .sheet-title-row .sheet-tools-button,:root[data-theme=dark] .sheet-title-row .sheet-search-box input{color:CanvasText}}.drawer-appearance-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(300px,calc(calc(var(--app-viewport-width) * 1) - 32px));max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);margin:auto;padding:4px 8px 4px 20px;color:var(--apple-label);background:#ffffffe6;border:1px solid rgba(255,255,255,.64);border-radius:999px;box-shadow:0 20px 70px #14233733,inset 0 1px #fffc;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);overflow:auto}.drawer-appearance-dialog[open]{display:flex;align-items:center;gap:10px;animation:drawer-appearance-in .2s cubic-bezier(.2,.8,.2,1)}.drawer-appearance-dialog::backdrop{background:#141e2d0f}.drawer-appearance-dialog h2{margin:0;font-size:14px;font-weight:650}.drawer-appearance-dialog .drawer-appearance-accessible,.drawer-appearance-dialog p{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.drawer-appearance-dialog .drawer-appearance-value{display:block;margin-left:auto;text-align:right}.drawer-appearance-dialog output{color:#08f;font-size:18px;font-weight:650;font-variant-numeric:tabular-nums}.drawer-appearance-dialog input{flex:1;min-width:0;width:auto;min-height:44px;touch-action:none}.drawer-appearance-dialog .drawer-appearance-close{display:grid;place-items:center;flex:0 0 36px;width:36px;height:44px;min-height:44px;padding:0;color:inherit;background:transparent;border:0;border-radius:999px}.drawer-appearance-dialog .drawer-appearance-close svg{width:15px;height:15px}.drawer-appearance-dialog .drawer-appearance-heading button{width:44px;height:44px;margin-right:-10px}.drawer-appearance-dialog .drawer-appearance-hint{font-size:10px}.drawer-appearance-dialog .drawer-appearance-heading button svg{width:18px;height:18px}@keyframes drawer-appearance-in{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .drawer-appearance-dialog{background:#1c1c1eeb;border-color:#ffffff29;box-shadow:0 20px 70px #00000052,inset 0 1px #ffffff1a}}:root[data-theme=dark] .drawer-appearance-dialog{background:#1c1c1eeb;border-color:#ffffff29;box-shadow:0 20px 70px #00000052,inset 0 1px #ffffff1a}@media(prefers-reduced-motion:reduce){.drawer-appearance-dialog[open]{display:flex;align-items:center;gap:10px;animation:none}}:root[data-page-motion=inactive] .drawer-appearance-dialog[open]{display:flex;align-items:center;gap:10px;animation:none}@media(prefers-reduced-transparency:reduce){:root .drawer-appearance-dialog{background:var(--apple-app-background);-webkit-backdrop-filter:none;backdrop-filter:none}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root .drawer-appearance-dialog{background:var(--apple-app-background)}}@media(forced-colors:active){:root .drawer-appearance-dialog{color:CanvasText;background:Canvas;border-color:CanvasText;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.drawer-appearance-dialog output{color:Highlight}}.drawer-appearance-dialog .drawer-appearance-percentage{flex:0 0 38px;color:#08f;font-size:13px;font-weight:650;text-align:right;font-variant-numeric:tabular-nums}@media(forced-colors:active){.drawer-appearance-dialog .drawer-appearance-percentage{color:Highlight}}.arts-building-zone-map{display:block;width:100%;height:auto;margin:12px auto 0;touch-action:manipulation}.arts-building-selection{margin:12px 0 0;color:var(--night-fanlou-caption, var(--fanlou-ink));font-size:12px;line-height:1.6;text-align:center}.sheet-sticky-controls{touch-action:none;cursor:ns-resize;user-select:none;-webkit-user-select:none}.sheet-sticky-controls :is(input,select,textarea){touch-action:manipulation;cursor:text;user-select:text;-webkit-user-select:text}.sheet-sticky-controls :is(button,a){touch-action:manipulation;cursor:pointer}@media(orientation:landscape)and (min-width:700px),(orientation:landscape)and (max-height:520px),(horizontal-viewport-segments:2){.sheet-sticky-controls{touch-action:pan-y;cursor:default}}html{zoom:var(--page-scale, .75)}.map-card.is-fullscreen{width:var(--app-viewport-width)}.drawer-appearance-dialog{max-height:calc(var(--app-viewport-height) - 40px)}.sheet-title-row .sheet-tools-native{display:block;text-align:center;text-align-last:center;font:inherit;font-size:22px;line-height:1;padding:0;-webkit-appearance:none;appearance:none;cursor:pointer;touch-action:manipulation;color-scheme:light dark}@media(orientation:landscape)and (min-width:700px),(orientation:landscape)and (max-height:520px),(horizontal-viewport-segments:2){.app-shell.map-is-fullscreen .explore-sheet{z-index:50;opacity:1;pointer-events:auto;transform:none}.app-shell.map-is-fullscreen.landscape-drawer-hidden .explore-sheet{z-index:50;transform:translate3d(calc(100% + var(--landscape-drawer-end-inset, 0px) + 48px),0,0)}.map-card.is-transitioning~.explore-sheet{z-index:50;pointer-events:none}}.map-card.is-fullscreen .expand-map-button{right:var(--map-control-inset, 14px)}.map-card .expand-map-button.map-control-pill{display:flex;flex-direction:column-reverse;width:44px;height:88px;min-height:88px;border-radius:22px;padding:0;gap:0;overflow:hidden;right:calc(var(--map-control-inset, 14px) + 3px)}.map-card .map-control-pill:is(:hover,:active,:focus-within){transform:none}.map-compass-action,.map-fullscreen-action{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;touch-action:manipulation}.map-compass-action:disabled,.map-fullscreen-action:disabled{cursor:default}.map-compass-action:focus-visible,.map-fullscreen-action:focus-visible{outline:2px solid #0088ff;outline-offset:-4px;border-radius:20px}.map-compass-direction{font-size:14px;line-height:1;font-weight:700;color:inherit}.map-control-pill .map-fullscreen-action svg{width:16px;height:16px;stroke-width:2.6}.poi-empty-detail{min-height:clamp(220px,32vh,320px)}.fanlou-room[role=button]{cursor:pointer;pointer-events:auto}.fanlou-room[role=button]:hover .fanlou-room-top,.fanlou-room[role=button]:focus-visible .fanlou-room-top{stroke:#08f;stroke-width:2.5}.fanlou-room[role=button]:focus-visible{outline:2px solid #0088ff;outline-offset:3px}.classroom-reservation-dialog{--reservation-glass: rgba(255,255,255,.56);--reservation-edge: rgba(255,255,255,.78);--reservation-highlight: rgba(255,255,255,.9);--reservation-button: rgba(255,255,255,.38);--reservation-button-edge: rgba(255,255,255,.6);width:min(320px,calc(100vw - 40px));max-height:calc(100dvh - 40px);box-sizing:border-box;padding:28px 22px 20px;border:1px solid var(--reservation-edge);border-radius:30px;color:var(--apple-label);background:var(--reservation-glass);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);box-shadow:0 24px 64px #0000002e,0 6px 18px #00000014,inset 0 1px 0 var(--reservation-highlight),inset 0 -1px #ffffff2e;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.classroom-reservation-dialog[open]{animation:reservation-glass-appear .2s cubic-bezier(.2,.8,.2,1) both}.classroom-reservation-dialog::backdrop{background:#0000002e}.classroom-reservation-dialog h2{margin:0;font-size:20px;font-weight:650;line-height:1.35;letter-spacing:-.025em;text-align:center}.classroom-reservation-dialog p{margin:10px 0 26px;color:var(--apple-secondary-label);font-size:14px;line-height:1.5;text-align:center}.classroom-reservation-actions{display:flex;gap:10px}.classroom-reservation-actions button{flex:1;min-height:46px;padding:10px 16px;border:1px solid var(--reservation-button-edge);border-radius:999px;color:var(--apple-label);background:var(--reservation-button);box-shadow:inset 0 1px 0 var(--reservation-highlight),0 2px 6px #0000000a;font:inherit;font-size:16px;font-weight:600;cursor:pointer;-webkit-appearance:none;appearance:none;touch-action:manipulation;transition:transform .14s ease,background-color .14s ease}.classroom-reservation-actions button[value=yes]{color:var(--apple-blue, #007aff);background:#0088ff24;border-color:#0088ff38}.classroom-reservation-actions button:active{transform:scale(.96)}.classroom-reservation-actions button:focus-visible{outline:2px solid var(--apple-blue, #007aff);outline-offset:3px}.classroom-reservation-notice{color:var(--apple-secondary-label);font-size:13px;line-height:1.5}@keyframes reservation-glass-appear{0%{opacity:0;transform:translateY(6px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}:root[data-theme=dark] .classroom-reservation-dialog{--reservation-glass: rgba(34,34,38,.6);--reservation-edge: rgba(255,255,255,.22);--reservation-highlight: rgba(255,255,255,.25);--reservation-button: rgba(255,255,255,.09);--reservation-button-edge: rgba(255,255,255,.18)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .classroom-reservation-dialog{--reservation-glass: rgba(34,34,38,.6);--reservation-edge: rgba(255,255,255,.22);--reservation-highlight: rgba(255,255,255,.25);--reservation-button: rgba(255,255,255,.09);--reservation-button-edge: rgba(255,255,255,.18)}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.classroom-reservation-dialog{background:var(--apple-app-background)}}@media(prefers-reduced-transparency:reduce){.classroom-reservation-dialog{background:var(--apple-app-background);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-reduced-motion:reduce){.classroom-reservation-dialog[open]{animation:none}.classroom-reservation-actions button{transition:none}}:root[data-page-motion=inactive] .classroom-reservation-dialog[open]{animation:none}@media(forced-colors:active){:root .classroom-reservation-dialog{color:CanvasText;background:Canvas;border-color:CanvasText;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}:root .classroom-reservation-dialog p{color:CanvasText}:root .classroom-reservation-actions button{color:ButtonText;background:ButtonFace;border-color:ButtonText;box-shadow:none}}.fanlou-reservation-hint{min-height:20px;margin:4px 2px 8px;color:var(--apple-secondary-label);font-size:13px;line-height:20px;opacity:0;visibility:hidden;transition:opacity .16s ease}.fanlou-reservation-hint[data-visible=true]{opacity:1;visibility:visible}@media(prefers-reduced-motion:reduce){.fanlou-reservation-hint{transition:none}}.building-stage{--camera-floor-top: 83px}.building-stage.fanlou-stage--floors{height:var(--building-floor-stage-height, 520px)}.building-stage.fanlou-stage--floorplan,.building-stage.is-landing{height:var(--building-floorplan-stage-height, 461px)}.building-stage.is-returning-zones{height:var(--fanlou-zone-stage-height)}.building-stage .fanlou-card-content{overflow:visible}.building-stage .fanlou-floorplan-plane{height:auto;min-height:354px;overflow:visible}.building-stage .fanlou-elevation-plane>.fanlou-provisional-note{position:absolute;inset:auto 0 0}.building-stage .fanlou-floor-stack{height:calc(var(--building-floor-stage-height) - 230px)}.building-stage .fanlou-origin-layer path{stroke-width:2}.building-stage .fanlou-floor-stack li{z-index:auto}.building-stage .fanlou-zone-map{width:var(--building-map-width);max-height:none}.building-stage .fanlou-origin-layer{opacity:0}.building-stage.fanlou-stage--floors .fanlou-origin-layer{opacity:1}.building-stage.is-landing .fanlou-origin-layer:not([data-selected=true]){opacity:0}.building-stage.fanlou-stage--floorplan .fanlou-origin-layer{opacity:0}.building-stage .fanlou-floor-stack li{--floor-gather-y: var(--building-layer-middle)}.building-zone-map{display:block;height:auto;touch-action:manipulation}.building-zone-label{font-size:26px;font-weight:750;fill:var(--fanlou-ink);pointer-events:none}.building-zone-map .fanlou-svg-zone path{fill:inherit;stroke:var(--fanlou-line);stroke-width:2;stroke-linejoin:round}.building-zone-map .fanlou-svg-zone:focus-visible{outline:none}.building-zone-map .fanlou-svg-zone:focus-visible path{stroke:#08f;stroke-width:5}.building-floor-plan{min-height:230px;display:flex;align-items:center;padding:16px 0}.building-floor-plan svg{max-height:520px}.building-source-note{padding:8px 12px;font-size:11px;line-height:1.7;color:var(--muted);text-align:center}.building-missing-plan{min-height:230px;display:grid;align-content:center;justify-items:center;gap:12px;color:var(--muted)}.building-missing-plan p{margin:0;font-size:13px}.building-large-plan{padding:24px;width:100%;max-width:100%;overflow:auto;touch-action:pan-x pan-y}.building-large-plan svg{max-height:calc(var(--app-viewport-height) - 150px)}@media(forced-colors:active){.building-zone-map .fanlou-svg-zone path{fill:Canvas;stroke:CanvasText}.building-zone-label{fill:CanvasText}}:root .app-shell .explore-sheet.has-transparency-control :is(.sheet-sticky-controls,.sheet-pull-handle){background:rgba(var(--drawer-surface-rgb),var(--drawer-background-alpha, .18));-webkit-backdrop-filter:var(--drawer-background-filter, saturate(180%) blur(30px));backdrop-filter:var(--drawer-background-filter, saturate(180%) blur(30px))}@media(prefers-reduced-transparency:reduce){:root .app-shell .explore-sheet.has-transparency-control :is(.sheet-sticky-controls,.sheet-pull-handle){background:var(--drawer-solid-fill);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(forced-colors:active){:root .app-shell .explore-sheet.has-transparency-control :is(.sheet-sticky-controls,.sheet-pull-handle){color:CanvasText;background:Canvas;border-color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}}.poi-footprint-detail{padding:20px 16px 12px}.poi-footprint-svg{display:block;width:100%;height:clamp(210px,29vh,300px);overflow:visible}.poi-footprint-svg path{vector-effect:non-scaling-stroke;stroke-width:1.6px}.tianyuan-service-marker{cursor:pointer;outline:none}.community-service-edge{fill:none;stroke:#08f!important;stroke-width:2.4px!important;stroke-linecap:round;pointer-events:none}.fanlou-section-label{fill:var(--night-fanlou-muted, #708797);font-weight:700;pointer-events:none}.tianyuan-service-detail .poi-footprint-svg{height:clamp(320px,42vh,420px)}.tianyuan-service-annotations{min-width:0;animation:tianyuan-page-enter .18s ease-out}.tianyuan-service-entry,.tianyuan-service-back{color:var(--glass-text, #000);font:600 13px PingFang SC,sans-serif;cursor:pointer}.tianyuan-service-entry{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;margin-top:12px;padding:12px 14px;border:1px solid var(--drawer-inner-border, rgba(128,128,128,.16));border-radius:14px;background:var(--drawer-inner-fill, rgba(128,128,128,.06))}.tianyuan-service-entry span{color:var(--muted);font-weight:500}.tianyuan-service-back{padding:8px 0;margin-bottom:12px;border:0;background:transparent;color:#08f}@keyframes tianyuan-page-enter{0%{opacity:0}to{opacity:1}}.tianyuan-service-annotations .tianyuan-service-selection{margin-top:0;text-align:left}.tianyuan-service-annotations .tianyuan-service-list button{gap:7px;padding:8px;overflow-wrap:anywhere}.tianyuan-service-annotations .tianyuan-service-list button>span{flex-basis:20px;height:20px}.tianyuan-service-marker circle{fill:var(--drawer-solid-fill, #f2f2f7);stroke:#08f;stroke-width:1;transition:fill .18s ease,stroke-width .18s ease}.tianyuan-service-marker text{fill:var(--glass-text, #000);font:750 6.5px PingFang SC,sans-serif;pointer-events:none}.tianyuan-service-marker:hover circle,.tianyuan-service-marker.is-selected circle{fill:#08f;stroke-width:1.8}.tianyuan-service-marker.is-selected text{fill:#08f}.tianyuan-service-marker:focus-visible circle{stroke-width:2}.tianyuan-service-selection{margin:14px 0 10px;min-height:20px;color:var(--glass-text, #000);font-size:13px;font-weight:650;text-align:center;overflow-wrap:anywhere}.tianyuan-service-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.tianyuan-service-list button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--drawer-inner-border, rgba(128,128,128,.16));border-radius:14px;background:var(--drawer-inner-fill, rgba(128,128,128,.06));color:var(--glass-text, #000);font:500 12px/1.5 PingFang SC,sans-serif;text-align:left;cursor:pointer;transition:background .18s ease,border-color .18s ease}.tianyuan-service-list button>span{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:#0088ff1f;color:#08f;font-size:11px;font-weight:750}.tianyuan-service-list button[aria-pressed=true]{border-color:#08f;background:#0088ff1f}.tianyuan-service-list button:focus-visible{outline:2px solid #0088ff;outline-offset:2px}@media(prefers-reduced-motion:reduce){.tianyuan-service-marker circle,.tianyuan-service-list button{transition:none}.tianyuan-service-annotations{animation:none}}.yunda-rack-plan{min-width:0}.yunda-rack-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y;border:1px solid var(--drawer-inner-border, rgba(128,128,128,.16));border-radius:16px;margin-top:12px;scrollbar-width:thin}.yunda-rack-svg{display:block;width:max(100%,980px);height:auto}.yunda-rack{cursor:pointer;outline:none}.yunda-rack-hit{fill:transparent}.yunda-rack-body{fill:var(--night-zone-3, #e3d0b8);stroke:var(--night-foundation-line, #755d49);stroke-width:1.5;transition:fill .18s ease}.yunda-rack text{fill:var(--night-zone-label, #594b3d);font:750 19px PingFang SC,sans-serif;pointer-events:none}.yunda-rack:hover .yunda-rack-body,.yunda-rack.is-selected .yunda-rack-body{fill:var(--night-zone-selected, #a9d6fb)}.yunda-rack:focus-visible .yunda-rack-body{stroke:#08f;stroke-width:3}.yunda-aisle-label{fill:var(--muted);font:16px PingFang SC,sans-serif}.yunda-rack-supplement{margin:18px 0;padding:12px;border:1px solid var(--drawer-inner-border, rgba(128,128,128,.16));border-radius:16px}.yunda-rack-supplement svg{display:block;width:min(100%,360px);height:auto;margin:auto}.yunda-reference-wall{fill:none;stroke:var(--muted);stroke-width:2;stroke-dasharray:5 5;opacity:.4}.yunda-rack-dialog{width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 40px);box-sizing:border-box;overflow:auto;padding:20px;border-radius:24px;border:1px solid var(--drawer-inner-border, rgba(128,128,128,.2));background:var(--drawer-solid-fill, #f2f2f7);color:var(--glass-text, #000)}.yunda-rack-dialog::backdrop{background:#00000059;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@media(prefers-reduced-motion:reduce){.yunda-rack-body{transition:none}}@media(forced-colors:active){.yunda-rack-body{fill:Canvas;stroke:ButtonText}.yunda-rack text,.yunda-aisle-label{fill:CanvasText}.yunda-rack.is-selected .yunda-rack-body{fill:Highlight}}.yuantong-rack-svg,.zhongtong-rack-svg{display:block;width:100%;height:clamp(360px,45vh,480px);margin:12px auto}.yunda-rack-dialog .zhongtong-rack-svg{height:min(650px,70vh)}.yuantong-rack-footprint{fill:var(--night-zone-1, rgba(234,217,197,.22));stroke:var(--night-foundation-line, #755d49);stroke-width:1.5;stroke-linejoin:round}.yuantong-rack-pending{fill:var(--muted);font:13px PingFang SC,sans-serif}.yunda-rack-dialog .yuantong-rack-svg{height:min(650px,70vh)}@media(forced-colors:active){.yuantong-rack-footprint{fill:Canvas;stroke:CanvasText}.yuantong-rack-pending{fill:CanvasText}}.yuantong-locker-strip{fill:var(--night-zone-2, rgba(128,140,153,.16));stroke:var(--muted);stroke-width:.8;stroke-dasharray:3 3}.yuantong-locker-label{fill:var(--muted);font:12px PingFang SC,sans-serif}.zhongtong-rack-svg .yuantong-locker-label{fill:var(--night-zone-label, #594b3d);font-size:15px;font-weight:600}@media(forced-colors:active){.yuantong-locker-strip{fill:Canvas;stroke:CanvasText}.yuantong-locker-label{fill:CanvasText}}.detail-floor-picker{position:absolute;z-index:5;left:4px;top:50%;width:80px;transform:translateY(-50%);opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s}.detail-floor-picker[data-visible=true]{opacity:1;visibility:visible}.detail-floor-picker-clip{min-height:0;overflow:hidden}.detail-floor-picker-content{padding:4px}.detail-floor-picker-label{display:none;margin:0 4px 8px;color:var(--apple-secondary-label);font-size:13px}.detail-floor-picker-grid{display:grid;grid-template-columns:1fr;gap:6px}.detail-floor-picker-grid button{min-width:0;min-height:64px;padding:10px 8px;border:1px solid var(--liquid-clear-border, rgba(128,128,128,.22));border-radius:18px;color:var(--fanlou-ink);background:var(--liquid-clear-hover);font-size:16px;font-weight:750;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,transform .12s ease}.detail-floor-picker-grid button[aria-pressed=true]{color:var(--fanlou-blue);background:#0088ff29;border-color:#0088ff80}.detail-floor-picker-grid button:active{transform:scale(.96);background:#0088ff38}.detail-floor-picker-grid button:focus-visible{outline:3px solid #0088ff;outline-offset:2px}@media(hover:hover)and (pointer:fine){.detail-floor-picker-grid button:hover{background:#0088ff1f}}@media(prefers-reduced-motion:reduce){.detail-floor-picker,.detail-floor-picker-grid button{transition:none}}@media(forced-colors:active){.detail-floor-picker-grid button{color:ButtonText;background:ButtonFace;border-color:ButtonText}.detail-floor-picker-grid button[aria-pressed=true]{color:HighlightText;background:Highlight}}.fanlou-stage>.fanlou-camera-frame{transition:left .22s ease}.fanlou-stage--floors:not(.is-returning-zones)>.fanlou-camera-frame{left:92px}.fanlou-stage .fanlou-view-surface--xz{pointer-events:none;visibility:hidden}.fanlou-stage .fanlou-floor-stack{visibility:hidden}.fanlou-stage--floors:not(.is-landing):not(.is-returning-to-floors):not(.is-returning-zones) .fanlou-origin-layer[role=button]{pointer-events:auto;cursor:pointer;touch-action:manipulation}.fanlou-origin-layer[role=button]:focus-visible{outline:none}.fanlou-origin-layer[role=button]:focus-visible path{stroke:#08f;stroke-width:6px}.fanlou-origin-layer[role=button]:active path{fill:var(--night-floor-selected, #91c9ff)}@media(prefers-reduced-motion:reduce){.fanlou-stage>.fanlou-camera-frame{transition:none}}.detail-floor-note{position:absolute;right:12px;bottom:14px;left:96px;z-index:4;margin:0;font-size:12px;line-height:1.5;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease}.fanlou-stage--floors:not(.is-landing):not(.is-returning-to-floors):not(.is-returning-zones)>.detail-floor-note{opacity:1;visibility:visible}@media(prefers-reduced-motion:reduce){.detail-floor-note{transition:none}}.library-explorer .building-large-plan .fanlou-floor-model{min-width:0;max-width:100%}@media(max-width:600px){.sheet-category-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.sheet-category-buttons button{min-width:0;min-height:60px;padding:6px 3px;font-size:14px;white-space:nowrap}}@media(pointer:coarse){.fanlou-level-nav[data-depth] .fanlou-level-step,.fanlou-text-button{min-height:60px;touch-action:manipulation}.fanlou-zone-map [role=button]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}}@media(prefers-reduced-motion:reduce){.taoyuan-shop-button{transition:none}}.detail-load-status{min-height:220px;display:grid;place-content:center;gap:12px;color:var(--apple-secondary-label);text-align:center}.detail-load-status button{min-height:60px;border:1px solid var(--drawer-inner-border);border-radius:16px;background:var(--drawer-inner-fill);color:var(--apple-label);font:inherit;padding:10px 20px;touch-action:manipulation}
