:root{--ce-ink:#172e40;--ce-teal:#16756f;--ce-paper:#f4f7f8;--ce-line:#dce5e8}
.portal{background:var(--ce-paper)}.side{background:#132e40!important;color:#dbe9ee}.side nav a{color:#dbe9ee!important;border-radius:7px;margin:3px 10px;padding:10px 14px}.side nav a.active{background:#24625f!important;color:white!important}.side-brand{color:white!important}.side nav{padding-top:15px}.topbar{border-bottom:1px solid var(--ce-line);box-shadow:none}.page{padding:30px;max-width:1600px;width:100%;margin:auto}.page h1,.ce-meeting h1{font-family:inherit;letter-spacing:-.03em}.card{border:1px solid var(--ce-line);box-shadow:none;border-radius:12px}.ce-welcome{display:flex;justify-content:space-between;align-items:center;margin:8px 0 26px}.ce-welcome h1{font-size:2.5rem;margin:4px 0}.ce-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0 26px}.ce-stats>a{display:flex;flex-direction:column;gap:14px;padding:22px;border:1px solid var(--ce-line);background:white;border-radius:12px;color:var(--ce-ink);text-decoration:none}.ce-stats strong{font-size:2.1rem;letter-spacing:-.035em}.ce-stats span{font-size:.9rem;color:#527080}.ce-two{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:start}.ce-two>.card{padding:25px;min-width:0}.ce-visit{border:0;border-top:1px solid var(--ce-line);display:flex;gap:18px;width:100%;text-align:start;background:white;padding:20px 0;align-items:center;color:var(--ce-ink);cursor:pointer}.ce-visit small{display:block;color:#6e818a;font-size:.78rem;margin-top:5px}.ce-visit .badge{margin-inline-start:auto}.ce-time{font-weight:700;min-width:64px}.ce-care-card>a{display:block;padding:15px 0;border-bottom:1px solid var(--ce-line);color:var(--ce-teal);text-decoration:none}.ce-callout{margin-top:24px;background:#edf5f3;padding:20px;border-radius:8px}.ce-calendar-tools{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}.ce-segment,.ce-tabs{display:flex;gap:3px;padding:4px;background:#e6eeef;border-radius:9px}.ce-tabs{margin-bottom:22px;flex-wrap:wrap}.ce-segment button,.ce-tabs button{border:0;background:transparent;color:var(--ce-ink);padding:10px 15px;border-radius:6px;cursor:pointer}.ce-segment [aria-pressed=true],.ce-tabs [aria-pressed=true]{background:white;box-shadow:0 1px 3px #122a4015}.ce-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--ce-line);border-radius:12px;overflow:auto;background:white}.ce-calendar.day{grid-template-columns:1fr}.ce-day{border-inline-end:1px solid var(--ce-line);min-height:340px;padding:8px}.ce-calendar.month .ce-day{min-height:140px;border-bottom:1px solid var(--ce-line)}.ce-day-label{border:0;background:none;display:block;width:100%;padding:12px 0;text-align:center;color:#617987;font-weight:600;cursor:pointer}.is-today>.ce-day-label{color:white;background:var(--ce-teal);border-radius:6px}.ce-appointment{display:flex;flex-direction:column;text-align:start;gap:5px;border:0;border-inline-start:3px solid #75a093;border-radius:6px;background:#eaf3ef;color:#203f35;width:100%;margin:8px 0;padding:10px;cursor:pointer}.ce-appointment b{font-size:.78rem}.ce-appointment small{font-size:.72rem}.ce-video{background:#edf1fa;border-color:#6c86c1;color:#293d70}.ce-online{font-size:.68rem;font-weight:600}.ce-calendar.month .ce-appointment small,.ce-calendar.month .ce-online{display:none}.ce-record{padding:18px 0;border-bottom:1px solid var(--ce-line)}.ce-record textarea{min-height:180px}.ce-big{font-size:2.5rem}.ce-two label,.ce-invitations label{display:block;margin:14px 0}.ce-two select,.ce-two input,.ce-two textarea{width:100%;margin-top:7px}.ce-two .check-line{display:flex;align-items:center}.ce-two .check-line input{width:auto;margin:0}.ce-two fieldset{border:1px solid var(--ce-line);padding:12px}.ce-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ce-invitations{margin-bottom:24px}#ce-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:16px 24px;color:white;background:#153948;border-radius:10px;z-index:99999;max-width:90vw}.ce-meeting{background:#f2f6f7;min-height:100vh;padding:24px}.ce-meeting header{display:flex;gap:22px;align-items:center;border-bottom:1px solid var(--ce-line);padding-bottom:20px}.ce-meeting header .lang-pick{margin-inline-start:auto}.ce-meeting-layout{max-width:1500px;margin:28px auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:25px}.ce-meeting-layout aside{padding:22px}.ce-room-status{padding:14px 0;color:#48636e}.ce-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.ce-video-tile{aspect-ratio:16/10;background:#182f3f;border-radius:14px;overflow:hidden;position:relative}.ce-video-tile video{height:100%;width:100%;object-fit:contain}.ce-video-tile span{position:absolute;bottom:14px;inset-inline-start:14px;color:#d3e0e4}.ce-meeting-controls{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.ce-meeting-controls button{background:white}.ce-person{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid var(--ce-line)}.ce-meeting label{display:block;margin:16px 0}.ce-meeting .check-line{display:flex;gap:12px;align-items:start}.ce-meeting .check-line input{width:auto}.ce-meeting input{width:100%}[dir=rtl] .side{border-left:1px solid #284251;border-right:0}[dir=rtl] .ce-visit{text-align:right}[dir=rtl] .ce-meeting input[type=text]{text-align:right}:focus-visible{outline:3px solid #31a79c;outline-offset:3px}
.ce-effect-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ce-file-button{display:inline-flex!important;margin:0!important;width:auto!important;cursor:pointer}.ce-effect-tools .check-line{margin:0!important}.ce-light-range{display:flex!important;align-items:center;gap:10px;margin:0!important;min-width:220px}.ce-light-range input{min-height:0;margin:0;width:120px}.ce-video-tile video{transform:scaleX(-1)}.ce-video-tile:not(:first-child) video{transform:none}
@media(max-width:1050px){.ce-two{grid-template-columns:1fr}.ce-calendar.week{grid-template-columns:repeat(7,minmax(130px,1fr))}.ce-calendar.month{grid-template-columns:repeat(7,minmax(95px,1fr))}.ce-meeting-layout{grid-template-columns:1fr}.ce-meeting-layout aside{max-width:none}.page{padding:20px}.ce-stats{gap:10px}.ce-stats>a{padding:16px}}

@media(max-width:600px){.ce-stats{grid-template-columns:1fr}.ce-stats>a{flex-direction:row;align-items:center;justify-content:space-between}.ce-stats strong{font-size:1.7rem}.ce-welcome{align-items:flex-start}.ce-welcome h1{font-size:2rem}.ce-visit{gap:8px}.ce-visit .badge{display:none}.ce-meeting{padding:14px}.ce-meeting header{flex-wrap:wrap;gap:12px}.ce-two>.card{padding:18px}.ce-tabs button{padding:9px}.ce-video-grid{grid-template-columns:1fr}.ce-meeting-controls button{flex:1 1 40%}.ce-effect-tools{align-items:stretch}.ce-effect-tools>.btn,.ce-effect-tools>.ce-file-button{flex:1 1 45%;justify-content:center}.ce-light-range{width:100%;justify-content:space-between}.footer .inner{flex-wrap:wrap}.footer .row{flex-wrap:wrap}}

.ce-meeting-controls .is-muted{background:#fff0ee;border-color:#b94747;color:#9d2d2d}.ce-meeting-controls .ce-end-meeting{margin-inline-start:auto}.ce-meeting-controls button:disabled{opacity:.48;cursor:not-allowed}
.ce-device-selectors{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;margin:0 0 18px}.ce-device-selectors label{margin:0}.ce-device-selectors select{width:100%;margin-top:7px}.ce-device-selectors .fine{grid-column:1/-1;margin:0}.ce-meeting-controls .is-sharing{background:#e2f3f0;border-color:#24766e;color:#175b55}.ce-meeting-ended{max-width:760px;margin:10vh auto;padding:56px 32px;text-align:center;background:#fff;border:1px solid var(--ce-line);border-radius:18px;box-shadow:0 18px 50px #132e4017}.ce-meeting-ended h1{font-size:3.2rem;margin:.25rem 0 1rem}.ce-meeting-ended h2{font-size:1.7rem;margin:.5rem 0;color:#163b55}.ce-meeting-ended .ce-therapist-name{font-size:1.1rem;color:#526b78}.ce-meeting-ended .btn{display:inline-block;margin-top:18px}
@media(max-width:600px){.ce-device-selectors{grid-template-columns:1fr}.ce-device-selectors .fine{grid-column:auto}.ce-meeting-ended{margin:6vh auto;padding:38px 20px}.ce-meeting-ended h1{font-size:2.4rem}}

.ce-time-calendar{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.ce-calendar-help{margin:0;padding:.7rem 1rem;border-bottom:1px solid var(--border);background:#faf7f2;color:var(--muted-fg);font-size:.8rem}.ce-time-scroll{overflow:auto;max-height:calc(100vh - 250px);min-height:520px}.ce-time-header{display:grid;position:sticky;top:0;z-index:12;background:#fff;border-bottom:1px solid var(--border);min-width:max-content}.ce-time-header>button{border:0;border-inline-start:1px solid var(--border);background:#fff;padding:.65rem .5rem;color:var(--navy);font:inherit;display:grid;gap:.08rem;text-align:center}.ce-time-header>button.is-today{background:var(--today)}.ce-time-header>button b{font-size:.78rem}.ce-time-header>button span{font-size:.72rem;color:var(--subtle)}.ce-time-body{display:grid;min-width:max-content}.ce-time-axis{position:relative;background:#faf7f2;border-inline-end:1px solid var(--border)}.ce-time-axis span{position:absolute;inset-inline:0;padding-inline:.35rem;transform:translateY(-.5em);font-size:.67rem;text-align:end;color:var(--subtle);white-space:nowrap}.ce-time-lanes{display:grid}.ce-time-day{position:relative;border-inline-end:1px solid var(--border);background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(6.25% - 1px),rgba(198,188,171,.35) calc(6.25% - 1px),rgba(198,188,171,.35) 6.25%)}.ce-time-day.is-today{background-color:rgba(25,119,111,.035)}.ce-time-slot{position:absolute;inset-inline:0;width:100%;border:0;border-bottom:1px solid rgba(198,188,171,.16);background:transparent;cursor:pointer;z-index:1}.ce-time-slot:hover,.ce-time-slot:focus-visible{background:rgba(29,155,143,.11);outline:2px solid var(--primary);outline-offset:-2px}.ce-time-appointment{position:absolute;z-index:4;inset-inline:.22rem;width:calc(100% - .44rem);overflow:hidden;border:1px solid #d7b96f;border-inline-start:5px solid var(--gold);border-radius:8px;background:#f4db9b;color:var(--navy);padding:.3rem .4rem;text-align:start;font:inherit;box-shadow:0 2px 8px rgba(10,37,64,.12);cursor:pointer}.ce-time-appointment.ce-video{background:#d8eef0;border-color:#83c2bf;border-inline-start-color:var(--primary)}.ce-time-appointment:hover,.ce-time-appointment:focus-visible{filter:brightness(.98);box-shadow:0 5px 14px rgba(10,37,64,.18);outline:2px solid var(--navy)}.ce-time-appointment b,.ce-time-appointment span,.ce-time-appointment small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ce-time-appointment b{font-size:.75rem}.ce-time-appointment span{font-size:.76rem;font-weight:700;margin-top:.1rem}.ce-time-appointment small{font-size:.65rem;margin-top:.08rem}.appointment-when{display:grid;gap:.22rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:10px;background:#f6f8fa}.appointment-when span{color:var(--muted-fg);font-variant-numeric:tabular-nums}.field-hint{margin:.3rem 0 0;color:var(--subtle);font-size:.76rem}.duplicate-alert{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:.8rem 1rem;border:1px solid #e6c790;border-radius:12px;background:#fff8e9;color:#755315}.modal .form-actions{flex-wrap:wrap}
@media(max-width:760px){.ce-time-scroll{max-height:calc(100dvh - 210px)}.ce-time-header,.ce-time-body{min-width:660px}.ce-calendar-tools{align-items:stretch}.ce-calendar-tools>.row{flex-wrap:wrap}.ce-time-appointment small:last-child{display:none}}
.ce-invitations input,.ce-invitation-inline input{width:100%;margin-top:.45rem}.ce-invitations .row{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:.8rem}.ce-invitation-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:end;margin-top:.8rem}.ce-invitation-inline label{margin:0}.ce-invitation-inline .btn{margin-bottom:1px}@media(max-width:600px){.ce-invitation-inline{grid-template-columns:1fr}}

/* Simplified telehealth entry and prominent admission state. */
.ce-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.ce-meeting-stage>h1{margin:.2rem 0 1rem}.ce-video-shell{position:relative}.ce-room-alert{position:absolute;z-index:8;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.65rem;min-width:min(88%,420px);padding:1.1rem 1.35rem;border:1px solid rgba(18,58,80,.18);border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 16px 42px rgba(10,37,64,.24);color:var(--ce-ink);text-align:center;backdrop-filter:blur(10px)}.ce-room-alert[hidden]{display:none}.ce-room-alert strong{font-size:1.12rem;font-weight:800;line-height:1.35}.ce-room-alert span{font-size:.82rem;color:#59717d}.ce-room-alert .btn{min-width:9rem}.ce-meeting-settings{margin:1rem 0;border:1px solid var(--ce-line);border-radius:12px;background:#fff}.ce-meeting-settings>summary{padding:1rem 1.1rem;cursor:pointer;color:var(--ce-ink);font-weight:750;list-style-position:inside}.ce-meeting-settings[open]>summary{border-bottom:1px solid var(--ce-line)}.ce-meeting-settings>.ce-device-selectors{padding:1rem 1rem 0;margin-bottom:0}.ce-caption-settings .ce-captions{padding:1rem}.ce-room-side .btn-full{width:100%;justify-content:center}.ce-room-side[hidden],#ce-room-join-panel[hidden],#ce-room-roster-panel[hidden]{display:none!important}.ce-meeting.is-entered .ce-meeting-layout{grid-template-columns:1fr}.ce-meeting.is-entered .ce-meeting-layout aside:not([hidden]){max-width:420px}.ce-meeting-controls{position:sticky;bottom:.65rem;z-index:7;padding:.65rem;border:1px solid rgba(18,58,80,.12);border-radius:12px;background:rgba(242,246,247,.94);backdrop-filter:blur(9px)}
@media(max-width:1050px){.ce-meeting.is-client:not(.is-entered) .ce-room-side{grid-row:1}.ce-meeting.is-client:not(.is-entered) .ce-meeting-stage{grid-row:2}.ce-meeting-layout{margin-top:18px}.ce-room-side{padding:18px!important}}
@media(max-width:600px){.ce-meeting header .wordmark small{display:none}.ce-meeting header .badge{font-size:.66rem}.ce-meeting-stage>h1{font-size:1.8rem}.ce-video-tile{aspect-ratio:4/3}.ce-room-alert{min-width:86%;padding:.9rem}.ce-meeting-controls{gap:.45rem}.ce-meeting-controls button{min-height:44px;padding:.65rem .7rem;font-size:.76rem}.ce-meeting-controls .ce-end-meeting{margin-inline-start:0}.ce-meeting-settings>summary{padding:.9rem}}

/* All primary meeting actions stay together immediately below the video. */
.ce-meeting-stage{min-width:0}.ce-meeting-layout{margin-top:16px;gap:18px}.ce-meeting-stage>h1{font-size:1.65rem;margin:0 0 .6rem}
.ce-video-tile{width:100%;aspect-ratio:16/9;max-height:64dvh}.ce-video-tile span{background:#102938cc;padding:3px 9px;border-radius:5px;bottom:10px;inset-inline-start:10px;font-size:.9rem}
.ce-control-dock{margin-top:8px;border:1px solid var(--ce-line);border-radius:12px;background:#fff;padding:8px}
.ce-meeting-controls{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));margin:0;padding:0;gap:5px;border:0;border-radius:0;background:transparent;backdrop-filter:none}
.ce-meeting-controls .ce-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:62px;padding:6px 4px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:.73rem;line-height:1.15;font-weight:650;color:var(--ce-ink);background:#f3f6f7;cursor:pointer;text-align:center;overflow-wrap:anywhere}
.ce-tool svg{height:21px;width:21px;flex-shrink:0}.ce-tool span{max-width:100%}.ce-tool:hover:not(:disabled){background:#e8f1f1}.ce-meeting-controls .ce-tool[aria-pressed=true],.ce-meeting-controls .ce-tool[aria-expanded=true]{background:#e1f2ee;border-color:#287970;color:#175950}.ce-meeting-controls .ce-tool.is-muted{background:#fff0ee;border-color:#b94747;color:#9d2d2d}.ce-meeting-controls #ce-room-end,.ce-meeting-controls #ce-room-leave{color:#a43333}.ce-meeting-controls [hidden],.ce-inline-settings[hidden],.ce-effect-status[hidden],#ce-background-file[hidden]{display:none!important}
.ce-inline-settings{padding:12px 4px 2px;margin-top:8px;border-top:1px solid var(--ce-line)}.ce-inline-settings .ce-device-selectors{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;margin:0 0 10px}.ce-inline-settings label{font-size:.8rem;margin:0}.ce-inline-settings select{min-width:0;width:100%;font-size:.85rem;padding:8px;min-height:44px;margin-top:4px}.ce-inline-settings .btn{min-height:44px;padding:8px 12px;font-size:.8rem}.ce-inline-settings .ce-effect-tools{gap:12px}.ce-inline-settings input[type=checkbox]{width:18px;height:18px;min-height:18px}.ce-inline-settings .check-line{gap:6px;align-items:center}.ce-inline-settings .ce-light-range{font-size:.8rem;min-width:180px}.ce-inline-settings .ce-light-range input{width:110px;min-height:30px}.ce-inline-settings .fine{font-size:.73rem;margin:10px 0 0}.ce-effect-status{font-size:.8rem;margin:8px 4px 0;color:#385c69}.ce-caption-settings .ce-captions{padding:0}.ce-caption-settings .check-line{margin:10px 0}
.ce-video-shell .ce-caption-box:empty{display:none}.ce-video-shell .ce-caption-box{position:absolute;bottom:48px;inset-inline:12%;z-index:6;background:#142c3dea;color:#fff;border-radius:9px;padding:9px 14px;max-height:28%;overflow:auto;pointer-events:none;font-size:.95rem}.ce-caption-box p{margin:0 0 4px}
@media(max-width:1050px){.ce-meeting-controls{grid-template-columns:repeat(5,minmax(0,1fr))}.ce-inline-settings .ce-device-selectors{grid-template-columns:1fr 1fr}.ce-inline-settings .ce-device-selectors>.btn{grid-column:1/-1;justify-self:start}.ce-video-tile{max-height:58dvh}}
@media(max-width:600px){.ce-meeting{padding:10px}.ce-meeting header{padding-bottom:10px}.ce-meeting-layout{margin:12px auto}.ce-video-grid{gap:6px}.ce-video-tile{aspect-ratio:4/3;max-height:45dvh}.ce-control-dock{margin-top:6px;padding:5px}.ce-meeting-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.ce-meeting-controls .ce-tool{min-height:58px;padding:5px 3px;font-size:.68rem}.ce-tool svg{width:20px;height:20px}.ce-inline-settings .ce-device-selectors{gap:8px}.ce-inline-settings .ce-light-range{width:auto}.ce-video-shell .ce-caption-box{inset-inline:5%;font-size:.82rem}.ce-video-grid:has(.ce-video-tile:nth-child(2)){grid-template-columns:1fr 1fr}.ce-video-grid:has(.ce-video-tile:nth-child(2)) .ce-video-tile{aspect-ratio:3/4}}
