/* Guided, reference-faithful case workspace. */
.studio-dialog{overflow:clip}.workspace-layout{overflow:hidden}.workspace-sidebar{min-height:0;overflow-y:auto}.workspace-header{flex-shrink:0}
.brief-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0;scroll-margin-top:18px}
.brief-step{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #d9cbbb;border-radius:10px;background:#fffaf2;padding:14px 10px;color:#786652;font-size:12px;line-height:1.4;min-width:0}
.step-number{font-size:11px;color:#9c784e;border:1px solid #dbc9af;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}
.brief-step[aria-current=step]{background:#403a30;color:#fff5e8;border-color:#403a30}.brief-step[aria-current=step] .step-number{background:#c59a68;color:#29231a;border-color:#c59a68}
.guided-form{display:block;margin-top:0}.stage-heading{margin:0 0 20px}.stage-heading h4{font:400 25px 'Playfair Display',Georgia,serif;margin:0 0 8px}.stage-heading p{font-size:12px;line-height:1.7;color:#816d57;margin:0}
.case-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.guided-form .field-group label{font-size:13px}.guided-form .field-group input,.guided-form .field-group select,.guided-form .field-group textarea{font-size:14px;min-height:46px;border-radius:7px;background:#fffdf8}.field-help{display:block;font-size:11px;line-height:1.6;color:#88755f;margin-top:7px}.inline-action{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;color:#785431;font-size:12px;padding:10px 0}
.brief-estimate{border:1px solid #dac6ac;background:#f1e6d7;padding:16px 18px;border-radius:10px;font-size:13px;line-height:1.7;margin-top:23px}
.step-footer{display:flex;align-items:center;gap:12px;border-top:1px solid #ddcfbd;margin-top:24px;padding-top:20px}.step-footer .button{font-size:12px;min-height:44px;padding:11px 15px}.step-progress{font-size:11px;color:#8e785e;flex:1;text-align:center}
.tooth-planner{padding:20px;background:#fffaf3}.tooth-heading h4{font-size:23px}.selection-badge{background:#ecdfc9;color:#674b29;border:1px solid #d8bf98;padding:8px 12px;border-radius:20px;font-size:12px;white-space:nowrap}.teeth-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.teeth-toolbar>button{font-size:12px;padding:11px 13px;border:1px solid #d9c5a9;background:#f8efdf;border-radius:7px;min-height:43px}.teeth-toolbar>.button-dark{background:#513b26;color:#fff3df;border-color:#513b26}.tooth-planner .wisdom-note{font-size:11px;color:#8c6e4b;line-height:1.7;margin:10px 0 17px}
.dental-layout{display:grid;grid-template-columns:minmax(0,1fr) 185px;gap:16px;align-items:start}.dental-canvas{border-radius:12px;overflow:hidden;background:#303030;border:1px solid #46413c;min-width:0}.chart-orientation{display:flex;justify-content:space-between;gap:6px;color:#c8c1b8;padding:17px 12px 4px;font-size:8px;letter-spacing:.06em}.chart-orientation span:nth-child(2){color:#ecd3aa}.dental-canvas #dental-map{display:block;width:100%;height:auto;stroke:none;fill:none;aspect-ratio:600/1040}.tooth-hit{fill:transparent;stroke:transparent;stroke-width:3;cursor:pointer;pointer-events:all;transition:fill .12s,stroke .12s;stroke-linejoin:round}.tooth-hit:hover{fill:#ffffff20;stroke:#f7e6c4}.tooth-hit[aria-pressed=true]{fill:#dfad5a99;stroke:#f5d298;stroke-width:4}.tooth-hit:focus-visible{outline:none;stroke:#ffffff;stroke-width:6;filter:drop-shadow(0 0 4px #fff)}
.chart-caption{display:flex;align-items:center;justify-content:space-between;padding:13px;color:#d2c6b8;font-size:9px;letter-spacing:.08em}.chart-caption span{font-size:9px;letter-spacing:0}.chart-caption b{color:#ddad69}.selection-panel{padding:17px 13px;background:#f2e9dc;border:1px solid #e0cfb9;border-radius:10px}.selection-panel h5{font:400 23px 'Playfair Display',Georgia,serif;margin:5px 0 19px}.jaw-totals{display:grid;gap:9px;font-size:12px;margin-bottom:17px}.jaw-totals>span{display:flex;justify-content:space-between;border-bottom:1px solid #ddcdb8;padding-bottom:8px}.jaw-totals strong{font-weight:500}.selection-panel output{display:block;font-size:12px;line-height:1.8;color:#715638}.selection-panel p,.selection-panel small{display:block;font-size:11px;line-height:1.7;color:#877157}.selection-panel .button{padding:10px;font-size:11px;line-height:1.5;width:100%;margin:10px 0;min-height:44px;justify-content:center}.teeth-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:13px}.tooth-chip{border:1px solid #d3b98f;color:#6b4c29;background:#fff9ed;border-radius:5px;font-size:11px;padding:6px 7px;min-height:30px}
.brief-review{background:#fffdf8;border:1px solid #dfd0bb;padding:24px;border-radius:12px}.review-heading h4{font:400 26px 'Playfair Display',Georgia,serif;margin:8px 0 20px}.review-list{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0;font-size:13px;margin:0}.review-list dt,.review-list dd{margin:0;padding:13px 0;border-bottom:1px solid #eee4d6;overflow-wrap:anywhere;line-height:1.7}.review-list dt{color:#998067;padding-right:10px}.review-notice,.quantity-notice{font-size:12px;line-height:1.8;background:#f0e7d9;border-left:3px solid #b78f61;padding:13px 16px;color:#715a40}.brief-stage .case-readiness{margin-bottom:23px}.brief-stage .brief-output{border-radius:10px}.brief-stage .brief-actions{margin-top:16px}
@media(min-width:1100px){.studio-dialog{width:min(1320px,calc(100vw - 40px));max-width:1320px}.dental-layout{grid-template-columns:minmax(0,1fr) 205px}.dental-canvas{max-width:520px}.brief-panel{padding-inline:35px}}
@media(max-width:1000px){.dental-layout{grid-template-columns:minmax(0,1fr)}.dental-canvas{width:100%;max-width:480px;margin:auto}.selection-panel{display:block}.jaw-totals{grid-template-columns:1fr 1fr;gap:30px}.selection-panel h5{font-size:20px}.selection-panel .button{width:auto}.brief-step{flex-direction:column;align-items:flex-start;font-size:11px;gap:7px;padding:11px 9px}}
@media(max-width:700px){.brief-steps{gap:5px;margin:16px 0}.brief-step{font-size:10px;padding:10px 7px}.step-number{width:23px;height:23px;font-size:9px}.case-fields{grid-template-columns:1fr;gap:19px}.tooth-planner{padding:14px}.tooth-heading{align-items:start}.tooth-heading h4{font-size:21px;line-height:1.35}.teeth-toolbar>button{font-size:11px;padding:11px}.teeth-toolbar>.button-dark{width:100%;justify-content:center}.dental-layout{gap:13px}.chart-orientation{font-size:7px}.review-list{grid-template-columns:1fr}.review-list dt{border:0;padding-bottom:2px;font-size:11px}.review-list dd{padding-top:0}.brief-review{padding:19px}.step-footer{flex-wrap:wrap}.step-progress{order:3;flex-basis:100%;padding:5px}.step-footer>.button-dark{margin-left:auto}.stage-heading h4{font-size:23px}.brief-panel{overflow-y:auto!important}.selection-panel .button{width:100%}}
@media(prefers-reduced-motion:reduce){.tooth-hit{transition:none}}
@media(min-width:1001px){.dental-layout{grid-template-columns:minmax(0,1fr) 235px}.dental-canvas{max-width:380px;margin-inline:auto}.dental-canvas #dental-map{height:min(70dvh,650px);aspect-ratio:auto}.chart-orientation{font-size:7px}.selection-panel{padding:18px}}

/* Indication palette follows the supplied video; no material or CAD settings. */
.dental-layout.indication-layout{grid-template-columns:minmax(0,1.25fr) minmax(230px,.85fr);gap:14px;align-items:stretch}
.indication-layout .dental-canvas{width:100%;max-width:none;margin:0;align-self:start;position:sticky;top:10px}
.tooth-type-panel{min-width:0;background:#303030;border:1px solid #46413c;border-radius:12px;padding:14px}
.type-category+.type-category{margin-top:15px}.type-category h5{color:#f2ece4;font-size:11px;letter-spacing:.02em;margin:0 0 8px;font-weight:600}
.type-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.tooth-type-option{position:relative;min-height:53px;width:100%;display:flex;align-items:center;gap:6px;padding:8px 5px;border:1px solid #ffffff28;border-radius:5px;background:var(--type-color);color:#fff;text-align:left;line-height:1.25;font-size:10px;font-weight:600;text-shadow:0 1px 3px #000c;box-shadow:inset 0 0 30px #0002;cursor:pointer}
.tooth-type-option>svg{width:22px;height:26px;fill:#ffffffbd;stroke:#fff;stroke-width:.5;flex-shrink:0;filter:drop-shadow(0 1px 1px #0006)}
.tooth-type-option>span:not(.type-check){overflow-wrap:anywhere}.tooth-type-option .type-check{display:none;position:absolute;right:3px;top:2px;background:#fff;color:#252525;font-size:9px;text-shadow:none;border-radius:50%;width:13px;height:13px;text-align:center;line-height:13px}
.tooth-type-option[aria-pressed=true]{outline:2px solid #fff;outline-offset:1px;border-color:#fff;box-shadow:0 0 0 4px #fff2}.tooth-type-option[aria-pressed=true] .type-check{display:block}.tooth-type-option:hover{filter:brightness(1.15)}.tooth-type-option:focus-visible{outline:3px solid #f9d59a;outline-offset:2px}
.tooth-planner .palette-note{font-size:10px;color:#bdb8b1;line-height:1.7;margin:16px 0 0}
.type-active-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid #d8c5aa;border-radius:7px;padding:10px 12px;margin-bottom:14px;background:#f2e8d8;font-size:12px}.type-active-strip>span{font-size:9px;color:#8a755b;letter-spacing:.08em}.type-active-strip strong{color:#493621;font-weight:600}.type-active-strip button{margin-left:auto;border:1px solid #beaa8c;border-radius:5px;background:#fffaf0;color:#695438;font-size:11px;padding:10px;min-height:38px}.type-active-strip button[aria-pressed=true]{background:#493621;color:#fff}
.tooth-hit[aria-pressed=true]{fill:var(--tooth-color);fill-opacity:.65;stroke:var(--tooth-color);stroke-width:5}.tooth-hit[aria-pressed=true]:hover{fill-opacity:.8;stroke:#fff}.tooth-hit:focus-visible{stroke:#fff;stroke-width:6}
.tooth-type-legend{display:flex;flex-wrap:wrap;gap:8px 12px;padding:0 13px 14px}.type-legend-row{display:flex;align-items:center;gap:6px;color:#e8e3db;font-size:10px;line-height:1.4}.type-swatch{width:10px;height:10px;border:1px solid #ffffff70;border-radius:2px;flex-shrink:0}
.tooth-selection-feedback{display:block;font-size:12px;color:#735333;line-height:1.7;margin:15px 0}.tooth-count-tools{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.tooth-count-tools .button{font-size:11px;padding:10px 13px;min-height:42px}.tooth-count-tools small{font-size:11px;line-height:1.7;color:#887359;flex:1;min-width:200px}.review-list dd{white-space:pre-line}
@media(max-width:1000px){.dental-layout.indication-layout{grid-template-columns:1fr}.indication-layout .dental-canvas{position:static;max-width:390px;margin:auto}.type-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.tooth-type-option{font-size:11px;min-height:49px}.tooth-type-panel{padding:15px}}
@media(max-width:500px){.type-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.tooth-type-panel{padding:12px}.tooth-type-option{min-height:53px}.type-active-strip{gap:8px}.type-active-strip button{margin-left:0}.tooth-count-tools .button{width:100%;justify-content:center}}
.request-delivery{margin-top:28px;background:#f1e7d7;border:1px solid #d4bb97;border-radius:12px;padding:24px}.request-delivery h4{font:400 28px 'Playfair Display',Georgia,serif;margin:8px 0 12px}.request-delivery>p,.request-privacy p{font-size:12px;line-height:1.8;color:#786047}.request-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.request-privacy{font-size:12px;margin:16px 0;color:#705438}.request-privacy summary{cursor:pointer;padding:7px 0}.request-consent{margin:20px 0!important;font-size:12px!important;line-height:1.7}.request-consent input{min-height:0!important;flex-shrink:0}.request-submit-row{display:flex;align-items:center;flex-wrap:wrap;gap:13px}.request-submit-row .button{font-size:12px}.request-submit-row>span{font-size:11px;color:#887057}.request-status{overflow-wrap:anywhere}.request-status[data-state=success]{background:#e3ebdd;border:1px solid #9eb495;color:#304c29;padding:15px;border-radius:7px}.request-status[data-state=error]{color:#892c27;background:#f9e4df;padding:15px;border-radius:7px}
@media(max-width:600px){.request-delivery{padding:18px}.request-fields{grid-template-columns:1fr}.request-submit-row .button{width:100%;justify-content:center}}
