:root{--accent:#000;--accent-strong:#000;--app-bg:#f6f8fb;--bg:#fff;--border:#d9e1ea;--border-strong:#c6d1dd;--error:#b4233a;--error-bg:#fff1f3;--error-border:#ffc6d1;--focus:#0003;--heading:#111827;--input-bg:#fff;--muted:#64748b;--surface:#fff;--surface-muted:#f8fafc;--success:#15803d;--success-bg:#eefbf3;--success-border:#bce8ca;--text:#334155;--warning:#b45309;--warning-bg:#fff7ed;--warning-border:#fed7aa;--violet:#000;--teal:#0f766e;--shadow:#11182714 0 16px 40px;--shadow-soft:#1118270f 0 8px 24px;--font-body:Aptos, "Segoe UI Variable", "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:Aptos Display, Aptos, "Segoe UI Variable Display", "Segoe UI Variable", "Segoe UI", ui-sans-serif, system-ui, sans-serif;--font-mono:"Cascadia Code", ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;color:var(--text);font:15px/1.55 var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--app-bg)}body{background:var(--app-bg);margin:0}button,input,select,textarea{font:inherit}button{letter-spacing:0}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{color:var(--heading);font-family:var(--font-heading);letter-spacing:0;font-weight:700;line-height:1.16}h1{margin-block-end:10px;font-size:2.15rem}h2{margin-block-end:8px;font-size:1.22rem}h3{font-size:1.02rem}code{color:#0f5f73;font-family:var(--font-mono);background:#edf4f7;border:1px solid #d4e4ea;border-radius:4px;padding:2px 6px;font-size:.92em}.muted{color:var(--muted);margin-block-end:0}@media (width<=760px){h1{font-size:2rem}h2{font-size:1.2rem}}.auth-page{background:var(--app-bg);justify-content:center;align-items:center;min-height:100svh;padding:32px 20px;display:flex}.auth-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);text-align:left;border-radius:8px;width:min(100%,440px);max-width:440px;padding:32px}.setup-panel{max-width:560px}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:700}.muted{color:var(--muted)}.auth-form{gap:18px;margin-top:28px;display:grid}.auth-form label{color:var(--heading);gap:8px;font-size:14px;font-weight:700;display:grid}.auth-form input{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;border-radius:6px;min-height:46px;padding:10px 12px}.auth-form input:focus{border-color:var(--accent);outline:3px solid var(--focus)}.auth-form button,.unsupported-step button{background:var(--accent);border:1px solid var(--accent);color:#fff;cursor:pointer;font:inherit;border-radius:6px;min-height:46px;padding:10px 16px;font-weight:700}.auth-form button:disabled{cursor:wait;opacity:.7}.error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error);border-radius:6px;margin:0;padding:10px 12px;font-size:14px}.challenge-note{color:var(--muted);margin:0;font-size:15px}.env-list{gap:10px;margin-top:24px;display:grid}.env-list code{overflow-wrap:anywhere;display:block}.unsupported-step{gap:16px;margin-top:28px;display:grid}@media (width<=760px){.auth-panel{padding:24px}}.admin-shell{background:var(--app-bg);color:var(--text);grid-template-columns:280px minmax(0,1fr);min-height:100svh;display:grid}.admin-workspace{width:100%;min-width:0;max-width:1480px;margin:0 auto;padding:28px}.admin-icon{flex:none;width:20px;height:20px;display:block}.admin-nav{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:20px;min-width:0;height:100svh;padding:24px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.admin-nav button{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;display:inline-flex}.admin-nav button:focus-visible,.secondary-button:focus-visible,.danger-button:focus-visible,.icon-button:focus-visible,.appointment-row:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.admin-nav-brand{color:var(--heading);border-radius:8px;width:100%;min-height:46px;padding:4px;font-weight:700}.brand-mark{color:var(--accent);background:#eaf2ff;border:1px solid #d7e5ff;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.admin-nav-user{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.admin-avatar{color:#fff;background:#172554;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;font-size:.85rem;font-weight:700;display:inline-flex}.admin-nav-user div{min-width:0;display:grid}.admin-nav-user strong{color:var(--heading);font-size:.9rem;font-weight:650}.admin-nav-user span:last-child{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.admin-nav-links{gap:6px;display:grid}.admin-nav-links button,.admin-nav-signout{color:#475569;width:100%;min-height:44px;padding:10px 12px;font-weight:650;border-radius:8px!important}.admin-nav-links button:hover,.admin-nav-links button:focus-visible{color:var(--accent);background:#eef4ff}.admin-nav-links button.is-active{background:var(--accent);color:#fff;box-shadow:0 10px 20px #2563eb47}.admin-nav-group{gap:5px;display:grid}.admin-nav-group>button{position:relative}.admin-nav-group>button:after{content:"";border:2px solid;border-width:0 2px 2px 0;width:7px;height:7px;margin-left:auto;transform:rotate(45deg)translateY(-2px)}.admin-nav-group.is-open>button:after{transform:rotate(225deg)translate(-2px,-1px)}.admin-nav-submenu{border-left:2px solid var(--border);gap:4px;margin-left:20px;padding-left:10px;display:grid}.admin-nav-submenu button{color:var(--muted);min-height:36px;padding:8px 10px;font-size:.9rem}.admin-nav-submenu button.is-active{box-shadow:none;color:var(--accent);background:#eef4ff}.admin-nav-signout{justify-content:center;margin-top:auto;border:1px solid var(--border)!important}.admin-nav-signout:hover,.admin-nav-signout:focus-visible{color:var(--error);border-color:var(--error-border)!important}.page-header{justify-content:space-between;align-items:flex-end;gap:20px;min-width:0;margin-block-end:22px;display:flex}.page-header-copy{min-width:0}.page-header-copy p{max-width:720px}.page-header-aside{place-items:flex-end end;gap:10px;min-width:min(100%,260px);display:grid}.page-meta{background:var(--surface);border:1px solid var(--border);color:var(--muted);overflow-wrap:anywhere;border-radius:8px;max-width:100%;min-height:40px;padding:9px 12px;font-size:.86rem;font-weight:600;display:inline-flex}.secondary-button,.danger-button,.icon-button{cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;min-height:42px;font-weight:650;text-decoration:none;display:inline-flex}.secondary-button{background:var(--accent);border:1px solid var(--accent);color:#fff;padding:10px 16px}.secondary-button:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.secondary-button:disabled{border-color:var(--border);color:var(--muted);cursor:not-allowed;background:#eef2f7}.compact-button{min-height:38px;padding:8px 12px}.danger-button{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error);padding:9px 14px}.danger-button:disabled{cursor:not-allowed;opacity:.65}.icon-button{background:var(--surface);border:1px solid var(--border);color:var(--heading);width:42px;height:42px;padding:0}.icon-button:hover{border-color:var(--accent);color:var(--accent)}.date-control,.availability-physician-control,.booking-form label,.availability-row label,.leave-form label{color:var(--muted);letter-spacing:.035em;text-transform:uppercase;gap:6px;font-size:.72rem;font-weight:650;display:grid}.date-control input,.availability-physician-control select,.availability-row input[type=time],.leave-form input,.leave-form select,.leave-form textarea,.booking-form input,.booking-form select,.booking-form textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;text-transform:none;border-radius:8px;width:100%;min-height:42px;padding:9px 11px}.date-control input:focus,.availability-physician-control select:focus,.availability-row input[type=time]:focus,.leave-form input:focus,.leave-form select:focus,.leave-form textarea:focus,.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--accent);outline:3px solid var(--focus)}.date-control input{min-width:158px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block-end:20px;display:grid}.summary-card{grid-template-columns:minmax(0,1fr) max-content;gap:6px;min-width:0;min-height:152px;padding:20px;display:grid;position:relative}.summary-card>span:not(.summary-icon){color:var(--muted);grid-area:1/1;font-size:.8rem;font-weight:650}.summary-card strong{color:var(--heading);font-family:var(--font-heading);overflow-wrap:anywhere;grid-column:1/-1;margin-block-start:18px;font-size:2.05rem;font-weight:700;line-height:1}.summary-card p{color:var(--muted);grid-column:1/-1;margin:0}.summary-icon{border-radius:8px;grid-area:1/2/span 2;justify-content:center;justify-self:end;align-items:center;width:40px;height:40px;display:inline-flex}.summary-card--blue .summary-icon{color:var(--accent);background:#eaf2ff}.summary-card--green .summary-icon{background:var(--success-bg);color:var(--success)}.summary-card--amber .summary-icon{background:var(--warning-bg);color:var(--warning)}.summary-card--violet .summary-icon{color:var(--violet);background:#e7edf8}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:20px;display:grid}.panel{min-width:0;padding:22px}.panel,.summary-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 8px 24px #0f172a14}.panel:before,.summary-card:before{display:none}.panel:hover,.summary-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #0f172a1f}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-block-end:18px;display:flex}.patient-header-contact{flex-wrap:wrap;align-items:center;gap:8px 14px;max-width:100%;margin-block-start:6px;display:flex}.patient-header-contact__item{color:var(--muted);align-items:center;gap:6px;min-width:0;font-size:.86rem;display:inline-flex}.patient-header-contact__item>span:not(.patient-header-verify){overflow-wrap:anywhere}.patient-header-contact__item .admin-icon{color:var(--accent);width:15px;height:15px}.patient-header-verify{background:var(--success-bg);color:var(--success);border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.patient-header-verify.is-unverified{background:var(--warning-bg);color:var(--warning)}.patient-header-verify .admin-icon{color:currentColor;width:12px;height:12px}.panel-actions,.appointment-tools{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex}.panel-count{color:var(--accent);background:#eef4ff;border:1px solid #d7e5ff;border-radius:8px;justify-content:center;align-items:center;min-width:42px;height:42px;padding-inline:10px;font-weight:700;display:inline-flex}.appointment-list,.week-list{gap:10px;margin:0;padding:0;display:grid}.appointment-list{list-style:none}.week-list{scrollbar-gutter:stable;max-height:clamp(320px,48vh,430px);padding-right:4px;overflow-y:auto}.appointment-list li{min-width:0}.appointment-row{background:var(--surface-muted);border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:88px minmax(0,1fr) max-content;align-items:center;gap:14px;width:100%;min-height:74px;padding:14px;display:grid}.appointment-row:hover,.appointment-row.is-selected{border-color:var(--accent);background:#f5f9ff}.appointment-row time{color:var(--heading);font-weight:650}.appointment-row div{gap:2px;min-width:0;display:grid}.appointment-row strong,.week-row strong{color:var(--heading);font-weight:650}.appointment-row div>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-pill{letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;border-radius:8px;padding:6px 9px;font-size:.7rem;font-weight:700}.status-confirmed{background:var(--success-bg);color:var(--success)}.status-completed{color:var(--accent);background:#eef4ff}.status-cancelled{background:var(--error-bg);color:var(--error)}.status-no_show{background:var(--warning-bg);color:var(--warning)}.week-row{border:0;border-bottom:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border-radius:0;grid-template-columns:104px minmax(0,1fr) 36px;align-items:center;gap:14px;width:100%;min-height:58px;padding:6px 10px;display:grid}.week-row:last-child{border-bottom:0}.week-row:hover,.week-row:focus-visible,.week-row.is-selected{background:#f5f9ff}.week-row:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.week-row.is-selected{box-shadow:inset 0 0 0 1px #d7e5ff}.week-row div:first-child{gap:2px;display:grid}.week-row span{color:var(--muted);font-size:.84rem}.week-row b{color:var(--heading);text-align:right;font-size:1.02rem;font-weight:700}.week-meter{background:#edf2f7;border-radius:8px;height:10px;overflow:hidden}.week-meter span{background:var(--teal);height:100%;display:block}.booking-detail{border-top:1px solid var(--border);gap:14px;margin-block-start:22px;padding-block-start:20px;display:grid}.detail-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.detail-header h3{color:var(--heading);overflow-wrap:anywhere;margin:0}.detail-actions{flex-wrap:wrap;gap:10px;display:flex}.detail-grid,.checkin-detail-grid,.checkin-member-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.detail-grid div,.checkin-detail-grid div,.checkin-member-summary div{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;min-width:0;padding:12px}.detail-grid dt,.checkin-detail-grid dt,.checkin-member-summary dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-block-end:4px;font-size:.7rem;font-weight:650}.detail-grid dd,.checkin-detail-grid dd,.checkin-member-summary dd{color:var(--heading);overflow-wrap:anywhere;margin:0}.detail-grid dd span{color:var(--muted);margin-block-start:4px;font-size:.86rem;display:block}.detail-wide{grid-column:1/-1}.booking-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-form textarea{resize:vertical}.availability-panel,.state-note,.error-note,.success-note{grid-column:1/-1}.availability-physician-control{min-width:240px}.availability-form{gap:14px;display:grid}.availability-sections{gap:18px;display:grid}.calendar-connect-strip{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:14px;min-width:0;margin-block-end:14px;padding:14px;display:grid}.calendar-connect-icon{color:var(--accent);background:#eaf2ff;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.calendar-connect-strip div{gap:3px;min-width:0;display:grid}.calendar-connect-strip strong{color:var(--heading)}.calendar-connect-strip span,.calendar-connect-strip small{color:var(--muted);overflow-wrap:anywhere}.calendar-connect-strip small{color:var(--error)}.enquiries-grid{grid-template-columns:minmax(320px,.85fr) minmax(0,1.35fr);gap:20px;display:grid}.enquiries-list-panel,.enquiry-detail-panel{align-self:start}.enquiry-detail-panel .panel-header{margin-block-end:22px}.enquiry-detail-panel .panel-header .muted{color:#64748b;margin-block-start:6px;font-size:.82rem}.enquiries-list-panel .panel-header{grid-template-columns:1fr;display:grid;position:relative}.enquiries-list-panel .panel-actions{justify-content:start;width:100%}.enquiries-list-panel .panel-header .muted{background:var(--surface-muted);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:8px;margin:0;padding:7px 10px;font-size:.8rem;font-weight:600;position:absolute;top:0;right:0}.enquiry-tools{grid-template-columns:minmax(190px,1fr) minmax(128px,150px) 44px;align-items:flex-end;gap:10px;width:100%;max-width:100%;display:grid}.enquiry-filter,.enquiry-search,.enquiry-sort{color:var(--muted);letter-spacing:.035em;text-transform:uppercase;gap:6px;min-width:0;font-size:.72rem;font-weight:650;display:grid}.enquiry-sort{align-self:end;height:42px;position:relative}.enquiry-filter select,.enquiry-search input,.enquiry-sort select{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;border-radius:8px;width:100%;height:42px;min-height:42px;padding:9px 11px}.enquiry-sort select{appearance:none;color:#0000;cursor:pointer;width:44px;padding:0}.enquiry-sort select option{color:var(--heading)}.enquiry-filter select:focus,.enquiry-search input:focus,.enquiry-sort select:focus{border-color:var(--accent);outline:3px solid var(--focus)}.enquiry-sort:before{border-bottom:5px solid var(--heading);content:"";pointer-events:none;z-index:1;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;margin-left:-4px;position:absolute;top:12px;left:50%}.enquiry-sort:after{border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--heading);content:"";pointer-events:none;z-index:1;width:0;height:0;margin-left:-4px;position:absolute;top:24px;left:50%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.enquiry-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(154px,auto);align-items:stretch;gap:12px;margin:0;padding:0;list-style:none;display:grid}.enquiry-list li{min-width:0;display:flex}.enquiry-row{background:var(--surface-muted);border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-rows:auto minmax(44px,1fr) auto auto;align-items:start;gap:10px;width:100%;min-height:154px;padding:18px;display:grid}.enquiry-row:hover,.enquiry-row.is-selected{border-color:var(--accent);background:#f5f9ff}.enquiry-row.is-aging{background:#fff8ed;border-color:#f2c879}.enquiry-row.is-aging:hover,.enquiry-row.is-aging.is-selected{background:#fff3dc;border-color:#d99018}.enquiry-row.is-overdue{background:#fff1f2;border-color:#f0a9b1}.enquiry-row.is-overdue:hover,.enquiry-row.is-overdue.is-selected{background:#ffe6e9;border-color:#d84b5d}.enquiry-row-header{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:12px;min-width:0;display:grid}.enquiry-row-header>span{min-width:0}.enquiry-row strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.enquiry-row small{color:var(--muted);overflow-wrap:anywhere;margin-block-start:4px;font-weight:600;line-height:1.35;display:block}.enquiry-row>span:nth-child(2){color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.enquiry-row-date{color:var(--muted);align-self:end;font-size:.76rem;font-weight:500;line-height:1.3}.enquiry-row-footer{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;display:flex}.enquiry-age-label{color:var(--muted);border-radius:8px;min-height:26px;padding:5px 8px;font-size:.74rem;font-weight:700;display:inline-flex}.enquiry-row.is-aging .enquiry-age-label{color:#8b5706;background:#ffe5b8}.enquiry-row.is-overdue .enquiry-age-label{color:#9e2432;background:#ffd7dc}.enquiry-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block-end:20px;display:grid}.enquiry-pagination{border-top:1px solid var(--border);color:var(--muted);grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:10px;margin-block-start:14px;padding-block-start:14px;font-size:.82rem;font-weight:600;display:grid}.enquiry-pagination span{text-align:center}.enquiry-detail-item{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;align-content:center;gap:4px;min-width:0;min-height:78px;padding:10px 12px;display:grid}.enquiry-detail-item:nth-of-type(5){grid-column:1/-1}.enquiry-detail-item dt,.enquiry-thread-card dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:650}.enquiry-detail-item dd,.enquiry-thread-card dd{color:var(--heading);overflow-wrap:anywhere;margin:0}.enquiry-detail-item dd{font-size:.92rem;line-height:1.35}.enquiry-detail-value--truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.enquiry-thread-card{background:#f5f9ff;border:0;border-radius:8px;min-width:0;margin-block-start:8px;padding:18px}.enquiry-thread-card--reply{background:var(--success-bg);border:1px solid var(--success-border);padding:16px}.enquiry-thread-card--reply dt{color:var(--success)}.enquiry-thread-card dd{font-size:1.02rem;line-height:1.5}.enquiry-thread-card dd span{color:var(--muted);margin-block-start:8px;font-size:.82rem;display:block}.enquiry-reply-form{border-top:1px solid var(--border);row-gap:16px;padding-block-start:24px}.enquiry-reply-form textarea{resize:none}.availability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.availability-row{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;margin:0;padding:14px;display:grid}.availability-row legend{color:var(--heading);padding-inline:4px;font-weight:650}.availability-row input:disabled{color:var(--muted);cursor:not-allowed;opacity:.65}.availability-toggle{flex-direction:row;grid-column:1/-1;align-items:center;gap:8px!important;display:flex!important}.availability-toggle input{accent-color:var(--accent);width:18px;height:18px}.leave-form{gap:14px;display:grid}.leave-toolbar{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.leave-filter-bar{background:0 0;border:0;border-radius:0;flex-wrap:wrap;gap:4px;padding:0;display:flex}.leave-filter-bar button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;min-height:34px;padding:6px 9px;font-weight:800;display:inline-flex}.leave-filter-bar button.is-active{border-color:var(--border);color:var(--accent);box-shadow:none;background:#eef4ff}.leave-filter-bar span{color:var(--accent);background:#eef4ff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;padding:2px 7px;font-size:.76rem;display:inline-flex}.leave-tools{grid-template-columns:minmax(150px,180px) minmax(140px,160px);align-items:end;gap:8px;display:grid}.leave-tools select{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;text-transform:none;border-radius:8px;width:100%;min-height:38px;padding:8px 10px;font-weight:800}.leave-tools select:focus{border-color:var(--accent);outline:3px solid var(--focus)}.leave-list{grid-column:1/-1;gap:8px;display:grid}.leave-row{background:var(--surface);border:1px solid var(--border);border-left-width:4px;border-radius:8px;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;padding:10px 12px;display:grid}.leave-row--pending{background:var(--surface);border-color:var(--border);border-left-color:var(--warning)}.leave-row--approved{background:var(--surface);border-color:var(--border);border-left-color:var(--success)}.leave-row--rejected{background:var(--surface);border-color:var(--border);border-left-color:var(--error)}.leave-row--past{opacity:.72;background:#f8fafc;border-left-color:#94a3b8}.leave-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.leave-row-main{gap:4px;min-width:0;display:grid}.leave-row strong{color:var(--heading)}.leave-row-detail,.leave-row small{color:var(--muted);overflow-wrap:anywhere}.leave-status{text-transform:uppercase;border-radius:8px;justify-self:start;padding:5px 8px;font-size:.74rem;font-weight:900;display:inline-flex}.leave-status--approved{background:var(--success-bg);color:var(--success)!important}.leave-status--pending{background:var(--warning-bg);color:var(--warning)!important}.leave-status--rejected{background:var(--error-bg);color:var(--error)!important}.leave-status--past{background:#e2e8f0;color:#475569!important}.approve-button,.reject-button,.unblock-button{cursor:pointer;font:inherit;border-radius:8px;min-height:36px;padding:8px 12px;font-weight:900}.approve-button{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.reject-button{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error)}.unblock-button{color:var(--accent);background:#eef4ff;border:1px solid #c8d9ff}.approve-button:disabled,.reject-button:disabled,.unblock-button:disabled{cursor:wait;opacity:.65}.form-wide,.form-actions{grid-column:1/-1}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.state-note,.error-note,.success-note{border-radius:8px;margin:0;padding:16px}.state-note{color:var(--muted);background:#eef4f8}.error-note{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error)}.success-note{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.checkin-page{min-width:0}.checkin-grid{grid-template-columns:minmax(480px,1.35fr) minmax(320px,.75fr);align-items:start;gap:20px;display:grid}.checkin-scanner-panel{gap:16px;display:grid}.checkin-scan-card{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:14px;min-width:0;padding:16px;display:grid}.checkin-scan-card__mark{color:var(--accent);background:#eaf2ff;border:1px solid #d7e5ff;border-radius:8px;justify-content:center;align-items:center;width:46px;height:46px;font-weight:700;display:inline-flex}.checkin-scan-card h3{color:var(--heading);margin:0 0 4px}.checkin-scan-card p{color:var(--muted);margin:0}.checkin-feedback{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:12px;padding:12px;display:grid}.checkin-feedback-status{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.checkin-feedback-dot{background:var(--warning);border-radius:999px;width:10px;height:10px;display:inline-block}.checkin-feedback-status--ready .checkin-feedback-dot{background:var(--success)}.checkin-feedback-status--processing .checkin-feedback-dot{background:var(--warning)}.checkin-feedback-status--error .checkin-feedback-dot{background:var(--error)}.checkin-feedback-main{gap:2px;min-width:0;display:grid}.checkin-feedback-main strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.checkin-feedback-main span,.checkin-feedback-count{color:var(--muted);font-size:.84rem}.checkin-feedback-count{background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-radius:8px;padding:6px 10px}.checkin-scan-modal{z-index:50;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.checkin-scan-modal__backdrop{cursor:pointer;background:#0f172a94;border:0;position:fixed;inset:0}.checkin-scan-modal__backdrop:disabled{cursor:not-allowed}.checkin-scan-modal__panel{background:var(--surface);border:1px solid var(--border);z-index:1;border-radius:8px;gap:16px;width:min(100%,480px);max-width:480px;max-height:min(720px,100vh - 48px);padding:22px;display:grid;position:relative;overflow-y:auto;box-shadow:0 24px 80px #0f172a38}.checkin-scan-modal__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.checkin-scan-modal__header h2{color:var(--heading);margin:2px 0 0}.checkin-scan-modal__eyebrow{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:650}.checkin-scan-modal__status{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success);border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:9px 12px;font-weight:700;display:inline-flex}.checkin-scan-modal__status span{background:var(--success);border-radius:999px;width:10px;height:10px;display:inline-flex}.checkin-scan-modal__status.is-busy{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning)}.checkin-scan-modal__status.is-busy span{background:var(--warning)}.checkin-scan-modal__panel label{color:var(--muted);letter-spacing:.035em;text-transform:uppercase;gap:6px;font-size:.72rem;font-weight:650;display:grid}.checkin-scan-modal__panel input{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;text-transform:none;border-radius:8px;width:100%;min-height:46px;padding:10px 12px}.checkin-scan-modal__panel input:focus{border-color:var(--accent);outline:3px solid var(--focus)}.checkin-scan-modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.checkin-result{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft);border-radius:8px;gap:18px;min-height:260px;padding:22px;display:grid}.checkin-result--success{border-color:var(--success-border)}.checkin-result--error{border-color:var(--error-border)}.checkin-result-header{align-items:start;gap:14px;display:flex}.checkin-result-header>span{background:var(--success-bg);color:var(--success);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.08rem;font-weight:700;display:inline-flex}.checkin-result--error .checkin-result-header>span{background:var(--error-bg);color:var(--error)}.checkin-result h2{color:var(--heading);margin:0 0 4px}.checkin-result p{color:var(--muted);margin:0}.checkin-member{align-content:start}.checkin-inline-result{border:1px solid var(--border);border-radius:8px;gap:4px;padding:12px;display:grid}.checkin-inline-result strong{color:var(--heading)}.checkin-inline-result span{color:var(--muted)}.checkin-inline-result--success{background:var(--success-bg);border-color:var(--success-border)}.checkin-inline-result--success strong{color:var(--success)}.checkin-inline-result--error{background:var(--error-bg);border-color:var(--error-border)}.checkin-inline-result--error strong{color:var(--error)}.member-booking-list{gap:10px;display:grid}.member-booking-row{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.member-booking-main{gap:3px;min-width:0;display:grid}.member-booking-main strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-booking-main span,.member-booking-main small{color:var(--muted);overflow-wrap:anywhere}.member-booking-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}@media (width<=1180px){.admin-shell{grid-template-columns:232px minmax(0,1fr)}.dashboard-grid,.enquiries-grid,.checkin-grid{grid-template-columns:1fr}.week-panel{order:-1}}@media (width<=920px){.admin-shell{display:block}.admin-nav{border-bottom:1px solid var(--border);z-index:10;border-right:0;height:auto;min-height:0;padding:14px;position:sticky}.admin-nav-user{display:none}.admin-nav-links{gap:8px;padding-block-end:2px;display:flex;overflow-x:auto}.admin-nav-links button{flex:none;width:auto}.admin-nav-group{flex:none}.admin-nav-submenu{margin-left:10px}.admin-nav-signout{margin-top:0}.admin-workspace{padding:22px}.enquiry-tools{grid-template-columns:1fr;min-width:0}.enquiry-list{grid-template-columns:1fr}.enquiry-detail-grid,.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.admin-workspace{padding:16px}.page-header,.panel-header,.detail-header{flex-direction:column;align-items:stretch}.page-header-aside,.panel-actions,.appointment-tools,.detail-actions,.form-actions,.checkin-scan-modal__actions{justify-content:stretch;place-items:stretch stretch}.page-meta,.date-control,.date-control input,.secondary-button,.danger-button,.icon-button,.enquiry-filter,.enquiry-search,.enquiry-sort,.enquiry-tools,.availability-physician-control{width:100%}.summary-grid,.enquiries-grid,.detail-grid,.enquiry-detail-grid,.booking-form,.availability-grid,.availability-row,.leave-tools,.leave-form,.leave-row,.calendar-connect-strip,.checkin-feedback,.checkin-scan-card,.checkin-detail-grid,.checkin-member-summary,.member-booking-row{grid-template-columns:1fr}.appointment-row{grid-template-columns:1fr;align-items:start}.appointment-row div>span{white-space:normal}.status-pill{justify-self:start}.member-booking-actions{justify-content:stretch;align-items:stretch}.leave-row-actions{justify-content:stretch}.panel{padding:18px}.admin-nav-links{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-nav-links button,.admin-nav-group{width:100%}}.patients-search-bar{max-width:560px;margin-block:4px 20px}.patient-search-combo{position:relative}.patient-search-field{background:var(--input-bg);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding-inline:12px;transition:border-color .12s,box-shadow .12s;display:flex}.patient-search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}.patient-search-field__icon{color:var(--muted);flex-shrink:0;width:18px;height:18px}.patient-search-field input{color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;min-width:0;padding-block:11px}.patient-search-field input::-webkit-search-cancel-button{appearance:none}.patient-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;align-items:center;padding:4px;display:flex}.patient-search-clear:hover{color:var(--heading)}.patient-search-clear .admin-icon{width:16px;height:16px}.patient-search-dropdown{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);inset-inline:0;z-index:20;border-radius:12px;max-height:min(60vh,420px);margin-block-start:6px;padding:10px;position:absolute;top:100%;overflow-y:auto}.patient-search-dropdown .state-note,.patient-search-dropdown .error-note{margin:4px 6px}.patient-result-list,.patient-history-list,.patient-notes-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.patient-result-row{background:var(--surface-muted);border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;width:100%;padding:14px;display:grid}.patient-result-body{gap:4px;min-width:0;display:grid}.patient-avatar{border-radius:8px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:inline-flex}.patient-avatar--blue{color:var(--accent);background:#eaf2ff}.patient-avatar--green{background:var(--success-bg);color:var(--success)}.patient-avatar--violet{color:var(--violet);background:#e7edf8}.patient-avatar--teal{color:var(--teal);background:#e6f4f1}.patient-avatar--amber{background:var(--warning-bg);color:var(--warning)}.patient-result-row:hover,.patient-result-row.is-selected{border-color:var(--accent);background:#f5f9ff}.patient-result-row:focus-visible,.patient-name-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.patient-result-name{color:var(--heading);font-weight:650}.patient-result-contact,.patient-result-meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;font-size:.82rem;display:flex}.patient-result-row .patient-unverified{color:var(--warning);font-weight:700}.patient-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px;display:grid}.patient-stats div{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) max-content;column-gap:10px;min-width:0;padding:14px;display:grid}.patient-stats dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;grid-area:1/1;margin-block-end:8px;font-size:.7rem;font-weight:650}.patient-stats dd{color:var(--heading);font-family:var(--font-heading);overflow-wrap:anywhere;grid-area:2/1;margin:0;font-size:1.42rem;font-weight:700;line-height:1}.patient-stat-icon{border-radius:8px;grid-area:1/2/span 2;justify-content:center;justify-self:end;align-items:center;width:34px;height:34px;display:inline-flex}.patient-stat-icon .admin-icon{width:18px;height:18px}.patient-stat--blue .patient-stat-icon{color:var(--accent);background:#eaf2ff}.patient-stat--green .patient-stat-icon{background:var(--success-bg);color:var(--success)}.patient-stat--amber .patient-stat-icon{background:var(--warning-bg);color:var(--warning)}.patient-stat--violet .patient-stat-icon{color:var(--violet);background:#e7edf8}.patient-stat--red .patient-stat-icon{background:var(--error-bg);color:var(--error)}@media (width<=1100px){.patient-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.patient-section{margin-block-start:22px}.patient-section-head{align-items:center;gap:8px;margin-block-end:12px;display:flex}.patient-section-head .eyebrow{margin:0}.patient-section-icon{color:var(--accent);display:inline-flex}.patient-section-icon .admin-icon{width:16px;height:16px}.patient-prefs-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.patient-pref-row{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.patient-pref-label{color:var(--heading);align-items:center;gap:10px;font-weight:500;display:inline-flex}.patient-pref-label .admin-icon{color:var(--muted);width:16px;height:16px}.patient-pref-value{color:var(--muted);font-size:.9rem}.patient-pref-badge{background:var(--success-bg);color:var(--success);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.patient-pref-badge.is-off{background:var(--surface);color:var(--muted)}.patient-pref-badge .admin-icon{color:currentColor;width:12px;height:12px}.patient-history-row{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:14px;padding:14px;display:grid}.patient-history-row div{gap:2px;min-width:0;display:grid}.patient-history-row strong{color:var(--heading)}.patient-history-row span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.patient-timeline-list{gap:0;margin:2px 0 0;padding:0;list-style:none;display:grid;position:relative}.patient-timeline-list:before{content:"";background:#e3d7c4;width:2px;position:absolute;top:12px;bottom:16px;left:107px}.patient-timeline-item{grid-template-columns:minmax(86px,max-content) 18px minmax(0,1fr);gap:12px;min-width:0;padding-block:2px 18px;display:grid;position:relative}.patient-timeline-item:last-child{padding-block-end:0}.patient-timeline-item time{color:#b8863d;text-align:right;white-space:nowrap;padding-block-start:1px;font-size:.9rem;font-weight:700;line-height:1.2}.patient-timeline-line{z-index:1;place-self:start center;width:18px;height:16px;display:block;position:relative}.patient-timeline-line:before{background:var(--surface);content:"";border:2px solid #c79a53;border-radius:999px;width:8px;height:8px;margin-left:-4px;position:absolute;top:3px;left:50%}.patient-timeline-detail{align-content:start;justify-items:start;gap:8px;min-width:0;padding-block-start:1px;display:grid}.patient-timeline-detail p{color:var(--heading);overflow-wrap:anywhere;min-width:0;margin:0;font-weight:650;line-height:1.35}.patient-timeline-detail p span{color:var(--muted);font-weight:500}.patient-notes-list li{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:12px 14px}.patient-note-date{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-block-end:4px;font-size:.7rem;font-weight:650;display:block}.patient-note-author{color:var(--heading);margin-block-end:2px;font-weight:650;display:block}.patient-name-link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.patient-name-link:hover{color:var(--accent-strong)}@media (width<=700px){.patient-timeline-list:before{left:94px}.patient-timeline-item{grid-template-columns:76px 16px minmax(0,1fr);gap:10px}.patient-timeline-item time{font-size:.88rem}}.patient-insights{margin-bottom:1.5rem}.patient-insight-list{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}.patient-insight{background:#fff;border-left:4px solid #94a3b8;border-radius:10px;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;display:flex;box-shadow:0 1px 2px #0f172a0f}.patient-insight--amber{border-left-color:#f59e0b}.patient-insight--blue{border-left-color:#3b82f6}.patient-insight--violet{border-left-color:#000}.patient-insight--slate{border-left-color:#64748b}.patient-insight--green{border-left-color:#16a34a}.patient-insight-icon{color:#475569;flex:none;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:inline-flex}.patient-insight--amber .patient-insight-icon{color:#b45309}.patient-insight--blue .patient-insight-icon{color:#1d4ed8}.patient-insight--violet .patient-insight-icon{color:#000}.patient-insight--green .patient-insight-icon{color:#15803d}.patient-insight-body{min-width:0}.patient-insight-title{color:#0f172a;margin:0;font-weight:600}.patient-insight-evidence{color:#64748b;margin:.125rem 0 0;font-size:.8125rem}.patient-insight-action{color:#334155;margin:.5rem 0 0;font-size:.8125rem;line-height:1.5}.patient-insight-tag{text-transform:uppercase;letter-spacing:.05em;color:#475569;vertical-align:middle;background:#f1f5f9;border-radius:4px;margin-right:.5rem;padding:.0625rem .375rem;font-size:.625rem;font-weight:600;display:inline-block}.primary-button{background:var(--accent);border:1px solid var(--accent);color:#fff;cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-flex}.primary-button:hover{background:var(--accent-strong,#000);border-color:var(--accent-strong,#000)}.primary-button:disabled{border-color:var(--border);color:var(--muted);cursor:not-allowed;background:#eef2f7}.primary-button:disabled:hover{border-color:var(--border);background:#eef2f7}.manage-summary{margin-bottom:18px}.manage-summary .summary-icon{-webkit-backdrop-filter:blur(6px);background:#ffffff8c;box-shadow:inset 0 0 0 1px #fff9}.manage-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:18px;display:flex}.manage-tab{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-weight:650}.manage-tab:hover{color:var(--heading)}.manage-tab.is-active{border-bottom-color:var(--accent);color:var(--accent)}.manage-grid{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.manage-grid .panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;position:relative;overflow:hidden;box-shadow:0 8px 24px #0f172a14}.manage-grid .panel:before{display:none}.manage-grid .panel>*{z-index:1;position:relative}.manage-grid .manage-row{-webkit-backdrop-filter:blur(6px);background:#ffffff80;border-color:#fff9}.manage-grid .manage-row:hover{background:#ffffffb8}.manage-list{flex-direction:column;gap:8px;max-height:70vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.manage-row{background:var(--surface);border:1px solid var(--border);cursor:pointer;font:inherit;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.manage-row:hover{border-color:var(--accent)}.manage-row.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.manage-row.is-inactive{opacity:.6}.manage-row span:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.manage-row strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.manage-row small{color:var(--muted)}.manage-physician-picker{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.manage-physician-picker legend{color:var(--muted);letter-spacing:.035em;text-transform:uppercase;padding:0 4px;font-size:.72rem;font-weight:650}.booking-form .manage-check{color:var(--heading);letter-spacing:normal;text-transform:none;align-items:center;gap:8px;font-size:.85rem;font-weight:500;display:flex}.booking-form .manage-check input{flex:none;width:16px;height:16px;margin:0}.booking-form .manage-check input:focus,.booking-form .manage-check input:focus-visible{box-shadow:none;outline:none}.manage-check-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 16px;display:grid}.segmented-field{gap:6px;display:grid}.segmented{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented-option{color:var(--muted);cursor:pointer;text-align:center;border-radius:6px;padding:7px 14px;font-weight:600;transition:background .14s,color .14s}.segmented-option input{opacity:0;pointer-events:none;position:absolute}.segmented-option:hover{color:var(--heading)}.segmented-option.is-active{background:var(--heading);box-shadow:var(--shadow-soft);color:#fff}.segmented-option.is-active:hover{color:#fff}.segmented-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:1px}.manage-image-field{gap:10px;display:grid}.manage-image-preview{background:var(--surface-muted);border:1px solid var(--border);object-fit:contain;border-radius:10px;max-width:100%;max-height:220px;display:block}.manage-image-upload{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.manage-image-upload input[type=file]{cursor:pointer}.manage-image-upload input[type=file]::file-selector-button{background:var(--surface);border:1px solid var(--border);color:var(--heading);cursor:pointer;font:inherit;border-radius:6px;margin-right:12px;padding:7px 14px;font-weight:650;transition:border-color .14s,color .14s}.manage-image-upload input[type=file]::file-selector-button:hover{border-color:var(--accent);color:var(--accent)}.manage-image-hint{color:var(--muted);margin:0;font-size:.74rem}.manage-overlay{z-index:50;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.manage-overlay-card{background:var(--surface);text-align:center;border-radius:14px;gap:14px;width:100%;max-width:460px;padding:28px;display:grid;box-shadow:0 20px 50px #0f172a40}.manage-overlay-card h2{color:var(--heading);margin:0}.manage-overlay-card .form-actions{justify-content:center}.manage-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;justify-self:center;width:38px;height:38px;animation:.8s linear infinite manage-spin}@keyframes manage-spin{to{transform:rotate(360deg)}}.outline-button{background:var(--surface);border:1px solid var(--border);color:var(--heading);cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-weight:650;text-decoration:none;display:inline-flex}.outline-button:hover{border-color:var(--accent);color:var(--accent)}.outline-button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.manage-form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.booking-form select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:38px}.field-label{color:var(--muted);letter-spacing:.035em;text-transform:uppercase;font-size:.72rem;font-weight:650}@media (width<=900px){.manage-grid{grid-template-columns:minmax(0,1fr)}}.status-queued{background:var(--warning-bg);color:var(--warning)}.status-active{background:var(--success-bg);color:var(--success)}.status-closed{color:var(--accent);background:#eef4ff}.status-cancelled{color:var(--danger);background:#f6e8e8}.live-chat-admin-grid{grid-template-columns:minmax(320px,.86fr) minmax(0,1.4fr);gap:20px;display:grid}.live-chat-timing-layout{max-width:760px}.live-chat-list-panel,.live-chat-hours-panel,.live-chat-thread-panel{background:var(--surface);border-color:var(--border);align-self:start;box-shadow:0 8px 24px #0f172a14}.live-chat-list-panel:before,.live-chat-hours-panel:before,.live-chat-thread-panel:before{display:none}.live-chat-request-list,.live-chat-thread{gap:12px;margin:0;padding:0;list-style:none;display:grid}.live-chat-request-list{max-height:min(68vh,760px);padding-right:4px;overflow-y:auto}.live-chat-filter-tabs{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-block-end:14px;padding:4px;display:grid}.live-chat-filter-tabs button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;min-height:34px;font-size:.84rem;font-weight:700}.live-chat-filter-tabs button:hover,.live-chat-filter-tabs button.is-active{background:var(--surface);color:var(--accent)}.live-chat-filter-tabs button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.live-chat-request-row{background:var(--surface-muted);border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:8px;align-items:stretch;gap:10px;width:100%;min-height:128px;padding:14px;display:grid}.live-chat-request-row:hover,.live-chat-request-row.is-selected{border-color:var(--accent);background:#f5f9ff}.live-chat-request-head,.live-chat-request-foot{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.live-chat-request-head strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.live-chat-request-row>span:nth-child(2){color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.45;display:-webkit-box;overflow:hidden}.live-chat-request-foot small,.live-chat-request-foot time{color:var(--muted);font-size:.78rem}.live-chat-patient-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-block-end:16px;display:grid}.live-chat-patient-strip div{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;gap:4px;min-width:0;padding:12px;display:grid}.live-chat-patient-strip span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:650}.live-chat-patient-strip strong{color:var(--heading);overflow-wrap:anywhere}.live-chat-patient-strip small{color:var(--muted);overflow-wrap:anywhere;font-size:.76rem;line-height:1.35}.live-chat-thread{border:1px solid var(--border);background:#ffffff6b;border-radius:10px;min-height:360px;max-height:min(54vh,580px);padding:14px;overflow-y:auto}.live-chat-message{justify-items:start;gap:6px;display:grid}.live-chat-message>div{align-items:baseline;gap:8px;display:flex}.live-chat-message strong{color:var(--heading);font-size:.82rem}.live-chat-message time{color:var(--muted);font-size:.74rem}.live-chat-message p{background:var(--surface);border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:8px;max-width:min(78%,620px);margin:0;padding:10px 12px;line-height:1.48}.live-chat-message--admin{justify-items:end}.live-chat-message--admin>div{flex-direction:row-reverse}.live-chat-message--admin p{background:var(--accent);border-color:var(--accent);color:#fff}.live-chat-message--system{justify-items:center}.live-chat-message--system>div{display:none}.live-chat-message--system p{color:var(--accent);text-align:center;background:#eef4ff;border-color:#d7e5ff;max-width:90%;font-size:.82rem}.live-chat-message--typing p{color:var(--muted);background:0 0;border:0;padding:0 4px;font-size:.82rem;font-style:italic}.live-chat-templates{flex-wrap:wrap;gap:8px;margin-block-start:12px;display:flex}.live-chat-templates button{background:var(--surface);border:1px solid var(--border);color:var(--heading);cursor:pointer;font:inherit;border-radius:8px;min-height:34px;padding:7px 10px;font-size:.82rem;font-weight:650}.live-chat-templates button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.live-chat-templates button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.live-chat-templates button:disabled{cursor:not-allowed;opacity:.55}.live-chat-reply-form{grid-template-columns:minmax(0,1fr) max-content;align-items:end;gap:12px;margin-block-start:14px;display:grid}.live-chat-reply-form textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;resize:vertical;border-radius:8px;min-height:82px;padding:10px 12px}.live-chat-reply-form textarea:focus{border-color:var(--accent);outline:3px solid var(--focus)}.live-chat-hours-form{gap:14px;display:grid}.live-chat-hours-toggle,.live-chat-hours-timezone{gap:8px;display:grid}.live-chat-hours-toggle{grid-template-columns:max-content minmax(0,1fr);align-items:center}.live-chat-hours-toggle span,.live-chat-hours-timezone span{color:var(--heading);font-size:.86rem;font-weight:700}.live-chat-hours-timezone input,.live-chat-hours-row input[type=time]{background:var(--input-bg);border:1px solid var(--border);color:var(--heading);font:inherit;border-radius:8px;min-height:38px;padding:8px 10px}.live-chat-hours-days{gap:8px;display:grid}.live-chat-hours-row{grid-template-columns:minmax(74px,.75fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;display:grid}.live-chat-hours-row label{color:var(--text);align-items:center;gap:8px;font-size:.84rem;font-weight:700;display:flex}.live-chat-hours-row input:disabled{opacity:.55}@media (width<=1050px){.live-chat-admin-grid,.live-chat-patient-strip{grid-template-columns:minmax(0,1fr)}}.physician-portal-shell{background:#f5f7fb;min-height:100vh}.physician-portal-bar{background:#fff;border-bottom:1px solid #dde5f1;justify-content:space-between;align-items:center;padding:14px 22px;display:flex}.physician-portal-bar div{gap:2px;display:grid}.physician-portal-bar strong{color:#101828}.physician-portal-bar span{color:#64748b;font-size:.9rem}.physician-portal-bar button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:40px;padding:8px 14px;font-weight:800}.physician-leave-page{color:#172033;background:#f5f7fb;min-height:100vh;padding:40px 18px}.leave-form-shell{background:#fff;border:1px solid #dde5f1;border-radius:8px;max-width:760px;margin:0 auto;padding:28px;box-shadow:0 18px 48px #10182814}.leave-form-title{border-bottom:1px solid #e5ebf4;margin-bottom:24px;padding-bottom:18px}.leave-form-title p{color:#64748b;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:.8rem;font-weight:800}.leave-form-title h1{color:#101828;margin:0;font-size:clamp(1.8rem,4vw,2.4rem)}.physician-leave-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.physician-leave-form label{color:#475569;letter-spacing:0;text-transform:uppercase;gap:7px;font-size:.82rem;font-weight:800;display:grid}.physician-leave-form input,.physician-leave-form select,.physician-leave-form textarea{color:#101828;font:inherit;text-transform:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;min-height:46px;padding:10px 12px}.physician-leave-form input:focus,.physician-leave-form select:focus,.physician-leave-form textarea:focus{border-color:#2563eb;outline:3px solid #2563eb2e}.physician-leave-form input:disabled,.physician-leave-form select:disabled{color:#94a3b8;background:#f1f5f9}.leave-check{flex-direction:row;align-self:end;align-items:center;min-height:46px;gap:10px!important;display:flex!important}.leave-check input{accent-color:#2563eb;width:18px;height:18px;min-height:18px}.leave-identity-card{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;gap:4px;min-height:70px;padding:12px 14px;display:grid}.leave-identity-card span{color:#64748b;text-transform:uppercase;font-size:.78rem;font-weight:800}.leave-identity-card strong{color:#101828;font-size:1.05rem}.leave-identity-card small{color:#64748b;font-size:.88rem}.leave-wide,.leave-time-section,.leave-error,.leave-success,.leave-actions{grid-column:1/-1}.leave-time-section{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;gap:12px;padding:14px;display:grid}.leave-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.physician-leave-form textarea{resize:vertical}.leave-state,.leave-error,.leave-success{border-radius:8px;margin:0;padding:14px}.leave-state{color:#475569;background:#eef4ff}.leave-error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.leave-success{color:#047857;background:#ecfdf5;border:1px solid #bbf7d0}.leave-actions{justify-content:flex-end;display:flex}.leave-actions button{color:#fff;cursor:pointer;font:inherit;background:#2563eb;border:1px solid #2563eb;border-radius:8px;min-width:140px;min-height:46px;padding:10px 18px;font-weight:900}.leave-actions button:disabled{color:#64748b;cursor:not-allowed;background:#e2e8f0;border-color:#e2e8f0}@media (width<=680px){.physician-leave-page{padding:18px}.leave-form-shell{padding:20px}.physician-portal-bar{flex-direction:column;align-items:flex-start;gap:12px}.physician-leave-form,.leave-time-grid{grid-template-columns:1fr}}
