.mapv-page{position:relative}.mapv-shell{display:grid;grid-template-columns:minmax(0,1fr) 400px;height:calc(100svh - var(--header-h, 66px));min-height:560px;border-top:1px solid var(--rule)}.mapv-stage{position:relative;min-width:0;background:#e8eef3;overflow:hidden}.mapv-canvas{inset:0;width:100%;height:100%}.mapv-canvas,.mapv-canvas.maplibregl-map{position:absolute}.mapv-panel{position:relative;overflow-y:auto;padding:16px 18px 28px;background:var(--surface);border-left:1px solid var(--rule);font-size:14px}.mapv-nogl{display:block;height:auto;padding:16px}.mapv-h{font-family:var(--display);font-size:20px;line-height:1.3;margin:0}.mapv-h3{font-size:14px;margin:0}.mapv-glass{position:absolute;z-index:3;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-2);padding:10px 12px;color:var(--ink)}.mapv-top{left:12px;top:12px;right:60px;max-width:640px;display:grid;grid-gap:8px;gap:8px}.mapv-controls{display:grid;grid-gap:6px;gap:6px}.mapv-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.mapv-row select{min-height:32px;padding:0 8px;font-size:13px;width:auto}.mapv-count{font-size:13px;margin-right:4px}.mapv-rtms{border-top:1px solid var(--rule-soft);padding-top:6px}.mapv-page .chip-row{display:inline-flex;flex-wrap:wrap;gap:4px}.mapv-page button.chip{border:1px solid var(--rule);cursor:pointer;font:inherit;font-size:12.5px;padding:4px 11px}.mapv-page button.chip.chip-on{background:var(--navy-soft);color:var(--navy);border-color:var(--navy)}.mapv-page .chip-lock{background:var(--surface-2);color:var(--muted)}.mapv-page .badge{display:inline-block;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--ink-2)}.mapv-page .badge-ok{background:var(--good-soft);color:var(--good)}.mapv-page .badge-warn{background:var(--warn-soft);color:var(--warn)}.mapv-page .badge-brass{background:var(--brass-soft);color:var(--brass)}.mapv-page .link-button{background:none;border:0;padding:0;color:var(--navy);cursor:pointer;font:inherit;text-align:left}.mapv-page .link-button:hover{text-decoration:underline}.mapv-page .muted{color:var(--muted)}.mapv-page .small{font-size:12.5px}.mapv-page .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mapv-page .row-muted td{text-decoration:line-through;color:var(--muted)}.mapv-search{position:relative}.mapv-search input{width:100%;min-height:36px;padding:0 14px;border-radius:999px;font:inherit;font-size:13.5px}.map-search-list,.mapv-search input{border:1px solid var(--rule);background:var(--surface)}.map-search-list{position:absolute;top:calc(100% + 6px);left:0;z-index:20;width:min(420px,86vw);max-height:340px;overflow-y:auto;margin:0;padding:4px;list-style:none;border-radius:10px;box-shadow:var(--shadow-2)}.map-search-list button{display:block;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:8px;font:inherit;font-size:13px;cursor:pointer;color:var(--ink)}.map-search-list button:focus-visible,.map-search-list button:hover{background:var(--navy-soft)}.mapv-search-empty{padding:8px 10px}.mapv-legend{left:12px;bottom:78px;max-width:min(330px,calc(100% - 24px));display:grid;grid-gap:6px;gap:6px;font-size:12px}.mapv-legend summary{cursor:pointer;list-style:none}.mapv-legend summary::-webkit-details-marker{display:none}.mapv-legend summary:after{content:" ▾";color:var(--muted)}.mapv-legend:not([open]) summary:after{content:" ▸"}.mapv-page .legend{list-style:none;margin:0;padding:0;display:grid;grid-gap:3px;gap:3px;font-size:12px}.mapv-page .legend li{display:flex;align-items:center;gap:7px}.mapv-swatch{display:inline-block;width:18px;height:10px;border-radius:3px;flex:none;box-shadow:inset 0 0 0 1px rgb(0 0 0/.08)}.mapv-note{position:absolute;left:12px;bottom:78px;z-index:3;margin:0;padding:6px 10px;border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--muted)}.mapv-page .map-tip{position:absolute;left:0;top:0;z-index:6;display:grid;grid-gap:2px;gap:2px;padding:8px 11px;border-radius:10px;pointer-events:none;background:rgb(255 255 255/.95);color:#0f1720;border:1px solid #dde3ec;box-shadow:0 8px 24px -8px rgb(22 32 28/.3);font-size:12px;white-space:nowrap;will-change:transform}.mapv-page .map-tip b{font-size:13px}.mapv-page .map-loading{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;gap:8px;color:#6a778a;font-size:14px;background:linear-gradient(180deg,#e3eef7,#f5f6f4)}.mapv-page .map-loading-dot{width:8px;height:8px;border-radius:50%;background:var(--brass-bright);animation:mapv-dot 1.1s ease-in-out infinite}.mapv-page .map-loading-dot:nth-child(2){animation-delay:.15s}.mapv-page .map-loading-dot:nth-child(3){animation-delay:.3s;margin-right:6px}@keyframes mapv-dot{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(-6px);opacity:1}}.mapv-focus,.mapv-pin{width:16px;height:16px}.mapv-pin{position:relative}.map-pulse{position:absolute;inset:0;pointer-events:none}.map-pulse-core{position:absolute;inset:1px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff4d6,#e8a13a 60%,#b56f10);box-shadow:0 0 14px 4px rgb(232 161 58/.6);border:2px solid #fff}.map-pulse-ring{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:2px solid rgb(232 161 58/.85);animation:mapv-pulse 2.6s cubic-bezier(.16,1,.3,1) infinite}.map-pulse-ring-late{animation-delay:1.3s}@keyframes mapv-pulse{0%{transform:scale(.45);opacity:.95}to{transform:scale(2.1);opacity:0}}.mapv-pin-cards{position:absolute;left:24px;bottom:4px;width:248px;display:grid;grid-gap:6px;gap:6px;padding:10px;border-radius:12px;background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid var(--rule);box-shadow:var(--shadow-3);color:var(--ink);font-size:13px}.mapv-pin-cards[data-waiting=false]{border:2px solid #e8a13a}.mapv-pin-cards[data-waiting=true]{color:var(--muted);background:color-mix(in srgb,var(--surface) 90%,transparent)}.mapv-pin-cards[data-narrow=true]{width:auto;min-width:150px;max-width:220px;padding:7px 9px}.mapv-pin-title{display:flex;gap:6px;align-items:baseline;justify-content:space-between}.mapv-pin-title strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapv-card{display:grid;grid-template-columns:52px minmax(0,1fr);grid-gap:9px;gap:9px;align-items:center;padding:6px;border:1px solid var(--rule);border-radius:10px;background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s}.mapv-card:focus-visible,.mapv-card:hover{border-color:var(--navy);box-shadow:var(--shadow-1)}.mapv-card.premium{border-color:var(--brass-bright)}.mapv-card img{width:52px;height:52px;object-fit:cover;border-radius:7px;background:var(--surface-2)}.mapv-card-body{display:grid;grid-gap:3px;gap:3px;min-width:0}.mapv-card-name{font-size:13px}.mapv-card-head,.mapv-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapv-card-head{font-size:12px;color:var(--ink-2)}.mapv-card .chip{justify-self:start}.mapv-cards{display:grid;grid-gap:8px;gap:8px}.mapv-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.mapv-list button{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;width:100%;padding:7px;border:1px solid var(--rule);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left;font:inherit;cursor:pointer}.mapv-list button:hover{border-color:var(--navy)}.mapv-list button.staffed{border:2px solid #e8a13a;background:color-mix(in srgb,#e8a13a 9%,var(--surface));box-shadow:inset 4px 0 0 #b56f10}.mapv-list button.staffed strong{font-size:15px}.mapv-list button.waiting{opacity:.72}.mapv-list button.waiting img{filter:grayscale(.7)}.mapv-badge{justify-self:start;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px}.mapv-badge.staffed{background:#b56f10;color:#fff}.mapv-badge.waiting{background:var(--surface-2);color:var(--muted);font-weight:500}.mapv-pinlegend{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.mapv-pinkey{display:inline-flex;align-items:center;gap:6px}.mapv-dot{display:inline-block;border-radius:50%;border:2px solid #fff}.mapv-dot.staffed{width:16px;height:16px;background:#b56f10;box-shadow:0 0 0 4px rgb(232 161 58/.35)}.mapv-dot.waiting{width:9px;height:9px;background:#8a94a3;box-shadow:0 0 0 1px #d4d9e0}.mapv-onlyagents{display:inline-flex;align-items:center;gap:5px;cursor:pointer;margin-left:auto}.mapv-onlyagents input{width:auto;margin:0}.mapv-list img{width:64px;height:48px;object-fit:cover;border-radius:6px;background:var(--surface-2)}.mapv-list button>span{display:grid;grid-gap:2px;gap:2px;min-width:0}.mapv-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapv-project{display:grid;grid-template-columns:96px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.mapv-project img{width:96px;height:72px;object-fit:cover;border-radius:8px;background:var(--surface-2)}.mapv-project p{margin:4px 0 0}.mapv-actions{margin-top:8px;gap:6px}.mapv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));grid-gap:8px;gap:8px}.mapv-stats>div{display:grid;grid-gap:2px;gap:2px;padding:9px 10px;border:1px solid var(--rule);border-radius:9px;background:var(--paper)}.mapv-stats b{font-size:15px}.mapv-table{font-size:12.5px}.mapv-panel .table-wrap{box-shadow:none}.mapv-grades{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px}.mapv-grades li{display:grid;justify-items:center;grid-gap:2px;gap:2px;padding:7px 4px;border:1px solid var(--rule);border-radius:9px;cursor:help}.mapv-grades b{font-size:18px;font-family:var(--display)}.mapv-grades b[data-grade=A]{color:var(--good)}.mapv-grades b[data-grade=D]{color:var(--bad)}.mapv-facts{display:grid;grid-template-columns:88px minmax(0,1fr);grid-gap:6px 10px;gap:6px 10px;margin:0;font-size:13px}.mapv-facts dt{color:var(--muted)}.mapv-facts dd{margin:0}.mapv-facts dd .small{font-weight:400;margin-top:2px}.mapv-scatter{margin:0;display:grid;grid-gap:4px;gap:4px}.mapv-scatter figcaption{justify-content:space-between}.mapv-scatter svg{width:100%;height:auto}.mapv-scatter .axis{stroke:var(--rule);stroke-width:1}.mapv-scatter .tick{fill:var(--muted);font-size:9.5px}.mapv-bands{gap:10px}.mapv-bands .row{gap:4px}.mapv-bands .mapv-swatch{width:10px;height:10px;border-radius:5px}.mapv-scatter-empty{gap:8px}.mapv-fav{gap:8px;margin-top:6px}.mapv-sheet-handle{display:none}.mapv-toggle{justify-self:start;border:1px solid var(--rule);border-radius:999px;background:var(--surface);color:var(--ink-2);padding:3px 12px;cursor:pointer}.mapv-stage .maplibregl-ctrl-bottom-right{right:76px}.mapv-stage .maplibregl-ctrl-attrib{font-size:10.5px}@media (max-width:759px){.mapv-shell{grid-template-columns:minmax(0,1fr);height:calc(100svh - var(--header-h, 66px));min-height:480px;position:relative}.mapv-panel{position:absolute;left:0;right:0;bottom:0;z-index:5;max-height:52%;border-left:0;border-top:1px solid var(--rule);border-radius:16px 16px 0 0;box-shadow:var(--shadow-3);padding:6px 14px 20px}.mapv-panel[data-collapsed=true]{max-height:92px;overflow:hidden}.mapv-sheet-handle{display:block;margin:0 auto 6px;padding:4px 18px;border:0;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11.5px}.mapv-top{right:52px;padding:8px;gap:6px}.mapv-top[data-expanded=false] .mapv-controls{display:none}.mapv-panel{padding-bottom:84px}.mapv-row select{flex:1 1 40%}.mapv-legend,.mapv-note,.mapv-shell:not(.mapv-open) .mapv-legend{bottom:calc(52% + 8px)}.mapv-cards{grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.mapv-cards .mapv-card{scroll-snap-align:start}.mapv-stage .maplibregl-ctrl-bottom-right{right:0}}@media (prefers-reduced-motion:reduce){.map-pulse-ring,.mapv-page .map-loading-dot{animation:none}}[data-motion=lite] :is(.map-pulse-ring,.map-loading-dot){animation:none!important}