.demo{--d-bg:#faf7f0;--d-fg:#1a1812;--d-muted:#57534a;--d-card:#f3efe4;--d-line:#1a181229;--d-primary:#0f7a4f;--d-ink:#faf7f0;--d-fire:#c2410c;--d-alert:#0e7490;--d-land:#e6e0cf;--d-land-line:#8a846f;--d-focus:#0f7a4f}@media (prefers-color-scheme:dark){.demo:not([data-theme=light]){--d-bg:#0e1410;--d-fg:#f0ead8;--d-muted:#b9b5a4;--d-card:#17201a;--d-line:#f0ead833;--d-primary:#4bc182;--d-ink:#0e1410;--d-fire:#fb923c;--d-alert:#22d3ee;--d-land:#1e2a22;--d-land-line:#6b7b6f;--d-focus:#4bc182}}.demo[data-theme=dark]{--d-bg:#0e1410;--d-fg:#f0ead8;--d-muted:#b9b5a4;--d-card:#17201a;--d-line:#f0ead833;--d-primary:#4bc182;--d-ink:#0e1410;--d-fire:#fb923c;--d-alert:#22d3ee;--d-land:#1e2a22;--d-land-line:#6b7b6f;--d-focus:#4bc182}.demo{background:var(--d-bg);min-height:100dvh;color:var(--d-fg);font-family:var(--font-sans), system-ui, sans-serif;flex-direction:column;font-size:1.125rem;line-height:1.5;display:flex}.demo :focus-visible{outline:3px solid var(--d-focus);outline-offset:3px;border-radius:4px}.demo h1,.demo h2,.demo h3{font-family:var(--font-heading), system-ui, sans-serif;text-wrap:balance}.demo p,.demo li{text-wrap:pretty}.d-header{padding:max(.75rem, env(safe-area-inset-top)) 1rem .5rem;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.d-brand{font-family:var(--font-heading), system-ui, sans-serif;letter-spacing:.06em;color:var(--d-primary);font-size:1.25rem;font-weight:800;text-decoration:none}.d-tools{align-items:center;gap:.5rem;display:flex}.d-lang{border:1px solid var(--d-line);border-radius:.5rem;display:flex;overflow:hidden}.d-lang button{min-width:2.75rem;min-height:2.75rem;color:var(--d-fg);background:0 0;padding:0 .5rem;font-size:.9375rem;font-weight:600}.d-lang button[aria-pressed=true]{background:var(--d-primary);color:var(--d-ink)}.d-icon-btn{border:1px solid var(--d-line);width:2.75rem;height:2.75rem;color:var(--d-fg);border-radius:.5rem;place-items:center;display:grid}.d-steps{padding:.25rem 1rem .75rem}.d-progress{background:var(--d-line);border-radius:2px;height:4px;margin-bottom:.5rem;overflow:hidden}.d-progress span{background:var(--d-primary);height:100%;display:block}.d-steps ol{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.d-steps li{flex:1 1 0;min-width:0}.d-steps li button{width:100%;min-height:2.75rem;color:var(--d-muted);border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;padding:0 .25rem;font-size:1rem;font-weight:500;display:flex}.d-step-n{border:1.5px solid var(--d-line);border-radius:999px;flex:none;place-items:center;width:1.75rem;height:1.75rem;font-size:.9375rem;font-weight:700;display:grid}.d-steps li button[data-done=true] .d-step-n{background:var(--d-primary);border-color:var(--d-primary);color:var(--d-ink)}.d-steps li button[aria-current=step]{color:var(--d-fg);font-weight:700}.d-step-t{text-align:left;line-height:1.2;display:none}@media (min-width:1100px){.d-step-t{display:block}.d-header,.d-steps{padding-inline:2.5rem}}.d-main{flex:1;width:100%;max-width:88rem;margin:0 auto;padding:1rem 1rem 2rem}.d-scene{align-items:center;gap:1.5rem 3rem;display:grid}.d-scene--stacked{align-items:start}@media (min-width:900px){.d-main{padding:1.5rem 2.5rem 2.5rem}.d-scene{grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"text visual""sample sample"}.d-scene--stacked{grid-template-columns:minmax(0,1fr);grid-template-areas:"text""visual""sample"}.d-text{grid-area:text}.d-visual{grid-area:visual}.d-sample{grid-area:sample}}.d-text{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.d-kicker{background:var(--d-primary);width:2.5rem;height:2.5rem;color:var(--d-ink);font-family:var(--font-heading), system-ui, sans-serif;border-radius:999px;place-items:center;font-weight:800;display:grid}.d-title{letter-spacing:-.02em;margin:0;font-size:clamp(2rem,1.2rem + 3vw,3.75rem);font-weight:800;line-height:1.05}.d-title:focus{outline:none}.d-body{max-width:38rem;margin:0;font-size:clamp(1.125rem,1rem + .5vw,1.5rem)}.d-aside{color:var(--d-muted);margin:0;font-size:1rem}.d-sample{text-align:center;color:var(--d-muted);margin:0;font-size:.9375rem}.d-visual{flex-direction:column;align-items:center;gap:1rem;min-width:0;display:flex}.d-scene--stacked .d-visual{align-items:stretch}.d-card{background:var(--d-card);border:1px solid var(--d-line);border-radius:.75rem;padding:1.25rem}.d-h2{margin:0;font-size:1.25rem;font-weight:700;line-height:1.2}.d-h2--lg{margin-bottom:.5rem;font-size:clamp(1.5rem,1.1rem + 1.4vw,2.25rem)}.d-label{color:var(--d-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .25rem;font-size:.875rem;font-weight:600;display:block}.d-callout{border-left:4px solid var(--d-primary);background:var(--d-card);border-radius:0 .5rem .5rem 0;max-width:38rem;margin:0;padding:1rem 1.25rem;font-size:clamp(1.125rem,1rem + .4vw,1.375rem)}.d-chips{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.d-chips li{border:1px dashed var(--d-land-line);border-radius:999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1rem;display:inline-flex}.d-actions{flex-wrap:wrap;gap:.75rem;display:flex}.d-btn{border:1.5px solid var(--d-primary);background:var(--d-primary);min-height:3.5rem;color:var(--d-ink);border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:0 1.5rem;font-size:1.125rem;font-weight:600;text-decoration:none;transition:transform .15s;display:inline-flex}.d-btn:active{transform:scale(.98)}.d-btn--ghost{color:var(--d-fg);border-color:var(--d-line);background:0 0}.d-btn:disabled{opacity:.4;cursor:not-allowed}.d-h2+.d-seg{margin-top:.75rem}.d-seg{gap:.5rem;display:flex}.d-seg--wrap{flex-wrap:wrap}.d-seg-btn{border:1.5px solid var(--d-line);min-height:3.25rem;color:var(--d-fg);border-radius:.5rem;flex:1 1 0;justify-content:center;align-items:center;gap:.5rem;padding:0 .75rem;font-size:1.0625rem;font-weight:600;display:inline-flex}.d-seg-btn[aria-pressed=true]{background:var(--d-primary);border-color:var(--d-primary);color:var(--d-ink)}.d-map{width:auto;max-width:100%;height:min(54vh,34rem);display:block;overflow:visible}.d-map--sm{height:min(44vh,26rem)}.d-map--pick{cursor:crosshair}.d-land{fill:var(--d-land);stroke:var(--d-land-line);stroke-width:1px;stroke-linejoin:round}.d-dot{fill:var(--d-fire);stroke:var(--d-bg);stroke-width:1.2px}.d-halo{fill:var(--d-fire);opacity:.22}.d-ring{fill:none;stroke:var(--d-muted);stroke-width:1.6px;stroke-dasharray:2.5 2}.d-ring-x{stroke:var(--d-muted);stroke-width:1.6px;stroke-linecap:round}.d-alert-ring{fill:color-mix(in srgb, var(--d-alert) 18%, transparent);stroke:var(--d-alert);stroke-width:2px}.d-hot-out{opacity:0}.d-scan{fill:color-mix(in srgb, var(--d-alert) 28%, transparent);display:none}.d-zone{fill:color-mix(in srgb, var(--d-primary) 18%, transparent);stroke:var(--d-primary);stroke-width:2px;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.d-legend{flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;margin:0;padding:0;font-size:1.0625rem;list-style:none;display:flex}.d-legend li{align-items:center;gap:.5rem;display:inline-flex}.d-s3,.d-s4{flex-direction:column;align-items:center;gap:1.25rem;width:100%;display:flex}.d-stack{flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}@media (min-width:1100px){.d-s3,.d-s4{flex-direction:row;justify-content:center;gap:2rem}.d-s3 .d-stack{flex:1}}.d-tl{gap:.25rem;display:grid}.d-tl-lane{color:var(--d-muted);margin:0;font-size:.9375rem;font-weight:600}.d-tl-ticks{justify-content:space-between;align-items:center;height:1.25rem;display:flex}.d-tl-ticks span{background:var(--d-alert);border-radius:50%;width:5px;height:5px}.d-tl-polar{background:var(--d-line);border-radius:.375rem;height:1.25rem;position:relative}.d-tl-polar span{background:var(--d-primary);border-radius:.375rem;position:absolute;top:0;bottom:0}.d-tl-marks{border-bottom:1px dashed var(--d-line);height:2.75rem;position:relative}.d-ev{width:2rem;height:2rem;color:var(--d-ink);border-radius:50%;place-items:center;margin-left:-1rem;font-size:.9375rem;font-weight:800;display:grid;position:absolute;top:.375rem}.d-ev--fire,.d-ev-badge.d-ev--fire{background:var(--d-fire)}.d-ev--alert,.d-ev-badge.d-ev--alert{background:var(--d-alert)}.d-ev--polar,.d-ev-badge.d-ev--polar{background:var(--d-primary)}.d-ev-badge{width:1.75rem;height:1.75rem;color:var(--d-ink);border-radius:50%;flex:none;place-items:center;font-size:.9375rem;font-weight:800;display:inline-grid}.d-tl-list{gap:.5rem;margin:1rem 0 .75rem;padding:0;font-size:1.0625rem;list-style:none;display:grid}.d-tl-list li{align-items:center;gap:.75rem;display:flex}.d-bars{align-items:flex-end;gap:2px;height:1rem;display:inline-flex}.d-bars i{opacity:.3;background:currentColor;border-radius:1px;width:4px}.d-bars i:first-child{height:6px}.d-bars i:nth-child(2){height:11px}.d-bars i:nth-child(3){height:16px}.d-bars--low i:first-child,.d-bars--mid i:nth-child(-n+2),.d-bars--high i{opacity:1}.d-conf-text{min-height:3.25rem;margin:.75rem 0 0;font-size:1.125rem}.d-phone{aspect-ratio:9/17;border:.5rem solid var(--d-fg);background:linear-gradient(160deg,#123d2c,#0b1d16);border-radius:2rem;flex:none;width:15rem;padding:.5rem;position:relative;box-shadow:0 1rem 2.5rem #0000002e}.d-phone-notch{background:#050a07;border-radius:999px;width:4rem;height:1.1rem;position:absolute;top:.4rem;left:50%;transform:translate(-50%)}.d-phone-screen{flex-direction:column;justify-content:center;height:100%;padding-top:1.5rem;display:flex}.d-phone-idle{text-align:center;color:#d9e4dc;margin:0;padding:1rem;font-size:1rem}.d-notif{color:#1a1812;background:#f5f2e9;border-radius:1rem;margin-top:-35%;padding:.75rem;font-size:.9375rem;line-height:1.35}.d-notif-head{color:#4a463b;align-items:center;gap:.4rem;font-size:.8125rem;font-weight:700;display:flex}.d-notif-icon{color:#faf7f0;background:#0f7a4f;border-radius:.4rem;place-items:center;width:1.5rem;height:1.5rem;display:grid}.d-notif-when{margin-left:auto;font-weight:500}.d-notif-title{margin:.4rem 0 .15rem;font-size:1rem;font-weight:700}.d-notif-body{color:#3d392f;margin:0}.d-incident{gap:1.25rem;width:100%;max-width:40rem;display:grid}.d-owner{align-items:center;gap:.75rem;margin:0;font-weight:600;display:flex}.d-owner .d-label{margin:0}.d-history{border-left:2px solid var(--d-line);gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.d-history li{padding-left:1.25rem;position:relative}.d-history li:before{content:"";background:var(--d-primary);border-radius:50%;width:10px;height:10px;position:absolute;top:.55em;left:-6px}.d-report{border:1.5px dashed var(--d-land-line);background:var(--d-bg);border-radius:.5rem;gap:.5rem;padding:1rem 1.25rem;display:grid}.d-report p,.d-report ul{margin:0}.d-report ul{padding-left:1.25rem}.d-cases{gap:1rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}@media (min-width:640px){.d-cases{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.d-cases{grid-template-columns:repeat(5,minmax(0,1fr))}}.d-case{align-content:start;gap:.5rem;display:grid}.d-case p{color:var(--d-muted);margin:0}.d-case-icon{background:var(--d-primary);width:3.25rem;height:3.25rem;color:var(--d-ink);border-radius:.75rem;place-items:center;display:grid}.d-cta{background:color-mix(in srgb, var(--d-primary) 12%, var(--d-card));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}@media (min-width:900px) and (max-height:830px){.d-scene--stacked .d-title{font-size:clamp(1.75rem,1rem + 2vw,2.5rem)}.d-scene--stacked{gap:.75rem 3rem}.d-scene--stacked .d-body{font-size:1.125rem}.d-scene--stacked .d-case-icon{width:2.5rem;height:2.5rem}}.d-footer{padding:.75rem 1rem max(.75rem, env(safe-area-inset-bottom));background:var(--d-bg);border-top:1px solid var(--d-line);justify-content:space-between;align-items:center;gap:.75rem;display:flex;position:sticky;bottom:0}.d-hint{text-align:center;color:var(--d-muted);margin:0;font-size:.9375rem;display:grid}.d-hint-step{color:var(--d-fg);font-weight:700}.d-hint-keys{display:none}@media (min-width:900px){.d-footer{padding-inline:2.5rem}.d-hint-keys{display:block}}@media (max-width:480px){.d-footer .d-btn{padding:0 .75rem}}@media (prefers-reduced-motion:no-preference){.d-scene{animation:.45s ease-out both d-fade}.d-pop{transform-box:fill-box;transform-origin:50%;animation:d-pop .55s var(--d,0s) cubic-bezier(.2, .9, .3, 1.3) both}.d-halo{transform-box:fill-box;transform-origin:50%;animation:d-halo 2.6s var(--d,0s) ease-out infinite both}.d-scan{animation:2.8s linear .1s both d-scan;display:block}.d-hot-out{animation:d-out .5s var(--d,0s) both}.d-cold-in{animation:d-in .6s var(--d,0s) both}.d-zone{animation:1.1s ease-out both d-draw}.d-alert-pulse{transform-box:fill-box;transform-origin:50%;animation:d-alert 2.4s var(--d,0s) ease-out infinite both}.d-notif{animation:d-slide .6s var(--d,0s) ease-out both}.d-ev,.d-ev-badge{animation:d-fade .5s var(--d,0s) both}}@keyframes d-fade{0%{opacity:0;transform:translateY(8px)}}@keyframes d-pop{0%{opacity:0;transform:scale(.2)}}@keyframes d-halo{0%{opacity:0;transform:scale(.5)}20%{opacity:.45}to{opacity:0;transform:scale(1.7)}}@keyframes d-scan{0%{opacity:1;transform:translateY(0)}85%{opacity:1}to{transform:translateY(var(--h));opacity:0}}@keyframes d-out{0%{opacity:1}to{opacity:0}}@keyframes d-in{0%{opacity:0}to{opacity:1}}@keyframes d-draw{0%{stroke-dashoffset:1px;fill-opacity:0}to{stroke-dashoffset:0}}@keyframes d-alert{0%{opacity:0;transform:scale(.4)}30%{opacity:1}to{opacity:.35;transform:scale(1.15)}}@keyframes d-slide{0%{opacity:0;transform:translateY(-14px)}}.d-chooser{flex-direction:column;align-items:flex-start;gap:1.25rem;max-width:56rem;margin:0 auto;display:flex}.d-profiles{gap:1rem;width:100%;display:grid}@media (min-width:640px){.d-profiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.d-profile{text-align:left;background:var(--d-card);border:1.5px solid var(--d-line);min-height:5rem;color:var(--d-fg);font-size:1.25rem;font-weight:700;font-family:var(--font-heading), system-ui, sans-serif;border-radius:.75rem;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.d-profile[aria-pressed=true]{border-color:var(--d-primary);box-shadow:inset 0 0 0 1.5px var(--d-primary)}@media (prefers-reduced-motion:no-preference){.d-chooser{animation:.45s ease-out both d-fade}}@media (max-width:400px){.d-header{gap:.5rem;padding-inline:.75rem}.d-brand{font-size:1.0625rem}.d-tools{gap:.25rem}.d-lang button{min-width:2.5rem;padding:0 .25rem}.d-icon-btn{width:2.75rem}}
