.map-canvas{position:relative;flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;background:hsl(var(--surface-0))}.map-workspace{position:relative;display:flex;flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:hsl(var(--surface-0))}.map-canvas .maplibregl-canvas,.map-canvas .maplibregl-canvas-container{background:hsl(var(--surface-0))}.map-workspace p[role=alert]{margin:.75rem;padding:.75rem;border-radius:.375rem;border:1px solid hsl(var(--border));background:hsl(var(--destructive) / .15);color:hsl(var(--destructive-foreground))}.map-init-indicator{position:absolute;left:.65rem;bottom:.65rem;z-index:16;display:inline-flex;align-items:center;gap:.45rem;border:1px solid hsl(var(--border) / .75);border-radius:999px;background:hsl(var(--surface-1) / .92);color:hsl(var(--muted-foreground));padding:.18rem .58rem;font-size:.75rem;font-weight:600;letter-spacing:.01em;pointer-events:none}.map-init-indicator-spinner{width:.68rem;height:.68rem;border-radius:999px;border:1.5px solid hsl(var(--border));border-top-color:hsl(var(--ring));animation:map-init-spin .9s linear infinite}@keyframes map-init-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.map-init-indicator-spinner{animation:none}}.map-safety-scrim{position:absolute;inset:0;z-index:8;pointer-events:none;background:#0000;transition:background-color .12s ease-out}.map-safety-scrim--visible{background:#0000001f}.map-context-menu{position:absolute;z-index:25;min-width:12rem;display:grid;gap:1px;padding:.25rem;border:1px solid hsl(var(--border));border-radius:.375rem;background:hsl(var(--surface-1));box-shadow:0 8px 20px hsl(var(--foreground) / .2)}.map-context-menu-item{width:100%;min-width:0;text-align:left;padding:.25rem .5rem;border:1px solid transparent;border-radius:.25rem;background:transparent;color:hsl(var(--foreground))}.map-context-menu-item:hover{border-color:hsl(var(--border));background:hsl(var(--surface-2))}.map-shot-tray-hint{position:absolute;top:.72rem;left:.72rem;z-index:24;width:min(18rem,calc(100vw - 1.5rem));border:1px solid hsl(var(--border));border-radius:.5rem;background:hsl(var(--surface-1) / .95);box-shadow:0 8px 18px hsl(var(--foreground) / .2);padding:.55rem .62rem}.map-shot-tray-hint-title{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.map-shot-tray-hint-copy{margin:.22rem 0 0;font-size:.72rem;color:hsl(var(--muted-foreground))}.map-shot-tray-hint-button{margin-top:.48rem;border:1px solid hsl(var(--border));border-radius:.38rem;background:hsl(var(--surface-0));color:hsl(var(--foreground));padding:.32rem .55rem;font-size:.72rem;font-weight:600;cursor:pointer}.map-shot-tray-hint-button:hover{border-color:hsl(var(--ring) / .58)}.map-shot-dock{position:absolute;left:.8rem;right:.8rem;bottom:.8rem;z-index:24;border:1px solid hsl(var(--border));border-radius:.62rem;background:hsl(var(--surface-1) / .95);box-shadow:0 10px 22px hsl(var(--foreground) / .24);padding:.62rem;color:hsl(var(--foreground))}.map-shot-dock-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.map-shot-dock-title{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.map-shot-dock-meta{margin:.2rem 0 0;font-size:.73rem;color:hsl(var(--muted-foreground))}.map-shot-round-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.3rem}.map-shot-round-summary-item{border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--surface-0) / .68);padding:.18rem .5rem;font-size:.71rem;white-space:nowrap}.map-shot-hole-strip{margin-top:.48rem;display:flex;align-items:center;gap:.36rem;overflow-x:auto;padding-bottom:.08rem}.map-shot-hole-pill{border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--surface-0) / .78);color:hsl(var(--foreground));font-size:.7rem;font-weight:600;padding:.16rem .45rem;cursor:pointer;white-space:nowrap}.map-shot-hole-pill:hover{border-color:hsl(var(--ring) / .58)}.map-shot-hole-pill--active{border-color:hsl(var(--primary));background:hsl(var(--primary) / .22)}.map-shot-dock-controls{margin-top:.58rem;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.45rem}.map-shot-dock-field{display:flex;flex-direction:column;gap:.18rem}.map-shot-dock-field span{font-size:.66rem;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.02em}.map-shot-dock-field input,.map-shot-dock-field select{width:100%;min-width:0;height:1.75rem;border:1px solid hsl(var(--border));border-radius:.35rem;background:hsl(var(--surface-0));color:hsl(var(--foreground));padding:.2rem .42rem;font-size:.72rem}.map-shot-dock-field input[type=range]{height:auto;padding:0}.map-shot-dock-field--wide{grid-column:span 2}.map-shot-dock-toggle{display:inline-flex;align-items:center;gap:.36rem;font-size:.71rem;color:hsl(var(--foreground))}.map-shot-dock-actions{grid-column:span 3;display:flex;justify-content:flex-end;align-items:flex-end;gap:.4rem}.map-shot-dock-button{border:1px solid hsl(var(--border));border-radius:.38rem;padding:.35rem .58rem;font-size:.72rem;font-weight:600;cursor:pointer}.map-shot-dock-button--ghost{background:hsl(var(--surface-0));color:hsl(var(--foreground))}.map-shot-dock-button--ghost:hover{border-color:hsl(var(--ring) / .58)}.map-shot-dock-button--primary{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.map-shot-dock-button:disabled{opacity:.55;cursor:not-allowed}.map-shot-dock-empty{margin:.55rem 0 0;font-size:.73rem;color:hsl(var(--muted-foreground))}.map-shot-dock-legend{margin:.55rem 0 0;display:flex;align-items:center;gap:.45rem;font-size:.69rem;color:hsl(var(--muted-foreground))}.map-shot-legend-swatch{display:inline-block;width:1.05rem;height:0;border-top:2px solid transparent;border-radius:999px;flex:0 0 auto}.map-shot-legend-swatch--mean{border-top-color:#60a5fa}.map-shot-legend-swatch--band{border-top-color:#facc15;opacity:.65}.map-shot-legend-swatch--samples{border-top-color:#facc15;opacity:.35;border-top-style:dashed}.map-shot-legend-swatch--centerline{border-top-color:#ef4444;opacity:.5}@media(max-width:1080px){.map-shot-dock{left:.55rem;right:.55rem;bottom:.55rem}.map-shot-dock-head{flex-direction:column;align-items:flex-start}.map-shot-round-summary{justify-content:flex-start}.map-shot-dock-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.map-shot-dock-field--wide,.map-shot-dock-actions{grid-column:span 2}.map-shot-dock-actions{justify-content:stretch;flex-wrap:wrap}}.map-slope-aoi-prompt{position:absolute;top:.9rem;right:.9rem;z-index:30;width:min(21rem,calc(100vw - 2rem));border:1px solid hsl(var(--border));border-radius:.5rem;background:hsl(var(--surface-1));box-shadow:0 10px 22px hsl(var(--foreground) / .18);padding:.7rem}.map-slope-aoi-prompt-title{margin:0;font-size:.82rem;font-weight:600;color:hsl(var(--foreground))}.map-slope-aoi-prompt-copy{margin:.35rem 0 .55rem;font-size:.73rem;color:hsl(var(--muted-foreground));line-height:1.35}.map-slope-aoi-prompt-actions{display:flex;gap:.45rem}.map-slope-aoi-button{width:auto;border:1px solid hsl(var(--border));border-radius:.35rem;background:hsl(var(--surface-0));color:hsl(var(--foreground));padding:.32rem .55rem;font-size:.73rem;font-weight:600;cursor:pointer}.map-slope-aoi-button:hover{border-color:hsl(var(--ring) / .62)}.map-slope-aoi-button-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.map-slope-aoi-dialog-backdrop{position:absolute;inset:0;z-index:35;display:grid;place-items:center;padding:1rem;background:hsl(var(--background) / .45)}.map-slope-aoi-dialog{width:min(26rem,calc(100vw - 2rem));border:1px solid hsl(var(--border));border-radius:.6rem;background:hsl(var(--surface-1));color:hsl(var(--foreground));padding:.95rem;box-shadow:0 16px 30px hsl(var(--foreground) / .2)}.map-slope-aoi-dialog-title{margin:0;font-size:.95rem;font-weight:650}.map-slope-aoi-dialog-copy{margin:.4rem 0 0;font-size:.75rem;line-height:1.35;color:hsl(var(--muted-foreground))}.map-slope-aoi-dialog-meta{margin:.45rem 0 0;font-size:.72rem;color:hsl(var(--muted-foreground))}.map-slope-aoi-dialog-label{display:block;margin-top:.75rem;margin-bottom:.35rem;font-size:.76rem;font-weight:600}.map-slope-aoi-resolution-row{display:flex;align-items:center;gap:.55rem}.map-slope-aoi-resolution-input{flex:1 1 auto;width:100%;min-width:0;border:1px solid hsl(var(--border));border-radius:.35rem;background:hsl(var(--surface-0));color:hsl(var(--foreground));padding:.33rem .45rem;font-size:.78rem}.map-slope-aoi-resolution-foot{font-size:.72rem;color:hsl(var(--muted-foreground));white-space:nowrap}.map-slope-aoi-resolution-slider{width:100%;margin-top:.55rem}.map-slope-aoi-dialog-hint{margin:.4rem 0 0;font-size:.7rem;color:hsl(var(--muted-foreground));line-height:1.35}.map-slope-aoi-dialog-actions{margin-top:.82rem;display:flex;justify-content:flex-end;gap:.45rem}.map-conflict-tooltip .maplibregl-popup-content{border:1px solid hsl(var(--border));border-radius:.4rem;padding:.35rem .5rem;background:hsl(var(--surface-1));color:hsl(var(--foreground));font-size:.75rem;line-height:1.25;box-shadow:0 8px 18px hsl(var(--foreground) / .22)}.map-conflict-tooltip .maplibregl-popup-tip{border-top-color:hsl(var(--surface-1));border-bottom-color:hsl(var(--surface-1))}
