@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
.bt{--bt-ink:#202b3a;--bt-muted:#4c4d57;--bt-navy:#24397e;--bt-cyan:#24397e;--bt-orange:#dc742f;--bt-paper:#f4f7fb;--bt-surface:#fff;--bt-line:#dce3eb;--bt-soft:#edf2f8;--bt-danger:#a33228;--bt-green:#137344;--bt-focus:#83b5ff}
.bt{min-height:100dvh;background:var(--bt-paper);color:var(--bt-ink);font-family:'Manrope',sans-serif;padding:18px 0 72px}
.bt *{box-sizing:border-box}.bt-wrap{width:min(1240px,calc(100% - 40px));margin:auto}
.bt-crumb{display:flex;gap:11px;align-items:center;color:#73858e;font:500 11px 'DM Mono',monospace;letter-spacing:.04em;margin:7px 0 31px}.bt-crumb a{color:var(--bt-cyan);text-decoration:none}.bt-crumb a:hover{text-decoration:underline}
.bt-heading{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--bt-line);padding-bottom:27px;margin-bottom:24px}.bt-eyebrow{font:500 10px 'DM Mono',monospace;letter-spacing:.13em;color:var(--bt-cyan);margin:0 0 13px}.bt-eyebrow span{display:inline-block;width:20px;height:2px;background:var(--bt-orange);vertical-align:middle;margin-right:7px}
.bt-heading h1{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.055em;margin:0;font-weight:800;color:var(--bt-navy)}.bt-deck{font-size:15px;line-height:1.65;color:var(--bt-muted);max-width:680px;margin:15px 0 0}.bt-heading-stamp{border-left:2px solid var(--bt-orange);padding:4px 0 4px 15px;display:flex;flex-direction:column;gap:8px;min-width:155px;margin-bottom:3px}.bt-heading-stamp b{font:500 10px 'DM Mono',monospace;letter-spacing:.14em;color:var(--bt-orange)}.bt-heading-stamp span{font-size:12px;line-height:1.5;color:var(--bt-muted)}
.bt-workspace{display:grid;grid-template-columns:minmax(320px,.84fr) minmax(0,1.16fr);gap:18px;align-items:stretch}
.bt-controls,.bt-visual-panel,.bt-summary{background:var(--bt-surface);border:1px solid var(--bt-line);box-shadow:0 8px 22px rgba(23,52,67,.045)}
.bt-controls{padding:25px 25px 21px}.bt-section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:23px}.bt-section-title>span{font:500 11px 'DM Mono',monospace;color:var(--bt-orange);padding-top:4px}.bt-section-title p{font:500 10px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#89989a;margin:0 0 6px}.bt-section-title h2{font-size:20px;letter-spacing:-.035em;margin:0;color:var(--bt-navy)}
.bt-options{display:grid;gap:15px}.bt-option-group{border-bottom:1px solid #e9eeeb;padding:0 0 17px}.bt-option-group:last-child{border:0;padding-bottom:0}.bt-option-group h3{font-size:12px;margin:0 0 12px;color:#405866}.bt-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.bt-field{display:flex;flex-direction:column;gap:6px;min-width:0}.bt-field-full{grid-column:1/-1}.bt-field label,.bt-label{font-size:11px;font-weight:700;color:#516875}.bt-field input,.bt-field select,.bt-object-control input,.bt-object-control select{width:100%;min-height:42px;border:1px solid #ccd8d6;background:#fbfcf8;border-radius:3px;padding:0 11px;color:var(--bt-ink);font:600 13px 'Manrope',sans-serif;outline:none}.bt-field :is(input,select):focus,.bt-object-control :is(input,select):focus{border-color:var(--bt-cyan);box-shadow:0 0 0 3px rgba(22,123,145,.12)}.bt-help{font-size:10px;color:#819196;margin:0}
.bt-stepper{display:flex;align-items:center;border:1px solid #ccd8d6;background:#fbfcf8;border-radius:3px;height:42px}.bt-stepper button,.bt-view-button{border:0;background:none;color:var(--bt-cyan);font-size:20px;font-weight:700;width:41px;height:40px;cursor:pointer}.bt-stepper output{flex:1;text-align:center;font:500 13px 'DM Mono',monospace}.bt-check{display:flex;align-items:center;gap:9px;font-size:12px;color:#405866}.bt-check input{accent-color:var(--bt-cyan);width:16px;height:16px}
.bt-control-note{font-size:10px;line-height:1.55;color:#879596;margin:17px 0 0;padding-top:13px;border-top:1px solid #e9eeeb}.bt-loading{min-height:200px;display:flex;flex-direction:column;gap:10px;justify-content:center}.bt-loading i{display:block;height:13px;border-radius:2px;background:#e9efec;animation:bt-pulse 1.35s ease-in-out infinite}.bt-loading i:nth-child(2){width:78%}.bt-loading i:nth-child(3){width:58%}.bt-loading span{font-size:11px;color:var(--bt-muted);margin-top:4px}@keyframes bt-pulse{50%{opacity:.45}}
.bt-visual-panel{display:flex;flex-direction:column;min-width:0;padding:0}.bt-visual-head{height:54px;border-bottom:1px solid var(--bt-line);display:flex;align-items:center;justify-content:space-between;padding:0 18px}.bt-visual-head>div{display:flex;align-items:center;gap:9px}.bt-visual-head strong{font:500 10px 'DM Mono',monospace;letter-spacing:.1em;color:#57717d}.bt-live-dot{width:7px;height:7px;border-radius:50%;background:#438d71;box-shadow:0 0 0 4px #e8f1eb}.bt-view-label{font-size:10px;color:#89999a}.bt-stage{position:relative;overflow:hidden;min-height:390px;flex:1;background:radial-gradient(ellipse at 50% 57%,#f8faf4 0%,#edf2eb 55%,#e2e9e5 100%)}.bt-stage-grid{position:absolute;inset:0;opacity:.48;background-image:linear-gradient(rgba(57,93,101,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(57,93,101,.08) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 82%,transparent)}.bt-scene-host{position:absolute;inset:0;touch-action:pan-y}.bt-scene-host canvas{display:block;width:100%;height:100%}.bt-fallback-art{position:absolute;left:50%;top:50%;width:220px;height:175px;transform:translate(-50%,-44%) perspective(500px) rotateX(10deg) rotateY(-19deg);border-bottom:6px solid #9caa9f;background:repeating-linear-gradient(to bottom,transparent 0 48px,#34748a 49px 57px,transparent 58px 62px);box-shadow:20px 28px 30px rgba(31,60,72,.12)}.bt-fallback-shelf{position:absolute;width:9px;height:100%;top:0;background:#df8250}.bt-fallback-shelf:first-child{left:5px}.bt-fallback-shelf:last-child{right:5px}.bt-fallback-art:before,.bt-fallback-art:after{content:"";position:absolute;top:0;height:100%;width:2px;background:#c66d43;left:50%}.bt-stage-tools{position:absolute;left:14px;bottom:13px;display:flex;align-items:center;gap:7px;background:rgba(255,254,250,.9);border:1px solid rgba(152,172,171,.6);padding:5px 7px}.bt-stage-tools button{border:0;background:transparent;color:var(--bt-navy);font:600 11px 'DM Mono',monospace;cursor:pointer;min-width:30px;height:29px}.bt-stage-tools button:hover{background:#e9f1ed}.bt-stage-tools span{font:500 10px 'DM Mono',monospace;color:#6b7c83;min-width:34px;text-align:center}.bt-stage-tools #bt-reset-view{border-left:1px solid var(--bt-line);padding-left:10px;margin-left:3px;min-width:auto}.bt-stage-foot{padding:10px 15px;display:flex;justify-content:space-between;gap:10px;color:#809094;font:10px 'DM Mono',monospace}.bt-illustration-note{color:#a06a4c;text-align:right}
.bt-summary{margin-top:20px;padding:25px}.bt-summary-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:19px}.bt-summary-head h2{font-size:24px;letter-spacing:-.045em;color:var(--bt-navy);margin:0}.bt-summary-head>div:first-child>p:last-child{font-size:11px;color:var(--bt-muted);margin:7px 0 0}.bt-summary-status{font:500 10px 'DM Mono',monospace;color:#68818a;text-align:right}.bt-table-wrap{overflow:auto;border:1px solid var(--bt-line)}.bt-table{border-collapse:collapse;width:100%;min-width:690px;text-align:left}.bt-table th{background:#edf2ef;padding:12px 13px;color:#647780;text-transform:uppercase;letter-spacing:.08em;font:500 9px 'DM Mono',monospace}.bt-table td{padding:13px;border-top:1px solid #e7ece9;font-size:11px;color:#405662}.bt-table td:first-child{font-weight:700;color:var(--bt-navy)}.bt-table a{color:var(--bt-cyan);text-decoration:none}.bt-table a:hover{text-decoration:underline}.bt-eligibility{font:500 9px 'DM Mono',monospace;color:#4e7d66}.bt-eligibility.is-review{color:#a5653e}.bt-issues{display:grid;gap:6px;margin-top:12px}.bt-issue{font-size:11px;line-height:1.5;background:#f9f2e9;border-left:3px solid var(--bt-orange);padding:9px 12px;color:#795638}.bt-summary-bottom{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;border-top:1px solid var(--bt-line);margin-top:18px;padding-top:18px}.bt-disclaimer{font-size:10px;line-height:1.65;max-width:680px;color:#78888c;margin:0}.bt-disclaimer strong{color:#86583e}.bt-buy{min-width:245px}.bt-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:10px;color:#76878b}.bt-total strong{font:500 20px 'DM Mono',monospace;color:var(--bt-navy)}.bt-actions{display:flex;gap:8px}.bt-button{display:flex;align-items:center;justify-content:center;min-height:43px;padding:0 15px;text-decoration:none;font:700 11px 'Manrope',sans-serif;border:1px solid var(--bt-navy);cursor:pointer;transition:transform .18s,background .18s,color .18s}.bt-button:hover:not(:disabled){transform:translateY(-2px)}.bt-primary{background:var(--bt-navy);color:white}.bt-primary:disabled{opacity:.42;cursor:not-allowed}.bt-secondary{background:transparent;color:var(--bt-navy)}.bt-secondary:hover{background:var(--bt-navy);color:#fff}.bt-footer-note{text-align:center;color:#879496;font-size:10px;margin:23px 0 0}
.bt-error,.bt-live-error{border:1px solid #e4c4b8;background:#fff8f3;padding:13px 15px;color:var(--bt-danger);display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;font-size:11px}.bt-error[hidden],.bt-live-error[hidden],.bt-empty[hidden]{display:none}.bt-error p,.bt-live-error p{margin:4px 0 0;color:#80645b}.bt-error button,.bt-live-error button{border:1px solid currentColor;background:transparent;color:inherit;padding:8px 10px;cursor:pointer;font:600 10px 'Manrope',sans-serif}.bt-empty{padding:18px;background:#f0f4f0;color:#59706d;font-size:12px}.bt-empty p{margin:6px 0 0;font-size:11px}.bt-object-list{display:grid;gap:9px}.bt-object{border:1px solid var(--bt-line);padding:12px;background:#fbfcf8}.bt-object-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.bt-object-head strong{font-size:11px;color:var(--bt-navy)}.bt-remove{border:0;background:none;color:#9a4d3b;font-size:10px;text-decoration:underline;cursor:pointer}.bt-object-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bt-object-control{display:grid;gap:4px}.bt-object-control span{font:9px 'DM Mono',monospace;color:#76888e}.bt-object-control input,.bt-object-control select{min-height:35px;font-size:11px}.bt-layout-add{border:1px dashed #91aaa7;background:#f4f8f3;color:#2e6e7d;padding:10px;width:100%;font:600 11px 'Manrope',sans-serif;cursor:pointer}.bt-layout-board{position:relative;aspect-ratio:1.55;min-height:140px;border:1px solid #bfd0c9;background-color:#f5f8f2;background-image:linear-gradient(rgba(41,94,99,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(41,94,99,.12) 1px,transparent 1px);background-size:10% 10%;overflow:hidden;touch-action:none}.bt-layout-item{position:absolute;width:11%;height:12%;min-width:22px;min-height:20px;background:#dd8452;border:2px solid #a65d3b;border-radius:2px;transform:translate(-50%,-50%);cursor:grab;display:grid;place-items:center;color:#fff;font:9px 'DM Mono',monospace;touch-action:none}.bt-layout-item:active{cursor:grabbing}.bt-layout-caption{display:flex;justify-content:space-between;color:#7e8d8d;font:9px 'DM Mono',monospace;margin:6px 0 0}
@media(max-width:850px){.bt-workspace{grid-template-columns:1fr}.bt-stage{min-height:340px}.bt-summary-bottom{grid-template-columns:1fr}.bt-buy{justify-self:end;width:min(100%,340px)}}
@media(max-width:560px){.bt{padding-top:12px}.bt-wrap{width:calc(100% - 24px)}.bt-crumb{margin-bottom:23px}.bt-heading{align-items:flex-start;padding-bottom:20px}.bt-heading-stamp{display:none}.bt-heading h1{font-size:38px}.bt-deck{font-size:13px}.bt-controls,.bt-summary{padding:18px}.bt-fields{grid-template-columns:1fr 1fr}.bt-stage{min-height:280px}.bt-stage-foot{align-items:flex-start;flex-direction:column}.bt-illustration-note{text-align:left}.bt-summary-head{align-items:flex-start;flex-direction:column}.bt-summary-status{text-align:left}.bt-summary-bottom{gap:15px}.bt-buy{justify-self:stretch}.bt-actions{flex-direction:column}.bt-object-fields{gap:7px}.bt-layout-board{aspect-ratio:1.3}}
@media(prefers-reduced-motion:reduce){.bt *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Shared builder palette, scoped so storefront chrome remains untouched. */
.bt{color:var(--bt-ink)}
.bt-crumb,.bt-crumb a,.bt-eyebrow,.bt-section-title>span,.bt-heading-stamp b,.bt-table a{color:var(--bt-navy)}
.bt-heading h1,.bt-section-title h2,.bt-summary-head h2,.bt-table td:first-child,.bt-total strong,.bt-object-head strong{color:var(--bt-navy)}
.bt-deck,.bt-heading-stamp span,.bt-field label,.bt-label,.bt-option-group h3,.bt-check,.bt-table td,.bt-disclaimer,.bt-footer-note,.bt-field input,.bt-field select,.bt-object-control input,.bt-object-control select{color:var(--bt-ink)}
.bt-heading-stamp,.bt-heading-stamp b,.bt-eyebrow span,.bt-section-title>span{border-color:var(--bt-orange)}
.bt-eyebrow span{background:var(--bt-orange)}
.bt-controls,.bt-visual-panel,.bt-summary,.bt-object,.bt-table-wrap{background:#fff;border-color:var(--bt-line);box-shadow:0 8px 22px rgba(32,43,58,.045)}
.bt-option-group,.bt-control-note,.bt-visual-head,.bt-summary-bottom,.bt-table td{border-color:var(--bt-line)}
.bt-option-group h3,.bt-section-title p,.bt-section-title>span,.bt-visual-head strong,.bt-view-label,.bt-stage-foot,.bt-summary-status,.bt-help,.bt-control-note,.bt-object-control span,.bt-layout-caption,.bt-footer-note{color:var(--bt-muted)}
.bt-field input,.bt-field select,.bt-object-control input,.bt-object-control select,.bt-stepper,.bt-layout-board{background:#fff;border-color:var(--bt-line)}
.bt-field :is(input,select):focus,.bt-object-control :is(input,select):focus{border-color:var(--bt-navy);box-shadow:0 0 0 3px rgba(131,181,255,.42);outline:2px solid #83b5ff;outline-offset:1px}
.bt-stepper button,.bt-view-button,.bt-check input{color:var(--bt-navy);accent-color:var(--bt-navy)}
.bt-stage{background:linear-gradient(180deg,#f4f5f6 0 48%,#aeb2b4 48% 100%)}
.bt-stage-grid{background-image:linear-gradient(rgba(76,77,87,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(76,77,87,.08) 1px,transparent 1px)}
.bt-stage-tools{background:rgba(255,255,255,.92);border-color:rgba(220,227,235,.9)}
.bt-stage-tools button{color:var(--bt-navy)}
.bt-stage-tools button:hover{background:#f4f7fb}
.bt-stage-tools span,.bt-stage-foot,.bt-illustration-note{color:var(--bt-muted)}
.bt-table th{background:#f4f7fb;color:var(--bt-muted)}
.bt-table th,.bt-table td{border-color:var(--bt-line)}
.bt-table a{color:var(--bt-navy)}
.bt-eligibility{color:var(--bt-green)}
.bt-eligibility.is-review{color:var(--bt-orange)}
.bt-issue{background:#fff7f0;border-left-color:var(--bt-orange);color:#685024}
.bt-disclaimer strong{color:var(--bt-muted)}
.bt-total,.bt-summary-head>div:first-child>p:last-child{color:var(--bt-muted)}
.bt-button{border-color:var(--bt-navy)}
.bt-primary{background:var(--bt-navy);color:#fff}
.bt-primary:hover:not(:disabled){background:#0846a7}
.bt-secondary{background:#fff;color:var(--bt-navy)}
.bt-secondary:hover{background:var(--bt-navy);color:#fff}
.bt-button:focus-visible,.bt button:focus-visible,.bt a:focus-visible,.bt input:focus-visible,.bt select:focus-visible{outline:3px solid #83b5ff;outline-offset:2px}
.bt-live-dot{background:var(--bt-green);box-shadow:0 0 0 4px #eaf3ee}
.bt-error,.bt-live-error{border-color:#f2c9c1;background:#fff4f1;color:#a33228}
.bt-error p,.bt-live-error p{color:#80645b}
.bt-empty{background:#f4f7fb;color:var(--bt-muted)}
.bt-layout-add{border-color:#b8c6d6;background:#f4f7fb;color:var(--bt-navy)}
.bt-layout-board{background-color:#fff;background-image:linear-gradient(rgba(76,77,87,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(76,77,87,.1) 1px,transparent 1px);border-color:var(--bt-line)}
.bt-layout-item{background:#dc742f;border-color:#b96027}
.bt-loading i{background:#e8edf4}

/* Guided safety planner — deliberately isolated from the other builder scenes. */
.bt[data-kind="vestil-safety"] .bt-heading h1{max-width:800px}
.bt-safety .bt-controls{padding:22px}
.bt-safety .bt-section-title{margin-bottom:18px}
.bt-safety .bt-safety-step{border-top:1px solid var(--bt-line);padding:17px 0 2px}
.bt-safety .bt-safety-step:first-child{border-top:0;padding-top:0}
.bt-safety-step-heading{display:flex;align-items:baseline;gap:9px;margin-bottom:11px}
.bt-safety-step-heading b{font:500 10px 'DM Mono',monospace;color:var(--bt-orange)}
.bt-safety-step-heading h3{font-size:13px;color:var(--bt-navy);margin:0}
.bt-safety-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.bt-safety-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.bt-safety-choice{position:relative;display:flex;align-items:flex-start;gap:8px;min-height:56px;padding:10px;border:1px solid var(--bt-line);background:#fff;cursor:pointer;transition:transform .16s,opacity .16s}
.bt-safety-choice:hover{border-color:#9aabd0;background:#f8faff}
.bt-safety-choice:has(input:checked){border-color:var(--bt-navy);background:#f2f5fc;box-shadow:inset 0 0 0 1px var(--bt-navy)}
.bt-safety-choice input{margin:3px 0 0;accent-color:var(--bt-navy);flex:none}
.bt-safety-choice span{font-size:11px;font-weight:750;color:var(--bt-navy);line-height:1.35}
.bt-safety-choice small{display:block;margin-top:3px;color:var(--bt-muted);font-size:9px;font-weight:500;line-height:1.4}
.bt-safety .bt-fields{gap:10px}
.bt-safety .bt-field>span{font-size:10px;font-weight:700;color:#4b596c}
.bt-safety .bt-field input,.bt-safety .bt-field select{background:#fff;border-radius:2px}
.bt-safety-note{margin:9px 0 0;font-size:10px;line-height:1.55;color:var(--bt-muted)}
.bt-safety-subsection{margin-top:14px;padding-top:13px;border-top:1px dashed var(--bt-line)}
.bt-safety-subsection h4{font-size:11px;margin:0 0 9px;color:var(--bt-navy)}
.bt-safety .bt-control-note{margin-top:15px}
.bt-safety .bt-visual-head{height:auto;min-height:54px;gap:10px;flex-wrap:wrap}
.bt-safety .bt-stage{min-height:410px;background:#f7f9fc}
.bt-safety .bt-stage-grid{opacity:.8;background-size:32px 32px;background-image:linear-gradient(rgba(36,57,126,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(36,57,126,.045) 1px,transparent 1px)}
.bt-safety .bt-scene-host{position:absolute;inset:0;padding:12px}
.bt-safety-plan{display:block;width:100%;height:100%;min-height:380px}
.bt-safety-plan text{font-family:'DM Mono',monospace}
.bt-safety-plan .plan-boundary{fill:#f2f5f9;stroke:#aeb9ca;stroke-width:1.5;stroke-dasharray:5 5}
.bt-safety-plan .protected-area{fill:#e8edf8;stroke:#24397e;stroke-width:2}
.bt-safety-plan .run-line{fill:none;stroke:#24397e;stroke-width:8;stroke-linecap:square}
.bt-safety-plan .run-cap{fill:#dc742f;stroke:#fff;stroke-width:1.5}
.bt-safety-plan .bollard-marker{fill:#f2c32e;stroke:#8b6810;stroke-width:2}
.bt-safety-plan .dimension-line{stroke:#8391a5;stroke-width:1;stroke-dasharray:3 3}
.bt-safety-plan .dimension-tick{stroke:#8391a5;stroke-width:1}
.bt-safety-plan .dimension-label{fill:#4c5a70;font-size:11px}
.bt-safety-plan .plan-label{fill:#24397e;font-size:11px;font-weight:500}
.bt-safety-plan .plan-small{fill:#607086;font-size:9px}
.bt-safety-plan .layout-product rect{fill:#fff;stroke:#6077ad;stroke-width:1.5}
.bt-safety-legend{display:flex;gap:15px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid var(--bt-line);font-size:10px;color:var(--bt-muted)}
.bt-safety-legend span{display:inline-flex;align-items:center;gap:7px}
.bt-safety-legend i{display:inline-block;width:15px;height:5px;background:var(--bt-navy)}
.bt-safety-legend .legend-bollard{width:10px;height:10px;border-radius:50%;background:#f2c32e;border:1px solid #8b6810}
.bt-safety-legend .legend-protected{width:13px;height:10px;background:#e8edf8;border:1px solid #24397e}
.bt-safety-legend .legend-item{width:9px;height:9px;background:#fff;border:1.5px solid #6077ad}
.bt-safety .bt-stage-tools{display:none}
.bt-safety .bt-stage-foot{padding:11px 14px}
.bt-safety .bt-summary{margin-top:20px}
.bt-safety-review{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}
.bt-safety-review article{padding:13px 14px;background:#f4f7fb;border-left:3px solid var(--bt-navy)}
.bt-safety-review article:last-child{border-left-color:var(--bt-orange)}
.bt-safety-review strong{display:block;color:var(--bt-navy);font-size:11px;margin-bottom:4px}
.bt-safety-review p{margin:0;color:var(--bt-muted);font-size:10px;line-height:1.55}
.bt-safety-position-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}
.bt-safety-position{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:8px;border:1px solid var(--bt-line);background:#f9fbfd}
.bt-safety-position strong{grid-column:1/-1;font:500 9px 'DM Mono',monospace;color:var(--bt-navy)}
.bt-safety-position label{display:grid;gap:4px;font-size:9px;color:var(--bt-muted)}
.bt-safety-position input{width:100%;height:34px;border:1px solid #ccd5e2;padding:0 8px;font:500 11px 'DM Mono',monospace;color:var(--bt-ink)}
.bt-safety .bt-lines-loading{color:var(--bt-muted)}
.bt-safety .bt-safety-config-unavailable{padding:14px;background:#fff7f0;border-left:3px solid var(--bt-orange);color:#684b34;font-size:11px;line-height:1.6}
.bt-safety .bt-actions{justify-content:flex-end}
.bt-safety .bt-safety-quote{min-width:190px}
.bt-safety .bt-button{transition:transform .18s,opacity .18s}
.bt-safety .bt-quote-link-disabled{pointer-events:none;opacity:.45}
.bt-safety .bt-total{gap:14px}
.bt-safety .bt-estimate-stale{opacity:.55}
.bt-safety .bt-safety-alert{margin:10px 0;padding:9px 11px;background:#fff7f0;border-left:3px solid var(--bt-orange);font-size:10px;line-height:1.5;color:#684b34}
.bt-safety [hidden]{display:none!important}
@media(max-width:850px){.bt-safety .bt-stage{min-height:370px}.bt-safety-plan{min-height:340px}}
@media(max-width:560px){.bt-safety .bt-controls{padding:17px}.bt-safety-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bt-safety .bt-stage{min-height:320px}.bt-safety-plan{min-height:290px}.bt-safety-review{grid-template-columns:1fr}.bt-safety-position-grid{grid-template-columns:1fr}.bt-safety .bt-summary{padding:16px}}
/* Keep the complete measured plan visible beside the guided form. */
.bt-safety .bt-workspace{align-items:start}
.bt-safety .bt-visual-panel{position:sticky;top:130px}
.bt-safety .bt-stage{flex:none;min-height:0;aspect-ratio:1000/650}
.bt-safety .bt-stage .bt-safety-plan{display:block;width:100%;height:100%;min-height:0;max-width:none;max-height:none}
.bt-safety-plan .plan-label,.bt-safety-plan .dimension-label{font-size:18px}
.bt-safety-plan .plan-small{font-size:15px}
@media(max-width:850px){.bt-safety .bt-visual-panel{position:static}.bt-safety-plan .plan-label,.bt-safety-plan .dimension-label{font-size:28px}.bt-safety-plan .plan-small{font-size:23px}}

/* Contextual room previews are deliberately confined to workbench and safety. */
.bt[data-kind="workbench"] .bt-stage-grid,.bt[data-kind="vestil-safety"] .bt-stage-grid{display:none}
.bt[data-kind="workbench"] .bt-stage{background:linear-gradient(180deg,#dbe4df 0%,#c1cec8 49%,#909f99 100%)}
.bt[data-kind="workbench"] .bt-scene-host{background:transparent}
.bt-scene-fallback svg{filter:drop-shadow(0 11px 13px rgba(30,45,41,.16))}
.bt-safety .bt-stage{aspect-ratio:auto;min-height:720px;background:#dbe3df}
.bt-safety .bt-scene-host{padding:10px}
.bt-safety-view-switch{display:flex;gap:6px;margin-bottom:8px}
.bt-safety-view-switch button{border:1px solid #aeb9ca;background:#fff;padding:7px 12px;font:600 11px 'Manrope',sans-serif;color:#24397e;cursor:pointer}
.bt-safety-view-switch button[aria-pressed="true"]{background:#24397e;color:#fff;border-color:#24397e}
.bt-safety-view-switch button:focus-visible{outline:2px solid #ff5c00;outline-offset:2px}
.bt-safety-preview-grid{height:calc(100% - 41px);display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.bt-safety-preview-card[hidden]{display:none}
.bt-safety-preview-card{min-width:0;min-height:0;display:flex;flex-direction:column;background:#f7f8f4;border:1px solid #c7d1cc}
.bt-safety-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #d3dcd7;background:#eef2ed}
.bt-safety-preview-heading strong{font:500 9px 'DM Mono',monospace;letter-spacing:.08em;color:#324c4a}
.bt-safety-preview-heading span{font:9px 'DM Mono',monospace;color:#6b7972;text-align:right}
.bt-safety-room-wrap,.bt-safety-plan-wrap{min-height:0;flex:1;display:grid;place-items:center;padding:5px}
.bt-safety-room-svg{display:block;width:100%;height:auto;max-height:100%;font-family:'DM Mono',monospace}
.bt-safety-room-svg .room-rail text,.bt-safety-room-svg g:not(.room-label)>text{font-size:13px;fill:#334743;font-weight:600;paint-order:stroke;stroke:#f4f2df;stroke-width:3px;stroke-linejoin:round}
.bt-safety-room-svg .room-label rect{fill:#f3f2e9;stroke:#9baaa3}
.bt-safety-room-svg .room-label text{font:500 12px 'DM Mono',monospace;fill:#37504b}
.bt-safety-room-svg .room-disclaimer{font:10px 'DM Mono',monospace;fill:#f5f6ed}
.bt-safety-room-caption{font-size:9px;line-height:1.45;color:#63736d;margin:0;padding:6px 9px;border-top:1px solid #d3dcd7}
.bt-safety-plan-wrap{padding:0 3px}
.bt-safety-plan{min-height:0!important;height:auto;max-height:100%;width:100%}
.bt-safety-plan .plan-label,.bt-safety-plan .dimension-label{font-size:20px}
.bt-safety-plan .plan-small{font-size:16px}
.bt-safety-legend{gap:7px;padding:7px 8px;font-size:8px}
.bt-safety-legend i{width:11px}
.bt-safety .bt-measured-card{background:#fbfcfa}
@media(max-width:850px){
  .bt-safety .bt-stage{min-height:0;aspect-ratio:auto}
  .bt-safety .bt-scene-host{position:relative;inset:auto;padding:9px}
  .bt-safety-preview-grid{grid-template-columns:1fr}
  .bt-safety-preview-card{min-height:300px}
  .bt-safety-room-wrap,.bt-safety-plan-wrap{min-height:220px}
  .bt-safety .bt-stage{min-height:0}
  .bt-safety .bt-stage-tools{display:none}
  .bt-safety-plan .plan-label,.bt-safety-plan .dimension-label{font-size:24px}
  .bt-safety-plan .plan-small{font-size:20px}
}
@media(max-width:560px){
  .bt-safety-preview-card{min-height:275px}
  .bt-safety-room-wrap,.bt-safety-plan-wrap{min-height:195px}
  .bt-safety-preview-heading{align-items:flex-start;flex-direction:column}
  .bt-safety-preview-heading span{text-align:left}
  .bt-safety-room-svg .room-disclaimer{font-size:11px}
}
