*{box-sizing:border-box}html,body{min-height:100%}html{font-size:13px}body{margin:0;font-family:var(--font-base);background:linear-gradient(180deg,#ffffff 0%,var(--color-bg) 34%,var(--color-primary-soft) 100%)}app-root .workspace>section,app-root .workspace>app-module-banner{margin-top:14px}app-root app-module-banner.module-banner{min-height:0!important;padding:6px 10px!important}app-root app-module-banner.module-banner .eyebrow{font-size:.64rem!important;line-height:1.1!important;margin:0!important}app-root app-module-banner.module-banner h2{font-size:.95rem!important;line-height:1.15!important;margin:0!important}app-root .patient-heading-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}app-root .patient-plan-chip{background:#fff;color:var(--color-secondary)}app-root .patient-plan-limit-note{margin:-2px 0 0;color:var(--color-danger);font-size:.72rem;font-weight:850}app-root .general-doctor-picker{display:grid;gap:7px}app-root .general-doctor-picker-heading{display:grid;gap:2px}app-root .general-doctor-picker-heading span{color:var(--color-teal-text);font-size:.74rem;font-weight:900}app-root .general-doctor-picker-heading small{color:var(--color-muted);font-weight:750}app-root .general-doctor-picker-grid{display:grid;gap:8px;max-height:238px;overflow:auto;padding-right:3px}app-root .general-doctor-option{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;border:1px solid var(--color-border);border-radius:14px;background:#fff;padding:9px;color:var(--color-ink);text-align:left;box-shadow:0 8px 18px #082b630d}app-root .general-doctor-option.selected{border-color:var(--color-secondary);background:linear-gradient(135deg,#1468e81a,#fff);box-shadow:0 10px 24px #1468e81f}app-root .general-doctor-option.unavailable{border-color:#ef9f276b;background:linear-gradient(135deg,#fff,var(--color-warning-soft))}app-root .general-doctor-option.any .doctor-avatar{background:var(--color-secondary)}app-root .general-doctor-option-copy{display:grid;gap:2px;min-width:0}app-root .general-doctor-option-copy strong{color:var(--color-teal-text);overflow-wrap:anywhere}app-root .general-doctor-option-copy small{color:var(--color-muted);font-weight:700}app-root .general-doctor-meta{display:flex;align-items:center;gap:6px;color:#9a620d;font-size:.72rem;font-weight:850}app-root .general-doctor-option em{border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary-dark);padding:4px 8px;font-size:.68rem;font-style:normal;font-weight:900;white-space:nowrap}app-root .general-doctor-option em.busy{background:#fff;color:var(--color-warning);box-shadow:inset 0 0 0 1px #ef9f2752}app-root .specialty-catalog-panel{display:grid;gap:14px}app-root .specialty-module-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid rgba(108,93,211,.18);border-radius:18px;background:linear-gradient(135deg,#fff,#f7f5ff);padding:14px}app-root .specialty-module-hero h2{margin:2px 0 0;color:var(--color-teal-text);font-size:1.2rem}app-root .specialty-module-hero small{color:var(--color-muted);font-weight:750}app-root .specialty-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}app-root .specialty-summary-grid article{display:grid;gap:4px;border:1px solid var(--color-border);border-radius:14px;background:#fff;padding:12px}app-root .specialty-summary-grid small{color:var(--color-muted);font-size:.68rem;font-weight:900;text-transform:uppercase}app-root .specialty-summary-grid strong{color:var(--color-secondary);font-size:1.45rem}app-root .specialty-summary-grid span,app-root .specialty-table-wrap td span{color:var(--color-muted);font-weight:750}app-root .specialty-table-wrap{overflow:auto;border:1px solid var(--color-border);border-radius:14px;background:#fff}app-root .specialty-table-wrap table{width:100%;border-collapse:collapse;font-size:.84rem}app-root .specialty-table-wrap th,app-root .specialty-table-wrap td{padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}app-root .specialty-table-wrap th{color:var(--color-muted);background:#f8f9fa;font-size:.68rem;font-weight:900;text-transform:uppercase}app-root .specialty-duration-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;background:#eaf6fd;color:#1e67a8!important;padding:5px 8px;font-size:.72rem;font-weight:900;white-space:nowrap}app-root .specialty-card-list{display:none;gap:10px}app-root .specialty-card-list article{display:grid;gap:10px;border:1px solid var(--color-border);border-radius:14px;background:#fff;padding:12px}app-root .specialty-card-list article>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}app-root .specialty-card-list strong,app-root .specialty-table-wrap strong{color:var(--color-teal-text)}app-root .specialty-card-list small{display:block;color:var(--color-muted);font-weight:750;margin-top:3px}app-root .specialty-modal{display:grid;gap:14px;width:min(92vw,620px);max-height:88vh;overflow:auto}app-root .specialty-modal .modal-heading small,app-root .specialty-modal-form small{color:var(--color-muted);font-weight:750}app-root .specialty-modal-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;border-top:1px solid var(--color-border);padding-top:12px}:root{--font-base: Montserrat, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-ink: #444441;--color-muted: #888780;--color-bg: #f8f9fa;--color-surface: #ffffff;--color-surface-soft: #e1f5ee;--color-border: #d3d1c7;--color-primary: #1d9e75;--color-primary-dark: #0f6e56;--color-primary-soft: #e1f5ee;--color-secondary: #378add;--color-sidebar: #085041;--color-sidebar-soft: #0f6e56;--color-success: #639922;--color-success-soft: #eaf3de;--color-warning: #ef9f27;--color-warning-soft: #faeeda;--color-danger: #e24b4a;--color-danger-soft: #fcebeb;--color-clinical: #7f77dd;--color-teal-text: #04342c}:root[data-portal=clinical]{--color-primary: #1779ad;--color-primary-dark: #0d5f8c;--color-primary-soft: #e4f3fb;--color-secondary: #68b83f;--color-sidebar: #0a4d72;--color-sidebar-soft: #1779ad;--color-surface-soft: #e4f3fb;--color-teal-text: #073247}:root[data-portal=patient]{--color-ink: #082b63;--color-muted: #66758a;--color-bg: #f6fbff;--color-surface-soft: #e8fbf8;--color-border: #c9dced;--color-primary: #18c9be;--color-primary-dark: #0a8fa0;--color-primary-soft: #e8fbf8;--color-secondary: #1468e8;--color-sidebar: #082b63;--color-sidebar-soft: #0d4f98;--color-teal-text: #082b63;--color-clinical: #1468e8}app-root .jitsi-room iframe{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:100%!important;border:0!important}@media(max-width:480px){html{font-size:12px}app-root{font-size:12px}app-root .workspace{padding:8px!important;padding-top:calc(56px + env(safe-area-inset-top,0px))!important}app-root .mobile-header{height:calc(56px + env(safe-area-inset-top,0px))!important;gap:8px!important;padding:calc(8px + env(safe-area-inset-top,0px)) 8px 8px!important}app-root .mobile-header .brand{min-width:0!important;margin:0!important}app-root .mobile-header .brand-logo,app-root .mobile-logo{width:88px!important;height:32px!important;padding:3px!important;border-radius:8px!important}app-root .mobile-header>div:last-child{flex:0 0 auto!important;gap:6px!important}app-root .mobile-header-action{width:34px!important;height:34px!important;border-radius:10px!important}app-root .mobile-menu-button{min-height:34px!important;padding:7px 10px!important;border-radius:12px!important;font-size:.82rem!important}app-root .panel,app-root .module-banner,app-root .patient-turn-card,app-root .doctor-row,app-root .preferred-doctor-card,app-root .compact-row,app-root .table-row,app-root .appointment-row,app-root .ambulance-row{min-width:0!important}app-root .panel{padding:9px!important;border-radius:10px!important}app-root .module-banner{padding:6px 9px!important;margin-top:14px!important;margin-bottom:8px!important}app-root .module-banner h2{font-size:.95rem!important;line-height:1.15!important}app-root .panel-heading{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-bottom:8px!important}app-root .status-chip{max-width:100%!important;line-height:1.15!important;overflow-wrap:anywhere!important;text-align:center!important;white-space:normal!important}app-root .patient-care-layout,app-root .patient-side-panel{gap:8px!important}app-root .patient-video-panel{min-height:0!important}app-root .patient-care-option-grid,app-root .general-doctor-option,app-root .patient-specialist-date-grid,app-root .patient-plan-grid,app-root .specialty-summary-grid{grid-template-columns:1fr!important}app-root .general-doctor-option{justify-items:start!important}app-root .specialty-module-hero,app-root .specialty-card-list article>div{display:grid!important;grid-template-columns:1fr!important}app-root .specialty-table-wrap{display:none!important}app-root .specialty-card-list{display:grid!important}app-root .patient-profile-hero{align-items:flex-start!important;flex-direction:column!important;gap:12px!important;padding:14px!important}app-root .patient-profile-hero-main{align-items:flex-start!important;min-width:0!important;width:100%!important}app-root .patient-profile-hero-main>span{min-width:0!important}app-root .patient-profile-hero-main small{display:block!important;max-width:100%!important;overflow-wrap:anywhere!important}app-root .patient-profile-hero-actions{justify-content:stretch!important;width:100%!important}app-root .patient-profile-hero-actions .secondary-action,app-root .patient-profile-hero-actions .status-chip{flex:1 1 100%!important;justify-content:center!important;width:100%!important}app-root .patient-plan-card{gap:10px!important;padding:12px!important;border-radius:14px!important}app-root .patient-plan-summary{padding-right:72px!important}app-root .patient-plan-summary h3{font-size:1.05rem!important}app-root .patient-plan-summary strong{font-size:1.28rem!important}app-root .patient-plan-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}app-root .plan-card-top-stack{top:8px!important;right:8px!important;gap:5px!important;max-width:82px!important}app-root .plan-card-icon{width:48px!important;height:48px!important}app-root .plan-feature-chips{gap:5px!important}app-root .plan-feature-chip{min-height:20px!important;max-height:none!important;padding:4px 8px!important;font-size:.64rem!important;line-height:1.1!important;white-space:normal!important}app-root .patient-turn-main{grid-template-columns:52px minmax(0,1fr)!important}app-root .patient-turn-main strong,app-root .doctor-row strong,app-root .preferred-doctor-card strong,app-root .turn-row strong{overflow-wrap:anywhere!important}app-root .patient-turn-state-grid{grid-template-columns:1fr!important}app-root .doctor-row,app-root .preferred-doctor-card{grid-template-columns:34px minmax(0,1fr)!important}app-root .doctor-row em,app-root .preferred-doctor-card em{grid-column:1/-1!important;justify-self:start!important}app-root .turn-row,app-root .turn-row.plan-aware{grid-template-columns:1fr!important;gap:8px!important}app-root .turn-plan-stack{grid-template-columns:auto auto!important;justify-content:start!important;justify-items:start!important;align-items:center!important}app-root .turn-meta{text-align:left!important}app-root .turn-row .invite-button,app-root .invite-button{width:100%!important;min-height:34px!important}app-root .jitsi-room,app-root .jitsi-room .video-placeholder{height:min(360px,58dvh)!important;min-height:280px!important}app-root .patient-video-panel[style*="position: fixed"] .jitsi-room{flex:1 1 auto!important;height:auto!important;min-height:0!important}app-root .patient-video-panel[style*="position: fixed"] .jitsi-room .video-placeholder{height:100%!important;min-height:0!important}app-root .consult-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}app-root .consult-actions button{width:100%!important;min-width:0!important;padding:0 8px!important}app-root .call-chat-heading{grid-template-columns:30px minmax(0,1fr) auto!important}app-root .call-chat-icon{width:30px!important;height:30px!important}app-root .call-chat-thread{max-height:145px!important;padding:6px!important}app-root .call-message{max-width:96%!important}app-root .call-message-meta{align-items:flex-start!important;flex-direction:column!important;gap:2px!important}app-root .call-chat-composer{grid-template-columns:minmax(0,1fr) 36px!important;gap:6px!important}app-root .call-chat-composer button{width:36px!important;height:36px!important;min-height:36px!important}app-root .profile-reminder-modal{right:8px!important;bottom:8px!important;left:8px!important;grid-template-columns:1fr!important;padding:12px!important;border-radius:14px!important}app-root .profile-reminder-progress{justify-self:start!important;width:56px!important;height:56px!important;border-width:5px!important}app-root .profile-reminder-tags{gap:5px!important}app-root .profile-reminder-modal .primary-button{width:100%!important}app-root .modal-backdrop{padding:8px!important}app-root .patient-modal{width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;padding:10px!important;border-radius:12px!important}app-root .modal-heading,app-root .modal-actions{align-items:stretch!important;flex-direction:column!important}app-root .modal-actions button{width:100%!important}}@media(max-width:380px){app-root{font-size:11.5px}app-root .workspace,app-root .mobile-header{padding-inline:6px!important}app-root .mobile-header .brand-logo,app-root .mobile-logo{width:76px!important}app-root .mobile-header-action{width:32px!important;height:32px!important}app-root .mobile-menu-button{min-height:32px!important;padding-inline:8px!important}app-root .panel{padding:8px!important}app-root .patient-plan-summary{padding-top:56px!important;padding-right:0!important}app-root .plan-card-top-stack{max-width:72px!important}app-root .plan-card-icon{width:42px!important;height:42px!important}app-root .patient-plan-stats-grid,app-root .consult-actions{grid-template-columns:1fr!important}app-root .jitsi-room,app-root .jitsi-room .video-placeholder{height:min(320px,54dvh)!important;min-height:240px!important}app-root .patient-video-panel[style*="position: fixed"] .jitsi-room{height:auto!important;min-height:0!important}}
