:root{--ink:#17364a;--muted:#718897;--line:#e3edf0;--blue:#159c98;--green:#238d73;--brand-navy:#17364a;--brand-teal:#22b8ad;--brand-coral:#f28570;--brand-mist:#eaf7f5;--brand-sand:#fff6ef}*{box-sizing:border-box}body{color:var(--ink);background:#f7f9fc;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,a{font:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;flex-shrink:0;width:248px;padding:28px 18px 18px;display:flex}.brand{align-items:center;gap:11px;padding:0 10px 28px;display:flex}.brand-mark{background:var(--brand-mist);border-radius:12px;place-items:center;width:38px;height:38px;display:grid;overflow:hidden}.brand-mark img{width:100%;height:100%;display:block}.brand strong{letter-spacing:-.4px;color:var(--brand-navy);font-size:17px;display:block}.brand span,.clinic-select small,.sidebar-footer span{color:var(--muted);margin-top:2px;font-size:11px;display:block}.clinic-select{border:1px solid var(--line);border-radius:10px;margin:0 5px 25px;padding:11px 12px;font-size:12px;position:relative}.clinic-select b{color:var(--muted);position:absolute;top:17px;right:12px}nav{gap:5px;display:grid}nav a{color:#718099;border-radius:9px;align-items:center;gap:13px;padding:11px 13px;font-size:13px;display:flex}nav a.active{color:var(--blue);background:var(--brand-mist);font-weight:600}nav i{text-align:center;width:18px;font-size:17px;font-style:normal}.sidebar-footer{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:auto;padding:18px 5px 0;display:flex}.avatar{background:var(--brand-mist);width:31px;height:31px;color:var(--blue);border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid}.sidebar-footer strong{font-size:12px;display:block}.sidebar-footer button{color:var(--muted);background:0 0;border:0;margin-left:auto}.brand-mark{box-shadow:none;background:url(/brand/sonrisa-digital-diente-3d.png) 50%/contain no-repeat;font-size:0}.brand strong{color:#0000;background:linear-gradient(100deg,#17364a 35%,#159c98 85%);-webkit-background-clip:text;background-clip:text}.portal-brand{align-items:center}.portal-shell{background:linear-gradient(135deg,#eaf7f5,#f7fbfa 58%,#fff6ef)}.development-banner{color:#285f63;background:#eaf7f5;border-color:#d0ece7}.development-banner>span,.development-banner a{color:#159c98}.development-banner p{color:#64878a}.booking-location,.booking-summary{background:#f0f9f7;border-color:#d8eeea}.booking-next-steps{color:#426b6c;background:#f0f9f7;border-color:#d8eeea}.booking-next-steps strong,.booking-selected strong{color:#159c98}.provider-chip.selected,.date-chip.selected,.slot-chip.selected,.payment-options label.selected{background:#eaf7f5;border-color:#78cfc5;box-shadow:0 0 0 2px #d7efeb}.content{width:min(100%,1240px);padding:34px 44px 52px}.topbar{justify-content:space-between;align-items:flex-start;margin-bottom:26px;display:flex}.eyebrow,.section-kicker{color:#91a0b8;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:700}h1{letter-spacing:-.8px;margin:7px 0 0;font-size:27px}h1 span{color:#f1ae3f;font-size:19px}.top-actions{align-items:center;gap:10px;display:flex}.icon-button,.primary-button{border:1px solid var(--line);color:#70809b;cursor:pointer;background:#fff;border-radius:9px;min-width:38px;height:38px;position:relative}.icon-button em{color:#fff;background:#ee6871;border-radius:50%;place-items:center;width:15px;height:15px;font-size:9px;font-style:normal;display:grid;position:absolute;top:-5px;right:-4px}.primary-button{background:var(--blue);border-color:var(--blue);color:#fff;padding:0 15px;font-size:12px;font-weight:600;box-shadow:0 5px 12px #1769e033}.development-banner{color:#345b91;background:#edf5ff;border:1px solid #dbeaff;border-radius:11px;align-items:center;gap:12px;margin-bottom:22px;padding:13px 16px;display:flex}.development-banner>span{color:var(--blue);font-size:13px}.development-banner strong{font-size:12px;display:block}.development-banner p{color:#6a84a7;margin:3px 0 0;font-size:11px}.development-banner a{color:var(--blue);white-space:nowrap;margin-left:auto;font-size:11px;font-weight:700}.stats-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px;display:grid}.stat-card,.panel{border:1px solid var(--line);background:#fff;border-radius:13px;box-shadow:0 3px 12px #172b4d05}.stat-card{min-height:135px;padding:17px 18px;position:relative;overflow:hidden}.stat-card>span{color:var(--muted);font-size:11px;display:block}.stat-card strong{letter-spacing:-.7px;margin-top:10px;font-size:23px;display:block}.stat-card small{margin-top:5px;font-size:10px;display:block}.positive{color:var(--green)}.warning{color:#ce8c25}.mini-bars{align-items:flex-end;gap:3px;height:30px;display:flex;position:absolute;bottom:17px;right:18px}.mini-bars i{background:#b7d1fb;border-radius:3px;width:5px;display:block}.mini-bars i:first-child{height:12px}.mini-bars i:nth-child(2){height:20px}.mini-bars i:nth-child(3){height:15px}.mini-bars i:nth-child(4){height:25px}.mini-bars i:nth-child(5){height:18px}.mini-bars i:nth-child(6){height:29px}.mini-bars i:nth-child(7){height:23px}.ring{width:38px;height:38px;color:var(--blue);border:4px solid #6092eb;border-color:#6092eb #6092eb #e6edfb #e6edfb;border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid;position:absolute;bottom:19px;right:19px}.ring span{margin-left:1px;font-size:8px}.sparkline{color:#88aaf0;letter-spacing:3px;font-size:15px;font-weight:700;position:absolute;bottom:18px;right:15px}.pending-dots{gap:5px;display:flex;position:absolute;bottom:26px;right:20px}.pending-dots i{background:#f1c271;border-radius:50%;width:7px;height:7px}.pending-dots i:nth-child(2),.pending-dots i:nth-child(4){opacity:.45}.dashboard-grid{grid-template-columns:1.3fr .9fr;gap:18px;margin-bottom:18px;display:grid}.panel{padding:21px 22px}.panel-heading{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.panel h2{letter-spacing:-.3px;margin:5px 0 0;font-size:16px}.panel-heading a{color:var(--blue);margin-top:5px;font-size:11px;font-weight:600}.appointment{border-top:1px solid #f0f3f7;align-items:center;gap:12px;padding:12px 0;display:flex}.appointment time{color:#8593a9;width:39px;font-size:11px}.appointment-dot{border-radius:50%;width:8px;height:8px}.appointment-dot.blue{background:#5591ee}.appointment-dot.purple{background:#9d75e7}.appointment-dot.orange{background:#efae46}.appointment-dot.green{background:#4fc391}.appointment strong,.appointment small{display:block}.appointment strong{font-size:12px}.appointment small{color:var(--muted);margin-top:3px;font-size:10px}.appointment button{color:#9eabbc;background:0 0;border:0;margin-left:auto;font-size:13px}.quick-actions{gap:9px;margin-top:8px;display:grid}.quick-actions a{border:1px solid #edf1f6;border-radius:9px;align-items:center;gap:11px;padding:10px;display:flex}.quick-actions a:hover{background:#f8fbff;border-color:#cbdcf9}.quick-actions b{width:28px;height:28px;color:var(--blue);background:#eef4ff;border-radius:8px;place-items:center;font-size:16px;display:grid}.quick-actions strong,.quick-actions small{display:block}.quick-actions strong{font-size:11px}.quick-actions small{color:var(--muted);margin-top:2px;font-size:10px}.quick-actions i{color:#a7b4c5;margin-left:auto;font-style:normal}.status-panel{justify-content:space-between;align-items:center;gap:25px;display:flex}.status-panel p{color:var(--muted);max-width:470px;margin:8px 0 0;font-size:11px;line-height:1.5}.status-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.status-list span{white-space:nowrap;border:1px solid #edf1f6;border-radius:8px;padding:8px 10px;font-size:10px}.status-list i{background:#f1b55a;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.status-list .ready i{background:#39b889}.status-list small{color:var(--muted);margin:4px 0 0 12px;font-size:9px;display:block}@media (max-width:1000px){.sidebar{width:215px}.content{padding:28px 25px 42px}.stats-grid{grid-template-columns:repeat(2,1fr)}.status-panel{flex-direction:column;align-items:flex-start}.status-list{justify-content:flex-start}}@media (max-width:700px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;padding:16px}.brand{padding-bottom:14px}.clinic-select,.sidebar nav,.sidebar-footer{display:none}.content{padding:22px 16px 35px}.topbar{gap:14px}.top-actions .icon-button{display:none}.top-actions .primary-button{padding:0 10px;font-size:11px}.topbar h1{font-size:22px}.development-banner{align-items:flex-start}.development-banner a{display:none}.stats-grid,.dashboard-grid{grid-template-columns:1fr}.stat-card{min-height:120px}.panel{padding:18px 16px}}.page-content{min-height:100vh}.page-lead{color:var(--muted);max-width:620px;margin:8px 0 0;font-size:12px}.toolbar,.patient-toolbar{align-items:center;gap:8px;margin-bottom:18px;display:flex}.toolbar strong{margin:0 5px;font-size:13px}.toolbar-spacer{flex:1}.filter-button{border:1px solid var(--line);color:#718099;cursor:pointer;background:#fff;border-radius:8px;padding:8px 11px;font-size:11px}.filter-button.selected{color:var(--blue);background:#f2f6ff;border-color:#bdd2f7}.schedule-layout{grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);gap:18px;display:grid}.soft-tag{color:#718099;background:#f4f6fa;border-radius:6px;padding:5px 8px;font-size:10px}.schedule-row{border-top:1px solid #f0f3f7;align-items:center;gap:12px;padding:14px 0;display:flex}.schedule-row time{color:#8593a9;width:43px;font-size:12px}.schedule-row strong,.schedule-row small{display:block}.schedule-row strong{font-size:12px}.schedule-row small{color:var(--muted);margin-top:3px;font-size:10px}.appointment-status{border-radius:6px;margin-left:auto;padding:5px 8px;font-size:10px}.appointment-status.ok{color:#218b67;background:#e9f8f2}.appointment-status.pending{color:#bc7a1e;background:#fff5df}.row-more{color:#9eabbc;background:0 0;border:0}.side-card h2{margin:8px 0;font-size:17px}.side-card p{color:var(--muted);font-size:11px;line-height:1.6}.share-link{color:#6f7e95;background:#f5f7fb;border-radius:8px;justify-content:space-between;align-items:center;padding:9px 10px;font:11px ui-monospace,monospace;display:flex}.share-link button{border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:6px;padding:4px 7px;font-size:10px}.text-link{color:var(--blue);margin-top:15px;font-size:11px;font-weight:600;display:inline-block}.patient-toolbar input{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;flex:1;padding:10px 12px;font-size:11px}.patient-toolbar input:focus{border-color:#9fbeef}.patient-toolbar .text-link{margin:0 0 0 auto}.table-panel{padding:0 20px}.table-header{justify-content:space-between;padding:18px 0 12px;font-size:12px;display:flex}.table-header span{color:var(--muted);font-size:10px}.patient-row{border-top:1px solid #f0f3f7;align-items:center;gap:11px;padding:12px 0;display:flex}.patient-row .avatar{flex-shrink:0}.patient-row strong,.patient-row small{display:block}.patient-row strong{font-size:11px}.patient-row small{color:var(--muted);margin-top:3px;font-size:10px}.patient-row>span{color:var(--muted);margin-left:auto;font-size:10px}.patient-row em{border-radius:6px;padding:5px 7px;font-size:10px;font-style:normal}.tag-active{color:#218b67;background:#e9f8f2}.tag-pending,.tag-warning{color:#bc7a1e;background:#fff5df}.patient-row>b{text-align:right;min-width:73px;font-size:11px}.report-placeholder{align-content:center;min-height:160px;margin-top:18px;display:grid}.report-placeholder h2{margin:8px 0 0;font-size:17px}.report-placeholder p{color:var(--muted);max-width:600px;font-size:11px;line-height:1.6}.portal-shell{background:linear-gradient(135deg,#edf4ff,#f8fafc 55%,#edf8f4);place-items:center;min-height:100vh;padding:22px;display:grid}.portal-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(100%,430px);padding:30px;box-shadow:0 12px 40px #172b4d12}.portal-brand{padding:0 0 28px}.portal-card h1{margin:9px 0 10px;font-size:25px;line-height:1.2}.portal-card>p{color:var(--muted);margin:0 0 22px;font-size:12px;line-height:1.6}.portal-card label{color:#50617b;margin:14px 0;font-size:11px;font-weight:600;display:block}.portal-card input{border:1px solid var(--line);border-radius:8px;outline:0;width:100%;margin-top:7px;padding:11px 12px;font-size:12px;display:block}.portal-submit{width:100%;margin-top:6px}.portal-note{color:var(--muted);margin-top:14px;font-size:10px;line-height:1.5;display:block}.portal-card>.text-link{margin-top:22px}@media (max-width:700px){.schedule-layout{grid-template-columns:1fr}.patient-row>span{display:none}.patient-row>b{min-width:auto}.patient-toolbar .text-link{display:none}.portal-card{padding:23px}}.booking-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.booking-grid label{margin-top:14px}.booking-error{color:#b42318;background:#fff0ee;border:1px solid #ffd2cc;border-radius:8px;padding:9px 10px;font-size:11px;line-height:1.4}.booking-next-steps{color:#516b91;background:#f4f8ff;border:1px solid #dce9fb;border-radius:9px;gap:5px;padding:12px;font-size:11px;line-height:1.45;display:grid}.booking-next-steps strong{color:var(--blue);font-size:11px}button:disabled{cursor:wait;opacity:.65}@media (max-width:500px){.booking-grid{grid-template-columns:1fr;gap:0}}.booking-card{max-width:720px}.booking-location{color:#54709a;background:#f6f9ff;border:1px solid #dce9fb;border-radius:9px;justify-content:space-between;gap:14px;margin:2px 0 17px;padding:11px 12px;font-size:11px;display:flex}.booking-location strong{color:var(--ink)}.booking-section{margin-top:18px}.booking-label{color:#50617b;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.booking-providers{grid-template-columns:1fr 1fr;gap:8px;display:grid}.provider-chip,.date-chip,.slot-chip{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:9px}.provider-chip{text-align:left;align-items:center;gap:8px;padding:10px;display:flex}.provider-chip i{border-radius:50%;flex:none;width:9px;height:9px}.provider-chip span{gap:2px;display:grid}.provider-chip strong{font-size:11px}.provider-chip small{color:var(--muted);font-size:10px}.provider-chip.selected,.date-chip.selected,.slot-chip.selected{background:#eef4ff;border-color:#8bb1ef;box-shadow:0 0 0 2px #d9e7ff}.booking-select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px;font-size:11px}.booking-dates{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.date-chip{text-transform:capitalize;min-height:44px;padding:7px 5px;font-size:10px}.booking-slots{flex-wrap:wrap;gap:8px;display:flex}.slot-chip{min-width:73px;padding:9px 10px;font-size:11px}.slot-chip small{color:#a36117;margin-top:2px;font-size:8px;display:block}.booking-empty,.booking-loading{color:var(--muted);font-size:11px}.booking-selected{color:var(--muted);background:#f8fafc;border-radius:8px;margin-top:15px;padding:10px 12px;font-size:11px}.booking-selected strong{color:var(--blue)}.booking-summary{color:#54709a;background:#f6f9ff;border-radius:9px;gap:4px;margin:14px 0 17px;padding:13px;font-size:11px;display:grid}.booking-summary strong{color:var(--ink);font-size:14px}.payment-options{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px;display:grid}.payment-options label{border:1px solid var(--line);cursor:pointer;border-radius:8px;margin:0;padding:10px;font-size:11px;font-weight:600}.payment-options label.selected{background:#eef4ff;border-color:#8bb1ef}.payment-options input{margin-right:6px}@media (max-width:600px){.booking-card{max-width:100%}.booking-providers,.payment-options{grid-template-columns:1fr}.booking-dates{grid-template-columns:repeat(4,minmax(0,1fr))}.booking-location{gap:3px;display:grid}}.availability-grid{grid-template-columns:1.15fr .85fr;gap:18px;display:grid}.availability-help{color:var(--muted);margin:0 0 14px;font-size:11px;line-height:1.5}.availability-list{gap:8px;display:grid}.availability-row{border-top:1px solid #f0f3f7;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.availability-row strong,.availability-row small{display:block}.availability-row strong{font-size:11px}.availability-row small{color:var(--muted);margin-top:3px;font-size:10px}.toggle-button{color:#a66c1c;cursor:pointer;white-space:nowrap;background:#fff7e8;border:1px solid #f0d8a8;border-radius:7px;padding:7px 9px;font-size:10px}.toggle-button.on{color:#1c8666;background:#eaf9f3;border-color:#b9ead7}.block-form,.rule-form{gap:10px;display:grid}.block-form label,.rule-form label{color:#50617b;font-size:11px;font-weight:600;display:block}.block-form input,.block-form select,.rule-form input,.rule-form select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;margin-top:6px;padding:10px 11px;font-size:11px;display:block}.block-form .primary-button,.rule-form .primary-button{justify-self:start;margin-top:3px}.availability-message{color:#1c8666;background:#eaf9f3;border:1px solid #b9ead7;border-radius:8px;padding:10px 12px;font-size:11px}.availability-blocks{margin-top:18px}.availability-blocks .availability-row:last-child{border-bottom:0}.schedule-row{position:relative}.cancelled-row{opacity:.62}.appointment-status.cancelled{color:#a2444a;background:#ffeff0}.appointment-actions{z-index:2;border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;min-width:165px;padding:6px;display:grid;position:absolute;top:44px;right:31px;box-shadow:0 10px 24px #172b4d18}.appointment-actions button{color:#415675;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:6px;padding:8px 9px;font-size:10px}.appointment-actions button:hover{background:#f3f7fd}.appointment-actions button:last-child{color:#a2444a}@media (max-width:900px){.availability-grid{grid-template-columns:1fr}}.admin-shell{background:#f7f9fc;min-height:100vh;padding:34px 44px 54px}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;max-width:1240px;margin:0 auto 24px;display:flex}.admin-header h1{margin-top:7px}.admin-public-link{white-space:nowrap}.back-link{color:var(--blue);margin-bottom:16px;font-size:11px;font-weight:700;display:block}.admin-tabs{border-bottom:1px solid var(--line);gap:7px;max-width:1240px;margin:0 auto 16px;display:flex;overflow-x:auto}.admin-tabs button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:8px 8px 0 0;padding:11px 13px;font-size:11px}.admin-tabs button.selected{color:var(--blue);border-color:var(--line);background:#fff;font-weight:700}.admin-tabs em{color:#fff;background:#e16a70;border-radius:50%;place-items:center;min-width:17px;height:17px;margin-left:5px;font-size:9px;font-style:normal;display:inline-grid}.admin-message{color:#1c8666;background:#eaf9f3;border:1px solid #b9ead7;border-radius:8px;max-width:1240px;margin:0 auto 15px;padding:10px 12px;font-size:11px}.admin-message button{float:right;color:inherit;cursor:pointer;background:0 0;border:0}.admin-loading,.admin-grid,.admin-shell>.panel{max-width:1240px;margin-inline:auto}.admin-grid{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:18px;display:grid}.admin-form-panel h2,.admin-table-panel h2{margin:6px 0 16px;font-size:16px}.admin-form{gap:11px;display:grid}.admin-form label{color:#50617b;font-size:11px;font-weight:600;display:block}.admin-form input,.admin-form select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;margin-top:6px;padding:10px 11px;font-size:11px;display:block}.admin-form .primary-button{justify-self:start;margin-top:4px}.admin-panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.admin-panel-heading .page-lead{max-width:420px;margin-top:0}.admin-table{display:grid}.admin-row{border-top:1px solid #f0f3f7;align-items:center;gap:10px;min-width:0;padding:12px 0;display:flex}.admin-row-main{flex:1;min-width:0}.admin-row-main strong,.admin-row-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-row-main strong{font-size:11px}.admin-row-main small{color:var(--muted);margin-top:3px;font-size:10px}.admin-row .tag-active,.admin-row .tag-warning{border-radius:6px;flex-shrink:0;padding:5px 7px;font-size:10px;font-style:normal}.admin-row .row-more{border:1px solid var(--line);color:#62738d;cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:6px 8px;font-size:10px}.admin-row .row-more:hover{color:var(--blue);border-color:#b8cff5}.admin-empty{color:var(--muted);font-size:11px}@media (max-width:900px){.admin-shell{padding:28px 25px 44px}.admin-grid{grid-template-columns:1fr}}@media (max-width:700px){.admin-shell{padding:20px 14px 34px}.admin-header{display:block}.admin-public-link{margin-top:14px;display:inline-flex}.admin-tabs{margin-inline:-14px;padding-inline:14px}.admin-panel-heading{display:block}.admin-panel-heading .page-lead{margin-top:8px}.admin-row{flex-wrap:wrap;align-items:flex-start}.admin-row .admin-row-main{min-width:calc(100% - 45px)}.admin-row .tag-active,.admin-row .tag-warning{margin-left:45px}.admin-row .row-more{margin-left:auto}}html,body{max-width:100%;overflow-x:hidden}.content,.panel,.topbar,.dashboard-grid,.schedule-layout{min-width:0}.agenda-day+.agenda-day{border-top:1px solid var(--line);margin-top:10px;padding-top:12px}.agenda-day h3{color:var(--muted);text-transform:capitalize;margin:4px 0 8px;font-size:11px}.appointment-main{min-width:0}.agenda-snackbar{z-index:5;color:#176b52;background:#eaf9f3;border:1px solid #b9ead7;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;max-width:min(560px,100%);margin:0 0 12px auto;padding:10px 12px;font-size:12px;display:flex;position:sticky;top:10px;box-shadow:0 8px 24px #172b4d12}.agenda-snackbar button,.dialog-close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:19px;line-height:1}.dialog-backdrop{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10203a66;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.dialog-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(100%,460px);max-height:min(90vh,720px);padding:25px;position:relative;overflow:auto;box-shadow:0 24px 70px #10203a33}.dialog-card h2{margin:7px 0 5px;font-size:20px}.dialog-copy{color:var(--muted);margin:10px 0 18px;font-size:12px;line-height:1.55}.dialog-close{color:var(--muted);position:absolute;top:16px;right:16px}.dialog-form{gap:13px;display:grid}.dialog-form label,.dialog-label{color:#50617b;gap:6px;font-size:11px;font-weight:600;display:grid}.dialog-form input,.dialog-form textarea,.dialog-form select,.dialog-label input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:11px;font-size:13px}.dialog-form textarea{resize:vertical;min-height:92px;font:inherit}.dialog-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;display:flex}.danger-button{color:#a33e45;cursor:pointer;background:#fff0f1;border:1px solid #edc8cb;border-radius:8px;padding:10px 13px;font-size:11px;font-weight:600}.danger-action{color:#a2444a!important}@media (max-width:600px){.dialog-card{padding:22px 18px}.toolbar{gap:5px}.toolbar .filter-button{padding:8px}.appointment-status{margin-left:auto}.schedule-row{gap:8px}.schedule-row time{width:37px}.appointment-main{flex:1}}.page-content .toolbar{background:#fff;border:1px solid #dce8eb;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px;display:flex;box-shadow:0 4px 14px #17364a0a}.toolbar-period{align-items:center;gap:7px;min-width:0;display:flex}.page-content .toolbar-period strong{text-align:center;min-width:170px;color:var(--brand-navy);letter-spacing:-.2px;font-size:14px;font-weight:700}.page-content .toolbar .filter-button{color:#496474;background:#fff;border:1px solid #d5e2e5;border-radius:10px;min-height:42px;padding:0 13px;font-size:12px;font-weight:650;transition:background .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s;box-shadow:0 1px 2px #17364a0a}.page-content .toolbar .filter-button:hover{color:#157c78;background:#f2f9f8;border-color:#9dcfc9;transform:translateY(-1px);box-shadow:0 3px 8px #159c981a}.page-content .toolbar .filter-button:focus-visible,.schedule-row .row-more:focus-visible{outline-offset:2px;outline:3px solid #22b8ad66}.page-content .toolbar .filter-button.selected{color:#fff;background:linear-gradient(135deg,#159c98,#087f7b);border-color:#118d88;box-shadow:0 4px 10px #159c9838}.toolbar-period .period-arrow{width:42px;padding:0!important;font-size:20px!important}.toolbar-view-switch{background:#f0f5f6;border:1px solid #e5edef;border-radius:12px;gap:4px;padding:4px;display:inline-flex}.page-content .toolbar-view-switch .filter-button{min-width:62px;min-height:36px;box-shadow:none;background:0 0;border-color:#0000;padding-inline:14px}.page-content .toolbar-view-switch .filter-button:hover{transform:none}.page-content .toolbar-view-switch .filter-button.selected{color:#fff;background:linear-gradient(135deg,#159c98,#087f7b);border-color:#118d88;box-shadow:0 3px 8px #159c9833}.schedule-row .row-more{color:#496474;cursor:pointer;background:#fff;border:1px solid #dce8eb;border-radius:10px;flex:0 0 38px;place-items:center;width:38px;height:38px;transition:background .15s,border-color .15s,color .15s;display:grid}.schedule-row .row-more:hover{color:#157c78;background:#f2f9f8;border-color:#9dcfc9}@media (max-width:700px){.page-content .toolbar{gap:8px;padding:9px}.toolbar-period{flex:100%;justify-content:space-between}.page-content .toolbar-period strong{flex:1;min-width:0;font-size:13px}.toolbar-spacer{display:none}.toolbar-view-switch{flex:100%}.page-content .toolbar-view-switch .filter-button{flex:1;min-width:0;padding-inline:8px}.toolbar-period .today-button{margin-left:4px}}.availability-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.availability-actions .row-more{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-height:38px;padding:0 10px}.availability-actions .row-more:hover{background:var(--brand-mist);color:#157c78;border-color:#9dcfc9}.availability-actions .danger-action:hover{background:#fff1f2;border-color:#efc8cc;color:#a2444a!important}@media (max-width:600px){.availability-row{flex-wrap:wrap;align-items:flex-start}.availability-actions{justify-content:flex-start;width:100%;margin-left:0}}.treatment-plan-card{background:linear-gradient(#fff,#fbfdfd);border:1px solid #e2ecee;border-radius:12px;gap:12px;margin-top:12px;padding:14px;display:grid}.treatment-plan-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.treatment-plan-heading strong,.treatment-plan-heading small{display:block}.treatment-plan-heading strong{font-size:13px}.treatment-plan-heading small{color:var(--muted);margin-top:4px;font-size:10px}.treatment-plan-notes{color:#5e7580;margin:0;font-size:11px;line-height:1.5}.plan-status{text-transform:capitalize}.plan-status.accepted,.plan-status.completed{color:#218b67;background:#e9f8f2}.plan-status.cancelled{color:#a2444a;background:#ffeff0}.plan-status.proposed{color:#9a701f;background:#fff6e1}.treatment-items{gap:7px;display:grid}.treatment-item-row{border-top:1px solid #edf2f3;justify-content:space-between;align-items:center;gap:12px;padding:9px 0 0;display:flex}.treatment-item-row strong,.treatment-item-row small{display:block}.treatment-item-row strong{font-size:11px}.treatment-item-row small{color:var(--muted);margin-top:3px;font-size:10px}.treatment-item-form{border-top:1px dashed #dce8eb;grid-template-columns:minmax(140px,1fr) 75px 110px auto;gap:7px;padding-top:10px;display:grid}.treatment-item-form input{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:9px;font-size:11px}.treatment-plan-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;padding-top:2px;display:flex}.treatment-plan-actions .row-more{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-height:38px;padding:0 10px}.treatment-plan-actions .row-more:hover{background:var(--brand-mist);color:#157c78;border-color:#9dcfc9}@media (max-width:700px){.treatment-item-form{grid-template-columns:1fr 1fr}.treatment-item-form input:first-child,.treatment-item-form button{grid-column:1/-1}.treatment-plan-actions{justify-content:flex-start}.treatment-item-row{align-items:flex-start}}button,.filter-button,.primary-button{min-height:40px}@media (min-width:701px) and (max-width:1100px){.content{padding-inline:28px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.schedule-layout{grid-template-columns:minmax(0,1fr)}.quick-panel{order:-1}}@media (max-width:700px){.sidebar{padding:14px 12px 10px}.brand{padding:0 4px 12px}.brand-mark{width:32px;height:32px}.clinic-select{display:none}.sidebar nav{overscroll-behavior-inline:contain;scrollbar-width:none;gap:5px;margin:0 -4px;display:flex;overflow-x:auto}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav a{white-space:nowrap;flex:none;padding:9px 11px;font-size:11px}.sidebar nav i{font-size:15px}.sidebar-footer{display:none}.content{width:100%;padding:20px 14px 34px}.topbar{align-items:center;margin-bottom:18px}.topbar h1{font-size:21px}.topbar .eyebrow{font-size:9px}.top-actions .primary-button{white-space:nowrap;min-height:40px}.development-banner{margin-bottom:16px;padding:12px}.development-banner p{line-height:1.4}.stats-grid{grid-template-columns:minmax(0,1fr);gap:10px}.stat-card{min-height:112px}.dashboard-grid,.schedule-layout{grid-template-columns:minmax(0,1fr);gap:12px}.panel{border-radius:11px;padding:16px 14px}.panel-heading{gap:10px}.panel-heading a{white-space:nowrap}.appointment,.schedule-row{gap:8px}.appointment strong,.schedule-row strong{font-size:11px}.appointment-status{text-align:center;max-width:94px;margin-left:auto}.status-list{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.status-list span{min-width:0;overflow:hidden}.page-content .topbar{align-items:flex-start}.page-content .topbar .primary-button{padding-inline:10px}.toolbar{white-space:nowrap;padding-bottom:2px;overflow-x:auto}.toolbar-spacer{min-width:8px}.patient-toolbar{flex-wrap:wrap}.patient-toolbar input{flex-basis:100%;min-width:0}.table-panel{padding-inline:14px}.table-header{align-items:flex-start;gap:8px}.table-header span{text-align:right}.patient-row{gap:8px}.patient-row>div:nth-child(2){flex:1;min-width:0}.patient-row>div:nth-child(2) strong,.patient-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-row em{flex-shrink:0}.share-link{gap:8px;font-size:10px;overflow:hidden}.portal-shell{place-items:start center;padding:14px}.portal-card{width:100%;margin-top:8vh;padding:22px 18px}.portal-card h1{font-size:22px}}@media (max-width:390px){.content{padding-inline:10px}.topbar .primary-button{padding-inline:8px;font-size:10px}.topbar h1{font-size:19px}.brand strong{font-size:15px}.status-list{grid-template-columns:1fr}.schedule-row .appointment-status{display:none}.filter-button{padding-inline:9px}}.patient-module-grid{grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:18px;display:grid}.pre-registration-card{align-self:start}.pre-registration-row{border-top:1px solid #f0f3f7;align-items:center;gap:8px;padding:11px 0;display:flex}.pre-registration-row>div{flex:1;min-width:0}.pre-registration-row strong,.pre-registration-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.pre-registration-row strong{font-size:11px}.pre-registration-row small{color:var(--muted);margin-top:3px;font-size:10px}.pre-registration-row .filter-button{padding:6px 8px}.modal-backdrop{z-index:20;background:#172b4d66;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);background:#fff;border-radius:14px;width:min(100%,620px);max-height:calc(100vh - 36px);padding:22px;overflow:auto;box-shadow:0 20px 60px #172b4d33}.modal-header{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.modal-header h2{margin:5px 0 0;font-size:18px}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:24px;line-height:1}.modal-actions{justify-content:flex-end;gap:8px;margin-top:5px;display:flex}.patient-detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:18px;display:grid}.patient-detail-main,.patient-detail-side{align-content:start;gap:18px;display:grid}.detail-summary{align-items:center;gap:14px;display:flex}.detail-avatar{flex-shrink:0;width:48px;height:48px;font-size:14px}.detail-summary h2{margin:0 0 5px;font-size:15px}.detail-summary p,.detail-note{color:var(--muted);margin:4px 0;font-size:11px;line-height:1.5}.detail-summary>span{margin-left:auto}.detail-section h2,.patient-detail-side h2{margin:5px 0 0;font-size:16px}.clinical-note-form{grid-template-columns:140px minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.clinical-note-form select,.clinical-note-form textarea,.odontogram-form input,.odontogram-form select,.inline-create-form input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:10px 11px;font-size:11px}.clinical-note-form textarea{resize:vertical;min-height:66px}.clinical-note-form .primary-button{min-height:66px}.clinical-timeline{gap:8px;margin-top:14px;display:grid}.clinical-timeline article{background:#f8fbff;border-left:3px solid #b7d1fb;border-radius:0 8px 8px 0;padding:9px 11px}.clinical-timeline article>span{color:var(--blue);text-transform:uppercase;font-size:9px;font-weight:700}.clinical-timeline p{margin:5px 0;font-size:11px;line-height:1.45}.clinical-timeline small{color:var(--muted);font-size:9px}.odontogram-form{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.odontogram-form input{width:112px}.odontogram-form select{min-width:130px}.odontogram-list{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.odontogram-list span{color:#54709a;background:#f6f9ff;border:1px solid #dce9fb;border-radius:7px;padding:7px 8px;font-size:10px}.odontogram-list strong{color:var(--blue)}.inline-create-form{gap:8px;margin:14px 0;display:flex}.inline-create-form input{flex:1;min-width:0}.treatment-row{border-top:1px solid #f0f3f7;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;display:flex}.treatment-row strong,.treatment-row small{display:block}.treatment-row strong{font-size:11px}.treatment-row small{color:var(--muted);margin-top:3px;font-size:10px}.treatment-row .soft-tag{text-transform:capitalize}@media (max-width:900px){.patient-module-grid,.patient-detail-grid{grid-template-columns:1fr}.patient-detail-side{grid-template-columns:1fr 1fr}.clinical-note-form{grid-template-columns:1fr}.clinical-note-form .primary-button{justify-self:start;min-height:40px}}@media (max-width:700px){.patient-detail-side{grid-template-columns:1fr}.detail-summary{flex-wrap:wrap;align-items:flex-start}.detail-summary>span{margin-left:0}.patient-row>span{display:none}.patient-row .row-more{margin-left:auto}.modal-card{padding:18px}.inline-create-form{flex-direction:column;align-items:stretch}.odontogram-form input{width:calc(50% - 4px)}.odontogram-form select{flex:1}.odontogram-form .primary-button{flex-basis:100%}}.payment-layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:18px;display:grid}.payment-form{padding:20px}.payment-form label{color:#50617b;margin:14px 0;font-size:11px;font-weight:600;display:block}.payment-form input,.payment-form select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;margin-top:7px;padding:10px 11px;font-size:11px;display:block}.payment-form .booking-grid{gap:10px}.payment-form .primary-button{margin-top:8px}@media (max-width:760px){.payment-layout{grid-template-columns:1fr}}.portal-wide{width:min(100%,650px)}.portal-data-section{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.portal-data-row{border-top:1px solid #f0f3f7;justify-content:space-between;gap:12px;padding:11px 0;font-size:11px;display:flex}.portal-data-row span{color:var(--muted);text-transform:capitalize}.portal-data-row strong{font-weight:600}.portal-data-row small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.portal-summary-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.portal-summary-grid div{background:#f7f9fc;border-radius:8px;gap:4px;padding:10px;display:grid}.portal-summary-grid small{color:var(--muted);font-size:9px}.portal-summary-grid strong{font-size:10px;line-height:1.35}.portal-tooth-list{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.portal-tooth-list span{color:#54709a;background:#f6f9ff;border:1px solid #dce9fb;border-radius:6px;padding:6px 8px;font-size:9px}.portal-tooth-list b{color:var(--blue)}.portal-file-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.portal-file-grid a{border:1px solid var(--line);color:var(--blue);border-radius:8px;gap:4px;padding:10px;font-size:10px;display:grid}.portal-file-grid small{color:var(--muted);font-size:9px}@media (max-width:600px){.portal-summary-grid,.portal-file-grid{grid-template-columns:1fr}.portal-data-row{align-items:flex-start}.portal-data-row>span{text-align:right}}.file-form{gap:7px;margin-top:13px;display:grid}.file-form input,.file-form select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:9px 10px;font-size:10px}.file-form .filter-button{justify-self:start}.file-list{gap:7px;margin-top:14px;display:grid}.file-list a{color:var(--blue);border-top:1px solid #f0f3f7;gap:3px;padding:9px 0;font-size:10px;display:grid}.file-list small{color:var(--muted)}.checkbox-row{align-items:center;gap:8px;display:flex!important}.checkbox-row input{width:auto!important}.notification-row{border-top:1px solid #f0f3f7;gap:9px;padding:14px 0;display:grid}.notification-main,.notification-detail{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notification-main{justify-content:space-between}.notification-main strong,.notification-main small{display:block}.notification-main strong{font-size:11px}.notification-main small,.notification-detail{color:var(--muted);font-size:10px}.notification-main small{margin-top:4px}.notification-detail small[role=alert]{color:#a34634;flex-basis:100%}.notification-detail .filter-button{padding:6px 9px}.notification-settings-grid{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:18px;display:grid}.notification-settings-grid .payment-form{align-self:start}.notification-settings-grid .payment-form>form label{margin:12px 0;display:block}.notification-settings-grid .payment-form input{width:100%;margin-top:6px}.template-settings-list{grid-template-columns:1fr 1fr;gap:6px 14px;display:grid}.template-settings-list label{font-size:10px}.template-settings-list small{color:var(--muted);margin-top:3px;font-size:9px;font-weight:400;display:block}.notification-settings-grid .payment-form>form>small{color:var(--muted);margin:4px 0 12px;font-size:10px;display:block}@media (max-width:850px){.notification-settings-grid{grid-template-columns:1fr}}@media (max-width:600px){.template-settings-list{grid-template-columns:1fr}}.stat-card .dashboard-submetric{color:var(--green);font-size:9px;font-weight:700;position:absolute;bottom:19px;right:16px}.dashboard-card-link{color:var(--blue);font-size:10px;font-weight:700;position:absolute;bottom:18px;right:16px}.odontogram-list article{color:#54709a;background:#f6f9ff;border:1px solid #dce9fb;border-radius:9px;align-items:center;gap:12px;padding:8px 10px;font-size:10px;display:flex}.odontogram-list article>div:first-child{flex:1;min-width:0}.odontogram-list article small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;display:block}.odontogram-list .treatment-plan-actions{padding:0}.odontogram-list .danger-action{color:#a43b42}@media (max-width:600px){.odontogram-list article{flex-direction:column;align-items:flex-start}.odontogram-list .treatment-plan-actions{justify-content:flex-start}}.primary-button,.filter-button,.danger-button{text-align:center;vertical-align:middle;flex-shrink:0;justify-content:center;align-items:center;gap:8px;height:auto;min-height:44px;padding:10px 16px;line-height:1.25;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:#118c87;border-color:#118c87;transition:background .15s,box-shadow .15s;box-shadow:0 3px 8px #118c8720}.primary-button:hover{background:#0c7773;border-color:#0c7773;box-shadow:0 4px 12px #118c8728}.primary-button:disabled,.filter-button:disabled,[aria-disabled=true].primary-button{opacity:.55;cursor:not-allowed;box-shadow:none}.primary-button:focus-visible,.filter-button:focus-visible,.danger-button:focus-visible,.staff-slot:focus-visible{outline-offset:3px;outline:3px solid #22b8ad80}.new-appointment-button{white-space:nowrap;border-radius:10px;font-size:13px;font-weight:650}.new-appointment-button svg{flex-shrink:0}.topbar{gap:20px}.top-actions{flex-wrap:wrap}.topbar>div:first-child{min-width:0}.staff-booking-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:start;gap:20px;display:grid}.staff-booking-grid h2{margin:0;font-size:18px}.patient-picker{gap:6px;max-height:300px;display:grid;overflow:auto}.patient-picker-option{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:10px}.patient-picker-option strong,.patient-picker-option small{display:block}.patient-picker-option small{color:var(--muted);margin-top:4px}.staff-slot-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;max-height:420px;padding:3px;display:grid;overflow:auto}.staff-slot{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:10px;gap:5px;padding:12px;display:grid}.staff-slot span,.staff-slot small{color:var(--muted);font-size:12px}.staff-slot.selected{border-color:var(--blue);background:var(--brand-mist);box-shadow:0 0 0 1px var(--blue)}@media (max-width:700px){.topbar{flex-wrap:wrap;align-items:flex-start}.top-actions{gap:8px}.staff-booking-grid{grid-template-columns:minmax(0,1fr)}.dialog-actions,.modal-actions{flex-wrap:wrap}.topbar>.new-appointment-button{margin-left:auto}}.clinic-workspace{flex:1;min-width:0}.clinic-workspace>.content{margin-inline:auto}.clinic-shell>.sidebar{height:100dvh;position:sticky;top:0;overflow-y:auto}.clinic-workspace>.admin-shell{min-width:0;padding:34px 28px}@media (max-width:700px){.clinic-shell>.sidebar{height:auto;position:static;overflow:visible}.clinic-workspace>.admin-shell{padding:20px 14px}.clinic-shell .brand{width:fit-content}.clinic-shell .clinic-select{margin:8px 0;display:block}.clinic-shell .sidebar nav{padding-bottom:4px}}.portal-appointment{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.portal-appointment strong,.portal-appointment small{display:block}.portal-appointment small{color:var(--muted);margin:6px 0}.portal-appointment .top-actions{justify-content:flex-end}@media (max-width:600px){.portal-appointment{flex-direction:column;align-items:flex-start}.portal-appointment .top-actions{justify-content:flex-start}}.clinical-edit-scope{border:0;gap:18px;min-width:0;margin:0;padding:0;display:grid}.clinical-edit-scope:disabled button,.clinical-edit-scope:disabled input,.clinical-edit-scope:disabled textarea,.clinical-edit-scope:disabled select{opacity:.6;cursor:not-allowed}.booking-policy-summary{background:#f5fafb;border:1px solid #dce8ee;border-radius:12px;min-width:0;margin:16px 0;padding:16px}.booking-policy-summary p{margin:8px 0;font-size:14px;line-height:1.5}.consent-record,.clinical-file-record{overflow-wrap:anywhere;border-bottom:1px solid #dce8ee;min-width:0;padding:16px 0}.consent-record details,.portal-appointment details{margin-top:12px}.consent-record summary,.portal-appointment summary{cursor:pointer;padding:8px 0}.portal-appointment{flex-wrap:wrap}.portal-appointment>details{flex-basis:100%;min-width:0}.clinical-file-record>small{margin-top:8px;display:block}.admin-form input[type=checkbox],.portal-card input[type=checkbox]{accent-color:#119c9d;width:auto;min-height:20px;margin-right:8px}@media (max-width:640px){.consent-record+.dialog-actions,.clinical-file-record .dialog-actions{flex-wrap:wrap}}.platform-promotion-panel{max-width:1240px;margin:0 auto 18px}.platform-promotion-panel>p{max-width:760px;color:var(--muted);font-size:11px;line-height:1.6}.platform-promotion-fields{grid-template-columns:minmax(180px,1.3fr) minmax(170px,.65fr) auto auto;align-items:end;gap:13px;margin:18px 0 12px;display:grid}.platform-promotion-fields label{color:#50617b;font-size:11px;font-weight:650;display:block}.platform-promotion-fields input:not([type=checkbox]){border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;margin-top:6px;padding:10px 11px;font-size:12px;display:block}.platform-promotion-fields .platform-promotion-toggle{white-space:nowrap;align-items:center;gap:8px;min-height:38px;display:flex}.platform-promotion-fields .platform-promotion-toggle input{accent-color:#159c98}.platform-promotion-panel>small{color:var(--muted);font-size:10px}@media (max-width:700px){.platform-promotion-fields{grid-template-columns:1fr 1fr}.platform-promotion-fields .primary-button{grid-column:1/-1;justify-self:start}}@media (max-width:440px){.platform-promotion-fields{grid-template-columns:1fr}.platform-promotion-fields .primary-button{grid-column:auto}}.sidebar-profile{border-top:1px solid var(--line);color:var(--ink);align-items:center;gap:10px;margin-top:auto;padding:14px 7px 2px;display:flex}.sidebar-profile.active{color:var(--blue)}.sidebar-profile-avatar{background:var(--brand-mist);width:38px;height:38px;color:var(--blue);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid;overflow:hidden}.sidebar-profile-avatar img{object-fit:cover;width:100%;height:100%}.sidebar-profile-name{flex:1;min-width:0}.sidebar-profile-name strong,.sidebar-profile-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-profile-name strong{font-size:12px}.sidebar-profile-name small{color:var(--muted);margin-top:3px;font-size:10px}.account-profile-page{max-width:1050px}.account-profile-grid{grid-template-columns:minmax(220px,.72fr) minmax(300px,1.3fr);gap:16px;margin-top:22px;display:grid}.account-profile-card{padding:24px}.account-profile-card h2{margin:10px 0;font-size:18px}.account-profile-card>p,.account-details .admin-form>p{color:var(--muted);font-size:12px;line-height:1.6}.profile-avatar-preview{background:var(--brand-mist);width:112px;height:112px;color:var(--blue);border-radius:50%;place-items:center;margin:22px auto 14px;font-size:32px;font-weight:800;display:grid;overflow:hidden}.profile-avatar-preview img{object-fit:cover;width:100%;height:100%}.account-profile-card:first-child{text-align:center}.account-profile-card:first-child .primary-button{width:100%;margin:6px 0}.account-profile-card:first-child .filter-button{width:100%}.account-details{grid-row:span 2}.account-details .admin-form{margin-top:18px}.account-details .admin-form fieldset{gap:14px;display:grid}.account-details .admin-form label{color:var(--ink);gap:6px;font-size:12px;font-weight:650;display:grid}.account-details .admin-form input{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:11px 12px}.account-details .admin-form input:focus{border-color:var(--blue);outline:3px solid #159c9826}.account-details .admin-form input:disabled{color:var(--muted);background:#f4f7f8}.account-details .admin-form .primary-button{margin-top:8px}.account-theme-card{grid-column:1}.account-theme-card>p{margin:8px 0 14px}.theme-options{gap:8px;display:flex}.theme-options button{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;background:#fff;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.theme-options button.selected{border-color:var(--blue);background:var(--brand-mist);color:#087e79;box-shadow:0 0 0 1px var(--blue)}.theme-options button span{font-size:16px}.account-theme-card>small{color:var(--muted);margin-top:12px;font-size:10px;display:block}.visually-hidden-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e5edf4;--muted:#a0afbe;--line:#2c3a48;--blue:#31bdb5;--brand-navy:#dceaf2;--brand-teal:#31bdb5;--brand-mist:#183b3c;--brand-sand:#342821}html[data-theme=dark] body{color:var(--ink);background:#0b1118}html[data-theme=dark] .clinic-shell .sidebar,html[data-theme=dark] .clinic-shell .clinic-workspace,html[data-theme=dark] .clinic-shell .panel,html[data-theme=dark] .clinic-shell .content,html[data-theme=dark] .admin-shell,html[data-theme=dark] .admin-shell .panel{color:var(--ink);border-color:var(--line);background:#111b25}html[data-theme=dark] .clinic-shell .sidebar{background:#0f1821}html[data-theme=dark] .clinic-shell .brand strong{color:#dceaf2}html[data-theme=dark] .clinic-shell .clinic-select,html[data-theme=dark] .clinic-shell input,html[data-theme=dark] .clinic-shell select,html[data-theme=dark] .clinic-shell textarea,html[data-theme=dark] .admin-shell input,html[data-theme=dark] .admin-shell select,html[data-theme=dark] .admin-shell textarea{color:var(--ink);border-color:var(--line);background:#0b131b}html[data-theme=dark] .clinic-shell .filter-button,html[data-theme=dark] .clinic-shell .theme-options button{color:var(--ink);border-color:var(--line);background:#17232f}html[data-theme=dark] .clinic-shell .theme-options button.selected{color:#85e0d9;background:#183b3c;border-color:#31bdb5}html[data-theme=dark] .clinic-shell .sidebar-profile{border-color:var(--line);color:var(--ink)}html[data-theme=dark] .clinic-shell .patient-row,html[data-theme=dark] .clinic-shell .schedule-row,html[data-theme=dark] .clinic-shell .treatment-row,html[data-theme=dark] .clinic-shell .table-panel,html[data-theme=dark] .clinic-shell .admin-row{border-color:var(--line)}html[data-theme=dark] .clinic-shell .clinical-timeline article,html[data-theme=dark] .clinic-shell .share-link{color:var(--ink);background:#17232f}html[data-theme=dark] .clinic-shell .clinical-timeline p,html[data-theme=dark] .clinic-shell .patient-row strong,html[data-theme=dark] .clinic-shell .schedule-row strong{color:var(--ink)}html[data-theme=dark] .account-details .admin-form input:disabled{color:#91a0ae;background:#17232f}@media (max-width:760px){.account-profile-grid{grid-template-columns:1fr}.account-details,.account-theme-card{grid-area:auto}.account-profile-card{padding:20px}.theme-options button{min-height:44px}}
