@font-face{font-family:Signika;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fdb4a58a9fa44ebf-s.2a8ymzhz70eto.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Signika;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c95162173c949907-s.38pwm-mzoy3gr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Signika;font-style:normal;font-weight:400;font-display:swap;src:url(../media/db0dc86926613e41-s.p.42grzhw8wysrc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Signika;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fdb4a58a9fa44ebf-s.2a8ymzhz70eto.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Signika;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c95162173c949907-s.38pwm-mzoy3gr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Signika;font-style:normal;font-weight:500;font-display:swap;src:url(../media/db0dc86926613e41-s.p.42grzhw8wysrc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Signika;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fdb4a58a9fa44ebf-s.2a8ymzhz70eto.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Signika;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c95162173c949907-s.38pwm-mzoy3gr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Signika;font-style:normal;font-weight:600;font-display:swap;src:url(../media/db0dc86926613e41-s.p.42grzhw8wysrc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Signika;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fdb4a58a9fa44ebf-s.2a8ymzhz70eto.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Signika;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c95162173c949907-s.38pwm-mzoy3gr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Signika;font-style:normal;font-weight:700;font-display:swap;src:url(../media/db0dc86926613e41-s.p.42grzhw8wysrc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Signika Fallback;src:local(Arial);ascent-override:98.02%;descent-override:30.45%;line-gap-override:0.0%;size-adjust:95.89%}.signika_b7c765ad-module__l2Ym8G__className{font-family:Signika,Signika Fallback;font-style:normal}.signika_b7c765ad-module__l2Ym8G__variable{--font-signika:"Signika", "Signika Fallback"}
:root{--ui-bg:#101317;--ui-bg-deep:#0a0b0d;--ui-panel:#12151af2;--ui-panel-2:#ffffff0a;--ui-border:#ffffff17;--ui-text:#dcd7c9;--ui-text-dim:#83878d;--ui-accent:#d98a3d;--ui-accent-soft:#c9a227;--ui-on-accent:#1a1006;--ui-hp-green:#4c7a4c;--ui-hp-red:#a1423f;--ui-hp-high:var(--ui-hp-green);--ui-hp-mid:#b7862f;--ui-hp-low:var(--ui-hp-red);--ui-hp-temp:#5f93c4;--ui-hp-temp-text:#a9cdf0;--ui-pc:#3d6ea6;--ui-hostile:#a1423f;--ui-radius:4px;--ui-radius-lg:8px;--ui-font:var(--font-signika), "Signika", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ui-z-rail:20;--ui-z-sidebar:25;--ui-z-topbar:30;--ui-z-sheet:40;--ui-z-modal:100;--ui-z-tooltip:210}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--ui-bg-deep);color:var(--ui-text);font-family:var(--ui-font);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0}button{color:inherit;font:inherit}img{max-width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}::-webkit-scrollbar-track{background:0 0}.map-stage.scene-stage{-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 24px 24px,#f8f5ee0d 1px,#0000 1px) 0 0/24px 24px,linear-gradient(135deg,#14171b 0%,#191d22 48%,#101317 100%);min-width:0;min-height:0;display:block;position:relative;overflow:hidden}.scene-stage.pan-ready{cursor:grab}.scene-stage.panning{cursor:grabbing}.battlemap-frame{transform-origin:0 0;background:#ded5c3;border:1px solid #746b5b;position:absolute;top:0;left:0;box-shadow:0 16px 48px #00000073}.battlemap.scene-canvas{position:absolute;overflow:hidden}.battlemap-frame.interacting{will-change:transform}.map-image-layer{object-fit:cover;pointer-events:none;transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.grid-layer{pointer-events:none;border-style:solid;position:absolute;top:0;left:0}.overlay{pointer-events:none;position:absolute;top:0;left:0}.scene-stage.replaying{outline:2px solid var(--ui-accent);outline-offset:-2px}.scene-replay-banner{z-index:13;border-radius:var(--ui-radius);background:var(--ui-accent);color:var(--ui-on-accent);letter-spacing:.6px;text-transform:uppercase;pointer-events:none;padding:4px 12px;font-size:11px;font-weight:800;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.scene-hud{z-index:12;pointer-events:none;gap:8px;max-width:calc(100% - 170px);display:flex;position:absolute;top:12px;left:14px}.scene-hud div,.viewport-controls{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-panel);color:var(--ui-text);box-shadow:0 8px 24px #00000047}.scene-hud div{min-width:78px;padding:7px 9px}.scene-hud span{color:var(--ui-text-dim);text-transform:uppercase;font-size:10px;display:block}.scene-hud strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;display:block;overflow:hidden}.viewport-controls{z-index:12;gap:4px;padding:4px;display:flex;position:absolute;top:12px;right:14px}.viewport-controls button{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-panel-2);width:32px;min-height:32px;color:var(--ui-text);cursor:pointer;place-items:center;display:grid}.viewport-controls button:hover{border-color:var(--ui-accent);color:var(--ui-accent)}.token{color:#fff;cursor:pointer;transition:left var(--token-move-ms,0s) ease, top var(--token-move-ms,0s) ease, opacity .18s ease, transform .14s ease, box-shadow .14s ease;border:2px solid #fff;border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid;position:absolute;box-shadow:0 4px 10px #0006}.token.image-token{background:#1d1a17;padding:0;overflow:visible}.token.srd-drop-target{outline:2px dashed var(--ui-accent);outline-offset:2px;box-shadow:0 0 12px var(--ui-accent)}.token img{object-fit:cover;pointer-events:none;transform-origin:50%;border-radius:50%;width:100%;height:100%}.token-initials{pointer-events:none}.token-nameplate{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-panel);max-width:120px;color:var(--ui-text);white-space:nowrap;pointer-events:none;padding:1px 5px;font-size:10px;font-weight:700;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.token-overlay-layer,.feedback-layer{pointer-events:none;position:absolute;inset:0;overflow:visible}.token-overlay-layer{z-index:6}.feedback-layer{z-index:7}.battlemap.scene-canvas.aligning{overflow:visible}.battlemap.scene-canvas.aligning .token,.battlemap.scene-canvas.aligning .token-shadow,.battlemap.scene-canvas.aligning .token-overlay-layer{opacity:.15;pointer-events:none}.token-hp{pointer-events:none;height:12px;transition:left var(--token-move-ms,0s) ease, top var(--token-move-ms,0s) ease;background:#111;border:1px solid #000;border-radius:3px;display:flex;position:absolute;overflow:hidden}.token-hp.dropping{transition:left .16s,top .16s}.token-hp>i{height:100%;transition:width var(--hp-anim-ms,0s) ease;flex:none;display:block}.token-hp>b{color:#fff;white-space:nowrap;text-shadow:0 0 2px #000,0 0 2px #000,0 1px 1px #000;justify-content:center;align-items:center;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;inset:0}.token-hp.tone-high>i{background:var(--ui-hp-high)}.token-hp.tone-mid>i{background:var(--ui-hp-mid)}.token-hp.tone-low>i{background:var(--ui-hp-low)}.token-hp>i.temp{background:var(--ui-hp-temp)}.token-hp>b>em{color:var(--ui-hp-temp-text);margin-left:2px;font-style:normal}.token-hp.out>i{width:0!important}.token.party{background:var(--ui-pc)}.token.enemy{background:var(--ui-hostile)}.token.downed,.token.defeated{filter:grayscale();opacity:.58}.token.surprised{outline:2px dashed var(--ui-accent);outline-offset:2px}.token.dominated{outline-offset:2px;outline:2px solid #c23fd9;box-shadow:0 0 10px 2px #c23fd9a6}.token.reserve{filter:grayscale(.85);opacity:.32;border-style:dashed}.token.selected{outline:3px solid var(--ui-accent-soft);outline-offset:2px}.token.in-active-zone{box-shadow:0 0 0 3px #b289e6e6,0 0 10px 2px #825ab4b3}.tool-select .token{cursor:grab}.token.dragging{cursor:grabbing;opacity:.55;z-index:5;transition:opacity .12s,transform .12s,box-shadow .12s;transform:scale(1.08);box-shadow:0 14px 30px #0000008c}.token.dropping{z-index:5;transition:left .16s,top .16s,opacity .2s,transform .16s,box-shadow .16s}.feedback{white-space:nowrap;pointer-events:none;-webkit-text-stroke:2px #0c0907eb;paint-order:stroke fill;text-shadow:0 2px 3px #00000080;font-size:14px;font-weight:800;line-height:1;animation:1.3s ease-out forwards feedback-float;position:absolute;transform:translate(-50%,-50%)}.feedback-damage{color:#ef6259}.feedback-heal{color:#6bcf7a}.feedback-action{color:#f3ead4;font-size:12px;font-weight:700}.feedback-reaction{color:#b794f6;font-size:12px;font-weight:800}.feedback-attack-hit,.feedback-save-pass{color:#6bcf7a;font-size:12px}.feedback-attack-miss,.feedback-save-fail{color:#c3cbd6;font-size:12px}.feedback-attack-crit{color:#f0c95e;font-size:13px;font-weight:900}@keyframes feedback-float{0%{opacity:0;transform:translate(-50%,calc(5px - 50%))}15%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(-50%,calc(-50% - 34px))}}@media (prefers-reduced-motion:reduce){.feedback{animation-duration:.95s}@keyframes feedback-float{0%{opacity:0;transform:translate(-50%,-50%)}15%{opacity:1}75%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)}}}.terrain{cursor:pointer;pointer-events:all}.terrain.passive{pointer-events:none}.terrain.normal,.terrain.custom{fill:#2872772e;stroke:#287277a6;stroke-width:.04px}.terrain.difficult{fill:#d4a72c59;stroke:#8b6916cc;stroke-width:.04px}.terrain.impassable{fill:#b8453647;stroke:#b84536d1;stroke-width:.04px}.terrain.hazard-water{fill:#408cc866;stroke:#1e5a96d9;stroke-width:.04px}.terrain.hazard-water.terrain-deep{fill:#143c828c}.terrain.hazard-solid{fill:#6e645a99;stroke:#463e37e6;stroke-width:.04px}.terrain.hazard-climbable{fill:#96826473;stroke:#64543ce6;stroke-width:.04px;stroke-dasharray:.12 .08}.terrain.hazard{fill:#994c204d;stroke:#994c20c7;stroke-width:.04px}.terrain.hazard-acid{fill:#85bf3a61;stroke:#5e8a1ed9;stroke-width:.04px}.terrain.hazard-lava{fill:#e056187a;stroke:#9e2d0ae6;stroke-width:.05px}.terrain.hazard-ice{fill:#add8e673;stroke:#64aac8d9;stroke-width:.04px}.terrain-hazard-icon{pointer-events:none;color:#141414bf}.terrain.cover,.terrain.elevation{fill:#315f9f38;stroke:#315f9fb8;stroke-width:.04px}.terrain.selected{stroke:#fff;stroke-width:.08px}.terrain.difficult.terrain-x4{fill:#d4a72c8c;stroke:#8b6916}.terrain-paint-preview{pointer-events:none}.terrain-paint-preview rect{fill:#ffffff59;stroke:#ffffffe6;stroke-width:.05px;stroke-dasharray:.08 .06}.path-cell{fill:#2d6f7338;stroke:#2d6f73cc;stroke-width:.03px}.wall-line{stroke:#29251f;stroke-width:.12px;stroke-linecap:round;pointer-events:none}.wall-hit{stroke:#0000;stroke-width:.34px;stroke-linecap:round;pointer-events:stroke;cursor:pointer}.wall-line.cover-three-quarters{stroke-width:.09px;stroke:#4a4034}.wall-line.cover-half{stroke-width:.06px;stroke:#6b5d49;stroke-dasharray:.26 .12}.wall-line.cover-none{stroke-width:.04px;stroke:#6b5d498c;stroke-dasharray:.06 .14}.wall-line.selected{stroke:var(--ui-accent-soft);stroke-width:.16px}.wall-preview-line{stroke:var(--ui-accent);stroke-width:.08px;stroke-dasharray:.18 .12;stroke-linecap:round;pointer-events:none}.wall-start{fill:var(--ui-accent-soft);stroke:#fff;stroke-width:.04px;pointer-events:none}.wall-cursor{fill:#2d6f738c;stroke:#fff;stroke-width:.035px;pointer-events:none}.wall-node{fill:#fff;stroke:#29251f;stroke-width:.045px;pointer-events:none}.wall-node-hit{fill:#0000;cursor:pointer;pointer-events:all}.wall-node-group:hover .wall-node,.wall-node.selected{fill:var(--ui-accent-soft);stroke:#fff;stroke-width:.06px}.wall-node-group:active .wall-node-hit{cursor:grabbing}.wall-node-group.drawing .wall-node-hit,.wall-hit.drawing{pointer-events:none}.target-line{stroke-width:.045px;stroke-dasharray:.16 .12}.target-line.clear{stroke:var(--ui-accent)}.target-line.blocked{stroke:var(--ui-hp-red)}.sight-line{stroke-width:.055px;stroke-dasharray:.08 .08}.sight-line.clear{stroke:#287277}.sight-line.blocked{stroke:#b84536}.measure-layer,.template-layer{pointer-events:none}.measure-line{stroke:#1d565a;stroke-width:.06px;stroke-dasharray:.1 .08}.measure-point{fill:var(--ui-accent-soft);stroke:#fff;stroke-width:.03px}.measure-label,.template-label{paint-order:stroke;stroke:#fff;stroke-width:.12px;fill:#1d565a;text-anchor:middle;dominant-baseline:central;font-size:.34px;font-weight:800}.template-label{pointer-events:none}.measured-path-cell{fill:#c8a34a57;stroke:#8c6a2899;stroke-width:.03px;pointer-events:none}.measured-path-cell.blocked{fill:#b845362e;stroke:#b8453673}.play-move{pointer-events:none}.play-reach{fill:#d98a3d24;stroke:#d98a3d4d;stroke-width:.02px}.play-path{fill:none;stroke:#f0b06a;stroke-width:.09px;stroke-linecap:round;stroke-linejoin:round}.play-path.blocked{stroke:#d0605a;stroke-dasharray:.18 .12}.play-dest{fill:#f0b06a33;stroke:#f0b06a;stroke-width:.06px}.play-dest.blocked{fill:#d0605a29;stroke:#d0605a}.play-cost,.play-slowed,.play-oa-label,.play-waypoint-label{paint-order:stroke;stroke:#0a0b0dd9;stroke-width:.1px;text-anchor:middle;dominant-baseline:central;font-weight:800}.play-cost{fill:#f6d3a6;font-size:.34px}.play-cost.blocked{fill:#f0a29b}.play-slowed{fill:#e9c46a;font-size:.22px}.play-hazard{color:#ff9f43}.play-waypoint{fill:#f0b06a;stroke:#0a0b0dcc;stroke-width:.04px}.play-waypoint-label{fill:#1a1006;stroke:none;font-size:.24px}.play-oa-ring{fill:none;stroke:#d0605a;stroke-width:.07px}.play-oa-line{stroke:#d0605a;stroke-width:.05px;stroke-dasharray:.12 .08}.play-oa-mark{fill:none;stroke:#d0605a;stroke-width:.07px}.play-oa-icon{color:#f0a29b}.play-oa-label{fill:#f0a29b;text-anchor:start;font-size:.24px}.play-aim{pointer-events:none}.play-range{fill:#6ea0dc21;stroke:#6ea0dc38;stroke-width:.02px}.play-target{fill:none;stroke:#7fd18b;stroke-width:.06px;stroke-dasharray:.16 .08}.play-target.hovered{stroke-width:.1px;stroke-dasharray:none}.play-target.blocked{stroke:#d0605a}.play-pick{fill:#7fd18b;stroke:#0a0b0dd9;stroke-width:.04px}.play-pick-label{fill:#0f2414;text-anchor:middle;dominant-baseline:central;font-size:.22px;font-weight:800}.play-area{fill:#e8704052;stroke:#e87040b3;stroke-width:.03px}.play-area.heals{fill:#7fd18b47;stroke:#7fd18bb3}.play-area.zone{fill:#a9c6ec4d;stroke:#a9c6ecbf}.play-area.blocked{fill:#d0605a29;stroke:#d0605a8c;stroke-dasharray:.12 .08}.play-area-origin{fill:#fff;stroke:#0a0b0dcc;stroke-width:.03px}.play-caught{fill:none;stroke-width:.08px}.play-caught.foe{stroke:#f08a4b}.play-caught.friend{stroke:#f2d04b;stroke-dasharray:.14 .08}.play-caught.heals{stroke:#7fd18b}.play-caught-label{paint-order:stroke;stroke:#0a0b0dd9;stroke-width:.1px;text-anchor:middle;dominant-baseline:central;font-size:.24px;font-weight:800}.play-caught-label.foe{fill:#f6c3a0}.play-caught-label.friend{fill:#f2d04b}.play-caught-label.heals{fill:#b7ecbf}.play-aim-tooltip{z-index:8;border-radius:var(--ui-radius);background:var(--ui-bg);max-width:260px;color:var(--ui-text);pointer-events:none;border:1px solid #7fd18b;gap:2px;padding:6px 9px;font-size:12px;line-height:1.35;display:grid;position:absolute;box-shadow:0 8px 20px #00000073}.play-aim-tooltip[data-ok=false]{border-color:#d0605a}.play-aim-tooltip[data-ok=false] span{color:#f0a29b}.door-hit{stroke:#0000;stroke-width:.3px;pointer-events:stroke;cursor:context-menu}.overlay.play-move-marks{z-index:6}.placed-template{opacity:.35}.placed-template.selected{opacity:.55}.template-cell{fill-opacity:.42;stroke-opacity:.85;stroke-width:.025px;cursor:pointer;pointer-events:all}.draft-template .template-cell{fill-opacity:.18;pointer-events:none}.area-flash{pointer-events:none;color:var(--ui-accent)}.area-flash.dmg-fire{color:#e07b3a}.area-flash.dmg-cold{color:#5aa9d6}.area-flash.dmg-lightning{color:#e6c94a}.area-flash.dmg-thunder{color:#8f9fd6}.area-flash.dmg-acid{color:#82c341}.area-flash.dmg-poison{color:#5fae4c}.area-flash.dmg-necrotic{color:#8163a6}.area-flash.dmg-radiant{color:#ecd98a}.area-flash.dmg-force{color:#b98bd6}.area-flash.dmg-psychic{color:#d67ab0}.area-flash rect{fill:currentColor;stroke:currentColor;stroke-width:.03px;animation:1.5s ease-out forwards area-flash-fade}@keyframes area-flash-fade{0%{opacity:0}10%{opacity:.42}55%{opacity:.3}to{opacity:0}}@media (prefers-reduced-motion:reduce){.area-flash rect{animation-duration:1s}@keyframes area-flash-fade{0%{opacity:0}12%{opacity:.32}70%{opacity:.26}to{opacity:0}}}.active-zone{pointer-events:none}.zone-cell{fill:#825ab46b;stroke:#b289e6;stroke-width:.06px;stroke-dasharray:.1 .07;animation:2.4s ease-in-out infinite zone-pulse}@keyframes zone-pulse{0%,to{fill-opacity:.75}50%{fill-opacity:1}}@media (prefers-reduced-motion:reduce){.zone-cell{animation:none}}.zone-label{paint-order:stroke;stroke:#fff;stroke-width:.1px;fill:#5a3d80;text-anchor:middle;dominant-baseline:central;font-size:.28px;font-weight:700}.elevation-layer{pointer-events:none}.elevation-cell{stroke:none}.cliff-edge{stroke:#7a2e12;stroke-width:.09px;stroke-linecap:round;filter:drop-shadow(0 0 .03px #000c)}.elevation-label{fill:#fff;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:#000000bf;stroke-width:.06px;font-size:.3px;font-weight:800}.elevation-label.preview{fill:#fff7d6}.elevation-paint-preview rect{fill:#ffffff4d;stroke:#ffffffe6;stroke-width:.05px;stroke-dasharray:.08 .06}.ramp-preview rect{fill:#60c87866;stroke:#96f0aaf2;stroke-width:.05px}.ramp-preview.steep rect{fill:#dc50466b;stroke:#ff968cf2}.ramp-summary,.elevation-hover-label{fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#000000d9;stroke-width:.08px;font-size:.26px;font-weight:700}.ramp-preview.steep .ramp-summary{fill:#ffd0cb}.elevation-hover rect{fill:none;stroke:var(--ui-accent);stroke-width:.07px}.tool-elevation{cursor:crosshair}.elevation-legend-corner{z-index:11;pointer-events:none;max-width:300px;position:absolute;bottom:14px;left:14px}.elevation-legend-corner>div{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-panel);color:var(--ui-text);opacity:.92;padding:7px 9px;box-shadow:0 8px 24px #00000047}.token.airborne{translate:0 calc(var(--lift,0px) * -1);box-shadow:0 10px 14px #00000059}.token-shadow{pointer-events:none;transition:left var(--token-move-ms,0s) ease, top var(--token-move-ms,0s) ease;background:radial-gradient(#00000080 0%,#00000038 55%,#0000 100%);border-radius:50%;position:absolute}.token-altitude{color:#fff;text-align:center;white-space:nowrap;pointer-events:none;background:#1c4f7a;border:1px solid #fff;border-radius:9px;min-width:22px;padding:1px 4px;font-size:10px;font-weight:800;line-height:1.25;position:absolute;top:0;right:0;box-shadow:0 2px 5px #00000080}
