.pmpp-body{margin:0;background:#f4f7f8;color:#20323e;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.pmpp-body *,.pmpp-staff *{box-sizing:border-box}.pmpp-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px max(20px,calc((100vw - 1060px)/2));background:#fff;border-bottom:1px solid #dce5e7}.pmpp-header a{color:#234e4b;text-decoration:none;font-weight:650;overflow-wrap:anywhere}.pmpp-header>div{display:flex;gap:6px}.pmpp-main{max-width:1100px;margin:40px auto;padding:0 20px 60px}.pmpp-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#50736e}.pmpp-main h1{font-size:clamp(26px,4vw,36px);line-height:1.2}.pmpp-body button,.pmpp-body input,.pmpp-body select,.pmpp-body textarea,.pmpp-staff button,.pmpp-staff select{font:inherit;max-width:100%;border:1px solid #c9d8da;border-radius:9px;padding:11px 14px}.pmpp-body button,.pmpp-staff button{cursor:pointer;background:#fff;color:#254842;min-height:44px}.pmpp-body button:hover,.pmpp-staff button:hover{background:#e8f0ee}.pmpp-body button:disabled,.pmpp-staff button:disabled{opacity:.5;cursor:wait}.pmpp-body .pmpp-primary{background:#234e48;color:#fff}.pmpp-body input,.pmpp-body textarea{width:100%;background:#fff}.pmpp-body input[type=checkbox]{width:20px;min-width:20px;height:20px}.pmpp-card{padding:24px;border:1px solid #dce5e7;border-radius:16px;background:#fff;overflow-wrap:anywhere}.pmpp-auth{max-width:480px;margin:30px auto}.pmpp-body form{display:grid;gap:18px}.pmpp-body label{display:grid;gap:7px}.pmpp-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.pmpp-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px;margin-top:22px}.pmpp-card h2{margin-top:0;font-size:20px}.pmpp-meta{color:#506772;font-size:14px}.pmpp-consent{display:flex!important;align-items:start;gap:10px!important;font-size:14px;margin:16px 0}.pmpp-message:not(:empty),#pmpp-message:not(:empty){padding:14px;margin:16px 0;border-radius:10px;background:#e4eeea;white-space:pre-wrap}.pmpp-error{background:#fff0e8!important;color:#8a3020}.pmpp-body dialog{width:min(580px,calc(100% - 24px));max-height:90vh;border:1px solid #cbd8db;border-radius:18px;padding:24px;color:inherit;overflow:auto}.pmpp-body dialog::backdrop{background:#102c3c88}.pmpp-close{float:right}.pmpp-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:15px 0}.pmpp-calendar button{padding:7px 2px;min-width:0;font-size:14px}.pmpp-calendar .holiday{border-color:#ba9142;background:#fff5d9}.pmpp-calendar .closed{background:repeating-linear-gradient(135deg,#e7eded,#e7eded 4px,#f7f9f9 4px,#f7f9f9 8px)}.pmpp-calendar .selected{outline:2px solid #234e48}.pmpp-calendar span{text-align:center;font-size:12px}.pmpp-slots{display:flex;flex-wrap:wrap;gap:8px}.pmpp-staff{padding:15px;border-top:1px solid #dce5e7;background:#f7faf9;color:#20323e;width:100%;font:14px/1.5 system-ui,sans-serif}.pmpp-staff h3{margin:0}.pmpp-staff details{margin-top:14px}.pmpp-staff .pmpp-preview img{max-width:100%;max-height:300px}.pmpp-staff label{display:grid}.pmpp-staff-state{font-weight:600}.pmpp-staff-message{white-space:pre-wrap}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #689eaa;outline-offset:2px}[hidden]{display:none!important}@media(max-width:480px){.pmpp-main{margin-top:25px;padding-inline:14px}.pmpp-card{padding:18px}.pmpp-header{padding:14px}.pmpp-actions>*{flex:1 1 140px}.pmpp-body dialog{padding:16px}.pmpp-staff button{font-size:13px}}
.pmpp-staff{box-sizing:border-box;min-width:0}.pmpp-staff button{white-space:normal;overflow-wrap:anywhere}.pmpp-staff .pmpp-actions>*{min-width:0}


/* Portal typography follows the public site, with an editorial two-column login. */
.pmcp .pmpp-body{background:var(--paper);color:var(--ink);font-family:inherit}.pmcp .pmpp-main{width:min(1240px,calc(100% - 68px));max-width:none;padding:80px 0 90px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);gap:100px;align-items:center;min-height:680px}.pmcp .pmpp-intro{max-width:510px;padding:24px 0}.pmcp .pmpp-eyebrow{color:var(--gold);font-size:10px;font-weight:750;letter-spacing:.2em;margin:0 0 25px}.pmcp .pmpp-main h1{font:500 clamp(42px,4.6vw,64px)/1.06 Georgia,"Times New Roman",serif;color:var(--deep);letter-spacing:-.035em;margin:0 0 26px}.pmcp .pmpp-intro>p:not(.pmpp-eyebrow){color:var(--muted);font-size:16px;line-height:1.85;margin:0;max-width:430px}.pmcp .pmpp-intro-rule{width:42px;height:1px;background:var(--gold);margin:32px 0 22px}.pmcp .pmpp-intro .pmpp-access-note{font-size:12px;line-height:1.8;max-width:350px}.pmcp .pmpp-workspace{min-width:0}.pmcp .pmpp-auth{width:100%;max-width:none;margin:0;padding:38px;border:1px solid #e3e5df;border-radius:22px;background:#fff;box-shadow:0 16px 50px rgba(26,55,44,.035)}.pmcp .pmpp-auth h2{font:500 27px/1.3 Georgia,"Times New Roman",serif;color:var(--deep);margin:0 0 28px}.pmcp .pmpp-auth form{gap:20px}.pmcp .pmpp-body label{font-size:12px;font-weight:600;color:#4d5751;gap:9px}.pmcp .pmpp-body input,.pmcp .pmpp-body textarea{border:1px solid var(--line);border-radius:10px;background:#fafbf8;color:var(--ink);padding:14px;font-size:15px;min-height:48px}.pmcp .pmpp-body input:focus,.pmcp .pmpp-body textarea:focus{background:#fff}.pmcp .pmpp-body button{color:var(--deep);border-color:var(--line);border-radius:999px;font-size:12px;font-weight:650;min-height:46px}.pmcp .pmpp-body .pmpp-primary{background:var(--deep);border-color:var(--deep);color:#fff;margin-top:4px;min-height:48px}.pmcp .pmpp-auth>.pmpp-actions{justify-content:center;margin:22px 0 0}.pmcp .pmpp-auth>.pmpp-actions button{flex:none;background:transparent;border:0;padding:4px 0;min-height:30px;font-size:11px;font-weight:500;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.pmcp .pmpp-body :is(input,button,textarea):focus-visible{outline-color:var(--gold)}.pmcp .pmpp-calendar button{border-radius:8px}.pmcp .pmpp-body dialog{color:var(--ink)}.pmcp .pmpp-main.pmpp-dashboard{display:block;min-height:0;padding:50px 0}.pmcp .pmpp-dashboard .pmpp-intro{max-width:800px;padding:0}.pmcp .pmpp-dashboard .pmpp-intro-rule,.pmcp .pmpp-dashboard .pmpp-access-note{display:none}.pmcp .pmpp-dashboard h1{font-size:42px}.pmcp .pmpp-card{border-color:var(--line);color:var(--ink)}
@media(max-width:1000px){.pmcp .pmpp-main{gap:45px;grid-template-columns:minmax(0,1fr) minmax(320px,410px);padding:60px 0}.pmcp .pmpp-auth{padding:28px}}
@media(max-width:700px){.pmcp .pmpp-main{width:calc(100% - 40px);grid-template-columns:minmax(0,1fr);gap:26px;padding:36px 0 50px;min-height:0}.pmcp .pmpp-intro{padding:0;max-width:none}.pmcp .pmpp-main h1{font-size:42px;margin-bottom:16px}.pmcp .pmpp-eyebrow{margin-bottom:17px}.pmcp .pmpp-intro>p:not(.pmpp-eyebrow){font-size:14px;line-height:1.75}.pmcp .pmpp-intro-rule{margin:22px 0 14px}.pmcp .pmpp-intro .pmpp-access-note{font-size:11px}.pmcp .pmpp-auth{padding:27px 22px}.pmcp .pmpp-auth h2{font-size:25px;margin-bottom:23px}.pmcp .pmpp-body input{font-size:16px}}

/* 5.4.70: capture stays immediately beside the video, before secondary actions. */
.pmc-tv-video-pane .pmpp-staff{padding:10px 12px;border-radius:0;font:13px/1.4 system-ui;background:var(--pm-panel,#fff)}
.pmpp-capture-bar{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.pmpp-capture-bar label{flex:1 1 140px;margin:0;min-width:0;font:600 11px/1.4 system-ui}
.pmpp-capture-bar label span{display:block;margin-bottom:4px}
.pmpp-capture-bar select{width:100%;min-height:40px;margin:0;padding:6px 8px;box-sizing:border-box}
.pmpp-staff .pmpp-capture-bar button{min-height:40px;padding:8px 10px;margin:0;font:600 12px/1.4 system-ui;white-space:normal}
.pmpp-staff [data-action=capture]{background:#176b64;color:#fff;border-color:#176b64;flex:1 0 145px}
.pmpp-staff .pmpp-staff-state{margin:8px 0 0;font:12px/1.4 system-ui}
.pmpp-staff .pmpp-staff-message{margin:8px 0;font:13px/1.4 system-ui;overflow-wrap:anywhere}
.pmpp-staff .pmpp-staff-message:empty{display:none}
.pmpp-session-options{margin-top:8px;border-top:1px solid #dce4e3;padding-top:8px}
.pmpp-session-options summary{cursor:pointer;font:600 12px/1.4 system-ui}
.pmpp-staff .pmpp-preview img{display:block;width:100%;max-height:220px;object-fit:contain;background:#142225}
.pmpp-staff .pmpp-actions{gap:8px;margin:8px 0}
.pmc-tv-video-pane .pmc-video-session .pm-tv-jitsi-mount{height:clamp(180px,40dvh,400px)!important;min-height:180px!important;max-height:400px!important}
.pmc-tv-video-pane .pmc-video-feedback{margin:0;padding:6px 12px;font:12px/1.4 system-ui}
.pmc-tv-video-pane .pmc-video-session-controls{padding:6px 12px 10px;gap:6px}
@media(max-height:550px){.pmc-tv-video-pane .pmc-video-session .pm-tv-jitsi-mount{height:35dvh!important;min-height:120px!important}}
/* Patient rescheduling: explicit day status and adjacent doctor slots. */
.pmpp-body dialog.pmpp-reschedule{width:min(880px,calc(100% - 24px));padding:28px;max-height:90dvh}
.pmpp-reschedule h2{margin:0 48px 10px 0;font-size:24px;line-height:1.3}
.pmpp-booking-context{font-size:14px;font-weight:650;margin:0 0 8px;color:#234e48}
.pmpp-current{font-size:13px;color:#506772;margin:0 0 22px}
.pmpp-booking-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}
.pmpp-booking-layout>section{min-width:0}
.pmpp-month-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pmpp-month-nav strong{text-transform:capitalize;font-size:16px}
.pmpp-body .pmpp-month-nav button{flex:0 0 42px;padding:6px;min-height:42px;border-radius:50%}
.pmpp-reschedule .pmpp-calendar{gap:5px;margin:16px 0}
.pmpp-body .pmpp-reschedule .pmpp-calendar button{padding:7px 1px;min-height:58px;border-radius:10px;display:flex;flex-direction:column;justify-content:center;gap:4px;align-items:center;opacity:1;font-size:14px}
.pmpp-reschedule .pmpp-calendar button span{font-size:14px;font-weight:700}
.pmpp-reschedule .pmpp-calendar button small{font-size:8px;line-height:1.2;white-space:nowrap}
.pmpp-body .pmpp-reschedule .pmpp-calendar .available{background:#e8f3ee;border-color:#81aea0;color:#185c4c}
.pmpp-body .pmpp-reschedule .pmpp-calendar .unavailable{background:#f6f7f6;border-color:#e6e9e7;color:#687771}
.pmpp-body .pmpp-reschedule .pmpp-calendar .holiday{background:#fff0c4;border-color:#bf9444;color:#6a4916}
.pmpp-body .pmpp-reschedule .pmpp-calendar .closed{background:repeating-linear-gradient(135deg,#e3e9e8,#e3e9e8 4px,#f5f7f6 4px,#f5f7f6 8px);border-color:#8b9d98;color:#394d47}
.pmpp-body .pmpp-reschedule .pmpp-calendar .selected{outline:2px solid #234e48;outline-offset:1px}
.pmpp-calendar-key{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#4b6057}
.pmpp-calendar-key span::before{content:'';display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px;background:#81aea0}
.pmpp-calendar-key .holiday::before{background:#d8b05e}.pmpp-calendar-key .closed::before{background:#8b9d98}
.pmpp-calendar-notes{padding:0;list-style:none;margin:12px 0 0;font-size:12px;line-height:1.6}
.pmpp-calendar-notes li{padding:4px 8px;margin-top:4px;border-left:3px solid #bf9444;background:#fff9e9;color:#6a4916;overflow-wrap:anywhere}
.pmpp-calendar-notes li.closed{border-color:#8b9d98;background:#eef2f0;color:#394d47}
.pmpp-times-panel{padding:18px;background:#f4f7f5;border:1px solid #e0e8e3;border-radius:14px;align-self:start}
.pmpp-times-panel h3{margin:0 0 8px;font:650 16px/1.4 system-ui;text-transform:capitalize}
.pmpp-times-panel [data-day-info]{margin:0;color:#77551d;font-size:13px}
.pmpp-timezone{font-size:12px;color:#506772;margin:12px 0}
.pmpp-reschedule .pmpp-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;font-size:13px}
.pmpp-body .pmpp-reschedule .pmpp-slots button{padding:8px 3px;min-height:42px;border-radius:8px;background:#fff;border-color:#9ebcb1;font-size:13px}
@media(max-width:650px){.pmpp-body dialog.pmpp-reschedule{padding:18px}.pmpp-booking-layout{grid-template-columns:1fr;gap:18px}.pmpp-reschedule h2{font-size:21px}.pmpp-times-panel{padding:14px}.pmpp-reschedule .pmpp-calendar{gap:4px}.pmpp-calendar-key{gap:8px}.pmpp-body .pmpp-reschedule .pmpp-calendar button{min-height:52px}}
