
:root{--teal:#08b9c2;--deep:#009da8;--ink:#35434b;--muted:#708089;--line:#d9dfe2;--aqua:#e8f8fa;--selected:#d7f0f2;--bg:#f5f6f7}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:14px/1.45 Arial,Helvetica,sans-serif;background:white}a{color:#008f9a;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:1px solid #cdd5d9;border-radius:4px;padding:8px 12px;color:var(--ink);text-decoration:none;cursor:pointer;line-height:1.3}button:hover,.button:hover{background:#edf7f8;text-decoration:none}.primary{background:var(--deep)!important;color:white!important;border-color:var(--deep)!important}.danger{color:#af3e3e!important}.selected{background:var(--selected)!important}.muted,small{color:var(--muted)}small{font-size:12px}h1{font-size:26px;line-height:1.2;font-weight:500;margin:0 0 9px}h2{font-size:19px;font-weight:500;margin:0 0 18px}h3{font-size:15px;margin:12px 0}p{margin:8px 0 15px}.disclaimer{padding:6px 20px;background:#fff2c5;color:#574a23;font-size:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.topbar{background:var(--teal);color:white;display:flex;align-items:stretch;min-height:56px;flex-wrap:wrap}.brand{min-width:220px;font-size:23px;padding:12px 22px;color:#fff}.topbar nav{display:flex;flex-wrap:wrap}.topbar nav a{padding:19px 16px;color:white}.topbar nav a.active{background:#009eaa}.topbar .switch{margin-left:auto;align-self:center;padding:12px;color:white}.workspace{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 90px)}.sidebar{background:var(--bg);border-right:1px solid var(--line);padding:20px 14px}.sidebar h2{font-size:22px;margin:4px 0 16px}.sidebar label{margin-bottom:14px}.side-links{display:flex;flex-direction:column;gap:2px}.side-links a{padding:11px 12px;color:var(--ink);border-radius:3px}.side-links a.active{background:var(--selected);color:#007b84}.staff-link{display:flex;gap:10px;padding:12px 6px;border-bottom:1px solid var(--line);color:var(--ink)}.avatar{width:34px;height:34px;border-radius:50%;background:#dce7e9;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;font-weight:bold}.sidebar hr{border:0;border-top:1px solid var(--line);margin:20px 0}.content{padding:24px;min-width:0}.content.schedule-page{padding:0}.page-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:24px}.page-heading p{margin:0}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 18px;border-bottom:1px solid var(--line);background:#fff}.toolbar h1{font-size:23px;margin:0}.cluster{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px}.schedule-layout.no-detail{grid-template-columns:minmax(0,1fr)}.schedule-scroll{overflow:auto;max-height:calc(100vh - 178px)}.calendar{min-width:650px;display:grid;grid-template-columns:64px repeat(var(--cols),minmax(125px,1fr));grid-template-rows:62px repeat(var(--rows),22px);position:relative}.calendar>div{border-right:1px solid var(--line);border-bottom:1px solid #d5e9eb}.calendar .colhead{background:#f5f7f8;padding:13px 8px;text-align:center;position:sticky;top:0;z-index:2;font-weight:600}.colhead small{display:block;font-weight:400}.time{background:#fff;text-align:right;padding:1px 7px;color:#66777f;font-size:11px}.slot{background:var(--aqua);display:block;border-right:1px solid #cee1e4;border-bottom:1px solid #d1e5e7}.slot:hover{background:#caeef0}.event{z-index:1;margin:1px 3px;border-left:4px solid var(--deep);background:#afe6e9;border-radius:4px;padding:5px 8px;font-size:12px;color:#25414a;overflow:hidden;line-height:1.3}.event strong,.event small{display:block;color:inherit}.event.arrived{background:#b7dcae;border-color:#6ba65d}.event.no-show{background:#f0caca;border-color:#ba6d6d}.detail{border-left:1px solid var(--line);padding:22px;max-height:calc(100vh - 178px);overflow:auto}.detail h1{font-size:23px}.detail .edit-form{grid-template-columns:1fr}.detail summary{font-weight:600;padding:12px 0;cursor:pointer}.detail details{border-top:1px solid var(--line);margin-top:20px}.panel{border:1px solid var(--line);border-radius:4px;background:#fff;padding:22px;margin:0 0 24px}.panel.flush{padding:0}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:3px;margin-bottom:22px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f7f8f9;font-weight:600;white-space:nowrap}tr:last-child td{border-bottom:0}td .button{font-size:12px;padding:5px 8px}.empty{text-align:center;padding:40px;color:var(--muted)}.edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}label{display:flex;flex-direction:column;gap:6px;font-weight:500;min-width:0}input,select,textarea{width:100%;max-width:100%;background:white;color:var(--ink);padding:9px 10px;border:1px solid #cdd5d9;border-radius:4px;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #6cced4;outline-offset:1px}textarea{resize:vertical}.full{grid-column:1/-1}.check{display:flex;flex-direction:row;align-items:center;font-weight:400;grid-column:1/-1}.check input{width:16px;height:16px}.form-actions{display:flex;justify-content:flex-start;gap:10px}.form-actions button{min-width:120px}.status{font-size:12px;background:#e9edef;padding:3px 7px;border-radius:3px;white-space:nowrap}.status.booked,.status.draft{background:#dff2f3;color:#137d86}.status.arrived,.status.paid,.status.signed,.status.completed{background:#e4f0df;color:#4a7f3e}.status.cancelled,.status.void{color:#9b5656;background:#f7e8e8}.notice{background:#e7f7fa;border:1px solid #c9ebef;padding:14px 16px;margin-bottom:22px;color:#426675}.notice.success{background:#eaf4e5;border-color:#cfe4c5;color:#477041}.notice.error{background:#fbecec;border-color:#edcaca;color:#994949}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin:0 0 24px;flex-wrap:wrap}.tabs a{padding:12px 18px}.tabs .active{border-bottom:3px solid var(--teal)}.metrics{display:flex;gap:0;margin-bottom:28px;border:1px solid var(--line);flex-wrap:wrap}.metric{padding:20px 26px;flex:1;min-width:180px;border-right:1px solid var(--line)}.metric strong{font-size:29px;display:block;margin-top:9px;font-weight:400}.search{display:flex;gap:10px;margin-bottom:20px;max-width:550px}.search input{flex:1}.message{overflow-wrap:anywhere;max-width:80%;padding:14px 18px;background:#f0f3f4;border-radius:5px;margin:12px 0;white-space:pre-wrap}.message.patient{margin-left:auto;background:#dff4f5}.message small{display:block;margin-top:8px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.patient-header{background:var(--teal);color:white;padding:10px 24px 22px}.patient-header .cluster{justify-content:space-between}.patient-header a{color:white}.patient-header h1{font-size:38px;font-weight:300;margin:30px 0 0}.patient-workspace{grid-template-columns:245px minmax(0,1fr);max-width:1300px;margin:auto}.patient-workspace .sidebar{background:white;border:0;padding:24px 18px}.patient-workspace .side-links{gap:0;border:1px solid #d2d8db;border-radius:4px;overflow:hidden}.patient-workspace .side-links a{border-bottom:1px solid #d2d8db;border-radius:0}.patient-workspace .side-links a:last-child{border:0}.patient-workspace .content{padding-top:26px}.booking-days{display:grid;grid-template-columns:repeat(7,minmax(80px,1fr));gap:8px;margin-bottom:22px}.day-option{text-align:center;border:1px solid var(--line);padding:12px 5px;color:var(--ink);border-radius:4px}.day-option strong{display:block;font-size:21px}.times{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:10px}.times .button{color:#008c96}.footnote{font-size:12px;color:var(--muted);padding:16px 24px;border-top:1px solid var(--line)}.inline-form{display:inline-block}.inline-form .edit-form{display:flex;gap:5px;align-items:center}.inline-form .form-actions{display:block}.inline-form button{font-size:12px;min-width:0;padding:5px 9px}details summary{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #335c98;outline-offset:2px}
@media(max-width:1100px){.brand{min-width:170px}.topbar nav a{padding:18px 10px}.workspace{grid-template-columns:185px minmax(0,1fr)}.schedule-layout{grid-template-columns:minmax(0,1fr)}.detail{border-left:0;border-top:1px solid var(--line);max-height:none}.content{padding:20px}.schedule-scroll{max-height:650px}.calendar{min-width:580px}.toolbar h1{font-size:20px}.patient-workspace{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:700px){.topbar{display:block}.brand{display:block;padding:12px 16px}.topbar nav{overflow:auto;flex-wrap:nowrap}.topbar nav a{white-space:nowrap}.topbar .switch{display:block;padding:8px 16px}.workspace,.patient-workspace{display:block}.sidebar,.patient-workspace .sidebar{padding:14px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .staff-list,.sidebar hr,.sidebar .location{display:none}.side-links,.patient-workspace .side-links{display:flex;flex-direction:row;overflow:auto;border:0;white-space:nowrap}.side-links a{padding:9px 11px}.patient-workspace .side-links a{border:0}.sidebar h2{font-size:19px;margin-bottom:8px}.content,.patient-workspace .content{padding:18px 14px}.edit-form,.two-col{grid-template-columns:1fr}.page-heading{flex-wrap:wrap;gap:10px}h1{font-size:24px}.panel{padding:17px}.patient-header{padding:12px 16px 20px}.patient-header h1{font-size:32px;margin-top:22px}.patient-header .cluster{gap:12px}.booking-days{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-scroll{max-height:550px}.toolbar{padding:14px}.toolbar h1{order:-1;width:100%}.search{width:100%}.message{max-width:95%}.disclaimer{padding:7px 12px}.footnote{padding:14px}.patient-header .button{color:#008c96}.detail{padding:20px}.metric{padding:15px}.metric strong{font-size:25px}}
@media print{.topbar,.sidebar,.disclaimer,.toolbar,.form-actions,.switch,.footnote{display:none}.workspace{display:block}.content{padding:0}}
/* Patient account dimensions measured from the user-provided Jane reference. */
.patient-page{--teal:#00c1ca;color:#444;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;background:linear-gradient(#fff 280px,#f4f4f4 100%);min-height:100vh}
.account-container{width:1170px;padding:0 15px;margin:0 auto}
.account-top{background:var(--teal);color:#fff;min-height:60px}.account-top .account-container{display:flex;align-items:center;justify-content:space-between;min-height:60px;gap:16px}.account-top a{color:#fff}.account-top nav{display:flex;gap:28px}.account-clinic{height:150px;display:flex;align-items:center}.account-clinic a{font-size:25px;font-weight:300;color:#555;max-width:550px;line-height:1.25}.account-clinic small{display:block;margin-top:6px;font-size:13px;letter-spacing:.5px}
.account-card{background:#fff;border:1px solid #ccc;border-radius:3px;overflow:hidden}.patient-page .patient-header{background:var(--teal);padding:10px 20px 5px;min-height:87px}.patient-page .patient-header h1{font-size:40px;line-height:42px;font-weight:300;margin:20px 0 10px}
.patient-page .patient-workspace{max-width:none;margin:0;padding:20px;display:grid;grid-template-columns:calc(25% - 7.5px) minmax(0,1fr);gap:10px;min-height:610px}.patient-page .sidebar{padding:0;border:0;background:white}.patient-page .sidebar h2{font-size:28px;line-height:36px;font-weight:400;margin:0 0 10px}.patient-page .side-links{display:flex;flex-direction:column;gap:0;border:1px solid #c3c3c3;border-radius:4px;overflow:hidden;white-space:normal}.patient-page .side-links a,.patient-page .side-links .unavailable{padding:10px 15px;line-height:20px;min-height:41px;border:0;border-bottom:1px solid #c3c3c3;border-radius:0;color:#444}.patient-page .side-links a.active{background:#b6e6e6;color:#333}.patient-page .side-links>:last-child{border-bottom:0}.patient-page .side-links .unavailable{color:#999;background:#fafafa;cursor:help}.account-book{width:100%;margin-top:20px}.patient-page .content{padding:0;min-width:0}.patient-page .page-heading{min-height:36px;align-items:center;margin:0 0 14px;gap:12px}.patient-page .page-heading h1,.patient-page .page-heading h2{font-size:28px;line-height:36px;font-weight:400;margin:0}.patient-page .page-heading .button{white-space:nowrap}.patient-page .table-scroll{border:0;border-radius:0;margin:0 0 20px}.patient-page th,.patient-page td{padding:8px;border-bottom:1px solid #ddd}.patient-page th{background:#fff;border-bottom:2px solid #ddd}.patient-page .empty{padding:14px 8px;text-align:left;color:#444}.patient-page button,.patient-page .button{padding:6px 12px;line-height:20px;border-color:#ccc;color:#444}.patient-page td .button{padding:4px 9px;font-size:13px}.patient-page .notice{padding:10px 12px;margin-bottom:16px}.appointment-session{margin-top:4px;line-height:1.7}.appointment-actions{text-align:right;min-width:145px}.appointment-actions .button{margin:0 0 5px 4px}.account-section{border-top:1px solid #eee;margin-top:30px;padding-top:24px}.account-section p{line-height:1.6}.calendar-options{margin-bottom:18px;border:1px solid #ddd;border-radius:4px;padding:10px 12px}.calendar-options summary{cursor:pointer}.calendar-options .cluster{margin-top:12px}.account-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 0;color:#777;font-size:12px;gap:12px}.account-footer strong{font-size:17px;font-weight:400}.demo-tools{border-top:1px solid #ddd;padding:14px 0 26px;font-size:12px;color:#777}.demo-tools summary{cursor:pointer}.demo-tools .cluster{margin-top:12px}.demo-tools select{font-size:12px;padding:6px;max-width:220px}.demo-tools button{font-size:12px}.demo-tools p{margin:10px 0 0}.patient-page .panel{padding:18px}.patient-page .detail h1{font-size:23px}
@media(max-width:1199px){.account-container{width:970px}}
@media(max-width:991px){.account-container{width:750px}.patient-page .patient-workspace{grid-template-columns:210px minmax(0,1fr)}.patient-page .page-heading{align-items:flex-start;flex-wrap:wrap}.patient-page .page-heading h1,.patient-page .page-heading h2{font-size:25px}}
@media(max-width:767px){.account-container{width:100%;padding:0 15px}.account-clinic{height:110px}.account-clinic a{font-size:21px}.account-top .account-container{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.account-top nav{gap:18px}.patient-page .patient-workspace{display:block;padding:15px;min-height:0}.patient-page .sidebar{padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid #ddd}.patient-page .side-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.patient-page .side-links a,.patient-page .side-links .unavailable{font-size:12px;border-bottom:1px solid #ddd;padding:9px 10px}.patient-page .content{padding:0}.patient-page .patient-header h1{font-size:34px}.account-footer{align-items:flex-start;flex-direction:column}.appointment-actions{min-width:120px}}
@media print{.account-top,.account-clinic,.demo-tools,.account-footer{display:none}.account-container{width:100%;padding:0}.patient-page .patient-workspace{display:block;min-height:0}.patient-page .sidebar{display:none}}


.clinic-page{background:#f5f8fa;color:#253d49}.clinic-page .content{max-width:1600px;width:100%;margin:0 auto;padding:30px}.clinic-page .topbar{background:#fff;border-bottom:1px solid #dce5e9;align-items:center;justify-content:space-between;padding:12px 24px;gap:16px}.clinic-page .brand{color:#173f4b;font-size:20px;font-weight:600;padding:0;min-width:0}.clinic-page .topbar nav a{display:inline-flex;color:#355361;padding:12px 16px;border-radius:6px}.clinic-page .topbar nav a.active{background:#e1f3f3;color:#067b80}.clinic-page .sidebar{background:#fff;border-color:#e2e9ec}.clinic-page .sidebar .location{border-bottom:1px solid #e2e9ec;margin-bottom:18px}.clinic-page .identity-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 24px;background:#edf3f5;font-size:12px}.identity-bar p{margin:0}.identity-bar button{font-size:12px;padding:6px 10px}.clinic-page h1{font-size:30px;font-weight:600;letter-spacing:-.5px}.clinic-page h2{font-weight:600}.clinic-page .panel{border-radius:10px;border-color:#e0e8eb}.clinic-page .page-heading{margin-bottom:22px}.clinic-page .sidebar details summary{font-weight:600;padding:8px 0}.clinic-page .sidebar .side-links a{padding:10px;border-radius:6px}.summary-grid,.record-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}.summary-card{padding:20px;background:white;border:1px solid #dce6ea;border-radius:10px;display:flex;flex-direction:column;gap:10px;color:#3a5664}.summary-card:hover{border-color:#05a2aa;text-decoration:none}.summary-card strong{font-size:32px;color:#153d4c}.summary-card .muted{font-size:12px}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:26px}.appointment-list{display:flex;flex-direction:column;gap:12px}.appointment-card{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:20px;align-items:center;background:#fff;padding:19px;border:1px solid #dce6ea;border-radius:9px}.visit-date,.visit-person{display:flex;flex-direction:column;gap:5px}.visit-date{border-right:1px solid #e5ecef}.visit-date strong{font-size:18px}.visit-person strong{font-size:16px;color:#12606d}.visit-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.task-list{display:flex;flex-direction:column}.task-list a{display:flex;flex-direction:column;gap:5px;padding:14px 0;border-bottom:1px solid #e7edf0;color:#365463}.task-list a:first-child{padding-top:0}.task-list a:last-child{border:0}.quick-links{display:flex;flex-direction:column;gap:10px}.empty-state{padding:22px;background:#f4f8fa;border:1px dashed #cfdee5;border-radius:8px;color:#5b717d}.view-switch{display:flex;gap:6px;margin-bottom:20px}.appointment-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;background:#fff;border:1px solid #dce6ea;border-radius:9px;padding:16px}.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.visit-workspace{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start}.visit-summary h1{font-size:23px}.visit-summary .edit-form{grid-template-columns:1fr}.visit-summary details,.history-entry details{margin:16px 0}.visit-summary summary{padding:9px 0;font-weight:600}.record-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid #d5e2e7;margin-bottom:24px;white-space:nowrap}.record-tabs a{padding:13px 16px;color:#425d69}.record-tabs a.active{border-bottom:3px solid #069ca5;color:#006b73;font-weight:600}.history-entry{border:1px solid #dce6ea;border-radius:9px;margin:14px 0;padding:20px;background:#fcfefe}.history-entry h3{margin:0 0 8px;font-size:18px}.history-entry .page-heading{margin-bottom:16px}.soap-field{padding:8px 0}.soap-field>strong{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#52717d}.soap-field p{margin:5px 0}.record-item{padding:16px 0;border-bottom:1px solid #e1eaee;overflow-wrap:anywhere}.record-item:last-child{border:0}.record-item>.button{margin-top:6px}.clinic-page .content.schedule-page{padding:0;max-width:none}.calendar-view-header{padding:20px;background:#fff;border-bottom:1px solid #dce6ea}.calendar-view-header .view-switch{margin:0}.patient-context{padding:12px 16px;margin-bottom:18px;background:#eaf5f6;border-radius:6px}.document-paper{border:1px solid #dce6ea;padding:25px;line-height:1.7;background:#fff}.mobile-tools{display:block}.mobile-patient-menu{display:none}
@media(max-width:1100px){.dashboard-columns{grid-template-columns:1fr}.summary-grid,.record-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-workspace{grid-template-columns:1fr}.clinic-page .content{padding:22px}}
@media(max-width:767px){.desktop-patient-menu{display:none}.mobile-patient-menu{display:block}.mobile-patient-menu summary{font-weight:600;padding:12px;background:#edf7f8;border:1px solid #cbdfe3;border-radius:5px}.mobile-patient-menu nav{margin-top:12px}}
@media(max-width:700px){.clinic-page .topbar{display:flex;padding:14px;gap:10px}.clinic-page .brand{font-size:18px;width:100%}.clinic-page .topbar nav{width:100%;display:flex;justify-content:space-between}.clinic-page .topbar nav a{font-size:13px;padding:10px 12px}.clinic-page .identity-bar{padding:8px 14px}.clinic-page .disclaimer{font-size:11px}.clinic-page .disclaimer span+span{display:none}.clinic-page .sidebar{padding:8px 14px}.clinic-page .sidebar .location,.clinic-page .sidebar .staff-list{display:none}.clinic-page .sidebar details .side-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));white-space:normal}.clinic-page .content{padding:22px 14px}.clinic-page h1{font-size:26px}.summary-grid,.record-summary{gap:10px;margin-bottom:22px}.summary-card{padding:14px;font-size:12px;gap:7px}.summary-card strong{font-size:25px}.appointment-card{grid-template-columns:74px minmax(0,1fr);gap:12px;padding:14px}.visit-date{font-size:12px}.visit-date strong{font-size:16px}.visit-person strong{font-size:15px}.visit-actions{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;border-top:1px solid #e8eef0;padding-top:12px}.visit-actions .button{min-height:40px}.appointment-filters{padding:12px;gap:10px}.appointment-filters button{grid-column:1/-1;min-height:42px}.record-tabs a{font-size:13px;padding:12px}.history-entry{padding:14px}.clinic-page .panel{padding:16px}.record-item .pre{font-size:13px}.clinic-page .page-heading{gap:12px}.clinic-page .page-heading h2{font-size:18px}.clinic-page input,.clinic-page select,.clinic-page textarea,.patient-page input,.patient-page select,.patient-page textarea{font-size:16px}.patient-page .appointment-actions{min-width:0}.patient-page .appointment-actions .button{margin:3px 0;min-height:40px}.patient-page td{overflow-wrap:anywhere}.patient-page .side-links{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-page .table-scroll{max-width:100%}}


@font-face{font-family:ClinicProxima;src:url('/patient-assets/regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:ClinicProxima;src:url('/patient-assets/semibold.woff2') format('woff2');font-weight:600 800;font-display:swap}
@font-face{font-family:ClinicProxima;src:url('/patient-assets/thin.woff2') format('woff2');font-weight:200 300;font-display:swap}
.cw-app{--deep:#087f88;--ink:#243b40;--muted:#62777c;--line:#dce7e8;background:#f5f9f9;color:var(--ink);font:14px/1.5 ClinicProxima,Arial,Helvetica,sans-serif}
.cw-app a{color:#087f88}.cw-app button,.cw-app .button{border-radius:6px;padding:10px 14px;font-size:13px;font-weight:600;min-height:40px;gap:8px;transition:background .12s,border-color .12s}.cw-app button:focus-visible,.cw-app a:focus-visible{outline:3px solid #0ca6b5;outline-offset:3px}.cw-app input,.cw-app select,.cw-app textarea{border-radius:6px;min-height:41px;padding:10px 12px;border-color:#cbd5df}.cw-app label{font-size:12px;font-weight:600;color:#4b6268}.cw-app h1{font-size:32px;letter-spacing:-.6px;font-weight:600;line-height:1.25;margin:0 0 9px;color:#243b40}.cw-app h2{font-size:21px;letter-spacing:-.3px;font-weight:600;margin:0}.cw-app h3{font-size:14px;font-weight:600}.cw-app small{display:block;font-size:12px;color:#62777c;line-height:1.5}.cw-app p{line-height:1.55}.cw-app .page-heading{align-items:center;margin-bottom:26px}.cw-app .page-heading p{font-size:15px}.cw-app .panel{border:1px solid #dce7e8;border-radius:8px;box-shadow:none}.cw-app .panel h2{margin-bottom:18px}
.cw-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.cw-sidebar{background:#fff;border-right:1px solid #dce7e8;padding:24px 14px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.cw-brand{display:flex;gap:12px;align-items:flex-start;padding:0 8px 28px;color:#243b40!important;font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.4px}.cw-brand:hover{text-decoration:none}.cw-brand small{margin-top:7px;font-size:12px;font-weight:400;letter-spacing:0}.cw-mark{display:grid;place-items:center;background:#24b7c1;color:white;width:42px;height:42px;border-radius:7px;font-size:26px;font-weight:600;flex-shrink:0}.cw-nav{display:flex;flex-direction:column;gap:5px}.cw-nav a{display:flex;align-items:center;gap:14px;padding:10px 14px;color:#4b6268;font-size:15px;border-radius:7px;font-weight:400;min-height:45px}.cw-nav a:hover{background:#f4f8fa;text-decoration:none}.cw-nav a[aria-current=page]{background:#def3f4;color:#087f88;font-weight:700;box-shadow:none}.cw-nav svg{width:20px;height:20px;flex-shrink:0}.cw-tools{margin-top:24px;border-top:1px solid #dce7e8;padding-top:14px}.cw-tools>p{padding:0 14px;font-size:12px;color:#62777c;margin-bottom:12px}.cw-more{margin:10px 4px}.cw-more summary{padding:10px 10px;color:#62777c;font-size:12px;cursor:pointer}.cw-more .cw-nav a{font-size:13px}.cw-mobile-nav{display:none}.cw-user{margin-top:auto;padding:22px 10px 4px;border-top:1px solid #dce7e8;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px}.cw-user strong{font-size:12px;overflow-wrap:anywhere}.cw-user small{font-size:11px}.cw-user form{grid-column:1/-1}.cw-user button{border:none;padding-left:0;font-weight:400}.cw-avatar{display:grid;place-items:center;border-radius:50%;background:#e0f2f7;color:#14718b;width:36px;height:36px;font-size:12px;font-weight:700;flex-shrink:0}.cw-main{min-width:0;display:flex;flex-direction:column}.cw-top{background:#24b7c1;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce7e8;padding:20px 32px;font-size:15px;color:#fff;min-height:72px}.cw-slash{padding:0 12px;color:#d8f6f7}.cw-top>span:first-child{font-size:23px;font-weight:600}.cw-top>span:last-child{display:flex;align-items:center;gap:10px}.cw-top svg{width:19px;height:19px}.cw-app .content{padding:26px 30px;max-width:1600px;width:100%;margin:0 auto}.cw-footer{padding:0 30px 20px;font-size:11px;color:#697e83;margin-top:auto}.cw-skip{position:absolute;top:-100px;left:240px;background:#fff;padding:12px;z-index:50}.cw-skip:focus{top:10px}
.cw-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid #dce7e8;border-radius:8px;padding:20px 0;margin-bottom:22px}.cw-metrics a{display:flex;flex-direction:column;gap:6px;color:#4b6268;padding:0 24px;border-right:1px solid #dce7e8;font-size:13px}.cw-metrics a:last-child{border:0}.cw-metrics strong{font-size:38px;line-height:1.2;color:#086c75;letter-spacing:-.7px}.cw-metrics a:nth-child(2) strong{color:#087f88}.cw-metrics a:hover{text-decoration:none;background:#f8fbfc}.cw-day-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:20px;align-items:start}.cw-panel{background:#fff;border:1px solid #dce7e8;border-radius:8px;margin-bottom:22px;overflow:hidden}.cw-section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px}.cw-section-heading>a{font-size:12px;font-weight:600;white-space:nowrap}.cw-section-heading p{font-size:13px;color:#62777c;margin:6px 0 0}.cw-section-note{padding:0 20px;margin:-5px 0 10px;font-size:11px;color:#62777c}.cw-table-wrap{overflow-x:auto}.cw-table{width:100%;font-size:13px;border-collapse:collapse}.cw-table th{padding:11px 20px;font-size:12px;color:#35565b;background:#e8f6f6;border-bottom:1px solid #e4eded;font-weight:600}.cw-table td{padding:17px 20px;vertical-align:middle;border-bottom:1px solid #e4eded;color:#344e54}.cw-table td:first-child{white-space:nowrap}.cw-table tr:last-child td{border-bottom:0}.cw-table tr:hover td{background:#fafcfd}.cw-table td small{font-size:12px;margin-top:3px}.cw-table td strong{font-size:13px}.cw-patient-link{color:#243b40!important;font-weight:700}.cw-patient-link:hover{color:#087f88!important}.cw-table .cw-open{text-align:right}.cw-open .button{white-space:nowrap;min-height:34px;padding:7px 10px;font-size:12px}.cw-badge{display:inline-block;white-space:nowrap;padding:4px 8px;border-radius:20px;font-size:11px;font-weight:600;background:#edf1f5;color:#536579}.cw-badge.booked{background:#def4f5;color:#087781}.cw-badge.arrived{background:#e1f5e9;color:#247a4d}.cw-badge.cancelled,.cw-badge.no-show{background:#fcebed;color:#a84551}.cw-badge.draft{background:#eef2fb;color:#5b6e9e}.cw-roster>a{display:flex;align-items:center;gap:10px;padding:15px 20px;border-top:1px solid #e4eded;color:#243b40}.cw-roster>a:hover{background:#fafcfd;text-decoration:none}.cw-roster strong{font-size:12px}.cw-roster small{font-size:11px}.cw-roster-count{margin-left:auto;text-align:right;white-space:nowrap}.cw-roster>a:nth-child(3n+2) .cw-avatar{background:#e0f6ee;color:#237564}.cw-roster>a:nth-child(3n+3) .cw-avatar{background:#eee9fb;color:#72549e}.cw-attention{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 20px 20px}.cw-attention>div+div{border-left:1px solid #e4eded;padding-left:24px}.cw-attention h3{margin:0 0 10px}.cw-attention h3 span{color:#697e83;margin-left:8px;font-size:12px;font-weight:400}.cw-attention a:not(.cw-all-link){display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f5;color:#243b40}.cw-attention a strong{font-size:12px}.cw-attention a small{font-size:11px}.cw-all-link{display:inline-block;margin-top:14px;font-size:12px;font-weight:600}.cw-empty{padding:38px 24px;text-align:center;color:#62777c}.cw-empty strong{display:block;font-size:17px;color:#344e54}.cw-empty p{font-size:13px;margin:8px 0 16px}.cw-date-caption{padding:0 20px 14px;color:#62777c;font-size:12px}
.cw-list-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.cw-periods,.cw-list-controls .view-switch{display:flex;gap:5px;margin:0;flex-wrap:wrap}.cw-periods .button{border:0;background:transparent;min-height:35px;font-size:12px}.cw-periods .button.selected{background:#e2f1f3!important;color:#087f88}.cw-filters{display:grid;grid-template-columns:1fr 1fr 1.3fr 1.4fr 1fr;gap:14px;padding:20px;border:1px solid #dce7e8;background:white;border-radius:8px}.cw-filter-buttons{grid-column:1/-1;display:flex;gap:16px;align-items:center}.cw-filter-buttons a{font-size:12px}.cw-results-line{display:flex;justify-content:space-between;gap:16px;margin:22px 0 14px;color:#62777c;font-size:12px}.cw-results-line strong{color:#4b6268}.cw-back{margin-bottom:18px}.cw-back .button{border:0;padding:0;min-height:25px;font-size:12px;background:transparent}.cw-visit-person{display:flex;align-items:center;gap:14px;padding:22px 24px;border-bottom:1px solid #e4eded}.cw-visit-person .cw-avatar{width:44px;height:44px;font-size:15px}.cw-visit-person h2{font-size:20px;margin-bottom:3px}.cw-visit-person a{font-size:12px}.cw-visit-person>.cw-badge{margin-left:auto}.cw-facts{display:grid;grid-template-columns:1.2fr 1fr 1.2fr 1.1fr;margin:0;padding:24px}.cw-facts>div{padding:0 20px;border-right:1px solid #e4eded;min-width:0}.cw-facts>div:first-child{padding-left:0}.cw-facts>div:last-child{padding-right:0;border:0}.cw-facts dt{font-size:11px;color:#697e83;margin-bottom:8px}.cw-facts dd{font-size:13px;font-weight:600;margin:0;overflow-wrap:anywhere}.cw-facts dd small{font-weight:400;margin-top:6px}.cw-visit-actions{display:flex;gap:10px;align-items:center;margin:-4px 0 26px;flex-wrap:wrap}.cw-visit-actions>span{font-size:12px;color:#697e83;margin-left:8px}.cw-record-links{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.cw-visit-notes,.cw-status-edit{padding:18px 22px}.cw-visit-notes>summary,.cw-status-edit>summary{font-size:15px;font-weight:600;cursor:pointer}.cw-visit-notes>.panel{margin:20px 0 0}.cw-status-edit .edit-form{margin-top:20px}.cw-date-search{display:flex;align-items:flex-end;gap:12px;padding:0 24px 22px}.cw-date-search label{min-width:200px}.cw-change>.edit-form{padding:0 24px 24px}.cw-comparison{display:grid;grid-template-columns:1fr 1fr;padding:8px 24px 24px;gap:24px}.cw-comparison>div{padding:18px;background:#f6f8fa;border-radius:6px}.cw-comparison>div+div{background:#edf7f8}.cw-comparison h3{font-size:11px;font-weight:500;color:#62777c;margin:0 0 12px}.cw-comparison strong{font-size:15px}.cw-comparison p{margin:5px 0 0;font-size:14px}.cw-review-reason{padding:0 24px 18px}.cw-review-reason h3{font-size:11px;color:#62777c;margin:0 0 6px}.cw-review-reason p{font-size:14px;overflow-wrap:anywhere}.cw-confirm-form{border-top:1px solid #e4eded;padding:22px 24px}.cw-confirm-form .check{font-size:13px;color:#344e54}.cw-confirm-form .check input{min-height:0}.cw-confirm-form>p{font-size:12px;margin:16px 0}.cw-confirm-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.cw-app .cw-destructive{background:#ae3d4b;color:#fff;border-color:#ae3d4b}.cw-app .content.schedule-page{padding:24px;max-width:1600px}.cw-app .schedule-layout{background:white;border:1px solid #dce7e8;border-radius:8px}.cw-app .calendar-view-header{border-radius:8px 8px 0 0}.cw-app .schedule-scroll{max-height:72vh}
@media(min-width:1600px){.cw-day-grid{grid-template-columns:minmax(0,1.5fr) minmax(360px,1fr)}}
@media(max-width:1200px){.cw-day-grid{grid-template-columns:1fr}.cw-roster{display:grid;grid-template-columns:1fr 1fr}.cw-roster>a{border:1px solid #edf1f5}.cw-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.cw-facts{grid-template-columns:1fr 1fr;gap:20px}.cw-facts>div{padding:0 16px 0 0}.cw-facts>div:nth-child(2){border:0}.cw-metrics a{padding:0 16px;font-size:11px}}
@media(max-width:800px){.cw-shell{grid-template-columns:1fr}.cw-sidebar{height:auto;position:static;padding:16px;border-right:0;border-bottom:1px solid #dce7e8;display:block}.cw-brand{padding:0 0 16px;font-size:15px}.cw-brand br{display:none}.cw-brand small{margin-top:3px}.cw-mark{width:34px;height:34px;font-size:22px}.cw-nav{flex-direction:row;gap:4px}.cw-nav a{flex:1;justify-content:center;padding:10px 7px;font-size:12px;gap:6px;min-height:40px}.cw-nav svg{width:16px;height:16px}.cw-tools{display:none}.cw-mobile-nav{display:block;font-size:12px;color:#4b6268;margin-top:12px}.cw-mobile-nav summary{cursor:pointer;padding:6px}.cw-mobile-nav .cw-nav{display:grid;grid-template-columns:1fr 1fr;margin-top:10px}.cw-mobile-nav .cw-nav a{justify-content:flex-start}.cw-user{border:0;padding:0;display:flex;justify-content:flex-end;margin-top:12px;gap:10px}.cw-user .cw-avatar,.cw-user small{display:none}.cw-user form{margin-left:4px}.cw-user button{padding:4px 8px;min-height:30px;font-size:11px}.cw-top{padding:14px 18px;font-size:11px;min-height:44px}.cw-app .content,.cw-app .content.schedule-page{padding:22px 18px}.cw-app h1{font-size:25px}.cw-app .page-heading{align-items:flex-start;gap:14px}.cw-app .page-heading p{font-size:13px;max-width:260px}.cw-app .page-heading>.button{font-size:11px;padding:9px 10px;white-space:nowrap}.cw-filters{grid-template-columns:1fr 1fr;padding:16px}.cw-filters input,.cw-filters select,.cw-change input,.cw-change select{font-size:16px}.cw-results-line{flex-direction:column;gap:5px}.cw-metrics{grid-template-columns:1fr 1fr;padding:8px 0;margin-bottom:18px}.cw-metrics a{padding:14px 18px;font-size:12px}.cw-metrics a:nth-child(2){border:0}.cw-metrics a:nth-child(-n+2){border-bottom:1px solid #dce7e8}.cw-metrics strong{font-size:27px}.cw-attention{grid-template-columns:1fr;gap:24px}.cw-attention>div+div{padding:20px 0 0;border-left:0;border-top:1px solid #e4eded}.cw-roster{grid-template-columns:1fr}.cw-table thead{display:none}.cw-table,.cw-table tbody,.cw-table tr,.cw-table td{display:block}.cw-table tr{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px 14px;padding:17px 18px;border-bottom:1px solid #e4eded}.cw-table td{padding:0;border:0;font-size:12px;min-width:0;overflow-wrap:anywhere}.cw-table td:nth-child(3){grid-column:2;color:#697e83}.cw-table td:nth-child(4){grid-column:1;grid-row:2}.cw-table td.cw-open{grid-column:1/-1;text-align:right}.cw-table td:first-child{grid-row:1}.cw-table td:nth-child(2){grid-column:2;grid-row:1}.cw-section-heading{padding:17px 18px}.cw-section-heading h2{font-size:16px}.cw-section-heading>a{font-size:11px}.cw-section-note{padding:0 18px}.cw-app .cw-facts{grid-template-columns:1fr;gap:0;padding:0 18px}.cw-facts>div{border:0;border-bottom:1px solid #e4eded;padding:16px 0!important;display:grid;grid-template-columns:95px minmax(0,1fr);gap:10px}.cw-facts>div:nth-child(2){border-bottom:1px solid #e4eded}.cw-visit-person{padding:20px 18px}.cw-visit-actions>span{margin:0;flex-basis:100%}.cw-comparison{padding:0 18px 20px;gap:12px}.cw-comparison>div{padding:14px}.cw-comparison strong{font-size:13px}.cw-change>.edit-form{grid-template-columns:1fr;padding:0 18px 20px}.cw-date-search{padding:0 18px 20px;flex-wrap:wrap}.cw-confirm-form{padding:20px 18px}.cw-confirm-actions{flex-wrap:wrap}.cw-review-reason{padding:0 18px 18px}.cw-footer{padding:0 18px 18px}.cw-skip{left:16px}.cw-record-links .button{font-size:12px}}
@media(max-width:480px){.cw-sidebar>nav.cw-nav a{flex-direction:column;gap:5px;min-width:0;font-size:11px;padding:8px 4px}.cw-filters>*{min-width:0}.cw-top{gap:12px}.cw-top>span:last-child{text-align:right}}
.cw-history-entry{border-top:1px solid #dce7e8;padding:18px 24px}.cw-history-entry>.cw-section-heading{padding:0;flex-wrap:wrap}.cw-history-entry h3{margin:0}.cw-history-entry time{font-size:12px;color:#62777c}.cw-history-entry>.cw-comparison{padding:8px 0;gap:16px}.cw-history-entry>.cw-comparison small{margin-top:6px}.cw-history-empty{padding:0 24px 18px;color:#62777c;font-size:13px}.cw-history-entry p{overflow-wrap:anywhere}
@media(max-width:480px){.cw-history-entry{padding:18px}.cw-history-entry>.cw-comparison{grid-template-columns:1fr}.cw-history-empty{padding:0 18px 18px}}

.cw-app .primary{background:#087f88;border-color:#087f88;color:#fff!important;box-shadow:0 2px 3px #0e596014}.cw-app .primary:hover{background:#066b73;border-color:#066b73}.cw-app .button:not(.primary):hover{background:#edf8f8;border-color:#9acdd0}.cw-app .danger{color:#ad3e4c;border-color:#dfbdc3}.cw-app .selected{background:#def3f4;color:#087781;border-color:#9acdd0}.cw-app .muted{color:#62777c}
.cw-app input,.cw-app select,.cw-app textarea,.cw-app button,.cw-app .button{font-family:inherit}.cw-app input:focus,.cw-app select:focus,.cw-app textarea:focus{outline:2px solid #24b7c1;outline-offset:2px}.cw-app label{font-size:13px}.cw-app .page-heading{padding:24px 26px;background:#fff;border:1px solid #dce7e8;border-radius:9px;box-shadow:0 2px 4px #244b5010;gap:20px}.cw-app .page-heading p{margin:0;max-width:65ch}.cw-app .page-heading h1{margin-bottom:6px}.cw-app .panel,.cw-panel,.cw-metrics,.cw-filters{box-shadow:0 2px 4px #244b500b}.cw-app .page-heading>.button{flex-shrink:0}.cw-panel>.cw-section-heading{border-bottom:1px solid #edf2f2}.cw-section-heading+.cw-section-note{margin:12px 0}.cw-table td{font-size:14px}.cw-table td strong,.cw-table td small{font-size:13px}.cw-roster strong{font-size:14px}.cw-roster small{font-size:12px}.cw-roster .cw-avatar{width:42px;height:42px;background:#def3f4!important;color:#087781!important;font-size:14px}.cw-attention{padding-top:18px;gap:24px}.cw-attention h3{padding:10px 12px;background:#e8f6f6;border-radius:6px;font-size:15px}.cw-attention a strong{font-size:14px}.cw-attention a small{font-size:12px}.cw-table th{white-space:nowrap}.cw-list-controls .view-switch{background:#fff;border:1px solid #dce7e8;padding:3px;border-radius:8px}.cw-list-controls .view-switch .button{border:0}.cw-periods{background:#fff;border:1px solid #dce7e8;padding:4px;border-radius:8px}.cw-app .table-scroll{border:1px solid #dce7e8;border-radius:8px}.cw-app .table-scroll th{background:#e8f6f6;color:#35565b}.cw-app .panel h2{color:#243b40}.cw-app .edit-form input,.cw-app .edit-form select,.cw-app .edit-form textarea{max-width:100%;min-width:0}.cw-app .edit-form>label{min-width:0}.cw-app .content>h1{margin-bottom:24px}.cw-app .calendar-view-header{background:#e8f6f6}.cw-app .cw-user button:hover{background:#edf8f8}.cw-app .cw-history-entry h3{font-size:16px}.cw-app .cw-history-entry>.cw-section-heading{border:0}
@media(min-width:801px) and (max-width:1200px){.cw-shell{grid-template-columns:210px minmax(0,1fr)}.cw-brand{font-size:17px}.cw-app .content{padding:24px}.cw-app .page-heading{padding:22px}.cw-nav a{font-size:14px}}
@media(max-width:800px){.cw-top>span:first-child{font-size:16px}.cw-top>span:last-child{font-size:12px}.cw-top svg{display:none}.cw-app .page-heading{padding:20px;gap:16px}.cw-app .page-heading h1{font-size:27px}.cw-app .page-heading>.button{font-size:13px;white-space:normal}.cw-app .cw-metrics strong{font-size:30px}.cw-app .cw-metrics a{font-size:13px}.cw-attention{padding-top:16px}.cw-table td{font-size:13px}.cw-nav a{font-size:12px}.cw-app .cw-filters{gap:14px}.cw-app .page-heading p{max-width:none}.cw-brand{font-size:17px}}
@media(max-width:480px){.cw-app .page-heading{display:block}.cw-app .page-heading>.button{margin-top:16px}.cw-top{padding:14px 18px}.cw-top>span:first-child{font-size:15px}.cw-top>span:last-child{font-size:11px}.cw-app .cw-filters{grid-template-columns:1fr}.cw-app .cw-comparison{grid-template-columns:1fr}.cw-app .page-heading h1{font-size:26px}.cw-app .cw-history-entry .cw-section-heading{align-items:flex-start}}

@media(prefers-reduced-motion:reduce){.cw-app *{transition:none!important;scroll-behavior:auto!important}}

/* Shared booking-calendar visual language, scoped to the clinic workspace. */
.cw-app .calendar-view-header{background:#fff;border:1px solid #dce7e8;border-radius:8px;padding:18px 20px;gap:18px;flex-wrap:wrap}
.cw-app .schedule-page>.toolbar{padding:24px 0 12px;gap:14px;flex-wrap:wrap}
.cw-app .schedule-page>.toolbar h1{font-size:23px;text-align:center;flex:1;margin:0;white-space:nowrap}
.cw-calendar-caption{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;color:#62777c;font-size:12px;margin:6px 0 16px}
.cw-calendar-caption>span{padding:9px 14px;border:1px solid #dce7e8;border-radius:4px;background:#fff}
.cw-calendar-legend{display:flex;gap:16px;flex-wrap:wrap}.cw-calendar-legend span{display:flex;align-items:center;gap:6px}.cw-calendar-legend i{width:12px;height:12px;border-radius:3px;background:#eee;border:1px solid #ddd}.cw-calendar-legend .booked{background:#35b5be;border-color:#35b5be}.cw-calendar-legend .arrived{background:#d9eee2;border-color:#8bbd9c}
.cw-app .schedule-layout{border-radius:6px;overflow:hidden}.cw-app .schedule-scroll{max-height:680px;scrollbar-gutter:stable;padding:0 10px 10px 0;background:#fff}
.cw-app .calendar{grid-template-columns:58px repeat(var(--cols),minmax(var(--calendar-col-width,116px),1fr));grid-template-rows:66px repeat(var(--rows),28px);min-width:700px;background:#fff}
.cw-app .calendar .colhead{background:white;color:#168d98;border:0;border-bottom:1px solid #e4eded;padding:14px 5px;font-size:14px;font-weight:600;z-index:4}
.cw-app .calendar .colhead small{font-size:11px;font-weight:400;color:#62777c;margin-top:4px}
.cw-app .calendar .time{border:0;background:#fff;color:#69697d;font-size:11px;padding:2px 7px 0 0;position:sticky;left:0;z-index:3}
.cw-app .calendar .slot{background:#eee;border-right:1px solid white;border-bottom:1px solid #e8e8e8}
.cw-app .calendar .slot:hover{background:#dcf3f4;box-shadow:inset 0 0 0 1px #35b5be}.cw-app .calendar a:focus-visible{outline:3px solid #125862;outline-offset:-3px;z-index:5}
.cw-app .calendar .event{background:#35b5be;border:0;border-radius:5px;margin:1px;padding:6px 7px;color:#fff;line-height:1.25;text-decoration:none;font-size:12px}
.cw-app .calendar .event:hover{background:#179aa5;box-shadow:0 2px 5px #164b5026}.cw-app .calendar .event strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-app .event-treatment{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-app .calendar .event small{color:inherit;font-size:11px;margin-top:3px;white-space:nowrap}
.cw-app .calendar .event.arrived{background:#d9eee2;color:#285a3a;border-left:3px solid #64a57c}.cw-app .calendar .event.no-show{background:#f7dfe2;color:#8b3744;border-left:3px solid #bc6170}
.cw-app .schedule-layout .detail{max-height:680px;border-left:1px solid #dce7e8}
@media(max-width:800px){.cw-app .calendar-view-header{padding:14px}.cw-app .calendar-view-header .appointment-filters{display:flex;flex-wrap:wrap;width:100%;gap:12px}.cw-app .calendar-view-header label{flex:1;min-width:140px}.cw-app .schedule-page>.toolbar h1{order:-1;flex-basis:100%;text-align:left;font-size:21px}.cw-app .schedule-page>.toolbar .cluster{flex-wrap:wrap}.cw-app .schedule-scroll{max-height:65vh}.cw-app .schedule-layout{grid-template-columns:minmax(0,1fr)}.cw-app .schedule-layout .detail{border-left:0;border-top:1px solid #dce7e8;max-height:none}.cw-calendar-caption{font-size:11px}.cw-calendar-legend{gap:12px}}

