.spacer-app{color:#16251e;max-width:1360px;margin:auto}.spacer-app *{box-sizing:border-box}.spacer-intro{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:0 0 30px}.spacer-kicker{display:block;color:#64826e;font-size:10px;font-weight:800;letter-spacing:.12em}.spacer-intro h2{font-size:clamp(30px,3vw,42px);letter-spacing:-.03em;margin:9px 0 10px}.spacer-intro p,.spacer-toolbar p{color:#738078;font-size:14px;line-height:1.6;margin:0}.spacer-version{font-size:10px;letter-spacing:.07em;color:#7e9085;white-space:nowrap}.spacer-version b{color:#27583b;margin-left:10px}.spacer-layout{display:grid;grid-template-columns:320px minmax(0,1fr);align-items:start;gap:22px}.spacer-controls,.spacer-workspace{background:#fff;border:1px solid #e3ebe3;border-radius:14px;box-shadow:0 10px 30px #17361c08}.spacer-controls{padding:24px}.spacer-section{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #e7ede5}.spacer-section-head{display:flex;align-items:center;gap:12px;margin-bottom:17px}.spacer-section-head span{display:grid;place-items:center;width:30px;height:30px;background:#edf5eb;color:#467152;border-radius:8px;font-size:11px;font-weight:800}.spacer-section h3{font-size:16px;margin:0;font-weight:700}.spacer-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:18px}.spacer-presets button{padding:9px 3px;border:1px solid #dce7da;border-radius:7px;background:#fff;color:#596960;font-size:11px;font-weight:700}.spacer-presets button:last-child{grid-column:1/-1}.spacer-presets button.active{background:#285f3e;border-color:#285f3e;color:#fff}.spacer-app label{display:block;font-size:12px;font-weight:700;color:#52635a;line-height:1.4;margin:0 0 7px}.spacer-app label>span,.spacer-app label small{font-weight:400;color:#89978d}.spacer-app input,.spacer-app select{display:block;width:100%;height:44px;margin-top:7px;padding:9px 11px;background:#f9fbf8;border:1px solid #dce6d9;border-radius:7px;font-size:15px;color:#1b3022}.spacer-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spacer-section .spacer-fields{margin-bottom:13px}.spacer-advanced summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;color:#345f42;font-size:13px;font-weight:700;cursor:pointer;list-style:none}.spacer-advanced summary::-webkit-details-marker{display:none}.spacer-advanced summary span{font-size:19px}.spacer-advanced[open] summary span{transform:rotate(45deg)}.spacer-advanced .spacer-fields{margin:14px 0}.spacer-reset{background:none;border:0;padding:12px 0 0;color:#798d7e;font-size:11px;text-align:left}.spacer-workspace{padding:26px}.spacer-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.spacer-toolbar h3,.spacer-export h3{font-size:21px;margin:6px 0;font-weight:700;letter-spacing:-.02em}.spacer-live{font-size:9px;color:#64826e;white-space:nowrap;font-weight:700}.spacer-live i,.spacer-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#7eae72;margin-right:6px}.spacer-canvas{display:grid;place-items:center;min-height:340px;height:440px;padding:20px;border:1px solid #e2ebe0;border-radius:11px;background-color:#f7faf6;background-image:radial-gradient(#dce7db 1px,transparent 1px);background-size:16px 16px}.spacer-canvas svg{display:block;width:100%;height:100%;max-height:400px;overflow:visible}.spacer-plate{fill:#e2eee0;stroke:#93b390;stroke-width:.7}.spacer-cell{cursor:pointer;outline:none}.spacer-cell circle{fill:#fff;stroke:#6b9874;stroke-width:.7;transition:fill .15s}.spacer-cell text{font:400 5px Arial,sans-serif;fill:#9ab49b;pointer-events:none}.spacer-cell:hover circle,.spacer-cell:focus circle{fill:#e5f4e4;stroke:#247244;stroke-width:1.4}.spacer-cell.off circle{fill:#d4dfd1;stroke:#b1c2ae;stroke-dasharray:2 1}.spacer-cell.off text{fill:#91a493}.spacer-legend{display:flex;align-items:center;gap:20px;margin:14px 0 21px;color:#809086;font-size:11px}.spacer-legend span:nth-child(2) i{background:#d4dfd1}.spacer-legend button{margin-left:auto;background:none;border:0;padding:5px;color:#376d49;font-size:11px;text-decoration:underline;cursor:pointer}.spacer-metrics{display:grid;grid-template-columns:.7fr 1.2fr 1.2fr;border:1px solid #e5ece3;border-radius:10px}.spacer-metrics>div{padding:15px 16px}.spacer-metrics>div+div{border-left:1px solid #e5ece3}.spacer-metrics small{display:block;font-size:9px;letter-spacing:.06em;color:#86958a;font-weight:700}.spacer-metrics strong{display:block;font-size:17px;margin-top:6px}.spacer-error{padding:12px 14px;background:#fff1e9;border:1px solid #eed0bd;border-radius:8px;color:#9a4c28;font-size:13px;line-height:1.5;margin:14px 0}.spacer-export{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:25px}.spacer-export p{margin:0;color:#839087;font-size:12px}.spacer-export-buttons{display:flex;gap:7px;flex-wrap:wrap}.spacer-export-buttons button{background:#fff;color:#355842;border:1px solid #ceddcf;border-radius:7px;padding:12px 15px;font-size:12px;font-weight:700;min-height:44px}.spacer-export-buttons .spacer-primary{background:#245f3d;border-color:#245f3d;color:#fff}.spacer-export-buttons button:disabled{opacity:.4;cursor:not-allowed}.spacer-note{font-size:11px;line-height:1.6;color:#8c9a8d;margin:18px 0 0}.spacer-app :focus-visible{outline:2px solid #347149;outline-offset:3px}
@media(max-width:1050px){.spacer-layout{grid-template-columns:270px minmax(0,1fr)}.spacer-controls,.spacer-workspace{padding:20px}.spacer-export{align-items:start;flex-direction:column}.spacer-canvas{height:360px}}
@media(max-width:780px){.spacer-intro{margin-bottom:20px}.spacer-intro h2{font-size:30px}.spacer-intro p{font-size:14px}.spacer-version{display:none}.spacer-layout{grid-template-columns:1fr;gap:14px}.spacer-controls,.spacer-workspace{padding:18px}.spacer-section{padding-bottom:17px;margin-bottom:17px}.spacer-presets{grid-template-columns:repeat(5,1fr)}.spacer-presets button:last-child{grid-column:auto}.spacer-toolbar h3{font-size:19px}.spacer-toolbar p{font-size:12px}.spacer-live{display:none}.spacer-canvas{height:300px;min-height:0;padding:15px}.spacer-legend{gap:10px;flex-wrap:wrap}.spacer-legend button{margin-left:auto}.spacer-metrics{grid-template-columns:1fr 1fr}.spacer-metrics>div{padding:12px}.spacer-metrics>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid #e5ece3}.spacer-metrics strong{font-size:15px}.spacer-export-buttons{width:100%;display:grid;grid-template-columns:1fr 1fr}.spacer-export-buttons .spacer-primary{grid-column:1/-1}.spacer-note{font-size:11px}}
@media(max-width:360px){.spacer-presets{grid-template-columns:repeat(4,1fr)}.spacer-presets button:last-child{grid-column:1/-1}.spacer-legend{font-size:10px}.spacer-canvas{height:260px}}
.spacer-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.spacer-presets button,.spacer-presets button:last-child{grid-column:auto;padding:13px 8px;font-size:13px}.spacer-presets button small{display:block;margin-top:4px;font-size:10px;font-weight:500;opacity:.75}
.spacer-app .spacer-check{display:flex;align-items:flex-start;gap:11px;color:#263d2d;font-size:13px;cursor:pointer}.spacer-app .spacer-check input{display:block;width:18px;height:18px;min-height:18px;margin:1px 0 0;accent-color:#285f3e;flex:none}.spacer-check span{font-weight:700}.spacer-check small{display:block;margin-top:4px;font-size:12px;font-weight:500;color:#718576}.spacer-stops p{margin:10px 0 0;color:#7e8e80;font-size:11px;line-height:1.55}.spacer-cell .spacer-stop-ring{fill:none;stroke:#9dbda1;stroke-width:.55;pointer-events:none}.spacer-cell:hover .spacer-stop-ring,.spacer-cell:focus .spacer-stop-ring{fill:none;stroke:#648d6c;stroke-width:.7}.spacer-legend .stop-legend i{background:transparent;border:1.5px solid #8cae91;width:9px;height:9px}.spacer-legend [hidden]{display:none!important}
.spacer-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px}.spacer-tools button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:1px solid #dce7da;border-radius:8px;background:#fff;color:#4d6654;font-size:12px;font-weight:700}.spacer-tools button[aria-pressed=true]{background:#285f3e;border-color:#285f3e;color:white}.spacer-tools #spacer-clear{margin-left:auto;border:0;color:#74887a;font-weight:500;text-decoration:underline;text-underline-offset:3px}.spacer-canvas svg.is-drawing{touch-action:none;cursor:crosshair}.spacer-ghost{pointer-events:none}.spacer-ghost circle{fill:#78c88a;fill-opacity:.32;stroke:#24904d;stroke-width:1.2;stroke-dasharray:2 1}.spacer-ghost.erase circle{fill:#e8a49a;fill-opacity:.38;stroke:#a94838}.spacer-ghost text{fill:#246c3c;font:700 7px Arial,sans-serif}.spacer-ghost.erase text{fill:#963f32}.spacer-notch-info{padding:10px 13px;margin:12px 0 0;border-radius:8px;background:#edf5eb;color:#42694a;font-size:12px;line-height:1.45}.spacer-notch-info[hidden]{display:none!important}@media(max-width:480px){.spacer-tools{gap:6px}.spacer-tools button{font-size:11px;padding:8px 10px}.spacer-tools #spacer-clear{margin-left:0}}
.spacer-ghost-outline{fill:#78c88a;fill-opacity:.12;stroke:#24904d;stroke-width:.65;stroke-dasharray:2 1;vector-effect:non-scaling-stroke}.spacer-ghost.erase .spacer-ghost-outline{fill:#e8a49a;stroke:#a94838}.spacer-ghost.noop circle{fill:#cbd6cd;fill-opacity:.2;stroke:#87988a}.spacer-ghost.noop text{fill:#87988a}
.spacer-cell.off{opacity:0}.spacer-legend span:nth-child(2){display:none}.spacer-notch-fields{margin-top:14px}.spacer-notch-fields label{font-size:12px}.spacer-stops:not(:has(#cell-notches-enabled:checked)) .spacer-notch-fields{opacity:.55}

.spacer-admin-exports{margin-top:18px;padding:18px;border:1px solid #dce8dc;border-radius:12px;background:#f7faf6;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spacer-admin-exports strong{color:#285f3e;font-size:13px}.spacer-admin-exports div{display:flex;gap:8px;flex-wrap:wrap}.spacer-admin-exports button{border:1px solid #bdd3bf;border-radius:8px;padding:9px 14px;background:#fff;color:#285f3e;font-weight:700}.spacer-admin-exports small{width:100%;color:#75877a}.spacer-admin-exports button:disabled{opacity:.45}@media(max-width:600px){.spacer-export-buttons{width:100%}.spacer-export-buttons button{min-height:48px}.spacer-admin-exports{align-items:flex-start;flex-direction:column}}

