.heatmap-thumb{aspect-ratio:1;width:auto;min-width:0;max-width:100%;height:0;min-height:100%;color:inherit;cursor:pointer;contain:paint;box-shadow:inset 0 0 0 1px var(--line);background:linear-gradient(#00000059,#0003);border:0;justify-self:start;padding:2px;display:block;position:relative;overflow:hidden}.heatmap-thumb:hover,.heatmap-thumb:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.heatmap-thumb:focus-visible{outline-offset:2px;outline:2px solid}.heatmap-thumb .occupancy-grid,.heatmap-thumb-empty{width:auto;height:auto;display:block;position:absolute;inset:2px;overflow:hidden}.heatmap-thumb-empty{background:#151d36}.occupancy-grid{overflow:hidden}.occupancy-grid .is-hot{filter:brightness(1.15)}.heatmap-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.heatmap-panel h3{margin:0}.heatmap-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.heatmap-heading .btn{flex:none}.heatmap-controls{flex-wrap:wrap;align-items:end;gap:.55rem .85rem;margin-top:.85rem;display:flex}.heatmap-controls label{font:600 11px var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:.25rem;margin:0;display:flex}.heatmap-controls select{max-width:16rem}.heatmap-coverage{margin:.55rem 0 0}.heatmap-grid-wrap{justify-content:center;align-items:center;min-width:0;min-height:0;margin:.75rem 0 .4rem;display:flex}.heatmap-panel .occupancy-grid{aspect-ratio:1;width:min(36rem,100%);display:block}.heatmap-panel .occupancy-grid:focus-visible{outline-offset:2px;outline:2px solid}.heatmap-panel .heatmap-readout{font-variant-numeric:tabular-nums;min-height:1.4em;margin:0;font-size:.85rem}.heatmap-panel p{font-size:.85rem}.heatmap-dialog[open]{width:min(44rem,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--text);border:1px solid #ffb23d73;border-top:3px solid var(--accent);background:linear-gradient(145deg,#1b2336,#0e1420 65%);flex-direction:column;padding:1.1rem 1.25rem 1rem;display:flex;overflow:auto;box-shadow:0 20px 90px #000a,0 0 32px #ffb23d12}.heatmap-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#04060cd1}@media (min-width:760px){.heatmap-dialog{max-height:calc(100dvh - 48px);overflow:hidden}.heatmap-grid-wrap{flex:0 auto;margin-block:.65rem .35rem}.heatmap-dialog .occupancy-grid{width:min(36rem,100%,100dvh - 14rem);max-width:100%;height:auto;max-height:calc(100dvh - 14rem)}}
