.bs-panel{max-height:min(70vh,600px);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:color-mix(in srgb,var(--color-panel-solid) 60%,transparent);border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -8px 30px rgba(0,0,0,.12);overflow:auto;will-change:transform;padding-bottom:env(safe-area-inset-bottom,0)}.bs-grabber{height:24px;display:flex;align-items:center;justify-content:center;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab;padding-top:8px;padding-bottom:12px}.bs-grabber-bar{width:36px;height:4px;border-radius:999px;opacity:.4;background:currentColor}.bs-content{padding:12px 16px 16px;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab}.stage{display:grid;grid-template:1fr/1fr;height:100dvh}.stage>*{grid-area:1/1}.overlay{position:relative;z-index:1;pointer-events:none}.glassHeader{position:-webkit-sticky;position:sticky;inset-inline:0;top:0;pointer-events:auto;padding:var(--space-5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:color-mix(in srgb,var(--color-panel-solid) 30%,transparent);-webkit-border-after:1px solid var(--color-panel-contrast);border-block-end:1px solid var(--color-panel-contrast)}.glassHeader :is(button,input,a,[role=button]){pointer-events:auto}.glass{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(255 255 255/.18);border-radius:6px}.dark .glass{background:rgba(0 0 0/.28)}.mapControlsRow,.mapToolbarWrap,.overlay,.overlayDock{pointer-events:none}.mapControlsRow{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;padding-right:24px}.mapControlsRow>*{pointer-events:auto}.mapToolbar{width:max-content}.navBar{grid-area:1/1;align-self:start;display:flex;justify-content:space-between;align-items:center;padding:24px;gap:8px;background:transparent;pointer-events:none;z-index:1}.navButton{pointer-events:auto}@property --ring-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --ring-thickness{syntax:"<length>";inherits:false;initial-value:2px}.outlineWrap{position:relative;display:inline-flex}.outlineWrap>.navButton{border-radius:var(--radius-3)}.outlineWrap:before{--ring-thickness:2px;content:"";position:absolute;inset:calc(var(--ring-thickness) * -1);border-radius:calc(var(--radius-3) + var(--ring-thickness));padding:var(--ring-thickness);background:conic-gradient(from var(--ring-angle),var(--indigo-9) 0,var(--cyan-9) 25%,var(--purple-9) 50%,var(--cyan-9) 75%,var(--indigo-9) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none;transition:opacity .18s ease}.outlineWrap.isLoading:before{opacity:1;animation:ring-spin-fast .9s linear infinite}.outlineWrap.isPlaying:before{opacity:1;animation:ring-pulse 1.4s ease-in-out infinite}@keyframes ring-spin-fast{to{--ring-angle:360deg}}@keyframes ring-pulse{0%,to{--ring-thickness:2px;opacity:.45}50%{--ring-thickness:6px;opacity:1}}@media (prefers-reduced-motion:reduce){.outlineWrap.isLoading:before,.outlineWrap.isPlaying:before{animation:none;--ring-angle:0deg;--ring-thickness:2px}}.callout{position:-webkit-sticky;position:sticky;inset-inline:0;top:0;pointer-events:auto;border-radius:var(--radius-3);padding:var(--space-5);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:color-mix(in srgb,var(--color-panel-solid) 90%,transparent);-webkit-border-after:1px solid var(--color-panel-contrast);border-block-end:1px solid var(--color-panel-contrast)}.canvas{width:100%;height:100%;z-index:0;-webkit-user-select:none;-webkit-touch-callout:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none}.canvas,body{overflow:hidden}body{margin:0;min-height:-webkit-fill-available}.fabDock{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(24px + env(safe-area-inset-bottom, 0px));z-index:30;pointer-events:none;max-width:var(--container-3)}.fabDock>*{pointer-events:auto}.fabButton{box-shadow:0 10px 30px rgba(0,0,0,.25)}.topDock{position:fixed;top:60px;left:0;right:0;display:flex;justify-content:center;z-index:30;pointer-events:none}.topDock>*{pointer-events:auto}