/* AZAUTO Care Studio — original UI, shared by the live application and isolated preview. */
/* Orthographic anatomical crowns: the same interaction contract as the record chart. */
.studio-map-panel:has(.studio-anatomical){background:#fff;border-color:transparent;border-radius:0;padding:0 10px 12px}
.studio-anatomical .studio-tooth-number{font:15px Arial,sans-serif;fill:#576a69}
.studio-anatomical .studio-arch-label{font:21px Tahoma,Arial,sans-serif;fill:#7c8b89}
.studio-anatomical .studio-side-label{fill:#8d9b98;font:22px Arial,sans-serif}
.studio-anatomical .studio-crown-image{pointer-events:none}
.studio-anatomical .tooth-selection-ring{stroke-width:1.3}
.studio-anatomical .selected .tooth-selection-ring{stroke:#b7af50;fill:none}
.studio-anatomical .studio-tooth:hover .tooth-selection-ring,.studio-anatomical .studio-tooth:focus-visible .tooth-selection-ring{stroke:#287b78;stroke-width:2;stroke-dasharray:none}
.studio-anatomical .extracted-marker{stroke:#526562;stroke-width:2.5;fill:none}
.studio-tooth-callout{cursor:pointer;outline:none}
.studio-tooth-callout path{stroke:#98aaa5;stroke-width:1;stroke-dasharray:3 3;fill:none;pointer-events:none}
.studio-tooth-callout rect{fill:#eaf1fb;stroke:#bbcae3;stroke-width:1}
.studio-tooth-callout rect.callout-in_progress{fill:#efe9f7;stroke:#cbbae0}
.studio-tooth-callout rect.callout-completed{fill:#e3f2e9;stroke:#97c6ad}
.studio-tooth-callout text{font:11px Tahoma,Arial,sans-serif;fill:#385b58;pointer-events:none}
.studio-tooth-callout:focus-visible rect{stroke:#287b78;stroke-width:2}
.studio-anatomy-credit{display:flex;justify-content:space-between;gap:8px;color:#8b9895;font-size:9px;padding:4px 0 10px}
.studio-anatomy-credit a{color:#738b87}
@media(min-width:761px){.studio-map-panel .studio-anatomical{height:min(65dvh,700px);min-height:440px;max-height:700px}}
@media(max-width:760px){.studio-map-panel .studio-anatomical{height:auto;max-height:none;min-height:0}.studio-anatomical .studio-tooth-callout{display:none}}
:root{--care-blue:#4261d9;--care-ink:#1d2c40;--care-muted:#758396;--care-line:#e4eaf1;--care-bg:#f5f7fb;--care-lilac:#e9eafb}
.state-planned{background:#edf1ff;color:#4664b2;border-color:#d9e1fc}
.studio-fdi-touch{display:none}.studio-occlusal text{font-size:21px}.studio-occlusal .studio-arch-label{font-size:20px}.studio-occlusal .studio-center-label{font-size:20px}.studio-occlusal .studio-center-sub{font-size:14px}
@media(max-width:760px){.studio-fdi-touch{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;direction:ltr;margin:12px 0}.studio-fdi-touch button{height:38px;min-width:0;border:1px solid #dce5ef;background:white;border-radius:7px;color:#677c94;font:12px Arial;cursor:pointer}.studio-fdi-touch button[aria-pressed=true]{background:#4261d9;color:white;border-color:#4261d9}}
@media(max-width:760px){.care-studio-modal .clinical-head{display:grid;grid-template-columns:1fr 1fr;gap:7px;font-size:11px}.care-studio-modal .clinical-head>div{grid-column:1/-1}.care-studio-modal .clinical-head p{margin:3px 0}.care-studio-modal .clinical-head>.button{width:100%;padding:8px;font-size:10px}.care-studio-modal .clinical-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-bottom:10px;margin-bottom:10px}.care-studio-modal .clinical-tabs .button{padding:7px;min-height:34px;font-size:10px;white-space:normal;line-height:1.6;width:100%}.care-studio-modal .patient-profile-tabs{padding-bottom:7px;margin-bottom:10px}}
.care-studio-modal{width:min(1480px,calc(100vw - 32px))!important;max-width:1480px!important;max-height:96dvh;padding:24px!important;border-radius:22px!important;background:#fff}
.care-studio-modal .dialog-head{margin-bottom:14px;border-bottom:1px solid var(--care-line);padding-bottom:14px}.care-studio-modal .dialog-head h2{font-size:15px;color:var(--care-muted)}
.care-studio-modal .clinical-record{font-size:13px}.care-studio-modal .clinical-tabs{padding-bottom:12px;margin-bottom:16px}.care-studio-modal .clinical-tabs .button{border-radius:8px;padding:8px 14px;font-size:12px}.care-studio-modal .clinical-head{gap:12px;margin-bottom:10px}
.patient-profile-tabs{display:flex;gap:5px;overflow:auto;padding:4px 0 15px;border-bottom:1px solid var(--care-line);margin-bottom:18px}.patient-profile-tabs button{font:inherit;white-space:nowrap;padding:11px 18px;border:0;background:transparent;border-radius:9px;color:#66778c;cursor:pointer}.patient-profile-tabs button[aria-current=page]{background:#edf0ff;color:#3454ce;font-weight:700}.patient-profile-hero{display:flex;align-items:center;gap:20px;padding:12px 0 24px}.patient-profile-hero h2{margin:3px 0 7px;font-size:24px}.patient-initial{width:72px;height:72px;display:grid;place-items:center;background:#edf0ff;color:var(--care-blue);border-radius:22px;font-size:30px}.patient-overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:650px}.patient-overview-grid article{border:1px solid var(--care-line);padding:20px;border-radius:12px}.patient-overview-grid small{display:block;color:var(--care-muted)}.patient-overview-grid strong{display:block;font-size:24px;margin-top:8px}.patient-overview-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.patient-visit-summary{border-top:1px solid var(--care-line);padding-top:14px}.studio-allergy-alert{padding:8px 12px;border:1px solid #e4b899;background:#fff4ea;color:#7b4619;border-radius:8px;font-size:12px}
.treatment-studio{background:white;color:var(--care-ink)}.studio-topline{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:8px 0 22px}.studio-topline h3{margin:4px 0;font-size:21px;font-weight:600}.studio-topline .eyebrow{font-size:10px;color:var(--care-muted);letter-spacing:1px}.studio-view-controls{display:flex;align-items:center;gap:8px}.studio-view-controls select,.studio-plan-heading select{font:inherit;padding:9px 11px;border:1px solid var(--care-line);border-radius:8px;background:white;color:var(--care-ink)}.studio-fdi{font:600 11px Arial,sans-serif;color:var(--care-muted);padding:8px;border:1px solid var(--care-line);border-radius:8px}.studio-segment{display:inline-flex;padding:3px;background:#f1f4f9;border-radius:9px;gap:2px}.studio-segment button{font:inherit;font-size:12px;border:0;padding:8px 13px;background:transparent;color:#6b7c91;border-radius:6px;cursor:pointer;white-space:nowrap}.studio-segment button[aria-pressed=true]{background:#fff;color:#3656c9;box-shadow:0 1px 4px #172b4a12}.studio-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;direction:ltr;align-items:start}.studio-map-panel,.studio-work-panel{direction:rtl}html[dir=ltr] .studio-map-panel,html[dir=ltr] .studio-work-panel{direction:ltr}.studio-map-panel{min-width:0;background:#fafbfd;border:1px solid #eef1f6;border-radius:18px;padding:10px 18px 18px}.studio-occlusal{display:block;width:100%;max-height:650px;min-height:370px}.studio-occlusal text{font:15px Arial,sans-serif;fill:#728194;pointer-events:none}.studio-occlusal .studio-arch-label{font:15px Tahoma,Arial,sans-serif;fill:#77879b}.studio-occlusal .studio-side-label{font-size:23px;fill:#c3cdd9}.studio-occlusal .studio-center-label{font:17px Tahoma,Arial,sans-serif;fill:#61728b}.studio-occlusal .studio-center-sub{font:11px Tahoma,Arial,sans-serif;fill:#91a0b3}.studio-tooth{cursor:pointer;outline:none}.studio-tooth .tooth-selection-ring{stroke:transparent;stroke-width:2}.studio-tooth.selected .tooth-selection-ring{stroke:#4261d9;fill:#4261d908}.studio-tooth:focus .tooth-selection-ring,.studio-tooth:hover .tooth-selection-ring{stroke:#6981dd;stroke-dasharray:3 3}.studio-tooth .draft-count{font:9px Arial;fill:white}.studio-map-caption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:10px;color:#8492a4;border-top:1px solid #e8edf4;padding:13px 0}.studio-color-legend{display:flex;flex-wrap:wrap;gap:17px;font-size:11px;color:#718097;padding:4px 0 15px}.studio-color-legend span{display:flex;align-items:center;gap:6px}.studio-color-legend i{width:8px;height:8px;border-radius:3px}.studio-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;background:white;border:1px solid var(--care-line);border-radius:12px}.studio-selected>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.studio-selected small{font-size:10px;color:var(--care-muted)}.studio-selected strong{font:600 26px Arial;color:var(--care-blue)}.studio-selected span{font-size:11px}.studio-selected .button{font-size:11px;padding:9px}.studio-work-panel{min-width:0}.studio-plan-heading{display:flex;gap:8px;align-items:end;margin-bottom:14px}.studio-plan-heading label{display:grid;gap:7px;flex:1;font-size:12px;color:var(--care-muted)}.studio-plan-heading select{width:100%;max-width:100%}.studio-new-plan{border:1px solid var(--care-line);background:#f9faff;border-radius:8px;color:var(--care-blue);font-size:22px;height:38px;width:38px;cursor:pointer}.studio-saved-items{max-height:365px;overflow:auto}.studio-treatment-card{position:relative;border:1px solid var(--care-line);border-radius:10px;padding:13px;margin-bottom:9px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.studio-treatment-card strong{display:block;font-size:12px;margin:7px 0;line-height:1.7;overflow-wrap:anywhere}.studio-treatment-card small{display:block;color:var(--care-muted);font-size:10px;line-height:1.9}.studio-treatment-card>b{font:600 12px Arial;color:#344866;align-self:center}.studio-treatment-card .link-button{font-size:10px;grid-column:1/-1;text-align:start;margin:0;padding:0}.studio-status,.schedule-status{display:inline-block;font-size:10px;border-radius:5px;padding:2px 7px;background:#eff2f6;color:#687b90}.studio-plan-total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--care-line);margin-top:12px}.studio-plan-total span{font-size:10px;color:var(--care-muted)}.studio-plan-total strong{font:600 18px Arial;color:#2e4160}.studio-frequent{margin-top:24px;padding-top:18px;border-top:1px solid var(--care-line)}.studio-frequent h4{font-size:13px;margin:0 0 7px}.studio-frequent small,.studio-frequent>p{font-size:10px;color:#8b97a7;line-height:1.9}.studio-procedures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:13px}.studio-procedures button{border:1px solid #dce3f5;border-radius:8px;background:#f2f5ff;color:#4261b9;padding:10px 3px;cursor:pointer;min-height:57px}.studio-procedures button:nth-child(2n){background:#eff7f5;color:#357c69;border-color:#dceae5}.studio-procedures button:nth-child(3n){background:#f5f1fa;color:#8465aa;border-color:#e8e0f1}.studio-procedures b{display:block;font:600 10px Arial;margin-bottom:6px}.studio-procedures span{display:block;font-size:9px;font-family:Tahoma,Arial,sans-serif;overflow-wrap:anywhere;line-height:1.5}.studio-procedures button:disabled{opacity:.45;cursor:default}.studio-finance{width:100%;margin-top:16px;font-size:12px}.studio-empty{font-size:12px;color:var(--care-muted);padding:22px 10px;line-height:1.9}.studio-draft-label{font-size:10px;color:#9a6d32;background:#fff5e6;padding:7px 10px;border-radius:6px}.studio-draft>label{display:grid;gap:6px;font-size:11px;color:#6c7c91;margin:12px 0}.studio-draft input,.studio-draft textarea{width:100%;box-sizing:border-box;border:1px solid var(--care-line);border-radius:7px;padding:9px;font:12px Tahoma,Arial,sans-serif;background:white}.studio-draft textarea{min-height:62px}.studio-draft-items{max-height:310px;overflow:auto;margin:12px 0}.studio-draft-items fieldset{border:1px solid var(--care-line);border-radius:9px;padding:11px;display:block;margin:0 0 9px;background:#fbfcfe}.studio-draft-items legend{font-size:10px;color:var(--care-blue);padding:0 5px}.studio-draft-row{display:flex;align-items:end;gap:9px;margin:9px 0}.studio-draft-row label{flex:1;min-width:0;font-size:10px;color:var(--care-muted)}.studio-draft-row input{direction:ltr;text-align:start;margin-top:5px}.studio-draft-row button{width:30px;height:33px;border:0;background:#fbeef0;color:#ad6671;border-radius:7px;cursor:pointer;font-size:20px}.studio-draft details{font-size:10px;color:var(--care-muted)}.studio-surfaces{display:flex;flex-wrap:wrap;gap:10px;direction:ltr;padding:9px 0}.studio-surfaces label{display:flex;align-items:center;gap:3px}.studio-surfaces input{width:auto}.studio-save{width:100%;font-size:12px}.studio-estimate-note{font-size:10px;line-height:1.8;color:var(--care-muted)}.studio-draft .link-button{display:block;font-size:10px;margin:10px 0 0}.studio-draft .error{font-size:11px;line-height:1.9}.studio-map-panel:has(#studio-3d){padding:10px}.studio-map-panel #studio-3d .dental-chart-layout{display:block}.studio-map-panel #studio-3d .dental-tooth-panel{display:none}.studio-map-panel #studio-3d .dental-canvas-host{height:490px}.studio-map-panel #studio-3d .dental-chart-heading{display:none}
.workspace:has(.schedule-studio){grid-template-columns:minmax(0,1fr)}.workspace:has(.schedule-studio)>#live-visits{display:none}.layout main:has(.schedule-studio) #live-stats{display:none}#live-content:has(.schedule-studio){padding:0;overflow:visible;background:white;min-width:0}.schedule-studio{color:var(--care-ink);min-width:0}.schedule-toolbar{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;border-bottom:1px solid var(--care-line)}.schedule-day h2{font-size:17px;margin:4px 0}.schedule-day .eyebrow{font-size:9px;color:var(--care-muted)}.schedule-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schedule-controls input,.schedule-controls select,.schedule-patient-filter select{font:11px Tahoma,Arial,sans-serif;padding:9px;border:1px solid var(--care-line);border-radius:8px;background:white;color:#5d6e84;max-width:190px}.schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;direction:ltr}.schedule-grid-wrap{min-width:0;overflow:auto;max-height:calc(100vh - 260px);background:#fff;position:relative}.schedule-grid{min-width:calc(70px + var(--schedule-columns) * 155px)}.schedule-heading,.schedule-body{display:grid;grid-template-columns:66px repeat(var(--schedule-columns),minmax(0,1fr))}.schedule-heading{position:sticky;top:0;z-index:3;background:#fafbfd;min-height:66px;box-shadow:0 1px 0 #e6ebf2}.schedule-heading>span{font-size:10px;color:#8a99ac;align-self:center;text-align:center}.schedule-heading>div{padding:16px 10px;display:flex;align-items:center;gap:7px;border-left:1px solid #e9edf4;min-width:0;flex-wrap:wrap}.schedule-heading strong{font-size:10px;overflow-wrap:anywhere}.schedule-heading small{display:block;color:#8c9aab;font-size:9px;width:100%;padding-left:15px}.schedule-heading i{height:8px;width:8px;border-radius:50%;background:var(--resource-color)}.schedule-body{height:var(--schedule-height)}.schedule-times{position:relative;background:#fafbfd}.schedule-times span{position:absolute;width:100%;font:10px Arial;color:#8c9bb0;padding-top:5px;text-align:center}.schedule-column{position:relative;border-left:1px solid #e9edf4;background:repeating-linear-gradient(to bottom,transparent 0,transparent 47px,#edf1f6 47px,#edf1f6 48px)}.schedule-appointment{position:absolute;box-sizing:border-box;min-width:0;border:1px solid #d6e0fb;border-inline-start:3px solid #5c7ae1;border-radius:6px;background:#eef2ff;color:#405c9f;padding:6px 8px;text-align:start;overflow:hidden;cursor:pointer;direction:rtl;font-family:Tahoma,Arial,sans-serif}.schedule-appointment b{display:block;font-size:10px;line-height:1.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-appointment>span{font:9px Arial,sans-serif;display:block;margin-top:3px;direction:ltr}.schedule-appointment small{font-size:9px;display:block;margin-top:4px}.schedule-source{position:absolute;bottom:5px;inset-inline-end:5px;font:8px Arial;border:1px solid #b2d4c9;border-radius:4px;padding:1px 3px;color:#377b68}.state-confirmed{background:#edf1ff;color:#4664b2;border-color:#d9e1fc}.state-arrived{background:#fff4e2;color:#94713d;border-color:#eed9b8}.state-in_treatment,.state-in_progress{background:#f1eafb;color:#8661a8;border-color:#e2d4f0}.state-completed{background:#e8f5ee;color:#3e856c;border-color:#cee5d9}.state-no_show,.state-cancelled{background:#f9eaed;color:#a46471;border-color:#efd9de}.schedule-context{border-left:1px solid var(--care-line);padding:18px;direction:rtl;min-width:0;background:#fdfefe}.mini-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.mini-calendar-heading strong{font-size:11px}.mini-calendar-heading button{border:0;background:transparent;font-size:19px;color:#8391a2;cursor:pointer}.mini-weekdays,.mini-days{display:grid;grid-template-columns:repeat(7,1fr);direction:ltr;gap:3px;text-align:center}.mini-weekdays{font-size:9px;color:#a2acb9;margin:10px 0}.mini-days button{font:10px Arial,sans-serif;background:transparent;border:0;cursor:pointer;border-radius:50%;height:26px;color:#697b91}.mini-days button.outside{color:#c6ced8}.mini-days button.selected{background:var(--care-blue);color:white}.schedule-create{width:100%;margin:18px 0;font-size:11px}.schedule-patient-filter{display:grid;gap:8px;font-size:10px;color:#7a899b;margin:15px 0}.schedule-patient-filter select{max-width:100%;width:100%}.schedule-agenda{max-height:365px;overflow:auto}.schedule-agenda>button{display:grid;text-align:start;width:100%;gap:6px;padding:12px;margin:0 0 9px;border:1px solid var(--care-line);border-radius:9px;background:white;font:10px Tahoma,Arial,sans-serif;cursor:pointer;color:#6d7d92}.schedule-agenda b{color:#34475f;font-size:10px}.schedule-agenda .schedule-status{justify-self:start}.schedule-agenda>p{font-size:11px;color:#8a98a9}.schedule-help{font-size:9px;color:#9aa5b4;line-height:1.9;margin-top:15px}.schedule-legend{display:flex;gap:17px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--care-line);font-size:10px;color:#7a8a9d}.schedule-legend span{display:flex;align-items:center;gap:5px}.schedule-legend i{width:9px;height:9px;border-radius:3px;border:1px solid}.schedule-empty-note{position:sticky;bottom:12px;width:max-content;max-width:90%;margin:10px auto;background:#f2f5fb;color:#7a8a9e;font-size:12px;padding:12px 18px;border-radius:9px}
button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #6986e8;outline-offset:3px}button:disabled{cursor:default}.clinic-suite[data-preview=true]::before{content:'معاينة تفاعلية — بيانات وهمية، ولا حفظ أو إرسال حقيقي';display:block;background:#fff6de;color:#85672e;text-align:center;padding:7px;font-size:11px}
@media(min-width:1500px){.studio-occlusal{max-height:690px}.studio-layout{grid-template-columns:minmax(0,1fr) 370px}}
@media(max-width:1050px){.studio-layout{grid-template-columns:minmax(0,1fr) 305px;gap:15px}.studio-occlusal{min-height:300px}.schedule-layout{grid-template-columns:minmax(0,1fr) 215px}.schedule-context{padding:12px}.schedule-toolbar{padding:15px}.studio-topline h3{font-size:18px}.studio-selected{flex-wrap:wrap}}
@media(max-width:760px){.care-studio-modal{width:calc(100vw - 12px)!important;padding:14px!important;max-height:97dvh;border-radius:13px!important}.studio-layout{grid-template-columns:minmax(0,1fr);gap:18px}.studio-topline{align-items:start;flex-direction:column}.studio-map-panel{padding:9px}.studio-occlusal{min-height:0;max-height:460px}.studio-work-panel{width:100%}.studio-saved-items,.studio-draft-items{max-height:none}.studio-procedures{grid-template-columns:repeat(4,1fr)}.studio-topline h3{font-size:18px}.patient-profile-tabs button{padding:10px;font-size:11px}.patient-profile-hero h2{font-size:20px}.schedule-layout{grid-template-columns:minmax(0,1fr)}.schedule-context{border-left:0;border-top:1px solid var(--care-line);display:grid;grid-template-columns:1fr 1fr;gap:12px;direction:rtl}.schedule-context .mini-calendar{grid-row:span 3}.schedule-agenda{grid-column:1/-1;max-height:220px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.schedule-agenda>button{margin:0}.schedule-help{grid-column:1/-1}.schedule-grid-wrap{max-height:620px}.schedule-toolbar{padding:14px}.schedule-controls{gap:6px}.schedule-controls input,.schedule-controls select{max-width:145px}.schedule-controls .studio-segment{width:100%}.schedule-controls .studio-segment button{flex:1}.schedule-create{margin:0}.schedule-legend{gap:12px}.studio-map-caption{font-size:9px}.studio-center-label{font-size:12px}.patient-overview-grid{grid-template-columns:1fr 1fr}.patient-overview-grid article{padding:14px}.studio-color-legend{gap:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.studio-frequent,.studio-view-controls,.studio-selected button,.studio-finance,.patient-profile-tabs,.schedule-controls,.schedule-context{display:none}.care-studio-modal{max-height:none;overflow:visible}.studio-layout{grid-template-columns:1fr 300px}.schedule-grid-wrap{max-height:none;overflow:visible}.schedule-layout{display:block}}
/* Keep the full chart and common procedures visible on normal laptop displays. */
@media(min-width:761px){.care-studio-modal{padding:18px!important}.care-studio-modal .dialog-head{padding-bottom:8px;margin-bottom:8px}.care-studio-modal .dialog-head h2{font-size:12px}.care-studio-modal .patient-profile-tabs{padding-bottom:8px;margin-bottom:10px}.care-studio-modal .patient-profile-tabs button{padding:7px 13px;font-size:12px}.care-studio-modal .clinical-head{font-size:11px;margin-bottom:7px}.care-studio-modal .clinical-head p{margin:2px 0}.care-studio-modal .clinical-head .button{padding:7px 12px;font-size:11px}.care-studio-modal .clinical-tabs{padding-bottom:8px;margin-bottom:8px}.care-studio-modal .clinical-tabs .button{padding:7px 12px;font-size:11px}.studio-topline{padding:6px 0 12px}.studio-topline h3{font-size:18px}.studio-occlusal{height:min(48dvh,520px);min-height:320px;max-height:520px}.studio-saved-items{max-height:240px}.studio-treatment-card{padding:10px}.studio-treatment-card strong{margin:4px 0}.studio-map-caption{padding:8px 0}.studio-color-legend{padding-bottom:10px}.studio-selected{padding:9px}.studio-frequent{margin-top:15px;padding-top:13px}.studio-procedures{gap:5px;margin-top:9px}.studio-procedures button{padding:7px 3px;min-height:51px}.studio-plan-total{padding:11px 0;margin-top:8px}.studio-frequent>p{margin:7px 0}.studio-finance{margin-top:9px}}
/* Keep anatomy styling after the shared chart rules. */
.studio-occlusal.studio-anatomical .studio-tooth.selected .tooth-selection-ring{stroke:#b7af50;fill:none;stroke-width:1.3}
.studio-occlusal.studio-anatomical .studio-tooth-callout text{font:11px Tahoma,Arial,sans-serif;fill:#385b58}
.studio-occlusal.studio-anatomical .studio-arch-label{font-size:21px;fill:#7c8b89}
.studio-occlusal.studio-anatomical .studio-side-label{fill:#8d9b98}
@media(min-width:761px){.studio-map-panel .studio-occlusal.studio-anatomical{height:min(65dvh,700px);min-height:440px;max-height:700px}}
.studio-procedure-template{min-width:0}.studio-procedure-template>[data-quick-procedure]{width:100%;touch-action:none;cursor:grab}.studio-procedure-template>[data-quick-procedure]:active{cursor:grabbing}.studio-quick-price-label{display:block;font:8px/1.6 Tahoma,Arial;color:#788793;margin-top:5px}.studio-quick-price-label input{box-sizing:border-box;width:100%;min-width:0;border:1px solid #dce5ec;border-radius:6px;padding:6px;font:11px Arial;background:#fff;color:#26384b;direction:ltr}.procedure-drop-target .tooth-selection-ring,.studio-anatomical .studio-tooth.procedure-drop-target .tooth-selection-ring{stroke:#168c74!important;stroke-width:3!important;fill:#168c741a!important}.procedure-drag-ghost{position:fixed;z-index:2147483647;pointer-events:none;background:#173b43;color:white;padding:12px 16px;border-radius:10px;box-shadow:0 8px 30px #142a4430;font-size:12px;max-width:180px}.studio-action-message{font-size:11px;color:#287564;min-height:20px;margin:0 0 8px}.procedure-dragging .studio-crown-image{pointer-events:none}
.studio-procedure-template:nth-child(2n)>button{background:#eff7f5;color:#357c69;border-color:#dceae5}.studio-procedure-template:nth-child(3n)>button{background:#f5f1fa;color:#8465aa;border-color:#e8e0f1}
/* Custom pointer dragging works on both HTML and SVG crown targets. */
.studio-procedure-template>[data-quick-procedure]{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.studio-procedure-template>[data-quick-procedure] *{pointer-events:none}

/* Approved AZAUTO Care workspace, composed around existing clinical actions. */
@font-face{font-family:CareCairo;src:url('fonts/cairo.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.care-studio-modal:has(.treatment-studio){--care-soft:#edf1ff;background:var(--care-bg);color:var(--care-ink);font-family:CareCairo,Cairo,sans-serif;box-sizing:border-box;width:calc(100vw - 224px)!important;max-width:none!important;height:100dvh;max-height:100dvh;position:fixed;inset:0 auto 0 0;margin:0;padding:24px!important;border:0;border-radius:0!important;box-shadow:none;overflow:auto}
.care-studio-modal:has(.treatment-studio)::backdrop{background:transparent}
.care-studio-modal:has(.treatment-studio) .dialog-head{position:static;top:auto;background:transparent;border:0;margin:0 0 20px;padding:0;min-height:40px}
.care-studio-modal:has(.treatment-studio) .dialog-head h2{font:400 12px/1.6 CareCairo,Cairo,sans-serif;color:var(--care-muted)}
.care-studio-modal:has(.treatment-studio) .icon-button{background:white;border:1px solid var(--care-line);color:var(--care-muted);border-radius:8px}
.care-studio-modal:has(.treatment-studio) :is(button,input,select,textarea){font-family:inherit}
.care-studio-modal:has(.treatment-studio) .clinical-head{background:white;border:1px solid var(--care-line);border-radius:12px;padding:20px;margin:0 0 16px;min-height:100px;box-sizing:border-box;display:flex;align-items:center;gap:12px}
.care-studio-modal:has(.treatment-studio) .clinical-head>div{flex:1;min-width:0}
.care-studio-modal:has(.treatment-studio) .clinical-head strong{font-size:26px;line-height:1.6;font-weight:700}
.care-studio-modal:has(.treatment-studio) .clinical-head p{font-size:11px;color:var(--care-muted);margin:5px 0 0}
.care-studio-modal:has(.treatment-studio) .patient-profile-tabs{background:white;border:0;border-radius:8px;padding:0 8px;margin:0 0 10px;display:flex;gap:12px;overflow:auto}
.care-studio-modal:has(.treatment-studio) .patient-profile-tabs button{font:700 12px/1.6 CareCairo,Cairo,sans-serif;padding:13px 20px;border:0;min-height:44px;white-space:nowrap;color:var(--care-muted)}
.care-studio-modal:has(.treatment-studio) .patient-profile-tabs button[aria-current=page]{background:var(--care-soft);color:var(--care-blue);border-radius:8px}
.care-studio-modal:has(.treatment-studio) .clinical-tabs{margin:0 0 16px;padding:0;display:flex;gap:8px;flex-wrap:wrap;border:0}
.care-studio-modal:has(.treatment-studio) .clinical-tabs .button{background:transparent;color:var(--care-muted);border:0;min-height:32px;font-size:11px;padding:6px 12px}
.care-studio-modal:has(.treatment-studio) .clinical-tabs .primary{background:var(--care-soft);color:var(--care-blue)}
.treatment-studio{--care-soft:#edf1ff;background:transparent;font-family:CareCairo,Cairo,sans-serif}
.treatment-studio .studio-layout{display:grid;grid-template-columns:minmax(250px,316fr) minmax(390px,608fr) minmax(250px,356fr);grid-template-areas:'plan chart procedures';gap:24px;align-items:stretch;direction:ltr}
.treatment-studio :is(.studio-map-panel,.studio-work-panel,.studio-frequent){box-sizing:border-box;direction:rtl;background:white;border:1px solid var(--care-line);border-radius:12px;padding:20px;min-width:0;margin:0}
html[dir=ltr] .treatment-studio :is(.studio-map-panel,.studio-work-panel,.studio-frequent){direction:ltr}
.treatment-studio .studio-work-panel{grid-area:plan}.treatment-studio .studio-map-panel{grid-area:chart}.treatment-studio .studio-frequent{grid-area:procedures}
.treatment-studio :is(.studio-work-panel>h4,.studio-frequent h4){font-size:18px;font-weight:700;line-height:1.6;margin:0 0 8px}
.treatment-studio .studio-topline{padding:0 0 16px;align-items:start;gap:12px;flex-wrap:wrap}
.treatment-studio .studio-topline h3{font-size:18px;font-weight:700;margin:0;line-height:1.6}
.treatment-studio .studio-topline .eyebrow{font:400 10px/1.6 CareCairo,Cairo,sans-serif;letter-spacing:0;color:var(--care-muted)}
.treatment-studio .studio-view-controls{gap:6px;flex-wrap:wrap}
.treatment-studio .studio-segment button{font-size:10px;padding:7px 9px;min-height:32px}
.treatment-studio .studio-view-controls select{font-size:10px;padding:6px;min-height:32px;max-width:90px}
.treatment-studio .studio-fdi{font-size:10px;padding:6px}
.treatment-studio .studio-map-panel .studio-occlusal.studio-anatomical{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:840/740}
.treatment-studio .studio-map-panel .studio-anatomy-credit{padding:5px 0;color:var(--care-muted)}
.treatment-studio .studio-map-caption{font-size:9px;line-height:1.8;padding:10px 0}
.treatment-studio .studio-color-legend{font-size:10px;gap:10px;padding:4px 0 14px}
.treatment-studio .studio-selected{padding:10px 12px;background:#fff5df;border:0;border-radius:8px;flex-wrap:wrap;gap:8px}
.treatment-studio .studio-selected strong{font-size:20px;color:#90621e}
.treatment-studio .studio-selected .button{font-size:10px;padding:6px;min-height:32px}
.treatment-studio .studio-frequent>div>small{font-size:11px;line-height:1.9;color:var(--care-muted)}
.treatment-studio .studio-procedure-search{display:block;margin:14px 0 12px}
.treatment-studio .studio-procedure-search input{box-sizing:border-box;width:100%;min-width:0;padding:9px 12px;border:1px solid var(--care-line);border-radius:8px;background:#f8faff;font-size:12px;min-height:40px}
.treatment-studio .studio-procedures{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.treatment-studio .studio-procedure-template{background:var(--care-soft);border:1px solid var(--care-line);border-radius:12px;overflow:hidden}
.treatment-studio .studio-procedure-template>[data-quick-procedure]{background:transparent;border:0;color:var(--care-blue);border-radius:0;min-height:84px;padding:12px 6px 4px}
.treatment-studio .studio-procedure-template b{font:700 12px/1.6 CareCairo,Cairo,sans-serif;margin:0 0 4px}
.treatment-studio .studio-procedure-template button span{font:400 13px/1.6 CareCairo,Cairo,sans-serif;color:var(--care-ink)}
.treatment-studio .studio-quick-price-label{font:400 9px/1.6 CareCairo,Cairo,sans-serif;text-align:center;padding:0 10px 10px;margin:0;color:var(--care-muted)}
.treatment-studio .studio-quick-price-label input{font:400 12px/1.6 CareCairo,Cairo,sans-serif;border:1px solid #dce3f4;min-height:32px;padding:4px 6px;border-radius:6px;margin-top:4px;text-align:center;color:var(--care-ink)}
.treatment-studio .studio-frequent>p{font-size:10px;line-height:1.8;margin:14px 0 0}
.treatment-studio .studio-plan-heading{margin:0 0 12px;gap:8px}
.treatment-studio .studio-plan-heading label{font-size:11px;gap:6px}
.treatment-studio .studio-plan-heading select{font-size:11px;min-height:38px;padding:7px}
.treatment-studio .studio-new-plan{flex-shrink:0;background:var(--care-soft);border:0}
.treatment-studio .studio-action-message:empty{display:none}
.treatment-studio .studio-action-message{font-size:10px;line-height:1.8;margin:0 0 12px}
.treatment-studio .studio-treatment-card{padding:12px;border-radius:12px;grid-template-columns:1fr;gap:4px;margin-bottom:10px}
.treatment-studio .studio-treatment-card strong{font-size:12px;font-weight:700;margin:4px 0}
.treatment-studio .studio-treatment-card>b{font:700 18px/1.6 CareCairo,Cairo,sans-serif;text-align:start}
.treatment-studio .studio-saved-items{max-height:470px}
.treatment-studio .studio-plan-total{display:block;padding:14px 0;border:0;margin:4px 0}
.treatment-studio .studio-plan-total span{display:block;font-size:11px;margin-bottom:8px}
.treatment-studio .studio-plan-total strong{font:700 24px/1.6 CareCairo,Cairo,sans-serif;display:block;text-align:start}
.treatment-studio .studio-draft-items{max-height:420px}
.treatment-studio .studio-draft-items fieldset{background:white;border-radius:12px;padding:10px;min-width:0}
.treatment-studio .studio-draft input,.treatment-studio .studio-draft textarea{font-family:CareCairo,Cairo,sans-serif;font-size:12px;padding:8px;min-height:36px}
.treatment-studio .studio-draft-row input{font-size:16px;font-weight:700}
.treatment-studio .studio-save{background:var(--care-blue);color:white;border-color:var(--care-blue);min-height:46px;border-radius:8px;font-size:12px}
.treatment-studio [hidden]{display:none!important}
body:has(.care-studio-modal[open] .treatment-studio) .sidebar{background:#162538;color:white;box-sizing:border-box;width:224px;padding:24px;min-height:100dvh}
body:has(.care-studio-modal[open] .treatment-studio) .sidebar :is(b,small,label,.brand-sub){color:white}
body:has(.care-studio-modal[open] .treatment-studio) .sidebar nav button{color:#e9edf4;background:transparent;font-family:CareCairo,Cairo,sans-serif}
body:has(.care-studio-modal[open] .treatment-studio) .sidebar nav button.active{background:#263b55;color:white}
@media(max-width:1350px){.treatment-studio .studio-layout{grid-template-columns:minmax(220px,.9fr) minmax(330px,1.5fr) minmax(220px,1fr);gap:16px}.treatment-studio :is(.studio-map-panel,.studio-work-panel,.studio-frequent){padding:16px}.care-studio-modal:has(.treatment-studio){width:100vw!important;padding:20px!important}.care-studio-modal:has(.treatment-studio)::backdrop{background:var(--care-bg)}}
@media(max-width:950px){.treatment-studio .studio-layout{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:'chart procedures' 'plan plan'}.treatment-studio .studio-saved-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:none}.treatment-studio .studio-draft-items{max-height:none}.care-studio-modal:has(.treatment-studio) .clinical-head strong{font-size:22px}}
@media(max-width:650px){.care-studio-modal:has(.treatment-studio){padding:12px!important}.care-studio-modal:has(.treatment-studio) .dialog-head{margin-bottom:12px}.care-studio-modal:has(.treatment-studio) .clinical-head{padding:14px;flex-wrap:wrap;min-height:0}.care-studio-modal:has(.treatment-studio) .clinical-head>div{flex:1 0 100%}.care-studio-modal:has(.treatment-studio) .clinical-head strong{font-size:20px}.care-studio-modal:has(.treatment-studio) .patient-profile-tabs{gap:4px}.care-studio-modal:has(.treatment-studio) .patient-profile-tabs button{padding:10px 14px}.treatment-studio .studio-layout{display:flex;flex-direction:column;gap:14px}.treatment-studio .studio-map-panel{order:0}.treatment-studio .studio-frequent{order:1}.treatment-studio .studio-work-panel{order:2}.treatment-studio :is(.studio-map-panel,.studio-work-panel,.studio-frequent){width:100%;padding:14px}.treatment-studio .studio-procedures{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-studio .studio-saved-items{display:block}.treatment-studio .studio-occlusal .studio-tooth-callout{display:block}.treatment-studio .studio-fdi-touch{grid-template-columns:repeat(8,minmax(0,1fr))}.treatment-studio .studio-view-controls{width:100%;justify-content:space-between}}
@media print{.care-studio-modal:has(.treatment-studio){position:static;width:100%!important;height:auto;overflow:visible}.treatment-studio .studio-layout{display:grid;grid-template-columns:280px 1fr;grid-template-areas:'plan chart'}.treatment-studio .studio-frequent{display:none}}
/* Keep procedure tiles compact and case labels legible at chart scale. */
.care-studio-modal:has(.treatment-studio)::backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}
.treatment-studio .studio-procedure-template>[data-quick-procedure]{min-height:60px;padding:9px 6px 3px}
.treatment-studio .studio-quick-price-label{font-size:8px;padding:0 8px 8px}
.treatment-studio .studio-quick-price-label input{min-height:28px;padding:3px;margin-top:3px}
.treatment-studio .studio-occlusal.studio-anatomical .studio-tooth-callout text{font:16px CareCairo,Cairo,sans-serif;fill:#385b58}

/* Navy navigation applies throughout the authenticated clinic workspace. */
.clinic-suite #app-screen>.sidebar{background:#162538!important;color:#f5f7fb!important;border-color:#263b55;--ink:#f5f7fb;--muted:#a8b7ca;--teal:#ccd7ff}
.clinic-suite #app-screen>.sidebar .brand b{color:#fff!important}
.clinic-suite #app-screen>.sidebar :is(.brand-sub,#app-brand,.nav-group-label,#branch-text,#session-status){color:#acbdd2!important}
.clinic-suite #app-screen>.sidebar #branch-label{background:#20344b;border:1px solid #344c68;color:#e9eff7}
.clinic-suite #app-screen>.sidebar #branch{background:#20344b;color:#fff;border-color:#344c68;max-width:100%}
.clinic-suite #app-screen>.sidebar #branch option{background:#20344b;color:white}
.clinic-suite #app-screen>.sidebar #live-nav button{background:transparent!important;color:#dce5f1!important;border-color:transparent}
.clinic-suite #app-screen>.sidebar #live-nav button:hover{background:#20344b!important}
.clinic-suite #app-screen>.sidebar #live-nav button.active{background:#2b4260!important;color:#fff!important;box-shadow:inset -3px 0 #a5b7ff}
.clinic-suite #app-screen>.sidebar .sidebar-bottom{border-color:#344c68;color:#e2eaf5}
.clinic-suite #app-screen>.sidebar #logout{background:#20344b;color:#e2eaf5;border-color:#344c68}
.treatment-studio .studio-procedure-template{border-color:var(--procedure-color);background:var(--procedure-soft)}
.treatment-studio .studio-procedure-template>[data-quick-procedure]{color:var(--procedure-color)}
.treatment-studio .studio-procedure-color-label{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 8px 8px;font-size:10px;color:var(--care-muted)}
.treatment-studio .studio-procedure-color-label input[type=color]{width:36px;height:28px;min-height:28px;padding:2px;border:1px solid var(--care-line);border-radius:6px;background:white;cursor:pointer}
.treatment-studio .studio-treatment-card,.treatment-studio .studio-draft-items fieldset{border-inline-start:4px solid var(--procedure-color)}
.treatment-studio .studio-color-help{font-size:10px;line-height:1.9;margin:0 0 12px;color:var(--care-muted)}

/* A contextual tool rail: calendar tools, patient directory, or treatment tools. */
.treatment-studio .studio-layout{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:'chart context';align-items:start;gap:24px}
.treatment-studio .studio-context-rail{grid-area:context;min-width:0;display:flex;flex-direction:column;gap:16px;direction:rtl;max-height:calc(100dvh - 290px);overflow:auto;padding-inline-end:3px;scrollbar-width:thin;position:sticky;top:0}
html[dir=ltr] .treatment-studio .studio-context-rail{direction:ltr}
.treatment-studio .studio-context-rail :is(.studio-work-panel,.studio-frequent){width:100%;flex-shrink:0}
.treatment-studio .studio-context-rail .studio-saved-items{max-height:280px}
.treatment-studio .studio-context-rail .studio-draft-items{max-height:310px}
.studio-patient-search{background:white;border:1px solid var(--care-line);border-radius:12px;padding:12px;font-size:12px}
.studio-patient-search>summary{cursor:pointer;color:var(--care-blue);font-weight:700}
.studio-patient-search[open]>summary{margin-bottom:12px}
.context-patient-finder label{display:grid;gap:8px;font-size:12px;color:var(--care-ink)}
.context-patient-finder input[type=search]{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--care-line);border-radius:8px;padding:10px;font:inherit;font-size:12px;background:#f9fbff}
.context-patient-finder>small{display:block;font-size:9px;line-height:1.9;color:var(--care-muted);margin-top:10px}
.context-search-count{font-size:10px;color:var(--care-muted);margin:10px 0}
.context-patient-results{display:grid;gap:7px;max-height:240px;overflow:auto;scrollbar-width:thin}
.context-patient-results>button{display:grid;gap:4px;text-align:start;padding:10px;background:white;border:1px solid var(--care-line);border-radius:8px;color:var(--care-ink);cursor:pointer;font:inherit;min-width:0}
.context-patient-results>button:hover,.context-patient-results>button[aria-current=true]{border-color:var(--care-blue);background:#edf1ff}
.context-patient-results strong{font-size:11px;overflow-wrap:anywhere}
.context-patient-results span{font:10px Arial,sans-serif;color:var(--care-muted);text-align:start}
.context-switch-review{background:#fff5df;color:#79541f;padding:10px;border:1px solid #ead7ad;border-radius:8px;font-size:11px;line-height:1.9;margin-top:10px}
.context-switch-review button{font:inherit;background:white;border:1px solid #d8bd85;color:#79541f;border-radius:6px;padding:7px;margin:4px;cursor:pointer}
.context-patient-finder [hidden]{display:none!important}
.workspace:has(>#live-context){display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:'main context';direction:ltr;gap:24px;align-items:start}
.workspace:has(>#live-context)>#live-content{grid-area:main;direction:rtl}
.workspace:has(>#live-context)>#live-context{grid-area:context}
html[dir=ltr] .workspace:has(>#live-context)>#live-content{direction:ltr}
.workspace-context{direction:rtl;background:white;border:1px solid var(--care-line);border-radius:12px;padding:18px;min-width:0;position:sticky;top:16px}
html[dir=ltr] .workspace-context{direction:ltr}
.workspace-context h2{font-size:17px;margin:0 0 18px}
.workspace-context>.button{width:100%;margin-top:16px}
.workspace:has(>#live-context) #live-content>.toolbar{display:none}
.schedule-context .context-patient-results{max-height:170px}
.schedule-context{max-height:calc(100dvh - 250px);overflow:auto;scrollbar-width:thin}
.schedule-context .context-patient-finder{border-top:1px solid var(--care-line);padding-top:14px;margin-top:8px}
@media(max-width:1350px){.treatment-studio .studio-layout{grid-template-columns:minmax(0,1fr) 310px;grid-template-areas:'chart context'}}
@media(max-width:950px){.treatment-studio .studio-layout{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:'chart context';gap:14px}.workspace:has(>#live-context){grid-template-columns:minmax(0,1fr) 260px;gap:14px}}
@media(max-width:650px){.treatment-studio .studio-context-rail{position:static;max-height:none;overflow:visible;width:100%;padding:0;order:1}.treatment-studio .studio-context-rail .studio-work-panel{order:1}.treatment-studio .studio-context-rail .studio-frequent{order:0}.workspace:has(>#live-context){display:flex;flex-direction:column}.workspace-context{position:static;width:100%;box-sizing:border-box;order:-1}.workspace:has(>#live-context)>#live-content{width:100%}.schedule-context{max-height:none;overflow:visible}.schedule-context .context-patient-finder{grid-column:1/-1}}
@media print{.treatment-studio .studio-context-rail{position:static;max-height:none;overflow:visible}.studio-patient-search,.workspace-context,.context-patient-finder{display:none}}
/* Compact saved estimates leave more room for the frequently used procedures. */
.studio-context-rail .studio-work-panel{padding:16px}
.studio-context-rail .studio-treatment-card{grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:9px;margin-bottom:7px}
.studio-context-rail .studio-treatment-card strong{font-size:11px;line-height:1.6;margin:3px 0}
.studio-context-rail .studio-treatment-card small{font-size:9px;line-height:1.5}
.studio-context-rail .studio-treatment-card>b{font-size:12px}
.treatment-studio .studio-context-rail .studio-saved-items{max-height:170px}
.studio-context-rail .studio-plan-total{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 0}
.studio-context-rail .studio-plan-total strong{font-size:20px}.studio-context-rail .studio-plan-total span{margin:0}


/* Horizontal clinic header; original IDs and permission-based visibility remain intact. */
.clinic-suite #app-screen.layout{display:block;min-height:100dvh}
.clinic-suite #app-screen>.sidebar{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;padding:16px 24px!important;display:grid!important;grid-template-columns:200px minmax(180px,240px) minmax(0,1fr);gap:14px 24px;align-items:center;border:0}
.clinic-suite #app-screen>.sidebar .brand{margin:0;padding:0;gap:12px}
.clinic-suite #app-screen>.sidebar #branch-label{margin:0;padding:8px 12px;min-width:0;border-radius:10px;grid-row:1;grid-column:2}
.clinic-suite #app-screen>.sidebar #branch{font-size:12px;min-height:32px;padding:4px;width:100%}
.clinic-suite #app-screen>.sidebar .sidebar-bottom{grid-column:3;grid-row:1;margin:0;padding:0;border:0;display:flex;align-items:center;justify-content:end;gap:12px}
.clinic-suite #app-screen>.sidebar .sidebar-bottom>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.clinic-suite #app-screen>.sidebar #live-nav{grid-column:1/-1;grid-row:2;display:flex;gap:7px;flex-wrap:wrap;margin:0;padding-top:8px;border-top:1px solid #344c68}
.clinic-suite #app-screen>.sidebar #live-nav .nav-group-label{display:none}
.clinic-suite #app-screen>.sidebar #live-nav button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 14px;font-size:12px!important;white-space:nowrap;border-radius:8px}
.clinic-suite #app-screen>.sidebar #live-nav button.active{box-shadow:inset 0 -2px #a5b7ff}
.clinic-suite #app-screen>.sidebar #live-nav button::before{content:''!important;display:inline-block;width:19px;height:19px;flex:0 0 19px;border:0;border-radius:0;background:currentColor;opacity:1;mask:var(--nav-icon) center/contain no-repeat;-webkit-mask:var(--nav-icon) center/contain no-repeat}
.clinic-suite #app-screen>.sidebar #live-nav button:is(:hover,:focus-visible)::before{animation:var(--nav-motion,nav-pulse) .6s ease both}
.clinic-suite #app-screen>main{width:100%;max-width:none;min-width:0;box-sizing:border-box}
.care-studio-modal:has(.treatment-studio){width:100vw!important}
@keyframes nav-sun{50%{transform:rotate(25deg) scale(1.12)}}
@keyframes nav-calendar{50%{transform:perspective(80px) rotateX(-30deg)}}
@keyframes nav-people{35%{transform:translateY(-4px)}70%{transform:translateY(1px)}}
@keyframes nav-clock{50%{transform:rotate(35deg)}}
@keyframes nav-message{40%{transform:translateY(-4px) rotate(-8deg)}}
@keyframes nav-bell{20%,60%{transform:rotate(18deg)}40%,80%{transform:rotate(-18deg)}}
@keyframes nav-settings{to{transform:rotate(90deg)}}
@keyframes nav-pulse{50%{transform:scale(1.2)}}
.calendar-drag-source,#schedule-patient-search [data-context-patient]{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.schedule-appointment .schedule-resize-handle{position:absolute;bottom:0;left:0;right:0;height:12px;cursor:ns-resize;background:linear-gradient(transparent,#4261d922);border-bottom:2px solid currentColor;touch-action:none}
.schedule-column.calendar-drop-target{outline:2px dashed #4261d9;outline-offset:-3px;background-color:#4261d90a}
.calendar-drag-preview{position:fixed;z-index:2147483647;pointer-events:none;padding:10px 14px;border-radius:8px;background:#162538;color:white;box-shadow:0 6px 20px #16253830;font:12px Cairo,sans-serif;direction:ltr;max-width:230px}
@media(max-width:850px){.clinic-suite #app-screen>.sidebar{grid-template-columns:1fr 1fr;padding:14px!important;gap:14px!important}.clinic-suite #app-screen>.sidebar #branch-label{grid-column:2}.clinic-suite #app-screen>.sidebar .sidebar-bottom{grid-row:3;grid-column:1/-1;justify-content:space-between}.clinic-suite #app-screen>.sidebar #live-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:start;padding-bottom:8px}.clinic-suite #app-screen>.sidebar #live-nav button{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.clinic-suite #app-screen>.sidebar #live-nav button::before{animation:none!important;transition:none!important}}

#today-nav{--nav-motion:nav-sun;--nav-icon:url("icons/nav/today-nav.png")}
#calendar-nav{--nav-motion:nav-calendar;--nav-icon:url("icons/nav/calendar-nav.png")}
#patients-nav{--nav-motion:nav-people;--nav-icon:url("icons/nav/patients-nav.png")}
#sessions-nav{--nav-motion:nav-clock;--nav-icon:url("icons/nav/sessions-nav.png")}
#whatsapp-nav{--nav-motion:nav-message;--nav-icon:url("icons/nav/whatsapp-nav.png")}
#notifications-nav{--nav-motion:nav-bell;--nav-icon:url("icons/nav/notifications-nav.png")}
#settings-nav{--nav-motion:nav-settings;--nav-icon:url("icons/nav/settings-nav.png")}
#quality-nav{--nav-motion:nav-pulse;--nav-icon:url("icons/nav/quality-nav.png")}
#staff-admin-nav{--nav-motion:nav-people;--nav-icon:url("icons/nav/staff-admin-nav.png")}
.clinic-suite #app-screen>.sidebar .sidebar-bottom #logout{width:auto;min-width:80px;flex:0 0 auto}
.clinic-suite #app-screen>.sidebar #live-nav button.active::before{animation:var(--nav-motion,nav-pulse) .6s ease both}
@media(prefers-reduced-motion:reduce){.clinic-suite #app-screen>.sidebar #live-nav button.active::before{animation:none!important}}

.schedule-gesture-help{font-size:11px;line-height:1.9;color:#596b82;padding:10px 20px;background:#f6f8ff;border-bottom:1px solid var(--care-line);margin:0}

/* Reset inherited sidebar grid/column sizing at every viewport width. */
.clinic-suite #app-screen>.sidebar #live-nav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;grid-auto-flow:unset!important;grid-template-columns:none!important;gap:8px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;overscroll-behavior-x:contain;box-sizing:border-box}
.clinic-suite #app-screen>.sidebar #live-nav>button{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:max-content!important;max-width:none!important;align-self:center!important;white-space:nowrap!important;min-height:42px;box-sizing:border-box}
.clinic-suite #app-screen>.sidebar #live-nav>button[hidden]{display:none!important}
.clinic-suite #app-screen>.sidebar #live-nav>button::before{display:inline-block!important;color:inherit!important}
.clinic-suite #app-screen>.sidebar #branch-label{min-width:0;max-width:100%}
.clinic-suite #app-screen>.sidebar #branch{min-width:0;max-width:100%;text-overflow:ellipsis}
.clinic-suite #app-screen>.sidebar .sidebar-bottom{min-width:0;max-width:100%}
@media(max-width:850px){.clinic-suite #app-screen>.sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.clinic-suite #app-screen>.sidebar .brand{min-width:0}.clinic-suite #app-screen>.sidebar .brand b{font-size:18px}.clinic-suite #app-screen>.sidebar .sidebar-bottom{justify-content:space-between;flex-wrap:wrap}.clinic-suite #app-screen>.sidebar .sidebar-bottom>div{min-width:0;gap:6px}.clinic-suite #app-screen>.sidebar #user-email{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-suite #app-screen>.sidebar #live-nav>button{min-height:40px;padding:8px 12px}}
.clinic-suite #app-screen>.sidebar #branch-label{position:static!important;inset:auto!important;transform:none!important;align-self:center;box-sizing:border-box}

/* Date navigation commits explicitly, so typing never replaces the focused input. */
.schedule-toolbar{background:#fff;padding:20px 24px;align-items:center;gap:18px}
.schedule-day h2{font-size:20px;font-weight:700;color:#1d2c40;line-height:1.8;margin:4px 0}
.schedule-day .eyebrow{font-size:10px;letter-spacing:0;color:#758396}
.schedule-controls{align-items:center;gap:12px}
.schedule-date-navigation{display:flex;align-items:center;gap:4px;padding:4px;background:#f1f4fa;border:1px solid #e4eaf1;border-radius:10px;direction:ltr}
.schedule-date-navigation button{width:36px;height:36px;border:0;border-radius:7px;background:transparent;color:#536883;font:20px Arial;cursor:pointer}
.schedule-date-navigation .schedule-today{width:auto;min-width:64px;padding:6px 14px;font:700 12px Cairo,sans-serif;background:#fff;color:#4261d9;box-shadow:0 1px 3px #16253812;direction:rtl}
.schedule-date-form{display:flex;gap:8px;align-items:end;margin:0;max-width:100%}
.schedule-date-form>label{display:grid;gap:4px;font-size:10px;color:#758396;min-width:0}
.schedule-controls .schedule-date-form input{box-sizing:border-box;min-height:42px;width:168px;max-width:100%;padding:8px 10px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#1d2c40;font:13px Arial,sans-serif;direction:ltr}
.schedule-date-form>button{min-height:42px;padding:8px 15px;border:0;border-radius:9px;background:#4261d9;color:white;font:700 12px Cairo,sans-serif;cursor:pointer}
.schedule-controls #live-doctor{min-height:42px;max-width:190px;background:#f9fbff;color:#344866;border-color:#dbe3ef;font-size:12px}
.schedule-controls .studio-segment{padding:4px;border:1px solid #e4eaf1;background:#f1f4fa}
.schedule-controls .studio-segment button{min-height:36px;padding:8px 12px;font-size:12px}
.schedule-context .mini-calendar{padding:14px;background:#fff;border:1px solid #e4eaf1;border-radius:12px;box-shadow:0 3px 12px #16253805}
.mini-calendar .mini-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:10px}
.mini-calendar .mini-calendar-heading strong{font-size:13px;font-weight:700;color:#263c59;text-align:center}
.mini-calendar .mini-calendar-heading button{width:30px;height:32px;border:1px solid #e4eaf1;background:#f7f9fd;border-radius:8px;color:#536883;font:21px Arial;cursor:pointer}
.mini-calendar .mini-weekdays{gap:3px;font-size:10px;color:#758396;margin:8px 0}
.mini-calendar .mini-days{gap:3px}
.mini-calendar .mini-days button{height:32px;width:100%;border:1px solid transparent;border-radius:8px;background:#fff;color:#344866;font:12px Arial,sans-serif;cursor:pointer}
.mini-calendar .mini-days button:hover{background:#edf1ff;color:#4261d9}
.mini-calendar .mini-days button.outside{color:#b1bdcc}
.mini-calendar .mini-days button.is-today{border-color:#9baeea;color:#4261d9;font-weight:700}
.mini-calendar .mini-days button.selected{background:#4261d9;color:white;border-color:#4261d9;font-weight:700;box-shadow:0 2px 5px #4261d930}
.mini-calendar .mini-calendar-today{width:100%;min-height:34px;margin-top:12px;border:0;border-radius:8px;background:#edf1ff;color:#4261d9;font:700 11px Cairo,sans-serif;cursor:pointer}
.schedule-date-navigation button:hover{background:#e6ecfc;color:#4261d9}
@media(max-width:1050px){.schedule-toolbar{align-items:start}.schedule-controls{justify-content:start;flex:1 1 100%}.schedule-day{width:100%}}
@media(max-width:650px){.schedule-toolbar{padding:16px;gap:12px}.schedule-day h2{font-size:17px}.schedule-controls{gap:10px;flex-wrap:wrap;width:100%}.schedule-controls>.studio-segment{width:100%;box-sizing:border-box}.schedule-controls .studio-segment button{flex:1}.schedule-date-form{flex:1 1 190px}.schedule-date-form>label{flex:1}.schedule-controls .schedule-date-form input{width:100%}.schedule-controls #live-doctor{width:100%;max-width:none}.schedule-context .mini-calendar{grid-column:1/-1}.mini-calendar .mini-days button{height:36px}}
.mini-calendar .mini-days,.mini-calendar .mini-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}
.mini-calendar .mini-days button{min-width:0;padding:0;box-sizing:border-box}
@media(min-width:761px){.schedule-layout{grid-template-columns:minmax(0,1fr) 280px}}

/* Appointment editing stays in the calendar's existing context rail. */
.schedule-context.schedule-editing>.mini-calendar,.schedule-context.schedule-editing>.schedule-create,.schedule-context.schedule-editing>.schedule-patient-filter,.schedule-context.schedule-editing>.schedule-agenda,.schedule-context.schedule-editing>.schedule-help{display:none}
.schedule-context.schedule-editing #schedule-patient-search{padding-top:0;margin-top:0;border:0}
.schedule-context.schedule-editing .context-patient-results{max-height:100px}
#schedule-inline-editor{padding:16px;margin-top:16px;background:white;border:1px solid #dbe3ef;border-radius:12px;min-width:0;box-shadow:0 4px 15px #16253806}
.inline-appointment-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.inline-appointment-heading h3{font:700 16px Cairo,sans-serif;margin:0;color:#1d2c40}
.inline-appointment-heading button{width:30px;height:30px;border:1px solid #e4eaf1;border-radius:8px;background:#f5f7fb;color:#64778e;font-size:20px;cursor:pointer}
.inline-appointment-note{font-size:10px;color:#758396;line-height:1.9;margin:10px 0 14px}
#schedule-inline-editor .live-form{display:grid;gap:12px}
#schedule-inline-editor .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#schedule-inline-editor label{display:grid;gap:5px;min-width:0;font-size:11px;color:#536883}
#schedule-inline-editor :is(input,select,textarea){width:100%;max-width:100%;box-sizing:border-box;min-width:0;min-height:38px;padding:8px;border:1px solid #dbe3ef;border-radius:8px;font:12px Cairo,sans-serif;background:#fff;color:#1d2c40}
#schedule-inline-editor input:is([type=date],[type=time],[type=number]){font-family:Arial,sans-serif;direction:ltr}
#schedule-inline-editor textarea{min-height:64px;resize:vertical}
#schedule-inline-editor .button{min-height:40px;font-size:12px;width:100%}
#schedule-inline-editor .form-note{font-size:9px;line-height:1.8;margin:0}
#schedule-inline-editor .inline-appointment-status{font-size:11px;line-height:1.8;color:#91651e;margin:8px 0}
#schedule-inline-editor .inline-appointment-status:empty{display:none}
#schedule-inline-editor [hidden]{display:none!important}
.schedule-slot-preview{position:absolute;left:4px;right:4px;box-sizing:border-box;pointer-events:none;z-index:4;border:2px dashed #4261d9;border-radius:7px;padding:7px;background:#edf1ffbb;color:#2746b0;font:11px/1.7 Cairo,sans-serif;overflow:hidden}
@media(min-width:761px){.schedule-layout:has(#schedule-inline-editor){grid-template-columns:minmax(0,1fr) 360px}}
@media(max-width:760px){.schedule-context.schedule-editing{display:block;max-height:none;overflow:visible}#schedule-inline-editor{padding:14px}.schedule-layout:has(#schedule-inline-editor) .schedule-grid-wrap{max-height:50dvh}}

/* Compact colored procedure shortcuts, matching the reference palette. */
.treatment-studio .studio-frequent{padding:14px}
.treatment-studio .studio-frequent h4{font-size:12px;margin-bottom:4px}
.treatment-studio .studio-frequent>div>small{font-size:10px}
.treatment-studio .studio-procedure-search{margin:8px 0 6px}
.treatment-studio .studio-procedure-search input{min-height:30px;padding:5px 8px;font-size:11px}
.treatment-studio .studio-procedure-settings{display:block;margin:0 0 8px;padding:3px 0;min-height:24px;border:0;background:transparent;color:var(--care-muted);font-size:10px;cursor:pointer}
.treatment-studio .studio-procedures{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;direction:ltr}
.treatment-studio .studio-procedure-template{position:relative;border:0;border-radius:5px;background:var(--procedure-color);overflow:hidden;min-width:0}
.treatment-studio .studio-procedure-template>[data-quick-procedure]{display:flex;align-items:center;justify-content:center;width:100%;min-height:25px;height:25px;padding:2px;color:#fff;border-radius:5px;background:var(--procedure-color);cursor:grab;touch-action:none}
.treatment-studio .studio-procedure-template>[data-quick-procedure]:active{cursor:grabbing}
.treatment-studio .studio-procedure-template>[data-quick-procedure]:focus-visible{outline:2px solid var(--care-ink);outline-offset:-2px}
.treatment-studio .studio-procedure-template b{font:700 8px/1.2 CareCairo,Cairo,sans-serif;margin:0;white-space:nowrap}
.treatment-studio .studio-procedure-template button span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.treatment-studio .studio-frequent:not(.is-configuring) :is(.studio-quick-price-label,.studio-procedure-color-label){display:none}
.treatment-studio .studio-frequent.is-configuring .studio-procedures{grid-template-columns:repeat(2,minmax(0,1fr));direction:rtl;gap:8px}
.treatment-studio .studio-frequent.is-configuring .studio-procedure-template{background:var(--procedure-soft);border:1px solid var(--procedure-color)}
.treatment-studio .studio-frequent.is-configuring .studio-quick-price-label{display:block;padding:6px 8px}
.treatment-studio .studio-frequent.is-configuring .studio-quick-price-label input{width:100%;box-sizing:border-box}
.treatment-studio .studio-frequent>p:last-child{font-size:9px;line-height:1.6;margin:8px 0 0}
/* A consistent, centered close icon across dialogs, editors and draft rows. */
button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"],.icon-button[aria-label*="Close"]){position:relative!important;display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;box-sizing:border-box;border:1px solid #e3e9f2!important;border-radius:50%!important;background:#f7f9fc!important;color:#718096!important;font-size:0!important;line-height:1!important;cursor:pointer;transition:background .16s,color .16s,border-color .16s}
button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"],.icon-button[aria-label*="Close"])::before,button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"],.icon-button[aria-label*="Close"])::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg);pointer-events:none}
button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"],.icon-button[aria-label*="Close"])::after{transform:translate(-50%,-50%) rotate(-45deg)}
button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"]):hover{background:#eef2ff!important;color:#4261d9!important;border-color:#cbd5f5!important}
button:is(#live-close,[data-inline-close],[data-remove-draft],[aria-label^="إغلاق"],[aria-label^="Close"]):focus-visible{outline:3px solid #c7d2fe;outline-offset:2px}
button:is(#live-close,[data-inline-close],[data-remove-draft]):disabled{opacity:.45;cursor:default}
.booking-new-patient{align-self:start;border:0;background:transparent;color:#4261d9;font:inherit;font-size:12px;padding:4px 0;cursor:pointer;text-align:start}
.booking-patient-fields{padding:12px;border:1px solid #dce4f6;border-radius:12px;background:#f7f9ff;display:grid;gap:10px}
.booking-patient-fields[hidden]{display:none}
.booking-patient-fields h4{font-size:13px;margin:0;color:#162538}
.booking-patient-fields .actions{display:flex;flex-wrap:wrap;gap:6px}
.booking-patient-fields .button{font-size:11px;padding:8px}
/* Direct on-grid feedback while moving or extending an appointment. */
.calendar-drag-slot{position:absolute;left:3px;right:3px;z-index:6;box-sizing:border-box;border:1px solid #4261d9;border-radius:6px;background:#dce6ffed;color:#243f91;box-shadow:0 4px 12px #263f7d24;padding:5px 8px;font:11px/1.5 Cairo,sans-serif;pointer-events:none;overflow:hidden;will-change:top,height}
.calendar-is-dragging{opacity:.2!important}
.calendar-drop-target{background:#f7f9ff!important}
.calendar-drag-preview{padding:5px 9px;font-size:11px;border-radius:6px;opacity:.95}
.schedule-slot-preview{pointer-events:auto;cursor:grab;touch-action:none;user-select:none;padding-bottom:10px}
.schedule-slot-preview b{font-weight:500}
.schedule-slot-preview .schedule-resize-handle{position:absolute;left:0;right:0;bottom:0;height:10px;cursor:ns-resize;touch-action:none}
.schedule-slot-preview .schedule-resize-handle::after{content:'';position:absolute;bottom:3px;left:calc(50% - 12px);width:24px;height:2px;border-radius:2px;background:#4261d9}
@media(min-width:761px){.schedule-layout{grid-template-columns:minmax(0,1fr) 360px}}
.workspace-fullscreen-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:7px;border:1px solid #dfe5ef;border-radius:8px;background:#fff;color:#62748c;cursor:pointer;transition:background .15s,color .15s}
.workspace-fullscreen-button:hover,.workspace-fullscreen-button[aria-pressed=true]{background:#edf1ff;color:#4261d9;border-color:#cbd5f5}
.workspace-fullscreen-button:focus-visible{outline:3px solid #c7d2fe;outline-offset:2px}
.workspace-fullscreen-button[aria-pressed=true] svg{transform:scale(.8) rotate(180deg)}
.workspace-fullscreen{position:fixed!important;inset:0!important;z-index:2147483646!important;box-sizing:border-box!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:16px!important;border:0!important;border-radius:0!important;background:#f5f7fb!important;overflow:auto!important;direction:inherit;font-family:CareCairo,Cairo,sans-serif}
.workspace-fullscreen::backdrop{background:#f5f7fb}
#live-content.workspace-fullscreen .schedule-studio{height:100%;display:flex;flex-direction:column;background:white;border:1px solid #e3e9f2;border-radius:12px;overflow:hidden}
#live-content.workspace-fullscreen .schedule-layout{flex:1;min-height:0}
#live-content.workspace-fullscreen :is(.schedule-grid-wrap,.schedule-context){max-height:100%;height:100%;box-sizing:border-box}
#live-content.workspace-fullscreen .schedule-toolbar{padding:12px 16px}
#live-content.workspace-fullscreen .schedule-gesture-help{margin:8px 16px}
.treatment-studio.workspace-fullscreen .studio-layout{min-height:calc(100dvh - 32px);grid-template-columns:minmax(0,1fr) 340px;align-items:start}
.treatment-studio.workspace-fullscreen .studio-context-rail{max-height:calc(100dvh - 32px)}
.treatment-studio.workspace-fullscreen .studio-map-panel{height:calc(100dvh - 32px);overflow:auto}
.treatment-studio.workspace-fullscreen .studio-map-panel .studio-occlusal.studio-anatomical{max-height:calc(100dvh - 245px);width:100%;aspect-ratio:840/740}
.care-studio-modal:has(.workspace-fullscreen){overflow:visible!important}
@media(max-width:760px){.workspace-fullscreen{padding:8px!important}#live-content.workspace-fullscreen .schedule-layout{display:block;overflow:auto}#live-content.workspace-fullscreen .schedule-grid-wrap{height:65dvh;max-height:65dvh}#live-content.workspace-fullscreen .schedule-context{height:auto;max-height:none}.treatment-studio.workspace-fullscreen .studio-layout{grid-template-columns:minmax(0,1fr);min-height:100%}.treatment-studio.workspace-fullscreen .studio-map-panel{height:auto}.treatment-studio.workspace-fullscreen .studio-context-rail{max-height:none}}
.treatment-studio .studio-procedure-template>[data-quick-procedure]{color:var(--procedure-text,#fff)}
.treatment-studio .studio-procedure-template[hidden]{display:none}
.treatment-studio .studio-frequent.is-configuring .studio-procedure-template>[data-quick-procedure]{height:auto;min-height:30px}
.treatment-studio .studio-frequent.is-configuring .studio-procedure-template b{font-size:10px}
/* Patient section tabs stay in normal document flow above the dental chart. */
.care-studio-modal :is(.clinical-tabs,.patient-profile-tabs){position:static!important;top:auto!important;inset:auto!important;z-index:auto!important;transform:none!important}
.finance-treatment-plan{padding:14px;margin:12px 0;border:1px solid #dfe6f2;border-radius:12px;background:#f9fbff}
.finance-treatment-plan h4{margin:0 0 10px;color:#162538}
.finance-treatment-plan .button{margin-top:10px}
#finance-treatment-estimates{margin:20px 0}
.invoice-document-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.invoice-document{max-width:900px;margin:0 auto;padding:36px;background:white;border:1px solid #dce3ee;border-radius:12px;color:#162538;font-family:CareCairo,Cairo,sans-serif}
.invoice-document-header{display:flex;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:3px solid #4261d9}
.invoice-document-header>div:first-child>strong{font-size:22px}.invoice-document-header h2{font-size:27px;margin:0 0 8px}.invoice-document-header p{font-size:12px;color:#718096;margin:5px 0}
.invoice-document-patient{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px 0}
.invoice-document-patient>div{display:grid;gap:7px}.invoice-document small{font-size:11px;color:#718096}
.invoice-document table{width:100%;border-collapse:collapse;text-align:start;font-size:12px}
.invoice-document th{background:#eff3fb;padding:12px;text-align:start;color:#536580}
.invoice-document td{padding:14px 12px;border-bottom:1px solid #e7edf6;overflow-wrap:anywhere}
.invoice-document-totals{max-width:360px;margin:24px 0 24px auto}.invoice-document-totals>div{display:flex;justify-content:space-between;gap:20px;padding:9px 12px}.invoice-document-totals dd{margin:0}.invoice-document-totals>div:nth-child(3),.invoice-document-totals>div:last-child{background:#edf1ff;border-radius:6px;font-weight:700}
.invoice-document footer{padding-top:20px;border-top:1px solid #e3e9f2;font-size:10px;color:#7b8ba0;text-align:center}
@media(max-width:650px){.invoice-document{padding:16px}.invoice-document-header{gap:12px}.invoice-document-header>div:first-child>strong{font-size:16px}.invoice-document-patient{grid-template-columns:1fr}.invoice-document table{font-size:10px}.invoice-document :is(td,th){padding:8px 4px}}
@media print{
 @page{size:A4;margin:15mm}
 body:has(.invoice-document){background:white!important}
 body:has(.invoice-document)>:not(#live-modal){display:none!important}
 body:has(.invoice-document) #live-modal{display:block!important;position:static!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}
 body:has(.invoice-document) #live-modal>.dialog-head,.invoice-document-actions{display:none!important}
 body:has(.invoice-document) #live-modal-body,.financial-record:has(.invoice-document){padding:0!important;margin:0!important;overflow:visible!important}
 .invoice-document{width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;font-size:11pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .invoice-document-header{break-inside:avoid}.invoice-document tr,.invoice-document-totals{break-inside:avoid}.invoice-document thead{display:table-header-group}
}

/* Dedicated accounting workspace. */
#finance-nav{--nav-motion:nav-pulse;--nav-icon:url("icons/nav/quality-nav.png")}
.accounting-page{padding:22px;min-width:0}.accounting-heading h2{margin:4px 0;font-size:25px}.accounting-heading p{color:#748198;line-height:1.9}.accounting-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start;margin-top:22px}.accounting-layout>aside{min-width:0}.accounting-layout .context-patient-finder{position:static;max-height:none}.accounting-layout .context-patient-results{max-height:460px;overflow:auto}#finance-account{min-width:0;padding:22px;border:1px solid #e1e7f1;border-radius:16px;background:white}.accounting-empty{padding:70px 20px;text-align:center;color:#77869d}.accounting-empty>span{font-size:48px;color:#5572d7}.accounting-layout .finance-totals{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:850px){.accounting-page{padding:14px}.accounting-layout{grid-template-columns:1fr}.accounting-layout .context-patient-results{max-height:180px}#finance-account{padding:14px}.accounting-layout .finance-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body:has(.accounting-page .invoice-document) #live-modal{display:none!important}body:has(.accounting-page .invoice-document)>#app-screen{display:block!important}body:has(.accounting-page .invoice-document) #app-screen main{display:block;padding:0;margin:0}body:has(.accounting-page .invoice-document) #app-screen .sidebar,body:has(.accounting-page .invoice-document) main>header,body:has(.accounting-page .invoice-document) main>.footnote,body:has(.accounting-page .invoice-document) #live-stats,body:has(.accounting-page .invoice-document) #live-visits,.accounting-page:has(.invoice-document) .accounting-heading,.accounting-page:has(.invoice-document) #finance-patients{display:none!important}.accounting-page:has(.invoice-document),.accounting-page:has(.invoice-document) .accounting-layout,#finance-account:has(.invoice-document){display:block!important;padding:0;margin:0;border:0;box-shadow:none}}
.clinic-suite .workspace:has(>#live-content .accounting-page){grid-template-columns:minmax(0,1fr)}
