@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#09295a;--teal:#008d8b;--ink:#20334b;--muted:#84909e;--line:#e5eaf0;--bg:#f4f6f8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer;transition:.15s}button:hover{filter:brightness(.96);transform:translateY(-1px)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #79cfcc;outline-offset:2px}input,select{min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px;background:white;color:var(--ink)}input[type=number]{width:100%}.rail{width:74px;background:var(--navy);position:fixed;inset:0;display:flex;align-items:center;flex-direction:column;color:white}.logo{font:bold 48px Georgia;color:white;text-decoration:none;margin:18px 0 55px}.logo span{color:#66dbcd}.rail-icon{font-size:26px;border-radius:12px;background:#ffffff18;padding:9px 14px}.rail-label{font-size:8px;letter-spacing:1px;margin-top:9px;color:#a6bfdf}.rail-bottom{margin-top:auto;margin-bottom:24px;border:1px solid #ffffff40;border-radius:50%;padding:9px 13px}header{margin-left:74px;height:78px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 40px}.wordmark{font:bold 25px Manrope,sans-serif;color:var(--navy);letter-spacing:-1px}.wordmark span{font:10px 'DM Sans',sans-serif;letter-spacing:2px;color:#8a97a5;margin-left:15px}.demo{margin-left:auto;font-size:10px;letter-spacing:1px;color:var(--teal);background:#eaf7f4;padding:8px 12px;border-radius:5px}main{margin-left:74px;padding:32px 40px;max-width:1700px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--teal);font-weight:700}h1{font:800 32px Manrope,sans-serif;letter-spacing:-1.2px;margin:8px 0}p{color:#7b8898;margin:6px 0;line-height:1.6}.primary{border:0;border-radius:8px;color:white;background:var(--navy);padding:13px 19px;font-weight:600}.primary span{margin-left:24px;color:#78daca}.ghost{border:1px solid var(--line);background:white;border-radius:7px;padding:9px 12px;color:#536579;font-size:12px}.patient{display:flex;align-items:center;gap:20px;background:white;border:1px solid var(--line);padding:18px 24px;border-radius:12px;margin-bottom:24px}.avatar{background:#e8eff7;color:var(--navy);padding:16px;border-radius:50%;font-weight:700}.patient small,small{font-size:9px;letter-spacing:1.3px;color:#8a96a5;display:block;margin-bottom:5px}.patient input{border:0;font-weight:700;padding:0;width:200px;font-size:16px}.patient-field{border-left:1px solid var(--line);padding-left:30px;margin-left:25px}.patient select{padding:0;border:0;font-weight:700}.draft{margin-left:auto;font-size:11px;color:#a37626;background:#fff6e6;border-radius:20px;padding:7px 14px}.workspace{display:grid;grid-template-columns:265px 1fr;gap:24px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.section-title h2{font:700 16px Manrope,sans-serif;margin:0}.section-title p{font-size:11px;margin:5px 0 0}.section-title>span{color:#b7c6d5;font-size:12px}.catalog>input{width:100%;background:#f7f9fb;margin-bottom:14px}.procedure{display:flex;align-items:center;width:100%;text-align:left;border:1px solid transparent;background:white;padding:10px;border-radius:8px;gap:12px;margin:4px 0;color:#536579}.procedure.active{border-color:#b1dfdb;background:#eff9f7;color:#007e79}.procedure .symbol{background:#f0f4f8;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:21px}.procedure small{letter-spacing:0;font-size:10px;margin:2px 0 0}.custom{border-top:1px solid var(--line);margin-top:18px;padding-top:20px}.custom>input{width:100%;margin:3px 0 14px}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.two label{font-size:10px;color:#7b8898}.two input,.two select{width:100%;margin-top:6px}.full{width:100%;background:var(--teal)}.helper{font-size:11px;min-height:20px;margin:14px 0}#message{font-size:11px;color:var(--teal)}.right{display:grid;gap:24px}.chart{padding-bottom:15px}.teeth{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:3px;touch-action:none;user-select:none}.tooth{position:relative;background:transparent;border:1px solid transparent;border-radius:9px;padding:5px 1px;color:#93a2b3;touch-action:none}.tooth svg{width:100%;max-width:43px;height:69px;display:block;margin:auto;overflow:visible}.tooth path{fill:#f6f8fb;stroke:#adb9c7;stroke-width:1.2}.tooth .root{fill:#e7edf4}.tooth span{font-size:10px;display:block;margin:3px}.tooth.planned path{fill:#d9f0eb;stroke:#66aaa0}.tooth.selected{background:#e4f5f2;border-color:#7ac9bd}.tooth.selected path{fill:#b7e3dc;stroke:#008d8b}.lower svg{transform:rotate(180deg)}.arch-head{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:2px;color:#a6b1be;margin-bottom:8px}.text-btn{border:0;background:none;color:var(--teal);font-size:10px;padding:5px}.midline{display:flex;align-items:center;gap:12px;margin:14px 0;color:#aab5c1;font-size:8px;letter-spacing:1.5px}.midline i{height:1px;background:var(--line);flex:1}.chart-footer{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:10px;color:#8a97a5;gap:10px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin:0 4px 0 12px}.dot.selected{background:#008d8b}.dot.planned{background:#b7e3dc}.stage-head{display:flex;align-items:center;gap:8px;background:#f3f6fa;border-radius:7px;padding:10px 12px;margin:15px 0 5px}.stage-number{background:white;color:var(--teal);border-radius:5px;padding:5px 8px;font-size:10px}.stage-head input{background:transparent;border:0;padding:3px;font-weight:600;flex:1;width:80px}.stage-head .duration{font-size:10px;font-weight:400;flex:0 1 140px}.icon-btn{border:0;background:none;color:#99a6b6;padding:4px 6px;font-size:14px}.line-item{display:grid;grid-template-columns:1fr 115px 90px 50px 28px;gap:8px;align-items:center;border-bottom:1px solid #f0f3f7;padding:12px 10px}.line-item strong{font-size:12px}.line-item small{letter-spacing:0;font-size:10px;margin:3px 0 0}.line-item input{font-size:11px;width:100%;padding:6px}.line-item select{font-size:10px;padding:6px;width:100%}.line-item .amount{font-size:12px;text-align:right}.move{display:flex}.empty{padding:15px;color:#9aa6b4;font-size:11px}.total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.total strong{font:800 27px Manrope;color:var(--navy)}.total p{font-size:10px}footer{display:flex;justify-content:space-between;font-size:10px;color:#94a0ae;margin-top:25px}dialog{border:0;border-radius:14px;padding:0;width:min(1100px,95vw);max-height:94vh;background:#e8edf2}dialog::backdrop{background:#09204499;backdrop-filter:blur(5px)}.modal-toolbar{position:sticky;top:0;z-index:1;background:white;padding:16px 24px;display:flex;align-items:center;gap:15px;box-shadow:0 1px 0 var(--line)}.modal-toolbar div{margin-right:auto}.modal-toolbar small{margin:4px 0 0;letter-spacing:0}.modal-toolbar label{font-size:11px}#paper{margin:30px auto;background:white;max-width:790px;min-height:950px;padding:55px;box-shadow:0 8px 40px #102b4610}.quote-brand{display:flex;justify-content:space-between;color:var(--navy);align-items:center}.quote-brand b{font:800 30px Manrope;letter-spacing:-1px}.quote-brand span{font-size:9px;letter-spacing:2px}.quote-hero{background:var(--navy);color:white;padding:35px;margin:35px -55px 30px;border-right:8px solid #55c7b9}.quote-hero small{color:#92c8d0}.quote-hero h2{font:700 32px Manrope;margin:12px 0}.quote-hero p{color:#b9cbe2;font-size:12px}.quote-meta{display:flex;justify-content:space-between;font-size:12px;margin-bottom:30px}.quote-stage{margin:25px 0}.quote-stage h3{font-size:14px;border-bottom:2px solid var(--teal);padding-bottom:12px}.quote-stage h3 span{float:right;font-size:10px;color:#84909e;font-weight:400}.quote-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px;gap:20px}.quote-row small{letter-spacing:0;margin-top:5px}.quote-sum{text-align:right;padding:22px;background:#f2f7f9;margin-top:25px}.quote-sum b{font:800 30px Manrope;color:var(--navy)}.quote-note{font-size:10px;margin-top:25px;line-height:1.7;color:#8190a0}.quote-footer{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;color:var(--teal);font-size:10px}.minimal .quote-hero{background:#f5f7f9;color:var(--navy);border-right:0}.minimal .quote-hero p{color:#7c8b9d}
@media(min-width:1450px){.workspace{grid-template-columns:290px 1fr}.teeth svg{height:85px}}@media(max-width:1000px){main{padding:25px 20px}header{padding:0 20px}.wordmark span{display:none}.workspace{grid-template-columns:220px 1fr;gap:15px}.panel{padding:15px}.patient-field{margin-left:0;padding-left:15px}.line-item{grid-template-columns:1fr 80px 75px 25px}.move{display:none}.teeth{gap:0}.tooth svg{height:52px}.chart-footer>div{display:none}}@media(max-width:720px){.rail{display:none}header,main{margin-left:0}header{height:65px}.demo{font-size:8px}header>.ghost{display:none}.heading{align-items:flex-start}.heading h1{font-size:25px}.heading p{font-size:11px}.heading .primary{padding:12px;font-size:11px}.patient{flex-wrap:wrap;padding:15px;gap:12px}.patient-field{border:0;padding:0}.patient-field strong{font-size:11px}.patient input{width:150px}.workspace{display:flex;flex-direction:column}.catalog,.right{width:100%}#procedures{display:grid;grid-template-columns:repeat(3,1fr)}.procedure{font-size:10px;padding:6px;gap:5px}.procedure .symbol{display:none}.custom{display:grid;grid-template-columns:1fr 1fr;gap:10px}.custom>small{grid-column:1/-1}.custom>input{margin:0}.custom .helper{margin:0}.custom #message{grid-column:1/-1}.teeth svg{height:45px}.tooth span{font-size:8px}.section-title p{font-size:10px}.line-item{padding:10px 0;grid-template-columns:1fr 70px 68px 22px;gap:5px}.line-item strong{font-size:11px}.stage-head .duration{max-width:95px}.total strong{font-size:22px}footer{gap:20px;font-size:9px}.modal-toolbar{padding:12px;flex-wrap:wrap}.modal-toolbar div{width:55%}.modal-toolbar .primary{font-size:11px}#paper{padding:25px;margin:12px}.quote-hero{margin:25px -25px;padding:25px}.quote-hero h2{font-size:25px}.quote-brand span{font-size:7px}.quote-meta{gap:12px;font-size:10px}}
@media print{body>*:not(dialog){display:none!important}dialog{display:block!important;position:static;max-height:none;width:100%;background:white;overflow:visible}.modal-toolbar{display:none}#paper{box-shadow:none;margin:0;max-width:none;padding:30px;min-height:0}.quote-hero{margin:25px -30px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.quote-stage{break-inside:avoid}@page{size:A4;margin:12mm}}
.tooth.planned path{fill:var(--tooth-fill);stroke:var(--tooth-stroke)}.tooth.selected{box-shadow:inset 0 0 0 2px #008d8b}.tooth.selected path{fill:var(--tooth-fill,#b7e3dc);stroke:var(--tooth-stroke,#008d8b)}.tooth-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:2px;min-height:36px;align-content:start;pointer-events:none}.treatment-badge{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:5px;font-size:10px;line-height:1;font-weight:700;color:var(--mark);background:var(--mark-bg);border:1px solid color-mix(in srgb,var(--mark) 30%,transparent)}.treatment-legend{display:flex;flex-wrap:wrap;gap:9px 16px;border-top:1px solid var(--line);padding-top:14px;margin-top:12px;color:#66788b;font-size:10px}.treatment-legend>span{display:inline-flex;align-items:center;gap:5px}@media(max-width:720px){.tooth-badges{min-height:46px}.tooth-badges .treatment-badge{width:13px;height:14px;font-size:8px;border-radius:3px}.treatment-legend{gap:8px 12px;font-size:9px}}
.tooth{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.tooth svg{flex-shrink:0;margin:0 auto}.tooth-badges{width:100%}
.quote-chart{margin:28px 0 34px;border:1px solid var(--line);border-radius:10px;padding:18px;break-inside:avoid}.quote-chart h3{margin:0;font-size:14px;color:var(--navy)}.quote-chart>p{font-size:10px;margin:6px 0 16px}.quote-chart .tooth{cursor:default}.quote-chart .tooth svg{height:56px}.quote-chart .tooth-badges{min-height:35px}.quote-chart .midline{margin:9px 0}.quote-chart .treatment-legend{font-size:9px;gap:7px 12px}.quote-chart .treatment-badge{print-color-adjust:exact;-webkit-print-color-adjust:exact}.quote-chart .tooth.planned path{print-color-adjust:exact;-webkit-print-color-adjust:exact}@media(max-width:720px){.quote-chart{padding:10px}.quote-chart .tooth svg{height:38px}.quote-chart .treatment-legend{font-size:8px}}@media print{.quote-chart{break-inside:avoid;page-break-inside:avoid}.quote-chart .tooth svg{height:56px}.quote-chart .treatment-badge{width:17px;height:17px;font-size:10px}.quote-chart .tooth-badges{min-height:36px}.quote-chart .treatment-legend{font-size:9px}}
.mouth-model{margin:18px 0 22px;border:1px solid #ebe7e1;border-radius:12px;padding:12px;background:#fff;break-inside:avoid}.mouth-model>svg{display:block;width:100%;height:auto;font-family:'DM Sans',sans-serif}.mouth-model .treatment-legend{margin:8px 0 0;font-size:10px}.model-note{font-size:9px!important;margin:9px 0 0!important;color:#9a9994!important}.quote-stage{break-inside:auto}@media print{.mouth-model{break-inside:avoid;page-break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.quote-stage{break-inside:avoid;page-break-inside:avoid}.quote-stage+.quote-stage{break-before:page}.mouth-model>svg{max-height:330px}.quote-row{break-inside:avoid}}
#clinicSetup{width:min(1150px,96vw);background:white;max-height:94vh}.setup-shell{display:grid;grid-template-columns:300px 1fr;min-height:660px}.setup-nav{padding:35px 28px;background:#edf3f6;display:flex;flex-direction:column}.setup-nav .wordmark{margin-bottom:55px}.setup-nav .wordmark span{display:block;margin:8px 0 0;font-size:9px}.setup-nav h2{font:800 27px Manrope;letter-spacing:-1px;color:var(--navy);line-height:1.4;margin:13px 0}.setup-nav p{font-size:12px}.setup-nav nav{display:grid;gap:9px;margin-top:32px}.setup-nav nav button{border:0;background:none;display:flex;align-items:center;text-align:left;gap:12px;padding:11px 8px;border-radius:9px;color:#7a8b9e;font-size:12px}.setup-nav nav b{width:25px;height:25px;border:1px solid #ced9e2;border-radius:50%;display:grid;place-items:center;font-size:10px}.setup-nav nav button.active{background:white;color:var(--navy);box-shadow:0 4px 20px #09295a08}.setup-nav nav button.active b{background:var(--teal);color:white;border:0}.setup-nav>small{margin-top:auto;padding-top:40px;letter-spacing:0;line-height:1.6}.setup-main{padding:28px 34px;min-width:0}.setup-top{display:flex;justify-content:space-between;align-items:center}.setup-top>span{color:var(--teal);font-size:10px;letter-spacing:2px}.setup-main>h2{font:800 25px Manrope;color:var(--navy);margin:26px 0 8px}.setup-subtitle{font-size:12px;margin-bottom:26px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.setup-field{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#5d6e82;margin-bottom:16px}.setup-field input,.setup-field textarea{width:100%;font-size:13px}.setup-field textarea{font:13px 'DM Sans',sans-serif;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:12px;line-height:1.6}.setup-field small{letter-spacing:0}.logo-upload{display:flex;align-items:center;gap:20px;margin-bottom:27px;border:1px dashed #cad7e1;border-radius:12px;padding:20px;background:#fafcfd}.logo-upload>div{width:80px;height:80px;background:white;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;font-size:30px;color:#9cb7c8}.logo-upload img{max-width:72px;max-height:72px;object-fit:contain}.logo-upload p{font-size:10px;margin:6px 0 14px}.upload-label{cursor:pointer;display:inline-block}.setup-info{font-size:10px;background:#f2f7f8;padding:12px;border-radius:8px;line-height:1.7;margin-top:20px}.setup-actions{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.setup-inline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.setup-inline p{font-size:11px}.setup-inline label{font-size:10px;white-space:nowrap}.setup-inline select{margin-top:5px;display:block;width:100%}.setup-treatment,.treatment-table-head{display:grid;grid-template-columns:30px 1fr 90px 105px 20px;align-items:center;gap:8px;margin:8px 0}.setup-treatment input,.setup-treatment select{width:100%;padding:9px 6px;font-size:11px}.setup-treatment input[type=checkbox]{accent-color:var(--teal);width:16px}.treatment-table-head{color:#97a1af;font-size:9px;letter-spacing:.3px;margin-bottom:12px}.treatment-table{margin-bottom:18px}.color-fields{display:flex;gap:20px}.color-fields input{height:48px;padding:4px;width:100px}.setup-grid h3{font-size:13px;margin:0 0 18px}.swatches{display:flex;gap:10px;margin-bottom:32px}.swatches button{width:38px;height:38px;border:3px solid white;box-shadow:0 0 0 1px #dce3e9;border-radius:50%}.theme-choices{display:grid;gap:10px}.theme-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:15px;font-size:12px}.theme-choice:has(input:checked){border-color:var(--teal);background:#f2f9f8}.theme-choice input{accent-color:var(--teal)}.theme-choice small{font-size:10px;letter-spacing:0;margin:5px 0 0}.clinic-mini{background:white;box-shadow:0 8px 40px #09295a12;border:1px solid var(--line);padding:23px;border-radius:8px;min-height:350px}.mini-brand{display:flex;align-items:center;gap:9px;color:var(--clinic-primary);overflow-wrap:anywhere}.mini-brand img{max-width:40px;max-height:35px}.mini-hero{padding:22px;margin:22px -23px;background:var(--clinic-primary);color:white;border-right:5px solid var(--clinic-accent)}.mini-hero small{color:#ffffffaa;font-size:7px;letter-spacing:1px}.mini-hero h3{font:700 22px Manrope;margin:12px 0}.mini-hero p{color:#ffffffbb;font-size:10px}.mini-minimal .mini-hero{background:#f4f7f9;color:var(--clinic-primary)}.mini-minimal .mini-hero p,.mini-minimal .mini-hero small{color:#7c8b9d}.mini-lines span{font-size:10px}.mini-lines i{display:block;height:1px;background:var(--line);margin:16px 0}.mini-lines div{font-size:10px;display:flex;justify-content:space-between;margin:25px 0}#setupError{color:#c44d61;font-size:12px}.quote-clinic-logo{max-width:90px;max-height:55px;object-fit:contain;margin-right:14px}.quote-brand{justify-content:flex-start;gap:12px}.quote-brand>b{font-size:24px;overflow-wrap:anywhere}.quote-brand>span{margin-left:auto}.clinic-terms{margin-top:30px;border-top:1px solid var(--line);padding-top:15px}.clinic-terms h3{font-size:14px}.clinic-terms h4{font-size:11px;margin:15px 0 4px}.clinic-terms p{font-size:10px;white-space:normal;overflow-wrap:anywhere}.quote-hero{border-right-color:var(--teal)}@media(max-width:850px){.setup-shell{grid-template-columns:1fr}.setup-nav{padding:18px}.setup-nav .wordmark{margin:0}.setup-nav>.eyebrow,.setup-nav>h2,.setup-nav>p,.setup-nav>small{display:none}.setup-nav nav{display:flex;margin-top:16px;gap:4px;flex-wrap:wrap}.setup-nav nav button{font-size:10px;padding:6px}.setup-main{padding:20px}.setup-grid{gap:12px}.setup-treatment,.treatment-table-head{grid-template-columns:22px 1fr 70px 85px 16px;gap:4px}header #clinicSettings{display:block;font-size:10px;padding:8px}header{gap:10px}.demo{display:none}}@media(max-width:500px){.setup-grid{grid-template-columns:1fr}.setup-inline{display:block}.setup-treatment input,.setup-treatment select{font-size:10px}.setup-nav nav button{font-size:9px}.setup-nav nav b{width:20px;height:20px}}
.price-import{border:1px dashed #b5cbd8;background:#f8fbfc;border-radius:12px;padding:18px;margin-bottom:25px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.price-import>div:first-child{flex:1}.price-import strong{font-size:12px;color:var(--navy)}.price-import p{font-size:10px}.price-import .upload-label{white-space:nowrap}#priceImportContent{width:100%}#priceFileError{width:100%;color:#c44d61;margin:0}.import-source{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-top:1px solid var(--line)}.import-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.import-mapping{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.import-controls label,.import-mapping label{font-size:10px;color:#718093}.import-controls select,.import-mapping select{display:block;width:100%;font-size:11px;margin-top:6px}.import-summary{padding:10px;background:#eaf3f2;border-radius:6px;color:#257c70}.import-preview-scroll{overflow:auto;max-height:320px;border:1px solid var(--line);border-radius:7px}.import-preview{border-collapse:collapse;width:100%;font-size:10px;background:white}.import-preview th{position:sticky;top:0;background:#edf2f6;text-align:left;font-weight:600}.import-preview td,.import-preview th{padding:10px;border-bottom:1px solid var(--line);min-width:50px}.import-preview td:last-child{min-width:110px}.import-preview small{letter-spacing:0;font-size:9px;white-space:nowrap}.import-invalid td{background:#fff3f3;color:#ad3c4e}.import-footer{margin-top:14px;display:flex;align-items:center;gap:15px;justify-content:space-between}.import-footer p{max-width:320px}.import-footer button{font-size:11px;white-space:nowrap}button:disabled{cursor:not-allowed;opacity:.45;transform:none}.setup-treatment,.treatment-table-head{grid-template-columns:24px minmax(100px,1fr) 76px 65px 95px 18px}@media(max-width:850px){.setup-treatment,.treatment-table-head{grid-template-columns:22px minmax(90px,1fr) 68px 60px 82px 16px}}@media(max-width:500px){.treatment-table{overflow-x:auto}.setup-treatment,.treatment-table-head{min-width:470px}.import-mapping{grid-template-columns:1fr}.import-footer{align-items:stretch;flex-direction:column}.import-controls{grid-template-columns:1fr}}

.import-templates{width:100%;display:flex;flex-wrap:wrap;gap:10px}.import-templates a{display:inline-flex;align-items:center;text-decoration:none;font-size:11px}.import-templates p{width:100%;margin:0;line-height:1.6}

.bilingual-treatment label,.bilingual-stage label{display:block;font-size:10px;color:#718093}.bilingual-treatment input,.bilingual-stage input{width:100%;margin:3px 0 7px}.bilingual-stage{min-width:190px}.bilingual-stage small{font-size:9px;letter-spacing:0}.stage-head{align-items:start}.setup-treatment{align-items:center}
.import-filter{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;margin:12px 0}.import-visible-count{color:#617184}.import-preview td{vertical-align:top}.import-preview td>small{display:block;margin-top:5px;color:#758393}.import-delta{display:grid;gap:4px;min-width:100px;white-space:normal}.import-delta small{color:#6a7787}.import-delta span{color:#6a7787}.import-delta b{color:#258374}.import-delta strong{color:#176b5f;font-size:11px}.import-empty{padding:20px;text-align:center}
.import-selection{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0}.import-selection button{font-size:11px}.import-selection span{font-size:12px;font-weight:600}.import-selection p{width:100%;margin:0}.import-preview input[type=checkbox]{accent-color:var(--teal);width:16px;height:16px}
.platform-brand{display:flex;align-items:center;gap:16px}.platform-brand img{display:block;width:168px;height:auto;object-fit:contain}.platform-brand span{margin:0}.setup-nav .platform-brand{align-items:flex-start;flex-direction:column;gap:8px}.setup-nav .platform-brand img{width:190px;max-width:100%}.rail .platform-rail-logo{display:flex;align-items:center;justify-content:center;width:64px;height:76px;margin:10px 0 20px}.platform-rail-logo img{width:61px;height:auto}@media(max-width:720px){.platform-brand img{width:126px}.setup-nav .platform-brand img{width:160px}}
.clinic-gateway{padding:35px;background:#fff}.clinic-gateway>.platform-brand{margin-bottom:28px}.clinic-gateway h2{color:var(--navy)}.clinic-gateway p{color:#738295;font-size:12px}.clinic-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:24px 0}.clinic-card{border:1px solid var(--line);border-radius:12px;padding:22px;background:#f8fafc;display:flex;flex-direction:column;text-align:left;align-items:flex-start;gap:12px;color:var(--navy)}.clinic-card img{width:110px;height:55px;object-fit:contain;object-position:left}.clinic-card small{letter-spacing:0}.clinic-card>span:last-child{font-size:11px;color:var(--teal)}.clinic-initial{font-size:30px;font-weight:700}.clinic-new{display:flex;align-items:end;gap:15px;border-top:1px solid var(--line);padding-top:22px}.clinic-gateway label{display:block;font-size:12px}.clinic-gateway label input{display:block;margin:8px 0;width:100%}#clinicPickerDialog,#patientPlansDialog{width:min(900px,95vw)}header{gap:10px;flex-wrap:wrap;height:auto;min-height:76px;padding-top:10px;padding-bottom:10px}header .demo{display:none}header .ghost{font-size:10px}header .platform-brand img{width:145px}#clinicPicker{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:720px){header>#clinicPicker,header>#planPicker,header>#clinicSettings{display:block}.clinic-new{align-items:stretch;flex-direction:column}.clinic-gateway{padding:22px}}
.backup-controls{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.backup-controls h3{font-size:15px}.backup-controls .upload-label{display:inline-block;margin:8px}.backup-controls button{font-size:11px}.backup-controls p{line-height:1.6}#clinicBackupPreview{padding:0 12px;background:#f3f7fa;border-radius:8px}#clinicBackupPreview h4{padding-top:16px}#clinicBackupPreview ul{font-size:12px;line-height:1.8}#clinicBackupPreview button{margin:8px 8px 15px 0}#clinicBackupStatus{color:var(--teal)}
body.auth-locked>*:not(#loginScreen){display:none!important}#loginScreen{min-height:100vh;background:linear-gradient(140deg,#09295a,#0c626e);display:grid;place-items:center;padding:25px}.login-card{width:min(440px,100%);padding:38px;background:white;border-radius:20px;box-shadow:0 20px 90px #00152d55}.login-logo{width:225px;max-width:100%;display:block;margin-bottom:25px}.login-card h1{font-size:28px;color:var(--navy)}.login-card p{font-size:12px;line-height:1.7;color:#6e7d8b}.login-card label{display:block;font-size:12px;margin:18px 0}.login-card input{display:block;width:100%;margin-top:8px}.login-card form>.primary{width:100%}.login-card>small{display:block;font-size:10px;margin-top:20px;color:#82909b}#loginError{color:#a54252}.login-card details{font-size:12px;margin:18px 0}.admin-account{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0;padding:15px;border:1px solid var(--line);border-radius:10px}.admin-account strong{grid-column:1/-1;font-size:12px}.admin-account input{font-size:11px}.admin-access h3{font-size:14px}.setup-required>main,.setup-required>header,.setup-required>.rail{visibility:hidden}[hidden]{display:none!important}

.privacy-notice{padding:12px 18px;background:#fff5df;border:1px solid #ead29c;border-radius:10px;color:#72501e;font-size:12px;line-height:1.6;margin:12px 0}.login-card .privacy-notice{font-size:12px}#planNumber{font-size:12px;overflow-wrap:anywhere}

.ui-language-picker{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#687484;white-space:nowrap}.ui-language-picker select{width:auto!important;max-width:130px;padding:7px 9px;border:1px solid #d6dce4;border-radius:7px;background:white;font:inherit;color:#26313b}.login-card>.ui-language-picker{display:flex;justify-content:flex-end;margin-bottom:14px}.setup-top{flex-wrap:wrap;gap:10px}.modal-toolbar{flex-wrap:wrap}header{flex-wrap:wrap;height:auto;min-height:76px;gap:9px}#clinicPickerDialog .ui-language-picker,#patientPlansDialog .ui-language-picker{display:flex;justify-content:flex-end;margin-bottom:12px}@media(max-width:850px){header>.ui-language-picker{margin-left:auto}.ui-language-picker span{font-size:10px}}

/* Let chart content shrink inside the single-column mobile grid. */
.workspace>.right,.right>.panel{min-width:0}
@media(max-width:500px){.chart .section-title{flex-wrap:wrap}.chart-footer{flex-wrap:wrap}.total{gap:12px;flex-wrap:wrap}footer{gap:12px;flex-wrap:wrap}}

.discount-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-top:16px}.discount-controls label{font-size:12px;display:grid;gap:6px;flex:1;min-width:100px}.discount-controls input,.discount-controls select{width:100%}.discount-controls>strong{padding-bottom:12px}.net-total{margin-top:14px}.quote-discount{background:transparent;margin-top:0;padding-top:12px;padding-bottom:12px}.quote-discount b{font-size:20px}.quote-net{margin-top:0}

.admin-magic-link{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0}.admin-magic-link input{width:100%;min-width:0}.admin-magic-link small{grid-column:1/-1;line-height:1.6;color:#6e7d8b}


.catalog-tabs{display:flex;gap:6px;margin-bottom:10px}.catalog-tabs [aria-pressed=true]{background:var(--navy);color:white}.procedure-entry{display:flex;align-items:center;gap:3px}.procedure-entry .procedure{flex:1;min-width:0}.favorite-toggle{border:0;background:transparent;color:#a16b16;font-size:24px;padding:8px}.stage-fields{flex:1;min-width:150px}.stage-fields label,.stage-time{display:block;font-size:11px}.stage-fields input{display:block;width:100%;padding:8px;background:white}.stage-fields details{margin-top:8px}.stage-fields summary{cursor:pointer;font-size:11px}.stage-time{flex:0 1 220px}.stage-head .stage-time .duration{display:block;width:100%;max-width:none;background:white;padding:8px;margin-top:4px}.stage-head{flex-wrap:wrap}.stage-head>button{white-space:nowrap}#newPatient{white-space:nowrap}
