:root{--ui-scale:1;--font:system-ui, -apple-system, "Segoe UI Variable Text", "Segoe UI", Roboto, "Hiragino Sans", "Noto Sans", "Noto Sans JP", "Noto Sans KR", "Noto Sans SC", Helvetica, Arial, sans-serif;--ink:#1d1f22;--ink-2:#4b4f55;--ink-3:#717680;--line:#14181e14;--line-2:#14181e24;--surface:#fff;--surface-2:#f4f4f3;--glass:#ffffffb8;--glass-strong:#ffffffdb;--glass-filter:blur(14px) saturate(.85);--glass-border:1.5px solid #fffffffa;--dark-pill:#2f3133;--chip:#fff;--chip-shadow:0 1px 4px #0000001f;--shadow-card:0 6px 22px #00000029;--shadow-soft:0 2px 10px #00000024, inset 0 0 0 1px #ffffff73;--radius:18px;--radius-sm:12px;--accent:#e71e45;--accent-2:#7b3fe4;--blue:#1a56ff;--blue-soft:#cfe0ff;--dock-w:390px;--gap:24px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--map-controls-right:max(16px, calc(env(safe-area-inset-right) + 12px));--map-controls-bottom:max(20px, calc(env(safe-area-inset-bottom) + 12px))}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--ink);touch-action:none;overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;background:#e6e8ea;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,textarea,select{font:inherit;color:inherit}a{color:#2457d6}.ic{flex:none;display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#app{-webkit-user-select:none;user-select:none;position:fixed;inset:0}.map-root{position:absolute;inset:0;overflow:hidden}.map-canvas{outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.map-root[data-time=night] .pin-label-title{color:#f3f4f7;text-shadow:0 0 3px #1c2230,0 0 3px #1c2230,0 0 6px #1c2230}.map-root[data-time=night] .pin-label-symbol{color:#f3f4f7}.map-root[data-time=night]~.logo{color:#eceff59e}.map-root[data-time=night]~.attribution{color:#eceff580}.label-layer,.marker-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.pin-label{pointer-events:auto;cursor:pointer;border-radius:13px;align-items:center;gap:3px;min-height:26px;padding:2px 9px 2px 6px;transition:background .15s,box-shadow .15s,opacity .2s;display:flex;position:absolute;top:0;left:0}.pin-label.is-visible{will-change:transform}.pin-label-symbol{color:#1d1f22;filter:drop-shadow(0 0 1.5px #fff)drop-shadow(0 0 1.5px #fff);place-items:center;width:18px;height:18px;display:grid}.pin-label-symbol svg{width:16px;height:16px}.pin-label-title{letter-spacing:.01em;color:#22252a;-webkit-line-clamp:2;overflow-wrap:anywhere;text-shadow:0 0 2px #fff,0 0 2px #fff,0 0 3px #fff,0 0 4px #fff;-webkit-box-orient:vertical;max-width:108px;font-size:12px;font-weight:700;line-height:1.15;display:-webkit-box;overflow:hidden}.pin-label--dot .pin-label-symbol:before{content:"";background:#1d1f22;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 2px #fff}.pin-label.is-hover,.pin-label.is-selected{z-index:2;background:#fff;box-shadow:0 2px 10px #0000002e}.pin-label.is-hover .pin-label-title,.pin-label.is-selected .pin-label-title{-webkit-line-clamp:3;max-width:220px;text-shadow:none;color:#1d1f22}.pin-label.is-hover .pin-label-symbol,.pin-label.is-selected .pin-label-symbol{filter:none}.label-layer.has-selection .pin-label:not(.is-selected):not(.is-hover){opacity:.55}.pin-label-short{letter-spacing:.01em;color:#22252a;white-space:nowrap;text-overflow:ellipsis;max-width:150px;font-size:12px;font-weight:700;display:none;overflow:hidden}.pin-label.has-short:not(.is-selected):not(.is-hover) .pin-label-title{display:none}.pin-label.has-short:not(.is-selected):not(.is-hover) .pin-label-short{display:inline}:is(.label-layer.minor-icons .pin-label.is-minor:not(.is-selected):not(.is-hover):not(:has(.pin-label-badge)) .pin-label-title,.label-layer.minor-icons .pin-label.is-minor:not(.is-selected):not(.is-hover):not(:has(.pin-label-badge)) .pin-label-short){display:none}.label-layer.minor-icons .pin-label.is-minor:not(.is-selected):not(.is-hover):not(:has(.pin-label-badge)){padding-right:5px}.label-layer.is-compact .pin-label:not(.is-selected):not(.is-hover) .pin-label-title{display:none}.label-layer.is-compact .pin-label:not(.is-selected):not(.is-hover) .pin-label-short{display:inline}.label-layer.is-compact .pin-label:not(.is-selected):not(.is-hover){padding-right:5px}.label-layer.is-compact .pin-label:not(.has-short):has(.pin-label-badge):not(.is-selected):not(.is-hover) .pin-label-title{max-width:120px;display:-webkit-box}.label-layer.is-compact .pin-label:not(.is-selected):not(.is-hover) .pin-label-badge{margin-left:2px}#app.has-route .label-layer .pin-label{opacity:.4}.pin-label--tone{background:linear-gradient(100deg, color-mix(in srgb, var(--label-tone) 30%, #fff) 0%, #fffffff0 70%);border:1px solid color-mix(in srgb, var(--label-tone) 40%, #fff);padding:2px 8px 2px 5px;box-shadow:0 1px 5px #141e2829}.pin-label--tone .pin-label-symbol{color:color-mix(in srgb, var(--label-tone) 80%, #000);filter:none}.pin-label--tone .pin-label-title{text-shadow:none}.map-root[data-time=night] .pin-label--tone .pin-label-title{color:#22252a;text-shadow:none}.map-root[data-time=night] .pin-label--tone .pin-label-symbol{color:color-mix(in srgb, var(--label-tone) 80%, #000)}.pin-label-badge{white-space:nowrap;color:#fff;background:#1c7ed6;border-radius:9px;margin-left:4px;padding:1px 6px;font-size:10.5px;font-weight:800;line-height:15px}.pin-label-badge.is-ok{background:#2f9e44}.pin-label-badge.is-mid{background:#e8890c}.pin-label-badge.is-high{background:#e03131}.pin-label-badge.is-off{background:#868e96}.area-label-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.area-label{white-space:nowrap;pointer-events:none;font-size:calc(12.5px * var(--area-scale,1));letter-spacing:.03em;color:#2d4a32;background:#fffc;border-radius:12px;padding:3px 10px;font-weight:750;position:absolute;top:0;left:0;box-shadow:0 1px 3px #00000014}.map-root[data-time=night] .area-label{color:#e9edf6;background:#1c22308c}.map-marker{will-change:transform;position:absolute;top:0;left:0}.callout{pointer-events:auto;transform-origin:50% 100%}.callout-bubble{background:#fff 50%/cover no-repeat;border:3px solid #fff;border-radius:50%;width:56px;height:56px;animation:.35s cubic-bezier(.2,1.4,.4,1) pop;position:absolute;bottom:18px;left:0;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 14px #00000047}.callout-bubble:after{content:"";border:7px solid #0000;border-top-color:#fff;width:0;height:0;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.callout-pulse{border:2px solid #e71e45b3;border-radius:50%;width:28px;height:28px;animation:1.6s ease-out infinite pulse;position:absolute;top:-14px;left:-14px}@keyframes pulse{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(2.2)}}@keyframes pop{0%{opacity:0;transform:translate(-50%)scale(.3)}to{opacity:1;transform:translate(-50%)scale(1)}}.route-pin{pointer-events:none}.route-origin{box-sizing:border-box;background:#fff;border:4.5px solid #2b6cf6;border-radius:50%;width:18px;height:18px;position:absolute;top:-9px;left:-9px;box-shadow:0 1px 4px #00000059}.route-dest{filter:drop-shadow(0 2px 3px #0000004d);width:28px;height:38px;position:absolute;top:-37px;left:-14px}.route-dest svg{width:100%;height:100%;display:block}.route-pin.is-from{--pin-color:#2b6cf6}.route-pin.is-to{--pin-color:#d93025}.route-pin-label{text-align:center;white-space:nowrap;pointer-events:auto;background:#fff;border-radius:10px;min-width:56px;padding:4px 10px 5px;position:absolute;left:0;transform:translate(-50%);box-shadow:0 2px 10px #0000002e}.route-pin.is-from .route-pin-label{bottom:16px}.route-pin.is-to .route-pin-label{bottom:44px}.marker-clamp{translate:var(--clamp-x,0px) 0}.route-pin-kind{color:var(--pin-color,var(--accent));justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:700;display:flex}.route-pin-kind small{color:var(--ink-3);font-weight:600}.route-pin-name{text-overflow:ellipsis;max-width:160px;font-size:12.5px;font-weight:700;overflow:hidden}.route-pin.is-other-floor{opacity:.45}.transfer-tag{pointer-events:auto;color:#fff;white-space:nowrap;background:#181c1cc7;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;font-size:11.5px;font-weight:700;display:flex;transform:translate(-50%,-140%);box-shadow:0 2px 8px #00000040}.transfer-tag svg{width:14px;height:14px}.transfer-pin .transfer-tag{width:max-content;position:absolute;top:0;left:0}.user-dot{pointer-events:none;width:0;height:0}.user-dot:before{content:"";background:#1a56ff29;border-radius:50%;width:48px;height:48px;animation:2s ease-in-out infinite halo;position:absolute;top:-24px;left:-24px}.user-dot:after{content:"";background:var(--blue);border:3px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;top:-9px;left:-9px;box-shadow:0 2px 6px #00000059}.user-dot.is-other-floor:after{background:#8aa6ff}@keyframes halo{0%,to{transform:scale(.85)}50%{transform:scale(1.15)}}.walker-dot{width:0;height:0}.walker-dot:after{content:"";border:5px solid var(--accent-2);background:#fff;border-radius:50%;width:20px;height:20px;position:absolute;top:-10px;left:-10px;box-shadow:0 2px 10px #7b3fe499}.share-pin{pointer-events:auto}.share-pin-head{width:28px;height:38px;color:var(--accent);filter:drop-shadow(0 2px 3px #0000004d);position:absolute;top:-38px;left:-14px}.share-pin-pop{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#181c1cdb;border-radius:14px;gap:4px;padding:6px;display:flex;position:absolute;bottom:46px;left:0;transform:translate(-50%);box-shadow:0 6px 18px #0000004d}.share-pin-pop button{white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;font-weight:600;display:flex}.share-pin-pop button:hover{background:#ffffff24}.floor-tag{pointer-events:auto;box-shadow:var(--shadow-soft);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800;transform:translate(-50%,-50%)}.floor-tag:hover{background:var(--dark-pill);color:#fff}.glass{background:var(--glass);-webkit-backdrop-filter:var(--glass-filter);border:var(--glass-border);box-shadow:var(--shadow-card)}.icon-btn{width:44px;height:44px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.icon-btn:hover{background:#0000000d}.icon-btn:active{transform:scale(.94)}.icon-btn[disabled]{opacity:.35;cursor:default}.chip{background:var(--chip);height:36px;box-shadow:var(--chip-shadow);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.chip:hover{background:#f6f6f6}.chip.is-active{background:var(--dark-pill);color:#fff}.chip .ic{width:17px;height:17px}.chip small{opacity:.6;font-size:12px;font-weight:600}.chips{scrollbar-width:none;scroll-snap-type:x proximity;flex:none;gap:8px;padding:4px 20px 8px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.btn-dark{background:var(--dark-pill);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 18px;font-size:13.5px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0003}.btn-dark:hover{background:#1c1d1f}.btn-light{height:40px;box-shadow:var(--chip-shadow);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13.5px;font-weight:700;display:inline-flex}.map-pills{z-index:9;top:calc(max(var(--gap), calc(var(--safe-top) + 8px)) + 10px);left:calc(var(--gap) * 2 + var(--dock-w));scrollbar-width:none;pointer-events:none;gap:8px;padding:2px 2px 6px;display:flex;position:absolute;right:84px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.map-pills::-webkit-scrollbar{display:none}.map-pills>*{pointer-events:auto}.map-pill{height:36px;box-shadow:var(--chip-shadow);color:var(--ink-2);background:#fffffff0;border-radius:18px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.map-pill svg{color:var(--pill,var(--ink-2))}.map-pill.is-active{background:var(--pill,#1d1f22);color:#fff}.map-pill.is-active svg{color:#fff}.map-pill:not(.is-active):hover{background:#fff}#app:has(.main-card.is-open) .map-pills{opacity:0;visibility:hidden}.single-floor .floor-switcher,.single-floor .floor-badge{display:none!important}.dock{left:var(--gap);top:max(var(--gap), calc(var(--safe-top) + 8px));width:var(--dock-w);max-height:calc(100% - var(--gap) * 2);z-index:10;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:absolute}.dock>*{pointer-events:auto}.card{border-radius:var(--radius);overflow:hidden}.main-card{flex-direction:column;min-height:0;max-height:100%;transition:border-radius .2s;display:flex}.main-card.is-open{background:#ffffffe6}.bar{flex:none;align-items:center;gap:2px;height:56px;padding:0 8px 0 6px;display:flex;position:relative}.bar-input{resize:none;background:0 0;border:0;outline:0;flex:1;min-width:0;height:40px;padding:0 6px;font-size:16px;line-height:40px}.bar-input::placeholder{color:#95999e}.bar-sparkle{color:#444;flex:none;place-items:center;width:28px;display:grid}.bar-sparkle.is-thinking{color:var(--accent-2);animation:1.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.bar-handle{cursor:pointer;place-items:center;width:40px;height:14px;display:grid;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.bar-handle:before{content:"";background:#0000002e;border-radius:4px;width:40px;height:4px}.bar-handle:after{content:"";position:absolute;inset:-8px -12px}.main-card:not(.is-open){overflow:visible}.bar-placeholder{color:#95999e;pointer-events:none;white-space:nowrap;align-items:center;height:56px;font-size:16px;display:flex;position:absolute;top:0;left:92px;right:60px;overflow:hidden}.bar-placeholder span{text-overflow:ellipsis;animation:.5s both phIn;display:block;overflow:hidden}@keyframes phIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.menu-btn-lines{width:18px;height:14px;display:block;position:relative}.menu-btn-lines:before,.menu-btn-lines:after{content:"";background:currentColor;border-radius:2px;width:18px;height:2px;transition:transform .25s,top .25s;position:absolute;left:0}.menu-btn-lines:before{top:3px}.menu-btn-lines:after{top:9px}.is-open .menu-btn-lines:before{top:6px;transform:rotate(45deg)}.is-open .menu-btn-lines:after{top:6px;transform:rotate(-45deg)}.panel{border-top:1px solid var(--line);background:#ffffff59;flex-direction:column;flex:1;min-height:0;display:flex}.panel-scroll{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.panel-head{align-items:center;gap:6px;padding:8px 10px;display:flex}.panel-title{border-bottom:1px solid var(--line);background:#ffffff80;padding:14px 20px 10px;font-size:16px;font-weight:700}.menu-list{padding:8px}.menu-item{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;height:46px;padding:0 12px;font-size:14.5px;font-weight:600;display:flex}.menu-item:hover{background:#ffffff8c}.menu-item>span:not(.menu-badge){flex:1}.menu-badge{min-width:30px;height:23px;box-shadow:var(--chip-shadow);background:#fff;border-radius:999px;place-items:center;padding:0 8px;font-size:12.5px;font-weight:700;display:grid}.menu-row{align-items:center;gap:12px;min-height:46px;padding:0 12px;font-size:14.5px;font-weight:600;display:flex}.menu-row>span{flex:1}.menu-row .segmented{margin-left:32px}.select{appearance:none;border:1px solid var(--line-2);background:#ffffffb3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23333' stroke-width='1.6'/%3E%3C/svg%3E") right 14px center no-repeat;border-radius:999px;min-width:140px;height:36px;padding:0 34px 0 16px;font-size:13.5px;font-weight:600}.segmented{background:#0000000f;border-radius:999px;gap:2px;max-width:100%;padding:3px;display:inline-flex}.segmented button{white-space:nowrap;height:30px;color:var(--ink-2);text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;min-width:0;padding:0 11px;font-size:12.5px;font-weight:700;display:inline-flex;overflow:hidden}@media (max-width:400px){.menu-row .segmented{margin-left:0}.segmented button{gap:3px;padding:0 8px}}.segmented button.is-active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #00000026}.menu-foot{color:var(--ink-3);padding:6px 20px 16px;font-size:12px;line-height:1.5}.list-floor{z-index:1;color:#fff;background:#2f3133;padding:6px 20px;font-size:13.5px;font-weight:800;position:sticky;top:0}.list-item{border-bottom:1px solid var(--line);text-align:left;background:#ffffff59;align-items:center;gap:12px;width:100%;padding:12px 14px 12px 20px;display:flex}.list-item:hover{background:#ffffffb3}.list-thumb{background:#eee 50%/cover no-repeat;border-radius:10px;flex:none;width:60px;height:60px}.list-body{flex:1;min-width:0}.list-title{white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:13.5px;font-weight:700;overflow:hidden}.list-desc{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.list-locate{border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.list-locate:hover{background:#0000000f}.list-empty{text-align:center;color:var(--ink-3);padding:40px 20px;font-size:14px}.list-count{color:var(--ink-3);padding:0 20px 6px;font-size:12px}.detail-card{min-height:0;max-height:100%;box-shadow:var(--shadow-card);background:#fff;flex-direction:column;display:flex;position:relative}.detail-hero{aspect-ratio:390/219;background:#eee 50%/cover no-repeat;flex:none;position:relative}.detail-hero-nav{color:#fff;background:#00000059;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.detail-close{color:#fff;z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#28282899;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:12px;right:12px}.detail-close:hover{background:#141414bf}.detail-scroll{overscroll-behavior:contain;touch-action:pan-y;overflow-y:auto}.detail-head{padding:20px 22px 4px}.detail-title{margin:0 0 4px;font-size:20px;font-weight:800;line-height:1.3}.detail-sub{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.status-dot{align-items:center;gap:5px;font-weight:700;display:inline-flex}.status-dot:before{content:"";background:#2da44e;border-radius:50%;width:7px;height:7px}.status-dot.is-closed:before{background:#d1242f}.detail-actions{scrollbar-width:none;gap:10px;padding:12px 22px 8px;display:flex;overflow-x:auto}.detail-actions::-webkit-scrollbar{display:none}.detail-actions .chip{height:38px}.detail-actions .chip.is-on{color:var(--accent);background:#fff2f5}.detail-desc{color:#2a2d31;white-space:pre-line;-webkit-user-select:text;user-select:text;padding:10px 22px 18px;font-size:14.5px;line-height:1.85}.detail-section{background:var(--surface-2);border-top:1px solid var(--line);padding:14px 22px 18px}.detail-section h3{color:var(--ink-3);margin:0 0 10px;font-size:13px;font-weight:700}.info-row{-webkit-user-select:text;user-select:text;grid-template-columns:104px 1fr;align-items:start;gap:10px;padding:7px 0;font-size:13.5px;display:grid}.info-row>span:first-child{color:var(--ink-3);font-weight:600}.info-row .chip{height:28px;margin:0 6px 6px 0;padding:0 10px;font-size:12px}.menu-item-row{border-bottom:1px dashed var(--line-2);justify-content:space-between;gap:12px;padding:8px 0;font-size:13.5px;display:flex}.menu-item-row b{white-space:nowrap;font-weight:700}.event-row{border-bottom:1px solid var(--line);text-align:left;gap:12px;width:100%;padding:10px 0;display:flex}.event-time{min-width:92px;color:var(--accent-2);font-size:13px;font-weight:800}.event-title{font-size:13.5px;font-weight:700}.event-desc{color:var(--ink-2);margin-top:2px;font-size:12.5px;line-height:1.5}.live-badge{background:var(--accent);color:#fff;vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:10.5px;font-weight:800;display:inline-block}.audio-bar{color:var(--accent-2);background:#f3f0ff;border-radius:12px;align-items:center;gap:10px;margin:0 22px 10px;padding:8px 12px;font-size:12.5px;font-weight:700;display:flex}.audio-bar progress{height:6px;accent-color:var(--accent-2);flex:1}.route-head{align-items:center;gap:10px;padding:8px 10px 4px 8px;display:flex}.mode-toggle{background:#00000012;border-radius:999px;padding:3px;display:inline-flex}.mode-toggle button{width:44px;height:30px;color:var(--ink-3);border-radius:999px;place-items:center;display:grid}.mode-toggle button.is-active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #0000002e}.route-fields{grid-template-columns:1fr 34px;align-items:center;gap:8px 4px;padding:6px 12px 6px 14px;display:grid}.route-field{background:#fffc;border:1.5px solid #00000014;border-radius:14px;align-items:center;gap:10px;height:44px;padding:0 6px 0 14px;display:flex;position:relative}.route-field.is-focus{border-color:#2457d6;box-shadow:0 0 0 3px #2457d61f}.route-field .dot{border-radius:50%;flex:none;width:11px;height:11px;box-shadow:0 0 0 2px #fff}.route-field input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:100%;font-size:14.5px;font-weight:600}.route-field input::placeholder{color:#8f949a;font-weight:500}.route-field small{color:var(--ink-3);white-space:nowrap;margin-left:-4px;font-size:12px;font-weight:600}.route-field .clear{background:#00000014;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:relative}.route-field .clear:after{content:"";border-radius:50%;position:absolute;inset:-7px}.route-swap{width:34px;height:34px;color:var(--ink-2);border-radius:50%;grid-area:1/2/span 2;place-items:center;display:grid}.route-swap:hover{background:#0000000f}.route-summary{color:var(--ink-2);align-items:center;gap:18px;padding:8px 20px 4px;font-size:13px;font-weight:600;display:flex}.route-summary b{color:var(--ink);margin-right:1px;font-size:19px;font-weight:800}.route-summary span{align-items:baseline;gap:4px;display:inline-flex}.route-summary .ic{align-self:center}.route-steps{flex-wrap:wrap;row-gap:6px;padding-top:8px;overflow-x:visible}.route-steps .chip{height:38px}.route-steps .chip.is-active{background:var(--dark-pill);color:#fff}.route-foot{justify-content:flex-end;gap:8px;padding:8px 16px 16px;display:flex}.route-status{color:var(--ink-2);align-items:center;gap:10px;padding:14px 20px;font-size:13.5px;display:flex}.route-error{padding:12px 20px 16px}.route-error p{color:var(--accent);margin:0 0 10px;font-size:13.5px;font-weight:700}.route-error .chips{flex-wrap:wrap;padding:0}.spinner{border:2.5px solid #0000001f;border-top-color:var(--accent-2);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.hint-pop{z-index:5;color:#fff;white-space:nowrap;background:#181c1ce6;border-radius:12px;align-items:center;gap:10px;padding:10px 10px 10px 16px;font-size:13px;font-weight:700;animation:.3s fadeIn;display:flex;position:absolute;top:104px;left:calc(100% + 12px);box-shadow:0 6px 18px #00000040}.hint-pop:before{content:"";border:7px solid #0000;border-left:0;border-right-color:#181c1ce6;position:absolute;top:50%;left:-7px;transform:translateY(-50%)}.hint-pop button{color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat{flex-direction:column;flex:1;min-height:0;display:flex}.chat-log{overscroll-behavior:contain;touch-action:pan-y;-webkit-user-select:text;user-select:text;flex:1;min-height:120px;padding:12px 20px 8px;overflow-y:auto}.msg-user{justify-content:flex-end;margin:6px 0 14px;display:flex}.msg-user>div{background:#fff;border-radius:18px;max-width:82%;padding:10px 16px;font-size:14.5px;line-height:1.5;box-shadow:0 1px 4px #00000014}.msg-ai{color:#24272b;white-space:pre-line;margin:0 0 12px;font-size:14.5px;line-height:1.75}.msg-ai .chips{margin:0 -20px;padding:8px 0 2px 20px}.msg-ai .chip{height:32px;font-size:12.5px}.msg-thinking{color:var(--ink-3);align-items:center;gap:8px;margin-bottom:12px;font-size:13.5px;display:flex}.msg-thinking span{background:linear-gradient(90deg,#8a8f96 0%,#c5c8cc 40%,#8a8f96 80%) 0 0/200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600;animation:1.4s linear infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.msg-meta{color:var(--ink-3);align-items:center;gap:4px;margin:-6px 0 12px;font-size:11px;display:flex}.chat-suggest{padding:4px 0 12px}.chat-suggest .chips{padding-top:2px}.suggest-row{text-align:left;align-items:center;gap:10px;width:100%;padding:8px 20px;font-size:13.5px;font-weight:600;display:flex}.suggest-row:hover{background:#fff9}.suggest-row img{border-radius:8px;width:30px;height:30px}.suggest-row small{color:var(--ink-3);margin-left:auto;font-weight:600}.cursor-blink:after{content:"▍";color:var(--accent-2);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.floor-switcher{right:var(--map-controls-right);z-index:9;border-radius:26px;flex-direction:column;align-items:center;gap:4px;width:52px;padding:5px 4px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.floor-switcher button{width:44px;height:36px;color:var(--ink-2);z-index:1;border-radius:18px;font-size:13px;font-weight:800;transition:color .2s;position:relative}.floor-switcher button.is-active{color:#fff}.floor-switcher button .route-mark{background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:4px;right:3px;box-shadow:0 0 0 2px #fff}.floor-switcher .floor-all{letter-spacing:.02em;font-size:10.5px}.floor-switcher.is-tall{top:var(--map-controls-right);max-height:calc(100% - var(--map-controls-right) - var(--map-controls-bottom) - 262px);overscroll-behavior:contain;scrollbar-width:none;overflow-y:auto;transform:none;-webkit-mask-image:linear-gradient(#000 calc(100% - 14px),#0000);mask-image:linear-gradient(#000 calc(100% - 14px),#0000)}.floor-switcher.is-tall::-webkit-scrollbar{display:none}.floor-switcher.is-tall button,.floor-switcher.is-tall .floor-cargo{flex:none}.floor-cargo{background:var(--dark-pill);z-index:0;border-radius:18px;width:44px;height:36px;transition:top .32s cubic-bezier(.3,1.3,.5,1);position:absolute;left:4px;box-shadow:0 2px 6px #00000040}.map-controls{right:var(--map-controls-right);bottom:var(--map-controls-bottom);z-index:9;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute}.ctrl-btn{border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.ctrl-btn.is-active{color:var(--blue)}.zoom-pill{border-radius:22px;flex-direction:column;width:44px;display:flex;overflow:hidden}.zoom-pill button{place-items:center;height:40px;display:grid}.zoom-pill button:hover{background:#ffffff80}.zoom-pill hr{background:var(--line-2);border:0;height:1px;margin:0 9px}.compass .needle{transition:transform .1s linear}.view-toggle{font-size:12.5px;font-weight:800}.logo{left:16px;bottom:max(14px, calc(var(--safe-bottom) + 8px));z-index:5;color:#282c328c;pointer-events:none;letter-spacing:-.01em;align-items:center;gap:6px;font-size:14px;font-weight:800;display:flex;position:absolute}.logo svg{width:22px;height:22px}.attribution{z-index:4;color:#0006;pointer-events:none;font-size:10px;position:absolute;bottom:6px;right:80px}.op-guide{color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#303234e0;padding:14px 18px 16px;animation:.4s fadeIn}.op-guide-head{align-items:center;gap:10px;margin-bottom:8px;font-size:15px;font-weight:800;display:flex}.op-guide-head span{flex:1}.op-guide-head button{color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.op-guide p{margin:0;font-size:13.5px;font-weight:600;line-height:1.6}.toast-host{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:90px;left:50%;transform:translate(-50%)}.toast{color:#fff;text-align:center;background:#1c1e20e6;border-radius:999px;max-width:90vw;padding:10px 18px;font-size:13.5px;font-weight:700;animation:.25s toastIn;box-shadow:0 4px 14px #00000040}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.loader{z-index:100;background:#eceef0;place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.loader.is-done{opacity:0;pointer-events:none}.loader-box{text-align:center;width:min(320px,80vw)}.loader-logo{justify-content:center;align-items:center;gap:10px;margin-bottom:6px;font-size:22px;font-weight:900;display:flex}.loader-logo svg{width:36px;height:36px}.loader-title{color:var(--ink-2);margin-bottom:18px;font-size:15px;font-weight:700}.loader-bar{background:#00000014;border-radius:5px;height:5px;overflow:hidden}.loader-bar i{background:linear-gradient(90deg, var(--accent), var(--accent-2));width:0;height:100%;transition:width .3s;display:block}.loader-status{color:var(--ink-3);margin-top:10px;font-size:12.5px}.error-screen{z-index:120;text-align:center;background:#eceef0;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.error-screen h1{margin:12px 0 8px;font-size:20px}.error-screen p{color:var(--ink-2);max-width:420px;margin:0 auto 18px;line-height:1.6}.modal-back{z-index:60;background:#00000047;place-items:center;padding:16px;animation:.2s fadeIn;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;flex-direction:column;width:min(420px,100%);max-height:min(640px,90vh);display:flex;overflow:hidden;box-shadow:0 22px 70px #00000047}.modal-head{align-items:center;gap:8px;padding:14px 10px 6px 20px;font-size:16px;font-weight:800;display:flex}.modal-head span{flex:1}.modal-body{padding:4px 0 12px;overflow-y:auto}.modal-actions{flex-direction:column;gap:8px;padding:6px 20px 18px;display:flex}.modal-actions .btn-light,.modal-actions .btn-dark{width:100%}.pick-banner{left:50%;top:max(24px, calc(var(--safe-top) + 12px));z-index:30;color:#fff;background:#181c1ce6;border-radius:999px;align-items:center;gap:10px;padding:8px 8px 8px 18px;font-size:13.5px;font-weight:700;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 6px 18px #00000040}.pick-banner button{color:#fff;background:#ffffff29;border-radius:999px;height:32px;padding:0 14px;font-weight:700}.pick-crosshair{z-index:8;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.pick-crosshair:after{content:"";border:3px solid var(--blue);background:#1a56ff26;border-radius:50%;width:24px;height:24px;position:absolute;top:-12px;left:-12px}.view-larger{color:inherit}.signage-idle{z-index:40;pointer-events:none;place-items:center;display:grid;position:fixed;inset:auto 0 40px}.signage-idle span{color:#fff;background:#181c1cd9;border-radius:999px;padding:14px 28px;font-size:18px;font-weight:800;animation:2.4s ease-in-out infinite breathe}@keyframes breathe{50%{transform:scale(1.06)}}.detail-slot{z-index:11;left:var(--gap);top:calc(max(var(--gap), calc(var(--safe-top) + 8px)) + 66px);width:var(--dock-w);bottom:var(--gap);pointer-events:none;flex-direction:column;display:flex;position:absolute}.detail-slot>*{pointer-events:auto}.detail-slot.is-beside{left:calc(var(--gap) + var(--dock-w) + 24px);top:max(var(--gap), calc(var(--safe-top) + 8px))}.detail-slot .detail-card{border-radius:var(--radius);max-height:100%;animation:.28s cubic-bezier(.2,.9,.3,1) cardIn}.detail-stacked .main-card .panel{display:none}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.sheet-handle{display:none}@media (max-height:760px) and (min-width:721px){.floor-switcher{top:var(--map-controls-right);transform:none}}@media (max-height:520px) and (min-width:721px){.map-controls{flex-direction:row;align-items:flex-end}.floor-switcher button,.floor-cargo{height:32px}.floor-switcher.is-tall{max-height:calc(100% - var(--map-controls-right) - var(--map-controls-bottom) - 100px)}.detail-hero{aspect-ratio:auto;height:96px}.route-steps{flex-wrap:nowrap;gap:6px;overflow-x:auto}.route-steps .chip{height:32px;padding:0 11px;font-size:12.5px}.route-steps .chip small{display:none}.route-steps.is-overflowing{-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.has-route .floor-badge{visibility:hidden}.list-item{gap:10px;padding:7px 12px 7px 16px}.list-thumb{border-radius:8px;width:40px;height:40px}.list-title{margin-bottom:1px}.list-desc{-webkit-line-clamp:1;line-height:1.35}.list-locate{width:34px;height:34px}.panel-scroll:has(>.sponsor-strip){flex-direction:column;display:flex}.panel-scroll:has(>.sponsor-strip)>*{flex-shrink:0}.panel-scroll>.sponsor-strip{order:2}.panel-scroll>.suggest-row{padding-block:4px}.sponsor-strip{padding:6px 16px 8px}.sponsor-card{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:2px 8px;width:236px;padding:0}.sponsor-img{grid-row:1/span 2;height:64px;margin:0}.sponsor-card b{grid-column:2;align-self:end;padding:0 8px 0 0}.sponsor-card small{grid-column:2;align-self:start;padding:0 8px 0 0}.sponsor-label{padding:1px 5px;font-size:9.5px;top:4px;left:4px}.detail-hero-nav{top:auto;bottom:8px;transform:none}.logo{display:none}}@media (max-width:720px){:root{--gap:14px;--dock-w:calc(100vw - 28px)}.dock{width:auto;max-height:calc(100% - 28px);left:14px;right:14px}.bar{height:54px}.floor-switcher{top:46%}.main-card.is-sheet{height:var(--sheet-h,55vh);max-height:calc(100% - 80px);padding-bottom:var(--safe-bottom);z-index:12;border-radius:22px 22px 0 0;transition:height .28s cubic-bezier(.2,.9,.3,1);position:fixed;inset:auto 0 0}.main-card.is-sheet.is-dragging,.detail-slot .detail-card.is-dragging{transition:none}.main-card.is-sheet .sheet-handle,.detail-slot .sheet-handle{cursor:grab;touch-action:none;flex:none;place-items:center;height:22px;display:grid}.sheet-handle:before{content:"";background:#0003;border-radius:5px;width:40px;height:5px}.bar-ghost{border-radius:var(--radius);height:54px}.detail-slot,.detail-slot.is-beside{z-index:13;width:auto;height:auto;inset:auto 0 0}.detail-slot .detail-card{height:var(--sheet-h,52vh);max-height:calc(100vh - 70px);padding-bottom:var(--safe-bottom);border-radius:22px 22px 0 0;transition:height .28s cubic-bezier(.2,.9,.3,1)}.detail-hero{aspect-ratio:390/180}.hint-pop{top:auto;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.hint-pop:before{display:none}.floor-switcher{top:calc((100% - var(--sheet-offset,0px)) * .5 + 20px);transition:top .28s}.floor-switcher.is-tall{top:calc(var(--safe-top) + 84px);max-height:calc(100% - var(--safe-top) - 84px - max(var(--sheet-offset,0px) + 16px, var(--map-controls-bottom) + 262px));transition:max-height .28s}.has-sheet .floor-switcher.is-tall{max-height:calc(100% - var(--safe-top) - 84px - var(--sheet-offset,0px) - 16px)}.attribution{display:none}.toast-host{bottom:calc(110px + var(--sheet-offset,0px))}.pin-label-title{max-width:92px}.main-card.is-sheet,.main-card.is-open{-webkit-backdrop-filter:none;background:#fff}.main-card.is-sheet .panel,.main-card.is-open .panel{background:#fff}.has-sheet .map-controls,.has-sheet .logo,.has-menu .floor-switcher,.has-menu .fp,.sheet-over-floors .fp,.sheet-full .floor-switcher,.sheet-full .fp,.sheet-full .floor-badge,.has-route .floor-badge,.has-menu .map-controls{visibility:hidden}}@media (pointer:coarse){:root{--glass:#ffffffeb;--glass-filter:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.is-still .callout-pulse{opacity:0;animation:none}.is-still .live-dot,.is-still .user-dot:before{animation:none}.coupon-card{text-align:left;background:#fff;border:1.5px dashed #e71e454d;border-radius:14px;align-items:center;gap:12px;width:100%;margin-top:8px;padding:12px 12px 12px 14px;display:flex;box-shadow:0 1px 4px #00000014}.coupon-card:hover{background:#fffafb}.coupon-badge{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;letter-spacing:-.02em;border-radius:12px;flex:none;place-items:center;min-width:54px;height:54px;padding:0 6px;font-size:15px;font-weight:900;display:grid}.coupon-valid{color:var(--ink-3);margin-top:4px;font-size:11.5px;font-weight:600}.coupon-inline{background:#fff;border:1.5px dashed #e71e454d;border-radius:14px;margin-bottom:10px;padding:12px}.coupon-code{text-align:center;background:#faf8f5;border-radius:12px;gap:6px;margin-top:10px;padding:10px;display:grid}.coupon-code b{letter-spacing:.12em;font:800 24px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.coupon-code small{color:var(--ink-3);font-weight:600}.hover-tip{color:#fff;white-space:nowrap;pointer-events:none;background:#0c0c0fc7;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:700;transform:translate(-50%,-100%)}.hover-tip:after{content:"";border:6px solid #0000;border-top-color:#0c0c0fc7;border-bottom:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.hero-dots{justify-content:center;gap:6px;display:flex;position:absolute;bottom:10px;left:0;right:0}.hero-dots span{background:#fff9;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 1px #00000014}.hero-dots span.is-on{background:#fff;border-radius:4px;width:18px}.debug-overlay{left:8px;bottom:calc(var(--safe-bottom) + 8px);z-index:70;color:#9effa8;pointer-events:none;white-space:pre-wrap;background:#000000c7;border-radius:8px;max-width:calc(100% - 84px);padding:5px 10px;font:600 11.5px/1.45 ui-monospace,Menlo,monospace;position:absolute}.picto-pop{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;background:#181c1cdb;border-radius:14px;padding:8px;animation:.2s fadeIn;transform:translate(-50%,-100%);box-shadow:0 6px 18px #0000004d}.picto-pop:after{content:"";border:8px solid #0000;border-top-color:#181c1cdb;border-bottom:0;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.picto-pop-title{white-space:nowrap;align-items:baseline;gap:6px;padding:2px 6px 6px;font-size:13.5px;font-weight:800;display:flex}.picto-pop-title small{opacity:.65;font-weight:700}.picto-pop-actions{gap:4px;display:flex}.picto-pop-actions button{white-space:nowrap;color:#fff;border-radius:10px;align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;font-weight:700;display:flex}.picto-pop-actions button:hover{background:#ffffff24}.crowd-badge{color:#c2410c;background:#fff1e6;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:800;display:inline-flex}.user-dot:before{transform:scale(var(--acc,1))}.user-dot-cone{transform-origin:50% 100%;width:44px;height:46px;transform:rotate(var(--heading,0deg));clip-path:polygon(50% 100%,0 0,100% 0);background:radial-gradient(at 50% 100%,#1a56ff73,#1a56ff00 70%);display:none;position:absolute;top:-46px;left:-22px}.user-dot.has-heading .user-dot-cone{display:block}.ctrl-btn.is-nav{background:var(--blue);color:#fff}.qr-box{width:200px;height:200px;box-shadow:inset 0 0 0 1px var(--line-2);background:#fff;border-radius:14px;padding:8px}.qr-box svg{width:100%;height:100%;display:block}.rally-card{background:#fff;border-radius:16px;padding:16px;box-shadow:0 1px 4px #00000014}.rally-card h3{margin:0 0 6px;font-size:16px}.rally-card p{color:var(--ink-2);margin:0 0 12px;font-size:13px;line-height:1.55}.rally-progress{background:#eee;border-radius:8px;height:8px;overflow:hidden}.rally-progress i{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:8px;height:100%;transition:width .4s;display:block}.rally-count{color:var(--accent-2);margin:6px 0 12px;font-size:12px;font-weight:800}.rally-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.rally-stamp{text-align:center;border-radius:12px;justify-items:center;gap:4px;padding:4px 2px;font-size:11px;font-weight:700;display:grid}.rally-stamp small{color:var(--ink-3);font-weight:600}.rally-stamp span:not(.rally-thumb){text-overflow:ellipsis;white-space:nowrap;max-width:72px;overflow:hidden}.rally-thumb{filter:grayscale(.85);opacity:.7;background:#eee 50%/cover;border:2px dashed #cfcfd4;border-radius:50%;width:58px;height:58px;position:relative}.rally-stamp.is-on .rally-thumb{filter:none;opacity:1;border:2px solid var(--accent)}.rally-mark{color:#fff;background:#e71e458c;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0;transform:rotate(-12deg)}.rally-reward{color:var(--ink-2);background:#f6f3ff;border-radius:12px;align-items:flex-start;gap:10px;margin-top:14px;padding:12px;font-size:12.5px;line-height:1.5;display:flex}.rally-reward b{color:var(--accent-2)}.rally-reward.is-done{background:#fff1f4}.rally-done{color:#1f8a4c;align-items:center;gap:8px;font-size:13.5px;font-weight:800;display:flex}.sponsor-strip{scrollbar-width:none;gap:10px;padding:10px 16px 12px;display:flex;overflow-x:auto}.sponsor-card{text-align:left;background:#fff;border-radius:14px;flex:none;gap:3px;width:220px;padding:0 0 10px;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000001a}.sponsor-card b{padding:0 10px;font-size:13px}.sponsor-card small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;padding:0 10px;font-size:11.5px;overflow:hidden}.sponsor-img{background:#eee 50%/cover;height:92px;margin-bottom:6px}.sponsor-label{color:#fff;background:#0009;border-radius:6px;padding:2px 7px;font-size:10.5px;font-weight:800;position:absolute;top:8px;left:8px}.survey-stars{justify-content:center;gap:6px;display:flex}.survey-stars button{color:#d0d2d6}.survey-stars button.is-on{color:#f5b301}.survey-stars button.is-on svg{fill:currentColor}.survey-text{border:1px solid var(--line-2);resize:vertical;border-radius:12px;width:100%;padding:10px 12px;font-size:14px}.osk{z-index:80;background:#242629f0;border-radius:18px;gap:6px;padding:10px;display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #00000059}.osk-row{justify-content:center;gap:6px;display:flex}.osk button{color:#fff;background:#4a4d52;border-radius:10px;place-items:center;min-width:56px;height:54px;font-size:20px;font-weight:700;display:grid}.osk button:active{background:#6b6f75}.osk .osk-space{min-width:300px}.osk .osk-wide{min-width:76px}.osk .osk-enter{background:var(--accent-2)}.detail-bar{z-index:2;border-bottom:1px solid var(--line);border-radius:inherit;visibility:hidden;pointer-events:none;background:#fff;border-bottom-right-radius:0;border-bottom-left-radius:0;align-items:center;height:58px;padding:0 60px 0 20px;display:flex;position:absolute;top:0;left:0;right:0}.detail-bar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);font-size:15.5px;font-weight:800;overflow:hidden}.detail-card.is-scrolled .detail-bar{visibility:visible}.detail-card.is-scrolled .detail-close{color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:3;background:#f1f3f5;top:11px}@media (max-width:720px){.detail-bar{border-radius:0;height:50px;top:22px}.detail-card.is-scrolled .detail-close{top:29px}}html.is-embed,html.is-embed body{overscroll-behavior:auto}.live-block{color:#1b5e2b;background:#eef9f0;border-radius:14px;align-items:center;gap:14px;margin:4px 22px 10px;padding:12px 14px;display:flex}.live-block.is-mid{color:#8a4b00;background:#fff5e6}.live-block.is-high{color:#a61e1e;background:#fff0f0}.live-block.is-off{color:#495057;background:#f1f3f5}.live-block.is-crowd{color:#4c2a9a;background:#f3f0ff}.live-block b{font-size:15px;font-weight:800;display:block}.live-block small{opacity:.75;font-size:11.5px;font-weight:600;display:block}.live-wait b{letter-spacing:-.01em;font-size:26px;line-height:1.05}.live-wait small{text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.live-meta{text-align:right;justify-items:end;gap:2px;margin-left:auto;font-size:12.5px;font-weight:700;display:grid}.live-dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:1.8s ease-out infinite live-pulse;box-shadow:0 0}@keyframes live-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 45%, transparent)}to{box-shadow:0 0 0 9px #0000}}.crowd-meter{align-items:flex-end;gap:3px;height:22px;display:flex}.crowd-meter span{opacity:.22;background:currentColor;border-radius:2px;width:6px}.crowd-meter span:first-child{height:7px}.crowd-meter span:nth-child(2){height:12px}.crowd-meter span:nth-child(3){height:17px}.crowd-meter span:nth-child(4){height:22px}.crowd-meter span.is-on{opacity:1}.rules{flex-wrap:wrap;gap:6px;margin:2px 22px 10px;display:flex}.rule-chip{color:#343a40;background:#f1f3f5;border-radius:15px;align-items:center;gap:5px;height:30px;padding:0 11px;font-size:12.5px;font-weight:700;display:inline-flex}.rule-chip.is-thrill{color:#c92a2a;background:#ffe3e3}.rule-chip.is-moderate{color:#8a6100;background:#fff3bf}.rule-chip.is-family{color:#2b8a3e;background:#d3f9d8}.rule-note{color:var(--ink-3);flex-basis:100%;margin-top:2px;font-size:12px}.sched-next{float:right;color:var(--accent);font-size:12px;font-weight:800}.sched-list{flex-direction:column;gap:4px;display:flex}.sched-item{background:#fff;border-radius:10px;align-items:center;gap:12px;padding:7px 10px;font-size:13.5px;display:flex}.sched-item b{font-variant-numeric:tabular-nums;min-width:44px}.sched-item span{flex:1;min-width:0}.sched-item.is-past{color:#6b7078;background:0 0}.sched-item.is-past :is(b,strong,span,small){color:#6b7078}.sched-item.is-next{box-shadow:inset 0 0 0 2px var(--accent)}.sched-remind{background:#f1f3f5;border-radius:13px;align-items:center;gap:4px;height:26px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.iucn-chip{color:#fff;background:#2f9e44;border-radius:8px;padding:2px 8px;font-size:12px;font-weight:800;display:inline-block}.iucn-chip.is-NT{background:#82c91e}.iucn-chip.is-VU{background:#f59f00}.iucn-chip.is-EN{background:#f76707}.iucn-chip.is-CR{background:#e03131}.iucn-chip.is-EW{background:#862e9c}.iucn-chip.is-DD{background:#868e96}.photo-credit{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#00000073;border-radius:6px;max-width:70%;padding:2px 7px;font-size:10px;position:absolute;bottom:6px;right:8px;overflow:hidden}.detail-hero{position:relative}.today-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 4px;display:flex}.today-row.is-past :is(.today-time b,.today-time small,.today-title,.today-place,.today-meta){color:#6b7078}.today-row.is-past :is(.chip,.tag,.today-tag,button){opacity:.75}.today-row.is-now .today-time b{color:var(--accent)}.today-time{font-variant-numeric:tabular-nums;min-width:48px;display:grid}.today-time b{font-size:16px}.today-time small{color:var(--ink-3);font-size:11.5px}.today-body{flex:1;min-width:0}.today-title{font-size:14px;font-weight:800}.today-place{color:var(--ink-2);align-items:center;gap:5px;margin-top:4px;font-size:12.5px;font-weight:600;display:inline-flex}.today-go{background:#f1f3f5;flex:none}.soon-badge{color:#8a6100;vertical-align:1px;background:#fff3bf;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:10.5px;font-weight:800;display:inline-block}.height-filter{scrollbar-width:none;border-bottom:1px solid var(--line);flex:none;align-items:center;gap:6px;padding:2px 16px 10px;display:flex;overflow-x:auto}.height-filter::-webkit-scrollbar{display:none}.height-filter .chip{flex:none}.height-filter>.label{color:var(--ink-3);flex:none;align-items:center;gap:4px;margin-right:2px;font-size:12px;font-weight:800;display:inline-flex}.height-filter .chip{height:32px;font-size:12.5px}.seats-hint{color:var(--ink-2);background:#f1f3f5;border-radius:12px;align-items:center;gap:8px;margin:2px 0 10px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.seat-plan{box-shadow:inset 0 0 0 1px var(--line);border-radius:14px;margin-bottom:10px;overflow:hidden}.seat-plan svg{display:block}.seat-plan [data-seat]:hover polygon{filter:brightness(1.12);opacity:1!important}.seat-tabs{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px;display:grid}.seat-tabs button{box-shadow:inset 0 0 0 1.5px var(--line-2);background:#fff;border-radius:12px;justify-items:center;gap:1px;padding:7px 4px;display:grid}.seat-tabs button b{font-size:17px}.seat-tabs button small{color:var(--ink-3);white-space:nowrap;font-size:11px}.seat-tabs button.is-active{color:#fff;box-shadow:none;background:#1d1f22}.seat-tabs button.is-active small{color:#ffffffb3}.seat-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.seat-tile{text-align:left;box-shadow:inset 0 0 0 1.5px var(--line-2);background:#fff;border-radius:12px;gap:3px;padding:12px 10px;transition:box-shadow .15s,transform .15s;display:grid}.seat-tile:hover{box-shadow:inset 0 0 0 2px var(--accent);transform:translateY(-1px)}.seat-tile b{font-size:18px}.seat-tile small{color:var(--ink-3);font-size:11.5px;line-height:1.25}.viewpoint-bar{z-index:30;left:50%;bottom:max(28px, calc(var(--safe-bottom) + 16px));box-shadow:var(--shadow-card);background:#fffffff0;border-radius:26px;align-items:center;gap:8px;padding:6px 6px 6px 14px;display:flex;position:absolute;transform:translate(-50%)}.viewpoint-tag{align-items:center;gap:6px;font-size:13.5px;font-weight:800;display:inline-flex}#app.is-viewpoint .label-layer,#app.is-viewpoint .area-label-layer,#app.is-viewpoint .floor-badge,#app.is-viewpoint .map-pills,#app.is-viewpoint .marker-layer{opacity:0;visibility:hidden;transition:opacity .3s}.live-btn{color:#fff;background:linear-gradient(135deg, var(--accent-2), #1a56ff);border-radius:17px;flex:none;align-items:center;gap:4px;height:34px;margin-left:2px;padding:0 10px;font-size:12.5px;font-weight:800;display:inline-flex;box-shadow:0 2px 8px #1a56ff47}.live-voice{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle at 50% 40%,#281e5a8c,#0a0c18b8);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.live-voice-card{text-align:center;color:#fff;justify-items:center;gap:14px;width:min(420px,100%);display:grid}.live-orb{color:#fff;background:radial-gradient(circle at 35% 30%,#a78bfa,#4c6ef5 55%,#1c2a7a);border-radius:50%;place-items:center;width:148px;height:148px;display:grid;position:relative;box-shadow:0 0 40px #7c5cff8c,inset 0 0 30px #ffffff40}.live-orb:before,.live-orb:after{content:"";opacity:0;border:2px solid #a58cff80;border-radius:50%;position:absolute;inset:-10px}.live-orb.is-listening:before{animation:1.6s ease-out infinite orb-ring}.live-orb.is-listening:after{animation:1.6s ease-out .8s infinite orb-ring}.live-orb.is-thinking{animation:1.2s ease-in-out infinite orb-breathe}.live-orb.is-speaking{animation:.5s ease-in-out infinite alternate orb-talk}@keyframes orb-ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}@keyframes orb-breathe{50%{filter:hue-rotate(40deg);transform:scale(.94)}}@keyframes orb-talk{0%{transform:scale(.98)}to{transform:scale(1.05)}}.live-voice-status{font-size:18px;font-weight:800}.live-voice-heard{opacity:.92;font-size:15px}.live-voice-hint{opacity:.7;font-size:13.5px}.live-voice-answer{text-align:left;background:#ffffff1f;border-radius:14px;max-height:30vh;padding:12px 14px;font-size:14px;line-height:1.5;overflow:auto}.live-voice-close{color:var(--ink)}#app.has-pills .floor-badge{top:calc(max(var(--gap), calc(var(--safe-top) + 8px)) + 58px);border-radius:14px;gap:8px;min-width:0;padding:4px 14px 4px 4px}#app.has-pills .fb-code{border-radius:10px;min-width:34px;height:30px;padding:0 8px;font-size:17px}#app.has-pills .fb-kicker{display:none}#app.has-pills .fb-name{font-size:13.5px}@media (max-width:720px){#app.has-pills .floor-badge{top:calc(max(14px, calc(var(--safe-top) + 8px)) + 112px)}.map-pills{left:12px;right:12px;top:calc(max(12px, calc(var(--safe-top) + 8px)) + 62px)}.live-btn span{display:none}.live-btn{justify-content:center;width:34px;padding:0}}@media (prefers-reduced-motion:reduce){.live-orb,.live-orb:before,.live-orb:after,.live-dot{animation:none!important}}.list-wait{border-radius:10px;flex:none;justify-items:center;min-width:46px;margin-left:4px;padding:4px 6px;line-height:1;display:grid}.list-wait b{font-size:17px;font-weight:800}.list-wait small{margin-top:2px;font-size:10px;font-weight:700}.list-wait.is-ok{color:#2b8a3e;background:#ebfbee}.list-wait.is-mid{color:#d9480f;background:#fff4e6}.list-wait.is-high{color:#c92a2a;background:#fff5f5}#app.has-pills .list-floor{color:var(--ink-2);background:#f1f3f5}.today-row .today-body{text-align:left}.map-pills{padding-right:30px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000)}.map-pill{white-space:nowrap}.info-row{grid-template-columns:124px 1fr}.bar:has(.live-btn) .bar-placeholder{right:132px}@media (max-width:720px){.bar:has(.live-btn) .bar-placeholder{right:98px}}:is(#app:has(.main-card.is-open) .logo,#app:has(.detail-slot:not(:empty)) .logo){opacity:0}.today-places{flex-wrap:wrap;gap:4px 10px;margin-top:4px;display:flex}.today-places .today-place{margin-top:0}#app.is-viewpoint .floor-switcher{opacity:0;visibility:hidden}@media (max-width:720px){#app.has-pills .floor-badge{display:none}#app.has-pills .floor-switcher,#app.has-pills .fp{bottom:max(calc(var(--map-controls-bottom) + 300px), calc(var(--sheet-offset,0px) + 16px));transform-origin:100% 100%;transition:bottom .28s;top:auto!important;transform:scale(.86)!important}}.chat-cards{gap:6px;margin-top:10px;display:grid}.chat-card{box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:12px;align-items:center;gap:6px;padding:6px;display:flex}.chat-card-main{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.chat-card-img{background-position:50%;background-size:cover;border-radius:9px;flex:none;width:44px;height:44px}.chat-card-body{flex:1;min-width:0;display:grid}.chat-card-body b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.chat-card-body small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.chat-card-go{background:#f1f3f5;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.detail-hero.is-generated{aspect-ratio:auto;height:140px}.today-more{color:var(--ink-3);align-self:center;font-size:12px;font-weight:600}#app .detail-actions{flex-wrap:wrap;row-gap:8px}.route-ep-input,.route-endpoint input,.route-field input{text-overflow:ellipsis}.seat-foreground{z-index:4;pointer-events:none;height:24vh;min-height:150px;animation:1.2s cubic-bezier(.2,.9,.3,1) .9s both seatRowsIn;position:absolute;bottom:0;left:0;right:0}.seat-foreground svg{display:block}@keyframes seatRowsIn{0%{opacity:0;transform:translateY(40%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.seat-foreground{animation:none}}.chat-more{margin-top:8px}.chat-more summary{cursor:pointer;color:var(--accent,#1c7ed6);font-size:13px;font-weight:700;list-style:none}.chat-more summary::-webkit-details-marker{display:none}.chat-more summary:before{content:"▸ "}.chat-more[open] summary:before{content:"▾ "}.chat-more>div{white-space:pre-line;margin-top:6px}#app.has-pills .floor-badge{display:none}#app.has-route .area-label-layer{opacity:.3;transition:opacity .2s}#app:has(.seat-foreground) .viewpoint-bar{bottom:auto;top:calc(max(var(--gap), calc(var(--safe-top) + 8px)) + 66px)}.pin-label--tone .pin-label-title{max-width:176px}@media (max-width:720px){.pin-label--tone .pin-label-title{max-width:150px}#app:has(.seat-foreground) .viewpoint-bar{top:calc(max(14px, calc(var(--safe-top) + 8px)) + 120px)}#app .detail-actions{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;padding:10px 16px 6px;display:grid;overflow:visible}#app .detail-actions .chip{text-align:center;white-space:normal;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;height:auto;min-height:56px;padding:8px 2px;font-size:11.5px;line-height:1.15;display:flex}#app.has-pills .floor-switcher{--collapsible:1}#app.has-pills .floor-switcher:not(.is-open) button:not(.is-active){display:none}#app.has-pills .floor-switcher:not(.is-open) button.is-active:after{content:"▾";margin-left:2px;font-size:10px}}.chip.sort-toggle{box-shadow:inset 0 0 0 1.5px var(--line);color:var(--ink-2);background:#fff}.chip.sort-toggle.is-on{color:#d9480f;background:#fff4e6;box-shadow:inset 0 0 0 1.5px #ffa94d}.chat-card .pin-label-badge+.pin-label-badge{margin-left:-2px}.today-tag{height:20px;color:var(--ink-2);vertical-align:1px;background:#f1f3f5;border-radius:6px;align-items:center;margin-left:6px;padding:0 7px;font-size:11.5px;font-weight:700;display:inline-flex}.chat-card-badges{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.today-name{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.today-name:hover{text-decoration:underline}.today-where{color:var(--ink-3);font-size:12.5px}.today-names,.today-where{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.today-row:has(.today-names) .today-title{align-items:center;gap:4px;min-width:0;display:flex}.today-row .today-names{flex:0 auto;min-width:0}.today-row .today-tag,.today-row .soon-badge,.today-row .live-badge{flex:none}.today-title.is-names{align-items:baseline;gap:6px;min-width:0;display:flex}.today-title.is-names .today-names{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.today-title.is-names .today-more{color:var(--ink-2);background:#f1f3f5;border-radius:6px;flex:none;padding:1px 6px;font-size:12.5px;font-weight:800}.today-meta{align-items:center;gap:6px;min-width:0;margin-top:4px;display:flex}.today-meta .today-tag,.today-meta .soon-badge,.today-meta .live-badge{flex:none;margin-left:0}.today-meta .today-where{flex:auto;min-width:0}@media (max-width:720px) and (max-height:640px){.map-controls{flex-direction:row;align-items:flex-end}.floor-switcher.is-tall{max-height:calc(100% - var(--safe-top) - 84px - max(var(--sheet-offset,0px) + 16px, var(--map-controls-bottom) + 108px))}#app.has-pills .floor-switcher,#app.has-pills .fp{bottom:max(calc(var(--map-controls-bottom) + 108px), calc(var(--sheet-offset,0px) + 16px))}}@media (max-width:720px) and (max-height:500px){#app .fp{transform-origin:100% 0;transform:scale(.86)}}.floor-switcher button .user-mark,.fp .user-mark,.fp-pop .user-mark{background:var(--blue);border-radius:50%;width:7px;height:7px;position:absolute;top:4px;left:3px;box-shadow:0 0 0 2px #fff}.fp .route-mark,.fp-pop .route-mark{background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:4px;right:3px;box-shadow:0 0 0 2px #fff}.fp button:focus-visible,.fp-pop button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.fp{right:var(--map-controls-right);top:calc((100% - var(--map-controls-bottom) - 274px) / 2);z-index:9;flex-direction:column;align-items:center;display:flex;position:absolute;transform:translateY(-50%)}.fp.glass{border-radius:26px;gap:2px;width:52px;padding:4px}.fp hr{background:var(--line-2);border:0;flex:none;width:24px;height:1px;margin:3px 0}.fp-arrow{width:44px;height:30px;color:var(--ink-2);border-radius:15px;flex:none;place-items:center;transition:background .15s,color .15s,opacity .15s;display:grid;position:relative}.fp-arrow:hover:not(:disabled){color:var(--ink);background:#ffffffb3}.fp-arrow:active:not(:disabled){transform:scale(.94)}.fp-arrow:disabled{opacity:.28;cursor:default}.fp-arrow .route-mark{top:5px;right:8px}.fp-arrow .user-mark{top:5px;left:8px}.fp-row{z-index:1;width:44px;color:var(--ink-2);border-radius:18px;flex:none;place-items:center;font-size:13px;font-weight:800;transition:color .2s,opacity .2s;display:grid;position:relative}.fp-row.is-active{color:#fff}.fp-icon{width:44px;height:38px;color:var(--ink-2);border-radius:19px;flex:none;place-items:center;transition:background .15s,color .15s;display:grid;position:relative}.fp-icon:hover{color:var(--ink);background:#ffffffb3}.fp-icon[aria-expanded=true]{color:var(--ink);box-shadow:var(--chip-shadow);background:#fff}.fp-icon.is-active{background:var(--dark-pill);color:#fff;box-shadow:0 2px 6px #00000040}.fp--stepper{--fp-row:38px}.fp-window{width:44px;height:calc(var(--fp-row) * 3);flex:none;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 9px calc(100% - 9px),#0000);mask-image:linear-gradient(#0000,#000 9px calc(100% - 9px),#0000)}.fp-current{left:0;top:var(--fp-row);width:44px;height:var(--fp-row);background:var(--dark-pill);border-radius:19px;transition:background .2s,box-shadow .2s;position:absolute;box-shadow:0 2px 6px #00000040}.fp-reel{will-change:transform;transition:transform .34s cubic-bezier(.3,1.25,.5,1);position:relative}.fp--stepper .fp-row{height:var(--fp-row);color:var(--ink-3);opacity:.5}.fp--stepper .fp-row.is-near{color:var(--ink-2);opacity:.8}.fp--stepper .fp-row.is-near:hover{opacity:1;color:var(--ink)}.fp--stepper .fp-row.is-active{color:#fff;opacity:1;font-size:14.5px}.fp.is-all .fp-current{box-shadow:inset 0 0 0 1.5px var(--line-2);background:0 0}.fp-pop{--fp-cell:46px;z-index:30;transform-origin:100%;background:#fffffff5;border:1.5px solid #fff;border-radius:20px;max-width:calc(100vw - 24px);padding:10px 12px 12px;position:absolute;box-shadow:0 18px 50px #00000038,0 2px 8px #00000014}.fp-pop-head{justify-content:space-between;align-items:center;gap:12px;padding:0 0 4px 2px;font-size:14.5px;font-weight:800;display:flex}.fp-pop-close{width:30px;height:30px;color:var(--ink-2);border-radius:50%;place-items:center;margin-right:-4px;display:grid}.fp-pop-close:hover{color:var(--ink);background:#0000000f}.fp-sec+.fp-sec{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.fp-sec-title{color:var(--ink-3);margin:2px 2px 6px;font-size:11.5px;font-weight:700}.fp-grid-row{grid-template-columns:repeat(var(--fp-cols), var(--fp-cell));gap:6px;display:grid}.fp-grid-row+.fp-grid-row{margin-top:6px}.fp-cell{height:40px;color:var(--ink);background:#14181e0d;border-radius:12px;place-items:center;font-size:13.5px;font-weight:800;transition:background .15s,transform .1s;display:grid;position:relative}.fp-cell:hover{background:#14181e1a}.fp-cell:active{transform:scale(.95)}.fp-cell.is-active{background:var(--dark-pill);color:#fff;box-shadow:0 2px 6px #00000040}.fp-pop-all{width:100%;height:38px;color:var(--ink);background:#14181e0d;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:13px;font-weight:700;display:flex}.fp-pop-all:hover{background:#14181e1a}.fp-pop-all.is-active{background:var(--dark-pill);color:#fff}.floor-badge{z-index:8;pointer-events:none;top:max(var(--gap), calc(var(--safe-top) + 8px));left:max(calc(var(--map-left,0px) + (100% - var(--map-left,0px) - 70px) / 2), calc(var(--gap) + var(--dock-w) + 112px));border-radius:20px;align-items:center;gap:12px;min-width:196px;padding:6px 20px 6px 6px;transition:left .3s cubic-bezier(.2,.9,.3,1),opacity .2s,visibility .2s;display:flex;position:absolute;transform:translate(-50%)}.fb-code{background:var(--dark-pill);color:#fff;letter-spacing:-.035em;font-variant-numeric:tabular-nums;border-radius:15px;flex:none;place-items:center;min-width:62px;height:54px;padding:0 12px;font-size:31px;font-weight:900;line-height:1;display:grid;overflow:hidden;box-shadow:0 2px 8px #00000038}.fb-code.is-long{letter-spacing:-.02em;font-size:22px}.fb-code-text{align-items:center;display:inline-flex}.fb-text{flex-direction:column;gap:2px;min-width:0;display:flex}.fb-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px;font-weight:800}.fb-name{letter-spacing:-.01em;color:var(--ink);white-space:nowrap;font-size:18px;font-weight:800}#app:has(.pick-banner) .floor-badge{opacity:0;visibility:hidden}@media (max-height:760px) and (min-width:721px){.fp{top:var(--map-controls-right);transform:none}}@media (max-width:720px){.fp{top:calc(var(--safe-top) + 84px);transform:none}.fp-pop{--fp-cell:44px;padding:10px 10px 12px}.floor-badge{left:14px;top:calc(max(14px, calc(var(--safe-top) + 8px)) + 64px);border-radius:16px;gap:9px;min-width:150px;padding:4px 14px 4px 4px;transform:none}.fb-code{border-radius:12px;min-width:46px;height:42px;padding:0 9px;font-size:23px}.fb-code.is-long{font-size:16px}.fb-kicker{font-size:9.5px}.fb-name{font-size:14.5px}:is(#app:has(.op-guide) .floor-badge,#app:has(.fp-pop) .floor-badge){opacity:0;visibility:hidden}}
