:root{--bg:#f5f7f7;--surface:#fff;--surface-strong:#f7faf9;--ink:#061d36;--muted:#617284;--line:#dce4e2;--line-strong:#b9c7c5;--primary:#06203b;--primary-dark:#04162a;--primary-soft:#e7edf3;--teal:#0b355d;--teal-dark:#06203b;--teal-soft:#e5edf5;--champagne:#d8cabe;--success:#1d8a5a;--success-soft:#dff3e8;--warning:#d1941c;--warning-soft:#fff1c9;--danger:#c4473d;--danger-soft:#f9dfdc;--shadow:0 18px 46px #06203b1a;--shadow-soft:0 8px 22px #06203b12;--radius:8px;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{border:0}a{color:inherit}h1,h2,h3,p{margin:0}#root{min-height:100vh}.calendar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:22px}.calendar-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.calendar-header h2{color:var(--ink);text-align:center;font-size:1.65rem;line-height:1.1}.calendar-header button{width:42px;height:42px;color:var(--teal-dark);background:var(--teal-soft);cursor:pointer;border:1px solid #176b7424;border-radius:9px;place-items:center;font-size:1.8rem;line-height:1;display:inline-grid}.calendar-header button:hover{color:#fff;background:var(--teal-dark)}.admin-controls{background:linear-gradient(180deg, #fff, var(--surface-strong));border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;padding:14px;display:flex}.admin-cycle-help{color:var(--muted);gap:2px;font-size:.88rem;display:grid}.admin-cycle-help strong{color:var(--ink);font-size:.95rem}.preset-actions{flex-wrap:wrap;gap:8px;display:flex}.month-quick-set{align-items:center}.month-quick-set select{min-height:34px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:6px;padding:7px 10px;font-size:.82rem;font-weight:800}.preset-actions button{min-height:34px;color:var(--primary);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;padding:7px 10px;font-size:.82rem;font-weight:800}.preset-actions button:hover{background:var(--primary-soft)}.admin-save-message{color:var(--primary);background:var(--primary-soft);border-radius:var(--radius);border:1px solid #06203b24;margin-bottom:14px;padding:10px 12px;font-size:.9rem;font-weight:800}.calendar-import-summary{background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;display:flex}.calendar-import-summary>span:first-child{color:var(--muted);font-size:.82rem;font-weight:850}.calendar-import-pill{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:.78rem;font-weight:850}.calendar-import-pill.source-other{color:var(--primary);border-color:var(--line-strong);background:#ece6dd}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;display:grid}.day-header{color:var(--muted);text-align:center;letter-spacing:.04em;text-transform:uppercase;padding:4px 0 8px;font-size:.78rem;font-weight:850}.day-cell{min-height:88px;color:var(--ink);border:1px solid var(--line);text-align:left;background:#fff;border-radius:9px;align-content:space-between;justify-items:start;padding:11px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;box-shadow:0 6px 14px #06203b0a}.admin-calendar .day-cell{align-content:start;gap:6px;min-height:132px;padding:10px 8px}.admin-calendar .day-cell.selected{min-height:172px}.day-cell.empty{background:0 0;border-color:#0000}.day-cell.clickable{cursor:pointer}.day-cell.clickable:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 12px 24px #06203b1c}.day-cell:disabled{cursor:not-allowed;opacity:.74}.day-cell.past{color:#8b8790;opacity:.7;background:#efebe4;border-color:#ddd5c9}.day-cell.past .day-status{color:#8b8790}.day-cell.selected{border-color:var(--teal);box-shadow:0 0 0 3px #176b742e}.day-cell.harbor-day{border-color:var(--primary);border-width:2px;box-shadow:0 0 0 4px #06203b29,0 14px 28px #06203b24}.day-cell.harbor-day:before{content:"";pointer-events:none;border:1px solid #d8cabed1;border-radius:7px;position:absolute;inset:4px}.day-cell.requested-day{border-width:2px;border-color:#c9912f;box-shadow:0 0 0 4px #c9912f29,0 12px 24px #734f121f}.day-cell.requested-day:before{content:"";pointer-events:none;border:1px dashed #c9912fb8;border-radius:7px;position:absolute;inset:4px}.day-cell.today .day-number:after{content:"Today";color:var(--teal-dark);letter-spacing:.04em;text-transform:uppercase;margin-left:6px;font-size:.62rem;font-weight:800}.day-cell.status-available{background:linear-gradient(180deg, #fff, var(--success-soft));border-color:#1d8a5a42}.day-cell.status-possibly{background:linear-gradient(180deg, #fff, var(--warning-soft));border-color:#d1941c42}.day-cell.status-unavailable{background:linear-gradient(180deg, #fff, var(--danger-soft));border-color:#c4473d3d}.day-cell.status-not_open{background:linear-gradient(#fbfcff,#e5e9f0)}.day-number{flex-wrap:wrap;align-items:center;gap:5px;font-size:1.05rem;font-weight:850;display:flex}.harbor-day-label{color:#fff;background:var(--primary);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:18px;padding:2px 6px;font-size:.58rem;font-weight:900;line-height:1;display:inline-flex}.requested-day-label{color:#3b2708;letter-spacing:.04em;text-transform:uppercase;background:#f5d48b;border:1px solid #a66d1447;border-radius:999px;align-items:center;min-height:18px;padding:2px 6px;font-size:.58rem;font-weight:900;line-height:1;display:inline-flex}.day-status{max-width:100%;color:var(--muted);font-size:.72rem;font-weight:800;line-height:1.2}.day-actions{margin-top:4px}.day-detail-action{color:var(--teal-dark);background:#ffffffbd;border:1px solid #06203b1f;border-radius:5px;padding:3px 6px;font-size:.66rem;font-weight:850;display:inline-flex}.day-detail-action:hover,.day-detail-action:focus{background:#fff;outline:none}.booking-count{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal-dark));text-align:center;border:2px solid #fff;border-radius:6px;min-width:42px;min-height:22px;padding:3px 7px;font-size:.68rem;font-weight:850;line-height:1.15;position:absolute;top:8px;right:8px}.calendar-event-count{min-width:42px;min-height:22px;color:var(--teal-dark);border:2px solid var(--teal-dark);text-align:center;background:#fff;border-radius:6px;padding:3px 7px;font-size:.68rem;font-weight:850;line-height:1.15;position:absolute;top:36px;right:8px}.calendar-event-preview-list{cursor:pointer;gap:4px;width:100%;max-height:72px;margin-top:4px;display:grid;overflow:hidden}.admin-calendar .day-cell.selected .calendar-event-preview-list{max-height:118px;padding-right:2px;overflow:auto}.calendar-event-preview,.calendar-event-more{max-width:100%;color:var(--teal-dark);text-overflow:ellipsis;white-space:nowrap;background:#ffffffc7;border:1px solid #06203b1f;border-radius:5px;padding:4px 5px;font-size:.66rem;font-weight:850;line-height:1.15;display:block;overflow:hidden}.calendar-event-preview.source-harbor{color:#174ea6;background:#e8f0fe;border-color:#8ab4f8}.calendar-event-preview.source-info{color:#6b367c;background:#f4e8f8;border-color:#c89bd4}.calendar-event-preview.source-tom{color:#8f2d27;background:#fde7e4;border-color:#e67c73}.calendar-event-preview.source-believe{color:#7a4b00;background:#fff3d6;border-color:#f9ab00}.calendar-event-preview.source-others{color:#3f6212;background:#edf7df;border-color:#7cb342}.calendar-event-preview.source-other{color:var(--primary);border-color:var(--line-strong);background:#ece6dd}.calendar-event-more{color:var(--muted);background:#ffffff8f}.calendar-event-preview-list:hover .calendar-event-preview,.calendar-event-preview-list:focus .calendar-event-preview,.calendar-event-preview-list:hover .calendar-event-more,.calendar-event-preview-list:focus .calendar-event-more{border-color:var(--teal);background:#fff}.app.dark-mode .calendar-header h2,.app.dark-mode .admin-cycle-help strong,.app.dark-mode .day-number{color:#f4f8fb}.app.dark-mode .calendar-header button{color:#d8cabe;background:#0b1f31;border-color:#d8cabe3d}.app.dark-mode .calendar-header button:hover{color:#071727;background:#d8cabe}.app.dark-mode .admin-cycle-help,.app.dark-mode .day-header,.app.dark-mode .day-status,.app.dark-mode .calendar-import-summary>span:first-child,.app.dark-mode .calendar-event-more{color:#a8bac7}.app.dark-mode .calendar-import-summary{background:#0b1f31;border-color:#8eabc43d}.app.dark-mode .day-cell{color:#edf6fb;background:#10283d;border-color:#8eabc438;box-shadow:0 10px 22px #00000038}.app.dark-mode .day-cell.clickable:hover,.app.dark-mode .day-cell.selected{border-color:#d8cabe;box-shadow:0 0 0 3px #d8cabe2e,0 14px 28px #00000042}.app.dark-mode .day-cell.harbor-day{border-color:#d8cabe;box-shadow:0 0 0 4px #d8cabe38,0 16px 32px #00000057}.app.dark-mode .day-cell.harbor-day:before{border-color:#d8cabe94}.app.dark-mode .harbor-day-label{color:#071727;background:#d8cabe}.app.dark-mode .day-cell.requested-day{border-color:#e1b454;box-shadow:0 0 0 4px #e1b45433,0 16px 32px #0000004d}.app.dark-mode .day-cell.requested-day:before{border-color:#e1b45499}.app.dark-mode .requested-day-label{color:#1b1304;background:#e1b454;border-color:#ffe7ae6b}.app.dark-mode .day-cell.empty{box-shadow:none;background:0 0;border-color:#0000}.app.dark-mode .day-cell.past{color:#778b9d;background:#091827;border-color:#8eabc424}.app.dark-mode .day-cell.today .day-number:after,.app.dark-mode .day-detail-action{color:#d8cabe}.app.dark-mode .day-cell.status-available{background:linear-gradient(#10283d,#123728);border-color:#2d9b6557}.app.dark-mode .day-cell.status-possibly{background:linear-gradient(#10283d,#3b2a0f);border-color:#c9932b6b}.app.dark-mode .day-cell.status-unavailable{background:linear-gradient(#10283d,#3b1719);border-color:#d1524866}.app.dark-mode .day-cell.status-not_open{background:linear-gradient(#10283d,#111d2b);border-color:#8eabc438}.app.dark-mode .day-detail-action,.app.dark-mode .calendar-event-preview,.app.dark-mode .calendar-event-more{background:#ffffff14;border-color:#8eabc438}.app.dark-mode .booking-count{color:#071727;background:#d8cabe;border-color:#071727}.app.dark-mode .calendar-event-count{color:#d8cabe;background:#071727;border-color:#d8cabe}.app.dark-mode .calendar-event-preview-list:hover .calendar-event-preview,.app.dark-mode .calendar-event-preview-list:focus .calendar-event-preview,.app.dark-mode .calendar-event-preview-list:hover .calendar-event-more,.app.dark-mode .calendar-event-preview-list:focus .calendar-event-more{background:#d8cabe1f;border-color:#d8cabe}.calendar-legend{background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;gap:10px;margin-top:18px;padding:14px;display:flex}.legend-item{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.9rem;font-weight:850;display:flex}.legend-color{border:1px solid #00000014;border-radius:4px;width:18px;height:18px}.legend-color.status-available{background:var(--success)}.legend-color.status-possibly{background:var(--warning)}.legend-color.status-unavailable{background:var(--danger)}.legend-color.status-not_open{background:#7b8496}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:min(100%,420px);padding:22px;box-shadow:0 24px 70px #18212f40}.modal h3{color:var(--ink);margin-bottom:18px;font-size:1.25rem}.modal select{margin:8px 0 18px}.modal-buttons{justify-content:flex-end;gap:10px;display:flex}@media (width<=680px){.calendar{padding:14px}.admin-controls{flex-direction:column;align-items:stretch}.admin-cycle-help{text-align:left}.calendar-grid{gap:5px}.day-cell{min-height:66px;padding:7px}.admin-calendar .day-cell{min-height:88px}.day-status,.calendar-event-preview-list,.day-cell.today .day-number:after{display:none}.harbor-day-label,.requested-day-label{padding:2px 5px;font-size:.5rem}}@media (width<=430px){.calendar-header button{width:36px;height:36px}.day-header{font-size:.68rem}.day-cell{min-height:54px}.day-cell.harbor-day:before,.day-cell.requested-day:before{inset:3px}}.calendar-import-pill.source-tom{color:#8f2d27;background:#fde7e4;border-color:#e67c73}.calendar-import-pill.source-others{color:#3f6212;background:#edf7df;border-color:#7cb342}.calendar-import-pill.source-harbor{color:#174ea6;background:#e8f0fe;border-color:#8ab4f8}.calendar-import-pill.source-believe{color:#7a4b00;background:#fff3d6;border-color:#f9ab00}.calendar-import-pill.source-info{color:#6b367c;background:#f4e8f8;border-color:#c89bd4}.app{width:min(1240px,100% - 32px);margin:0 auto;padding:20px 0 56px}.app:before{content:"";z-index:-2;background:linear-gradient(#ffffffd6,#f5f7f7eb),repeating-linear-gradient(135deg,#06203b0a 0 1px,#0000 1px 22px),linear-gradient(125deg,#06203b14 0%,#0000 32%),linear-gradient(#f7faf9 0%,#eef4f3 100%);position:fixed;inset:0}.app:after{content:"";z-index:-1;background:linear-gradient(180deg, var(--primary), var(--teal), var(--champagne));pointer-events:none;width:8px;position:fixed;inset:0 auto 0 0}.app-header{background:linear-gradient(135deg, var(--primary), #0a2d50 64%, var(--teal-dark));border:1px solid #ffffff29;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:10px 12px 10px 16px;display:flex;box-shadow:0 18px 42px #06203b2e}.booking-header{flex-direction:column;justify-content:center;gap:12px;padding:18px 18px 14px;position:relative}.booking-header:after{content:"";background:linear-gradient(90deg, transparent, var(--champagne), transparent);opacity:.92;width:min(520px,72%);height:2px}.compact-header{min-height:86px}.office-header{grid-template-columns:minmax(210px,1fr) minmax(220px,auto) minmax(260px,1fr);display:grid}.brand{align-items:center;width:min(58vw,520px);min-width:0;display:flex;overflow:hidden}.brand-logo-button{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.brand-logo-button:focus-visible{outline-offset:4px;border-radius:8px;outline:3px solid #d8cabeb8}.booking-header .brand{justify-content:center;width:min(100%,690px);max-height:150px}.compact-header .brand{width:min(48vw,430px);max-height:96px}.gate-icon,.empty-icon{color:#fff;background:linear-gradient(135deg, var(--primary), #8b6f2d);border-radius:var(--radius);place-items:center;width:44px;height:44px;font-weight:800;display:inline-grid}.brand-logo{object-fit:contain;width:100%;height:auto;max-height:138px;transition:filter .24s,transform .24s;display:block}.brand-logo-button:hover .brand-logo{transform:translateY(-1px)}.booking-header .brand-logo{max-height:174px}.compact-header .brand-logo{max-height:118px}.office-header .brand{width:min(100%,360px)}.office-header-personalization{text-align:center;color:#fff;background:#ffffff1f;border:1px solid #d8cabe57;border-radius:9px;justify-self:center;min-width:min(100%,260px);padding:10px 18px;display:grid;box-shadow:inset 0 1px #ffffff1f}.office-header-personalization span{color:#ffffffb8;text-transform:uppercase;font-size:.72rem;font-weight:850}.office-header-personalization strong{color:#fff;font-size:1.02rem;line-height:1.2}.office-header nav{justify-self:end}.eyebrow{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:800}nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #d8cabe57;border-radius:9px;align-items:center;gap:8px;padding:5px;display:flex}.booking-header nav{order:3}nav a,.logout-btn,.secondary-btn,.theme-toggle{color:#ffffffc7;cursor:pointer;background:0 0;border-radius:7px;min-height:38px;padding:8px 13px;font-weight:750;text-decoration:none;transition:background .16s,color .16s,box-shadow .16s}nav a.active,nav a:hover,.secondary-btn:hover,.theme-toggle:hover,.theme-toggle.active{color:var(--primary);background:#ffffffeb;box-shadow:0 8px 18px #06203b29}.logout-btn{color:#f4d8d4}.theme-toggle{border:1px solid #d8cabe47}.app.dark-mode{color:#edf6fb}.app.dark-mode:before{background:linear-gradient(#071727f5,#050f1bfa),repeating-linear-gradient(135deg,#8eabc40e 0 1px,#0000 1px 24px),linear-gradient(135deg,#d8cabe1f,#0000 36%),linear-gradient(#071727 0%,#050f1b 100%)}.app.dark-mode:after{background:linear-gradient(#d8cabe,#5c87b0,#0b355d)}.app.dark-mode .app-header{background:linear-gradient(135deg,#071727,#0a2540 58%,#0b355d);border-color:#d8cabe2e;box-shadow:0 18px 46px #0000005c}.app.night-harbor:before{background:linear-gradient(#041221f2,#051828f0),repeating-linear-gradient(135deg,#d8cabe0e 0 1px,#0000 1px 26px),radial-gradient(circle at 82% 12%,#d8cabe57,#0000 12%),linear-gradient(#041221 0%,#071727 58%,#092b3f 100%)}.app.night-harbor:after{background:linear-gradient(#d8cabe,#5c87b0,#123d55)}.app.night-harbor .app-header{background:linear-gradient(135deg,#041221,#0b355d 64%,#123d55);border-color:#d8cabe47;box-shadow:0 18px 52px #0412216b}.app.night-harbor .brand-logo{filter:drop-shadow(0 0 14px #d8cabe4d)}.app.dark-mode nav{background:#ffffff12;border-color:#d8cabe3d}.app.dark-mode nav a.active,.app.dark-mode nav a:hover,.app.dark-mode .theme-toggle:hover,.app.dark-mode .theme-toggle.active,.app.dark-mode .secondary-btn:hover{color:#071727;background:#edf6fb}.app.dark-mode .admin-summary,.app.dark-mode .intro-panel,.app.dark-mode .booking-form,.app.dark-mode .login-container,.app.dark-mode .gate-card,.app.dark-mode .empty-admin,.app.dark-mode .account-request-panel,.app.dark-mode .date-detail-panel,.app.dark-mode .calendar,.app.dark-mode .admin-tool-card{color:#edf6fb;background:linear-gradient(#10283d,#0d2236);border-color:#8eabc43d;box-shadow:0 20px 54px #00000057}.app.dark-mode h2,.app.dark-mode h3,.app.dark-mode strong,.app.dark-mode .case-row-main strong,.app.dark-mode .login-heading h2{color:#f4f8fb}.app.dark-mode .eyebrow{color:#d8cabe}.app.dark-mode .muted,.app.dark-mode .hint,.app.dark-mode .empty-state p,.app.dark-mode .empty-admin p,.app.dark-mode .intro-subtitle,.app.dark-mode .case-row-main span,.app.dark-mode .case-row-date,.app.dark-mode .document-file-name span,.app.dark-mode .resource-row span,.app.dark-mode .audit-row span,.app.dark-mode .account-request-main span,.app.dark-mode .account-request-main p,.app.dark-mode .audit-row p{color:#a8bac7}.app.dark-mode .summary-pill,.app.dark-mode .prominent-key,.app.dark-mode .admin-controls,.app.dark-mode .document-list-panel{color:#edf6fb;background:linear-gradient(#132d45,#0e253a);border-color:#8eabc438}.app.dark-mode .summary-pill strong,.app.dark-mode .queue-total,.app.dark-mode .collapsible-title>span:first-child,.app.dark-mode .secondary-action,.app.dark-mode .primary-action,.app.dark-mode .link-button,.app.dark-mode .login-links a{color:#d8cabe}.app.dark-mode .summary-pill{box-shadow:0 12px 28px #0000003d}.app.dark-mode .key-item,.app.dark-mode .case-queue-row,.app.dark-mode .date-booking-card,.app.dark-mode .account-request-card,.app.dark-mode .document-row,.app.dark-mode .resource-row,.app.dark-mode .audit-row,.app.dark-mode .portal-account-row,.app.dark-mode .health-item,.app.dark-mode .calendar-health-row,.app.dark-mode .upload-file-row{color:#edf6fb;background:#122b42;border-color:#8eabc438;box-shadow:0 12px 28px #00000038}.app.dark-mode .case-row-detail{background:#0d2236;border-top-color:#8eabc438}.app.dark-mode .case-row-summary:hover{background:linear-gradient(90deg,#d8cabe1c,#0000)}.app.dark-mode .date-booking-card{background:linear-gradient(#122b42,#0d2236);border-color:#8eabc447 #8eabc447 #8eabc447 #d8cabe}.app.dark-mode .collapse-indicator{color:#d8cabe;background:#0b1f31;border-color:#d8cabe3d}.app.dark-mode .collapsible-heading:hover h3,.app.dark-mode .collapsible-heading:focus-visible h3{color:#d8cabe}.app.dark-mode .booking-collapse-head:hover,.app.dark-mode .booking-collapse-head:focus-visible{border-color:#d8cabe5c;box-shadow:0 0 0 3px #d8cabe1f}.app.dark-mode .portal-account-type{color:#d8cabe;background:#d8cabe1f;border-color:#d8cabe3d}.app.dark-mode .date-booking-head{background:#0717278a;border-color:#d8cabe2e}.app.dark-mode .booking-selected-date-header,.app.dark-mode .admin-daily-date-header{color:#edf6fb;background:linear-gradient(135deg,#071727,#0b355d);border-color:#d8cabe2e;box-shadow:0 18px 46px #00000057}.app.dark-mode .admin-daily-date-header .eyebrow{color:#d8cabe}.app.dark-mode .admin-daily-date-header h3{color:#f4f8fb}.app.dark-mode .admin-daily-date-header .collapse-indicator{color:#071727;background:#edf6fb;border-color:#d8cabe4d}.app.dark-mode .booking-selected-date-header.empty-date{color:#edf6fb;background:linear-gradient(#10283d,#0d2236)}.app.dark-mode .booking-selected-date-header.empty-date span:not(.status-badge){color:#a8bac7}.app.dark-mode .direct-harbor-day-form{color:#edf6fb;background:linear-gradient(#122b42,#0d2236);border-color:#8eabc447 #8eabc447 #8eabc447 #5e97c9}.app.dark-mode .direct-harbor-day-form h4{color:#f4f8fb}.app.dark-mode .admin-daily-office-card,.app.dark-mode .admin-patient-row{color:#edf6fb;background:linear-gradient(#122b42,#0d2236);border-color:#8eabc447}.app.dark-mode .admin-patient-row{border-left-color:#d8cabe;box-shadow:0 14px 30px #00000042}.app.dark-mode .patient-case-list .patient-case-card{color:#edf6fb;background:linear-gradient(#122b42,#0d2236);border-color:#8eabc447;box-shadow:0 14px 30px #00000042}.app.dark-mode .admin-patient-row.patient-ready,.app.dark-mode .admin-patient-row.patient-severity-success,.app.dark-mode .patient-case-list .patient-case-card.patient-case-complete{border-left-color:#66c08a}.app.dark-mode .admin-patient-row.patient-needs-work,.app.dark-mode .admin-patient-row.patient-severity-warning,.app.dark-mode .patient-case-list .patient-case-card.patient-case-documents,.app.dark-mode .patient-case-list .patient-case-card.patient-case-info,.app.dark-mode .patient-case-list .patient-case-card.patient-case-review,.app.dark-mode .patient-case-list .patient-case-card.patient-case-payment{border-left-color:#d8cabe}.app.dark-mode .admin-patient-row.patient-severity-danger,.app.dark-mode .patient-case-list .patient-case-card.patient-case-blocked{border-left-color:#ff7e70}.app.dark-mode .admin-patient-number{color:#071727;background:#d8cabe;border-color:#d8cabe4d}.app.dark-mode .admin-patient-identity strong{color:#f4f8fb}.app.dark-mode .admin-daily-office-card{background:#10283d;box-shadow:0 18px 46px #00000057}.app.dark-mode .calendar-mode-booking{background:linear-gradient(#10283d,#0d2236);border-color:#5e97c96b}.app.dark-mode .calendar-mode-patient{background:linear-gradient(#102f27,#0b241e);border-color:#5cbe896b}.app.dark-mode .calendar-mode-booking .calendar-mode-banner{background:linear-gradient(135deg,#071727,#0b4f8d)}.app.dark-mode .calendar-mode-patient .calendar-mode-banner{background:linear-gradient(135deg,#092a20,#17704b)}.app.dark-mode .admin-mode-booking{border-top-color:#5e97c9}.app.dark-mode .admin-mode-schedule{background:linear-gradient(#102f27,#0b241e);border-top-color:#66c08a}.app.dark-mode .admin-date-header-booking{background:linear-gradient(135deg,#071727,#0b4f8d);border-color:#5e97c952}.app.dark-mode .admin-date-header-schedule{background:linear-gradient(135deg,#092a20,#17704b);border-color:#5cbe8952}.app.dark-mode .payment-worklist-hero{color:#edf6fb;background:linear-gradient(135deg,#3b2a0f,#8a5a00);border-color:#d8cabe47;box-shadow:0 18px 46px #00000057}.app.dark-mode .payment-worklist-hero h3{color:#f4f8fb}.app.dark-mode .payment-worklist-counts>div,.app.dark-mode .payment-worklist-card{color:#edf6fb;background:linear-gradient(#332711,#261d0d);border-color:#d8cabe3d}.app.dark-mode .payment-worklist-counts strong,.app.dark-mode .payment-worklist-main strong{color:#f4f8fb}.app.dark-mode .payment-worklist-counts span,.app.dark-mode .payment-worklist-main span,.app.dark-mode .payment-worklist-main small{color:#a8bac7}.app.dark-mode .admin-daily-office-head{color:#edf6fb;background:linear-gradient(135deg,#092a20,#17704b);border-color:#5cbe8942}.app.dark-mode .admin-daily-office-head .eyebrow{color:#d8cabe}.app.dark-mode .admin-daily-schedules h4,.app.dark-mode .admin-daily-office-head h4{color:#f4f8fb}.app.dark-mode .admin-daily-office-head span:not(.status-badge),.app.dark-mode .pre-review-assign-row span,.app.dark-mode .admin-patient-identity span,.app.dark-mode .admin-patient-identity small,.app.dark-mode .admin-patient-control-form label span{color:#a8bac7}.app.dark-mode .admin-daily-office-head span:not(.status-badge){color:#edf6fbd1}.app.dark-mode .admin-daily-office-head .status-badge{color:#071727;background:#d8cabe;border-color:#d8cabe4d}.app.dark-mode .header-add-patient-btn{color:#071727;background:#edf6fb;border-color:#d8cabe4d}.app.dark-mode .header-add-patient-btn:hover,.app.dark-mode .header-add-patient-btn:focus-visible{color:#edf6fb;background:#0b4f8d}.app.dark-mode .admin-patient-list{background:#0b1f31;border-color:#8eabc447}.app.dark-mode .admin-patient-contact-strip{background:#d8cabe1a;border-color:#d8cabe2e}.app.dark-mode .admin-patient-contact-strip span{color:#d8cabe}.app.dark-mode .admin-patient-contact-strip strong{color:#f4f8fb}.app.dark-mode .patient-contact-preview,.app.dark-mode .admin-patient-contact-preview{color:#d8cabe}.app.dark-mode .admin-patient-contact-heading{border-right-color:#d8cabe2e}.app.dark-mode .pre-review-assign-row{color:#edf6fb;background:#5e97c91f;border-color:#5e97c93d #5e97c93d #5e97c93d #5e97c9}.app.dark-mode .admin-day-edit-form,.app.dark-mode .admin-add-patient-form,.app.dark-mode .admin-patient-control-form{color:#edf6fb;background:#07172761;border-color:#d8cabe29}.app.dark-mode .admin-add-patient-form{border-left-color:#66c08a}.app.dark-mode .admin-add-patient-heading strong{color:#f4f8fb}.app.dark-mode .admin-add-patient-heading span,.app.dark-mode .admin-add-patient-form label span{color:#a8bac7}.app.dark-mode .admin-patient-actions{border-top-color:#d8cabe29}.app.dark-mode .office-action-panel{background:linear-gradient(#10283d,#0d2236);border-color:#d8cabe33}.app.dark-mode .office-action-card{color:#edf6fb;background:#122b42;border-color:#8eabc447 #8eabc447 #8eabc447 #d8cabe;box-shadow:0 14px 30px #0000003d}.app.dark-mode .office-action-card strong{color:#f4f8fb}.app.dark-mode .office-action-card p,.app.dark-mode .office-action-card small{color:#a8bac7}.app.dark-mode .office-action-empty{color:#b9f2d1;background:#113626;border-color:#2d9b65}.app.dark-mode .office-action-empty span{color:#b9d9c8}.app.dark-mode .collapsible-title,.app.dark-mode .case-row-summary,.app.dark-mode .booking-status-pair strong,.app.dark-mode .document-list-head strong{color:#edf6fb}.app.dark-mode .collapsible-title>span:first-child,.app.dark-mode .queue-total,.app.dark-mode .case-filter-tabs button.active{background:#d8cabe1f;border-color:#d8cabe47}.app.dark-mode .case-filter-tabs button,.app.dark-mode .secondary-action,.app.dark-mode .table-actions select,.app.dark-mode .preset-actions button,.app.dark-mode .month-quick-set select,.app.dark-mode .form-group input,.app.dark-mode .form-group select,.app.dark-mode .form-group textarea,.app.dark-mode .modal select{color:#edf6fb;background:#0b1f31;border-color:#8eabc457}.app.dark-mode .form-group input::placeholder,.app.dark-mode .form-group textarea::placeholder{color:#7f96a8}.app.dark-mode .form-group label,.app.dark-mode .modal label{color:#c7d5df}.app.dark-mode .modal{background:#10283c;border-color:#8eabc452;box-shadow:0 28px 80px #00000070}.app.dark-mode .resend-info-message,.app.dark-mode .modal .muted{color:#b9c8d3}.app.dark-mode .resend-info-message strong{color:#edf6fb}.app.dark-mode .primary-btn,.app.dark-mode button[type=submit]{color:#071727;background:linear-gradient(135deg,#e6d7c8,#d8cabe);box-shadow:0 14px 30px #0000003d}.app.dark-mode .primary-btn:hover,.app.dark-mode button[type=submit]:hover{background:linear-gradient(135deg,#f2e5d8,#d8cabe)}.app.dark-mode .secondary-action:hover{color:#071727;background:#d8cabe}.app.dark-mode .booking-status-box{box-shadow:none}.app.dark-mode .admin-patient-summary-strip{color:#edf6fb}.app.dark-mode .patient-mini-done{color:#b9f2d1;background:#113626;border-color:#2d9b65}.app.dark-mode .patient-mini-todo{color:#ffe4a0;background:#3b2a0f;border-color:#c9932b}.app.dark-mode .patient-mini-blocked{color:#ffc1ba;background:#3b1719;border-color:#d15248}.app.dark-mode .document-detail-strip{border-top-color:#8eabc438}.app.dark-mode .document-detail-strip summary{color:#d8cabe}.app.dark-mode .document-detail-strip pre{color:#eaf2f7;background:#071727;border-color:#8eabc447}.app.dark-mode .ai-summary-card{color:#edf6fb;background:#0717276b;border-color:#8eabc43d}.app.dark-mode .ai-summary-row{border-bottom-color:#8eabc42e}.app.dark-mode .ai-summary-row strong,.app.dark-mode .ai-summary-row span{color:#edf6fb}.app.dark-mode .ai-summary-card.ai-summary-success{background:#0d2d28;border-color:#4dbe8552}.app.dark-mode .ai-summary-card.ai-summary-warning{background:#332711;border-color:#f6bf2657}.app.dark-mode .ai-summary-card.ai-summary-danger{background:#351a1d;border-color:#ff7e7057}.app.dark-mode .status-please_upload_patient_info,.app.dark-mode .status-more_information_required,.app.dark-mode .booking-status-box.booking-status-pending,.app.dark-mode .booking-status-box.booking-status-possibly,.app.dark-mode .booking-status-box.patient-status-needs_medical_history,.app.dark-mode .booking-status-box.patient-status-please_upload_patient_info,.app.dark-mode .booking-status-box.patient-status-awaiting_review,.app.dark-mode .booking-status-box.patient-status-more_information_required,.app.dark-mode .document-status-chip.status-pending,.app.dark-mode .document-status-chip.status-processing,.app.dark-mode .working-indicator{color:#ffe4a0;background:#3b2a0f;border-color:#c9932b}.app.dark-mode .working-indicator:before{border-color:#ffe4a0 #ffe4a040 #ffe4a040}.app.dark-mode .status-awaiting_review,.app.dark-mode .document-status-chip{color:#cbe2ff;background:#102f4e;border-color:#426d98}.app.dark-mode .status-ok_for_anesthesia,.app.dark-mode .booking-status-box.booking-status-booked,.app.dark-mode .booking-status-box.patient-status-ok_for_anesthesia,.app.dark-mode .document-status-chip.status-complete{color:#b9f2d1;background:#113626;border-color:#2d9b65}.app.dark-mode .status-not_acceptable_for_anesthesia,.app.dark-mode .booking-status-box.booking-status-available,.app.dark-mode .booking-status-box.booking-status-unavailable,.app.dark-mode .booking-status-box.booking-status-not_open,.app.dark-mode .booking-status-box.patient-status-not_acceptable_for_anesthesia,.app.dark-mode .document-status-chip.status-failed{color:#ffc1ba;background:#3b1719;border-color:#d15248}.app.dark-mode .daily-start-select:has(option[value=""]:checked){color:#ffc1ba;background:#3b1719;border-color:#d15248;box-shadow:0 0 0 3px #d1524829}.app.dark-mode .daily-start-box:has(.daily-start-select option[value=""]:checked){background:#3b1719;border-color:#d15248;box-shadow:0 0 0 3px #d1524829}.app.dark-mode .daily-start-box:has(.daily-start-select option[value=""]:checked) label{color:#ffc1ba}.app.dark-mode .priority-required-field.field-missing{background:#3b1719;border-color:#d15248;box-shadow:0 0 0 3px #d1524829}.app.dark-mode .priority-required-field.field-missing label{color:#ffc1ba}.customer-shell{gap:20px;display:grid}.office-welcome-strip{color:#fff;text-align:center;background:linear-gradient(135deg, var(--primary), #0f5f94);border:1px solid #ffffff2e;border-radius:10px;justify-content:center;align-items:center;gap:18px;margin-bottom:14px;padding:14px 18px;display:flex;box-shadow:0 14px 30px #06203b1f}.office-welcome-strip div{justify-items:center;gap:2px;display:grid}.office-welcome-strip span{color:#ffffffb8;text-transform:uppercase;font-size:.72rem;font-weight:900}.office-welcome-strip strong{color:#fff;font-size:1.22rem;line-height:1.15}.office-welcome-strip p{color:#ffffffd1;text-align:right;max-width:620px;margin:0;font-weight:720;line-height:1.35}.intro-copy{gap:8px;display:grid}.intro-panel,.admin-summary{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;justify-content:space-between;align-items:end;gap:20px;padding:26px;display:flex}.intro-panel h2,.admin-summary h2,.gate-card h2,.login-container h2{max-width:720px;font-size:2.25rem;line-height:1.05}.intro-subtitle{color:var(--muted);font-size:1rem;font-weight:700}.muted,.hint,.empty-state p,.empty-admin p{color:var(--muted)}.status-key{flex-wrap:wrap;gap:10px;display:flex}.prominent-key{background:var(--surface-strong);border:1px solid var(--line);min-width:min(100%,380px);box-shadow:var(--shadow-soft);border-radius:10px;padding:14px}.key-item{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;gap:8px;padding:9px 10px;font-size:.92rem;font-weight:850;display:flex}.key-swatch{border:1px solid #0000001a;border-radius:5px;width:18px;height:18px}.key-swatch.status-available{background:var(--success)}.key-swatch.status-possibly{background:var(--warning)}.key-swatch.status-unavailable{background:var(--danger)}.key-swatch.status-not_open{background:#7b8496}.availability-note{color:var(--muted);flex-basis:100%;margin-top:2px;font-size:.9rem;font-weight:700;line-height:1.35}.customer-view{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);align-items:start;gap:20px;display:grid}.booking-form,.login-container,.gate-card,.empty-admin{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:26px}.booking-form{position:sticky;top:20px}.booking-request-column{gap:14px;display:grid;position:sticky;top:20px}.booking-request-column .booking-form{position:static}.booking-selected-date-header{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal-dark));border:1px solid #176b7438;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;min-height:148px;padding:22px 24px;display:flex;box-shadow:0 18px 36px #06203b1f}.booking-selected-date-header.empty-date{color:var(--ink);background:linear-gradient(#fff,#f4f8fb)}.booking-selected-date-header .eyebrow{color:#ffffffc2}.booking-selected-date-header.empty-date .eyebrow{color:var(--muted)}.booking-selected-date-header h2{color:inherit;letter-spacing:0;margin:2px 0 4px;font-size:2rem}.booking-selected-date-header span:not(.status-badge){color:#ffffffd1;font-weight:780;line-height:1.4}.booking-selected-date-header.empty-date span:not(.status-badge){color:var(--muted)}.booking-selected-date-header .status-badge{border-color:#ffffff6b;flex-shrink:0}.form-heading{margin-bottom:18px}.form-heading h3,.empty-state h3,.empty-admin h3{font-size:1.3rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-group{text-align:left;gap:7px;margin-bottom:14px;display:grid}.form-group label,.modal label{color:#344054;font-size:.9rem;font-weight:750}.form-group input,.form-group select,.form-group textarea,.modal select{width:100%;color:var(--ink);border:1px solid var(--line-strong);background:linear-gradient(#fff,#fbfdfd);border-radius:8px;outline:none;padding:12px 13px;transition:border-color .16s,box-shadow .16s,background .16s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.modal select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #176b7429}.form-group textarea{resize:vertical}.primary-btn,button[type=submit]{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal-dark));cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 16px;font-weight:850;transition:background .16s,transform .16s,box-shadow .16s;display:inline-flex}.primary-btn:hover,button[type=submit]:hover{background:linear-gradient(135deg, var(--primary-dark), var(--teal));transform:translateY(-1px);box-shadow:0 12px 26px #06203b38}.primary-btn:disabled,button:disabled{cursor:not-allowed;opacity:.58;transform:none}.booking-form .primary-btn,.login-container .primary-btn,.gate-card .primary-btn{width:100%}.message{text-align:left;box-shadow:var(--shadow-soft);border-radius:8px;margin-bottom:16px;padding:12px 14px;font-weight:700}.message.success,.success-message{color:#125d3c;background:var(--success-soft);border:1px solid #1d8a5a3d}.approval-confirmation{color:#0f5132;border:1px solid #1d8a5a4d;border-left:5px solid var(--success);background:linear-gradient(135deg,#e7f8ee,#f7fffb);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex;box-shadow:0 12px 24px #1d8a5a1a}.approval-confirmation strong{font-weight:900}.approval-confirmation span{color:#225f42;font-weight:750}.message.error,.error{color:#8f2d27;background:var(--danger-soft);border:1px solid #c4473d3d}.empty-state{align-content:center;justify-items:start;gap:10px;min-height:280px;display:grid}.confirmation-state{align-content:start;justify-items:start;gap:12px;display:grid}.empty-icon{background:var(--primary-soft);width:38px;height:38px;color:var(--primary)}.confirmation-icon{color:#fff;background:var(--success)}.unavailable-state{border-color:#c4473d42}.unavailable-icon{color:#fff;background:var(--danger)}.confirmation-copy{color:var(--muted)}.secondary-action{min-height:40px;color:var(--teal-dark);cursor:pointer;background:#fff;border:1px solid #06203b24;border-radius:8px;padding:9px 13px;font-weight:800;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;box-shadow:0 2px #06203b0a}.secondary-action:hover{background:var(--teal-soft);border-color:#176b7447;transform:translateY(-1px);box-shadow:0 8px 18px #06203b1a}.primary-action{color:#fff;background:linear-gradient(180deg, var(--primary), var(--primary-dark));cursor:pointer;border:1px solid #06203b2e;border-radius:8px;min-height:40px;padding:9px 14px;font-weight:850;transition:box-shadow .16s,transform .16s,opacity .16s;box-shadow:0 10px 22px #176b7433}.primary-action:hover{transform:translateY(-1px);box-shadow:0 14px 28px #176b7447}.primary-action.action-confirmed,.secondary-action.action-confirmed{color:#0d5134;background:#d8f3e5;border-color:#2880525c;box-shadow:0 10px 22px #28805224}.primary-action.action-sent,.secondary-action.action-sent,.primary-action.action-sent:disabled,.secondary-action.action-sent:disabled{color:#516070;box-shadow:none;opacity:1;background:#edf1f4;border-color:#5160703d}.primary-action.action-sent:hover,.secondary-action.action-sent:hover{color:#314052;box-shadow:none;background:#e1e7ec;transform:none}.primary-action:disabled,.secondary-action:disabled{cursor:not-allowed;opacity:.58;transform:none}.gate-shell,.login-shell{align-content:center;place-items:center;gap:18px;min-height:66vh;display:grid}.gate-card,.login-container{width:min(100%,440px)}.login-container{border-top:4px solid var(--teal);width:min(100%,500px);padding:34px;position:relative;overflow:hidden}.login-container.harbor-code-active{color:#f4f8fb;background:linear-gradient(#041221f5,#072337f5),linear-gradient(135deg,#041221,#0b355d);border-color:#d8cabe #d8cabe6b #d8cabe6b;animation:2.8s both harbor-card-pop;box-shadow:0 36px 110px #041221a8,0 0 0 9999px #0412219e}.login-container.harbor-code-active h2,.login-container.harbor-code-active strong{color:#fff}.login-container.harbor-code-active .muted,.login-container.harbor-code-active .eyebrow,.login-container.harbor-code-active .hint{color:#f4f8fbc7}.login-container.harbor-code-active:after{content:"";pointer-events:none;background:radial-gradient(circle at 78% 18%,#d8cabe6b,#0000 12%),linear-gradient(#0000 48%,#5c87b03d 49%,#0000 55%),linear-gradient(110deg,#0000 0%,#5c87b029 34%,#d8cabe7a 50%,#5c87b029 66%,#0000 100%);animation:2.8s ease-in-out harbor-beam;position:absolute;inset:0}.harbor-code-reveal{z-index:100;text-align:center;pointer-events:auto;background:radial-gradient(circle at 50% 44%,#d8cabe24,#0000 22%),radial-gradient(circle at 78% 22%,#5c87b03d,#0000 19%),linear-gradient(#041221 0%,#082942 48%,#041221 100%);padding:clamp(20px,4vw,44px);animation:.26s both harbor-game-enter;display:block;position:fixed;inset:0}.harbor-code-reveal span{color:#d8cabe;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(1rem,2.4vw,1.8rem);font-weight:950}.harbor-code-reveal strong{color:#fff;text-shadow:0 18px 48px #0000008a;max-width:min(92vw,1100px);font-size:clamp(3.2rem,10vw,8.8rem);line-height:.92}.harbor-game,.harbor-animation{opacity:1;min-height:100vh;animation:.26s both harbor-game-enter;overflow:hidden}.harbor-game-hud,.harbor-animation-hud{z-index:7;text-align:center;gap:8px;width:min(92vw,1120px);display:grid;position:absolute;top:clamp(28px,6vh,70px);left:50%;transform:translate(-50%)}.harbor-game-hud span,.harbor-animation-hud span{color:#d8cabe;letter-spacing:.2em;text-transform:uppercase;font-size:clamp(.9rem,2vw,1.5rem);font-weight:950}.harbor-game-hud strong,.harbor-animation-hud strong{color:#fff;text-shadow:0 18px 48px #0000008a;font-size:clamp(2.9rem,7vw,6.6rem);line-height:.94}.harbor-game-hud small,.harbor-game-hud em,.harbor-animation-hud small{color:#f4f8fbd1;font-size:clamp(.92rem,1.6vw,1.18rem);font-style:normal;font-weight:850}.harbor-animation-calm .harbor-animation-hud{animation:1.1s both harbor-welcome-arrive;top:clamp(86px,16vh,150px)}.harbor-animation-calm .harbor-animation-hud strong{color:#fff8ee;text-shadow:0 18px 54px #0000009e,0 0 34px #d8cabe52;font-size:clamp(3.6rem,8vw,7.4rem)}.harbor-game-close{z-index:6;color:#041221;cursor:pointer;background:#d8cabe;border:1px solid #ffffff75;border-radius:999px;min-height:40px;padding:9px 14px;font-weight:950;position:absolute;top:clamp(18px,4vh,36px);right:clamp(18px,4vw,46px);box-shadow:0 12px 30px #00000047}.harbor-game-close:hover{transform:translateY(-1px)}.employee-easter-egg{z-index:110;color:#fff8ee;background:radial-gradient(circle at 50% 42%,#d8cabe52,#0000 22%),radial-gradient(circle at 18% 22%,#f6bf2638,#0000 18%),radial-gradient(circle at 84% 20%,#176b7452,#0000 18%),linear-gradient(135deg,#041221 0%,#0b355d 48%,#176b74 100%);place-items:center;padding:clamp(24px,5vw,64px);animation:.28s both employee-stage-enter;display:grid;position:fixed;inset:0;overflow:hidden}.employee-easter-egg:before,.employee-easter-egg:after{aspect-ratio:1;content:"";opacity:.44;pointer-events:none;border-radius:50%;width:min(72vw,760px);position:absolute}.employee-easter-egg:before{background:repeating-conic-gradient(from 8deg, #d8cabe75 0 10deg, transparent 10deg 22deg);animation:18s linear infinite employee-spin;top:-24%;left:-18%}.employee-easter-egg:after{background:repeating-conic-gradient(from 16deg, #f6bf265c 0 9deg, transparent 9deg 23deg);animation:22s linear infinite reverse employee-spin;bottom:-28%;right:-20%}.employee-easter-close{z-index:6}.employee-award-card{z-index:4;text-align:center;justify-items:center;gap:clamp(10px,2vw,18px);width:min(92vw,1160px);padding:clamp(34px,7vw,96px);animation:.7s cubic-bezier(.18,.88,.28,1.28) both employee-card-pop;display:grid;position:relative}.employee-award-kicker{color:#d8cabe;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 12px 34px #0000006b;font-size:clamp(1.4rem,4vw,4rem);font-weight:950;line-height:1}.employee-award-card strong{color:#fff8ee;letter-spacing:0;text-shadow:0 22px 54px #0000007a,0 0 48px #f6bf2661;font-size:clamp(5rem,18vw,16rem);font-weight:950;line-height:.78;animation:1.8s ease-in-out infinite employee-name-pulse}.employee-award-burst{z-index:-1;aspect-ratio:1;background:radial-gradient(circle, #f6bf2642, transparent 34%), repeating-conic-gradient(from 4deg, #d8cabe61 0 7deg, transparent 7deg 17deg);filter:blur(.2px);opacity:.76;border-radius:50%;width:min(92vw,820px);animation:16s linear infinite employee-burst-spin;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.employee-confetti{z-index:3;pointer-events:none;position:absolute;inset:0}.employee-confetti span{top:-12%;left:calc((var(--confetti-index,1) * 5.5%) - 2%);background:var(--confetti-color,#d8cabe);width:clamp(10px,1.4vw,18px);height:clamp(18px,2.3vw,30px);animation:employee-confetti-fall var(--confetti-speed,4.8s) linear infinite;animation-delay:var(--confetti-delay,0s);border-radius:4px;position:absolute;box-shadow:0 0 18px #ffffff29}.employee-confetti span:nth-child(3n){--confetti-color:#f6bf26}.employee-confetti span:nth-child(3n+1){--confetti-color:#d8cabe}.employee-confetti span:nth-child(3n+2){--confetti-color:#8eabc4}.employee-confetti span:first-child{--confetti-index:1;--confetti-speed:4.1s;--confetti-delay:-.2s}.employee-confetti span:nth-child(2){--confetti-index:2;--confetti-speed:5.2s;--confetti-delay:-1.3s}.employee-confetti span:nth-child(3){--confetti-index:3;--confetti-speed:4.7s;--confetti-delay:-.8s}.employee-confetti span:nth-child(4){--confetti-index:4;--confetti-speed:5.8s;--confetti-delay:-2.2s}.employee-confetti span:nth-child(5){--confetti-index:5;--confetti-speed:4.4s;--confetti-delay:-1.8s}.employee-confetti span:nth-child(6){--confetti-index:6;--confetti-speed:5.5s;--confetti-delay:-.6s}.employee-confetti span:nth-child(7){--confetti-index:7;--confetti-speed:4.9s;--confetti-delay:-2.8s}.employee-confetti span:nth-child(8){--confetti-index:8;--confetti-speed:5.9s;--confetti-delay:-1.1s}.employee-confetti span:nth-child(9){--confetti-index:9;--confetti-speed:4.3s;--confetti-delay:-2.1s}.employee-confetti span:nth-child(10){--confetti-index:10;--confetti-speed:5.4s;--confetti-delay:-.4s}.employee-confetti span:nth-child(11){--confetti-index:11;--confetti-speed:4.8s;--confetti-delay:-1.6s}.employee-confetti span:nth-child(12){--confetti-index:12;--confetti-speed:5.7s;--confetti-delay:-2.5s}.employee-confetti span:nth-child(13){--confetti-index:13;--confetti-speed:4.5s;--confetti-delay:-.9s}.employee-confetti span:nth-child(14){--confetti-index:14;--confetti-speed:5.3s;--confetti-delay:-1.9s}.employee-confetti span:nth-child(15){--confetti-index:15;--confetti-speed:4.2s;--confetti-delay:-2.7s}.employee-confetti span:nth-child(16){--confetti-index:16;--confetti-speed:5.6s;--confetti-delay:-.7s}.employee-confetti span:nth-child(17){--confetti-index:17;--confetti-speed:4.6s;--confetti-delay:-1.5s}.employee-confetti span:nth-child(18){--confetti-index:18;--confetti-speed:5.1s;--confetti-delay:-2.4s}.harbor-game-sea,.harbor-animation-sea{z-index:3;background:radial-gradient(circle at 78% 25%,#d8cabe59,#0000 9%),radial-gradient(circle at 18% 28%,#305e8557,#0000 18%),linear-gradient(#06182b 0%,#0b2540 44%,#0d5a71 45%,#041e31 100%);position:absolute;inset:0;overflow:hidden}.harbor-animation-calm .harbor-animation-sea{background:radial-gradient(circle at 78% 25%,#fff8e67a,#0000 10%),radial-gradient(circle at 50% 64%,#d8cabe29,#0000 28%),linear-gradient(#06182b 0%,#123f60 47%,#34778b 48%,#092b3f 100%)}.harbor-moon{aspect-ratio:1;background:radial-gradient(circle at 38% 36%,#fff7de,#d8cabe 58%,#d8cabe1f 62%);border-radius:50%;width:clamp(54px,8vw,112px);position:absolute;top:14%;right:18%;box-shadow:0 0 52px #d8cabe70}.harbor-wave{height:calc(78px + (var(--wave-level) * 16px));background:radial-gradient(72px 34px at 36px 12px, transparent 48%, #f4f8fb94 50% 57%, transparent 59%) 0 0 / calc(118px - (var(--wave-level) * 4px)) 54px repeat-x, radial-gradient(96px 50px at 48px 48px, #2d8ba280 0 56%, transparent 58%) 0 8px / calc(132px - (var(--wave-level) * 4px)) 76px repeat-x, linear-gradient(180deg, #53a6ba47, #09374dbd);opacity:.94;filter:drop-shadow(0 -10px 16px #f4f8fb1f);border-top:0;border-radius:45% 55% 0 0;transition:height 1s,opacity 1s,bottom 1s,transform 1s;position:absolute;left:-16%;right:-16%}.harbor-wave:after{content:"";opacity:.74;background:radial-gradient(86px 34px at 43px 7px,#0000 52%,#f4f8fb52 54% 60%,#0000 62%) 28px 0/142px 44px repeat-x;height:42px;position:absolute;inset:18px 0 auto}.harbor-wave-back{opacity:.45;animation:8s linear infinite harbor-wave-scroll;bottom:27%;transform:scaleY(.72)}.harbor-wave-mid{opacity:.68;animation:5.6s linear infinite reverse harbor-wave-scroll;bottom:15%;transform:scaleY(.9)}.harbor-wave-front{opacity:.96;animation:3.8s linear infinite harbor-wave-scroll;bottom:-1%}.harbor-animation-storm .harbor-wave{height:86px;animation-duration:4.8s}.harbor-animation-storm .harbor-wave-mid{height:128px;animation-duration:3.3s}.harbor-animation-storm .harbor-wave-front{height:164px;animation-duration:2.4s}.harbor-animation-crossing .harbor-wave{opacity:.98;height:182px;animation-duration:1.9s}.harbor-animation-crossing .harbor-wave-back{bottom:33%}.harbor-animation-crossing .harbor-wave-mid{bottom:19%}.harbor-animation-calm .harbor-wave{opacity:.5;height:54px;animation-duration:8.5s}.harbor-animation-calm .harbor-wave-back{opacity:.28;bottom:22%}.harbor-animation-calm .harbor-wave-mid{opacity:.34;bottom:11%}.harbor-animation-calm .harbor-wave-front{opacity:.46;bottom:-2%}.harbor-beacon{z-index:6;opacity:.58;width:clamp(84px,10vw,130px);height:clamp(170px,22vw,260px);transition:opacity .8s,transform .8s;position:absolute;bottom:31%;right:clamp(50px,13vw,210px);transform:translateY(10px)scale(.94)}.harbor-animation-crossing .harbor-beacon,.harbor-animation-calm .harbor-beacon{opacity:1;transform:translateY(0)scale(1)}.harbor-beacon-light{background:radial-gradient(circle at 38% 34%,#fff,#fff8df 48%,#dcc5aa 82%);border-radius:50%;width:clamp(24px,3.2vw,42px);height:clamp(24px,3.2vw,42px);position:absolute;top:-1%;left:50%;transform:translate(-50%);box-shadow:0 0 24px #fff8dff5,0 0 76px #d8cabec2}.harbor-animation-crossing .harbor-beacon-light,.harbor-animation-calm .harbor-beacon-light{animation:1.5s ease-in-out infinite harbor-beacon-pulse}.harbor-beacon-light:before{content:"";filter:blur(7px);opacity:.74;background:linear-gradient(90deg,#fff8df85,#0000);border-radius:999px;width:clamp(180px,28vw,420px);height:18px;position:absolute;top:50%;right:50%;transform:translateY(-50%)}.harbor-beacon-tower{clip-path:polygon(34% 0,66% 0,82% 100%,18% 100%);filter:drop-shadow(0 18px 22px #00000052);background:linear-gradient(#ffffff57,#0000 18%),repeating-linear-gradient(#e8ddd4 0 24px,#d6c6ba 24px 44px,#b8a193 44px 50px);width:clamp(34px,4.2vw,54px);height:72%;position:absolute;bottom:clamp(26px,4vw,48px);left:50%;transform:translate(-50%)}.harbor-beacon-tower:before{content:"";background:#0718276b;border-radius:999px 999px 4px 4px;width:34%;height:11%;position:absolute;top:12%;left:50%;transform:translate(-50%);box-shadow:0 42px #07182738}.harbor-beacon-rock{background:radial-gradient(circle at 24% 22%,#d8cabe38,#0000 26%),linear-gradient(#75685f,#3f3733);border-radius:52% 48% 12% 8%;height:clamp(34px,4.5vw,56px);position:absolute;bottom:0;left:6%;right:6%;box-shadow:0 16px 24px #00000047}.harbor-safe-water{z-index:2;opacity:0;background:radial-gradient(at 50% 55%,#d8cabe2e,#0000 63%);width:44%;height:46%;transition:opacity 1.1s;position:absolute;bottom:0;right:0}.harbor-animation-calm .harbor-safe-water{opacity:1}.harbor-ship{left:var(--ship-x);top:var(--ship-y);z-index:5;width:clamp(92px,12vw,158px);height:clamp(86px,11vw,146px);transform:translate(-50%, -50%) rotate(var(--ship-tilt));animation:1.4s ease-in-out infinite harbor-ship-bob;position:absolute}.harbor-cinematic-ship{animation:6.1s ease-in-out forwards harbor-cinematic-ship;top:56%;left:18%}.harbor-animation-calm .harbor-cinematic-ship{animation:2.8s ease-in-out infinite harbor-calm-ship;top:52%;left:74%;transform:translate(-50%,-50%)rotate(3deg)}.harbor-ship-mast{background:linear-gradient(#fff8ee,#b99f8d);border-radius:999px;width:4px;height:64%;position:absolute;bottom:27%;left:51%;box-shadow:0 0 12px #d8cabe4d}.harbor-ship-sail{filter:drop-shadow(0 10px 16px #00000052);width:0;height:0;display:block;position:absolute;bottom:37%}.main-sail{border-top:0 solid #0000;border-bottom:clamp(48px,6vw,78px) solid #f6fafcfa;border-right:clamp(42px,5.2vw,70px) solid #0000;left:52%}.small-sail{border-top:0 solid #0000;border-bottom:clamp(36px,4.8vw,60px) solid #d8cabef0;border-left:clamp(32px,4.3vw,54px) solid #0000;right:50%}.harbor-ship-hull{background:linear-gradient(#fff6,#0000 38%),linear-gradient(#d8cabe,#9f7b58 72%,#74533b);border-radius:8% 8% 58% 58%;height:22%;position:absolute;bottom:20%;left:8%;right:8%;box-shadow:0 12px 24px #00000061}.harbor-ship-hull:after{content:"";filter:blur(5px);background:#04122147;border-radius:50%;height:10px;position:absolute;bottom:-9px;left:10%;right:10%}.login-heading{text-align:left;gap:8px;margin-bottom:22px;display:grid}.login-heading h2{color:var(--ink);font-size:2.2rem}.login-heading .muted{max-width:380px;font-weight:650;line-height:1.45}.login-links{flex-wrap:wrap;justify-content:center;gap:10px 14px;margin-top:16px;display:flex}.login-links a,.link-button{color:var(--teal-dark);cursor:pointer;background:0 0;font-weight:850;text-decoration:none}.login-links a:hover,.link-button:hover{text-decoration:underline}.login-footer a,.login-footer span{color:var(--muted);font-size:.82rem;font-weight:800;text-decoration:none}.login-footer{justify-items:center;gap:8px;display:grid}.provider-layout{grid-template-columns:minmax(320px,.9fr) minmax(0,1.35fr);align-items:start;gap:18px;display:grid}.provider-calendar-panel,.provider-lineup-panel{gap:16px;display:grid}.provider-calendar-header{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.provider-calendar-header h3{color:var(--ink);text-align:center}.provider-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.provider-calendar-weekday{color:var(--muted);text-align:center;text-transform:uppercase;font-size:.74rem;font-weight:900}.provider-calendar-day{min-height:72px;color:var(--muted);border:1px solid var(--line);text-align:left;background:#f7fafb;border-radius:8px;align-content:start;gap:5px;padding:9px;display:grid}.provider-calendar-day span{color:inherit;font-weight:900}.provider-calendar-day strong{color:#0d5134;background:#d8f3e5;border-radius:999px;justify-self:start;padding:3px 7px;font-size:.72rem}.provider-calendar-day.has-provider-day{color:var(--primary);cursor:pointer;background:#eef7fb;border-color:#0b355d47}.provider-calendar-day.selected{border-color:var(--primary);background:linear-gradient(#fff,#eaf4f8);box-shadow:0 12px 26px #06203b24}.provider-calendar-day:disabled{cursor:default;opacity:.72}.provider-calendar-day.muted-day{opacity:.48}.provider-day-header{border-radius:12px}.provider-day-switcher{flex-wrap:wrap;gap:8px;display:flex}.provider-patient-list{gap:12px;display:grid}.provider-patient-card{border:1px solid #176b7438;border-left:6px solid var(--primary);box-shadow:var(--shadow-soft);background:#fff;border-radius:10px;overflow:hidden}.provider-patient-summary{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:linear-gradient(#fff,#f8fbfb);border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.provider-patient-summary strong,.provider-patient-summary small{overflow-wrap:anywhere;min-width:0;display:block}.provider-patient-summary small{color:var(--muted);margin-top:3px;font-weight:750}.provider-patient-order,.provider-toggle{width:34px;height:34px;color:var(--primary);background:#eaf2f8;border-radius:999px;place-items:center;font-weight:950;display:grid}.provider-pay-status{border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:950}.provider-pay-status.paid{color:#0d5134;background:#d8f3e5}.provider-pay-status.unpaid{color:#7a4b00;background:#fff1c2}.provider-patient-detail{border-top:1px solid var(--line);gap:14px;padding:14px;display:grid}.provider-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.provider-detail-grid>div{border:1px solid var(--line);background:#f7fafb;border-radius:8px;gap:3px;padding:10px;display:grid}.provider-detail-grid span,.provider-document-body span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:900}.provider-detail-grid strong{color:var(--ink);overflow-wrap:anywhere}.provider-documents{gap:10px;display:grid}.provider-document-card{border:1px solid var(--line);background:#f8fbfb;border-radius:8px;padding:0}.provider-document-card summary{color:var(--teal-dark);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;font-weight:850;display:flex}.provider-document-card summary span{color:var(--muted);font-size:.8rem}.provider-document-body{gap:10px;padding:0 12px 12px;display:grid}.provider-document-body>div{gap:5px;display:grid}.provider-document-body pre{color:#18212f;border:1px solid var(--line);white-space:pre-wrap;background:#fff;border-radius:8px;max-height:280px;margin:0;padding:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84rem;line-height:1.45;overflow:auto}.login-footer a:hover{color:var(--teal-dark);text-decoration:underline}.app.dark-mode .login-footer a,.app.dark-mode .login-footer span{color:#a8bac7}.app.dark-mode .login-footer a:hover{color:#d8cabe}.login-footer-secret{color:var(--teal-dark);border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#ffffffbd;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:850;animation:2.6s both footer-secret-rise}.app.dark-mode .login-footer-secret{color:#d8cabe;background:#071727c7;border-color:#d8cabe3d}@keyframes harbor-beam{0%{opacity:0;transform:translate(-120%)}22%{opacity:1}to{opacity:0;transform:translate(120%)}}@keyframes harbor-card-pop{0%{transform:scale(1)}12%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes harbor-reveal{0%{opacity:0;transform:translateY(10px)scale(.98)}14%,78%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.99)}}@keyframes harbor-game-enter{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes employee-stage-enter{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes employee-card-pop{0%{opacity:0;transform:translateY(26px)scale(.86)rotate(-1deg)}62%{opacity:1;transform:translateY(-5px)scale(1.04)rotate(.4deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes employee-name-pulse{0%,to{transform:scale(1)rotate(-.4deg)}50%{transform:scale(1.045)rotate(.4deg)}}@keyframes employee-spin{to{transform:rotate(360deg)}}@keyframes employee-burst-spin{to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes employee-confetti-fall{0%{opacity:0;transform:translateY(-10vh)rotate(0)}12%{opacity:1}to{opacity:.9;transform:translate(8vw,118vh)rotate(720deg)}}@keyframes harbor-wave-scroll{0%{background-position:0 0,0 8px,0 0}to{background-position:260px 0,-180px 8px,0 0}}@keyframes harbor-ship-bob{0%,to{margin-top:0}50%{margin-top:calc(-5px - (var(--wave-level) * 1px))}}@keyframes harbor-cinematic-ship{0%{top:60%;left:14%;transform:translate(-50%,-50%)rotate(-15deg)}14%{top:49%;left:23%;transform:translate(-50%,-50%)rotate(18deg)}29%{top:64%;left:34%;transform:translate(-50%,-50%)rotate(-22deg)}44%{top:45%;left:45%;transform:translate(-50%,-50%)rotate(24deg)}58%{top:62%;left:58%;transform:translate(-50%,-50%)rotate(-18deg)}74%{top:50%;left:69%;transform:translate(-50%,-50%)rotate(10deg)}to{top:54%;left:77%;transform:translate(-50%,-50%)rotate(3deg)}}@keyframes harbor-calm-ship{0%,to{margin-top:0}50%{margin-top:-4px}}@keyframes harbor-threshold-flare{0%{opacity:0;transform:translateY(-50%)scaleY(.3)}28%,72%{opacity:1;transform:translateY(-50%)scaleY(1)}to{opacity:0;transform:translateY(-50%)scaleY(1.1)}}@keyframes harbor-beacon-pulse{0%,to{transform:translate(-50%)scale(1);box-shadow:0 0 24px #fff8dfeb,0 0 72px #d8cabead}50%{transform:translate(-50%)scale(1.12);box-shadow:0 0 34px #fff8df,0 0 120px #d8cabef5}}@keyframes harbor-welcome-arrive{0%{opacity:0;transform:translate(-50%,12px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes footer-secret-rise{0%{opacity:0;transform:translateY(4px)}15%,78%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}.request-account-card{width:min(100%,560px)}.gate-icon{margin-bottom:18px}.gate-logo{background:var(--primary);border-radius:var(--radius);width:min(100%,320px);margin:0 auto 22px;display:block}.gate-card .muted{margin:10px 0 20px}.hint{margin-top:14px;font-size:.84rem}.admin-panel{gap:20px;display:grid}.admin-summary-counts{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.account-request-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;gap:16px;padding:22px;display:grid}.account-request-list{gap:12px;display:grid}.account-request-card{border:1px solid var(--line);border-left:5px solid var(--brand-blue);box-shadow:var(--shadow-soft);background:#fff;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px;display:grid}.account-request-main{gap:5px;min-width:0;display:grid}.account-request-main strong{color:var(--ink);font-size:1.08rem}.account-request-main span,.account-request-main p{color:var(--muted);font-weight:750;line-height:1.35}.account-request-main p{margin-top:4px}.account-request-actions{gap:8px;display:flex}.intake-shell .admin-summary{align-items:center}.intake-grid,.intake-admin-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:start;gap:20px;display:grid}.intake-admin-grid-wide{grid-template-columns:minmax(280px,1fr) minmax(280px,.8fr) minmax(320px,1fr)}.status-count-grid,.audit-list{gap:10px;display:grid}.office-booking-tab{gap:20px;display:grid}.calendar-mode-frame{box-shadow:var(--shadow-soft);border:2px solid #0b355d2e;border-radius:12px;gap:12px;padding:14px;display:grid}.calendar-mode-frame>.calendar{box-shadow:none}.calendar-mode-banner{color:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:12px 14px;display:flex}.calendar-mode-banner span{color:#ffffffc7;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:900}.calendar-mode-banner strong{color:#fff;font-size:1.05rem}.calendar-mode-booking{background:linear-gradient(#eef6fc,#fff);border-color:#0d4f8b57}.calendar-mode-booking .calendar-mode-banner{background:linear-gradient(135deg, var(--primary), #0d4f8b)}.calendar-mode-patient{background:linear-gradient(#eefaf4,#fff);border-color:#1d8a5a57}.calendar-mode-patient .calendar-mode-banner{background:linear-gradient(135deg,#126b47,#1d8a5a)}.office-workspace-tabs{box-shadow:var(--shadow-soft);background:#eaf2f7;border:1px solid #0b355d24;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px;display:grid}.office-workspace-tabs button{color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;gap:4px;padding:14px 16px;display:grid}.office-workspace-tabs:not(.admin-workspace-tabs) button{text-align:center;justify-items:center;min-height:58px}.office-workspace-tabs button.active{color:var(--ink);background:#fff;border-color:#176b7438;box-shadow:0 12px 24px #06203b1f}.office-workspace-tabs span{color:inherit;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900}.office-workspace-tabs:not(.admin-workspace-tabs) span{letter-spacing:.02em;font-size:.92rem}.office-workspace-tabs strong{color:inherit;font-size:1rem}.admin-workspace-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-workspace-tabs button{border-left:5px solid #0000;position:relative;overflow:hidden}.admin-workspace-tabs button:after{content:"";opacity:0;border-radius:999px;height:3px;transition:opacity .16s;position:absolute;inset:auto 12px 8px}.admin-workspace-tabs button.active:after{opacity:1}.admin-workspace-tabs .admin-tab-booking{border-left-color:var(--primary)}.admin-workspace-tabs .admin-tab-schedule{border-left-color:#1d8a5a}.admin-workspace-tabs .admin-tab-payment{border-left-color:#d1941c}.admin-workspace-tabs .admin-tab-booking.active{border-color:#0d4f8b42;box-shadow:0 12px 24px #0d4f8b21}.admin-workspace-tabs .admin-tab-schedule.active{border-color:#1d8a5a42;box-shadow:0 12px 24px #1d8a5a21}.admin-workspace-tabs .admin-tab-payment.active{border-color:#d1941c4d;box-shadow:0 12px 24px #d1941c26}.admin-workspace-tabs .admin-tab-booking:after{background:var(--primary)}.admin-workspace-tabs .admin-tab-schedule:after{background:#1d8a5a}.admin-workspace-tabs .admin-tab-payment:after{background:#d1941c}.office-action-panel{background:linear-gradient(#fff,#f5f9fc);border-color:#0b355d2e}.office-action-list{gap:12px;display:grid}.office-action-card{background:#fff;border:1px solid #c7d5df;border-left:5px solid #d1941c;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px;display:grid;box-shadow:0 12px 26px #06203b1a}.office-action-card>div{gap:6px;min-width:0;display:grid}.office-action-card strong{color:var(--ink);font-size:1.05rem}.office-action-card p,.office-action-card small{color:var(--muted);font-weight:750}.office-action-card small{line-height:1.4}.compact-action-btn{white-space:nowrap;min-width:164px}.office-action-empty{color:#125d3c;background:var(--success-soft);border:1px solid #1d8a5a3d;border-radius:10px;gap:4px;padding:16px;display:grid}.office-action-empty span{color:#306b50;font-weight:750}.office-daily-schedule{background:#f6fbfb;border-color:#126b47 #176b7433 #176b7433;border-top-style:solid;border-top-width:6px}.office-pre-review-zone{border-top:4px solid #0b355d38;gap:16px;margin-top:34px;padding-top:24px;display:grid}.office-zone-heading{color:#fff;background:linear-gradient(135deg, var(--primary), #0b355d);border:1px solid #0b355d33;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex;box-shadow:0 18px 34px #06203b21}.office-zone-heading .eyebrow{color:#ffffffbd}.office-zone-heading h3{color:#fff;margin:0;font-size:1.45rem}.office-zone-heading>span{color:#ffffffd1;text-align:right;font-weight:820}.office-pre-review-zone .date-detail-panel{border-color:#0b355d2e;box-shadow:0 16px 34px #06203b1a}.pre-review-create-panel,.pre-review-upload-panel,.office-pre-review-zone .case-queue-panel{border-left:6px solid var(--primary);background:linear-gradient(#fff,#f5f8fb)}.schedule-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.schedule-state-summary{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.schedule-state-summary span{border:1px solid #0b355d1f;border-radius:999px;align-items:center;gap:6px;padding:8px 11px;font-size:.82rem;font-weight:850;display:inline-flex}.schedule-state-summary strong{font-size:1rem}.schedule-count-approved{color:#0d5134;background:#d8f3e5}.schedule-count-requested{color:#7a4b00;background:#fff3d6}.schedule-count-unassigned{color:#5b6670;background:#edf2f5}.harbor-day-tabs{gap:10px;padding-bottom:3px;display:flex;overflow-x:auto}.harbor-day-tabs button{min-width:150px;color:var(--text);text-align:left;border:1px solid var(--line);box-shadow:var(--shadow-soft);cursor:pointer;background:#fff;border-radius:9px;gap:3px;padding:11px 13px;display:grid}.harbor-day-tabs button.active{color:var(--teal-dark);background:var(--teal-soft);border-color:#176b745c;box-shadow:0 12px 24px #06203b1f}.harbor-day-tabs .schedule-tab-approved{border-left:5px solid var(--success)}.harbor-day-tabs .schedule-tab-requested{color:#6f4c12;background:#fff8e7;border-color:#f6bf266b #f6bf266b #f6bf266b #f6bf26;border-left-style:solid;border-left-width:5px}.harbor-day-tabs .schedule-tab-requested.active{color:#5c3b08;background:#fff0c2;border-color:#e0a919}.harbor-day-tabs .schedule-tab-unassigned{color:#5b6670;background:#f1f5f8;border-color:#cbd6de #cbd6de #cbd6de #8b9aa8;border-left-style:solid;border-left-width:5px}.harbor-day-tabs .schedule-tab-unassigned.active{color:#33414c;background:#e6edf2;border-color:#9aabb8}.harbor-day-tabs span{color:var(--muted);font-size:.86rem;font-weight:760}.selected-day-shell{background:#fff;border:1px solid #176b7433;border-radius:12px;gap:18px;display:grid;overflow:hidden;box-shadow:0 18px 36px #06203b1f}.selected-day-header{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal-dark));justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.selected-day-header.selected-day-requested{color:#4f3306;background:linear-gradient(135deg,#f6bf26,#fff0c2)}.selected-day-header.selected-day-unassigned{color:#fff;background:linear-gradient(135deg,#51606c,#2f3b45)}.selected-day-header .eyebrow{color:#ffffffc2}.selected-day-header h2{color:#fff;letter-spacing:0;margin:2px 0 3px;font-size:2rem}.selected-day-header.selected-day-requested h2,.selected-day-header.selected-day-requested .eyebrow,.selected-day-header.selected-day-requested span:not(.status-badge){color:#4f3306}.selected-day-header span:not(.status-badge){color:#ffffffd1;font-weight:780}.selected-day-header .status-badge{color:#0d5134;background:#d8f3e5;border-color:#ffffff6b}.selected-day-header .schedule-state-requested{color:#5c3b08;background:#fff;border-color:#5c3b0833}.selected-day-header .schedule-state-unassigned{color:#33414c;background:#edf2f5;border-color:#ffffff5c}.daily-schedule-grid{grid-template-columns:1fr;align-items:start;gap:16px;padding:0 18px;display:grid}.day-upload-dropzone{min-height:150px;color:var(--teal-dark);text-align:center;cursor:pointer;box-shadow:var(--shadow-soft);background:linear-gradient(#fff,#eef8f7);border:2px dashed #176b746b;border-radius:12px;place-items:center;gap:8px;margin:18px;padding:22px;transition:border-color .16s,background .16s,transform .16s;display:grid;position:relative}.day-upload-dropzone:hover,.day-upload-dropzone.dragging{background:var(--teal-soft);border-color:var(--teal-dark);transform:translateY(-1px)}.day-upload-dropzone.uploading{cursor:wait;opacity:.78}.day-upload-dropzone input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.day-upload-dropzone strong{color:var(--ink);font-size:1.08rem}.day-upload-dropzone span:last-of-type{max-width:680px;color:var(--muted);font-size:.92rem;font-weight:760;line-height:1.45}.day-upload-message{color:var(--teal-dark);margin:-8px 18px 18px;font-weight:800}.pre-review-upload-panel .day-upload-dropzone,.pre-review-upload-panel .day-upload-message{margin:0}.pre-review-assign-form{border:1px solid #176b743d;border-left:5px solid var(--teal-dark);background:#f4fbfb;border-radius:9px;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.schedule-day-panel,.schedule-patient-form,.patient-case-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:10px;gap:14px;padding:15px;display:grid}.schedule-patient-form-below{margin:0 18px 18px}.patient-schedule-section{background:#f7fbfb;border-top:1px solid #176b742e;gap:12px;padding:18px;display:grid}.patient-schedule-head{justify-content:space-between;align-items:center;gap:12px;padding:0 2px 4px;display:flex}.patient-schedule-head h3{color:var(--ink);margin:2px 0 0;font-size:1.3rem}.schedule-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.schedule-meta-grid>div{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:4px;padding:11px;display:grid}.schedule-meta-grid span,.schedule-meta-grid label,.day-checklist-grid span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.schedule-day-form{gap:12px;display:grid}.daily-start-box{transition:border-color .18s,background .18s,box-shadow .18s}.daily-start-box:has(.daily-start-select option[value=""]:checked){background:#fde1dc;border-color:#d15248;box-shadow:0 0 0 3px #d152481f}.daily-start-box:has(.daily-start-select option[value=""]:checked) label{color:#84221d}.daily-start-box .daily-start-select{width:100%;margin-top:2px}.schedule-day-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.day-checklist-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.day-checklist-grid>div{border:1px solid var(--line);border-radius:9px;gap:4px;padding:10px;display:grid}.day-checklist-grid .complete{color:#125d3c;background:var(--success-soft);border-color:#1d8a5a3d}.day-checklist-grid .needs-work{color:#7a4b00;background:#fff3d6;border-color:#f6bf266b}.compact-heading{gap:2px}.patient-case-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.patient-upload-option{color:var(--teal-dark);background:var(--teal-soft);border:1px dashed #176b746b;border-radius:9px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;padding:12px;display:grid}.patient-upload-option .upload-icon{color:#fff;background:var(--teal-dark);border-radius:9px;place-items:center;width:42px;height:42px;font-size:1.35rem;font-weight:900;display:inline-grid}.patient-upload-option>div{gap:3px;display:grid}.patient-upload-option span:last-child{color:var(--muted);font-size:.88rem;font-weight:750;line-height:1.35}.full-width-field{grid-column:1/-1}.patient-case-list{border-left:3px solid #176b742e;gap:12px;padding-left:14px;display:grid}.patient-case-head{grid-template-columns:minmax(0,1fr) auto 36px;align-items:center;gap:12px;width:100%;display:grid}.patient-case-summary-button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) minmax(220px,auto) minmax(190px,auto);align-items:center;gap:12px;padding:0;display:grid}.patient-mini-status-row{grid-template-columns:repeat(4,minmax(48px,1fr));align-items:center;gap:6px;min-width:0;display:grid}.patient-mini-status{text-align:center;border:1px solid #0b355d1f;border-radius:7px;gap:1px;min-width:0;padding:5px 6px;display:grid}.patient-mini-status span{letter-spacing:0;text-transform:uppercase;font-size:.62rem;font-weight:900;line-height:1}.patient-mini-status strong{font-size:.68rem;font-weight:950;line-height:1.05}.patient-mini-done{color:#0d5134;background:#d8f3e5;border-color:#32a06a}.patient-mini-todo{color:#6f4c12;background:#fff0c2;border-color:#e0a919}.patient-mini-blocked{color:#84221d;background:#fde1dc;border-color:#d15248}.patient-upload-quick-btn{white-space:nowrap;min-height:38px}.patient-case-main,.patient-case-next{gap:4px;min-width:0;display:grid}.patient-case-main strong{color:var(--ink);font-size:1.08rem}.patient-case-main span,.patient-case-next small{color:var(--muted);font-weight:760}.patient-contact-preview{color:#7a4b00;overflow-wrap:anywhere;font-size:.84rem;font-weight:850}.patient-case-next{text-align:right;justify-items:end}.patient-case-toggle{width:32px;height:32px;color:inherit;cursor:pointer;background:#ffffffb8;border:1px solid;border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.patient-case-body{border-top:1px solid #06203b1a;gap:14px;padding-top:13px;display:grid}.patient-move-panel{background:#f4f8fb;border:1px solid #0b355d24;border-left:5px solid #8b9aa8;border-radius:9px;grid-template-columns:minmax(0,1fr) minmax(220px,.45fr);align-items:center;gap:12px;padding:12px;display:grid}.patient-move-panel>div{gap:3px;display:grid}.patient-move-panel strong{color:var(--ink)}.patient-move-panel span{color:var(--muted);font-size:.88rem;font-weight:750;line-height:1.35}.patient-move-panel select{width:100%}.patient-next-badge{border:1px solid;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:28px;padding:5px 10px;font-size:.82rem;font-weight:900;display:inline-flex}.patient-case-card{border-left-width:7px}.patient-case-list .patient-case-card{color:var(--ink);background:linear-gradient(#fff,#fbfdff);border-color:#0b355d29;border-left-width:8px;border-radius:12px;box-shadow:0 12px 26px #06203b1a}.patient-case-documents,.patient-next-documents{color:#7a4b00;background:#fff0c2;border-color:#e0a919}.patient-case-info,.patient-next-info,.patient-case-payment,.patient-next-payment{color:#81420f;background:#ffe5cb;border-color:#e28533}.patient-case-review,.patient-next-review{color:#0b5575;background:#dff3fb;border-color:#2d94b6}.patient-case-blocked,.patient-next-blocked{color:#84221d;background:#fde1dc;border-color:#d15248}.patient-case-complete,.patient-next-complete{color:#0d5134;background:#d8f3e5;border-color:#32a06a}.patient-case-list .patient-case-card.patient-case-documents{border-left-color:#f6bf26}.patient-case-list .patient-case-card.patient-case-info,.patient-case-list .patient-case-card.patient-case-payment{border-left-color:#e28533}.patient-case-list .patient-case-card.patient-case-review{border-left-color:#2d94b6}.patient-case-list .patient-case-card.patient-case-blocked{border-left-color:#d15248}.patient-case-list .patient-case-card.patient-case-complete{border-left-color:var(--success)}.office-patient-summary-strip{grid-template-columns:minmax(210px,1fr) minmax(250px,.92fr) 36px}.office-mini-status-row{grid-template-columns:repeat(4,minmax(42px,1fr))}.office-patient-next-line{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.office-patient-next-line .patient-next-badge{min-height:24px;padding:4px 9px;font-size:.74rem}.patient-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.office-patient-status-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.prelim-triage-verdict,.office-next-step-panel{color:var(--ink);border:1px solid var(--line);border-left:6px solid var(--primary);background:#fff;border-radius:9px;gap:3px;padding:12px 14px;display:grid}.prelim-triage-verdict span,.office-next-step-panel span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:900}.prelim-triage-verdict strong,.office-next-step-panel strong{font-size:1.05rem}.prelim-triage-verdict p,.office-next-step-panel p{color:var(--muted);margin:0;font-weight:760}.prelim-triage-verdict.patient-case-documents,.office-next-step-panel.patient-case-documents{background:#fff8dd;border-left-color:#f6bf26}.prelim-triage-verdict.patient-case-info,.prelim-triage-verdict.patient-case-payment,.office-next-step-panel.patient-case-info,.office-next-step-panel.patient-case-payment{background:#fff2e7;border-left-color:#e28533}.prelim-triage-verdict.patient-case-review,.office-next-step-panel.patient-case-review{background:#eaf8fc;border-left-color:#2d94b6}.prelim-triage-verdict.patient-case-blocked,.office-next-step-panel.patient-case-blocked{background:#fff0ee;border-left-color:#d15248}.prelim-triage-verdict.patient-case-complete,.office-next-step-panel.patient-case-complete{border-left-color:var(--success);background:#ecfaf2}.patient-primary-actions{align-items:center}.patient-details-panel{background:#f8fbfc;border:1px solid #176b7433;border-radius:9px;gap:9px;padding:12px;display:grid}.patient-details-panel>strong{color:var(--ink)}.patient-details-panel>span{color:var(--muted);font-weight:750}.compact-patient-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.compact-patient-fields .form-group{gap:5px}.compact-patient-fields input,.compact-patient-fields select,.compact-patient-fields textarea{min-height:38px}.priority-required-field{background:#fff;border:1px solid #0000;border-radius:8px;padding:8px;transition:border-color .18s,background .18s,box-shadow .18s}.priority-required-field.field-missing{background:#fde1dc;border-color:#d15248;box-shadow:0 0 0 3px #d152481f}.priority-required-field.field-missing label{color:#84221d}.patient-amount-field{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:center;min-height:62px;padding:9px 10px;display:grid}.patient-amount-field span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:850}.patient-amount-field strong{color:var(--ink)}.patient-amount-field small{color:var(--muted);font-weight:760}.patient-detail-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.patient-details-review{margin-bottom:0}.missing-info-notice{color:#6f4c12;background:#fff3d6;border:1px solid #f6bf2675;border-left:5px solid #d1941c;border-radius:9px;gap:4px;padding:11px 12px;display:grid}.missing-info-notice strong{color:#5c3b08}.missing-info-notice span{font-weight:780;line-height:1.35}.missing-input{background:#fffaf0;border-color:#d1941c;box-shadow:0 0 0 3px #d1941c1a}.daily-start-select:has(option[value=""]:checked){color:#84221d;background:#fde1dc;border-color:#d15248;box-shadow:0 0 0 3px #d152481f}.patient-case-edit-form{border:1px solid var(--line);background:#f8fbfc;border-radius:9px;gap:12px;padding:12px;display:grid}.extracted-info-panel{background:linear-gradient(#f8fbfc,#eef8f7);border:1px solid #176b743d;border-radius:9px;gap:10px;padding:13px;display:grid}.extracted-info-panel>span{color:var(--muted);font-weight:750}.extraction-failed{color:#8f2d27;background:var(--danger-soft);border-color:#c4473d47}.extracted-clinical-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.extracted-triage-grid{grid-template-columns:1fr}.extracted-triage-grid>div{border-left:5px solid var(--primary)}.extracted-clinical-grid>div{border:1px solid var(--line);background:#ffffffc2;border-radius:8px;gap:4px;padding:10px;display:grid}.extracted-clinical-grid span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.extracted-clinical-grid strong{color:var(--ink);line-height:1.35}.extracted-triage-grid strong{font-size:1rem}.extracted-notes{color:var(--muted);gap:6px;font-weight:730;display:grid}.extracted-notes p{margin:0}.danger-action{color:#8f2d27}.office-portal-intro h2{font-size:2rem}.intake-case-card{background:#fff}.case-queue-panel{gap:12px}.office-pre-review-zone .case-queue-panel{margin-top:2px}.collapsible-panel.collapsed{gap:0}.collapsible-panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.collapsible-title{min-width:0;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:inline-flex}.collapsible-title>span:first-child{width:28px;height:28px;color:var(--teal-dark);background:var(--teal-soft);border:1px solid #176b7438;border-radius:7px;flex:none;place-items:center;font-size:1.1rem;font-weight:900;display:inline-grid}.collapsible-title>span:last-child{gap:3px;min-width:0;display:grid}.collapsible-title strong{color:var(--text);font-size:1.12rem}.collapsible-title small{color:var(--muted);font-size:.9rem;font-weight:600}.queue-total{color:var(--teal-dark);background:var(--teal-soft);border-radius:999px;flex:none;padding:6px 9px;font-size:.9rem;font-weight:800}.case-section-head{gap:12px;display:grid}.case-filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.case-filter-tabs button{min-height:34px;color:var(--text);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;align-items:center;gap:7px;padding:7px 10px;font-weight:800;display:inline-flex}.case-filter-tabs button.active{color:var(--teal-dark);background:var(--teal-soft);border-color:#176b7447}.case-filter-tabs strong{min-width:22px;height:22px;color:inherit;background:#ffffffc7;border-radius:999px;place-items:center;padding:0 6px;font-size:.78rem;display:inline-grid}.case-queue-list{gap:10px;display:grid}.case-queue-row{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:9px;transition:border-color .16s,box-shadow .16s,transform .16s;overflow:hidden}.case-queue-row:hover{border-color:#176b7447;transform:translateY(-1px);box-shadow:0 14px 28px #06203b1a}.case-row-summary{width:100%;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:minmax(180px,1fr) minmax(110px,auto) minmax(150px,auto);align-items:center;gap:12px;padding:14px;display:grid}.case-row-summary:hover{background:linear-gradient(90deg,#dff2f080,#0000)}.case-row-main{gap:3px;min-width:0;display:grid}.case-row-main strong,.case-row-main span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-row-main span,.case-row-date{color:var(--muted);font-size:.9rem;font-weight:700}.case-row-detail{border-top:1px solid var(--line);background:#fbfdfc;gap:12px;padding:0 14px 14px;display:grid}.case-row-detail>p:first-child{margin-top:12px}.status-badge{border:1px solid var(--line);border-radius:999px;align-items:center;width:fit-content;min-height:30px;padding:6px 10px;font-size:.78rem;font-weight:850;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff75}.status-please_upload_patient_info{color:#6f4c12;background:#fff3d6;border-color:#f6bf266b}.status-awaiting_review{color:var(--primary);background:var(--primary-soft);border-color:#176b7438}.status-ok_for_anesthesia{color:#125d3c;background:var(--success-soft);border-color:#1d8a5a3d}.status-more_information_required{color:#7a4b00;background:#fff3d6;border-color:#f6bf266b}.status-not_acceptable_for_anesthesia{color:#8f2d27;background:var(--danger-soft);border-color:#c4473d3d}.status-needs_medical_history{color:#6f4c12;background:#fff3d6;border-color:#f6bf266b}.status-approved_for_office_anesthesia{color:#125d3c;background:var(--success-soft);border-color:#1d8a5a3d}.status-not_eligible_for_office_anesthesia{color:#8f2d27;background:var(--danger-soft);border-color:#c4473d3d}.booking-status-pending,.booking-status-possibly{color:#7a4b00;background:#fff3d6;border-color:#f6bf266b}.booking-status-booked{color:#125d3c;background:var(--success-soft);border-color:#1d8a5a3d}.booking-status-available,.booking-status-unavailable,.booking-status-not_open{color:#8f2d27;background:var(--danger-soft);border-color:#c4473d3d}.booking-intake-card{gap:12px}.booking-status-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.booking-status-single{grid-template-columns:minmax(0,1fr)}.booking-status-box{background:var(--surface-strong);border:1px solid var(--line);border-radius:9px;gap:4px;padding:12px 13px;display:grid;box-shadow:inset 0 0 0 1px #ffffff70}.booking-status-pair span{color:inherit;opacity:.76;text-transform:uppercase;font-size:.78rem;font-weight:850}.booking-status-pair strong{color:inherit;font-size:.95rem}.booking-status-box.booking-status-pending,.booking-status-box.booking-status-possibly,.booking-status-box.patient-status-needs_medical_history,.booking-status-box.patient-status-please_upload_patient_info,.booking-status-box.patient-status-awaiting_review,.booking-status-box.patient-status-more_information_required{color:#6f4c12;background:#fff0c2;border-color:#e0a919}.booking-status-box.booking-status-booked,.booking-status-box.patient-status-ok_for_anesthesia,.booking-status-box.patient-status-approved_for_office_anesthesia{color:#0d5134;background:#d8f3e5;border-color:#32a06a}.booking-status-box.booking-status-available,.booking-status-box.booking-status-unavailable,.booking-status-box.booking-status-not_open,.booking-status-box.patient-status-not_acceptable_for_anesthesia,.booking-status-box.patient-status-not_eligible_for_office_anesthesia{color:#84221d;background:#fde1dc;border-color:#d15248}.booking-card-actions{flex-wrap:wrap;gap:10px;display:flex}.document-review-panel{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:7px;gap:6px;padding:12px;display:grid}.document-review-panel>div{gap:4px;display:grid}.document-review-panel span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.document-list-panel{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:linear-gradient(#fff,#f7fbfa);border-radius:10px;gap:12px;margin-top:8px;padding:16px;display:grid}.document-list-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.document-list-head p{margin:0}.document-list-head>div{gap:2px;display:grid}.document-list-head strong{font-size:1rem}.document-list-head span{color:var(--muted);text-transform:uppercase;font-size:.86rem;font-weight:800}.compact-document-list{margin-top:2px}.document-table{gap:10px;display:grid}.document-row{border:1px solid #2430431f;border-left:4px solid var(--primary);background:#fff;border-radius:9px;gap:10px;padding:14px;display:grid;box-shadow:0 8px 18px #06203b0d}.document-row-working,.document-workflow-row.document-row-working{border-color:#f6bf2675;box-shadow:0 10px 24px #f6bf2629}.document-row-main{grid-template-columns:minmax(180px,1fr) minmax(220px,auto) auto;align-items:center;gap:12px;display:grid}.document-file-name{gap:3px;min-width:0;display:grid}.document-file-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.document-file-name span{color:var(--muted);font-size:.85rem;font-weight:750}.document-status-track{grid-template-columns:repeat(2,minmax(92px,1fr));gap:8px;display:grid}.document-status-chip{color:#4d5d6d;background:#eef2f5;border:1px solid #5d6d7e38;border-radius:8px;gap:2px;min-height:48px;padding:9px 11px;display:grid}.document-status-chip.status-complete{color:#266447;background:#e4f6ec;border-color:#28805242}.document-status-chip.status-pending,.document-status-chip.status-processing{color:#6f4c12;background:#fff3d6;border-color:#f6bf2661}.busy-action{cursor:wait}.working-indicator{color:#6f4c12;background:#fff3d6;border:1px solid #f6bf266b;border-radius:8px;margin:0;padding:10px 12px 10px 36px;font-size:.9rem;font-weight:850;position:relative}.working-indicator:before{content:"";border:2px solid #6f4c1240;border-top-color:#6f4c12;border-radius:999px;width:13px;height:13px;margin-top:-7px;animation:.8s linear infinite working-spin;position:absolute;top:50%;left:12px}@keyframes working-spin{to{transform:rotate(360deg)}}.document-status-chip.status-failed{color:#84221d;background:#fde1dc;border-color:#d1524861}.document-status-chip span{color:inherit;opacity:.72;text-transform:uppercase;font-size:.72rem;font-weight:850}.document-status-chip strong{color:inherit;font-size:.88rem}.document-action-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.document-detail-strip{border-top:1px solid #2430431a;gap:10px;padding-top:10px;display:grid}.document-detail-strip details{gap:8px;display:grid}.document-detail-strip summary{cursor:pointer;color:var(--teal-dark);font-weight:850}.document-detail-strip pre{color:#18212f;border:1px solid var(--line);white-space:pre-wrap;background:#fff;border-radius:8px;max-height:260px;margin:0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;line-height:1.5;overflow:auto}.ai-summary-card{border:1px solid #176b742e;border-left:3px solid var(--primary);box-shadow:none;background:#fbfdfc;border-radius:8px;gap:0;padding:10px 12px;display:grid}.ai-summary-card.ai-summary-success{background:#eaf8f0;border-color:#28805242 #28805242 #28805242 #2f8f5d}.ai-summary-card.ai-summary-warning{background:#fff4d7;border-color:#e0a9195c #e0a9195c #e0a9195c #d79a00}.ai-summary-card.ai-summary-danger{background:#fde7e2;border-color:#d1524857 #d1524857 #d1524857 #d15248}.ai-summary-row{border-bottom:1px solid #24304314;grid-template-columns:168px minmax(0,1fr);align-items:baseline;gap:10px;padding:6px 0;display:grid}.ai-summary-row:last-child{border-bottom:0}.ai-summary-row strong{color:var(--teal-dark);font-size:.78rem;font-weight:900}.ai-summary-row span{color:#243043;font-weight:680;line-height:1.35}.resource-list{gap:10px;display:grid}.resource-row{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;padding:13px;display:flex}.resource-row>div{gap:3px;display:grid}.resource-row span{color:var(--muted);font-size:.88rem;font-weight:750}.table-actions select{min-height:40px;color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;padding:8px 10px;font-weight:750}.audit-row{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:9px;gap:4px;padding:13px;display:grid}.audit-row span{color:var(--muted);font-size:.78rem;font-weight:800}.audit-row strong{color:var(--primary)}.audit-row p{color:var(--muted)}.portal-account-list,.portal-account-section{gap:10px;min-width:0;display:grid}.portal-accounts-panel{width:100%}.portal-account-section{padding-top:4px}.portal-account-section+.portal-account-section{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}.portal-account-item{grid-template-columns:minmax(92px,.42fr) minmax(220px,1.3fr) minmax(180px,1fr) auto auto;align-items:center}.portal-empty-row{color:var(--muted)}.portal-account-type{width:fit-content;color:var(--primary);background:var(--primary-soft);text-transform:uppercase;border:1px solid #06203b1f;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900}.portal-account-item span,.portal-account-item strong{overflow-wrap:anywhere;min-width:0}.disabled-row{opacity:.68}.compact-password-form{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-password-form .primary-btn{grid-column:1/-1}.internal-user-list{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}.modal-overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#06203b75;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--line-strong);border-radius:12px;width:min(100%,520px);max-height:calc(100vh - 48px);padding:24px;overflow:auto;box-shadow:0 24px 70px #06203b4d}.modal-buttons{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.resend-info-modal{border-top:4px solid var(--primary)}.resend-info-message{color:var(--muted);margin:0;font-size:1rem;line-height:1.55}.resend-info-message strong{color:var(--ink)}.resend-info-actions button{min-width:92px}.upload-modal{width:min(100%,620px)}.upload-dropzone{text-align:center;cursor:pointer;background:linear-gradient(#fff,#f6fbfa);border:2px dashed #176b7457;border-radius:10px;place-items:center;gap:8px;min-height:190px;padding:24px;transition:border-color .16s,background .16s,transform .16s;display:grid}.upload-dropzone:hover,.upload-dropzone.dragging{background:var(--teal-soft);border-color:var(--teal);transform:translateY(-1px)}.upload-dropzone input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.upload-icon{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal));border-radius:999px;place-items:center;width:42px;height:42px;font-size:1.4rem;font-weight:900;display:inline-grid}.upload-dropzone strong{color:var(--ink);font-size:1.05rem}.upload-dropzone span:last-of-type{color:var(--muted);font-size:.9rem;font-weight:700}.upload-file-list{gap:10px;display:grid}.upload-file-row{background:var(--surface-strong);border:1px solid var(--line);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.upload-file-row>div{gap:3px;min-width:0;display:grid}.upload-file-row strong{overflow-wrap:anywhere}.upload-file-row span{color:var(--muted);font-size:.85rem;font-weight:750}.admin-calendar-section{gap:14px;display:grid}.admin-tools-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;display:grid}.admin-tool-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;align-content:start;gap:16px;padding:24px;display:grid}.tool-card-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.tool-card-heading h3{font-size:1.2rem}.health-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.health-item,.calendar-health-row{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.health-item span,.calendar-health-row span{color:var(--muted);font-size:.86rem;font-weight:750}.health-item strong,.calendar-health-row strong{text-align:right;font-size:.88rem}.status-ok{color:#125d3c}.status-alert{color:#8f2d27}.calendar-health-list,.password-form{gap:10px;display:grid}.calendar-health-row span{overflow-wrap:anywhere;min-width:0}.tool-message{color:var(--primary);font-weight:800}.date-detail-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;gap:14px;padding:24px;display:grid}.admin-mode-panel{border-top-width:6px;position:relative;overflow:hidden}.admin-mode-booking{border-top-color:var(--primary)}.admin-mode-schedule{background:linear-gradient(#f3fbf7,#fff);border-top-color:#1d8a5a}.section-heading{padding:0 4px}.collapsible-heading{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:2px 4px 8px;display:flex}.collapsible-heading:hover h3,.collapsible-heading:focus-visible h3{color:var(--teal-dark)}.admin-daily-date-header{color:#fff;background:linear-gradient(135deg, var(--primary), var(--teal-dark));border:1px solid #176b7438;border-radius:10px;align-items:center;min-height:142px;padding:22px 24px;box-shadow:0 18px 36px #06203b1f}.admin-date-header-booking{background:linear-gradient(135deg, var(--primary), #0d4f8b);border-color:#0d4f8b42}.admin-date-header-schedule{background:linear-gradient(135deg,#126b47,#1d8a5a);border-color:#1d8a5a47}.admin-daily-date-header .eyebrow{color:#ffffffc2}.admin-daily-date-header h3{color:#fff;letter-spacing:0;margin:3px 0 4px;font-size:2rem}.admin-daily-date-header:hover h3,.admin-daily-date-header:focus-visible h3{color:#fff}.admin-daily-date-header .collapse-indicator{color:#0b355d;background:#edf6fb;border-color:#ffffff8a;box-shadow:0 10px 22px #06203b2e}.collapsible-heading:focus-visible{outline-offset:4px;border-radius:8px;outline:3px solid #176b7438}.collapse-indicator{min-width:58px;min-height:30px;color:var(--primary);border:1px solid var(--line);text-transform:uppercase;background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:5px 9px;font-size:.75rem;font-weight:900;display:inline-flex}.section-heading h3{color:var(--ink);font-size:1.25rem}.calendar-source-controls{background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px;padding:12px;display:flex}.calendar-source-controls>span{color:var(--muted);font-size:.86rem;font-weight:800}.calendar-source-toggle{min-height:34px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:7px;padding:7px 10px;font-size:.88rem;font-weight:800;display:inline-flex}.calendar-source-toggle input{width:16px;height:16px;accent-color:var(--primary)}.calendar-source-dot{border-radius:999px;width:10px;height:10px}.calendar-source-dot.source-harbor{background:#4285f4}.calendar-source-dot.source-info{background:#9e69af}.calendar-source-dot.source-tom{background:#e67c73}.calendar-source-dot.source-believe{background:#f9ab00}.calendar-source-dot.source-others{background:#7cb342}.calendar-source-badge{border:1px solid var(--line);border-radius:999px;width:fit-content;padding:3px 7px;font-size:.74rem;font-weight:850;display:inline-flex}.calendar-source-badge.source-harbor{color:#174ea6;background:#e8f0fe;border-color:#8ab4f8}.calendar-source-badge.source-info{color:#6b367c;background:#f4e8f8;border-color:#c89bd4}.calendar-source-badge.source-tom{color:#8f2d27;background:#fde7e4;border-color:#e67c73}.calendar-source-badge.source-believe{color:#7a4b00;background:#fff3d6;border-color:#f9ab00}.calendar-source-badge.source-others{color:#3f6212;background:#edf7df;border-color:#7cb342}.calendar-source-badge.source-other{color:var(--primary);border-color:var(--line-strong);background:#ece6dd}.summary-pill{text-align:center;background:linear-gradient(180deg, #fff, var(--teal-soft));min-width:104px;box-shadow:var(--shadow-soft);border:1px solid #176b7438;border-radius:10px;padding:12px 16px;display:grid}.summary-pill strong{color:var(--teal-dark);font-size:1.65rem;line-height:1}.summary-pill span{color:var(--muted);font-size:.82rem;font-weight:750}.date-booking-list{gap:14px;display:grid}.calendar-event-group{gap:10px;display:grid}.calendar-event-group h4{color:var(--primary);margin:0;font-size:.95rem}.date-booking-card{border:1px solid #c7d5df;border-left:5px solid var(--primary);background:linear-gradient(#fff,#f4f8fb);border-radius:10px;gap:12px;padding:16px;display:grid;box-shadow:0 14px 30px #06203b1f}.date-booking-card.collapsed{gap:10px}.date-booking-card:hover{border-color:#9fb6c9;box-shadow:0 18px 34px #06203b26}.calendar-event-card{background:var(--primary-soft);border-color:#06203b38}.calendar-event-description{white-space:pre-line}.calendar-event-link{color:var(--primary);font-weight:800;text-decoration:none}.calendar-event-link:hover{text-decoration:underline}.date-booking-card p{color:var(--muted)}.assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.direct-harbor-day-form{border:1px solid #0d4f8b38;border-left:6px solid var(--primary);box-shadow:var(--shadow-soft);background:linear-gradient(#fff,#f4f8fb);border-radius:10px;gap:14px;padding:16px;display:grid}.direct-harbor-day-form h4{color:var(--ink);margin:2px 0 4px;font-size:1.08rem}.direct-harbor-day-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.admin-daily-schedules{gap:18px;display:grid}.admin-daily-schedules h4,.admin-daily-office-head h4{color:var(--ink);margin:2px 0 4px;font-size:1.1rem}.admin-daily-office-card{background:#fff;border:1px solid #176b7447;border-top:5px solid #1d8a5a;border-radius:12px;gap:14px;padding:0;display:grid;overflow:hidden;box-shadow:0 18px 36px #06203b1f}.admin-daily-office-head{color:#fff;background:linear-gradient(135deg,#126b47,#1d8a5a);justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;display:flex}.admin-daily-office-head .eyebrow{color:#ffffffc2}.admin-daily-office-head h4{color:#fff;font-size:1.42rem}.admin-daily-office-head .status-badge{color:#0d5134;background:#d8f3e5;border-color:#ffffff6b}.admin-daily-office-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.header-add-patient-btn{min-height:42px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #ffffff94;border-radius:9px;padding:10px 15px;font-weight:900;box-shadow:0 10px 20px #06203b29}.header-add-patient-btn:hover,.header-add-patient-btn:focus-visible{color:#fff;background:var(--teal-dark);outline-offset:2px;outline:2px solid #ffffffa3}.admin-daily-office-head span:not(.status-badge){color:#ffffffd1;font-weight:760}.admin-daily-office-card>:not(.admin-daily-office-head){margin-left:16px;margin-right:16px}.admin-daily-office-card>:last-child{margin-bottom:16px}.admin-daily-office-card>.admin-add-patient-form{order:1}.admin-daily-office-card>.admin-day-edit-form{order:2}.admin-daily-office-card>.admin-day-checklist{order:3}.admin-daily-office-card>.pre-review-assign-row{order:4}.admin-daily-office-card>.admin-patient-list{order:5}.payment-worklist-panel{gap:16px;display:grid}.payment-worklist-hero{color:#fff;background:linear-gradient(135deg,#8a5a00,#d1941c);border:1px solid #d1941c4d;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex;box-shadow:0 18px 36px #06203b1f}.payment-worklist-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.payment-worklist-hero .eyebrow,.payment-worklist-hero span{color:#ffffffc7}.payment-worklist-hero h3{color:#fff;margin:3px 0 4px;font-size:2rem}.payment-worklist-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.payment-worklist-counts>div{box-shadow:var(--shadow-soft);background:#fffaf0;border:1px solid #d1941c47;border-radius:10px;gap:4px;padding:14px 16px;display:grid}.payment-worklist-counts span,.payment-worklist-main span,.payment-worklist-main small{color:var(--muted);font-size:.82rem;font-weight:800}.payment-worklist-counts strong{color:var(--ink);font-size:1.5rem}.payment-worklist{gap:12px;display:grid}.empty-state-panel{color:var(--muted);text-align:center;background:#fff;border:1px dashed #176b7447;border-radius:10px;gap:4px;padding:22px;display:grid}.empty-state-panel strong{color:var(--ink)}.payment-worklist-card{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #176b7433;border-left:7px solid #f0b429;border-radius:10px;gap:14px;padding:16px;display:grid}.payment-worklist-card.payment-status-not_sent{border-left-color:#d15248}.payment-worklist-card.payment-status-sent,.payment-worklist-card.payment-status-unpaid{border-left-color:#f0b429}.payment-worklist-main{grid-template-columns:minmax(220px,1.25fr) minmax(130px,.7fr) minmax(220px,1fr) minmax(130px,.7fr);align-items:center;gap:14px;display:grid}.payment-worklist-main>div{gap:4px;min-width:0;display:grid}.payment-worklist-main strong,.payment-worklist-main small{overflow-wrap:anywhere;min-width:0}.payment-worklist-actions{border-top:1px solid #2430431a;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:12px;display:flex}.payment-link-action{text-decoration:none}.admin-day-checklist{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-day-edit-form{background:#f6fbfb;border:1px solid #1d8a5a2e;border-radius:9px;grid-template-columns:minmax(170px,.8fr) 140px minmax(180px,1fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.pre-review-assign-row{border:1px solid #0d4f8b33;border-left:6px solid var(--primary);background:#eef6fc;border-radius:9px;grid-template-columns:minmax(0,1fr) minmax(240px,.55fr);align-items:center;gap:12px;padding:12px;display:grid}.pre-review-assign-row>div{gap:3px;display:grid}.pre-review-assign-row span{color:var(--muted);font-weight:740}.admin-add-patient-form{box-shadow:var(--shadow-soft);background:linear-gradient(#fff,#f3fbf7);border:1px solid #1d8a5a2e;border-left:6px solid #1d8a5a;border-radius:10px;grid-template-columns:minmax(220px,1.2fr) repeat(4,minmax(120px,1fr)) auto;align-items:end;gap:12px;padding:14px;display:grid}.admin-add-patient-heading{align-self:center;gap:3px;display:grid}.admin-add-patient-heading strong{color:var(--ink);font-size:1rem}.admin-add-patient-heading span,.admin-add-patient-form label span{color:var(--muted);font-size:.78rem;font-weight:850}.admin-add-patient-form label{gap:6px;min-width:0;display:grid}.admin-add-patient-form input,.admin-add-patient-form select{width:100%}.admin-add-patient-notes{grid-column:span 2}.admin-patient-list{background:#f3fbf7;border:1px solid #1d8a5a2e;border-radius:10px;gap:16px;padding:14px;display:grid}.admin-patient-row{background:linear-gradient(#fff,#fbfdff);border:1px solid #0b355d29;border-left:8px solid #f6bf26;border-radius:12px;grid-template-columns:1fr;align-items:center;gap:12px;padding:12px;display:grid;position:relative;box-shadow:0 12px 26px #06203b1a}.admin-patient-row.patient-ready,.admin-patient-row.patient-severity-success{border-left-color:var(--success)}.admin-patient-row.patient-needs-work,.admin-patient-row.patient-severity-warning{border-left-color:#f6bf26}.admin-patient-row.patient-severity-danger{border-left-color:#d15248}.admin-patient-row+.admin-patient-row{margin-top:2px}.admin-patient-summary-strip{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(210px,1fr) minmax(300px,1.1fr) 36px;align-items:center;gap:12px;padding:0;display:grid}.admin-mini-status-row{grid-template-columns:repeat(5,minmax(42px,1fr))}.admin-patient-toggle{place-self:center end}.admin-patient-identity{align-content:start;gap:6px;min-width:0;display:grid}.admin-patient-number{color:var(--primary);text-transform:uppercase;background:#eaf2f8;border:1px solid #0b355d24;border-radius:999px;justify-self:start;padding:4px 9px;font-size:.74rem;font-weight:900}.admin-patient-identity strong{color:var(--ink);font-size:1.22rem;line-height:1.15}.admin-patient-identity span,.admin-patient-identity small{color:var(--muted);font-weight:740}.admin-patient-contact-preview{color:#7a4b00;overflow-wrap:anywhere;font-weight:850}.admin-patient-statuses{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-patient-contact-strip{background:#fffaf0;border:1px solid #f6bf2657;border-radius:9px;grid-column:1/-1;grid-template-columns:minmax(180px,.7fr) repeat(4,minmax(0,1fr));gap:10px;padding:12px;display:grid}.admin-patient-contact-strip>div{gap:4px;min-width:0;display:grid}.admin-patient-contact-heading{border-right:1px solid #f6bf2657;padding-right:10px}.admin-patient-contact-strip span{color:#7a4b00;text-transform:uppercase;font-size:.75rem;font-weight:900}.admin-patient-contact-strip strong{color:var(--ink);overflow-wrap:anywhere;line-height:1.25}.admin-patient-control-form{background:#f3f8fb;border:1px solid #176b7429;border-radius:9px;grid-column:1/-1;grid-template-columns:minmax(120px,.75fr) minmax(110px,.55fr) minmax(190px,1.05fr) minmax(130px,.7fr) minmax(130px,.7fr) auto;align-items:end;gap:10px;margin-top:2px;padding:14px;display:grid}.admin-patient-control-form label{gap:5px;display:grid}.admin-patient-control-form label span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.admin-patient-control-form input,.admin-patient-control-form select{width:100%}.admin-patient-quick-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.admin-patient-row .document-list-panel{border-color:#0b355d24;grid-column:1/-1;margin-top:0;box-shadow:0 8px 18px #06203b12}.admin-patient-actions{border-top:1px solid #0b355d1a;flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:8px;display:flex}.admin-patient-actions select{max-width:260px}.calendar-color-dot{vertical-align:-1px;border:1px solid #0000001f;border-radius:999px;width:12px;height:12px;margin-right:7px;display:inline-block}.date-booking-head{background:#e5edf5b8;border:1px solid #0b355d1a;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:-4px -4px 0;padding:10px 12px;display:flex}.booking-collapse-head{width:calc(100% + 8px);color:inherit;text-align:left;cursor:pointer}.booking-collapse-head:hover,.booking-collapse-head:focus-visible{border-color:#176b7457;outline:none;box-shadow:0 0 0 3px #176b741f}.booking-head-meta{text-align:right;justify-content:flex-end;align-items:center;gap:10px;display:inline-flex}.date-booking-head div{gap:3px;display:grid}.date-booking-head strong{color:var(--ink);font-size:1.08rem}.date-booking-head span{color:var(--muted);font-size:.88rem;font-weight:750}.admin-note-field{margin-bottom:0}.bookings-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.bookings-table{border-collapse:collapse;width:100%;min-width:760px}.bookings-table th,.bookings-table td{text-align:left;border-bottom:1px solid var(--line);padding:15px}.bookings-table th{color:var(--muted);background:var(--surface-strong);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem}.bookings-table tr:last-child td{border-bottom:0}.table-actions{gap:8px;display:flex}.btn-approve,.btn-reject{color:#fff;cursor:pointer;border-radius:6px;min-height:36px;padding:8px 11px;font-weight:800}.btn-approve{background:var(--success)}.btn-approve:disabled{background:#78a98f}.btn-reject{background:var(--danger)}@media (width<=860px){.app{width:min(100% - 20px,680px);padding-top:10px}.app-header,.intro-panel,.admin-summary{flex-direction:column;align-items:stretch}.office-header{display:flex}.office-header-personalization,.office-header nav{justify-self:stretch}.admin-summary-counts{justify-content:flex-start}.account-request-card{grid-template-columns:1fr}.account-request-actions{flex-wrap:wrap}.booking-header{align-items:center}.brand{justify-content:center;width:100%;max-height:122px}.booking-header .brand{max-height:138px}nav{justify-content:space-between;width:100%}.office-welcome-strip{flex-direction:column;align-items:center}.office-welcome-strip p{text-align:left;max-width:none}.customer-view{grid-template-columns:1fr}.booking-form,.booking-request-column{position:static}.booking-selected-date-header{flex-direction:column;align-items:stretch;min-height:0}.form-row{grid-template-columns:1fr;gap:0}.admin-tools-grid,.assignment-grid,.direct-harbor-day-grid,.admin-day-edit-form,.admin-add-patient-form,.admin-patient-control-form,.admin-patient-contact-strip,.pre-review-assign-row,.admin-patient-row,.admin-patient-statuses,.intake-grid,.intake-admin-grid,.intake-admin-grid-wide,.health-grid,.portal-account-item,.booking-status-pair{grid-template-columns:1fr}.admin-add-patient-notes{grid-column:auto}.office-action-card{grid-template-columns:1fr;align-items:stretch}.schedule-heading,.selected-day-header,.calendar-mode-banner,.payment-worklist-hero,.patient-schedule-head,.admin-daily-office-head{flex-direction:column;align-items:stretch}.calendar-mode-frame{padding:10px}.office-workspace-tabs,.payment-worklist-counts,.payment-worklist-main,.patient-case-summary-button,.admin-patient-summary-strip,.patient-case-head{grid-template-columns:1fr}.patient-mini-status-row,.admin-mini-status-row{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-worklist-toolbar,.payment-worklist-actions{justify-content:stretch}.payment-worklist-toolbar>*,.payment-worklist-actions>*{flex:150px}.patient-case-next{text-align:left;justify-items:start}.patient-case-toggle{border-radius:8px;width:100%;height:30px}.patient-upload-quick-btn{width:100%}.daily-schedule-grid,.schedule-day-form,.schedule-day-controls,.office-patient-status-strip,.patient-case-field-grid,.patient-move-panel,.patient-status-grid,.day-checklist-grid,.extracted-clinical-grid{grid-template-columns:1fr}.harbor-day-tabs button{min-width:134px}.daily-schedule-grid,.patient-schedule-section{padding:14px}.patient-case-list{border-left:0;padding-left:0}.compact-action-btn{width:100%}.admin-patient-actions{justify-content:stretch}.admin-patient-actions select,.admin-patient-actions button,.admin-patient-quick-actions button{width:100%;max-width:none}.admin-patient-contact-heading{border-bottom:1px solid #f6bf2657;border-right:0;padding-bottom:8px;padding-right:0}.admin-patient-quick-actions{justify-content:stretch}.collapsible-panel-head{flex-direction:column;align-items:flex-start}.case-row-summary{grid-template-columns:1fr;gap:8px}.case-row-main strong,.case-row-main span{white-space:normal}.document-list-head,.document-row-main{grid-template-columns:1fr;align-items:stretch}.document-list-head{flex-direction:column}.document-file-name strong{white-space:normal}.document-status-track,.ai-summary-detail-grid{grid-template-columns:1fr}.ai-summary-row{grid-template-columns:1fr;gap:4px}.bookings-table,.bookings-table thead,.bookings-table tbody,.bookings-table th,.bookings-table td,.bookings-table tr{min-width:0;display:block}.bookings-table thead{display:none}.bookings-table tr{border-bottom:1px solid var(--line);padding:14px}.bookings-table tr:last-child{border-bottom:0}.bookings-table td{border:0;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:8px 0;display:grid}.bookings-table td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800}}@media (width<=540px){.brand-logo{width:min(100%,440px);max-height:100px}.booking-header .brand-logo{max-height:126px}nav a,.logout-btn{text-align:center;flex:1}}
