:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#172b4a;background:#f5f7fb;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{width:244px;background:#fff;border-right:1px solid #e8edf4;min-height:100vh;display:flex;flex-direction:column;padding:26px 16px;position:sticky;top:0;height:100vh}.logo{font-size:24px;font-weight:900;letter-spacing:.18em;color:#0d346d;padding:0 12px}.logo span{color:#2766ca}.product-name{font-size:18px;font-weight:750;margin:12px 12px 26px}.pill{background:#edf4ff;color:#2462ae;font-size:10px;letter-spacing:.02em;border-radius:10px;padding:4px 8px;vertical-align:middle}.sidebar-caption{font-size:10px;font-weight:800;letter-spacing:.12em;color:#8998ad;padding:0 12px;margin-bottom:10px}.sidebar nav{display:grid;gap:4px}.sidebar nav button{border:0;border-radius:9px;background:none;color:#60728d;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 12px;font-size:14px}.sidebar nav button span{font-weight:620}.sidebar nav button.active{background:#eaf2ff;color:#0d459b}.sidebar nav button:hover{background:#f2f6fd}.sidebar-bottom{display:grid;gap:11px;margin-top:auto;padding:18px 12px 0;border-top:1px solid #edf0f5}.sidebar-bottom a{color:#174e9d;font-weight:700}.sidebar-bottom span{font-size:12px;color:#8997a8}.body{min-width:0;flex:1}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#fff;border-bottom:1px solid #e8edf4}.breadcrumbs{font-size:13px;color:#7b8ba4}.breadcrumbs span{padding:0 8px;color:#b4c0d1}.breadcrumbs strong{color:#193a66}.top-actions{display:flex;align-items:center;gap:20px;color:#315d98;font-size:12px}.secure{color:#7991a8}.secure i{display:inline-block;background:#27ac7b;border-radius:50%;height:7px;width:7px;margin-right:5px}.mobile-menu{display:none}.page{max-width:1350px;margin:0 auto;padding:36px 38px 80px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:#3165aa}.page-heading h1{font-size:31px;margin:5px 0 7px;letter-spacing:-.8px}.page-heading p{margin:0;color:#8190a4}.primary{border:0;background:#0d469f;color:#fff;font-weight:730;border-radius:9px;padding:13px 18px;cursor:pointer}.primary:hover{background:#073478}.primary.small{font-size:12px;padding:10px 13px}.panel{background:#fff;border:1px solid #e1e9f4;border-radius:15px;padding:22px;min-width:0;box-shadow:0 6px 24px #24467308}.panel h2{font-size:17px;margin:0 0 6px}.panel h3{font-size:15px;margin:0 0 8px}.panel p{color:#70839a;line-height:1.55;margin-top:5px}.panel-top{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.panel-top p{font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.stat{padding:21px;background:white;border:1px solid #e2eaf4;border-radius:14px}.stat span{font-size:12px;color:#7b8ba5}.stat strong{display:block;font-size:31px;margin-top:8px;letter-spacing:-.5px}.stat small{font-size:11px;color:#3484b7}.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-actions button{background:#f5f8fd;border:1px solid #e7ecf6;border-radius:10px;padding:19px 12px;text-align:left;color:#23578b;font-weight:700}.info-soft{background:#eef5ff;border-radius:10px;margin:18px 0;padding:15px;color:#47627e;font-size:12px;line-height:1.6}.filters,.date-tools,.btn-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.filters input,.filters select,.date-tools input,select{border:1px solid #d8e2ed;border-radius:8px;padding:10px;background:white;color:#23415f}.filters button,.btn-row button,.date-tools button,.segmented button,.button-link{border:1px solid #d8e2ed;border-radius:8px;padding:9px 12px;background:#fff;color:#214975}.segmented{margin-left:auto;display:flex;background:#f4f7fb;padding:3px;border-radius:10px}.segmented button{border:0;background:none}.segmented button.selected{background:#0d469f;color:white}.list{display:grid;gap:8px}.appt-item{display:flex;gap:13px;align-items:center;border-bottom:1px solid #ecf0f5;padding:15px 2px}.appt-time{width:90px;flex-shrink:0;color:#215a9f;font-weight:800}.appt-main{flex:1;min-width:0}.appt-main strong{font-size:13px}.appt-main small{display:block;color:#7b8ba3;margin-top:5px}.appt-actions{display:flex;flex-wrap:wrap;gap:7px}.appt-actions button,.tablewrap button{padding:7px 9px;border:1px solid #d9e3ee;border-radius:7px;background:#fff;color:#2e5b8d;font-size:12px}.status{border-radius:12px;background:#e9f5ee;color:#217350;padding:3px 7px;font-size:10px;margin-left:8px}.status.CANCELLED{background:#fcebef;color:#bd5367}.status.SCHEDULED{background:#eaf1ff;color:#3066ab}.status.COMPLETED{background:#edf0f3;color:#566774}.empty{text-align:center;padding:30px 12px;color:#8999ad}.tablewrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;color:#8595a9;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:14px 10px}td{padding:15px 10px;border-top:1px solid #edf1f5;font-size:13px}tr:hover td{background:#fbfcff}.view[hidden],.notice[hidden]{display:none}.notice{background:#fff2df;color:#875e22;border:1px solid #f5d6a5;border-radius:10px;padding:13px 16px;margin-bottom:15px}.form{display:grid;gap:14px}.form label,.panel>label{display:grid;gap:6px;font-size:12px;color:#52657f;font-weight:700}.form input,.form select,.form textarea,.panel>label select{border:1px solid #d2deeb;padding:11px;border-radius:8px;width:100%;color:#21406a;background:#fff}.form .check,.hour-row label{display:flex;align-items:center;gap:8px}.form .check input,.hour-row input[type=checkbox]{width:auto}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.hour-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #edf0f4}.hour-row input[type=time]{border:1px solid #d2deeb;border-radius:7px;padding:8px;max-width:120px}.panel>label{margin:16px 0}.url-box{padding:13px;background:#f4f7fc;word-break:break-all;border-radius:8px;color:#1a5894;font-size:12px}.btn-row{margin-top:12px}.panel hr{border:0;border-top:1px solid #e5ebf5;margin:26px 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:18px}.calendar-day{border:1px solid #edf0f6;border-radius:9px;background:#fff;min-height:112px;padding:9px;min-width:0}.calendar-day h4{font-size:11px;color:#657b96;margin:1px 0 10px}.calendar-day button{display:block;margin:5px 0;border:0;background:#eaf2ff;color:#245488;font-size:11px;text-align:left;padding:6px;border-radius:6px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.calendar-day.month{min-height:95px}.calendar-day.month button{font-size:10px}.calendar-day.today{background:#f3f8ff;border-color:#93b1df}.mobile-menu{background:none;border:0}.link{background:none;border:0;color:#2365ac}dialog{border:0;border-radius:16px;padding:0;width:min(570px,95vw);box-shadow:0 24px 90px #0b285345;max-height:90vh;overflow:auto}dialog::backdrop{background:#0d254877}dialog form{padding:26px}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.dialog-top h2{font-size:23px;margin:5px 0}.dialog-top button{background:none;border:0;font-size:28px;color:#71839b}.dialog-footer{display:flex;justify-content:flex-end;gap:11px;padding-top:15px}.dialog-footer button:not(.primary){border:1px solid #d8e1ef;background:white;padding:11px;border-radius:9px}.inline-error{background:#fff0f1;padding:10px;border-radius:8px;color:#b32d43}.tooltip-row{display:flex;justify-content:space-between;gap:10px;align-items:center}.notification-actions{display:flex;flex-wrap:wrap;gap:6px}.notification-actions a,.notification-actions button{font-size:11px;border:1px solid #d5e3f0;border-radius:7px;padding:7px;background:#f8fbff;color:#22548b}.money{color:#1964a0;font-weight:800}@media(max-width:1050px){.sidebar{width:210px}.page{padding:30px 20px}.topbar{padding:0 22px}}@media(max-width:760px){.sidebar{display:none;position:fixed;z-index:10;box-shadow:0 0 20px #0a204033}.sidebar.show{display:flex}.mobile-menu{display:block}.top-actions .secure{display:none}.two-col,.stats{grid-template-columns:1fr 1fr}.page-heading h1{font-size:26px}.page{padding:24px 14px}.calendar-grid{gap:2px}.calendar-day{padding:4px;min-height:90px}.calendar-day h4{font-size:9px}.calendar-day button{font-size:9px;padding:3px}}@media(max-width:520px){.two-col,.stats{grid-template-columns:1fr}.page-heading{align-items:flex-start}.appt-item{flex-wrap:wrap}.appt-main{width:65%}.field-row{grid-template-columns:1fr}.calendar-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(80px,1fr))}}
/* Care V8 premium person/access cards. Applies to Agenda only; Operations remains untouched. */
.care-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #dbe6f4;background:linear-gradient(115deg,#fff 55%,#edf5ff);padding:26px;border-radius:20px;margin-bottom:22px}.care-intro h2{font-size:24px;letter-spacing:-.04em;margin:7px 0}.care-intro p{max-width:580px;color:#627a91;line-height:1.6}.care-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:15px}.care-person{background:white;border:1px solid #e0e8f2;border-radius:17px;padding:19px;box-shadow:0 9px 32px rgba(20,60,104,.04)}.care-person-head{display:flex;align-items:center;gap:12px}.care-person-head>div:nth-child(2){flex:1;min-width:0}.care-person-head strong,.care-person-head small{display:block;overflow:hidden;text-overflow:ellipsis}.care-person-head small{margin-top:6px;color:#7890a7}.care-avatar{border-radius:14px;display:grid;place-items:center;width:43px;height:43px;background:#eaf3ff;color:#1a62b9;font-size:19px;font-weight:800}.care-state{border-radius:99px;color:#9a4460;background:#fff0f3;padding:5px 8px;font-size:10px;font-weight:800}.care-state.is-active{background:#e6f8ef;color:#188256}.care-tags{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0}.care-tags span{background:#f2f6fc;border:1px solid #e6ecf4;border-radius:20px;padding:5px 9px;color:#416180;font-size:11px}.care-person>button{border-radius:9px;padding:9px 12px;background:#eef5ff;color:#2160a7;border:0;font-weight:800}.care-note{font-size:12px;color:#6a8198;line-height:1.65}.care-permissions{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:8px;margin:18px 0;border:1px solid #dde7f4;border-radius:12px;padding:15px}.care-permissions legend{font-size:13px;font-weight:800;color:#315880}.care-permission{display:flex;align-items:center;gap:8px;border:1px solid #e4eaf4;border-radius:10px;background:#fafcff;padding:11px;font-size:12px;font-weight:600;cursor:pointer}.care-permission input{accent-color:#1768ff}.sidebar button[hidden]{display:none!important}@media(max-width:600px){.care-intro{flex-direction:column;align-items:flex-start}.care-permissions{grid-template-columns:1fr}}
.reception-line{padding:16px;border-bottom:1px solid #edf1f7;display:flex;justify-content:space-between;gap:12px;align-items:center}.reception-line:last-child{border-bottom:0}.reception-line strong,.reception-line small{display:block}.reception-line small{color:#7890a7;margin-top:5px}.reception-line button{border:0;padding:9px 14px;border-radius:9px;background:#eaf3ff;color:#1c62b9;font-weight:750}

/* Agenda V10 — opt-in customer communication on new appointments. */
.appointment-communication{border:1px solid #dbe5f3;background:linear-gradient(145deg,#f8fbff,#fff);border-radius:16px;padding:18px;margin:5px 0 0}.appointment-communication legend{font-size:14px;font-weight:800;color:#204c83;padding:0 8px}.appointment-communication>p{font-size:12px;color:#617994;line-height:1.55;margin:3px 0 14px}.channel-choices{display:grid;gap:9px}.form .channel-choice{display:flex;align-items:flex-start;gap:13px;padding:14px;border-radius:11px;background:white;border:1px solid #e3eaf5;cursor:pointer}.channel-choice:has(input:checked){border-color:#528de0;background:#f0f6ff}.form .channel-choice input{width:17px;height:17px;margin:3px 0 0;accent-color:#1459ba;flex-shrink:0}.channel-choice span{display:block}.channel-choice strong{font-size:13px;color:#214974}.channel-choice small{display:block;font-size:11px;font-weight:400;color:#7a90a6;line-height:1.5;margin-top:4px}.channel-choice:has(input:disabled){opacity:.55;cursor:not-allowed}.communication-hint{font-size:11px;line-height:1.5;color:#6b8098;margin-top:13px}.communication-result{padding:10px;border-radius:8px;background:#eef9f4;color:#235842}.communication-warning{padding:10px;border-radius:8px;background:#fff5e7;color:#916329}.notification-actions{margin-top:14px}.notification-actions a,.notification-actions button{font-size:12px;padding:10px 12px;font-weight:650} 

/* Care V11: ephemeral save feedback, not a permanent banner in page header. */
.notice{position:fixed;right:23px;bottom:23px;top:auto;z-index:120;width:min(380px,calc(100vw - 32px));padding:14px 18px;border:1px solid #bfe5d2;background:#ecfbf5;color:#176947;box-shadow:0 17px 44px #0a284126;border-radius:14px;font-weight:650;}
.notice.notice-error{background:#fff0f1;border-color:#ffcdd5;color:#a51d3e;}
.notice[hidden]{display:none;}
/* V12 · Agenda ⇄ Flow live arrivals and practitioner call */
.status.flow-arrived{background:#e4f8ef;color:#08734d;border:1px solid #b7e8d1;font-weight:800;white-space:nowrap}
.appt-actions .care-call-btn,.reception-line .care-call-btn{background:#215fdf;color:#fff;border:1px solid #215fdf;border-radius:9px;padding:9px 15px;font-weight:800;white-space:nowrap}
.appt-actions .care-call-btn:hover,.reception-line .care-call-btn:hover{background:#1747b3;color:white}
/* VOLENG Agenda Care V13 — branded premium calendar and appointment detail (Agenda-only scope). */
:root{--agenda-navy:#143763;--agenda-blue:#1355bd;--agenda-violet:#6d5be8;--agenda-teal:#11a59a;--agenda-stroke:#dce6f6;--agenda-soft:#f6f8fe}
#view-calendar>.panel{padding:25px 26px 27px;overflow:hidden;border:1px solid #dce6f7;border-radius:22px;box-shadow:0 18px 50px rgba(20,55,99,.065);background:linear-gradient(165deg,#fff 0%,#fff 65%,#fbfcff 100%)}
#view-calendar .filters{padding:0 0 19px;border-bottom:1px solid #eaf0f8}
#view-calendar .date-tools button{height:40px;min-width:40px;border-color:#d9e5f5;color:var(--agenda-navy);font-weight:750;transition:.16s}
#view-calendar .date-tools button:hover{background:#f1f5ff;border-color:#b5cff0}
#view-calendar input[type=date]{border-radius:11px;height:40px;padding:8px 12px;color:#1b3d70;font-weight:700}
#view-calendar .segmented{padding:5px;border:1px solid #e4eaf6;background:#f0f4fc;border-radius:13px}
#view-calendar .segmented button{border-radius:10px;min-width:63px;padding:10px 13px;font-weight:750;color:#547093}
#view-calendar .segmented button.selected{background:linear-gradient(115deg,#1756b9,#245cd9);color:#fff;box-shadow:0 3px 11px rgba(24,79,184,.22)}
.cal-summary{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:24px 0 20px;flex-wrap:wrap}
.cal-summary-label h2{font-size:25px;letter-spacing:-.055em;color:#173864;margin:7px 0 5px}
.cal-summary-label p{font-size:12px;color:#7a8ca8;margin:0}
.cal-metrics{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cal-metrics span{border:1px solid #e4eaf5;border-radius:12px;background:#f7f9ff;color:#58708d;padding:9px 11px;font-size:11px;white-space:nowrap}
.cal-metrics b{font-size:15px;margin-right:5px;color:#1b4e9e}
.calendar-grid.cal-week-grid,.calendar-grid.cal-month-grid{display:grid;gap:8px;overflow-x:auto;padding:2px 1px 8px;margin-top:8px;align-items:stretch}
.calendar-grid.cal-week-grid{grid-template-columns:repeat(7,minmax(152px,1fr))}
.calendar-grid.cal-month-grid{grid-template-columns:repeat(7,minmax(125px,1fr))}
.calendar-day.week,.calendar-day.month{height:auto;background:#fbfcff;border:1px solid #e5ecf7;border-radius:15px;padding:10px;min-width:0;display:flex;flex-direction:column;gap:11px}
.calendar-day.week{min-height:280px}
.calendar-day.month{min-height:130px;padding:9px;gap:8px}
.calendar-day.today{background:linear-gradient(180deg,#f0f5ff,#fbfcff);border-color:#99b9ec;box-shadow:inset 0 3px 0 #3065c9}
.calendar-day.cal-outside{opacity:.55}
.cal-day-head{display:flex;justify-content:space-between;align-items:center;gap:7px;color:#5e789d;font-size:11px;font-weight:760;min-height:22px}
.cal-day-head b{display:grid;place-items:center;border-radius:9px;background:#e9f1ff;color:#1b58a8;min-width:21px;height:21px;font-size:11px}
.cal-day-events{display:grid;gap:8px;align-content:start;min-width:0}
.calendar-day .cal-event,.cal-event{white-space:normal;display:flex;text-align:left;flex-direction:column;gap:5px;width:100%;margin:0;padding:11px 10px;border:1px solid #dce6fa;border-left:4px solid #3d75d0;border-radius:11px;background:linear-gradient(128deg,#f0f5ff 0%,#f9fbff 100%);box-shadow:0 2px 8px rgba(34,74,124,.035);color:#203f6c;transition:transform .15s,box-shadow .15s,border-color .15s;cursor:pointer;overflow:hidden}
.calendar-day .cal-event:hover,.cal-event:hover{transform:translateY(-2px);border-color:#aac5ef;box-shadow:0 8px 22px rgba(17,62,135,.11)}
.cal-event.cal-event-confirmed{border-left-color:#0fa68f;background:linear-gradient(130deg,#edfbf6,#f9fefc)}
.cal-event.cal-event-completed{border-left-color:#94a4b6;background:#f4f6fa}
.cal-event.cal-event-cancelled{border-left-color:#e38b96;background:#fff5f6;opacity:.8}
.cal-time{font-size:11px;font-weight:800;color:#285da7;letter-spacing:.02em}
.cal-end{color:#718aab;font-weight:600}
.cal-customer{font-size:12px;font-weight:820;line-height:1.3;color:#1b345b;overflow-wrap:anywhere}
.cal-service{color:#536f91;font-size:11px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.cal-doctor{color:#617e9a;font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.cal-event-footer{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding-top:2px}
.cal-status{font-size:9px;letter-spacing:.025em;text-transform:uppercase;font-weight:800;color:#3265a6;background:#e2edff;border-radius:6px;padding:3px 6px}
.cal-event-confirmed .cal-status{background:#d6f6e8;color:#177958}
.cal-event-completed .cal-status{background:#e5eaf0;color:#667688}
.cal-event-cancelled .cal-status{background:#fae0e4;color:#ac5366}
.cal-arrived{font-size:9px;font-weight:820;color:#0d896f}
.calendar-day.month .cal-event{padding:6px 7px;gap:3px;border-left-width:3px;border-radius:8px}
.calendar-day.month .cal-customer{font-size:10px}
.calendar-day.month .cal-status{font-size:8px;padding:2px 5px}
.calendar-day.month .cal-event-footer{gap:3px}
.calendar-day.month .cal-arrived{font-size:8px}
.cal-more{background:transparent;border:1px dashed #a8c2e8;color:#285a9e;padding:8px;border-radius:8px;width:100%;font-size:10px;font-weight:750}
.cal-more:hover{background:#eff5ff}
.cal-integrate-note{margin-top:18px;background:#f3f5fd;border-left:3px solid #725be6;border-radius:8px;padding:13px 15px;color:#596e91;font-size:12px;line-height:1.55}
.cal-empty{background:#f7f9ff;border:1px dashed #cbd9ef;border-radius:14px;padding:24px;color:#7b8dac;text-align:center}
.cal-day-list{display:grid;gap:10px}
.cal-day-row{display:flex;align-items:center;gap:14px;padding:6px;background:white;border:1px solid #e7edf7;border-radius:15px}
.cal-day-row>.cal-event{display:grid;grid-template-columns:95px minmax(150px,1fr) minmax(100px,1fr) minmax(100px,1fr) auto;align-items:center;gap:11px;border:0;background:transparent;box-shadow:none;min-height:62px}
.cal-day-row .cal-event:hover{transform:none;background:#f6f8ff;box-shadow:none}
.cal-day-row .cal-event-footer{justify-content:flex-end}
.cal-day-row>.care-call-btn{margin-right:10px}
#appointment-detail{width:min(600px,94vw);border-radius:21px;max-height:90vh;overflow:auto}
.cal-detail-body{padding:30px 31px 25px;background:linear-gradient(165deg,#f7f9ff 0%,#fff 28%)}
.cal-detail-top{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.cal-detail-body h2{font-size:27px;letter-spacing:-.04em;color:#173864;margin:19px 0 7px}
.cal-detail-date{color:#395d93;font-size:14px;font-weight:720;margin-bottom:21px}
.cal-detail-lines{border:1px solid #e1eafb;background:#f9fbff;border-radius:14px;padding:6px 17px}
.cal-detail-row{display:flex;justify-content:space-between;align-items:start;gap:15px;padding:12px 0;border-bottom:1px solid #e6edf7}
.cal-detail-row:last-child{border-bottom:0}
.cal-detail-row span{font-size:12px;color:#7a90aa;flex:0 0 33%}
.cal-detail-row strong{font-size:12px;color:#213e68;text-align:right;font-weight:730;overflow-wrap:anywhere;min-width:0;white-space:pre-wrap}
.cal-detail-note{font-size:11px;line-height:1.5;color:#7d8fad;margin:17px 0}
.cal-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:17px}
.cal-detail-actions>button:not(.primary){background:#fff;border:1px solid #d6e1f2;border-radius:9px;color:#315787;padding:11px 13px;font-size:12px;font-weight:720}
.cal-detail-actions>.primary{padding:11px 13px}
.slug-preview{font-size:11px!important;font-weight:550!important;line-height:1.5;color:#617ca2!important}
#view-settings .panel{border-radius:18px}
#view-settings .panel:first-child{border-top:4px solid #2257be}
#view-settings .url-box{border:1px dashed #c6d6f1;background:#f1f6ff;border-radius:11px;padding:16px;line-height:1.5}
@media(max-width:1020px){.cal-day-row .cal-event{grid-template-columns:90px minmax(100px,1fr) minmax(100px,1fr)}.cal-day-row .cal-event .cal-doctor,.cal-day-row .cal-event-footer{display:none}}
@media(max-width:760px){#view-calendar>.panel{padding:15px 12px}.cal-summary-label h2{font-size:21px}.cal-summary{align-items:flex-start}.calendar-grid.cal-week-grid{grid-template-columns:repeat(7,minmax(155px,1fr))}.calendar-grid.cal-month-grid{grid-template-columns:repeat(7,minmax(120px,1fr))}.cal-day-row .cal-event{display:flex}.cal-day-row .cal-event .cal-doctor,.cal-day-row .cal-event-footer{display:flex}.cal-day-row{flex-wrap:wrap}.cal-day-row>.care-call-btn{margin:0 10px 8px}.cal-detail-body{padding:20px 15px}}

.cal-entry{display:grid;gap:5px;min-width:0}
.cal-entry>.care-call-btn{justify-self:stretch;background:#1255b8;color:#fff;border:0;border-radius:8px;font-size:10px;padding:8px;font-weight:760}
.cal-entry>.care-call-btn:hover{background:#083a86}

/* VOLENG Agenda · Premium Universal UI V17 · compatible with existing Operations / Flow identity. */
:root{--v-ink:#102b52;--v-primary:#124da3;--v-lilac:#6f57df;--v-sea:#0ea99c;--v-amber:#cc8b21;--v-muted:#71849d;--v-line:#e5ebf5;--v-panel:#ffffff;--v-bg:#f5f7fb}
body{background:var(--v-bg);color:var(--v-ink)}
.sidebar{background:linear-gradient(165deg,#fff 68%,#f8faff 100%);box-shadow:8px 0 32px rgba(23,54,95,.025)}
.sidebar nav button{border-radius:13px;min-height:44px;transition:background .17s,transform .17s,color .17s}
.sidebar nav button:hover{transform:translateX(2px)}
.sidebar nav button.active{background:#eaf0fd;box-shadow:inset 3px 0 0 #225bd6}
.topbar{box-shadow:0 2px 12px rgba(30,58,100,.015)}
.page{max-width:1600px;padding-top:31px}
.page-heading h1{font-size:clamp(29px,2.4vw,38px);letter-spacing:-.05em;font-weight:860;color:#102c54}
.page-heading p{font-size:13px;line-height:1.6}
.primary{background:linear-gradient(110deg,#123c84 0%,#225cd1 100%);border-radius:12px;box-shadow:0 8px 19px rgba(31,80,180,.16);transition:filter .17s,transform .17s}
.primary:hover{filter:brightness(1.08);transform:translateY(-1px)}
.panel{border:1px solid var(--v-line)!important;border-radius:22px!important;box-shadow:0 13px 32px rgba(22,50,101,.035)}
.stat{border:1px solid #e1e8f4!important;border-radius:20px!important;box-shadow:0 10px 28px rgba(22,50,101,.035)!important;transition:transform .16s,box-shadow .16s;position:relative;overflow:hidden}
.stat:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(22,50,101,.075)!important}
.agenda-kpi::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#285bd1}
.agenda-kpi-teal::before{background:#14a88b}.agenda-kpi-amber::before{background:#e9a645}.agenda-kpi-violet::before{background:#805be4}
.agenda-kpi span{font-weight:730;color:#5c7192}.agenda-kpi strong{color:#193761;font-size:33px;letter-spacing:-.04em}.agenda-kpi small{color:#94a3b7}
.care-intro{border:1px solid #e4eaf5;border-radius:19px;padding:20px 23px;background:linear-gradient(112deg,#fff 0%,#fafaff 100%);margin-bottom:20px}
.care-intro h2{letter-spacing:-.035em}
#view-calendar>.panel{background:#fff;padding:24px 25px 26px;border:1px solid #e2e8f3}
#view-calendar .filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.v-calendar-selectors{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto}
.v-calendar-selectors select{padding:10px 12px;max-width:215px;border-radius:11px;border:1px solid #dce5f4;background:white;color:#284b7c;min-height:43px;font-weight:700;font-size:12px}
#view-calendar .date-tools{gap:7px}
#view-calendar .segmented{margin-left:0}
.v-cal-scroller{width:100%;overflow:auto;max-height:min(78vh,1000px);border:1px solid #e4eaf3;border-radius:18px;background:#fff;scrollbar-color:#b4c6e3 transparent;scrollbar-width:thin}
.v-time-grid{display:grid;min-width:100%;grid-auto-rows:auto;--v-hour:76px;position:relative}
.v-timeline-corner,.v-timeline-head{height:74px;display:flex;flex-direction:column;justify-content:center;padding:13px 12px;border-bottom:1px solid #dce5f2;border-right:1px solid #e5eaf4;background:#fbfcff;position:sticky;top:0;z-index:11}
.v-timeline-corner{font-size:10px;letter-spacing:.12em;font-weight:900;color:#8c9eba;text-align:center;padding:8px;position:sticky;left:0;z-index:14}
.v-timeline-head{gap:2px;text-align:center;align-items:center}
.v-timeline-head strong{font-size:14px;letter-spacing:-.02em;color:#153763}
.v-timeline-head span{color:#6c829f;font-size:11px}.v-timeline-head b{font-size:10px;border-radius:6px;padding:3px 9px;background:#ecf2ff;color:#275ca8;margin-top:3px}
.v-timeline-head.is-today{background:linear-gradient(145deg,#e7efff,#f5faff);box-shadow:inset 0 3px 0 #2560c7}
.v-time-ruler,.v-timeline-col{position:relative;min-height:100px;border-right:1px solid #e8ecf5;background:repeating-linear-gradient(to bottom,#e8edf6 0,#e8edf6 1px,transparent 1px,transparent 76px),repeating-linear-gradient(to bottom,transparent 0,transparent 37px,rgba(232,237,246,.6) 37px,rgba(232,237,246,.6) 38px,transparent 38px,transparent 76px)}
.v-time-ruler{background:#fff;position:sticky;left:0;z-index:8;box-shadow:1px 0 #dce5f2}
.v-time-label{position:absolute;right:9px;transform:translateY(-7px);font-size:10px;font-weight:730;color:#8da0b9}
.v-timeline-col.is-today{background-color:#fbfcff}
.v-timeline-event{position:absolute;left:5px;right:5px;width:auto;z-index:3;overflow:hidden;display:flex;flex-direction:column;text-align:left;justify-content:flex-start;gap:3px;padding:8px 9px;border-radius:10px;border:1px solid #cbdaf4;border-left:4px solid #4379d0;background:linear-gradient(112deg,#ecf3ff,#f9fbff);box-shadow:0 2px 12px rgba(27,60,125,.07);color:#1b3966;transition:box-shadow .18s,filter .18s}
.v-timeline-event:hover,.v-timeline-event:focus-visible{z-index:9;box-shadow:0 9px 24px rgba(27,60,125,.17);filter:saturate(1.13);outline:2px solid #97b6ef;outline-offset:0}
.v-timeline-event strong{font-size:11px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v-timeline-event small{font-size:10px;color:#6d829c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v-timeline-event em{font-size:10px;font-style:normal;color:#506f98}.v-timeline-event i{font-size:10px;color:#6542cb;font-style:normal;font-weight:800}
.v-timeline-event.v-compact{padding:5px 7px;gap:0}.v-timeline-event.v-compact small{display:none}
.v-timeline-event.v-confirmed,.v-timeline-event.v-arrived{border-color:#b9e4d3;border-left-color:#0da477;background:linear-gradient(120deg,#e2f8ef,#f5fffa)}
.v-timeline-event.v-arrived{border-left-color:#7e57db;background:linear-gradient(115deg,#f2edff,#fcfaff)}
.v-timeline-event.v-completed{border-color:#dce1e9;border-left-color:#9eabc2;background:#f2f4f8}
.v-timeline-event.v-cancelled{border-color:#f1d2d8;border-left-color:#d95e77;background:#fff2f3;opacity:.75}
.v-time-block{z-index:1;position:absolute;left:3px;right:3px;padding:4px 7px;overflow:hidden;border-radius:8px;border-left:3px solid #aab9d1;color:#7d8ea8;font-weight:730;font-size:10px;background:repeating-linear-gradient(-45deg,#f0f3f9,#f0f3f9 8px,#f9fbfe 8px,#f9fbfe 16px)}
#appointment-detail{position:fixed;top:0;right:0;left:auto;bottom:0;height:100vh;max-height:100vh;width:min(500px,100vw);max-width:100vw;margin:0;border-radius:23px 0 0 23px;border:0;box-shadow:-22px 0 65px rgba(9,25,58,.20);animation:v-drawer-in .2s ease both;overflow-y:auto}
#appointment-detail::backdrop{background:rgba(12,31,64,.38);backdrop-filter:blur(3px)}
@keyframes v-drawer-in{from{transform:translateX(30px);opacity:.7}to{transform:translateX(0);opacity:1}}
#appointment-detail .cal-detail-body{padding:38px 30px 28px;background:linear-gradient(154deg,#f5f8ff 0%,#fff 29%);min-height:100vh}
#appointment-detail .cal-detail-body h2{font-size:30px;line-height:1.17}
#appointment-detail .cal-detail-lines{background:white;border:1px solid #e4eaf5;box-shadow:0 6px 19px #132c5508}
#appointment-detail .cal-detail-actions{position:sticky;bottom:0;padding:14px 0;background:linear-gradient(0deg,#fff 82%,transparent)}
.care-grid{grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:14px}
.care-person{border-radius:18px;transition:transform .16s,box-shadow .16s;border:1px solid #e5eaf4;box-shadow:0 6px 24px #1a3b7307;background:#fff}
.care-person:hover{transform:translateY(-2px);box-shadow:0 13px 30px #1a3b7316}
.care-avatar{background:linear-gradient(130deg,#1450b7,#7958e0);color:white;border-radius:14px}
.care-permission{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:10px;min-height:53px;padding:11px 13px!important;border:1px solid #e2e9f4!important;border-radius:13px!important;background:#fafbfe;cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}
.care-permission:hover{background:#f3f6ff;border-color:#c0d4f2!important}
.care-permission:has(input:checked){background:#f3f6ff;border-color:#abc4f5!important;box-shadow:0 3px 10px #1955b408}
.care-permission-copy{color:#2b4772;font-weight:720;font-size:12px;max-width:calc(100% - 52px);text-transform:capitalize}
.care-permission input[type=checkbox]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none}
.care-permission:has(input:focus-visible){outline:2px solid #4583e1;outline-offset:3px}
.care-toggle{width:38px;height:21px;flex-shrink:0;border:1px solid #c1ccdd;background:#cad4e3;border-radius:999px;position:relative;transition:.15s}
.care-toggle:before{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;background:#fff;border-radius:100%;box-shadow:0 1px 4px #1d34551e;transition:transform .15s}
.care-permission input:checked+.care-toggle{background:#2e63cd;border-color:#2255bc}
.care-permission input:checked+.care-toggle:before{transform:translateX(16px)}
.care-account-preview{display:flex;align-items:center;gap:12px;background:linear-gradient(120deg,#f0f6ff,#f7f6ff);border:1px solid #dce7fb;border-radius:15px;padding:13px 14px;margin:13px 0;color:#214579}
.care-account-preview div{display:flex;flex-direction:column;gap:3px;min-width:0}.care-account-preview strong{font-size:12px}.care-account-preview small{font-size:11px;line-height:1.4;color:#6f819a;overflow-wrap:anywhere}.care-preview-icon{width:39px;height:39px;display:grid;place-items:center;flex-shrink:0;border-radius:11px;color:white;background:linear-gradient(125deg,#1c59bb,#7361d6);font-weight:880}
.care-linked-badge{margin-left:auto;border-radius:8px;padding:5px 9px;background:#ddf8ee;color:#087c62;font-weight:850;font-size:10px}
#view-appointments .appt-item,#view-reception .reception-line{border:1px solid #e5ebf4!important;border-radius:13px!important;background:#fff;padding:15px 13px;margin-bottom:8px;transition:box-shadow .16s}
#view-appointments .appt-item:hover,#view-reception .reception-line:hover{box-shadow:0 5px 20px #18447712}
#view-appointments .appt-actions button{border-radius:9px;font-weight:700}
#appointments-search{min-width:200px;border:1px solid #dfe8f5;border-radius:10px;background:#fafcff}
#view-reception .panel{background:linear-gradient(145deg,#fff,#fbfcff)}
#view-reception .reception-line strong{color:#153965}
@media(max-width:1110px){.v-calendar-selectors{margin-left:0}}
@media(max-width:780px){.page{padding:22px 15px 66px}.page-heading{align-items:flex-start}.v-cal-scroller{max-height:75vh}.v-timeline-col{min-width:175px}.v-calendar-selectors select{max-width:170px}.v-time-grid{min-width:max-content}.agenda-kpi strong{font-size:28px}.care-permissions{gap:10px!important}.care-permission{min-width:0}.sidebar{z-index:50}#appointment-detail{border-radius:0;width:100vw}.cal-detail-body{padding:21px!important}}
@media(prefers-reduced-motion:reduce){.v-timeline-event,.care-person,.primary,#appointment-detail{transition:none!important;animation:none!important}}
.v-payment-chip{display:inline-flex;align-items:center;width:fit-content;align-self:flex-start;margin:2px 3px;border-radius:6px;padding:3px 7px;font-size:10px;text-transform:capitalize;letter-spacing:.01em;font-weight:800;color:#6957ae;background:#f0edff}
.v-payment-chip.v-payment-paid{background:#e4f8ef;color:#057c59}.v-payment-chip.v-payment-unpaid{background:#fff1e2;color:#ae731a}

/* Public booking branding 25.36 */
.agenda-branding-panel{margin-top:22px}.agenda-branding-panel .agenda-brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.agenda-branding-panel textarea{width:100%;min-height:95px;resize:vertical}.agenda-brand-hint{color:#61748d;font-size:12px}.agenda-brand-preview{display:flex;gap:15px;flex-wrap:wrap;padding:10px 0}.agenda-brand-preview div{display:grid;gap:8px}.agenda-brand-preview img{width:190px;max-height:140px;object-fit:contain;border:1px solid #d5e4f5;border-radius:13px}@media(max-width:650px){.agenda-branding-panel .agenda-brand-grid{grid-template-columns:1fr}}

/* V25.38 branded booking crop controls */
.agenda-cover-editor{border:1px solid #dbe5f4;border-radius:16px;padding:19px;background:#f8fbff;margin:18px 0}.agenda-cover-editor h3{margin:0 0 7px;font-size:17px}.agenda-cover-editor p{color:#527092;font-size:12px;line-height:1.6}.agenda-crop-viewport{position:relative;height:210px;overflow:hidden;border-radius:13px;background:linear-gradient(100deg,#112953,#2679b8);touch-action:none;cursor:grab}.agenda-crop-viewport:active{cursor:grabbing}.agenda-crop-viewport img{width:100%;height:100%;display:block;object-fit:cover;max-width:none;pointer-events:none}.agenda-crop-viewport img[hidden]{display:none}.agenda-crop-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.agenda-crop-actions span{font-size:12px;color:#4a6284}.agenda-cover-editor input[type=range]{width:100%;accent-color:#2469e3}
.agenda-crop-mobile-wrap{display:flex;align-items:center;gap:14px;margin-top:14px}.agenda-crop-mobile-wrap span{font-size:12px;color:#57708f}.agenda-crop-mobile{width:165px;height:105px;border:5px solid #233b64;border-radius:15px;overflow:hidden;background:#254c8d}.agenda-crop-mobile img{width:100%;height:100%;display:block;object-fit:cover}.agenda-crop-mobile img[hidden]{display:none}

/* V25.66 · Agenda shows online status only where Core supplied app_online. */
.care-presence-summary{grid-column:1/-1;border:1px solid #c4ead4;border-radius:16px;background:linear-gradient(115deg,#ecfcf2,#f8fbff);padding:16px 20px;display:flex;gap:9px;flex-direction:column}.care-presence-summary strong{font-size:15px;color:#124d37}.care-presence-summary span{font-weight:800;color:#268556;font-size:13px}.care-presence-summary small{color:#668079;font-size:11px}.care-presence{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.care-presence.is-online{background:#e6f9ef;color:#137a49}.care-presence.is-offline{background:#f0f3f6;color:#697786}.care-presence.is-unknown{background:#fff8e9;color:#856b24}
