/* Shifocall 5.8.63: responsive cabinet and private correspondence. */
.sc{--sc-accent:#22746d;--sc-soft:#e7f1ed;--sc-ink:#243b3b;--sc-muted:#647b78;--sc-line:#dce7e3;--sc-bg:#f5f8f6;--sc-card:#fff}
.sc button,.sc-call button,.sc-thread-dialog button{cursor:pointer;touch-action:manipulation}
.sc button:disabled,.sc-call button:disabled,.sc-thread-dialog button:disabled{cursor:default;opacity:.5}
.sc :focus-visible,.sc-call :focus-visible,.sc-thread-dialog :focus-visible{outline:3px solid #58b7a9;outline-offset:3px}
.sc svg,.sc-thread-dialog svg{width:20px;height:20px;flex:none}
#scStaff{background:radial-gradient(ellipse at 88% 20%,#edf1ff,transparent 55%),#f8faf9;padding-bottom:64px}
#scStaff .sc-wrap{max-width:1360px}
#scStaff .sc-topline{margin-bottom:30px}
#scStaff .sc-toolbar>div:first-child{min-width:0}
#scStaffName{font-size:clamp(23px,3vw,32px)!important;font-weight:600;letter-spacing:-1px!important;margin:0!important}
#scStaffRole{margin-top:8px;color:var(--sc-muted);font-size:12px}
#scStaff .sc-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0 28px}
#scStaff .sc-stat{min-height:128px;border:0;border-radius:24px;background:#eeedf9;padding:24px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
#scStaff .sc-stat:nth-child(2){background:#e3efeb}
#scStaff .sc-stat:nth-child(3){background:#eef1f9}
#scStaff .sc-stat:nth-child(4){background:#f3ecdf}
#scStaff .sc-stat::after{content:'↗';position:absolute;right:20px;top:20px;font-size:18px;color:#59736c}
#scStaff .sc-stat b{font-size:36px;line-height:1.2;letter-spacing:-1.5px;font-weight:500;color:#243b3b}
#scStaff .sc-stat span{font-size:12px;color:#536763}
#scStaff .sc-tabs{gap:7px;flex-wrap:nowrap;overflow-x:auto;padding:5px;margin:0 0 20px;background:#eef2f0;border-radius:30px;width:max-content;max-width:100%;scrollbar-width:none}
#scStaff .sc-tabs .sc-filter{border:0;border-radius:24px;background:none;white-space:nowrap;padding:11px 19px;font-size:12px}
#scStaff .sc-tabs .sc-filter[aria-pressed=true]{background:#fff;color:#263d37;box-shadow:0 3px 8px #123b3310}
#scStaff .sc-panel{border:1px solid #e6ece9;border-radius:26px;padding:26px;margin:0;min-width:0;box-shadow:0 10px 35px #264b3d03}
#scStaff .sc-panel h3{font-size:19px;letter-spacing:-.5px}
#scStaff .sc-panel>.sc-toolbar{padding:0 0 20px!important;border:0!important}
.sc-desk-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}
.sc-desk-layout .sc-table th{background:transparent;padding-top:20px;padding-bottom:16px;font-size:10px;text-transform:uppercase;letter-spacing:1px}
.sc-desk-layout .sc-table td{padding:19px 9px;line-height:1.6}
.sc-table td>strong,.sc-table td strong{font-weight:550}
.sc-table .sc-actions{gap:6px}
.sc-table td:nth-child(2)>small{color:var(--sc-muted);margin-top:4px;line-height:1.5}
.sc-table td:nth-child(2)>small:last-child{max-width:220px}
.sc-schedule-side{padding:25px 22px 22px;border-radius:26px;background:linear-gradient(153deg,#248d82 0%,#4b8492 42%,#9387c0 100%);color:#fff;box-shadow:0 12px 40px #406e8d1a}
.sc-schedule-heading{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.sc-schedule-heading>span{width:40px;height:40px;display:grid;place-items:center;background:#ffffff18;border-radius:14px}
.sc-schedule-heading small{font-size:8px;letter-spacing:1.7px;opacity:.85}
.sc-schedule-heading h3{font-size:18px!important;color:#fff!important;margin:5px 0 0!important;font-weight:500}
.sc-mini-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.sc-mini-calendar small{font-size:9px;color:#e3eeef;padding:4px 0 12px}
.sc-mini-calendar button{aspect-ratio:1;border:0;border-radius:50%;background:transparent;color:#fff;font:500 11px Inter,system-ui;padding:0;min-height:29px}
.sc-mini-calendar button:hover{background:#ffffff22}
.sc-mini-calendar button.is-today{box-shadow:inset 0 0 0 1px #ffffff88}
.sc-mini-calendar button[aria-pressed=true]{color:#315e67;background:#fff;box-shadow:0 5px 15px #224a6015}
.sc-day-agenda{margin:24px 0;border-top:1px solid #ffffff25;padding-top:18px}
.sc-day-agenda>small{font-size:10px;color:#e7f1ee}
.sc-day-agenda>p{color:#f1f4fb;font-size:12px;line-height:1.8;margin-top:14px}
.sc-day-agenda>div{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid #ffffff16;font-size:11px}
.sc-day-agenda>div>b{font-weight:500;min-width:35px}
.sc-day-agenda>div>span{font-weight:500;overflow-wrap:anywhere}
.sc-day-agenda small small,.sc-day-agenda>div small{display:block;font-size:9px;opacity:.78;margin-top:5px}
.sc-schedule-side .sc-btn{border:1px solid #ffffff3f!important;background:#ffffff13!important;color:white!important;border-radius:24px;font-size:10px;min-height:43px}
.sc-inbox-badge:not(:empty){background:#e78a64;color:white;border-radius:50px;min-width:20px;display:inline-flex;align-items:center;justify-content:center;margin-left:7px;padding:2px 5px;font-size:10px}
.sc-inbox-search{display:flex;align-items:center;gap:10px;border:1px solid var(--sc-line);border-radius:24px;padding:0 13px;max-width:280px}
.sc-inbox-search input{border:0!important;background:transparent!important;padding:11px 0!important}
.sc-thread-row{display:flex;align-items:center;gap:14px;width:100%;text-align:left;color:var(--sc-ink);font-family:inherit;background:none;border:0;border-bottom:1px solid var(--sc-line);padding:20px 8px;border-radius:13px}
.sc-thread-row:hover{background:var(--sc-bg)}
.sc-patient-initials{display:grid;place-items:center;width:48px;height:48px;flex:none;background:#e9eeee;border-radius:17px;color:#487e74;font-size:15px;font-weight:550}
.sc-thread-summary{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.sc-thread-summary strong{font-weight:550;font-size:14px}
.sc-thread-summary>span{font-size:12px;color:var(--sc-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc-thread-summary small{font-size:10px;color:var(--sc-muted)}
.sc-thread-meta{display:flex;align-items:flex-end;flex-direction:column;gap:10px;font-size:9px;color:var(--sc-muted)}
.sc-thread-meta b{border-radius:20px;background:var(--sc-accent);color:#fff;padding:4px 7px;font-weight:500}
/* Public directory and appointment */
#shifocall .sc-appointment{border-radius:26px;background:linear-gradient(130deg,#eff6f2,#f5f3fb);border-color:#e0e9e2}
#shifocall .sc-appt-info{line-height:1.8}
#shifocall .sc-doctor{box-shadow:0 8px 30px #183d3410;border-color:#e5ece9;transition:transform .2s,box-shadow .2s}
#shifocall .sc-doctor:hover{transform:translateY(-3px);box-shadow:0 14px 36px #183d3415}
#shifocall .sc-doctor .sc-btn+.sc-btn{margin-top:8px}
#shifocall .sc-doctor>.sc-small{margin:8px 0 14px}
#shifocall .sc-doctor .sc-btn:disabled{opacity:.7;color:#5b756d;background:#eef2f0;border-color:#eef2f0}
#shifocall #scMyList{gap:8px;margin:20px 0;flex-wrap:wrap}
.sc-appointment .sc-actions{gap:9px}
/* A private conversation is used both in the call and in the cabinet. */
.sc-conversation{--msg-ink:#f5ffff;--msg-muted:#e2eff1;--msg-line:#ffffff25;--msg-surface:#ffffff16;--msg-own:#c7f0e323;display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;color:var(--msg-ink);font-family:Inter,system-ui,sans-serif}
.sc-conversation [hidden]{display:none!important}
.sc-call [data-conversation]{min-height:0;flex:1}
.sc-call .sc-chat-panel{padding-bottom:16px}
.sc-conversation .sc-message-list{min-height:60px;flex:1;overflow-y:auto;padding:12px 1px;scrollbar-width:thin;scrollbar-color:#9cb6b3 transparent;overscroll-behavior:contain}
.sc-conversation .sc-chat-note{display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 12px;color:var(--msg-muted);font-size:11px;line-height:1.7;text-align:center}
.sc-conversation .sc-chat-note>svg{width:24px;height:24px;opacity:.6}
.sc-conversation .sc-chat-note>strong{font-size:13px;color:var(--msg-ink);font-weight:500}
.sc-conversation .sc-message{border:1px solid var(--msg-line);background:var(--msg-surface);white-space:normal;margin:0 24px 13px 0;padding:12px 13px;border-radius:15px 15px 15px 4px;color:var(--msg-ink);line-height:1.6;font-size:12px;overflow-wrap:anywhere}
.sc-conversation .sc-message.self{background:var(--msg-own);margin:0 0 13px 24px;border-radius:15px 15px 4px 15px}
.sc-conversation .sc-message p{margin:4px 0!important;font-size:12px!important;line-height:1.65;color:inherit!important;white-space:pre-wrap}
.sc-conversation .sc-message small{color:var(--msg-muted);margin:0;font-size:9px;display:block}
.sc-conversation .sc-message .sc-message-by{font-size:9px;font-weight:600;margin-bottom:7px;opacity:.9}
.sc-conversation .sc-message .sc-message-stamp{text-align:right;margin-top:9px;font-size:8px;opacity:.8}
.sc-conversation .sc-compose{display:flex;align-items:center;flex:none;border:1px solid var(--msg-line);background:var(--msg-surface);border-radius:24px;padding:6px;gap:2px;margin:0}
.sc-conversation .sc-compose input{color:var(--msg-ink);font:12px Inter,system-ui;width:0;min-width:0;flex:1;height:32px;padding:4px;border:0;border-radius:0;background:transparent;outline-offset:0}
.sc-conversation .sc-compose input::placeholder{color:var(--msg-muted);opacity:.85}
.sc-conversation .sc-compose button{border:0;background:none;color:var(--msg-ink);width:32px;min-height:36px;flex:none;display:grid;place-items:center;padding:6px;border-radius:50%}
.sc-conversation .sc-compose button:hover{background:#ffffff18}
.sc-conversation .sc-compose button[data-send]{background:#eaf6f0;color:#326d64}
.sc-conversation .sc-compose svg{width:18px;height:18px}
.sc-message-status{font-size:9px;color:var(--msg-muted);line-height:1.45;padding:8px 5px 0;min-height:24px;flex:none}
.sc-message-status.is-error{color:#ffe0d7}
.sc-msg-older{flex:none;align-self:center;border:1px solid var(--msg-line);border-radius:20px;background:var(--msg-surface);color:var(--msg-ink);padding:6px 13px;font-size:10px}
.sc-private-media{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:0;background:transparent;color:var(--msg-ink);padding:8px 0;font:12px Inter,system-ui;width:100%;text-align:left}
.sc-private-media span{flex:1;min-width:0;overflow-wrap:anywhere}
.sc-private-media small{flex-basis:100%;margin-left:28px!important}
.sc-private-image{display:block;width:100%;max-height:300px;object-fit:contain;border-radius:9px;background:#ffffff0b;cursor:zoom-in}
.sc-conversation audio{display:block;width:100%;max-width:100%;height:40px;margin:8px 0}
.sc-message-preview{flex:none;border:1px solid var(--msg-line);background:var(--msg-surface);padding:12px;border-radius:15px;margin-bottom:10px;max-height:185px;overflow-y:auto;font-size:11px}
.sc-message-preview>strong{font-size:11px;display:block;overflow-wrap:anywhere;font-weight:500}
.sc-pending-actions{display:flex;gap:8px;margin-top:10px}
.sc-conversation .sc-btn{font:500 11px Inter,system-ui;min-height:34px;border:1px solid var(--msg-line);background:var(--msg-surface);color:var(--msg-ink);border-radius:20px;padding:7px 13px}
.sc-conversation .sc-primary{background:#e5f2eb!important;color:#27665c!important}
.sc-recording{display:flex;align-items:center;gap:8px;padding:10px 0;font-size:10px;flex-wrap:wrap;flex:none}
.sc-recording>button{border:1px solid var(--msg-line);background:var(--msg-surface);color:var(--msg-ink);border-radius:20px;padding:8px;font:10px Inter,system-ui;min-height:34px}
.sc-record-dot{width:7px;height:7px;border-radius:50%;background:#ff8a80}
.sc-thread-dialog{padding:0;width:min(560px,calc(100vw - 32px));height:min(760px,calc(100dvh - 64px));max-height:calc(100dvh - 32px);border:1px solid #cedfdb;border-radius:28px;box-shadow:0 25px 100px #092f3955;color:#263d3a;overflow:hidden;font-family:Inter,system-ui}
.sc-thread-dialog[open]{display:flex;flex-direction:column}
.sc-thread-dialog::backdrop,.sc-image-viewer::backdrop{background:#122f3bd1;backdrop-filter:blur(8px)}
.sc-thread-head{display:flex;align-items:center;gap:13px;padding:23px 25px;background:linear-gradient(120deg,#e3eee8,#edebf8);border-bottom:1px solid #d9e4df;flex:none}
.sc-thread-head>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}
.sc-thread-head small{font-size:8px;letter-spacing:1.6px;color:#627875}
.sc-thread-head strong{font-weight:550;font-size:17px;overflow-wrap:anywhere}
.sc-thread-mark{font-size:27px;color:#327f70}
.sc-thread-head .sc-close{background:#ffffff80;color:#42685d;width:35px;height:35px;border:0;border-radius:50%;display:grid;place-items:center}
.sc-thread-dialog .sc-conversation{--msg-ink:#29433d;--msg-muted:#627870;--msg-line:#d8e5df;--msg-surface:#fff;--msg-own:#e5f1eb;padding:10px 22px 16px;background:#f4f8f6}
.sc-thread-dialog .sc-compose{background:#fff}
.sc-thread-dialog .sc-compose button[data-send]{background:#2e7d6b;color:#fff}
.sc-thread-dialog .sc-message-status.is-error{color:#a34332}
.sc-image-viewer{width:min(1000px,calc(100vw - 20px));max-height:95dvh;padding:14px;border:0;border-radius:20px;background:#f1f6f3}
.sc-image-viewer>img{display:block;object-fit:contain;width:100%;max-height:82dvh;margin-top:12px}
.sc-image-viewer>.sc-btn{float:right;padding:9px 20px;border:0;border-radius:20px;background:#e1ebe5;color:#2d5346;cursor:pointer}
[data-xovos-theme=dark] #scStaff{background:radial-gradient(ellipse at 80% 0,#233748,transparent 60%),#122d32}
[data-xovos-theme=dark] #scStaff .sc-tabs{background:#254347}
[data-xovos-theme=dark] #scStaff .sc-tabs .sc-filter[aria-pressed=true]{background:#41645e;color:white}
[data-xovos-theme=dark] #scStaff .sc-panel{border-color:#294c50}
[data-xovos-theme=dark] #shifocall .sc-appointment{background:linear-gradient(120deg,#24473f,#263e51);border-color:#36594e}
@media(min-width:1500px){.sc-desk-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1100px){.sc-desk-layout{grid-template-columns:minmax(0,1fr)}.sc-schedule-side{display:grid;grid-template-columns:1fr 1fr;gap:15px 28px}.sc-schedule-heading{margin-bottom:0}.sc-mini-calendar{grid-row:2/4;grid-column:1}.sc-day-agenda{grid-column:2;grid-row:1/3;margin:0;border:0}.sc-schedule-side>.sc-btn{grid-column:2}.sc-mini-calendar button{aspect-ratio:auto;min-height:32px}}
@media(max-width:700px){
 #scStaff{padding-top:22px}#scStaff .sc-wrap{width:calc(100% - 28px)}#scStaff .sc-topline{margin-bottom:16px}#scDesk>.sc-toolbar{padding-top:12px;gap:18px}#scStaffName{font-size:24px!important}
 #scStaff .sc-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}
 #scStaff .sc-stat{min-height:127px;padding:21px;border-radius:24px}#scStaff .sc-stat b{font-size:34px}#scStaff .sc-stat span{font-size:11px}
 #scStaff .sc-tabs{width:100%;box-sizing:border-box;margin-bottom:18px}#scStaff .sc-tabs .sc-filter{padding:11px 14px;font-size:11px}
 #scStaff .sc-panel{padding:20px 15px;border-radius:25px}#scStaff .sc-panel>.sc-toolbar{gap:15px}
 .sc-table-wrap{overflow:visible}.sc-table,.sc-table tbody,.sc-table tr,.sc-table td{display:block;width:100%;box-sizing:border-box}.sc-table thead{display:none}.sc-table tbody{display:grid;gap:12px}.sc-table tr{border:1px solid var(--sc-line);border-radius:20px;padding:17px;background:var(--sc-card)}.sc-table td,.sc-desk-layout .sc-table td{padding:5px 0;border:0}.sc-table td:first-child{font-size:10px;color:var(--sc-muted)}.sc-table td:nth-child(2)>strong{font-size:16px}.sc-table td:nth-child(2)>small:last-child{max-width:none}.sc-table .sc-actions{margin-top:9px!important;gap:7px}.sc-table .sc-btn{min-height:38px;padding:9px 12px;border-radius:20px;font-size:11px}.sc-table td:nth-child(3){padding-top:10px}.sc-table tr:last-child{border-bottom:1px solid var(--sc-line)}
 .sc-schedule-side{display:block;padding:24px}.sc-mini-calendar{margin:23px 0;gap:7px}.sc-mini-calendar button{min-height:34px}.sc-day-agenda{margin:20px 0;border-top:1px solid #ffffff25;padding-top:19px}.sc-schedule-heading h3{font-size:21px!important}
 .sc-inbox-search{max-width:none}.sc-thread-row{gap:10px;padding:18px 0}.sc-patient-initials{width:40px;height:42px;font-size:13px}.sc-thread-summary strong{font-size:13px}.sc-thread-meta{font-size:8px}.sc-thread-summary>span{max-width:200px}
 #shifocall .sc-hero h1{font-size:36px!important;line-height:1.16!important}.sc-hero-cta .sc-btn{min-height:46px}.sc-appointment .sc-actions>.sc-btn{flex:1 1 45%;justify-content:center;font-size:11px}.sc-appointment-head .sc-tag{font-size:10px}.sc-dialog input,.sc-dialog textarea,.sc-dialog select,.sc-thread-dialog .sc-compose input{font-size:16px!important}
 .sc-thread-dialog{width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);max-width:none;border-radius:24px;margin:auto}
 .sc-thread-head{padding:19px 18px}.sc-thread-head strong{font-size:16px}.sc-thread-dialog .sc-conversation{padding:10px 14px max(12px,env(safe-area-inset-bottom))}
 .sc-conversation .sc-compose{padding:5px}.sc-conversation .sc-compose input{font-size:16px}.sc-conversation .sc-compose button{width:34px;min-height:38px}.sc-conversation .sc-message p{font-size:13px!important}.sc-conversation .sc-message-list{min-height:45px}
 .sc-call .sc-chat-panel{inset:92px 10px 82px;width:calc(100% - 20px);padding:18px;border-radius:24px;box-sizing:border-box;background:linear-gradient(153deg,#22776ff5,#59618ded 70%,#8976b6f5);backdrop-filter:blur(28px)}
 .sc-call .sc-chat-title{padding-bottom:12px}.sc-call .sc-chat-divider{padding:10px 0}.sc-call .sc-compose input{font-size:16px}.sc-call .sc-message-status{font-size:9px}
}
@media(max-width:370px){#scStaff .sc-wrap{width:calc(100% - 20px)}.sc-appointment .sc-actions>.sc-btn{flex-basis:100%}.sc-thread-summary>span{max-width:145px}.sc-call .sc-chat-panel{padding:13px}.sc-conversation .sc-message{margin-right:12px}.sc-conversation .sc-message.self{margin-left:12px}.sc-mini-calendar{gap:3px}}
@media(max-height:540px){.sc-call .sc-chat-panel{inset:55px 8px 58px auto;width:min(370px,46%);padding:12px}.sc-call .sc-chat-title{padding-bottom:6px}.sc-call .sc-chat-divider{display:none}.sc-message-preview{max-height:115px}.sc-thread-head{padding:12px 18px}.sc-thread-dialog{height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}}
/* The main site uses a root zoom. Percent viewport bounds keep dialogs inside it. */
.sc-thread-dialog{position:fixed;inset:12px;width:min(560px,calc(100% - 24px));height:min(760px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100% - 24px);box-sizing:border-box;margin:auto}
.sc-thread-dialog *,.sc-image-viewer *{box-sizing:border-box}
.sc-conversation .sc-message{box-shadow:none!important;flex:none;backdrop-filter:none!important}
.sc-image-viewer{position:fixed;inset:12px;width:min(1000px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100% - 24px);box-sizing:border-box;margin:auto}
@media(max-width:700px){.sc-thread-dialog{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);max-width:calc(100% - 12px);max-height:calc(100% - 12px)}}
