@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@400;600;700&display=swap";
:root{--sidebar-bg:#0049b9;--sidebar-nav-inactive:#ffffffc7;--sidebar-nav-active:#fff;--sidebar-item-active-bg:#ffffff29;--sidebar-icon-inactive:#ffffffc7;--sidebar-width:240px;--content-bg:#f0f6ff;--header-bg:#fff;--header-border:#e5e7eb;--content-padding:24px;--text-primary:#111827;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--color-primary:#0049b9;--color-primary-hover:#003a94;--color-primary-light:#f0f6ff;--color-navy:#002d70;--color-success:#16a34a;--color-success-bg:#f0fdf4;--color-danger:#dc2626;--color-danger-bg:#fef2f2;--color-warning:#d97706;--color-warning-bg:#fffbeb;--color-info:#0049b9;--color-info-bg:#f0f6ff;--input-border:#e5e7eb;--focus-ring:#0049b9;--border-color:#e5e7eb;--surface-bg:#fff;--surface-hover:#f0f6ff;--radio-accent:#000;--toggle-active:#000;--header-height:64px;--radius-card:12px;--radius-btn:8px;--radius-input:8px;--radius-badge:20px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -1px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--shadow-modal:0 20px 60px #00000026;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100%;font-size:16px;overflow-x:hidden}body{color:var(--text-primary);background:var(--content-bg);width:100%;max-width:100%;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-family:Inter,sans-serif;font-weight:700;line-height:1.3}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}input,textarea,select,button{font-family:inherit}input[type=radio]{accent-color:var(--radio-accent)}.app-shell{width:100%;max-width:100%;min-height:100vh;display:flex;overflow-x:hidden}.main-area{margin-left:var(--sidebar-width);flex-direction:column;flex:auto;min-width:0;max-width:100%;min-height:100vh;display:flex}.page-content{padding:var(--content-padding);background:var(--content-bg);flex:1;width:100%;min-width:0;max-width:100%;overflow-x:clip}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);z-index:100;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:20px 16px 16px;display:flex}.sidebar-brand-icon{width:38px;height:38px;color:var(--color-primary);background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.sidebar-brand-name{color:#fff;font-size:16px;font-weight:700;line-height:1.2}.sidebar-nav{scrollbar-width:none;flex:1;padding:12px 10px;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-section-label{text-transform:uppercase;letter-spacing:.08em;color:#ffffff73;margin-top:4px;padding:12px 10px 4px;font-size:10px;font-weight:600}.sidebar-nav-item{color:var(--sidebar-nav-inactive);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:9px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sidebar-nav-item svg{opacity:.75;transition:opacity var(--transition-fast);flex-shrink:0}.sidebar-nav-item:hover{color:var(--sidebar-nav-active);background:#ffffff1a;text-decoration:none}.sidebar-nav-item:hover svg{opacity:1}.sidebar-nav-item.active{background:var(--sidebar-item-active-bg);color:var(--sidebar-nav-active)}.sidebar-nav-item.active svg{opacity:1}.sidebar-nav-item--parent{width:100%;font-size:14px;font-weight:500;line-height:inherit;color:var(--sidebar-nav-inactive);appearance:none;background:0 0;border:none}.sidebar-nav-item--parent:hover{color:var(--sidebar-nav-active);background:#ffffff1a}.sidebar-nav-item--parent.active{background:var(--sidebar-item-active-bg);color:var(--sidebar-nav-active)}.sidebar-nav-item--parent span{text-align:left;flex:1}.sidebar-nav-chevron{opacity:.65;transition:transform .15s ease, opacity var(--transition-fast);flex-shrink:0;margin-left:auto}.sidebar-nav-item:hover .sidebar-nav-chevron,.sidebar-nav-item.active .sidebar-nav-chevron,.sidebar-nav-item.expanded .sidebar-nav-chevron{opacity:1}.sidebar-nav-chevron.open{transform:rotate(180deg)}.sidebar-nav-group{margin-bottom:2px}.sidebar-nav-sub{padding-left:36px}.sidebar-nav-sub .sidebar-nav-item{padding:7px 12px;font-size:13px}.sidebar-nav-sub .sidebar-nav-item svg{opacity:.85;width:16px;height:16px}.sidebar-divider{background:#ffffff14;height:1px;margin:8px 10px}.sidebar-user{border-top:1px solid #ffffff14;align-items:center;gap:10px;padding:14px 16px;display:flex}.sidebar-user-name{color:#fff;font-size:13px;font-weight:600;line-height:1.2}.sidebar-user-role{color:var(--sidebar-nav-inactive);font-size:11px}.header{height:var(--header-height);background:var(--header-bg);border-bottom:1px solid var(--header-border);z-index:50;box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;min-width:0;max-width:100%;padding:0 24px;display:flex;position:sticky;top:0}.header-title-block{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.header-page-title{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1.2}.header-page-subtitle{color:var(--text-secondary);margin-top:6px;font-size:12px;line-height:1.4}.header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.pulse-lang-switcher{z-index:40;position:relative}.pulse-gt-host{opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;position:absolute!important;left:-9999px!important;overflow:hidden!important}html.gt-pending body{pointer-events:none;opacity:0!important}html.gt-ready body,html:not(.gt-pending) body{opacity:1;transition:opacity .12s}.pulse-lang-switcher-btn{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.pulse-lang-switcher-btn:hover{background:var(--bg-secondary,#f8fafc)}.pulse-lang-switcher-code{letter-spacing:.04em}.pulse-lang-switcher-caret{opacity:.7;font-size:10px;transition:transform .15s}.pulse-lang-switcher-caret[data-open]{transform:rotate(180deg)}.pulse-lang-switcher-menu{border:1px solid var(--border-color);background:#fff;border-radius:10px;flex-direction:column;gap:2px;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #0f172a1f}.pulse-lang-switcher-menu--right{left:auto;right:0}.pulse-lang-switcher-option{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.pulse-lang-switcher-option:hover,.pulse-lang-switcher-option.is-active{background:#eff6ff}.pulse-lang-switcher-option-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.pulse-lang-switcher-option-label{font-size:13px;font-weight:600}.pulse-lang-switcher-option-native{color:var(--text-secondary);font-size:11px}.pulse-lang-switcher-check{color:#2563eb;font-size:13px;font-weight:700}.pulse-lang-switcher--loading{justify-content:center;align-items:center;width:64px;height:32px;display:inline-flex}.pulse-lang-switcher-spinner{border:2px solid #cbd5e1;border-top-color:#2563eb;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite pulse-lang-spin}@keyframes pulse-lang-spin{to{transform:rotate(360deg)}}.pulse-lang-switcher--portal .pulse-lang-switcher-btn,.pulse-lang-switcher--provider .pulse-lang-switcher-btn{color:#fff;box-shadow:none;background:0 0;border:1px solid #ffffffbf}.pulse-lang-switcher--portal .pulse-lang-switcher-btn:hover,.pulse-lang-switcher--provider .pulse-lang-switcher-btn:hover{background:#ffffff1f;border-color:#fff}.pulse-lang-switcher--portal .pulse-lang-switcher-caret,.pulse-lang-switcher--provider .pulse-lang-switcher-caret{opacity:.9;color:#fff}.pulse-lang-switcher--portal .pulse-lang-switcher-menu,.pulse-lang-switcher--provider .pulse-lang-switcher-menu{z-index:60;color:#0f172a;background:#fff;border-color:#0f172a1f}@media (max-width:480px){.pulse-lang-switcher-btn{padding:6px 8px}.pulse-lang-switcher-option-native{display:none}.pulse-lang-switcher-menu{min-width:180px}}.header-clock{font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;align-items:flex-end;gap:2px;padding:6px 12px;display:flex}.header-clock-date{color:var(--text-secondary);font-size:12px;font-weight:500;line-height:1.2}.header-clock-time{color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.2}.header-clock-zone{color:var(--text-secondary);font-size:12px;font-weight:500}.header-icon-btn{border:1px solid var(--border-color);cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.header-icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.header-notification-dot{background:var(--color-danger);border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:6px}.header-notification-badge{background:var(--color-danger);color:#fff;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:12px;display:inline-flex;position:absolute;top:2px;right:2px}.notification-panel-footer{border-top:1px solid var(--border-color);padding:10px 12px}.notification-panel-footer-link{text-align:center;color:var(--color-primary,#0049b9);font-size:13px;font-weight:600;text-decoration:none;display:block}.notification-panel-footer-link:hover{text-decoration:underline}.notif-page-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:16px;display:flex}.notif-page{flex-direction:column;gap:16px;display:flex}.notif-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.notif-summary-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.notif-summary-card--accent{background:#0049b90a;border-color:#0049b938}.notif-summary-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.notif-summary-value{color:var(--text-primary);font-size:22px;font-weight:700;line-height:1.2}.notif-board{padding:0;overflow:hidden}.notif-filter-bar{border-bottom:1px solid var(--border-color);background:#fafbfc;padding:14px 16px}.notif-filter-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.notif-page-list{margin:0;padding:0;list-style:none}.notif-page-item{border-bottom:1px solid var(--border-color);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.notif-page-item:last-child{border-bottom:none}.notif-page-item--unread{background:linear-gradient(90deg,#0049b90f,#0000 56%)}.notif-page-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.notif-page-icon--appointment{color:#0049b9;background:#0049b91a}.notif-page-icon--front-desk{color:#b45309;background:#d977061f}.notif-page-item-main{flex:1;min-width:0}.notif-page-item-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.notif-page-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notif-page-type{text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary,#0049b9);font-size:11px;font-weight:700}.notif-page-type--appointment{color:#0049b9}.notif-page-type--front-desk{color:#b45309}.notif-unread-pill{text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;background:#2563eb1f;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.notif-page-time{color:var(--text-secondary);flex-shrink:0;font-size:12px}.notif-page-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:600}.notif-page-body{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.notif-page-meta-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.notif-page-actions{flex-shrink:0;align-items:flex-start;gap:8px;display:flex}.notif-empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:56px 24px;display:flex}.notif-empty-icon{background:var(--surface-hover);width:64px;height:64px;color:var(--text-secondary);border-radius:16px;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.notif-empty h3{color:var(--text-primary);margin:0 0 6px;font-size:16px;font-weight:650}.notif-empty p{max-width:360px;margin:0;font-size:13px;line-height:1.45}.notif-table-footer{border-top:1px solid var(--border-color);background:#fafbfc;padding:12px 16px}.notif-page-pager{border-top:1px solid var(--border-color);color:var(--text-secondary);justify-content:center;align-items:center;gap:16px;padding:12px 16px;font-size:13px;display:flex}@media (max-width:768px){.notif-summary-row{grid-template-columns:1fr}.notif-page-item{flex-wrap:wrap}.notif-page-actions{justify-content:flex-end;width:100%;padding-left:54px}.notif-filter-bar .filter-select{flex:140px}}.notification-bell{flex-shrink:0;position:relative}.notification-panel{border:1px solid var(--border-color);z-index:200;background:#fff;border-radius:12px;flex-direction:column;width:min(360px,100vw - 24px);max-height:min(420px,100vh - 120px);display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px #0f172a1f}.notification-panel-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.notification-panel-title{color:var(--text-primary);font-size:14px;font-weight:600}.notification-panel-action{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:12px;font-weight:500}.notification-panel-action:hover{text-decoration:underline}.notification-panel-empty{text-align:center;color:var(--text-secondary);padding:24px 16px;font-size:13px}.notification-list{margin:0;padding:6px;list-style:none;overflow-y:auto}.notification-list>li{position:relative}.notification-item{text-align:left;cursor:pointer;width:100%;transition:background var(--transition-fast);background:0 0;border:none;border-radius:8px;padding:10px 32px 10px 10px;display:block}.notification-item:hover{background:var(--surface-hover)}.notification-item--unread{background:#3b82f60f}.notification-item--unread:hover{background:#3b82f61a}.notification-item-main{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.notification-item-title{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3}.notification-item-time{color:var(--text-secondary);flex-shrink:0;font-size:11px}.notification-item-body{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.4}.notification-item-meta{color:var(--text-secondary);background:var(--surface-hover);border-radius:999px;margin-top:6px;padding:2px 8px;font-size:11px;display:inline-block}.notification-item-dismiss{width:22px;height:22px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:16px;line-height:1;position:absolute;top:8px;right:6px}.notification-item-dismiss:hover{background:var(--surface-hover);color:var(--text-primary)}.header-user-btn{border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast);background:0 0;border-radius:8px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}.header-user-btn:hover{background:var(--surface-hover)}.header-user-info{text-align:left}.header-user-name{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.2}.header-user-company{color:var(--color-primary);font-size:11px;font-weight:500}.user-profile-dropdown{flex-shrink:0;position:relative}.user-profile-menu{border:1px solid var(--border-color);z-index:200;background:#fff;border-radius:12px;min-width:240px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0f172a1f}.sidebar .user-profile-dropdown{width:100%}.sidebar .user-profile-menu{inset:auto auto calc(100% + 8px) 0}.sidebar-user-btn{cursor:pointer;color:#fff;width:100%;transition:background var(--transition-fast);background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.sidebar-user-btn:hover{background:#ffffff14}.sidebar-user-text{text-align:left;flex:1;min-width:0}.user-profile-menu-header{align-items:center;gap:10px;padding:8px 10px;display:flex}.user-profile-menu-name{color:var(--text-primary);font-size:14px;font-weight:600}.user-profile-menu-email{color:var(--text-secondary);word-break:break-word;font-size:12px}.user-profile-menu-divider{background:var(--border-color);height:1px;margin:6px 0}.user-profile-menu-item{width:100%;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;text-decoration:none;display:flex}.user-profile-menu-item:hover{background:var(--surface-hover)}.user-profile-menu-item.danger{color:var(--color-danger)}.user-profile-menu-item.danger:hover{background:#fef2f2}.profile-page{flex-direction:column;gap:20px;width:100%;display:flex}.profile-summary-card{width:100%;padding:24px}.profile-summary-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.profile-summary-text{flex:1;min-width:200px}.profile-summary-name{margin:0 0 4px;font-size:24px;font-weight:700}.profile-summary-meta{color:var(--text-secondary);margin:0;font-size:14px}.profile-summary-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-info-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px;padding:0 24px 24px;display:grid}.profile-info-row{flex-direction:column;gap:4px;display:flex}.profile-info-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.profile-info-value{color:var(--text-primary);font-size:15px}.profile-page .card form{padding:0 24px 24px}.profile-edit-avatar-section{border-bottom:1px solid var(--border-color);align-items:center;gap:20px;margin-bottom:20px;padding:24px 24px 8px;display:flex}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;display:flex}.account-settings-card{width:100%}.account-settings-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;display:grid}.account-settings-row .account-settings-card{flex-direction:column;min-width:0;display:flex}.account-settings-row .account-settings-section{flex-direction:column;flex:1;display:flex}.account-settings-row .form-actions{margin-top:auto}.account-settings-form-row{grid-template-columns:1fr}.account-settings-section{padding:0 24px 24px}.settings-toggle-list{flex-direction:column;gap:12px;margin:16px 0;display:flex}.settings-toggle-item{border:1px solid var(--border-color);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.settings-toggle-label{color:var(--text-primary);font-size:14px;font-weight:600}.settings-toggle-desc{color:var(--text-secondary);margin-top:2px;font-size:12px}.settings-note{color:var(--text-secondary);margin:0 0 8px;font-size:12px}@media (max-width:1200px){.profile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:992px){.account-settings-row{grid-template-columns:1fr}}@media (max-width:768px){.profile-info-grid,.form-row{grid-template-columns:1fr}.profile-summary-header{flex-direction:column;align-items:flex-start}}.avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-sm{width:28px;height:28px;font-size:11px}.avatar-lg{width:48px;height:48px;font-size:17px}.avatar-xl{width:64px;height:64px;font-size:22px}.avatar-blue{background:var(--color-primary)}.avatar-purple{background:#7c3aed}.avatar-green{background:#16a34a}.avatar-orange{background:#ea580c}.avatar-pink{background:#db2777}.avatar-teal{background:#0d9488}.btn{border-radius:var(--radius-btn);cursor:pointer;transition:background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn svg{flex-shrink:0}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-outline-primary{color:var(--color-primary);border-color:var(--color-primary);background:#fff}.btn-outline-primary:hover:not(:disabled){background:var(--color-primary-light)}.btn-ghost-danger{color:var(--color-danger);background:0 0;border-color:#0000}.btn-ghost-danger:hover:not(:disabled){background:var(--color-danger-bg)}.btn-secondary{color:var(--text-primary);border-color:var(--border-color);background:#fff}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.btn-ghost{color:var(--color-primary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-primary-light)}.btn-sm{padding:5px 12px;font-size:13px}.btn-lg{padding:11px 22px;font-size:15px}.btn-icon{width:36px;height:36px;padding:8px}.btn-icon.btn-sm{width:28px;height:28px;padding:4px}.badge{border-radius:var(--radius-badge);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-gray{color:#374151;background:#f3f4f6}.badge-purple{color:#6d28d9;background:#ede9fe}.badge-orange{color:#c2410c;background:#fff7ed}.badge-teal{color:#0f766e;background:#f0fdfa}.badge-role-clinic-admin{color:#6d28d9;background:#ede9fe}.badge-role-front-desk{color:#c2410c;background:#fff7ed}.badge-role-workflow{color:#0369a1;background:#e0f2fe}.badge-role-provider{color:#15803d;background:#f0fdf4}.badge-active{background:var(--color-success-bg);color:var(--color-success)}.badge-inactive{color:#6b7280;background:#f3f4f6}.badge-minor{color:#c2410c;background:#fff7ed}.badge-incomplete{background:var(--color-danger-bg);color:var(--color-danger)}.badge-complete{background:var(--color-success-bg);color:var(--color-success)}.registration-badge-btn{cursor:pointer;font:inherit;border:none;align-items:center;gap:4px;display:inline-flex}.registration-badge-btn:hover{filter:brightness(.95)}.registration-missing-link{color:var(--color-danger);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:0;font-size:11px;text-decoration:underline;display:block}.registration-missing-link:hover{color:var(--color-danger);opacity:.85}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-primary);font-size:13px;font-weight:600}.form-label .required{color:var(--color-danger);margin-left:2px}.form-input,.form-select,.form-textarea{border:1px solid var(--input-border);border-radius:var(--radius-input);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;outline:none;padding:9px 12px;font-size:14px;line-height:1.4}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--focus-ring);box-shadow:0 0 0 3px #3b82f61f}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-input.error,.form-select.error{border-color:var(--color-danger)}.form-error{color:var(--color-danger);align-items:center;gap:4px;font-size:12px;display:flex}.form-hint{color:var(--text-secondary);font-size:12px}.form-textarea{resize:vertical;min-height:80px}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:36px}.form-input-wrapper{position:relative}.form-input-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.form-input-wrapper .form-input{padding-left:36px}.toggle{vertical-align:middle;flex-shrink:0;width:42px;height:24px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;transition:background var(--transition-base);background:#d1d5db;border-radius:24px;position:absolute;inset:0}.toggle-slider:before{content:"";width:18px;height:18px;transition:transform var(--transition-base);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-slider{background:var(--toggle-active)}.toggle input:checked+.toggle-slider:before{transform:translate(18px)}.toggle input:disabled+.toggle-slider{opacity:.55;cursor:not-allowed}.toggle-field{align-items:center;gap:10px;display:flex}.toggle-field-label{color:var(--text-secondary);font-size:13px;font-weight:600}.card{background:var(--surface-bg);border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);padding:20px 24px}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{color:var(--text-primary);font-size:15px;font-weight:700}.card-subtitle{color:var(--text-secondary);margin-top:2px;font-size:13px}.stat-card{background:var(--surface-bg);border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);flex-direction:column;gap:8px;padding:20px;display:flex}.stat-card-label{color:var(--text-secondary);font-size:13px;font-weight:500}.stat-card-value{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:28px;font-weight:700;line-height:1}.stat-card-value.danger{color:var(--color-danger)}.stat-card-value.warning{color:var(--color-warning)}.stat-card-value.success{color:var(--color-success)}.stat-card-value.primary{color:var(--color-primary)}.stat-card--primary{background:#eff6ff;border-color:#bfdbfe}.stat-card--danger{background:#fef2f2;border-color:#fecaca}.stat-card--warning{background:#fffbeb;border-color:#fde68a}.stat-card--info{background:#eff6ff;border-color:#bfdbfe}.table-wrapper{background:var(--surface-bg);border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);width:100%;min-width:0;max-width:100%;overflow:auto visible}.table-wrapper--menu-visible{overflow:visible}.action-menu-dropdown{border:1px solid var(--border-color);box-shadow:var(--shadow-md);z-index:200;background:#fff;border-radius:8px;flex-direction:column;min-width:160px;display:flex;position:absolute;bottom:calc(100% + 4px);right:0;overflow:hidden}.action-menu-dropdown .dropdown-item{text-align:left;cursor:pointer;transition:background var(--transition-fast);width:100%;color:var(--text-primary);background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.action-menu-dropdown button:not(.dropdown-item){text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;padding:10px 14px;font-size:13px;font-weight:500;display:block}.action-menu-dropdown button:not(.dropdown-item):hover,.action-menu-dropdown .dropdown-item:hover{background:var(--surface-hover)}.action-menu-dropdown .dropdown-item--danger,.action-menu-dropdown .dropdown-item--danger svg{color:var(--color-danger)}.action-menu-dropdown .dropdown-item--edit{color:var(--text-primary)}.action-menu-dropdown .dropdown-item--edit svg{color:var(--color-primary)}.alert-employer-pay{border-radius:var(--radius-card);color:var(--text-secondary);background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:10px;padding:12px 16px;font-size:13px;line-height:1.55;display:flex}.alert-employer-pay strong{color:#b45309;font-weight:700}.alert-employer-pay-icon{color:#d97706;flex-shrink:0;margin-top:1px}.tabs--intake-fields{border-bottom:none;gap:8px;padding:0}.tabs--intake-fields .tab-btn{border-bottom:none;border:1px solid var(--border-color);color:var(--text-secondary);background:#fff;border-radius:8px;margin-bottom:0;padding:8px 14px;font-size:13px;font-weight:600}.tabs--intake-fields .tab-btn:hover{color:var(--text-primary);background:#f9fafb}.tabs--intake-fields .tab-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.intake-minor-banner{margin-bottom:0}.intake-minor-banner-title{color:#92400e;font-weight:700}.intake-minor-banner-text{color:#92400e;margin:0;font-size:13px;font-weight:400;line-height:1.55}.intake-minor-section{background:#fffbeb;border:1px solid #fcd34d;border-radius:12px;overflow:hidden}.intake-minor-section-header{background:#fffbeb;align-items:flex-start;gap:12px;padding:20px 24px 16px;display:flex}.intake-minor-section-icon{color:#c2410c;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.intake-minor-section-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:700;line-height:1.3}.intake-minor-section-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px;line-height:1.45}.intake-minor-table-wrapper{background:#fffbeb;padding:0 20px 20px}.intake-minor-table-wrapper .data-table{background:#fff;border:1px solid #fde68a;border-radius:8px;overflow:hidden}.intake-minor-table-wrapper .data-table thead{background:0 0;border-bottom:1px solid #fde68a}.intake-minor-table-wrapper .data-table th{color:#9ca3af;padding:8px 16px 12px;font-size:11px}.intake-minor-table-wrapper .data-table tbody tr,.intake-minor-table-wrapper .data-table tbody tr:hover{background:#fff}.intake-minor-table-wrapper .data-table td{border-bottom:1px solid #f3f4f6;padding:12px 16px}.intake-minor-table-wrapper .data-table tbody tr:first-child td{border-top:1px solid #fde68a}.intake-minor-footnote{color:var(--text-secondary);margin:12px 0 0;font-size:12px;line-height:1.55}.badge-minor-field{letter-spacing:.02em;color:#b45309;background:#fef3c7;border-radius:4px;align-items:center;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.badge-system-field{letter-spacing:.02em;color:#1d4ed8;background:#dbeafe;border-radius:4px;align-items:center;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.block-dates-page{flex-direction:column;gap:20px;display:flex}.block-dates-tabs{margin-bottom:0}.block-dates-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.block-dates-left{flex-direction:column;gap:16px;display:flex}.block-dates-calendar-card{padding:16px}.block-dates-calendar-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.block-dates-calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.block-dates-calendar-dow{text-align:center;color:var(--text-secondary);padding:4px 0;font-size:11px;font-weight:700}.block-dates-calendar-day{aspect-ratio:1;border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:8px;font-size:13px;font-weight:600}.block-dates-calendar-day.empty{cursor:default;background:0 0;border:none}.block-dates-calendar-day.selected{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.block-dates-calendar-day.blocked-full:not(.selected){color:#991b1b;background:#fef2f2;border-color:#fecaca}.block-dates-calendar-day.blocked-partial:not(.selected){color:#92400e;background:#fffbeb;border-color:#fde68a}.block-dates-legend{color:var(--text-secondary);flex-direction:column;gap:6px;margin-top:14px;font-size:12px;display:flex}.block-dates-legend .legend-swatch{vertical-align:middle;border-radius:3px;width:12px;height:12px;margin-right:8px;display:inline-block}.block-dates-legend .legend-swatch.full{background:#fecaca}.block-dates-legend .legend-swatch.partial{background:#fde68a}.block-dates-info{align-items:flex-start;gap:10px;margin-bottom:0;padding:12px 14px;display:flex}.block-dates-info p{margin:0;font-size:13px;line-height:1.5}.block-dates-form-card{padding:20px 24px}.block-dates-form-title{margin:0 0 16px;font-size:18px;font-weight:700}.block-dates-form{flex-direction:column;gap:14px;display:flex}.block-dates-radio-row{gap:20px;font-size:13px;font-weight:600;display:flex}.block-dates-radio-row label{align-items:center;gap:8px;display:flex}.block-dates-notify-box{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;padding:12px 14px}.block-dates-notify-label{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.block-dates-notify-box p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.45}.block-dates-form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.block-dates-table-card{padding:0;overflow:hidden}.block-dates-table-title{border-bottom:1px solid var(--border-color);margin:0;padding:20px 24px;font-size:18px;font-weight:700}.block-dates-empty{text-align:center;color:var(--text-secondary);padding:40px}.block-dates-type-badge{border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.block-dates-type-badge.full{color:#991b1b;background:#fee2e2}.block-dates-type-badge.partial{color:#92400e;background:#fef3c7}.block-dates-type-sub{color:var(--text-secondary);margin-top:4px;font-size:12px}.block-dates-row-actions{justify-content:flex-end;gap:8px;display:flex}.block-dates-inherit-card{background:#f8f6ff;border:1px solid #dcd3ff;padding:20px}.block-dates-inherit-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.block-dates-inherit-header h3{color:#4f46e5;margin:0 0 4px;font-size:15px;font-weight:700}.block-dates-inherit-header p{color:var(--text-secondary);margin:0;font-size:12px}.block-dates-inherit-body{flex-direction:column;gap:12px;max-width:420px;margin-top:16px;display:flex}@media (max-width:960px){.block-dates-layout{grid-template-columns:1fr}}.data-table{border-collapse:collapse;width:100%}.data-table thead{border-bottom:1px solid var(--border-color);background:#f0f6ff}.data-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);text-align:left;white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:700}.data-table td{color:var(--text-primary);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:14px 16px;font-size:14px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--transition-fast);background:#fff}.data-table tbody tr:hover{background:var(--surface-hover)}.table-footer{border-top:1px solid var(--border-color);background:#fafafa;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.table-count{color:var(--text-secondary);font-size:13px}.pagination{align-items:center;gap:4px;display:flex}.pagination-btn{border:1px solid var(--border-color);cursor:pointer;width:32px;height:32px;color:var(--text-primary);transition:background var(--transition-fast), color var(--transition-fast);background:#fff;border-radius:6px;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.pagination-btn:hover:not(:disabled){background:var(--surface-hover)}.pagination-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination--labeled{gap:6px}.pagination-btn--nav{align-items:center;gap:6px;width:auto;min-width:96px;padding:0 12px;display:inline-flex}.pagination-ellipsis,.patients-pagination-ellipsis{color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:0 4px}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:200;background:#00000073;justify-content:center;align-items:center;padding:24px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius-card);box-shadow:var(--shadow-modal);background:#fff;width:100%;max-width:520px;max-height:90vh;animation:.2s slideUp;overflow-y:auto}.modal-lg{max-width:720px}.modal-xl{max-width:960px}.modal-2xl{width:100%;max-width:min(1140px,100vw - 40px)}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.modal-title{color:var(--text-primary);font-size:17px;font-weight:700}.modal-body{padding:20px 24px}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;display:flex}.modal-close{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:background var(--transition-fast);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--surface-hover);color:var(--text-primary)}.form-section-title{color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);margin:0 0 16px;padding-bottom:8px;font-size:13px;font-weight:700}.form-section-title+*{margin-top:0}.modal-body>.form-section-title:not(:first-child){margin-top:8px}.tabs{border-bottom:1px solid var(--border-color);gap:0;display:flex}.tabs.tabs--intake-fields{gap:8px}.tab-btn{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:500;display:flex}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;width:100%;min-width:0;max-width:100%;display:flex}.search-input-wrapper{flex:1;min-width:min(200px,100%);max-width:320px;position:relative}.search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-input{border:1px solid var(--input-border);border-radius:var(--radius-input);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;outline:none;padding:8px 12px 8px 34px;font-size:14px}.search-input:focus{border-color:var(--focus-ring);box-shadow:0 0 0 3px #3b82f61f}.filter-select{border:1px solid var(--input-border);border-radius:var(--radius-input);color:var(--text-primary);cursor:pointer;appearance:none;transition:border-color var(--transition-fast);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat;outline:none;padding:8px 32px 8px 12px;font-size:14px}.filter-select:focus{border-color:var(--focus-ring)}.filter-bar-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.filter-bar-actions .btn{white-space:nowrap}.responsive-split-layout{align-items:flex-start;gap:24px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.page-title{color:var(--text-primary);font-size:22px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:2px;font-size:14px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;width:100%;min-width:0;max-width:100%;margin-bottom:20px;display:grid}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.alert{border-radius:var(--radius-card);align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid #fde68a}.alert-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #fecaca}.alert-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid #bbf7d0}.alert-info{background:var(--color-info-bg);color:var(--color-info);border:1px solid #0049b92e}.alert--with-action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.alert-body{flex:1;align-items:flex-start;gap:10px;min-width:240px;display:flex}.table-provider-select{border:1px solid var(--border-color);width:100%;max-width:180px;color:var(--text-primary);cursor:pointer;background:#fff;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:500}.table-provider-select:focus{border-color:var(--focus-ring);outline:none;box-shadow:0 0 0 3px #0049b91f}.table-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.data-table th.table-actions-col,.data-table td.table-actions-col{white-space:nowrap;vertical-align:middle;width:1%;min-width:168px}.appointments-table th.appt-provider-col,.appointments-table td.appt-provider-col{white-space:nowrap;vertical-align:top;width:1%;padding-left:12px;padding-right:12px}.appt-provider-cell{width:220px;min-width:0;max-width:100%;display:block;position:relative}.appt-provider-cell--disabled{opacity:.72;pointer-events:none}.appt-provider-cell--disabled .appt-provider-trigger{cursor:default;background:#f8fafc;border-color:#e2e8f0}.appt-provider-trigger{border:1px solid var(--border-color);text-align:left;cursor:pointer;box-sizing:border-box;width:100%;min-height:58px;transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;border-radius:8px;align-items:center;gap:8px;margin:0;padding:8px 10px;display:flex}.appt-provider-trigger:hover:not(:disabled){background:#f8fafc;border-color:#93c5fd;box-shadow:0 1px 3px #0f172a0f}.appt-provider-cell--open .appt-provider-trigger{border-color:var(--color-primary);background:#f8fafc;box-shadow:0 0 0 3px #0049b91f}.appt-provider-trigger:focus-visible{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0049b91f}.appt-provider-trigger-body{flex:1;min-width:0}.appt-provider-chevron{color:#9ca3af;width:20px;height:20px;transition:transform var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-self:center;align-items:center;display:flex}.appt-provider-trigger:hover:not(:disabled) .appt-provider-chevron,.appt-provider-cell--open .appt-provider-chevron{color:var(--color-primary)}.appt-provider-cell--open .appt-provider-chevron{transform:rotate(180deg)}.appt-provider-assigned,.appt-provider-unassigned{align-items:center;gap:8px;width:100%;min-height:42px;display:flex}.appt-provider-unassigned-icon{color:#9ca3af;background:#f9fafb;border:1.5px solid #d1d5db;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.appt-provider-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:700;display:flex}.appt-provider-avatar--sm{width:32px;height:32px;font-size:11px}.appt-provider-avatar--blue{color:#1d4ed8;background:#dbeafe}.appt-provider-avatar--purple{color:#6d28d9;background:#ede9fe}.appt-provider-avatar--green{color:#15803d;background:#dcfce7}.appt-provider-avatar--orange{color:#c2410c;background:#ffedd5}.appt-provider-avatar--pink{color:#be185d;background:#fce7f3}.appt-provider-avatar--teal{color:#0f766e;background:#ccfbf1}.appt-provider-info{flex:1;grid-template-rows:repeat(3,14px);align-content:center;gap:2px;min-width:0;display:grid}.appt-provider-line{text-overflow:ellipsis;white-space:nowrap;min-height:14px;line-height:14px;overflow:hidden}.appt-provider-name{color:var(--text-primary);font-size:13px;font-weight:600}.appt-provider-specialty{color:var(--text-secondary);font-size:11px}.appt-provider-location{color:#9ca3af;font-size:11px}.appt-provider-unassigned-label{color:#9ca3af;font-size:13px;font-weight:500}.appt-provider-assign-hint{color:var(--color-primary);font-size:11px;font-weight:500}.appt-provider-dropdown{z-index:250;border:1px solid var(--border-color);background:#fff;border-radius:12px;min-width:280px;max-width:320px;padding:8px 0;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #0f172a1f}.appt-provider-dropdown-header{letter-spacing:.06em;text-transform:uppercase;color:#9ca3af;padding:8px 14px 10px;font-size:11px;font-weight:700}.appt-provider-dropdown-list{flex-direction:column;gap:4px;max-height:280px;padding:0 8px;display:flex;overflow-y:auto}.appt-provider-dropdown-empty{color:var(--text-secondary);padding:12px 14px;font-size:13px}.appt-provider-dropdown-section-label{letter-spacing:.04em;text-transform:uppercase;color:#9ca3af;padding:10px 14px 6px;font-size:11px;font-weight:700}.appt-provider-option{text-align:left;cursor:pointer;width:100%;transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1.5px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.appt-provider-option:hover,.appt-provider-option--highlighted{background:#f0f7ff}.appt-provider-option--selected{background:#fff;border-color:#111827}.appt-provider-option-text{flex:1;min-width:0}.appt-provider-dropdown-divider{background:var(--border-color);height:1px;margin:8px 0 4px}.appt-provider-remove{color:#9ca3af;cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.appt-provider-remove:hover{color:#6b7280;background:#f9fafb}@media (max-width:1200px){.appt-provider-cell{width:200px}}@media (max-width:768px){.appointments-table th.appt-provider-col,.appointments-table td.appt-provider-col{white-space:normal}.appt-provider-cell,.appt-provider-trigger{width:100%;max-width:100%}}.patient-profile-card{background:var(--surface-bg);border:1px solid var(--border-color);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:24px}.patient-profile-layout{align-items:flex-start;gap:20px;display:flex}.patient-profile-main{flex:1;min-width:0}.patient-profile-name-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.patient-profile-name{color:var(--text-primary);margin:0;font-size:22px;font-weight:700}.patient-profile-demographics{color:var(--text-secondary);margin-bottom:14px;font-size:14px}.patient-profile-contact-grid{grid-template-columns:1fr 1fr;gap:10px 24px;display:grid}.patient-profile-contact-item{color:var(--text-primary);align-items:center;gap:8px;font-size:14px;display:flex}.patient-profile-contact-item svg{color:var(--text-secondary);flex-shrink:0}.patient-profile-actions{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.change-log-panel{min-height:160px}.change-log-timeline{border-left:2px solid var(--border-color);flex-direction:column;gap:14px;margin:0;padding:4px 0 4px 8px;list-style:none;display:flex}.change-log-timeline-item{padding-left:18px;position:relative}.change-log-timeline-dot{width:12px;height:12px;box-shadow:0 0 0 1px var(--border-color);background:#94a3b8;border:2px solid #fff;border-radius:50%;position:absolute;top:10px;left:-7px}.change-log-timeline-item--primary .change-log-timeline-dot{background:#2563eb}.change-log-timeline-item--success .change-log-timeline-dot{background:#16a34a}.change-log-timeline-item--danger .change-log-timeline-dot{background:#dc2626}.change-log-timeline-item--info .change-log-timeline-dot{background:#7c3aed}.change-log-timeline-card{border:1px solid var(--border-color);background:#fff;border-radius:10px;padding:12px 14px}.change-log-timeline-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.change-log-action-badge{text-transform:uppercase;letter-spacing:.03em;color:#475569;background:#f1f5f9;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.change-log-action-badge--primary{color:#1d4ed8;background:#dbeafe}.change-log-action-badge--success{color:#15803d;background:#dcfce7}.change-log-action-badge--danger{color:#b91c1c;background:#fee2e2}.change-log-action-badge--info{color:#6d28d9;background:#ede9fe}.change-log-timeline-time{color:var(--text-secondary);font-size:12px}.change-log-timeline-body{color:var(--text-primary);margin:0;font-size:14px;line-height:1.45}.change-log-timeline-meta{color:var(--text-secondary);margin-top:6px;font-size:12px}.appointment-status-actions{flex-direction:column;gap:8px;min-width:200px;display:flex;position:relative}.appointment-status-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:11px;font-weight:700}.appointment-status-trigger{cursor:pointer;border:none;justify-content:space-between;gap:8px;width:100%}.appointment-status-trigger:disabled{opacity:.6;cursor:not-allowed}.appointment-status-menu{z-index:40;border:1px solid var(--border-color);background:#fff;border-radius:12px;flex-direction:column;gap:4px;min-width:240px;margin:0;padding:8px;list-style:none;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #0f172a1f}.appointment-status-option{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;width:100%;padding:4px}.appointment-status-option:hover,.appointment-status-option.is-selected{background:var(--surface-hover)}.appointment-status-option .queue-status-pill{justify-content:flex-start;gap:8px;width:100%}.tab-btn-count--new{color:#dc2626;font-weight:700}.appointment-detail-nav{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.appointment-detail-nav .btn{padding:10px 16px}.patient-profile-actions .btn{justify-content:center;min-width:160px}.btn-patient-sms{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-patient-sms:hover{background:var(--color-primary-dark,#003d9e)}.btn-patient-email{color:#fff;background:#7c3aed;border-color:#7c3aed}.btn-patient-email:hover{background:#6d28d9}.patient-profile-edit-row{border-top:1px solid var(--border-color);justify-content:flex-end;margin-top:16px;padding-top:16px;display:flex}.patient-comms-modal{width:100%;max-width:520px}.patient-comms-modal .modal-body .form-group{gap:10px;margin-bottom:18px}.patient-comms-modal .modal-body .form-group:last-of-type{margin-bottom:14px}.patient-comms-modal .form-label{margin:0;line-height:1.35;display:block}.patient-comms-modal-sub{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.patient-comms-textarea{resize:vertical;min-height:120px}.patient-comms-note{color:#854d0e;background:#fef9c3;border-radius:8px;margin-top:4px;padding:12px 14px;font-size:13px;line-height:1.45}.patient-comms-note--email{background:#fef9c3}.patient-comms-view-field{background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;font-size:14px}.patient-comms-view-body{background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.55}.tabs--patient-profile .tab-btn{font-size:13px}@media (max-width:900px){.patient-profile-layout{flex-direction:column}.patient-profile-actions{flex-flow:wrap;width:100%}.patient-profile-contact-grid{grid-template-columns:1fr}}.status-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.active{background:var(--color-success)}.status-dot.inactive{background:#d1d5db}.status-dot.warning{background:var(--color-warning)}.permissions-matrix{border:1px solid var(--border-color);border-radius:var(--radius-card);overflow:hidden}.permissions-matrix-header,.permissions-matrix-row{grid-template-columns:minmax(200px,1.4fr) repeat(4,minmax(72px,1fr));align-items:center;gap:8px;display:grid}.permissions-matrix-header{border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);background:#f8fafc;padding:12px 16px;font-size:11px;font-weight:700}.permissions-matrix-row{border-bottom:1px solid var(--border-color);background:#fff;padding:12px 16px}.permissions-matrix-row:last-child{border-bottom:none}.permissions-group{border-bottom:1px solid var(--border-color)}.permissions-group:last-child{border-bottom:none}.permissions-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);background:var(--color-primary-light);border-bottom:1px solid #0049b914;padding:10px 16px;font-size:11px;font-weight:700}.permissions-matrix-module-col{color:var(--text-primary);font-size:14px;font-weight:500}.permissions-matrix-action-col{justify-content:center;align-items:center;display:flex}.permissions-toggle{margin:0 auto}@media (max-width:900px){.permissions-matrix-header{display:none}.permissions-matrix-row{grid-template-columns:1fr;gap:12px;padding:16px}.permissions-matrix-module-col{margin-bottom:4px}.permissions-matrix-action-col{justify-content:space-between;padding:4px 0}.permissions-matrix-action-col:before{content:attr(data-action);color:var(--text-secondary);text-transform:uppercase;font-size:12px;font-weight:600}}.booking-container{background:var(--content-bg);justify-content:center;align-items:flex-start;min-height:100vh;padding:32px 16px;display:flex}.booking-card{background:var(--surface-bg);border-radius:16px;width:100%;max-width:560px;padding:32px;box-shadow:0 8px 40px #0049b91a}.booking-progress{align-items:center;gap:0;margin-bottom:28px;display:flex}.booking-progress-step{height:4px;transition:background var(--transition-base);background:#e5e7eb;border-radius:2px;flex:1}.booking-progress-step.done{background:var(--color-primary)}.booking-progress-step+.booking-progress-step{margin-left:4px}.booking-step-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px}.booking-title{color:var(--text-primary);margin-bottom:20px;font-family:Outfit,sans-serif;font-size:22px;font-weight:700}.reason-card{border:2px solid var(--border-color);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);text-align:left;width:100%;font:inherit;background:#fff;border-radius:12px;flex-direction:column;gap:4px;margin-bottom:10px;padding:16px 18px;display:flex}.reason-card:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.reason-card.selected{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 4px #0049b91a}.reason-card-name{color:var(--text-primary);font-size:15px;font-weight:600}.reason-card-meta{color:var(--text-secondary);gap:12px;font-size:13px;display:flex}.slot-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.slot-pill{text-align:center;border:1.5px solid var(--border-color);cursor:pointer;color:var(--text-primary);transition:all var(--transition-fast);background:#fff;border-radius:8px;padding:10px 8px;font-size:14px;font-weight:500}.slot-pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.slot-pill.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.slot-pill.disabled{opacity:.35;cursor:not-allowed}.kiosk-screen{background:linear-gradient(160deg, #0049b9 0%, var(--color-navy) 100%);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 24px;display:flex}.kiosk-btn{color:#fff;cursor:pointer;transition:background var(--transition-base), border-color var(--transition-base);text-align:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:16px;width:100%;max-width:380px;margin:8px auto;padding:28px 32px;font-size:20px;font-weight:700;display:block}.kiosk-btn:hover{background:#fff3;border-color:#fff9}.kiosk-btn-primary{background:var(--color-primary);border-color:var(--color-primary)}.kiosk-portal{background:#eef3fb;flex-direction:column;min-height:100vh;display:flex}.kiosk-portal-header{background:var(--color-primary);color:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.kiosk-portal-brand{align-items:center;gap:10px;display:flex}.kiosk-portal-logo{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:inline-flex}.kiosk-portal-brand strong{font-size:16px;line-height:1.2;display:block}.kiosk-portal-brand span{letter-spacing:.06em;opacity:.85;font-size:11px}.kiosk-portal-secure{opacity:.95;align-items:center;gap:6px;font-size:12px;display:flex}.kiosk-portal-main{flex:1;width:100%;max-width:560px;margin:0 auto;padding:24px 20px 40px}.kiosk-portal-back{color:#5b6b7c;margin-bottom:16px;font-size:14px;text-decoration:none;display:inline-block}.kiosk-portal-footer{text-align:center;color:#7a9cc4;padding:16px;font-size:12px}.kiosk-home{text-align:center}.kiosk-home-status{color:#1a7f4b;background:#e8f8ee;border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.kiosk-status-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;display:inline-block}.kiosk-status-dot--amber{background:#f59e0b}.kiosk-home-title{color:#0f2b4d;margin:0 0 8px;font-size:32px;font-weight:700}.kiosk-home-subtitle{color:#5b6b7c;margin:0 0 20px;font-size:16px}.kiosk-wait-banner{color:#1a4f8c;background:#e8f1fc;border:1px solid #c5daf5;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;padding:12px 16px;font-size:14px;display:flex}.kiosk-home-actions{flex-direction:column;gap:12px;display:flex}.kiosk-action-card{color:inherit;background:#fff;border:1px solid #d8e6f5;border-radius:14px;align-items:center;gap:14px;padding:18px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 2px 8px #1a6fd40f}.kiosk-action-card:hover{border-color:var(--color-primary);box-shadow:0 4px 14px #1a6fd41f}.kiosk-action-card--primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.kiosk-action-card--primary .kiosk-action-text small{color:#ffffffd9}.kiosk-action-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.kiosk-action-icon--blue{color:var(--color-primary);background:#1a6fd41f}.kiosk-action-card--primary .kiosk-action-icon--blue{color:#fff;background:#fff3}.kiosk-action-icon--amber{color:#d97706;background:#fef3c7}.kiosk-action-text{text-align:left;flex:1}.kiosk-action-text strong{margin-bottom:2px;font-size:17px;display:block}.kiosk-action-text small{color:#6b7c8f;font-size:13px}.kiosk-action-chevron{color:#9ab4d0;font-size:24px}.kiosk-action-card--primary .kiosk-action-chevron{color:#fffc}.kiosk-inactivity-note{color:#8aa0b8;margin-top:28px;font-size:13px}.kiosk-center-panel{text-align:center}.kiosk-form-card{text-align:center;background:#fff;border:1px solid #d8e6f5;border-radius:16px;padding:28px 24px;box-shadow:0 4px 20px #0f2b4d0f}.kiosk-panel-title{color:#0f2b4d;margin:16px 0 8px;font-size:26px;font-weight:700}.kiosk-panel-subtitle{color:#5b6b7c;margin:0 0 20px;font-size:15px}.kiosk-icon-circle{border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto;display:inline-flex}.kiosk-icon-circle--sm{width:56px;height:56px}.kiosk-icon-circle--blue{color:var(--color-primary);background:#e8f1fc}.kiosk-icon-circle--green{color:#16a34a;background:#dcfce7}.kiosk-icon-circle--amber{color:#d97706;background:#fef3c7}.kiosk-icon-circle--red{color:#dc2626;background:#fee2e2}.kiosk-form{text-align:left;flex-direction:column;gap:14px;display:flex}.kiosk-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:480px){.kiosk-form-row{grid-template-columns:1fr}}.kiosk-dob-picker{position:relative}.kiosk-dob-trigger{color:#94a3b8;cursor:pointer;text-align:left;background:#fff;border:1px solid #cbd5e1;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px 14px;font-size:16px;display:flex}.kiosk-dob-trigger.has-value{color:#0f172a}.kiosk-dob-trigger svg{color:var(--color-primary);flex-shrink:0}.kiosk-dob-hidden-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.kiosk-dob-popover{z-index:20;background:#fff;border:1px solid #c5daf5;border-radius:14px;padding:14px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 32px #0f2b4d26}.kiosk-dob-popover-header{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.kiosk-dob-select{color:#0f2b4d;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;width:100%;padding:10px 12px;font-size:15px}.kiosk-dob-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.kiosk-dob-weekdays span{text-align:center;color:#64748b;padding:4px 0;font-size:12px;font-weight:600}.kiosk-dob-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.kiosk-dob-day{aspect-ratio:1;color:#0f2b4d;cursor:pointer;background:0 0;border:none;border-radius:10px;min-height:40px;font-size:15px;font-weight:500}.kiosk-dob-day:hover:not(.is-disabled):not(.kiosk-dob-day--empty){background:#e8f1fc}.kiosk-dob-day.is-selected{background:var(--color-primary);color:#fff}.kiosk-dob-day.is-disabled{color:#cbd5e1;cursor:not-allowed}.kiosk-dob-day--empty{pointer-events:none}.kiosk-field span{color:#334155;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.kiosk-field input{border:1px solid #cbd5e1;border-radius:10px;width:100%;padding:12px 14px;font-size:16px}.kiosk-field small{color:#94a3b8;margin-top:4px;font-size:12px;display:block}.kiosk-btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.kiosk-btn-outline{color:#0f2b4d;cursor:pointer;background:#fff;border:1px solid #c5daf5;border-radius:12px;justify-content:center;align-items:center;margin-top:10px;padding:14px 20px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.kiosk-btn-full{width:100%}.kiosk-detail-card{text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:14px;padding:16px}.kiosk-detail-card-label{letter-spacing:.06em;color:#94a3b8;margin-bottom:10px;font-size:11px}.kiosk-detail-row{justify-content:space-between;padding:8px 0;font-size:15px;display:flex}.kiosk-detail-row span{color:#64748b}.kiosk-missing-fields{color:#dc2626;border-top:1px solid #f1f5f9;margin-top:12px;padding-top:12px;font-size:14px}.kiosk-missing-fields ul{margin:8px 0 0;padding-left:18px}.kiosk-info-box{text-align:left;border-radius:12px;margin-bottom:16px;padding:16px;font-size:14px}.kiosk-info-box--blue{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.kiosk-info-box--amber{color:#92400e;background:#fffbeb;border:1px solid #fcd34d}.kiosk-info-box-title{align-items:center;gap:8px;margin-bottom:8px;font-weight:700;display:flex}.kiosk-bullet-list,.kiosk-steps-list{margin:0;padding-left:0;list-style:none}.kiosk-bullet-list li{margin-bottom:6px}.kiosk-steps-list li{align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.kiosk-steps-list li span{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.kiosk-wait-time{color:var(--color-primary);margin:8px 0;font-size:48px;font-weight:700}.kiosk-queue-text{color:#5b6b7c;margin-bottom:20px}.kiosk-footnote{color:#8aa0b8;margin-top:12px;font-size:13px}.kiosk-error-text{color:#dc2626;margin:8px 0;font-size:14px}.kiosk-alert-badge{color:#d97706;background:#fffbeb;border:1px solid #fcd34d;border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.kiosk-loading-dots{justify-content:center;gap:8px;margin-top:20px;display:flex}.kiosk-loading-dots span{background:#93c5fd;border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite kioskDotWave}.kiosk-loading-dots span:nth-child(2){animation-delay:.15s}.kiosk-loading-dots span:nth-child(3){animation-delay:.3s}@keyframes kioskDotWave{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.kiosk-alert-overlay{z-index:10000;background:#0f2b4d73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.kiosk-alert-modal{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:420px;padding:28px 24px;animation:.25s slideUp;box-shadow:0 20px 50px #0f2b4d33}.kiosk-alert-icon{color:#d97706;background:#fef3c7;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;font-size:28px;font-weight:700;display:inline-flex}.kiosk-alert-title{color:#0f2b4d;margin:0 0 8px;font-size:20px;font-weight:700}.kiosk-alert-subtitle{color:#64748b;margin:0 0 16px;font-size:14px}.kiosk-alert-details{text-align:left;margin:0 0 20px;font-size:14px}.kiosk-alert-details div{border-bottom:1px solid #f1f5f9;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.kiosk-alert-details dt{color:#64748b;font-weight:500}.kiosk-alert-details dd{color:#0f2b4d;text-align:right;margin:0;font-weight:600}.kiosk-alert-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px;font-size:15px;font-weight:600}.permissions-na{color:#cbd5e1;font-size:14px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}.fade-in{animation:.2s fadeIn}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:6px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.auth-page{background:var(--content-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface-bg);box-sizing:border-box;border-radius:16px;width:100%;max-width:420px;padding:48px 44px;box-shadow:0 8px 40px #0049b91a}.auth-logo{align-items:center;gap:10px;margin-bottom:28px;display:flex}.auth-logo-icon{background:var(--color-primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:800;display:flex}.auth-logo-name{color:var(--text-primary);font-size:20px;font-weight:800}.auth-title{color:var(--text-primary);margin-bottom:4px;font-size:22px;font-weight:700}.auth-subtitle{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.auth-form{flex-direction:column;gap:16px;display:flex}.text-primary{color:var(--text-primary)!important}.text-secondary{color:var(--text-secondary)!important}.text-danger{color:var(--color-danger)!important}.text-success{color:var(--color-success)!important}.text-warning{color:var(--color-warning)!important}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-sm{font-size:13px}.font-xs{font-size:12px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.w-full{width:100%}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeslots-main-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0049b90f}.timeslots-day-tab{color:#374151;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600}.timeslots-day-tab:hover{color:var(--color-primary)}.timeslots-day-tab.active{color:#fff;background:#0049b9}.timeslots-copy-banner{color:#fff;background:#0049b9;border-radius:10px;padding:16px 20px}.timeslots-copy-day{cursor:pointer;color:#fff;transition:all var(--transition-fast);background:0 0;border:1px solid #ffffff8c;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.timeslots-copy-day.selected{color:#0049b9;background:#fff;border-color:#0049b9}.timeslots-grid-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.timeslots-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (max-width:900px){.timeslots-grid{grid-template-columns:repeat(2,1fr)}}.timeslots-slot{cursor:pointer;min-height:88px;transition:all var(--transition-fast);border-radius:10px;flex-direction:column;justify-content:center;padding:14px 16px;display:flex;position:relative}.timeslots-slot.available{background:#f0f6ff;border:1px solid #0049b9}.timeslots-slot.full{background:#fff5f5;border:1px solid #fecaca}.timeslots-slot.blocked{background:#f3f4f6;border:1px solid #d1d5db}.timeslots-slot.selected{border:2px solid #0049b9}.timeslots-slot.available.selected{background:#f0f6ff}.timeslots-slot.blocked.selected{background:#f3f4f6}.timeslots-slot-time{color:#0f1729;font-size:14px;font-weight:700}.timeslots-slot-meta{color:#6b7280;margin-top:4px;font-size:11px}.timeslots-slot-dot{background:#0049b9;border-radius:50%;width:8px;height:8px;position:absolute;top:12px;right:12px}.timeslots-slot-full-badge{color:#fb2c36;color:lab(55.4814% 75.0732 48.8528);background:#ffc9c9;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:700;position:absolute;top:10px;right:10px}.timeslots-slot-blocked-icon{color:#6b7280;position:absolute;top:10px;right:10px}.timeslots-empty{text-align:center;color:var(--text-secondary);background:#f0f6ff;border:2px dashed #bfdbfe;border-radius:12px;padding:48px 20px;font-size:14px}.tsv2-page{flex-direction:column;gap:20px;width:100%;min-width:0;max-width:100%;display:flex}.tsv2-inherit-banner{background:#f8f6ff;border:1px solid #dcd3ff;border-radius:12px;padding:20px}.tsv2-inherit-icon{color:#6366f1;background:#ece6ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.tsv2-top-bar{border:1px solid var(--border-color);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;max-width:100%;padding:12px 16px;display:flex}.tsv2-back-btn{align-items:center;gap:6px;display:inline-flex}.tsv2-location-pill{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.tsv2-workspace{grid-template-columns:240px minmax(0,1fr) 300px;align-items:start;gap:20px;width:100%;min-width:0;max-width:100%;display:grid}@media (max-width:1200px){.tsv2-workspace{grid-template-columns:1fr}.tsv2-calendar-panel{max-width:360px}}@media (max-width:1400px) and (min-width:1201px){.tsv2-workspace{grid-template-columns:220px minmax(0,1fr) 280px;gap:16px}}@media (max-width:768px){.tsv2-calendar-panel{max-width:none}}.tsv2-calendar-panel{padding:16px}.tsv2-mini-cal-header{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:700;display:flex}.tsv2-mini-cal-header button{cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:6px;width:28px;height:28px;font-size:20px}.tsv2-mini-cal-header button:hover{background:#f1f5f9}.tsv2-mini-cal-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;display:grid}.tsv2-mini-cal-weekdays span{text-align:center;color:var(--text-secondary);font-size:10px;font-weight:700}.tsv2-mini-cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.tsv2-cal-empty{aspect-ratio:1}.tsv2-cal-day{aspect-ratio:1;cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;position:relative}.tsv2-cal-day:hover{background:#f1f5f9}.tsv2-cal-day.selected{background:var(--color-primary);color:#fff}.tsv2-cal-day.today:not(.selected){box-shadow:inset 0 0 0 2px var(--color-primary)}.tsv2-cal-day.blocked-day:not(.selected){color:#991b1b;background:#fef2f2}.tsv2-cal-day.partial-block-day:not(.selected):not(.blocked-day){color:#9a3412;background:#fff7ed}.tsv2-cal-dot.partial-block{background:#f97316}.tsv2-blocked-day-banner{border:none;border-bottom:1px solid var(--border-color);color:#991b1b;background:#fef2f2;border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:10px 20px;font-size:13px;font-weight:600;display:flex}.tsv2-slots-top.has-blocked-banner .tsv2-slots-header{border-bottom:none;padding-bottom:10px}.tsv2-blocked-day-unblock{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #fca5a5;border-radius:6px;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:600}.tsv2-blocked-day-unblock:hover:not(:disabled){background:#fee2e2}.tsv2-blocked-day-unblock:disabled{opacity:.6;cursor:not-allowed}.tsv2-cal-dot{border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.tsv2-cal-dot.has-slots{background:var(--color-primary)}.tsv2-cal-day.selected .tsv2-cal-dot.has-slots{background:#fff}.tsv2-cal-dot.blocked{background:#dc2626}.tsv2-cal-legend{color:var(--text-secondary);flex-direction:column;gap:6px;margin-top:12px;font-size:11px;display:flex}.tsv2-cal-legend span{align-items:center;gap:6px;display:flex}.tsv2-cal-legend .dot{border-radius:50%;width:6px;height:6px;display:inline-block}.tsv2-cal-legend .dot.has-slots{background:var(--color-primary)}.tsv2-cal-legend .dot.blocked{background:#dc2626}.tsv2-cal-legend .outline.today{border:2px solid var(--color-primary);background:0 0;border-radius:50%;width:10px;height:10px}.tsv2-block-actions{border-top:1px solid var(--border-color);flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;display:flex}.tsv2-btn-unblock{color:#15803d;background:#fff;border:1px solid #86efac;align-items:center;gap:6px;display:inline-flex}.tsv2-btn-unblock:hover:not(:disabled){color:#166534;background:#f0fdf4;border-color:#4ade80}.tsv2-blocked-day-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:48px 24px 56px;display:flex}.tsv2-blocked-day-empty-icon{color:#f87171;background:#fef2f2;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:16px;display:flex}.tsv2-blocked-day-empty h3{color:#1e293b;margin:0 0 8px;font-size:18px;font-weight:700}.tsv2-blocked-day-empty p{color:var(--text-secondary);margin:0 0 20px;font-size:14px}.tsv2-blocked-day-patients{flex-direction:column;gap:20px;padding:20px 24px;display:flex}.tsv2-blocked-day-patients-header h3{color:#1e293b;margin:0 0 6px;font-size:18px;font-weight:700}.tsv2-blocked-day-patients-header p{color:var(--text-secondary);margin:0;font-size:14px}.tsv2-blocked-patient-list{flex-direction:column;gap:8px;display:flex}.tsv2-blocked-patient-row{border:1px solid var(--border-color);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.tsv2-blocked-patient-info{flex-direction:column;gap:2px;min-width:0;display:flex}.tsv2-blocked-patient-name{color:#1e293b;font-size:14px;font-weight:600}.tsv2-blocked-patient-meta{color:var(--text-secondary);font-size:13px}.tsv2-blocked-patient-status{flex-shrink:0}.tsv2-blocked-day-sms{border-top:1px solid var(--border-color);padding-top:16px}.tsv2-modal-icon--block{color:#dc2626;background:#fef2f2;border-radius:50%}.tsv2-block-modal .modal-header{border-bottom:1px solid var(--border-color)}.tsv2-slots-panel{width:100%;min-width:0;max-width:100%;padding:0;overflow:hidden}.tsv2-slots-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.tsv2-slots-date{margin:0;font-size:16px;font-weight:700}.tsv2-slots-toolbar{flex-wrap:wrap;gap:8px;display:flex}.tsv2-selection-bar{background:var(--color-primary);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.tsv2-selection-info{font-size:13px}.tsv2-selection-info strong{font-weight:700}.tsv2-selection-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tsv2-selection-actions .btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.tsv2-btn-reschedule{color:#fff;background:#f97316;border-color:#f97316}.tsv2-btn-reschedule:hover{color:#fff;background:#ea580c;border-color:#ea580c}.tsv2-btn-clear{color:var(--color-primary);background:#fff;border:1px solid #ffffffd9}.tsv2-btn-clear:hover{color:var(--color-primary);background:#f0f6ff;border-color:#fff}.tsv2-btn-edit{color:var(--color-primary);background:#fff;border:1px solid #fff;font-weight:600}.tsv2-btn-edit:hover{color:var(--color-primary);background:#eff6ff;border-color:#fff}.tsv2-btn-delete{color:#fff;background:#dc2626;border-color:#dc2626}.tsv2-btn-delete:hover{color:#fff;background:#b91c1c;border-color:#b91c1c}.tsv2-slot-grid-wrap{box-sizing:border-box;min-width:0;max-width:100%;padding:20px;overflow:hidden}.tsv2-slot-grid{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;max-width:100%;display:grid}@media (max-width:1100px){.tsv2-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.tsv2-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media (max-width:640px){.tsv2-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tsv2-slot-grid-wrap{padding:14px}.tsv2-slots-header{padding:14px 16px}.tsv2-selection-bar{flex-direction:column;align-items:stretch;padding:12px 16px}.tsv2-selection-actions{width:100%}.tsv2-selection-actions .btn{flex:calc(50% - 4px);justify-content:center;min-width:0}}.occmed-oneoff-wizard{width:100%;max-width:none}.occmed-oneoff-wizard .occmed-stepper{background:#fff;border:1px solid #dbe5f1;border-radius:13px;margin-bottom:20px;padding:17px 28px;box-shadow:0 2px 7px #0f172a12}.occmed-oneoff-wizard .occmed-step{background:#f1f5f9;border-radius:8px;justify-content:center;gap:7px;min-width:112px;padding:8px 13px}.occmed-oneoff-wizard .occmed-step.active{background:#1769e8}.occmed-oneoff-wizard .occmed-step.done{background:#effcf5}.occmed-oneoff-wizard .occmed-step.active .occmed-step-label,.occmed-oneoff-wizard .occmed-step.active .occmed-step-circle{color:#fff}.occmed-oneoff-wizard .occmed-step-circle{background:0 0;border:0;width:18px;height:18px;font-size:11px}.occmed-oneoff-wizard .occmed-step-line{min-width:24px}.occmed-oneoff-wizard .occmed-wizard-card{border:1px solid #d8e3ef;border-radius:13px;width:100%;box-shadow:0 2px 8px #0f172a14}.occmed-oneoff-wizard .occmed-wizard-card-header{border-bottom:1px solid #e7edf5;padding:21px 30px 17px}.occmed-oneoff-wizard .occmed-wizard-card-title{color:#15233b;font-size:18px}.occmed-oneoff-wizard .occmed-wizard-card-body{padding:24px 30px}.occmed-oneoff-wizard .occmed-wizard-card-footer{background:#fbfcfe;min-height:72px;padding:15px 30px}.occmed-oneoff-wizard .form-group{margin-bottom:18px}.occmed-oneoff-wizard .grid-2{gap:20px}.occmed-oneoff-info{margin-bottom:22px}.occmed-oneoff-section-label{color:#64748b;letter-spacing:.08em;border-top:1px solid #e5eaf1;margin:2px 0 18px;padding-top:18px;font-size:12px;font-weight:800}.occmed-oneoff-auto-status,.occmed-oneoff-source{color:#475569;background:#fbfcfe;border:1px solid #dbe3ed;border-radius:10px;padding:17px 19px;font-size:12px}.occmed-oneoff-auto-status>div{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.occmed-oneoff-wizard .occmed-id-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.occmed-oneoff-wizard .occmed-photo-upload-grid{margin-bottom:16px}.occmed-oneoff-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.occmed-oneoff-service-option{cursor:pointer;background:#fff;border:1px solid #d9e1ea;border-radius:11px;align-items:flex-start;gap:12px;min-height:77px;padding:14px;transition:border-color .15s,background .15s;display:flex}.occmed-oneoff-service-option:hover,.occmed-oneoff-service-option.selected{background:#f4f8ff;border-color:#5b9af5}.occmed-oneoff-service-option input{width:18px;height:18px;margin-top:1px}.occmed-oneoff-service-copy{flex-direction:column;gap:5px;display:flex}.occmed-oneoff-service-copy strong{color:#19263c;font-size:15px}.occmed-oneoff-service-copy small{color:#8290a5}.occmed-oneoff-wizard .occmed-service-total{margin-top:14px}.occmed-oneoff-billing-flags{background:#fbfcfe;border:1px solid #dbe3ed;border-radius:11px;gap:17px;margin-bottom:22px;padding:18px;display:grid}.occmed-oneoff-billing-flags label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.occmed-oneoff-billing-flags input{width:18px;height:18px}.occmed-oneoff-billing-flags span{flex-direction:column;display:flex}.occmed-oneoff-billing-flags strong{color:#23324a;font-size:14px}.occmed-oneoff-billing-flags small{color:#748197;font-size:12px}.occmed-oneoff-schedule-modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.occmed-oneoff-schedule-modes button{text-align:left;color:#30415b;cursor:pointer;background:#fff;border:1px solid #dbe3ed;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:26px 1fr;gap:2px 8px;min-height:98px;padding:17px;display:grid}.occmed-oneoff-schedule-modes button.active{color:#1d4ed8;background:#eff6ff;border:2px solid #1d4ed8}.occmed-oneoff-schedule-modes button.active.checkin{color:#15803d;background:#f0fdf4;border-color:#16a34a}.occmed-oneoff-schedule-modes button>span{grid-row:1/3;font-size:21px}.occmed-oneoff-schedule-modes strong{font-size:15px}.occmed-oneoff-schedule-modes small{color:#68778d;font-size:12px}.occmed-oneoff-duration{color:#66758a;margin:18px 0;font-size:13px}.occmed-oneoff-source{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.occmed-oneoff-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.occmed-oneoff-review-grid section{background:#fbfcfe;border:1px solid #dbe3ed;border-radius:11px;min-height:160px;padding:19px}.occmed-oneoff-review-grid h3{color:#5f7088;letter-spacing:.04em;margin:0 0 10px;font-size:12px}.occmed-oneoff-review-grid p{color:#68778d;margin:7px 0 0;font-size:13px}.occmed-oneoff-review-grid hr{border:0;border-top:1px solid #e3e9f0;margin:10px 0}.occmed-oneoff-review-badges{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.occmed-oneoff-review-status{color:#15803d;margin-top:10px;font-size:13px;display:block}.occmed-oneoff-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.occmed-oneoff-kpis>div{background:#fff;border:1px solid #dbe5f1;border-radius:12px;grid-template-columns:40px auto 1fr;align-items:center;gap:7px;min-height:90px;padding:17px;display:grid;box-shadow:0 2px 7px #0f172a12}.occmed-oneoff-kpis>div>span{color:#2876e9;background:#eff6ff;border-radius:8px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.occmed-oneoff-kpis strong{color:#17233a;font-size:25px}.occmed-oneoff-kpis small{color:#8a95a6;line-height:1.25}.occmed-oneoff-kpis strong.warning{color:#d97706}.occmed-oneoff-kpis strong.danger{color:#dc2626}.occmed-oneoff-kpis strong.primary{color:#2563eb}.occmed-oneoff-kpis strong.success{color:#16a34a}.occmed-oneoff-list-card{border-color:#dbe5f1;overflow:hidden}.occmed-oneoff-toolbar{justify-content:space-between;gap:18px;padding:18px;display:flex}.occmed-oneoff-toolbar>div:last-child{gap:10px;display:flex}.occmed-oneoff-search{background:#fff;border:1px solid #d9e1eb;border-radius:8px;align-items:center;width:min(380px,100%);height:40px;padding:0 12px;display:flex}.occmed-oneoff-search span{color:#8b97a8;font-size:21px}.occmed-oneoff-search input{color:#334155;border:0;outline:0;flex:1;min-width:0;padding:0 9px}.occmed-oneoff-filter-panel{background:#f8fafc;border:1px solid #dbe3ed;border-radius:9px;width:280px;margin:0 18px 14px auto;padding:12px}.occmed-oneoff-tabs{border-bottom:1px solid #e5ebf2;margin:0;padding:0 18px}.occmed-oneoff-table thead th{background:#f0f6ff}.occmed-oneoff-table tbody tr,.occmed-oneoff-table tbody tr:nth-child(2n){background:#fff}.occmed-oneoff-table td{vertical-align:middle}.occmed-oneoff-table td>small{color:#8491a3;margin-top:5px;font-size:11px;display:block}.occmed-oneoff-visit-id{color:#1d2a40;font-size:14px}.occmed-oneoff-employer-cell{align-items:center;gap:9px;display:flex}.occmed-oneoff-employer-cell>div{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.occmed-oneoff-service-badges{flex-wrap:wrap;gap:4px;display:flex}@media (max-width:1000px){.occmed-oneoff-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.occmed-oneoff-wizard .occmed-step-label{display:none}.occmed-oneoff-wizard .occmed-step{min-width:42px}}@media (max-width:700px){.occmed-oneoff-service-grid,.occmed-oneoff-review-grid,.occmed-oneoff-schedule-modes,.occmed-oneoff-wizard .occmed-id-fields{grid-template-columns:1fr}.occmed-oneoff-toolbar{flex-direction:column}.occmed-oneoff-toolbar>div:last-child{justify-content:space-between}.occmed-oneoff-kpis{grid-template-columns:1fr}}@media (max-width:420px){.tsv2-slot-grid{grid-template-columns:1fr}}.tsv2-slot-card{box-sizing:border-box;background:#eff6ff;border:1px solid #bedbff;border-radius:10px;flex-direction:column;min-width:0;max-width:100%;min-height:72px;padding:0;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.tsv2-slot-card.available,.tsv2-slot-card.partial{background:#eff6ff;border-color:#bedbff}.tsv2-slot-card.full{background:#fef2f2;border-color:#ffc9c9}.tsv2-slot-card.blocked{color:#64748b;background:#f1f5f9;border-color:#e2e8f0}.tsv2-slot-card.has-booking:not(.full):not(.blocked){border-color:#8ec5ff}.tsv2-slot-card:hover:not(.blocked):not(.selected):not(.selectable){border-color:#2b7fff;box-shadow:0 2px 8px #2b7fff1f}.tsv2-slot-card.full.has-booking:hover:not(.selected):not(.selectable){border-color:#2b7fff}.tsv2-slot-body{background:0 0;flex:1;min-width:0;padding:12px}.tsv2-slot-card.full .tsv2-slot-body,.tsv2-slot-card.blocked .tsv2-slot-body{background:0 0}.tsv2-slot-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;display:flex}.tsv2-slot-actions-inline{flex-shrink:0;align-items:center;gap:2px;display:none}.tsv2-slot-card:hover .tsv2-slot-actions-inline{display:flex}.tsv2-slot-icon-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex}.tsv2-slot-icon-btn:hover{color:#64748b;background:#ffffffb3}.tsv2-slot-reschedule-btn:hover{color:#155dfc;color:lab(44.0605% 29.0279 -86.0352);background:#eff6ff}.tsv2-slot-patients-footer{background:#fff;border-top:1px solid #e2e8f0;flex-direction:column;gap:6px;padding:8px 12px;display:none}.tsv2-slot-card:hover:not(.selectable) .tsv2-slot-patients-footer,.tsv2-slot-card:focus-within:not(.selectable) .tsv2-slot-patients-footer{display:flex}.tsv2-slot-patient-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.tsv2-slot-card.selectable{cursor:pointer;flex-direction:row;align-items:flex-start;gap:10px;padding:12px}.tsv2-slot-card.selectable .tsv2-slot-check{flex-shrink:0;margin-top:1px;position:static}.tsv2-slot-card.selectable .tsv2-slot-body{flex:1;min-width:0;padding:0}.tsv2-slot-card.selectable .tsv2-slot-header{margin-bottom:4px}.tsv2-slot-card.selected{border:2px solid var(--color-primary);box-shadow:0 0 0 2px #0049b926}.tsv2-slot-check{background:#fff;border:2px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:8px;left:8px}.tsv2-slot-check.checked{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.tsv2-slot-time{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;font-weight:700;line-height:1.35;overflow:hidden}.tsv2-slot-status{color:#90a1b9;color:lab(65.5349% -2.25151 -14.5072);white-space:nowrap;font-size:11px}.tsv2-slot-card.partial .tsv2-slot-status,.tsv2-slot-card.has-booking .tsv2-slot-status{color:#155dfc;color:lab(44.0605% 29.0279 -86.0352);font-weight:600}.tsv2-slot-card.full .tsv2-slot-status{color:#fb2c36;color:lab(55.4814% 75.0732 48.8528);font-weight:600}.tsv2-slot-patient,.tsv2-slot-patient-btn{color:#334155;flex:1;align-items:center;gap:6px;min-width:0;font-size:12px;display:flex}.tsv2-slot-patient-btn{cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-family:inherit}.tsv2-slot-patient-btn:hover{color:#155dfc;color:lab(44.0605% 29.0279 -86.0352)}.tsv2-slot-patient svg,.tsv2-slot-patient-btn svg{color:#94a3b8;flex-shrink:0}.tsv2-slot-patient span,.tsv2-slot-patient-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tsv2-sidebar{flex-direction:column;gap:16px;min-width:0;max-width:100%;display:flex}.tsv2-rules-card,.tsv2-legend-card{padding:20px}.tsv2-rules-title,.tsv2-legend-title{color:#0049b9;align-items:center;gap:8px;margin:0 0 16px;font-size:14px;font-weight:700;display:flex}.tsv2-rules-fields{flex-direction:column;gap:12px;display:flex}.tsv2-legend-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tsv2-legend-list li{color:#334155;align-items:center;gap:8px;font-size:12px;display:flex}.tsv2-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.tsv2-legend-dot.available{background:#0049b9}.tsv2-legend-dot.partial{background:#8ec5ff}.tsv2-legend-dot.full{background:#ef4444}.tsv2-legend-dot.blocked-slot{background:#94a3b8}.tsv2-legend-dot.blocked-date{background:#fecaca}.tsv2-legend-hint{color:var(--text-secondary);margin:12px 0 0;font-size:11px;line-height:1.5}.tsv2-legend-hint+.tsv2-legend-hint{margin-top:4px}.tsv2-time-field{min-width:0;margin:0}.tsv2-time-input{width:100%;min-width:0;position:relative}.tsv2-time-input .form-input{box-sizing:border-box;width:100%;min-width:0;padding-right:36px}.tsv2-time-input input[type=time]{cursor:pointer;position:relative}.tsv2-time-input input[type=time]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.tsv2-time-input input[type=time]::-webkit-inner-spin-button{appearance:none;display:none}.tsv2-time-input input[type=time]::-webkit-clear-button{appearance:none;display:none}.tsv2-time-icon{color:var(--text-secondary);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.tsv2-add-slot-card{box-sizing:border-box;min-width:0;max-width:100%;padding:20px;overflow:hidden}.tsv2-add-slot-times{grid-template-columns:1fr;gap:12px;min-width:0;display:grid}@media (min-width:1201px){.tsv2-add-slot-times{grid-template-columns:1fr}}@media (max-width:1200px) and (min-width:481px){.tsv2-add-slot-times{grid-template-columns:repeat(2,minmax(0,1fr))}}.tsv2-time-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}@media (max-width:480px){.tsv2-time-fields,.tsv2-add-slot-times{grid-template-columns:1fr}}.tsv2-toggle-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.tsv2-modal .tsv2-modal-title-wrap{align-items:flex-start;gap:12px;display:flex}.tsv2-modal-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tsv2-modal-icon--reschedule{border-radius:50%}.tsv2-modal-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.tsv2-warning-box{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.5}.tsv2-block-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:12px;padding:14px;transition:border-color .15s,background .15s;display:flex}.tsv2-block-panel.active{background:#fef2f2;border-color:#fecaca}.tsv2-block-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tsv2-block-panel-title{color:#334155;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.tsv2-block-panel.active .tsv2-block-panel-title{color:#dc2626}.tsv2-block-panel-subtitle{color:var(--text-secondary);margin-top:4px;font-size:11px}.tsv2-block-toggle input:checked+.toggle-slider{background:#dc2626}.tsv2-block-panel .tsv2-sms-section{background:#fff}.tsv2-sms-section{border:1px solid var(--border-color);background:#f8fafc;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.tsv2-sms-header{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.tsv2-segmented{background:#e2e8f0;border-radius:8px;gap:0;padding:3px;display:flex}.tsv2-segmented button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;flex:1;padding:7px 12px;font-size:12px;font-weight:600}.tsv2-segmented button.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 2px #0000000f}.tsv2-sms-preview{color:var(--text-secondary);border:1px solid var(--border-color);background:#fff;border-radius:8px;padding:10px;font-size:12px;line-height:1.5}.tsv2-send-sms-btn{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.tsv2-booked-slot{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;align-items:center;gap:8px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.tsv2-repeat-pills{flex-wrap:wrap;gap:8px;display:flex}.tsv2-repeat-pills button{border:1px solid var(--border-color);cursor:pointer;color:var(--text-secondary);background:#fff;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600}.tsv2-repeat-pills button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.tsv2-mini-calendar{border:1px solid var(--border-color);background:#fafbfc;border-radius:10px;padding:12px}.cursor-pointer{cursor:pointer}.form-preview-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.form-preview-toolbar-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form-preview-mode-badge{letter-spacing:.05em;color:var(--color-primary);background:var(--color-primary-light);border-radius:6px;padding:6px 10px;font-size:11px;font-weight:700}.form-preview-device-toggle{background:var(--content-bg);border:1px solid var(--border-color);border-radius:8px;gap:2px;padding:4px;display:flex}.form-preview-device-btn{cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:flex}.form-preview-device-btn.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 2px #0000000f}.form-preview-toolbar-right{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.form-preview-status{color:var(--text-secondary);font-size:12px;line-height:1.5}.form-preview-workspace{grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:start;gap:20px;width:100%;min-width:0;display:grid}@media (max-width:1100px){.form-preview-workspace{grid-template-columns:minmax(0,1fr)}}.form-preview-canvas{background:#e8eef6;border:1px solid #dbeafe;border-radius:12px;justify-content:center;align-items:flex-start;min-width:0;max-width:100%;min-height:620px;padding:28px 32px;display:flex;overflow-x:auto}.form-preview-browser{background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;flex-shrink:1;transition:width .25s,max-width .25s;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000001a}.form-preview-browser.desktop{width:100%;max-width:920px}.form-preview-browser.tablet{width:100%;max-width:640px}.form-preview-browser.mobile{width:100%;max-width:375px}.form-preview-browser-chrome{background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-shrink:0;align-items:center;gap:12px;padding:10px 14px;display:flex}.form-preview-browser-dots{gap:6px;display:flex}.form-preview-browser-dot{border-radius:50%;width:10px;height:10px}.form-preview-browser-url{color:var(--text-secondary);text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex:1;padding:6px 12px;font-size:12px}.form-preview-clinic-bar{background:var(--color-primary);color:#fff;flex-shrink:0;padding:14px 20px;font-size:15px;font-weight:700}.form-preview-page{background:var(--content-bg);flex:1;max-height:560px;padding:24px 32px 32px;overflow-y:auto}.form-preview-iframe-wrap{background:var(--content-bg);flex:1;min-height:0;overflow:hidden}.form-preview-iframe{background:var(--content-bg);border:none;width:100%;height:100%;min-height:620px;display:block}.form-preview-iframe-loading{min-height:420px;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex}.form-preview-browser.mobile .form-preview-page{padding:16px}.form-preview-browser.mobile .form-preview-iframe{min-height:520px}.form-preview-form-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;padding:28px 32px;box-shadow:0 4px 20px #0049b914}.form-preview-browser.mobile .form-preview-form-card{padding:20px 16px}.form-preview-section-title{color:var(--text-primary);margin:0 0 16px;font-size:15px;font-weight:700}.form-preview-section+.form-preview-section,.form-preview-section+.form-preview-minor-section,.form-preview-minor-section+.form-preview-section{margin-top:32px}.form-preview-section-insurance .form-preview-section-title{margin-bottom:14px}.form-preview-field-stack{flex-direction:column;gap:16px;display:flex}.form-preview-insurance-options{flex-direction:column;gap:8px;display:flex}.form-preview-minor-section{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;flex-direction:column;gap:16px;margin-top:32px;padding:20px;display:flex}.form-preview-insurance-option{cursor:pointer;color:var(--text-primary);align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}.form-preview-settings-card{min-width:0;padding:20px}.form-preview-settings-actions{flex-direction:column;gap:10px;display:flex}.shareable-link-box{background:var(--content-bg);border:1px solid #dbeafe;border-radius:8px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.booking-setting-row{align-items:center;gap:12px;display:flex}.booking-setting-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.booking-setting-copy{flex:1;min-width:0}.booking-setting-label{color:var(--text-primary);font-size:13px;font-weight:600}.booking-setting-desc{color:var(--text-secondary);margin-top:2px;font-size:11px;line-height:1.4}.booking-portal-card{background:linear-gradient(135deg,#eff6ff 0%,#fff 55%);border:1px solid #bfdbfe;padding:24px;box-shadow:0 8px 24px #2563eb14}.dashboard-portal-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.kiosk-portal-card{background:linear-gradient(135deg,#fffbeb 0%,#fff 55%);border-color:#fcd34d;box-shadow:0 8px 24px #f59e0b14}.kiosk-portal-icon{background:#f59e0b;box-shadow:0 6px 16px #f59e0b40}.provider-portal-card{background:linear-gradient(135deg,#f5f3ff 0%,#fff 55%);border-color:#c4b5fd;box-shadow:0 8px 24px #7c3aed14}.provider-portal-icon{background:#7c3aed;box-shadow:0 6px 16px #7c3aed40}.dashboard-location-links-card{grid-column:1/-1}.dashboard-location-list{flex-direction:column;gap:16px;display:flex}.dashboard-location-item{background:#ffffffbf;border:1px solid #fde68a;border-radius:10px;padding:16px}.dashboard-location-name{color:var(--text-primary);margin:0 0 12px;font-size:15px;font-weight:700}.dashboard-location-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-shareable-link-label{color:var(--text-primary);font-size:13px;font-weight:600}@media (max-width:768px){.dashboard-portal-links,.dashboard-location-link-grid{grid-template-columns:1fr}}.booking-portal-header{align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.booking-portal-icon{background:var(--color-primary);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 6px 16px #2563eb40}.booking-portal-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:800;line-height:1.2}.booking-portal-subtitle{color:var(--text-secondary);max-width:720px;margin:0;font-size:14px;line-height:1.5}.booking-success-actions{flex-direction:column;gap:10px;margin-top:24px;display:flex}.booking-success-actions .btn{justify-content:center;width:100%}.shareable-link-url{color:var(--color-primary);word-break:break-all;align-items:center;gap:6px;font-size:12px;text-decoration:none;display:inline-flex}.shareable-link-url:hover{text-decoration:underline}.portal-booking{background:#eef3fb;flex-direction:column;min-height:100vh;display:flex}.portal-header-inner--centered{justify-content:center;position:relative}.portal-header-inner--centered .portal-brand{text-align:center;justify-content:center}.portal-header-inner--centered .portal-secure{position:static;top:auto;right:auto;transform:none}.portal-header-actions{flex-shrink:0;align-items:center;gap:12px;margin-left:auto;display:flex;position:static}.portal-header-inner--centered .portal-header-actions{z-index:5;margin-left:0;position:absolute;top:50%;right:24px;transform:translateY(-50%)}.portal-booking--fullscreen,.waiting-room-display--fullscreen,.walkin-shell--fullscreen{background:inherit;width:100%;min-height:100vh}.fullscreen-toggle-btn{color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;line-height:0;transition:background .15s;display:inline-flex}.fullscreen-toggle-btn svg{width:20px;height:20px;display:block}.fullscreen-toggle-btn:hover{background:#ffffff3d}.fullscreen-toggle-btn--header{color:#fff;background:#ffffff24}.fullscreen-toggle-btn--controls{color:#e8ecf4;background:#ffffff14;border-radius:999px;width:36px;min-width:36px;height:36px;margin-left:4px}.fullscreen-toggle-btn--controls:hover{color:#fff;background:#ffffff29}.fullscreen-toggle-btn--fab{background:var(--color-primary);color:#fff;border-radius:10px;width:44px;height:44px;box-shadow:0 4px 14px #0000002e}.fullscreen-toggle-btn--fab svg{width:22px;height:22px}.fullscreen-toggle-btn--fab:hover{background:var(--color-primary-hover)}.walkin-shell{min-height:100vh;position:relative}.walkin-fullscreen-fab{z-index:50;position:fixed;top:16px;right:16px}.portal-header-actions .fullscreen-toggle-btn,.waiting-room-header-right .fullscreen-toggle-btn{flex-shrink:0}@media (max-width:768px){.portal-header-inner--centered .portal-header-actions{gap:8px;right:12px}.portal-header-inner--centered .portal-secure,.portal-header-actions .portal-secure{display:none}.portal-header-actions{gap:8px}}.portal-main--kiosk{max-width:560px;padding:24px 20px 40px}.visit-reason-icon-picker-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;max-height:220px;padding:4px;display:grid;overflow-y:auto}.visit-reason-icon-option{border:2px solid var(--border-color,#e2e8f0);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;transition:border-color .15s,background .15s;display:flex}.visit-reason-icon-option:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.visit-reason-icon-option.selected{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 1px var(--color-primary)}.visit-reason-icon-option-emoji{font-size:24px;line-height:1}.visit-reason-icon-option-label{color:var(--text-secondary);text-align:center;font-size:10px;line-height:1.2}.portal-header{background:var(--color-primary);color:#fff;padding-bottom:20px}.portal-header-inner{box-sizing:border-box;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;position:relative}.portal-brand{flex-shrink:1;align-items:center;gap:10px;min-width:0;display:flex}.portal-brand-icon{font-size:22px}.portal-brand-name{font-size:16px;font-weight:700}.portal-brand-sub{letter-spacing:.08em;opacity:.85;font-size:10px}.portal-secure{opacity:.9;align-items:center;gap:6px;font-size:12px;display:flex}.portal-stepper{align-items:flex-start;width:100%;max-width:960px;margin:0 auto;padding:0 20px;display:flex}.portal-step-wrap{flex:1;align-items:flex-start;min-width:0;display:flex}.portal-step-wrap:first-child{flex:none}.portal-step-line{background:#ffffff59;flex:1;min-width:8px;height:2px;margin-top:13px}.portal-step-line.filled{background:#fffffff2}.portal-step{opacity:.55;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.portal-step.active,.portal-step.done{opacity:1}.portal-step-circle{border:2px solid #fff9;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.portal-step.active .portal-step-circle{color:var(--color-primary);background:#fff;border-color:#fff}.portal-step.done .portal-step-circle{background:#fff3;border-color:#fff}.portal-step-label{font-size:11px;font-weight:600}.portal-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:32px 24px 48px}@media (max-width:768px){.portal-header-inner{padding:12px 16px}.portal-secure{font-size:11px}.portal-stepper{padding:0 12px}.portal-step-circle{width:24px;height:24px;font-size:11px}.portal-step-line{min-width:4px;margin-top:11px}.portal-step-label{text-align:center;max-width:64px;font-size:12px;line-height:1.3}.portal-main{padding:24px 16px 40px}.portal-page-title{font-size:22px}.portal-time-toggle{grid-template-columns:1fr}.portal-slot-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:769px) and (max-width:1024px){.portal-slot-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1025px){.portal-slot-grid{grid-template-columns:repeat(5,1fr)}}.portal-footer{text-align:center;color:var(--text-secondary);background:#fff;border-top:1px solid #e2e8f0;margin-top:auto;padding:16px 20px;font-size:11px}.portal-page-title{color:var(--text-primary);margin:0 0 4px;font-size:22px;font-weight:700}.portal-page-sub{color:var(--text-secondary);margin-bottom:20px;font-size:13px}.portal-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #0049b90f}.portal-location-card{border:1px solid var(--border-color);transition:border-color var(--transition-fast);background:#fff;border-radius:12px;margin-bottom:16px;padding:20px}.portal-location-card.selected{border:2px solid var(--color-primary);background:#f8fbff}.portal-location-badge{color:var(--color-primary);background:var(--color-primary-light);border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.portal-wait-open{color:#16a34a}.portal-wait-busy{color:#ca8a04}.portal-wait-full{color:#dc2626}.portal-reason-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.portal-wait-banner{background:var(--color-primary-light);border-radius:10px;align-items:center;gap:10px;margin:20px 0;padding:14px 16px;display:flex}.portal-phone-card{text-align:center;padding:24px}.portal-phone-display{letter-spacing:3px;background:var(--content-bg);border-radius:10px;justify-content:center;align-items:center;min-height:64px;margin-bottom:20px;padding:16px;font-family:ui-monospace,monospace;font-size:32px;font-weight:700;display:flex}.portal-phone-placeholder{color:var(--text-tertiary);letter-spacing:normal;font-family:inherit;font-size:20px;font-weight:500}.portal-phone-keypad{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.portal-phone-key{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:12px;padding:18px;font-size:22px;font-weight:700}.portal-phone-key.clear{background:var(--color-danger-bg);color:var(--color-danger);font-size:18px}.portal-phone-key.backspace{background:#f3f4f6;font-size:18px}.portal-confirm-card{text-align:center;padding:28px 24px}.portal-success-icon{background:var(--color-success-bg);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 20px;display:flex}.portal-ticket-box{border:2px solid var(--color-primary);background:#f0f4ff;border-radius:16px;margin:24px 0;padding:24px}.portal-ticket-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.portal-ticket-value{color:var(--color-primary);letter-spacing:4px;font-family:ui-monospace,monospace;font-size:44px;font-weight:800}.portal-queue-summary{background:var(--content-bg);text-align:left;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;display:flex}.portal-info-box{background:var(--content-bg);text-align:left;border-radius:12px;margin-bottom:24px;padding:16px}.portal-info-box-title{margin-bottom:10px;font-weight:700}.portal-info-steps{margin:0;padding:0;list-style:none}.portal-info-steps li{align-items:flex-start;gap:10px;margin-bottom:8px;font-size:14px;display:flex}.portal-info-steps li span{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.portal-otp-input{letter-spacing:8px;text-align:center;border:1px solid var(--border-color);border-radius:10px;width:100%;padding:16px;font-family:ui-monospace,monospace;font-size:32px;font-weight:700}@media (max-width:900px){.portal-reason-grid{grid-template-columns:repeat(2,1fr)}}.portal-reason-card{border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%;min-height:120px;font:inherit;color:inherit;background:#fff;border-radius:10px;padding:16px;position:relative}.portal-reason-card.selected{border:2px solid var(--color-primary);background:var(--color-primary-light)}.portal-reason-icon{margin-bottom:8px;font-size:22px}.portal-reason-duration{color:var(--color-primary);background:var(--color-primary-light);border-radius:4px;margin-top:8px;padding:2px 8px;font-size:11px;display:inline-block}.portal-reason-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.portal-multi-select-toggle{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.portal-multi-select-toggle input{opacity:0;width:0;height:0;position:absolute}.portal-multi-select-slider{background:#cbd5e1;border-radius:999px;width:42px;height:24px;transition:background .2s;position:relative}.portal-multi-select-slider:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px}.portal-multi-select-toggle input:checked+.portal-multi-select-slider{background:var(--color-primary)}.portal-multi-select-toggle input:checked+.portal-multi-select-slider:after{transform:translate(18px)}.portal-duration-bar{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.portal-duration-bar strong{color:var(--color-primary);font-size:18px}.portal-duration-bar-inline{flex-wrap:wrap}.portal-duration-bar-reasons{width:100%;color:var(--text-secondary);font-size:12px}.portal-reason-check{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:absolute;top:10px;right:10px}.portal-selected-reasons-summary{color:var(--text-secondary);margin:12px 0 16px;font-size:13px}.portal-booking-forms-preview{border:1px solid var(--border-color);background:#f8fafc;border-radius:12px;margin-bottom:20px;padding:16px}.portal-booking-forms-preview h3{margin:0 0 10px;font-size:14px}.portal-booking-forms-preview ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.portal-booking-forms-preview li{flex-direction:column;gap:2px;font-size:14px;display:flex}.portal-booking-forms-preview small{color:var(--text-secondary);font-size:12px}.portal-booking-banner-link{color:var(--color-primary);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.portal-time-toggle{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;display:grid}.portal-time-toggle-btn{border:1px solid var(--border-color);cursor:pointer;background:#f8fafc;border-radius:10px;padding:16px;font-size:14px;font-weight:600}.portal-time-toggle-btn.active{background:#fff;border:2px solid #111}.portal-day-row{gap:8px;margin-bottom:20px;display:flex;overflow-x:auto}.portal-day-pill{border:2px solid var(--border-color);text-align:center;cursor:pointer;min-width:64px;font:inherit;color:inherit;background:#fff;border-radius:10px;padding:10px 8px;transition:all .15s}.portal-day-pill.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 4px 12px #0049b938}.portal-day-pill.active .portal-day-label,.portal-day-pill.active .portal-day-num{color:#fff}.portal-day-pill.blocked-full.active{background:#dc2626;border-color:#dc2626}.portal-day-pill.blocked-partial.active{background:#d97706;border-color:#d97706}.portal-day-pill.blocked-full:not(.active){color:#991b1b;background:#fef2f2;border-color:#fecaca}.portal-day-pill.blocked-partial:not(.active){color:#92400e;background:#fffbeb;border-color:#fde68a}.portal-day-label{font-size:11px;font-weight:700}.portal-day-num{font-size:18px;font-weight:700}.portal-slot-capacity-panel{flex-direction:column;gap:16px;margin:24px 0;display:flex}.portal-slot-capacity-warning{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.portal-slot-capacity-warning strong{margin-bottom:4px;display:block}.portal-slot-capacity-warning p{margin:0;font-size:14px}.portal-slot-capacity-warning-icon{font-size:20px;line-height:1}.portal-slot-capacity-details{padding:16px}.portal-slot-capacity-details h3,.portal-slot-suggestions h3{margin:0 0 12px;font-size:15px}.portal-slot-capacity-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;font-size:13px;display:grid}.portal-slot-capacity-meta span{color:var(--text-secondary);margin-bottom:4px;display:block}.portal-slot-capacity-compare-row{justify-content:space-between;gap:12px;margin-bottom:8px;font-size:14px;display:flex}.portal-slot-capacity-meter{background:#fee2e2;border-radius:999px;height:10px;margin:8px 0;overflow:hidden}.portal-slot-capacity-meter span{background:#94a3b8;height:100%;display:block}.portal-slot-capacity-meter-labels{color:var(--text-secondary);justify-content:space-between;gap:12px;font-size:12px;display:flex}.portal-slot-capacity-meter-labels .danger{color:#dc2626;font-weight:600}.portal-slot-suggestions-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.portal-slot-suggestions-header span{color:var(--text-secondary);font-size:12px}.portal-slot-suggestions-list{flex-direction:column;gap:10px;display:flex}.portal-slot-suggestion-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 16px;display:grid;position:relative}.portal-slot-suggestion-card.selected{border:2px solid var(--color-primary);box-shadow:0 0 0 1px #0049b914}.portal-slot-suggestion-badge{color:var(--color-primary);background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;position:absolute;top:-10px;left:16px}.portal-slot-suggestion-label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.portal-slot-suggestion-label strong{margin-bottom:2px;display:block}.portal-slot-suggestion-label span{color:var(--text-secondary);font-size:12px}.portal-slot-suggestions-loading,.portal-slot-suggestions-empty{color:var(--text-secondary);background:#f8fafc;border-radius:10px;padding:16px;font-size:14px}.portal-slot-capacity-primary{width:100%}.portal-slot-capacity-keep{border:1.5px solid var(--color-primary);width:100%;max-width:420px;color:var(--color-primary);cursor:pointer;text-align:center;text-underline-offset:3px;background:#fff;border-radius:10px;justify-content:center;align-self:center;align-items:center;padding:12px 18px;font-size:14px;font-weight:600;text-decoration:underline;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.portal-slot-capacity-keep:hover{background:color-mix(in srgb, var(--color-primary) 8%, #fff);box-shadow:0 1px 3px #0f172a14}.portal-slot-capacity-keep:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.portal-slot-capacity-keep:active{background:color-mix(in srgb, var(--color-primary) 14%, #fff)}.portal-slot-capacity-note{color:var(--text-secondary);text-align:center;margin:0;font-size:12px}@media (max-width:640px){.portal-reason-header{flex-direction:column;align-items:stretch}.portal-slot-capacity-meta,.portal-slot-suggestion-card{grid-template-columns:1fr}.portal-duration-bar-inline .portal-duration-bar-reasons{margin-top:4px}}.portal-slot-empty{text-align:center;color:var(--text-secondary);grid-column:1/-1;padding:24px}.portal-slot-grid{grid-template-columns:repeat(4,1fr);gap:10px;width:100%;display:grid}.portal-slot-btn{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:8px;flex-direction:column;align-items:center;gap:4px;min-height:56px;padding:12px;font-weight:600;display:flex}.portal-slot-btn-time{font-weight:600}.portal-slot-btn-meta{color:var(--text-secondary);font-size:11px;font-weight:500}.portal-slot-btn.selected .portal-slot-btn-meta{color:#ffffffd9}.portal-slot-full-badge{letter-spacing:.04em;color:#dc2626;background:#fef2f2;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.portal-slot-btn.full:disabled{opacity:.65}.portal-slot-btn.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.portal-slot-btn:disabled{opacity:.35;cursor:not-allowed;color:var(--text-secondary);background:#f1f5f9}.portal-slot-btn.past:disabled{text-decoration:line-through}.portal-continue-wrap{justify-content:flex-end;margin-top:24px;display:flex}.portal-step-nav{justify-content:space-between;align-items:center;gap:16px;margin-top:24px;display:flex}.portal-step-nav-back{min-width:120px}.portal-booking-banner-select{color:var(--color-primary);background:#fff;border:1px solid #bfdbfe;border-radius:6px;min-width:180px;max-width:260px;padding:6px 10px;font-size:12px;font-weight:600}.portal-continue-btn{min-width:140px;padding:12px 24px}.portal-review-summary{background:#f8fafc;border-radius:10px;margin-bottom:20px;padding:20px}.portal-review-row{border-bottom:1px solid var(--border-color);gap:12px;padding:12px 0;display:flex}.portal-review-row:last-child{border-bottom:none}.portal-disclaimer-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-bottom:20px;padding:16px;font-size:13px;line-height:1.5}.portal-billing-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.portal-billing-option{border:1px solid var(--border-color);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:16px;display:flex}.portal-billing-option.selected{border:2px solid var(--color-primary);background:#f8fbff}.portal-details-card{padding:24px 28px}.portal-details-form{margin-bottom:8px}.portal-details-form.family-booking-form{margin-bottom:0}.portal-self-section{margin:0}.portal-billing-card,.portal-photo-id-section{margin-top:28px}.portal-booking-banner{color:var(--text-primary);background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:10px 14px;font-size:12px;display:flex}.portal-booking-banner-reason{color:var(--color-primary);background:#fff;border:1px solid #bfdbfe;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.portal-patient-type-toggle{background:#ffffff8c;border:1px solid #d4dde8;border-radius:8px;gap:0;width:fit-content;max-width:100%;margin-bottom:20px;padding:3px;display:flex}.portal-patient-type-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;padding:7px 16px;font-size:12px;font-weight:600}.portal-patient-type-btn.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 3px #0049b91f}.family-who-section{margin-bottom:20px}.family-who-title{color:var(--text-primary);margin:0 0 12px;font-size:16px;font-weight:700}.family-who-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:640px){.family-who-grid{grid-template-columns:1fr}}.family-who-card{text-align:left;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.family-who-card:hover{border-color:#93c5fd}.family-who-card.selected{border-color:var(--color-primary,#2563eb);box-shadow:0 0 0 1px var(--color-primary,#2563eb);background:#eff6ff}.family-who-card--family.selected{background:#fff1f2;border-color:#e11d48;box-shadow:0 0 0 1px #e11d48}.family-who-icon{margin-bottom:4px;font-size:22px;line-height:1}.family-who-card strong{color:var(--text-primary);font-size:14px}.family-who-card small{color:var(--text-secondary);font-size:12px;line-height:1.35}.family-booking-form{flex-direction:column;gap:20px;display:flex}.family-alert{border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.45}.family-alert--info{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3}.family-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.family-section-title{color:var(--text-primary);margin:0 0 4px;font-size:16px;font-weight:700}.family-section-sub{color:var(--text-secondary);margin:0 0 16px;font-size:13px;line-height:1.4}.family-grid-2{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}@media (max-width:640px){.family-grid-2{grid-template-columns:1fr}}.family-yesno-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:12px 14px;display:flex}.family-yesno-label{color:var(--text-primary);font-size:14px;font-weight:600}.family-yesno-desc{color:var(--text-secondary);margin-top:2px;font-size:12px}.family-yesno-btns{flex-shrink:0;gap:0;display:inline-flex}.family-yesno-btn{min-width:56px;color:var(--text-secondary);cursor:pointer;background:#fff;border:1px solid #cbd5e1;padding:6px 14px;font-size:13px;font-weight:600}.family-yesno-btn:first-child{border-radius:8px 0 0 8px}.family-yesno-btn:last-child{border-left:none;border-radius:0 8px 8px 0}.family-yesno-btn.active{background:var(--color-primary,#2563eb);border-color:var(--color-primary,#2563eb);color:#fff}.family-awareness{cursor:pointer;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px;display:flex}.family-awareness.confirmed{background:#f0fdf4;border-color:#86efac}.family-awareness input{width:16px;height:16px;accent-color:var(--color-primary,#2563eb);flex-shrink:0;margin-top:3px}.family-awareness span{flex-direction:column;gap:4px;display:flex}.family-awareness strong{font-size:14px}.family-awareness small{color:var(--text-secondary);font-size:12px;line-height:1.4}.family-question{color:var(--text-primary);margin:0 0 10px;font-size:14px;font-weight:600}.family-radio-stack{flex-direction:column;gap:8px;display:flex}.family-radio-card{text-align:left;cursor:pointer;color:var(--text-primary);background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;font-size:14px;transition:border-color .15s,background .15s;display:flex}.family-radio-card:hover{border-color:#93c5fd}.family-radio-card.selected{border-color:var(--color-primary,#2563eb);background:#eff6ff}.family-radio-card--rich span:last-child{flex-direction:column;gap:2px;display:flex}.family-radio-card--rich strong{font-size:14px}.family-radio-card--rich small{color:var(--text-secondary);font-size:12px;line-height:1.35}.family-radio-dot{border:2px solid #94a3b8;border-radius:50%;flex-shrink:0;width:16px;height:16px;margin-top:2px;position:relative}.family-radio-card.selected .family-radio-dot{border-color:var(--color-primary,#2563eb)}.family-radio-card.selected .family-radio-dot:after{content:"";background:var(--color-primary,#2563eb);border-radius:50%;position:absolute;inset:2px}.family-doc-panel{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-top:14px;padding:16px}.family-doc-panel .family-grid-2{margin-bottom:16px}.family-doc-panel .portal-upload-field{margin-top:4px}.family-doc-panel-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.family-optional-tag{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.family-pay-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.family-pay-card{text-align:left;cursor:pointer;color:var(--text-primary);background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;align-items:center;gap:10px;padding:14px;font-size:14px;font-weight:600;display:flex}.family-pay-card:hover{border-color:#93c5fd}.family-pay-card.selected{border-color:var(--color-primary,#2563eb);background:#eff6ff}.family-pay-card--wide{grid-column:1/-1}.family-booker-billing,.family-insurance-wrap{background:#f8fbff;border:1px solid #bfdbfe;border-radius:12px;margin-top:14px;padding:16px}.family-booker-billing-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.family-lock-hint{color:var(--text-secondary);font-size:12px}.family-summary-pills{flex-wrap:wrap;gap:8px;display:flex}.family-pill{color:#1d4ed8;background:#dbeafe;border:1px solid #93c5fd;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.family-pill--purple{color:#7e22ce;background:#f3e8ff;border-color:#d8b4fe}.family-pill--slate{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.portal-form-section{margin-bottom:24px}.portal-form-section:last-child{margin-bottom:0}.portal-age-notice{color:#b45309;align-items:center;gap:6px;margin:-4px 0 16px;font-size:12px;line-height:1.4;display:flex}.portal-age-notice svg{color:#d97706;flex-shrink:0}.portal-label-muted{color:var(--text-secondary);font-size:12px;font-weight:400}.portal-label-info{color:#d97706;cursor:help;font-size:12px}.portal-minor-box{background:#fffbeb;border:1px solid #f5d167;border-radius:10px;margin-top:24px;overflow:hidden}.portal-minor-header-strip{background:#fef3c7;border-bottom:1px solid #f5d167;padding:14px 20px}.portal-minor-body{padding:20px}.portal-minor-subsection-title{color:var(--text-primary);margin:0 0 14px;font-size:13px;font-weight:700}.portal-minor-header{color:#92400e;align-items:flex-start;gap:10px;margin-bottom:0;display:flex}.portal-consent-box{background:#fff;border:1px solid #f5d167;border-radius:8px;margin-top:18px;padding:14px 16px}.portal-consent-title{color:var(--text-primary);margin:0 0 10px;font-size:12px;font-weight:700}.portal-consent-legal{color:var(--text-secondary);margin:0 0 12px;font-size:11px;line-height:1.55}.portal-card-images-section{border-top:1px solid var(--border-color);margin-top:24px;padding-top:20px}.portal-card-images-title{color:var(--text-primary);margin-bottom:6px;font-size:14px;font-weight:700}.portal-insurance-block--secondary{border-color:#93c5fd}.portal-insurance-block-title-row{align-items:center;gap:8px;display:flex}.portal-insurance-collapse{cursor:pointer;color:var(--color-primary);background:0 0;border:none;align-items:center;padding:0;display:flex}.portal-insurance-remove{color:var(--color-danger);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.portal-medicare-block{background:#fff}.portal-medicare-hint{color:var(--text-secondary);margin:0 0 20px;font-size:13px;line-height:1.55}.portal-membership-wrap{flex-direction:column;gap:16px;display:flex}.portal-membership-info-banner{background:#faf5ff;border:1px solid #e9d5ff;border-radius:12px;padding:18px 20px}.portal-membership-info-title{color:var(--text-primary);margin:0 0 8px;font-size:15px;font-weight:700}.portal-membership-info-text{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.portal-membership-form{border-color:#e9d5ff}.portal-membership-alert{color:#7c3aed;background:#faf5ff;border:1px solid #e9d5ff;border-radius:10px;align-items:flex-start;gap:10px;margin-top:20px;padding:14px 16px;font-size:13px;line-height:1.55;display:flex}.portal-membership-alert p{margin:0}.portal-selfpay-wrap{flex-direction:column;gap:16px;display:flex}.portal-selfpay-info-banner{border:1px solid var(--border-color);background:#f8fafc;border-radius:10px;padding:16px 18px}.portal-selfpay-info-title{color:var(--text-primary);margin:0 0 6px;font-size:14px;font-weight:700}.portal-selfpay-info-text{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.portal-credit-card-block{border:1px solid var(--border-color);background:#fff;border-radius:12px;padding:20px}.portal-credit-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.portal-credit-card-title-row{color:var(--color-primary);align-items:center;gap:8px;display:flex}.portal-credit-card-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.portal-credit-card-encrypted{color:var(--text-secondary);align-items:center;gap:4px;font-size:12px;display:inline-flex}.portal-credit-card-note{color:var(--text-secondary);margin:0 0 20px;font-size:13px;line-height:1.55}.portal-photo-id-note{color:var(--text-secondary);margin:-12px 0 12px;font-size:12px;line-height:1.45}.portal-photo-id-section .portal-upload-box{background:#f4f7fb;border-color:#c5d4e8;min-height:160px}.portal-photo-id-section .portal-upload-text{font-size:12px}.portal-submit-wrap{text-align:center;margin-top:28px}.portal-create-new-wrap{text-align:center;margin-top:16px}.returning-flow-back-wrap{margin-top:20px}.portal-create-new-btn{min-width:220px}.portal-book-btn{border-radius:10px;width:100%;max-width:100%;padding:16px 24px;font-size:16px;font-weight:700}.portal-submit-note{text-align:center;color:var(--text-secondary);margin:10px 0 0;font-size:12px;line-height:1.5}.portal-booking .form-group{gap:8px;margin:0}.portal-booking .form-label{color:var(--text-primary);margin:0 0 4px;font-size:12px;font-weight:600;line-height:1.35;display:block}.portal-booking .form-input,.portal-booking .form-select{background-color:#f4f7fb;border-color:#d4dde8;border-radius:6px;min-height:36px;padding:8px 12px;font-size:13px}.portal-booking .form-select{background-color:#f4f7fb}.portal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px 20px;display:grid}.portal-form-grid.portal-form-grid--3{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}.portal-address-fields-row{margin-top:12px}.portal-form-stack{flex-direction:column;gap:20px;display:flex}.portal-form-full{grid-column:1/-1}.portal-form-checkbox{align-items:flex-start;gap:8px;padding:2px 0;font-size:12px;line-height:1.45;display:flex}.portal-form-checkbox input{flex-shrink:0;margin-top:2px}.portal-form-section-title{color:var(--text-primary);margin:0 0 14px;font-size:14px;font-weight:700}.portal-billing-details{flex-direction:column;gap:16px;margin-top:16px;display:flex}.portal-billing-details .portal-form-grid{margin-top:4px}.portal-insurance-block{background:#fff;border:1px solid #bfdbfe;border-radius:12px;padding:20px}.portal-insurance-block-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.portal-insurance-block-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.portal-insurance-remove{color:var(--color-danger);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px;font-weight:600}.portal-insurance-scan-hint{color:var(--text-secondary);margin:0 0 12px;font-size:13px;line-height:1.5}.portal-insurance-card-note{color:var(--text-secondary);margin:0 0 16px;font-size:13px;line-height:1.5}.portal-insurance-scan-result{color:var(--color-primary);margin:12px 0 0;font-size:13px;line-height:1.5}.portal-add-insurance-btn{border:2px dashed var(--border-color);width:100%;color:var(--color-primary);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);background:#f8fafc;border-radius:10px;padding:14px 16px;font-size:14px;font-weight:600}.portal-add-insurance-btn:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.portal-specialty-billing{background:#fff;border-radius:12px;margin-top:16px;padding:20px}.portal-specialty-billing--workers-comp{border:1px solid #fdba74}.portal-specialty-billing--no-fault,.portal-specialty-billing--employer,.portal-specialty-billing--third-party{border:1px solid #bfdbfe}.portal-specialty-billing-title{color:var(--text-primary);margin:0 0 12px;font-size:15px;font-weight:700}.portal-specialty-billing-desc{color:var(--text-secondary);margin:0 0 16px;font-size:13px;line-height:1.5}.portal-specialty-billing-note{border-radius:10px;margin-top:4px;padding:12px 14px;font-size:13px;line-height:1.5}.portal-specialty-billing-note--purple{color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe}.portal-optional-label{color:var(--text-secondary);font-weight:400}.portal-upload-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.portal-upload-field{flex-direction:column;gap:8px;display:flex}.portal-upload-label{color:var(--text-primary);font-size:13px;font-weight:600}.portal-upload-box{cursor:pointer;min-height:140px;transition:border-color var(--transition-fast), background var(--transition-fast);background:#f8fafc;border:2px dashed #cbd5e1;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;display:flex;position:relative;overflow:hidden}.portal-upload-box:hover,.portal-upload-box.drag-over{border-color:var(--color-primary);background:#f0f6ff}.portal-upload-box.has-preview{min-height:160px;padding:0}.portal-upload-input{display:none}.portal-upload-icon{color:#64748b}.portal-upload-text{color:var(--text-secondary);text-align:center;font-size:12px;font-weight:500}.portal-upload-inner-label{color:var(--text-primary);text-align:center;font-size:13px;font-weight:700}.portal-upload-preview{object-fit:cover;border-radius:8px;width:100%;height:100%;min-height:160px}.portal-upload-hint{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.4}.portal-upload-remove{color:var(--color-danger);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;font-weight:600}.portal-minor-box .form-input,.portal-minor-box .form-select,.portal-card .form-input,.portal-card .form-select{background-color:#fff}@media (max-width:768px){.portal-upload-grid{grid-template-columns:1fr}}.portal-minor-box .portal-form-grid{gap:20px 24px}.portal-minor-notice{color:#92400e;margin:4px 0 0;font-size:11px;line-height:1.45}.portal-minor-title{color:#92400e;margin:0;font-size:13px;font-weight:700}@media (max-width:768px){.portal-form-grid{grid-template-columns:1fr;gap:20px}.portal-form-grid.portal-form-grid--3{grid-template-columns:1fr}.portal-details-card{padding:20px}.portal-booking-banner{flex-direction:column;align-items:flex-start}.portal-patient-type-toggle{width:100%}.portal-patient-type-btn{text-align:center;flex:1}.portal-billing-grid{grid-template-columns:1fr}.portal-minor-box{margin-top:20px;padding:16px}}.portal-success-icon{color:#16a34a;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:28px;font-weight:700;display:flex}.portal-success-icon--cancelled{color:#dc2626;background:#fee2e2}.portal-success-page{text-align:center;max-width:560px;margin:0 auto}.portal-success-title{color:var(--text-primary);margin:0 0 6px;font-size:22px;font-weight:700}.portal-success-subtitle{color:var(--text-secondary);margin:0 0 24px;font-size:13px;line-height:1.5}.portal-success-card{border:1px solid var(--border-color);text-align:left;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #0049b90f}.portal-ticket-banner{background:var(--color-primary);color:#fff;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.portal-ticket-banner .portal-ticket-label{letter-spacing:.06em;color:#fff;opacity:.95;margin-bottom:4px;font-size:10px;font-weight:600}.portal-ticket-number{font-size:32px;font-weight:800;line-height:1.1}.portal-ticket-display-hint{text-align:left;opacity:.95;align-items:flex-start;gap:8px;max-width:150px;font-size:11px;line-height:1.45;display:flex}.portal-ticket-display-icon{background:#ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.portal-success-confirm-row{color:#166534;background:#ecfdf5;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;font-size:12px;font-weight:600;display:flex}.portal-success-confirm-pill{color:#14532d;white-space:nowrap;background:#fff;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:700}.portal-success-details-grid{grid-template-columns:1fr 1fr;gap:20px 24px;padding:18px 20px 20px;font-size:12px;display:grid}.portal-success-label{color:var(--text-secondary);margin-bottom:4px;font-size:11px;font-weight:700}.portal-success-value{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.4}.portal-success-address{color:var(--text-secondary);margin-top:2px;font-size:12px;line-height:1.4}.portal-success-time{color:var(--color-primary);margin-top:2px;font-size:13px;font-weight:700}.portal-success-next-steps{text-align:left;margin-top:24px}.portal-success-next-title{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:700}.portal-success-step-card{border:1px solid var(--border-color);background:#fff;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:10px;padding:14px 16px;display:flex;box-shadow:0 1px 4px #0f172a0a}.portal-success-step-card--highlight{background:#eff6ff;border-color:#dbeafe}.portal-success-step-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.portal-success-step-icon--phone,.portal-success-step-icon--doc{color:var(--color-primary);background:#dbeafe}.portal-success-step-icon--clock{color:#64748b;background:#f1f5f9}.portal-success-step-heading{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:700}.portal-success-step-text{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.portal-success-register-btn{border-radius:8px;width:100%;margin-top:10px;padding:10px 16px;font-size:13px;font-weight:600}.portal-success-actions{flex-direction:column;gap:10px;margin-top:20px;display:flex}.portal-success-btn{border-radius:8px;justify-content:center;width:100%;padding:12px 16px;font-size:13px;font-weight:600}.portal-success-calendar-btn{align-items:center;gap:8px;display:inline-flex}.portal-success-cancel-link{color:#dc2626;cursor:pointer;text-align:center;background:0 0;border:none;padding:8px 0 4px;font-size:13px;font-weight:600}.portal-success-cancel-link:hover:not(:disabled){text-decoration:underline}.portal-success-cancel-link:disabled{opacity:.6;cursor:not-allowed}.portal-success-cancel-error{text-align:left;margin-top:12px;font-size:12px}@media (max-width:640px){.portal-success-details-grid{grid-template-columns:1fr;gap:16px}.portal-ticket-banner{flex-direction:column;align-items:flex-start}.portal-ticket-display-hint{max-width:none}}.portal-success-details{grid-template-columns:repeat(3,1fr);gap:16px;padding:20px;font-size:13px;display:grid}@media (max-width:640px){.portal-success-details{grid-template-columns:1fr;gap:20px}}.portal-search-input{border:1px solid var(--border-color);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%2394a3b8' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") 14px no-repeat;border-radius:10px;width:100%;margin-bottom:20px;padding:14px 16px 14px 44px;font-size:14px}.staff-page-card{background:#fff;border:1px solid #dbeafe;border-radius:12px;padding:24px 28px 20px;box-shadow:0 1px 3px #0f172a0a}.staff-role-overview{background:#f0f7ff;border:1px solid #dbeafe;border-radius:10px;margin-bottom:20px;padding:14px 18px}.staff-role-overview-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.staff-role-overview-list{flex-direction:column;gap:10px;display:flex}.staff-role-overview-item{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.staff-role-overview-desc{color:var(--text-secondary);flex:1;min-width:200px;font-size:13px;line-height:1.45}.staff-tabs-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.staff-tabs{gap:0;display:flex}.staff-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 18px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.staff-tab-btn:hover{color:var(--text-primary)}.staff-tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.staff-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.staff-search-wrap{flex:1;max-width:360px;position:relative}.staff-search-wrap .search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.staff-search-input{border:1px solid var(--border-color);background:#fff;border-radius:999px;width:100%;padding:10px 14px 10px 38px;font-size:14px;transition:border-color .15s}.staff-search-input:focus{border-color:var(--color-primary);outline:none}.staff-role-badge{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.staff-status-active{color:var(--color-success);align-items:center;gap:5px;font-size:13px;font-weight:500;display:inline-flex}.staff-status-inactive{color:var(--text-secondary);align-items:center;gap:5px;font-size:13px;font-weight:500;display:inline-flex}.staff-actions-btn{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.staff-actions-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.staff-actions-menu{border:1px solid var(--border-color);box-shadow:var(--shadow-md);z-index:100;background:#fff;border-radius:8px;min-width:140px;position:absolute;top:34px;right:0;overflow:hidden}.staff-actions-menu button{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;padding:10px 14px;font-size:13px;transition:background .15s;display:block}.staff-actions-menu button:hover{background:var(--surface-hover)}.staff-actions-menu button.danger{color:var(--color-danger,#d32f2f)}.staff-permissions-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.staff-permissions-actions{flex-wrap:wrap;gap:8px;display:flex}.staff-role-list-item{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;padding:8px 10px;font-size:13px;display:flex}.staff-role-list-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.staff-role-list-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.staff-permissions-layout{gap:20px;width:100%;min-width:0;display:flex}.staff-permissions-roles{flex-shrink:0;width:240px;min-width:0}.staff-permissions-panel{flex:1;min-width:0}.patient-doc-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.patient-doc-card{border:1px solid var(--border-color);background:#fff;border-radius:10px;overflow:hidden}.patient-doc-card-title{color:var(--text-primary);border-bottom:1px solid var(--border-color);background:var(--content-bg);padding:10px 12px;font-size:13px;font-weight:600}.patient-doc-card-image{aspect-ratio:4/3;object-fit:contain;cursor:pointer;background:#f8fafc;width:100%;display:block}.patient-insurance-summary{border:1px solid var(--border-color);background:var(--content-bg);border-radius:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 20px;margin-bottom:20px;padding:16px;display:grid}.patient-insurance-policy-block{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.patient-insurance-policy-block:first-child{border-top:none;margin-top:0;padding-top:0}.patient-shared-summary{color:var(--text-secondary);background:#f0f7ff;border:1px solid #dbeafe;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:13px;display:flex}.patient-shared-folder{border:1px solid var(--border-color);background:#fff;border-radius:10px;margin-bottom:16px;overflow:hidden}.patient-shared-folder-header{background:var(--content-bg);cursor:pointer;text-align:left;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:background .15s;display:flex}.patient-shared-folder-header:hover{background:var(--surface-hover)}.patient-shared-folder-title{color:var(--text-primary);align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.patient-shared-folder-meta{color:var(--text-secondary);font-family:monospace;font-size:12px}.patient-shared-folder-count{background:var(--color-primary-light);min-width:24px;height:24px;color:var(--color-primary);border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.patient-shared-folder-body{border-top:1px solid var(--border-color);padding:16px}.patient-shared-image-meta{color:var(--text-secondary);border-top:1px solid var(--border-color);background:#fafafa;padding:8px 12px;font-size:11px}.appt-cal-page{flex-direction:column;gap:20px;display:flex}.appt-cal-toolbar{align-items:center;gap:8px;display:flex}.appt-cal-locations-card{padding:20px}.appt-cal-locations-header{margin-bottom:14px}.appt-cal-locations-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.appt-cal-location-tabs{flex-wrap:wrap;gap:10px;display:flex}.appt-cal-location-tab{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.appt-cal-location-tab:hover{background:#f8fbff;border-color:#93c5fd}.appt-cal-location-tab.active{border:2px solid var(--color-primary);background:var(--color-primary-light,#eff6ff);color:var(--color-primary);box-shadow:var(--shadow-sm,0 1px 3px #00000014)}.appt-cal-inactive-badge{background:var(--text-secondary);color:#fff;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:500}.appt-cal-main-card{padding:0;overflow:hidden}.appt-cal-clinic-header{border-bottom:1px solid var(--border-color);background:linear-gradient(#f8fbff 0%,#fff 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.appt-cal-clinic-header-left{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appt-cal-clinic-name{margin:0;font-size:18px;font-weight:700}.appt-cal-active-badge{color:#15803d;background:#dcfce7;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.appt-cal-month-nav{border:1px solid var(--border-color);background:#fff;border-radius:10px;align-items:center;gap:4px;padding:4px;display:flex}.appt-cal-nav-btn{cursor:pointer;width:32px;height:32px;color:var(--text-primary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex}.appt-cal-nav-btn:hover{background:#f1f5f9}.appt-cal-month-label{text-align:center;min-width:130px;padding:0 8px;font-size:14px;font-weight:700}.appt-cal-site-tabs{flex-wrap:wrap;gap:8px;padding:14px 24px 0;display:flex}.appt-cal-site-tab{border:1px solid var(--border-color);cursor:pointer;color:var(--text-secondary);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;display:flex}.appt-cal-site-tab.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.appt-cal-site-label{color:var(--text-secondary);align-items:center;gap:6px;padding:16px 24px 0;font-size:13px;font-weight:600;display:flex}.appt-cal-summary-row{border-bottom:1px solid var(--border-color);background:#fafbfc;flex-wrap:wrap;align-items:center;gap:24px;padding:16px 24px;display:flex}.appt-cal-summary-stat{flex-direction:column;gap:2px;display:flex}.appt-cal-summary-value{color:var(--color-primary);font-size:22px;font-weight:700;line-height:1}.appt-cal-summary-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.appt-cal-legend{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.appt-cal-legend-item{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.appt-cal-legend-item.high{color:#15803d;background:#dcfce7}.appt-cal-legend-item.medium{color:#a16207;background:#fef9c3}.appt-cal-legend-item.low{color:#c2410c;background:#ffedd5}.appt-cal-legend-item.full{color:#dc2626;background:#fee2e2}.appt-cal-weekdays{grid-template-columns:repeat(7,1fr);gap:6px;padding:16px 24px 6px;display:grid}.appt-cal-weekday{text-align:center;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.appt-cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;padding:0 24px 24px;display:grid}.appt-cal-day{border:1px solid var(--border-color);cursor:default;background:#fff;border-radius:10px;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-height:88px;padding:8px 6px;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex}.appt-cal-day-empty{background:0 0;border:none;min-height:0}.appt-cal-day.has-slots{cursor:pointer}.appt-cal-day.has-slots:hover{border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 8px #0049b91f}.appt-cal-day.today .appt-cal-day-num{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.appt-cal-day.selected{border-color:var(--color-primary);background:#eff6ff;box-shadow:0 0 0 2px #0049b933}.appt-cal-day.level-high{background:#f0fdf4;border-color:#bbf7d0}.appt-cal-day.level-medium{background:#fefce8;border-color:#fde68a}.appt-cal-day.level-low{background:#fff7ed;border-color:#fed7aa}.appt-cal-day.level-full{background:#fef2f2;border-color:#fecaca}.appt-cal-day-num{font-size:14px;font-weight:700;line-height:1}.appt-cal-day-count{color:var(--text-primary);font-size:11px;font-weight:700}.appt-cal-day-count-sep{color:var(--text-secondary);margin:0 1px;font-weight:500}.appt-cal-day-bar{background:#0000000f;border-radius:2px;width:100%;height:4px;margin-top:2px;overflow:hidden}.appt-cal-day-bar-fill{background:var(--color-primary);border-radius:2px;height:100%;display:block}.appt-cal-day.level-full .appt-cal-day-bar-fill{background:#dc2626}.appt-cal-day.level-low .appt-cal-day-bar-fill{background:#ea580c}.appt-cal-day.level-medium .appt-cal-day-bar-fill{background:#ca8a04}.appt-cal-day.level-high .appt-cal-day-bar-fill{background:#16a34a}.appt-cal-detail-card{padding:24px}.appt-cal-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.appt-cal-detail-title{margin:0 0 4px;font-size:18px;font-weight:700}.appt-cal-detail-sub{color:var(--text-secondary);margin:0;font-size:13px}.appt-cal-slot-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;display:grid}.appt-cal-slot{border:1px solid var(--border-color);text-align:center;background:#fff;border-radius:10px;padding:14px 12px}.appt-cal-slot.level-high{background:#f0fdf4;border-color:#bbf7d0}.appt-cal-slot.level-medium{background:#fefce8;border-color:#fde68a}.appt-cal-slot.level-low{background:#fff7ed;border-color:#fed7aa}.appt-cal-slot.level-full{background:#fef2f2;border-color:#fecaca}.appt-cal-slot.level-blocked{opacity:.85;background:#f1f5f9}.appt-cal-slot-time{margin-bottom:6px;font-size:15px;font-weight:700}.appt-cal-slot-status{color:#15803d;font-size:12px;font-weight:600}.appt-cal-slot-status.full{color:#dc2626}.appt-cal-slot-status.blocked{color:var(--text-secondary)}.appt-cal-slot-booked{color:var(--text-secondary);margin-top:6px;font-size:10px}.appt-cal-slot-bar{background:#0000000f;border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.appt-cal-slot-bar-fill{background:var(--color-primary);border-radius:2px;height:100%}.appt-cal-loading,.appt-cal-empty-state,.appt-cal-empty-hint{text-align:center;color:var(--text-secondary);padding:32px 24px;font-size:14px}.appt-cal-error{color:var(--color-danger);padding:16px 24px;font-size:14px}@media (max-width:768px){.appt-cal-grid{gap:4px;padding:0 12px 16px}.appt-cal-day{min-height:64px;padding:6px 4px}.appt-cal-day-count{font-size:10px}.appt-cal-summary-row{gap:16px;padding:12px 16px}.appt-cal-legend{width:100%;margin-left:0}}.comms-page{flex-direction:column;gap:0;display:flex}.comms-tabs{border-bottom:1px solid var(--border-color,#e2e8f0);gap:24px;margin-bottom:20px;display:flex}.comms-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 0 12px;font-size:15px;font-weight:600}.comms-tab.is-active{color:var(--text-primary);border-bottom-color:var(--color-primary)}.comms-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.comms-summary{color:var(--text-secondary);margin:0;font-size:14px}.comms-card{border:1px solid var(--border-color,#e2e8f0);background:#fff;border-radius:12px;overflow:visible;box-shadow:0 1px 3px #0f172a0a}.comms-table-wrap{overflow-x:auto}.comms-table{border-collapse:collapse;width:100%;font-size:14px}.comms-table th{text-align:left;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border-color,#e2e8f0);background:#f8fafc;padding:12px 16px;font-size:11px;font-weight:700}.comms-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:14px 16px}.comms-table tbody tr:last-child td{border-bottom:none}.comms-col-check{width:44px}.comms-col-sent{text-align:right;font-variant-numeric:tabular-nums;width:80px}.comms-col-actions{text-align:right;width:48px}.comms-template-name{color:var(--text-primary);font-weight:600}.comms-trigger-badge{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.comms-trigger-icon{font-size:11px}.comms-channel-badges{flex-wrap:wrap;gap:6px;display:flex}.comms-channel-badge{letter-spacing:.02em;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.comms-channel-badge--sms{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.comms-channel-badge--email{color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe}.comms-row-menu-wrap{display:inline-block;position:relative}.comms-row-menu-btn{letter-spacing:2px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px;line-height:1}.comms-row-menu{z-index:20;border:1px solid var(--border-color,#e2e8f0);background:#fff;border-radius:8px;min-width:120px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 24px #0f172a1f}.comms-row-menu--up{top:auto;bottom:calc(100% + 4px)}.comms-row-menu button{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;font-size:14px;display:block}.comms-row-menu button:hover{background:#f8fafc}.comms-row-menu button.is-danger{color:#dc2626}.comms-log-channel-toggle{gap:8px;margin-bottom:16px;display:flex}.comms-log-channel-btn{border:1px solid var(--border-color,#e2e8f0);color:var(--text-secondary);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.comms-log-channel-btn.is-active{color:#fff;background:#0f172a;border-color:#0f172a}.comms-log-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;padding:16px 16px 0;display:flex}.comms-log-header h3{margin:0;font-size:16px;font-weight:700}.comms-log-header .search-input-wrapper{min-width:260px}.comms-log-filters{flex-wrap:wrap;align-items:center;gap:10px;padding:0 16px 16px;display:flex}.comms-log-filters .search-input-wrapper{flex:240px;min-width:220px}.comms-log-filters .filter-select{min-width:150px}.comms-log-footer{border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 16px;display:flex}.comms-log-count{color:var(--text-secondary);font-size:13px}.comms-time{color:var(--text-secondary);white-space:nowrap;font-size:13px}.comms-patient-cell{flex-direction:column;gap:2px;display:flex}.comms-patient-cell span{color:var(--text-secondary);font-size:12px}.comms-subject{white-space:nowrap;text-overflow:ellipsis;max-width:280px;overflow:hidden}.comms-status{align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.comms-status--delivered{color:#16a34a}.comms-status--sent{color:#2563eb}.comms-status--failed{color:#dc2626}.comms-status--bounced{color:#ea580c}.comms-status--pending{color:#ca8a04}.comms-row-failed .comms-recipient-failed{color:#dc2626}.comms-resend-btn{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.comms-resend-btn:hover{background:#fef2f2}.comms-log-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.comms-view-msg-btn{border:1px solid var(--border-color);color:var(--color-primary);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.comms-view-msg-btn:hover{background:#eff6ff;border-color:#bfdbfe}.audit-page{flex-direction:column;gap:16px;display:flex}.audit-action-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.audit-action-badge--default{color:#475569;background:#f1f5f9}.audit-action-badge--success{color:#15803d;background:#dcfce7}.audit-action-badge--danger{color:#b91c1c;background:#fee2e2}.audit-action-badge--info{color:#1d4ed8;background:#dbeafe}.audit-action-badge--warning{color:#b45309;background:#fef3c7}.audit-record-id{color:var(--text-secondary);font-family:monospace;font-size:12px}.audit-detail-body{flex-direction:column;gap:16px;display:flex}.audit-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.audit-detail-grid>div{flex-direction:column;gap:4px;display:flex}.audit-detail-grid span{color:var(--text-secondary);font-size:12px}.audit-fields-block h4{margin:0 0 8px;font-size:13px}.audit-fields-list{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;flex-direction:column;gap:10px;margin:0;padding:12px 14px;display:flex}.audit-fields-row{grid-template-columns:minmax(110px,160px) 1fr;align-items:start;gap:10px 16px;display:grid}.audit-fields-row dt{color:var(--text-secondary);margin:0;font-size:12px;font-weight:600}.audit-fields-row dd{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.45}.audit-fields-empty{color:var(--text-secondary);margin:0;font-size:13px}.audit-user-agent{border:1px solid var(--border-color);color:var(--text-secondary);word-break:break-word;background:#f8fafc;border-radius:8px;margin:0;padding:12px 14px;font-size:12px}.audit-json-block h4{margin:0 0 8px;font-size:13px}.audit-json-block pre{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;max-height:240px;margin:0;padding:12px;font-size:12px;overflow:auto}.audit-json-block p{color:var(--text-secondary);word-break:break-word;margin:0;font-size:13px}.comms-col-resend{text-align:right;width:100px}.comms-loading,.comms-empty{text-align:center;color:var(--text-secondary);padding:32px}.comms-modal-overlay{z-index:9000}.comms-edit-modal{background:#fff;border-radius:16px;flex-direction:column;width:min(960px,96vw);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 24px 64px #0f172a33}.comms-edit-header{padding:24px 28px 0}.comms-edit-header h2{margin:0 0 6px;font-size:20px;font-weight:700}.comms-edit-header p{color:var(--text-secondary);margin:0;font-size:14px}.comms-edit-body{flex:1;grid-template-columns:1fr 1fr;gap:24px;padding:20px 28px;display:grid;overflow-y:auto}@media (max-width:900px){.comms-edit-body{grid-template-columns:1fr}}.comms-edit-form{flex-direction:column;gap:16px;display:flex}.comms-field{flex-direction:column;gap:6px;display:flex}.comms-field span{color:var(--text-primary);font-size:13px;font-weight:600}.comms-field input,.comms-field select,.comms-field textarea{border:1px solid var(--border-color,#e2e8f0);border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px}.comms-field textarea{resize:vertical;min-height:80px}.comms-section-title{margin-bottom:8px;font-size:13px;font-weight:700}.comms-channel-section{border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;padding:12px 0}.comms-payment-template-check{cursor:pointer;color:var(--text-primary);align-items:flex-start;gap:10px;font-size:14px;display:flex}.comms-payment-template-check input{width:16px;height:16px;accent-color:var(--color-primary,#2563eb);flex-shrink:0;margin-top:3px}.comms-payment-template-check span{flex-direction:column;gap:2px;display:flex}.comms-payment-template-check strong{font-weight:600}.comms-payment-template-check small{color:var(--text-secondary);font-size:12px;line-height:1.4}.comms-payment-badge{color:#1d4ed8;vertical-align:middle;background:#dbeafe;border-radius:999px;align-items:center;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.comms-toggle-row{justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.comms-toggle-label{font-size:14px;font-weight:600}.comms-toggle-desc{color:var(--text-secondary);font-size:12px}.comms-toggle{cursor:pointer;background:#cbd5e1;border:none;border-radius:999px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.comms-toggle span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.comms-toggle.is-on{background:#7c3aed}.comms-toggle.is-on span{transform:translate(20px)}.comms-placeholder-tags{flex-wrap:wrap;gap:8px;display:flex}.comms-placeholder-tag{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.comms-placeholder-tag:hover{background:#dbeafe}.comms-edit-preview{border:1px solid var(--border-color,#e2e8f0);background:#f8fafc;border-radius:12px;padding:16px}.comms-preview-title{align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:700;display:flex}.comms-preview-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.comms-preview-meta{color:var(--text-secondary);border-bottom:1px solid #f1f5f9;padding:12px 14px;font-size:12px;line-height:1.6}.comms-preview-body{padding:14px;font-size:14px;line-height:1.6}.comms-preview-body p{margin:0 0 8px}.comms-preview-footer{color:var(--text-secondary);background:#f8fafc;border-top:1px solid #f1f5f9;padding:10px 14px;font-size:11px}.comms-preview-sms-note{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-top:12px;padding:12px;font-size:13px}.comms-preview-sms-text{color:var(--text-primary);background:#fff;border-radius:8px;margin-top:8px;padding:10px;font-size:13px}.comms-edit-footer{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:10px;padding:16px 28px 24px;display:flex}.settings-page{width:100%;max-width:1200px}.settings-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}@media (max-width:960px){.settings-row{grid-template-columns:1fr}}.settings-card{border:1px solid var(--border-color,#e2e8f0);background:#fff;border-radius:12px;min-width:0;padding:24px;box-shadow:0 1px 3px #0f172a0a}.settings-card-header h2{margin:0 0 6px;font-size:18px}.settings-card-header p{color:var(--text-secondary);margin:0 0 20px;font-size:14px}.settings-form{flex-direction:column;gap:16px;display:flex}.settings-field{flex-direction:column;gap:6px;display:flex}.settings-field span{font-size:13px;font-weight:600}.settings-field input{border:1px solid var(--border-color,#e2e8f0);border-radius:8px;padding:10px 12px;font-size:14px}.settings-field small{color:var(--text-secondary);font-size:12px}.settings-copy-row{align-items:stretch;gap:8px;display:flex}.settings-copy-input{border:1px solid var(--border-color,#e2e8f0);background:var(--surface-muted,#f8fafc);min-width:0;color:var(--text-primary,#0f172a);border-radius:8px;flex:1;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.settings-loading,.settings-readonly-note{color:var(--text-secondary);font-size:14px}.returning-flow-wrap{max-width:520px;margin:0 auto}.returning-flow{flex-direction:column;align-items:stretch;gap:16px;display:flex}.returning-flow--review{align-items:stretch;max-width:720px;margin:0 auto}.returning-flow-hero{text-align:center;margin-bottom:8px}.returning-flow-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:16px;display:inline-flex}.returning-flow-icon--user,.returning-flow-icon--phone{color:var(--color-primary,#1d61f2);background:#e8f0fe}.returning-flow-title{color:var(--text-primary);margin:0 0 8px;font-size:28px;font-weight:700}.returning-flow-sub{color:var(--text-secondary);max-width:420px;margin:0 auto;font-size:14px;line-height:1.5}.returning-flow-card{background:#fff;border:1px solid #d4dde8;border-radius:12px;padding:20px 24px}.returning-flow-card-title{color:var(--text-primary);margin:0 0 16px;font-size:15px;font-weight:700}.returning-flow-card .form-group+.form-group{margin-top:20px}.returning-flow-primary-btn{background:var(--color-primary,#1d61f2);color:#fff;cursor:pointer;width:100%;transition:opacity var(--transition-fast);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:15px;font-weight:600;display:flex}.returning-flow-primary-btn:disabled{opacity:.6;cursor:not-allowed}.returning-flow-hint{text-align:center;color:var(--text-secondary);margin:0;font-size:13px}.returning-flow-alert{margin:0}.returning-otp-section{text-align:center}.returning-otp-label{color:var(--text-secondary);margin-bottom:12px;font-size:13px;display:block}.returning-otp-inputs{justify-content:center;gap:10px;margin-bottom:8px;display:flex}.returning-otp-box{text-align:center;width:48px;height:52px;color:var(--text-primary);background:#fff;border:1px solid #d4dde8;border-radius:10px;font-size:20px;font-weight:600}.returning-otp-box:focus{border-color:var(--color-primary,#1d61f2);outline:none;box-shadow:0 0 0 3px #1d61f226}.returning-otp-actions{flex-direction:column;align-items:center;gap:8px;margin-top:4px;display:flex}.returning-otp-muted{color:var(--text-secondary);margin:0;font-size:13px}.returning-otp-link{color:var(--color-primary,#1d61f2);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.returning-otp-link:disabled{opacity:.55;cursor:not-allowed}.returning-otp-expires{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.returning-welcome-banner{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.returning-welcome-check{color:#fff;background:#22c55e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:4px;display:flex}.returning-welcome-title{margin:0 0 4px;font-size:22px;font-weight:700}.returning-welcome-sub{color:var(--text-secondary);margin:0;font-size:14px}.returning-verified-card{background:#fff;border:1px solid #d4dde8;border-radius:12px;margin-bottom:20px;padding:16px 20px;position:relative}.returning-verified-badge{color:#15803d;background:#dcfce7;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;position:absolute;top:14px;right:16px}.returning-verified-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.returning-verified-label{color:var(--text-secondary);margin-bottom:4px;font-size:12px}.returning-verified-value{color:var(--text-primary);font-size:15px;font-weight:600}.returning-review-heading{align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:700;display:flex}.returning-review-list{flex-direction:column;gap:10px;display:flex}.returning-review-row{background:#fff;border:1px solid #d4dde8;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.returning-review-row.editing{border-color:var(--color-primary,#1d61f2);box-shadow:0 0 0 1px #1d61f21f}.returning-review-row-body{flex:1;min-width:0}.returning-review-row-label{color:var(--text-secondary);margin-bottom:4px;font-size:12px}.returning-review-row-value{color:var(--text-primary);word-break:break-word;font-size:14px;font-weight:600}.returning-review-edit-btn,.returning-review-save-btn{cursor:pointer;border-radius:8px;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:600}.returning-review-edit-btn{color:var(--color-primary,#1d61f2);background:#fff;border:1px solid #bfdbfe}.returning-review-save-btn{background:var(--color-primary,#1d61f2);color:#fff;border:none}.returning-review-insurance-editor,.returning-review-fields{width:100%;margin-top:8px}.returning-review-fields .form-group{margin-bottom:0}.returning-review-fields .portal-form-grid{margin-top:12px}.returning-staff-notice{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;align-items:flex-start;gap:10px;margin:8px 0;padding:12px 14px;font-size:13px;display:flex}.returning-staff-notice svg{color:#d97706;flex-shrink:0;margin-top:1px}.patients-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:100%;min-width:0;max-width:100%;margin-bottom:20px;display:grid}.patients-stat-card{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;align-items:center;gap:14px;padding:18px 20px;display:flex}.patients-stat-card--primary{background:#f8fbff;border-color:#bfdbfe}.patients-stat-card--success{background:#f7fef9;border-color:#bbf7d0}.patients-stat-card--warning{background:#fffdf5;border-color:#fde68a}.patients-stat-card--info{background:#faf8ff;border-color:#ddd6fe}.patients-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.patients-stat-icon--primary{color:#1d4ed8;background:#dbeafe}.patients-stat-icon--success{color:#15803d;background:#dcfce7}.patients-stat-icon--warning{color:#b45309;background:#fef3c7}.patients-stat-icon--info{color:#6d28d9;background:#ede9fe}.patients-stat-label{color:var(--text-secondary);margin-bottom:4px;font-size:13px}.patients-stat-value{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:28px;font-weight:700;line-height:1}.patients-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.patients-toolbar-filters{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.patients-search{flex:1;min-width:260px;max-width:420px}.patients-add-btn{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.add-patient-modal{flex-direction:column;display:flex;overflow:hidden}.add-patient-modal-body{max-height:calc(92vh - 160px);padding-right:4px;overflow-y:auto}.add-patient-modal .family-booking-form{gap:16px}.patients-cell-patient{align-items:center;gap:10px;display:flex}.patients-name{color:var(--text-primary);font-weight:600}.patients-mrn{color:var(--text-secondary);margin-top:2px;font-size:12px}.patients-primary-text{color:var(--text-primary);font-size:14px}.patients-secondary-text{color:var(--text-secondary);margin-top:2px;font-size:12px}.patients-reg-badge{align-items:center;gap:6px;display:inline-flex}.patients-view-link{color:var(--color-primary);align-items:center;gap:4px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.patients-view-link:hover{text-decoration:underline}.patients-table-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.patients-pagination{align-items:center;gap:6px;display:flex}.patients-pagination-nav{align-items:center;gap:6px;width:auto;min-width:96px;padding:0 12px;display:inline-flex}.patients-pagination-ellipsis{color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:0 4px}@media (max-width:1100px){.patients-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.patients-stats-grid{grid-template-columns:1fr}.patients-toolbar{flex-direction:column;align-items:stretch}.patients-search{max-width:none}.returning-verified-grid{grid-template-columns:1fr}.returning-otp-box{width:42px;height:48px;font-size:18px}.returning-review-row{flex-direction:column}.returning-review-edit-btn,.returning-review-save-btn{align-self:flex-end}}.waiting-room-shell{color:#fff;min-height:100vh;font-family:var(--font-sans,"Inter", system-ui, sans-serif);background:#0b1120;flex-direction:column;display:flex}.waiting-room-empty,.waiting-room-empty-queue{color:#8b95a8;text-align:center;padding:48px 24px;font-size:16px}.waiting-room-header{background:var(--color-primary);flex-shrink:0;justify-content:space-between;align-items:center;min-height:72px;padding:14px 32px;display:flex}.waiting-room-header-left{flex-direction:column;gap:2px;display:flex}.waiting-room-logo{color:#fff;letter-spacing:-.02em;align-items:center;gap:10px;font-size:22px;font-weight:700;display:flex}.waiting-room-subtitle{color:#ffffffd1;padding-left:32px;font-size:13px;font-weight:500}.waiting-room-location-field{align-items:center;gap:10px;display:inline-flex}.waiting-room-location-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;font-size:11px;font-weight:700}.waiting-room-location-select{appearance:none;color:#fff;cursor:pointer;background:#00000047 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #ffffff38;border-radius:10px;min-width:220px;padding:8px 36px 8px 14px;font-size:14px;font-weight:600}.waiting-room-location-select:focus{outline-offset:2px;outline:2px solid #ffffff73}.waiting-room-location-select option{color:#111827;background:#fff}.waiting-room-header-right{align-items:center;gap:14px;display:flex}.waiting-room-clock{color:#fff;letter-spacing:-.01em;font-size:26px;font-weight:600}.waiting-room-settings-btn{color:#ffffffe6;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;transition:background .15s;display:inline-flex}.waiting-room-settings-btn:hover{background:#ffffff26}.waiting-room-content{flex:1;padding:28px 32px 100px}.waiting-room-body{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;gap:32px;display:grid}.waiting-room-queue-panel{min-width:0}.waiting-room-queue-head{color:#8b95a8;letter-spacing:.12em;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 4px;font-size:11px;font-weight:700;display:flex}.waiting-room-table{flex-direction:column;gap:10px;display:flex}.waiting-room-table-row{border-radius:14px;grid-template-columns:168px minmax(0,1fr) 110px;align-items:center;gap:12px;min-height:64px;padding:0 20px;display:grid}.waiting-room-table-header{color:#5c667a;letter-spacing:.1em;background:0 0;min-height:auto;padding:0 20px 4px;font-size:11px;font-weight:700}.waiting-room-wait-col,.waiting-room-wait{text-align:right}.waiting-room-queue-row.role-now{background:#16a34a;box-shadow:0 4px 20px #16a34a40}.waiting-room-queue-row.role-up_next{background:#2563eb;box-shadow:0 4px 20px #2563eb40}.waiting-room-queue-row.role-waiting{background:#141b2d;border:1px solid #ffffff0f}.waiting-room-position{align-items:center;gap:12px;display:flex}.waiting-room-position-badge{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:inline-flex}.waiting-room-position-badge.waiting{color:#9aa3b5;background:#252f45;border:1px solid #ffffff14}.waiting-room-position-badge.now,.waiting-room-position-badge.up_next{color:#111827;background:#fff}.waiting-room-role-label{color:#fff;letter-spacing:.02em;white-space:nowrap;font-size:13px;font-weight:700}.waiting-room-name{color:#fff;letter-spacing:-.01em;font-size:20px;font-weight:600}.waiting-room-ticket{color:#f4f7fb;letter-spacing:-.01em;font-size:22px;font-weight:700}.waiting-room-ticket.highlight{color:#fff}.waiting-room-wait{color:#ffffffe6;font-size:17px;font-weight:500}.waiting-room-queue-row.role-waiting .waiting-room-ticket{color:#e8ecf4}.waiting-room-queue-row.role-waiting .waiting-room-wait{color:#9aa3b5}.waiting-room-sidebar{flex-direction:column;gap:14px;min-height:100%;display:flex}.waiting-room-card{background:#141b2d;border:1px solid #ffffff0f;border-radius:14px;padding:20px 22px}.waiting-room-card.now-serving{border-color:#22c55e #ffffff0f #ffffff0f;border-top-style:solid;border-top-width:3px}.waiting-room-card-label{letter-spacing:.12em;color:#8b95a8;margin-bottom:10px;font-size:10px;font-weight:700}.waiting-room-card.now-serving .waiting-room-card-label{color:#4ade80}.waiting-room-ticket-large{color:#fff;letter-spacing:-.02em;font-size:48px;font-weight:700;line-height:1}.waiting-room-ticket-large.muted{color:#5c667a}.waiting-room-serving-name{color:#4ade80;margin-top:6px;font-size:20px;font-weight:600}.waiting-room-stat-row{align-items:center;gap:10px;display:flex}.waiting-room-stat-value{color:#fff;letter-spacing:-.02em;font-size:48px;font-weight:700;line-height:1}.waiting-room-stat-badge{color:#fff;background:#2563eb;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.waiting-room-announcement{background:#141b2d;border:1px solid #ffffff0f;border-radius:14px;margin-top:auto;padding:16px 18px}.waiting-room-announcement-label{color:#fbbf24;letter-spacing:.1em;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:10px;font-weight:700;display:flex}.waiting-room-announcement p{color:#c8cdd8;margin:0;font-size:13px;line-height:1.55}.waiting-room-controls,.waiting-room-show-controls{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#141b2deb;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:6px;padding:8px 12px 8px 16px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000073}.waiting-room-show-controls{color:#c8cdd8;cursor:pointer;background:#141b2deb;border:1px solid #ffffff1a;padding:10px 18px;font-size:13px}.waiting-room-controls-label{color:#8b95a8;letter-spacing:.08em;white-space:nowrap;margin-right:4px;font-size:11px;font-weight:700}.waiting-room-format-btn,.waiting-room-hide-btn{color:#c8cdd8;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.waiting-room-format-btn:hover{background:#ffffff0f}.waiting-room-format-btn.active{color:#fff;background:#2563eb}.waiting-room-format-btn.ticket-toggle{margin-left:2px}.waiting-room-hide-btn{color:#8b95a8;margin-left:6px;font-size:12px}.waiting-room-hide-btn:hover{color:#c8cdd8}@media (max-width:1100px){.waiting-room-body{grid-template-columns:1fr}.waiting-room-table-row{grid-template-columns:130px minmax(0,1fr) 80px 80px;min-height:56px;padding:0 14px}.waiting-room-name{font-size:17px}.waiting-room-header{padding:12px 20px}.waiting-room-content{padding:20px 20px 100px}.waiting-room-controls{border-radius:16px;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 24px)}}.providers-page{flex-direction:column;gap:20px;display:flex}.providers-loading,.providers-empty{text-align:center;color:var(--text-secondary);padding:48px 24px}.providers-stats{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;min-width:0;max-width:100%;display:grid}.providers-stat-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;padding:20px 24px}.providers-stat-value{color:var(--text-primary);letter-spacing:-.02em;font-size:36px;font-weight:700;line-height:1.1}.providers-stat-value--success{color:#16a34a}.providers-stat-value--muted{color:#9ca3af}.providers-stat-label{color:var(--text-secondary);margin-top:4px;font-size:14px}.providers-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.providers-toolbar-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.providers-search-wrap{border:1px solid var(--border-color);min-width:240px;height:40px;color:var(--text-secondary);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.providers-search-input{width:100%;color:var(--text-primary);background:0 0;border:none;outline:none;font-size:14px}.providers-filter-select{border:1px solid var(--border-color);min-width:150px;height:40px;color:var(--text-primary);background:#fff;border-radius:8px;padding:0 12px;font-size:14px}.providers-table-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;width:100%;min-width:0;max-width:100%;overflow:hidden}.providers-table-card--menu-visible,.providers-table-card--menu-visible .providers-table tbody tr:last-child td{overflow:visible}.providers-table{border-collapse:collapse;width:100%;font-size:14px}.providers-table thead tr{border-bottom:1px solid var(--border-color);background:#fafbfc}.providers-table th{text-align:left;letter-spacing:.06em;color:var(--text-secondary);padding:12px 16px;font-size:11px;font-weight:700}.providers-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:16px}.providers-table tbody tr:last-child td{border-bottom:none}.providers-table tbody tr:hover{background:#fafbfc}.providers-name-cell{align-items:center;gap:12px;display:flex}.providers-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:flex}.providers-avatar--blue{color:#1d4ed8;background:#dbeafe}.providers-avatar--purple{color:#6d28d9;background:#ede9fe}.providers-avatar--green{color:#15803d;background:#dcfce7}.providers-avatar--orange{color:#c2410c;background:#ffedd5}.providers-avatar--pink{color:#be185d;background:#fce7f3}.providers-avatar--teal{color:#0f766e;background:#ccfbf1}.providers-name{color:var(--text-primary);font-size:15px;font-weight:600}.providers-specialty{color:var(--text-primary)}.providers-locations{flex-direction:column;gap:4px;display:flex}.providers-location-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:inline-flex}.providers-day-pills{flex-wrap:wrap;gap:4px;display:flex}.providers-day-pill{color:#9ca3af;background:#f3f4f6;border-radius:999px;justify-content:center;align-items:center;min-width:34px;height:28px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.providers-day-pill.active{color:#1d4ed8;background:#dbeafe}.providers-visit-tags{flex-wrap:wrap;gap:6px;display:flex}.providers-visit-tag{color:var(--text-secondary);white-space:nowrap;background:#f3f4f6;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.providers-visit-tag--more{color:var(--text-secondary);background:#e5e7eb}.providers-status{align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.providers-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.providers-status--active{color:#16a34a}.providers-status--active .providers-status-dot{background:#22c55e}.providers-status--inactive{color:#9ca3af}.providers-status--inactive .providers-status-dot{background:#d1d5db}.providers-actions-cell{text-align:right;width:48px}.providers-actions-wrap{z-index:1;display:inline-block;position:relative}.providers-actions-wrap:has(.action-menu-dropdown){z-index:210}.providers-menu-btn{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);letter-spacing:1px;background:0 0;border:none;border-radius:6px;font-size:18px;line-height:1}.providers-menu-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.providers-muted{color:var(--text-secondary);font-size:13px}.providers-footnote{color:var(--text-secondary);margin:0;font-size:13px;font-style:italic}.providers-modal{max-width:640px}.providers-modal-body{flex-direction:column;gap:18px;max-height:70vh;display:flex;overflow-y:auto}.providers-form-grid{grid-template-columns:1fr 140px;gap:16px;display:grid}.providers-checkbox-grid,.providers-visit-checkboxes{grid-template-columns:repeat(2,1fr);gap:10px 16px;display:grid}.providers-checkbox-item{cursor:pointer;color:var(--text-primary);align-items:center;gap:10px;font-size:14px;display:flex}.providers-checkbox-item input{width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0}.providers-day-toggles{flex-wrap:wrap;gap:8px;display:flex}.providers-day-toggle{border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:#fff;border-radius:50%;font-size:12px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.providers-day-toggle.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.providers-active-toggle{margin-top:4px}@media (max-width:900px){.providers-stats,.providers-form-grid,.providers-visit-checkboxes{grid-template-columns:1fr}.providers-table-card{overflow-x:auto}.providers-table{min-width:900px}}.analytics-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.analytics-toolbar-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.analytics-period-group{border:1px solid var(--border-color);background:#fff;border-radius:10px;gap:2px;padding:4px;display:inline-flex}.analytics-period-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:500;transition:background .15s,color .15s}.analytics-period-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.analytics-period-btn.active{color:var(--text-primary);background:#f3f4f6;font-weight:600}.analytics-clinic-select{min-width:180px}.analytics-tab-group{gap:8px;display:inline-flex}.analytics-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:500}.analytics-tab-btn:hover{color:var(--text-primary)}.analytics-tab-btn.active{color:var(--text-primary);border-color:#111827;font-weight:600}.analytics-kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.analytics-kpi-card{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;padding:18px 20px}.analytics-kpi-top{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.analytics-kpi-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border-radius:10px;justify-content:center;align-items:center;display:flex}.analytics-kpi-change{font-size:13px;font-weight:600}.analytics-kpi-change.positive{color:var(--color-success)}.analytics-kpi-change.negative{color:var(--color-danger)}.analytics-kpi-value{color:var(--text-primary);font-size:32px;font-weight:700;line-height:1.1;font-family:var(--font-heading,inherit)}.analytics-kpi-suffix{margin-left:2px;font-size:22px;font-weight:600}.analytics-kpi-label{color:var(--text-primary);margin-top:6px;font-size:14px;font-weight:600}.analytics-kpi-subtext{color:var(--text-secondary);margin-top:4px;font-size:12px}.analytics-charts-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.analytics-chart-card{padding:20px 22px}.analytics-chart-card--full{margin-bottom:16px}.analytics-chart-header{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:20px;font-size:15px;font-weight:600;display:flex}.analytics-chart-header-note{color:var(--text-secondary);margin-left:auto;font-size:12px;font-weight:400}.analytics-empty{color:var(--text-secondary);padding:24px 0;font-size:14px}.analytics-donut-wrap{grid-template-columns:180px 1fr;align-items:center;gap:24px;display:grid}.analytics-donut{border-radius:50%;justify-content:center;align-items:center;width:160px;height:160px;display:flex}.analytics-donut-hole{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:96px;height:96px;display:flex}.analytics-donut-total{font-size:28px;font-weight:700;line-height:1}.analytics-donut-total-label{color:var(--text-secondary);margin-top:2px;font-size:12px}.analytics-donut-legend{flex-direction:column;gap:10px;display:flex}.analytics-donut-legend-item{grid-template-columns:12px 1fr auto;align-items:center;gap:10px;font-size:13px;display:grid}.analytics-donut-swatch{border-radius:50%;width:10px;height:10px}.analytics-donut-legend-name{color:var(--text-primary)}.analytics-donut-legend-pct{color:var(--text-secondary);font-weight:600}.analytics-bar-chart{flex-direction:column;gap:12px;display:flex}.analytics-bar-row{grid-template-columns:110px 1fr 56px;align-items:center;gap:12px;display:grid}.analytics-bar-label{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.analytics-bar-track{background:#f3f4f6;border-radius:999px;height:10px;overflow:hidden}.analytics-bar-fill{border-radius:999px;min-width:0;height:100%;transition:width .5s}.analytics-bar-fill--blue{background:#93c5fd}.analytics-bar-fill--purple{background:#8b5cf6}.analytics-bar-fill--green{background:#22c55e}.analytics-bar-value{color:var(--text-primary);text-align:right;font-size:13px;font-weight:600}@media (max-width:1100px){.analytics-kpi-grid{grid-template-columns:repeat(2,1fr)}.analytics-charts-grid{grid-template-columns:1fr}.analytics-donut-wrap{grid-template-columns:1fr;justify-items:center}}@media (max-width:640px){.analytics-kpi-grid{grid-template-columns:1fr}.analytics-toolbar{flex-direction:column;align-items:stretch}.analytics-tab-group{flex-wrap:wrap;justify-content:flex-start}.analytics-bar-row{grid-template-columns:80px 1fr 48px}}.page-loading-skeleton{min-height:240px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.page-loading-spinner{border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.page-loading-text{margin:0;font-size:14px;font-weight:500}.skip-to-content{z-index:10000;background:var(--color-primary);color:#fff;border-radius:0 0 8px;padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-to-content:focus{left:0}.header-menu-btn{border:1px solid var(--border-color);width:40px;height:40px;color:var(--text-primary);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;display:none}.sidebar-backdrop{z-index:99;cursor:pointer;background:#0f172a73;border:none;display:none;position:fixed;inset:0}.portal-review-icon{color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.badge{letter-spacing:.01em;font-weight:600}@media (max-width:768px){.header-menu-btn{flex-shrink:0;display:inline-flex}.sidebar-backdrop{display:block}.sidebar{z-index:120;transition:transform .25s;transform:translate(-100%)}.app-shell.sidebar-open .sidebar{transform:translate(0)}.app-shell{width:100%;max-width:100%;display:block;overflow-x:hidden}.main-area{width:100%;max-width:100%;margin-left:0}:root{--content-padding:16px;--header-height:56px}.header{z-index:100;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"menu title actions";align-items:center;gap:8px;height:auto;min-height:56px;padding:10px 12px;display:grid;overflow:visible}.header-actions{z-index:110;flex-shrink:0;grid-area:actions;gap:6px;position:relative;overflow:visible}.header .user-profile-dropdown{z-index:120;overflow:visible}.header .user-profile-menu{top:calc(var(--header-height,56px) + 4px);z-index:300;width:min(280px,100vw - 24px);position:fixed;left:auto;right:12px;box-shadow:0 16px 40px #0f172a2e}.header .notification-bell{z-index:120;overflow:visible}.header .notification-panel{top:calc(var(--header-height,56px) + 4px);z-index:300;width:min(360px,100vw - 24px);position:fixed;left:auto;right:12px;box-shadow:0 16px 40px #0f172a2e}.header-title-block{display:contents}.header-menu-btn{grid-area:menu}.header-title-text{grid-area:title;min-width:0;overflow:hidden}.header-page-title{white-space:nowrap;text-overflow:ellipsis;font-size:16px;overflow:hidden}.header-page-subtitle{display:none}.header-user-btn{background:0 0;border:none;justify-content:center;gap:0;width:36px;min-width:36px;height:36px;padding:0}.header-user-btn .header-user-info,.header-user-btn .header-user-chevron{display:none!important}.header-icon-btn{flex-shrink:0;width:36px;height:36px;padding:0}.page-content>*,.card,.alert,.comms-card,.audit-page,.providers-page,.providers-table-card,.patients-toolbar,.patients-stats-grid{min-width:0;max-width:100%}.stats-grid,.analytics-kpi-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.filter-bar{flex-direction:column;align-items:stretch;gap:10px}.search-input-wrapper{flex:none;width:100%;max-width:none;min-width:0!important}.filter-select{width:100%}.filter-bar-actions{flex-direction:column;align-items:stretch;width:100%;margin-left:0}.filter-bar-actions .btn{white-space:normal;justify-content:center;width:100%}.table-wrapper{-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;overflow:auto visible}.table-wrapper--menu-visible{overflow:auto visible}.data-table{min-width:640px}.comms-table-wrap{-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;overflow-x:auto}.comms-table{min-width:560px}.table-provider-select{min-width:120px;max-width:none}.table-col-hide-mobile{display:none}.table-footer{flex-direction:column;align-items:stretch;gap:10px}.pagination{flex-wrap:wrap;justify-content:center}.page-header,.alert--with-action{flex-direction:column;align-items:stretch}.alert-body{min-width:0}.card-header{flex-wrap:wrap;gap:12px}.booking-portal-header{flex-direction:column;align-items:flex-start}.dashboard-portal-links{grid-template-columns:1fr}.analytics-toolbar{flex-direction:column;align-items:stretch}.analytics-tab-group{flex-wrap:wrap}.patients-toolbar{flex-direction:column;align-items:stretch}.patients-toolbar-filters{flex-direction:column;align-items:stretch;width:100%}.patients-search{width:100%;min-width:0;max-width:none}.patients-toolbar .filter-select{width:100%}.patients-add-btn{justify-content:center;width:100%}.comms-log-filters{flex-direction:column;align-items:stretch}.comms-log-filters .search-input-wrapper{flex:none;width:100%;min-width:0}.comms-log-filters .filter-select{width:100%;min-width:0}.comms-log-footer{flex-direction:column;align-items:stretch}.audit-page,.comms-card{min-width:0;max-width:100%}.responsive-split-layout{flex-direction:column}.responsive-split-layout>*{width:100%;min-width:0!important;position:static!important}.staff-page-card{padding:16px}.staff-tabs-row{flex-direction:column;align-items:stretch;gap:12px}.staff-tabs{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.staff-tab-btn{white-space:nowrap;flex-shrink:0;padding:10px 14px;font-size:13px}.staff-toolbar{flex-direction:column;align-items:stretch}.staff-search-wrap{width:100%;max-width:none}.staff-permissions-layout{flex-direction:column;gap:16px}.staff-permissions-roles{width:100%}.staff-permissions-header{flex-direction:column;align-items:stretch;gap:12px}.staff-permissions-actions{flex-direction:column;align-items:stretch;width:100%}.staff-permissions-actions .btn{justify-content:center;width:100%}.permissions-matrix{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.staff-role-overview-desc{min-width:0}.providers-toolbar{flex-direction:column;align-items:stretch}.providers-toolbar-left{flex-direction:column;align-items:stretch;width:100%}.providers-search-wrap,.providers-filter-select{width:100%;min-width:0}.providers-toolbar>.btn{justify-content:center;width:100%}.appt-cal-clinic-header{flex-direction:column;align-items:stretch;gap:12px}.appt-cal-summary-row{flex-direction:column;align-items:stretch}.appt-cal-location-tabs,.appt-cal-site-tabs{flex-wrap:wrap}.modal-overlay{align-items:flex-end;padding:12px}.modal,.modal-lg,.modal-xl,.modal-2xl{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;max-height:calc(100vh - 24px)}.modal-header,.modal-body,.modal-footer{padding-left:16px;padding-right:16px}}@media (max-width:480px){:root{--content-padding:12px}.stats-grid,.analytics-kpi-grid,.patients-stats-grid{grid-template-columns:1fr!important}.header-page-title{font-size:15px}.stat-card{padding:14px 16px}.data-table td.table-actions-col{vertical-align:top;min-width:148px}.table-actions{flex-flow:row;align-items:center}.table-actions .btn{justify-content:center;width:auto;padding-left:10px;padding-right:10px}}@media (min-width:1920px){.waiting-room-shell{font-size:1.1rem}.waiting-room-name{font-size:1.25rem}}@media (min-width:2560px){.waiting-room-shell{font-size:1.25rem}.waiting-room-name{font-size:1.5rem}}.form-library-page .page-title{margin:0 0 4px;font-size:24px;font-weight:700}.form-library-page .page-subtitle{color:var(--text-secondary);margin:0}.form-library-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.form-library-stats{margin-bottom:16px}.form-library-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.form-library-filters{flex-wrap:wrap;gap:8px;display:flex}.form-library-filter{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px;font-size:12px}.form-library-filter.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.form-library-list{flex-direction:column;gap:12px;display:flex}.form-library-empty{color:var(--text-secondary);padding:24px}.form-library-card{border:1px solid var(--border-color);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);background:#fff;padding:18px 20px}.form-library-card-top{align-items:flex-start;gap:14px;display:flex}.form-library-card-icon{width:40px;height:40px;color:var(--color-primary);background:#eef4ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.form-library-card-body{flex:1;min-width:0}.form-library-card-headline{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.form-library-card-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700;line-height:1.3}.form-library-card-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.form-library-tag{color:var(--color-primary);white-space:nowrap;background:#eef4ff;border:1px solid #0049b938;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600}.form-library-tag.muted{color:var(--text-secondary);background:#f9fafb;border-color:#d1d5db}.form-library-tag.accent{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.form-library-card-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;line-height:1.45;display:flex}.form-library-card-meta-sep{color:#cbd5e1}.form-library-card-meta-muted{color:#9ca3af}.form-library-card-desc{color:var(--text-primary);margin:10px 0 0;font-size:14px;line-height:1.5}.form-library-card-footer{color:#9ca3af;align-items:flex-start;gap:8px;margin-top:12px;font-size:12px;line-height:1.45;display:flex}.form-library-card-footer svg{color:#9ca3af;flex-shrink:0;margin-top:1px}.form-library-card-footer strong{color:var(--text-secondary);font-weight:600}.form-library-card-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:8px;display:flex}.form-library-rules-btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.form-library-icon-btn{justify-content:center;align-items:center;width:34px;min-width:34px;height:34px;padding:0;display:inline-flex}.form-library-menu-wrap{position:relative}.form-library-menu{border:1px solid var(--border-color);box-shadow:var(--shadow-modal);z-index:20;background:#fff;border-radius:8px;flex-direction:column;min-width:160px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.form-library-menu button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:13px}.form-library-menu button:hover{background:var(--surface-hover)}.form-library-menu button.danger{color:var(--color-danger)}.form-library-upload-drop{text-align:center;cursor:pointer;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;flex-direction:column;gap:6px;padding:32px;display:flex}.form-library-modal .modal-header,.form-library-modal .modal-body,.form-library-modal .modal-footer{padding-left:28px;padding-right:28px}.form-library-modal-body{flex-direction:column;gap:16px;display:flex}.form-library-modal-intro{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.form-library-toggle-options{border-top:1px solid var(--border-color);flex-direction:column;gap:4px;padding-top:4px;display:flex}.form-library-toggle-row{justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.form-library-toggle-label{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.4}.form-library-preview-frame,.form-library-preview-meta{width:100%}.form-library-preview-frame{border:1px solid var(--border-color);border-radius:8px;min-height:480px}.form-library-pdf-placeholder{text-align:center;color:var(--text-secondary);background:#f8fafc;border-radius:8px;padding:48px}.form-library-rules-list{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.form-library-rules-list li{background:#f8fafc;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.form-library-add-rule{border-top:1px solid var(--border-color);padding-top:16px}.form-library-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0;display:grid}.registration-forms-shell{width:100%;max-width:1200px;margin:0 auto}.registration-forms-topbar{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding-bottom:20px;display:flex}.registration-forms-page-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 6px;font-size:28px;font-weight:700}.registration-forms-page-sub{color:var(--text-secondary);margin:0;font-size:14px}.registration-forms-topbar-progress{flex-direction:column;align-items:flex-end;gap:6px;min-width:200px;display:flex}.registration-forms-progress-label{color:var(--text-secondary);font-size:13px;font-weight:600}.registration-forms-progress-track{background:#e5e7eb;border-radius:999px;width:200px;height:8px;overflow:hidden}.registration-forms-progress-fill{background:linear-gradient(90deg,#10b981,#059669);border-radius:999px;height:100%;transition:width .25s}.registration-forms-progress-fraction{color:var(--text-secondary);font-size:12px;font-weight:700}.registration-forms-layout{border:1px solid var(--border-color);background:#fff;border-radius:12px;grid-template-columns:300px minmax(0,1fr);gap:0;min-height:560px;display:grid;overflow:hidden}.registration-forms-sidebar{border-right:1px solid var(--border-color);background:#f8fafc;max-height:calc(100vh - 220px);padding:20px 16px;overflow-y:auto}.registration-sidebar-patient{border:1px solid var(--border-color);background:#fff;border-radius:10px;margin-bottom:20px;padding:14px}.registration-sidebar-patient-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.registration-sidebar-patient-head h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:0;font-size:11px;font-weight:700}.registration-sidebar-status{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700}.registration-sidebar-status.complete{color:#047857;background:#ecfdf5}.registration-sidebar-status.pending{color:#c2410c;background:#fff7ed}.registration-sidebar-patient-list{flex-direction:column;gap:10px;margin:0;display:flex}.registration-sidebar-patient-list dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:2px;font-size:10px;font-weight:600}.registration-sidebar-patient-list dd{color:var(--text-primary);margin:0;font-size:13px;font-weight:500;line-height:1.35}.registration-forms-sidebar-section{margin-bottom:20px}.registration-forms-sidebar-section h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:0 0 10px;font-size:11px;font-weight:700}.registration-forms-sidebar ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.registration-forms-nav-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;gap:10px;width:100%;padding:10px 10px 10px 8px;transition:background .15s;display:flex;position:relative}.registration-forms-nav-item:hover{background:#ffffffb3}.registration-forms-nav-item.active{background:#fff;box-shadow:0 1px 3px #0000000f}.registration-forms-nav-item.active:after{content:"";background:var(--color-primary);border-radius:3px 0 0 3px;width:3px;position:absolute;top:6px;bottom:6px;right:0}.registration-forms-nav-item.signed .registration-forms-nav-status{color:#10b981}.registration-forms-nav-status{color:#9ca3af;flex-shrink:0;align-items:flex-start;padding-top:1px;display:flex}.registration-forms-nav-text strong{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3;display:block}.registration-forms-nav-text small{color:var(--text-secondary);margin-top:2px;font-size:11px;line-height:1.3;display:block}.registration-forms-main{background:#fff;flex-direction:column;min-width:0;padding:24px 28px;display:flex}.registration-forms-main-header{margin-bottom:16px}.registration-forms-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.registration-forms-form-count{letter-spacing:.04em;color:var(--color-primary);font-size:11px;font-weight:700}.registration-forms-category-pill{color:var(--color-primary);background:var(--color-primary-light,#eff6ff);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.registration-forms-category-pill.approved{color:#047857;background:#ecfdf5}.registration-forms-main-header h2{color:var(--text-primary);margin:0 0 6px;font-size:22px;font-weight:700}.registration-forms-patient-line{color:var(--text-secondary);margin:0;font-size:13px}.registration-forms-signed-banner{color:#047857;background:#ecfdf5;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:600}.registration-forms-preview-wrap{border:1px solid var(--border-color);border-radius:10px;flex:1;margin-bottom:20px;overflow:hidden}.registration-forms-preview-toolbar{color:#f9fafb;background:#374151;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.registration-forms-preview-filename{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.registration-forms-preview{background:#525659}.registration-forms-pdf-frame{background:#525659;border:none;width:100%;height:52vh;min-height:420px;display:block}.registration-forms-pdf-placeholder{text-align:center;color:var(--text-secondary);background:#f8fafc;justify-content:center;align-items:center;min-height:200px;padding:48px 24px;display:flex}.registration-forms-signing{border-top:1px solid var(--border-color);padding-top:20px}.registration-forms-consent{cursor:pointer;align-items:flex-start;gap:10px;margin:0 0 16px;font-size:14px;line-height:1.5;display:flex}.registration-forms-consent input{width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0;margin-top:3px}.registration-forms-signature-tabs{border:1px solid var(--border-color);border-radius:8px;gap:0;width:fit-content;margin-bottom:12px;display:flex;overflow:hidden}.registration-forms-signature-tabs button{cursor:pointer;color:var(--text-secondary);border:none;border-right:1px solid var(--border-color);background:#fff;padding:10px 18px;font-size:13px;font-weight:600}.registration-forms-signature-tabs button:last-child{border-right:none}.registration-forms-signature-tabs button.active{color:var(--color-primary);background:var(--color-primary-light,#eff6ff)}.registration-forms-canvas-wrap{background:#fafafa;border:2px dashed #d1d5db;border-radius:10px;position:relative;overflow:hidden}.registration-forms-canvas{cursor:crosshair;touch-action:none;background:0 0;width:100%;height:160px;display:block}.registration-forms-canvas-hint{color:#9ca3af;pointer-events:none;font-size:12px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.registration-forms-type-signature{padding:16px;font-family:cursive,Segoe Script,sans-serif;font-size:24px}.registration-forms-signature-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.registration-forms-ack-btn{margin-top:4px}.registration-forms-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding:16px 0 4px;display:flex}.registration-forms-footer-prev,.registration-forms-footer-next{min-width:120px}.registration-forms-dots{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.registration-forms-dot{cursor:pointer;background:#d1d5db;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:background .15s,transform .15s}.registration-forms-dot:hover{transform:scale(1.15)}.registration-forms-dot.active{background:var(--color-primary);transform:scale(1.2)}.registration-forms-dot.signed{background:#10b981}.registration-forms-dot.active.signed{background:var(--color-primary);box-shadow:0 0 0 2px #10b981}.registration-forms-submit-all{min-width:180px;font-weight:600}.registration-forms-empty-card{text-align:center;border:1px solid var(--border-color);background:#fff;border-radius:12px;padding:32px}.registration-workflow{flex-direction:column;gap:0;width:100%;display:flex}.registration-workflow-forms{width:100%;margin-top:0}.registration-workflow-details{max-width:720px;margin:0 auto;padding:20px 24px}.registration-workflow-section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.registration-workflow-section-header h2{margin:0;font-size:18px}.registration-pending-badge{white-space:nowrap;color:#c2410c;background:#fff7ed;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.registration-complete-badge{white-space:nowrap;color:#047857;background:#ecfdf5;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.registration-patient-summary{padding:20px 24px}.registration-patient-summary.embedded{box-shadow:none;background:0 0;border:none;padding:0}.registration-patient-summary-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.registration-patient-summary-title{margin:0 0 4px;font-size:22px;font-weight:700}.registration-patient-summary-sub{color:var(--text-secondary);margin:0;font-size:14px}.registration-patient-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0;display:grid}.registration-patient-summary-grid dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:4px;font-size:11px;font-weight:700}.registration-patient-summary-grid dd{color:var(--text-primary);margin:0;font-size:15px}.registration-forms-nav-item.patient-tab .registration-forms-nav-text small{text-transform:capitalize}.registration-forms-empty{text-align:center;padding:24px}.registration-done-card{width:100%;max-width:560px;margin:0 auto;padding:32px 28px}.registration-done-content{text-align:center;flex-direction:column;align-items:center;display:flex}.registration-done-title{margin-bottom:8px;font-size:26px}.registration-done-lead{max-width:420px;margin-bottom:0;font-size:15px;line-height:1.5}.registration-done-spot{width:100%;margin:28px 0 24px}.registration-done-spot-value{letter-spacing:.06em;margin-top:4px;font-size:52px;font-weight:800}.registration-done-instructions{background:var(--content-bg);text-align:left;border-radius:12px;width:100%;padding:16px 18px}.registration-done-instructions-title{color:var(--text-primary);margin:0 0 6px;font-size:13px;font-weight:700}.registration-done-instructions-text{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.55}@media (max-width:640px){.registration-done-card{border-radius:12px;max-width:none;padding:24px 18px}.registration-done-title{font-size:22px}.registration-done-lead{font-size:14px}.registration-done-spot{margin:22px 0 20px;padding:20px 16px}.registration-done-spot-value{letter-spacing:.04em;font-size:42px}.registration-done-instructions{padding:14px 16px}}@media (min-width:641px) and (max-width:1024px){.registration-done-card{max-width:520px;padding:28px 24px}.registration-done-spot-value{font-size:48px}}@media (max-width:900px){.registration-forms-layout{grid-template-columns:1fr}.registration-forms-sidebar{border-right:none;border-bottom:1px solid var(--border-color);max-height:none}.registration-forms-topbar{flex-direction:column}.registration-forms-topbar-progress{align-items:flex-start;width:100%}.registration-forms-progress-track{width:100%}.registration-forms-footer{flex-wrap:wrap}.registration-forms-dots{order:3;width:100%;margin-top:8px}.registration-patient-summary-grid,.form-library-rule-grid{grid-template-columns:1fr}.form-library-header,.form-library-card-top{flex-direction:column}.form-library-card-actions{flex-wrap:wrap;justify-content:flex-end;width:100%;margin-left:0}}.queue-mgmt-page{flex-direction:column;gap:16px;display:flex}.queue-location-bar{justify-content:flex-end;align-items:center;gap:10px;display:flex}.queue-location-select{max-width:280px}.queue-stats-row{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.queue-stat-card{text-align:center;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:96px;padding:20px 22px;display:flex}.queue-stat-value{font-size:36px;font-weight:700;line-height:1}.queue-stat-label{color:#64748b;font-size:13px;font-weight:500}.queue-stat-total{background:#fff;border-color:#e2e8f0}.queue-stat-total .queue-stat-value{color:#0f172a}.queue-stat-waiting{background:#eff6ff;border-color:#bfdbfe}.queue-stat-waiting .queue-stat-value{color:#2563eb}.queue-stat-called{background:#ecfdf5;border-color:#bbf7d0}.queue-stat-called .queue-stat-value{color:#16a34a}.queue-stat-hold{background:#fffbeb;border-color:#fde68a}.queue-stat-hold .queue-stat-value{color:#d97706}.queue-stat-urgent{background:#fef2f2;border-color:#fecaca}.queue-stat-urgent .queue-stat-value{color:#dc2626}.queue-panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px 16px;box-shadow:0 1px 2px #0f172a0a}.queue-toolbar{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;padding-bottom:14px;display:flex}.queue-toolbar-left,.queue-toolbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.queue-toolbar-right{flex-direction:column;align-items:flex-end;gap:8px}.queue-toolbar-actions{align-items:center;gap:10px;display:flex}.queue-toolbar-hint{color:#94a3b8;font-size:12px}.queue-avg-wait{color:#64748b;align-items:center;gap:6px;font-size:14px;display:inline-flex}.queue-selection-bar{background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:10px;padding:6px 8px 6px 14px;font-size:14px;display:flex}.queue-selection-count{color:#1d4ed8;font-weight:600}.queue-clear-selection{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:999px;width:24px;height:24px;font-size:18px;line-height:1}.queue-clear-selection:hover{color:#1e3a8a;background:#dbeafe}.queue-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.queue-btn:disabled{opacity:.55;cursor:not-allowed}.queue-btn-sm{border-radius:9px;padding:8px 14px;font-size:13px}.queue-btn-success{color:#fff;background:#16a34a;border-color:#16a34a}.queue-btn-success:hover:not(:disabled){background:#15803d;border-color:#15803d}.queue-btn-primary{color:#fff;background:#2563eb;border-color:#2563eb}.queue-btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.queue-btn-outline{color:#0f172a;background:#fff;border-color:#d1d5db}.queue-btn-outline:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.queue-table-head{margin-bottom:4px}.queue-table-title{color:#0f172a;margin:0;font-size:17px;font-weight:700}.queue-table-wrap{overflow-x:auto}.queue-table{border-collapse:collapse;width:100%}.queue-table tr.queue-row{border-bottom:1px solid #f1f5f9}.queue-table tr.queue-row:last-child{border-bottom:none}.queue-table tr.queue-row.selected{background:#f8fafc}.queue-table tr.queue-row-alert{background:#fff7f7}.queue-table tr.queue-row-urgent.queue-row-alert{background:#fff1f2}.queue-table td{vertical-align:middle;padding:18px 12px}.queue-empty{text-align:center;color:var(--text-secondary);padding:40px!important}.queue-check-cell{width:42px;padding-left:4px!important}.queue-index-cell{color:#94a3b8;width:28px;font-size:14px;font-weight:600;padding-left:0!important}.queue-checkbox{accent-color:#2563eb;cursor:pointer;width:16px;height:16px}.queue-patient-row{align-items:flex-start;gap:12px;display:flex}.queue-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:inline-flex}.queue-patient-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.queue-patient-name-row strong{color:#0f172a;font-size:15px}.queue-reg-warning-icon{color:#dc2626;flex-shrink:0}.queue-type-badge{border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.queue-type-badge.walk-in{color:#c2410c;background:#ffedd5}.queue-type-badge.scheduled{color:#1d4ed8;background:#dbeafe}.queue-reg-badge{color:#b91c1c;background:#fee2e2;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.queue-patient-meta{color:#64748b;margin-top:4px;font-size:13px;line-height:1.45}.queue-wait-stack{flex-direction:column;gap:2px;min-width:72px;display:flex}.queue-wait-value{color:#0f172a;font-size:22px;font-weight:700;line-height:1}.queue-wait-value.queue-wait-long{color:#dc2626}.queue-wait-value.queue-wait-medium{color:#ea580c}.queue-wait-value.queue-wait-fresh{color:#64748b;font-size:16px;font-weight:600}.queue-wait-sub{color:#94a3b8;font-size:12px}.queue-payment-stack{flex-direction:column;gap:4px;min-width:92px;display:flex}.queue-payment-badge{border-radius:999px;align-items:center;width:fit-content;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.queue-payment-badge-paid{color:#15803d;background:#dcfce7}.queue-payment-badge-unpaid{color:#b91c1c;background:#fee2e2}.queue-payment-badge-partial{color:#c2410c;background:#ffedd5}.queue-payment-badge-link,.queue-payment-badge-pending{color:#6d28d9;background:#ede9fe}.queue-payment-badge-waived{color:#475569;background:#f1f5f9}.queue-payment-badge-review{color:#b45309;background:#fef3c7}.queue-payment-badge-none{color:#94a3b8;background:#f8fafc}.queue-payment-amount{font-size:13px;font-weight:600}.queue-payment-amount-paid{color:#16a34a}.queue-payment-amount-unpaid{color:#dc2626}.queue-payment-amount-partial{color:#d97706}.queue-payment-amount-link,.queue-payment-amount-pending{color:#7c3aed}.queue-payment-amount-waived,.queue-payment-amount-none{color:#64748b}.queue-payment-amount-review{color:#b45309}.queue-status-pill{border-radius:999px;justify-content:center;align-items:center;min-width:88px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex}.queue-status-waiting{color:#1d4ed8;background:#dbeafe}.queue-status-called{color:#15803d;background:#dcfce7}.queue-status-hold{color:#b45309;background:#fef3c7}.queue-status-followup{color:#c2410c;background:#ffedd5}.queue-status-frontdesk{color:#4338ca;background:#e0e7ff}.queue-status-urgent{color:#b91c1c;background:#fee2e2}.queue-status-inqueue{color:#4338ca;background:#e0e7ff}.queue-status-completed{color:#475569;background:#f1f5f9}.queue-status-noshow{color:#92400e;background:#fef3c7}.queue-note-btn{color:#c2410c;cursor:pointer;background:#fff7ed;border:1px solid #fdba74;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.queue-note-btn:hover{background:#ffedd5}.queue-row-attention{box-shadow:inset 3px 0 #f97316}.queue-note-overlay{z-index:1200;background:#0f172a59;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.queue-note-modal{background:#fff;border-radius:12px;width:min(480px,100%);padding:20px;box-shadow:0 20px 40px #0f172a2e}.queue-note-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.queue-note-modal-header h3{margin:0;font-size:16px}.queue-note-modal-header p{color:#64748b;margin:4px 0 0;font-size:13px}.queue-note-close{cursor:pointer;color:#64748b;background:0 0;border:none;font-size:22px;line-height:1}.queue-note-meta{color:#64748b;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:12px;display:flex}.queue-note-body{white-space:pre-wrap;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;font-size:14px;line-height:1.5}.queue-table tr.queue-row-done{background:#fafafa}.queue-table tr.queue-row-done .queue-wait-value,.queue-table tr.queue-row-done .queue-patient-name-row strong{color:#64748b}.queue-actions-cell{white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.queue-actions-spacer{width:88px}.queue-called-chip{color:#15803d;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;min-width:88px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.queue-collect-btn{min-width:88px}.queue-reorder{background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;align-items:center;gap:0;display:inline-flex;overflow:hidden}.queue-reorder-btn{color:#64748b;cursor:pointer;background:#fff;border:none;justify-content:center;align-items:center;width:30px;height:18px;display:inline-flex}.queue-reorder-btn:hover:not(:disabled){color:#0f172a;background:#f8fafc}.queue-reorder-btn:disabled{opacity:.35;cursor:not-allowed}.queue-reorder-grip{color:#94a3b8;border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;justify-content:center;align-items:center;width:30px;height:20px;display:inline-flex}.queue-menu-wrap{flex-shrink:0;position:relative}.queue-menu-btn{cursor:pointer;color:#475569;background:#fff;border:1px solid #d1d5db;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.queue-menu-btn:hover,.queue-menu-btn.open{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.queue-menu{z-index:500;background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-width:210px;padding:6px 0;overflow:hidden;box-shadow:0 16px 40px #0f172a24}.queue-menu-floating{position:fixed;transform:translate(-100%)}.queue-menu-divider{background:#f1f5f9;height:1px;margin:6px 0}.queue-menu-item{text-align:left;cursor:pointer;color:#0f172a;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 16px;font-size:14px;font-weight:500;display:flex}.queue-menu-item:hover:not(:disabled){background:#f8fafc}.queue-menu-item:disabled{opacity:.5;cursor:not-allowed}.queue-menu-item-sms,.queue-menu-item-sms svg{color:#2563eb}.queue-menu-item-called svg{color:#16a34a}.queue-menu-item-urgent,.queue-menu-item-urgent span,.queue-menu-item-urgent svg{color:#dc2626}.queue-menu-item-hold svg{color:#d97706}.queue-menu-item-waiting svg,.queue-menu-item-remove{color:#64748b}.queue-menu-item-remove svg{color:#94a3b8}.queue-menu-item-completed{color:#15803d}.queue-menu-item-completed svg{color:#16a34a}.queue-footer-note{color:#94a3b8;text-align:center;border-top:1px solid #f1f5f9;margin:16px 0 0;padding-top:14px;font-size:12px}.queue-sms-recipients{border:1px solid var(--border-color);border-radius:var(--radius-input);max-height:160px;margin-bottom:0;overflow-y:auto}.queue-sms-recipient-row{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:10px 14px;font-size:14px;display:flex}.queue-sms-recipient-row:last-child{border-bottom:none}.queue-sms-recipient-phone{color:var(--text-secondary)}.queue-sms-modal{max-width:520px}.queue-sms-header{border-bottom:none;padding:24px 24px 12px}.queue-sms-subtitle{color:var(--text-secondary);margin:6px 0 0;font-size:14px}.queue-sms-body{flex-direction:column;gap:16px;padding:0 24px 8px;display:flex}.queue-sms-body .form-group{margin:0}.queue-sms-preview{resize:vertical;min-height:110px}.queue-sms-footer{padding:16px 24px 24px}.queue-sms-hint{color:#0369a1;margin:0;font-size:13px}.collect-payment-body .form-group{margin-bottom:16px}.collect-payment-body .form-group:last-child{margin-bottom:0}.collect-payment-modal{max-width:560px}.collect-payment-header{border-bottom:none;align-items:flex-start;padding:24px 24px 12px}.collect-payment-body{padding:0 24px 8px}.collect-payment-footer{padding:16px 24px 24px}.collect-payment-title{align-items:center;gap:10px;font-size:20px;display:flex}.collect-payment-subtitle{color:var(--text-secondary);margin:6px 0 0;font-size:14px;line-height:1.4}.collect-payment-icon{background:#dcfce7;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;line-height:1;display:inline-flex}.collect-payment-summary{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;padding:16px;display:grid}.collect-payment-summary>div{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.collect-payment-summary-label{color:var(--text-secondary);font-size:12px;font-weight:500}.collect-payment-summary-value{font-size:22px;font-weight:700;line-height:1.1}.collect-payment-method-label{margin-bottom:10px;display:block}.collect-payment-methods{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.collect-payment-method{cursor:pointer;color:#0f172a;background:#fff;border:2px solid #e5e7eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:96px;padding:16px 8px 14px;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.collect-payment-method:hover{background:#f8fafc;border-color:#cbd5e1}.collect-payment-method.active{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 1px #2563eb26}.collect-payment-method-icon{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;line-height:1;display:inline-flex}.collect-payment-method-icon-cash{background:#dcfce7}.collect-payment-method-icon-card{background:#dbeafe}.collect-payment-method-icon-check{background:#fce7f3}.collect-payment-method-icon-payment_link{background:#ede9fe}.collect-payment-amount-input{font-size:16px;font-weight:600}.collect-payment-submit{color:#fff;background:#111827;border:1px solid #111827}.collect-payment-submit:hover:not(:disabled){background:#1f2937;border-color:#1f2937}.collect-payment-submit-link{background:#2563eb;border-color:#2563eb}.collect-payment-submit-link:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.collect-payment-method-panel{border:1px solid var(--border-color);background:#f8fafc;border-radius:10px;margin-bottom:12px;padding:14px}.collect-payment-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.collect-payment-link-panel{background:#faf5ff;border-color:#c4b5fd}.collect-payment-link-providers{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.collect-payment-link-provider{cursor:pointer;text-align:left;color:var(--text-primary);background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s;display:flex}.collect-payment-link-provider strong{font-size:14px;font-weight:650}.collect-payment-link-provider span{color:var(--text-secondary);font-size:11px}.collect-payment-link-provider.active{border-color:var(--color-primary);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-primary) 35%, transparent)}.collect-payment-link-provider.disabled,.collect-payment-link-provider:disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}@media (max-width:640px){.collect-payment-link-providers{grid-template-columns:1fr}}.collect-payment-link-note{color:#6b21a8;margin:0 0 12px;font-size:13px}.collect-payment-sms-preview{color:#e2e8f0;background:#0f172a;border-radius:8px;padding:12px;font-size:13px;line-height:1.5}.payments-page{flex-direction:column;gap:18px;display:flex}.payments-kpi-row{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.payments-kpi{background:#fff;border:1px solid #e5e7eb;border-radius:14px;align-items:flex-start;gap:14px;padding:18px 20px;display:flex;box-shadow:0 1px 2px #0f172a0a}.payments-kpi-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.payments-kpi-icon-green{color:#fff;background:#22c55e}.payments-kpi-icon-blue{color:#fff;background:#3b82f6}.payments-kpi-icon-red{color:#fff;background:#ef4444}.payments-kpi-icon-orange{color:#fff;background:#f97316}.payments-kpi-body{min-width:0}.payments-kpi-value{margin-bottom:4px;font-size:28px;font-weight:700;line-height:1.1}.payments-kpi-value-green{color:#16a34a}.payments-kpi-value-blue{color:#2563eb}.payments-kpi-value-red{color:#dc2626}.payments-kpi-value-orange{color:#ea580c}.payments-kpi-title{color:var(--text-primary);font-size:14px;font-weight:600}.payments-kpi-sub{color:var(--text-secondary);margin-top:2px;font-size:12px}.payments-method-pills{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.payments-method-pill{cursor:pointer;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:12px;padding:10px 16px;font-size:13px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex;box-shadow:0 1px 2px #0f172a08}.payments-method-pill:hover{background:#f8fafc;border-color:#cbd5e1}.payments-method-pill.active{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 1px #3b82f626}.payments-method-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.payments-method-icon-cash{color:#15803d;background:#dcfce7}.payments-method-icon-check{color:#7c3aed;background:#ede9fe}.payments-method-icon-online{color:#2563eb;background:#dbeafe}.payments-method-icon-link{color:#64748b;background:#f1f5f9}.payments-method-pill-text{flex-direction:column;gap:2px;min-width:0;display:flex}.payments-method-pill-text strong{color:var(--text-primary);font-size:14px;font-weight:600}.payments-method-pill-text span{color:var(--text-secondary);font-size:12px}.payments-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.payments-search{flex:1;min-width:min(280px,100%);max-width:none}.payments-filter-btn{border:1px solid var(--input-border);border-radius:var(--radius-input);color:var(--text-primary);cursor:pointer;white-space:nowrap;background:#fff;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s,background .15s;display:inline-flex}.payments-filter-btn:hover{background:#f8fafc;border-color:#cbd5e1}.payments-filter-btn.active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.payments-filter-count{color:#fff;background:#2563eb;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.payments-filter-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px;box-shadow:0 4px 12px #0f172a0f}.payments-filter-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.payments-filter-field{margin-bottom:0}.payments-filter-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;display:flex}.payments-meta-row{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.payments-meta-export{color:#94a3b8;font-size:12px}.payments-table-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.payments-table{font-size:13px}.payments-empty{text-align:center;color:var(--text-secondary);padding:32px!important}.payments-patient-cell{flex-direction:column;display:flex}.payments-patient-ref{color:var(--text-secondary);font-size:11px}.payments-method-badge,.payments-status-badge{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.payments-method-cash{color:#15803d;background:#dcfce7}.payments-method-check{color:#6d28d9;background:#ede9fe}.payments-method-online{color:#1d4ed8;background:#dbeafe}.payments-method-link{color:#475569;background:#f1f5f9}.payments-status-paid{color:#15803d;background:#dcfce7}.payments-status-partial{color:#b45309;background:#fef3c7}.payments-status-link{color:#0e7490;background:#cffafe}.payments-status-pending{color:#c2410c;background:#ffedd5}.payments-status-review,.payments-status-failed{color:#b91c1c;background:#fee2e2}.payments-gateway{text-overflow:ellipsis;max-width:120px;font-family:monospace;font-size:11px;overflow:hidden}.payments-stripe-link{white-space:nowrap;max-width:110px}.payments-stripe-link__a{color:var(--color-primary,#0052cc);font-size:12px;font-weight:600;text-decoration:none}.payments-stripe-link__a:hover{text-decoration:underline}.payments-note{max-width:160px;color:var(--text-secondary);font-size:12px}.payments-recon-pending{color:#b45309}.payments-recon-posted{color:#15803d}.payments-tabs{border-bottom:1px solid #e2e8f0;align-items:center;gap:4px;padding-bottom:0;display:flex}.payments-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:600;display:inline-flex;position:relative}.payments-tab:hover{color:#1e293b}.payments-tab.active{color:#1d4ed8;border-bottom-color:#2563eb}.payments-tab-new{color:#fff;letter-spacing:.02em;background:#2563eb;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.2;display:inline-flex}.eod-page{flex-direction:column;gap:18px;display:flex}.eod-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.eod-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.eod-filter-field{min-width:160px;margin-bottom:0}.eod-actions{flex-wrap:wrap;gap:8px;display:flex}.eod-section{flex-direction:column;gap:12px;display:flex}.eod-section-title{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0;font-size:13px;font-weight:700}.eod-summary-grid{grid-template-columns:1.1fr 1.6fr 1fr;align-items:stretch;gap:12px;display:grid}.eod-hero-card{color:#fff;background:linear-gradient(145deg,#2563eb 0%,#1d4ed8 100%);border-radius:14px;padding:22px 24px;box-shadow:0 8px 20px #2563eb40}.eod-hero-label{opacity:.9;margin-bottom:8px;font-size:13px;font-weight:600}.eod-hero-value{margin-bottom:10px;font-size:40px;font-weight:800;line-height:1}.eod-hero-sub{opacity:.88;font-size:13px}.eod-method-cards{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.eod-mini-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex;box-shadow:0 1px 2px #0f172a0a}.eod-mini-top{color:#64748b;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.eod-mini-card strong{color:#0f172a;font-size:20px;font-weight:700}.eod-mini-card--green .eod-mini-top{color:#15803d}.eod-mini-card--purple .eod-mini-top{color:#7c3aed}.eod-mini-card--blue .eod-mini-top{color:#2563eb}.eod-mini-card--orange .eod-mini-top{color:#ea580c}.eod-mini-card--red .eod-mini-top{color:#dc2626}.eod-mini-card--teal .eod-mini-top{color:#0f766e}.eod-status-cards{flex-direction:column;gap:10px;display:flex}.eod-status-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex;box-shadow:0 1px 2px #0f172a0a}.eod-status-card span{color:#64748b;font-size:12px;font-weight:600}.eod-status-card strong{color:#0f172a;font-size:18px}.eod-status-card em{color:#94a3b8;font-size:12px;font-style:normal}.eod-status-card--danger strong{color:#dc2626}.eod-status-card--warn strong{color:#ea580c}.eod-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px;box-shadow:0 1px 3px #0f172a0d}.eod-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.eod-card-title{color:#0f172a;margin:0;font-size:16px;font-weight:700}.eod-card-count{color:#64748b;margin-left:10px;font-size:13px;font-weight:500}.eod-card-sub{color:#64748b;margin:4px 0 0;font-size:13px}.eod-table{font-size:13px}.eod-table tfoot td{background:#f8fafc;font-weight:700}.eod-money-green{color:#16a34a}.eod-money-blue{color:#2563eb}.eod-money-purple{color:#7c3aed}.eod-money-orange{color:#ea580c}.eod-method-apple{color:#b91c1c;background:#fee2e2}.eod-recon-title-wrap{align-items:flex-start;gap:10px;display:flex}.eod-recon-icon{font-size:18px;line-height:1.4}.eod-day-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.eod-day-badge--not_reconciled{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.eod-day-badge--in_review{color:#c2410c;background:#ffedd5}.eod-day-badge--reconciled{color:#15803d;background:#dcfce7}.eod-day-badge--discrepancy_found{color:#b91c1c;background:#fee2e2}.eod-recon-grid{grid-template-columns:1.4fr 1fr;gap:18px;display:grid}.eod-day-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.eod-day-summary-row{justify-content:space-between;gap:12px;font-size:13px;display:flex}.eod-day-summary-row span{color:#64748b}.eod-day-summary-row strong{color:#0f172a;font-weight:600}.eod-discrepancy-field .form-label{color:#b91c1c;align-items:center;gap:6px;display:inline-flex}.eod-discrepancy-input{background:#fef2f2!important;border-color:#fecaca!important}.eod-recon-footer{border-top:1px solid #e5e7eb;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:18px;padding-top:16px;display:flex}.eod-reconciled-by{flex:1;min-width:min(280px,100%);margin-bottom:0}.eod-reconciled-fields{flex-direction:column;flex:1;gap:8px;min-width:min(280px,100%);display:flex}.eod-reconciled-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.eod-reconciled-by .form-input{cursor:default;background:#f8fafc}.eod-audit-caption{color:#94a3b8;margin:6px 0 0;font-size:12px}.eod-perm-hint{color:#b45309}.eod-daily-summary-card{margin-top:8px}.eod-daily-summary-range{color:#64748b;font-weight:600}.eod-date-cell{align-items:center;gap:8px;display:flex}.eod-today-badge{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.eod-failed-cell{color:#dc2626;align-items:center;gap:4px;font-weight:600;display:inline-flex}.eod-view-details{color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.eod-view-details:hover{text-decoration:underline}@media (max-width:1100px){.eod-summary-grid{grid-template-columns:1fr}.eod-method-cards{grid-template-columns:repeat(2,1fr)}.eod-recon-grid{grid-template-columns:1fr}}@media (max-width:640px){.eod-method-cards{grid-template-columns:1fr}.eod-actions{width:100%}.eod-actions .btn{flex:1}}@media print{.payments-tabs,.eod-actions,.eod-recon-footer .btn,.sidebar,.app-header{display:none!important}.eod-page{gap:12px}.eod-card{break-inside:avoid;box-shadow:none}}@media (max-width:1100px){.payments-kpi-row,.payments-method-pills{grid-template-columns:repeat(2,1fr)}.payments-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.payments-kpi-row,.payments-method-pills,.payments-filter-grid{grid-template-columns:1fr}.payments-toolbar{flex-direction:column;align-items:stretch}.payments-filter-btn{justify-content:center}}.portal-field-missing .form-label,.portal-field-missing.portal-form-section-title,.portal-field-missing.portal-billing-card{color:#dc2626}.portal-field-missing .form-input,.portal-field-missing .form-select,.portal-field-missing.portal-billing-card{border-color:#dc2626;box-shadow:0 0 0 1px #dc262640}.portal-field-missing .portal-upload-box,.portal-photo-id-section.portal-field-missing .portal-upload-box{border-color:#dc2626;box-shadow:0 0 0 1px #dc262633}.registration-missing-banner{font-size:14px}@media (max-width:1100px){.queue-stats-row,.payments-kpi-row,.collect-payment-methods{grid-template-columns:repeat(2,1fr)}.collect-payment-row{grid-template-columns:1fr}}.pp-login-page{background:#f0f6ff;justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:Inter,sans-serif;display:flex}.pp-page{color:#0f172a;background:#f0f6ff;min-height:100vh;font-family:Inter,sans-serif}.pp-page--loading{justify-content:center;align-items:center;display:flex}.pp-header{background:var(--color-primary);z-index:100;color:#fff;border-bottom:1px solid #ffffff1f;position:sticky;top:0}.pp-header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:64rem;margin:0 auto;padding:12px 20px;display:flex}.pp-header-brand{align-items:center;gap:10px;display:flex}.pp-logo-icon{color:#fff;background:#ffffff29;border:1px solid #ffffff47;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.pp-logo-name{color:#fff;font-size:16px;font-weight:700;line-height:1.2;display:block}.pp-logo-sub{color:#ffffffd1;font-size:12px;font-weight:500;display:block}.pp-header-actions{align-items:center;gap:12px;display:flex}.pp-notif-wrap{position:relative}.pp-notif-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff8c;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;transition:background .15s,border-color .15s;display:flex;position:relative}.pp-notif-btn:hover{background:#ffffff2e;border-color:#fff}.pp-notif-badge{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.pp-notif-dropdown{z-index:200;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:320px;max-height:400px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.pp-notif-dropdown-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.pp-notif-mark-all{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.pp-notif-empty{text-align:center;color:#64748b;padding:24px 16px;font-size:13px}.pp-notif-list{margin:0;padding:0;list-style:none}.pp-notif-list li{border-bottom:1px solid #f8fafc;padding:12px 16px;font-size:13px}.pp-notif-list li.unread{background:#eff6ff}.pp-notif-type{text-transform:uppercase;color:#64748b;margin-bottom:2px;font-size:11px;font-weight:600;display:block}.pp-notif-list p{color:#0f172a;margin:0 0 4px}.pp-notif-list time{color:#94a3b8;font-size:11px}.pp-avatar-chip{background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.pp-avatar-text{flex-direction:column;gap:1px;min-width:0;display:flex}.pp-avatar-name{color:#fff;font-size:14px;font-weight:700;line-height:1.2}.pp-avatar-sub{color:#fffc;white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:12px;font-weight:500;line-height:1.2;overflow:hidden}.pp-signout-btn{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffffa6;border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.pp-signout-btn:hover{color:#fff;background:#ffffff38;border-color:#fff}.pp-avatar{color:#fff;background:#fff3;border:1px solid #ffffff73;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.pp-main{max-width:64rem;margin:0 auto;padding:24px 20px 48px}.pp-page--employer .pp-header-inner,.pp-page--employer .pp-main,.pp-page--provider .pp-header-inner,.pp-page--provider .pp-main{width:100%;max-width:min(1600px,100% - 48px)}@media (min-width:1800px){.pp-page--employer .pp-header-inner,.pp-page--employer .pp-main,.pp-page--provider .pp-header-inner,.pp-page--provider .pp-main{max-width:min(1760px,100% - 64px)}}.pp-page--employer .employer-visits-card .table-wrapper{overflow-x:auto}.pp-page--employer .employer-visits-table{table-layout:auto;width:100%}.pp-page--employer .employer-visits-table th,.pp-page--employer .employer-visits-table td{padding:12px 14px}.pp-page--employer .employer-visits-table td:nth-child(3){min-width:180px;max-width:320px}.pp-page--employer .employer-visits-table .table-actions-col{white-space:normal;width:auto;min-width:0}.pp-page--employer .employer-row-actions{flex-wrap:nowrap}@media (max-width:1100px){.pp-page--employer .employer-row-actions{flex-wrap:wrap}}.pp-greeting-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.pp-greeting{color:#0f172a;margin:0 0 4px;font-size:24px;font-weight:700}.pp-greeting-sub{color:#64748b;margin:0;font-size:14px}.pp-date-badge{color:#2563eb;white-space:nowrap;background:#eff6ff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.pp-kpi-row{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px;display:grid}.pp-kpi-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:18px 16px 14px;display:flex;box-shadow:0 1px 3px #0f172a0a}.pp-kpi-icon{border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:2px;display:flex}.pp-kpi-icon--blue{color:#2563eb;background:#dbeafe}.pp-kpi-icon--green{color:#15803d;background:#dcfce7}.pp-kpi-icon--orange{color:#ea580c;background:#ffedd5}.pp-kpi-icon--teal{color:#0d9488;background:#ccfbf1}.pp-kpi-icon--purple{color:#7c3aed;background:#ede9fe}.pp-kpi-value{font-size:30px;font-weight:700;line-height:1.1;display:block}.pp-kpi-label{color:#64748b;margin-top:0;font-size:12px;font-weight:500;display:block}.pp-kpi-card--green .pp-kpi-value{color:#15803d}.pp-kpi-card--blue .pp-kpi-value{color:#2563eb}.pp-kpi-card--orange .pp-kpi-value{color:#ea580c}.pp-kpi-card--teal .pp-kpi-value{color:#0d9488}.pp-kpi-card--purple .pp-kpi-value{color:#7c3aed}.pp-active-visit-banner{background:#fffbeb;border:1px solid #fbbf24;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 18px;display:flex}.pp-active-visit-left{align-items:flex-start;gap:12px;min-width:0;display:flex}.pp-active-visit-pulse{color:#d97706;background:#fef3c7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.pp-active-visit-heading{color:#78350f;margin:0 0 4px;font-size:15px}.pp-active-visit-heading strong{color:#451a03;font-weight:700}.pp-active-visit-detail{color:#92400e;margin:0;font-size:13px}.pp-active-visit-btn{color:#fff;cursor:pointer;background:#ea580c;border:none;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:background .15s;display:inline-flex}.pp-active-visit-btn:hover{background:#c2410c}.pp-tabs{border-bottom:1px solid #e2e8f0;align-items:flex-end;gap:4px;margin-bottom:20px;display:flex;overflow:hidden}@media (max-width:640px){.pp-tabs{scrollbar-width:none;-ms-overflow-style:none;overflow:auto hidden}.pp-tabs::-webkit-scrollbar{width:0;height:0;display:none}}.pp-tab{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.pp-tab:hover{color:#2563eb}.pp-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.pp-tab-badge{color:#fff;background:#2563eb;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.pp-tab-badge--alert{background:#ef4444}.pp-tab-content{min-height:200px}.pp-tab-loading{justify-content:center;padding:40px;display:flex}.pp-empty{text-align:center;color:#94a3b8;padding:32px;font-size:14px}.pp-empty--in-panel{padding:48px 24px}.pp-empty--compact{padding:16px 0}.pp-empty--messages{flex:1;justify-content:center;align-items:center;min-height:120px;padding:24px;display:flex}.pp-schedule-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 20px 20px;box-shadow:0 1px 3px #0f172a0a}.pp-schedule-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pp-schedule-panel-title{color:#0f172a;margin:0;font-size:17px;font-weight:700}.pp-schedule-summary-badges{flex-wrap:wrap;gap:8px;display:flex}.pp-schedule-badge{border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.pp-schedule-badge--done{color:#15803d;background:#dcfce7}.pp-schedule-badge--remaining{color:#c2410c;background:#ffedd5}.pp-filter-pills{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.pp-filter-pill{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.pp-filter-pill--filters{cursor:default;color:#475569;font-weight:600}.pp-filter-pill:hover{color:#2563eb;border-color:#93c5fd}.pp-filter-pill.active{color:#fff;background:#2563eb;border-color:#2563eb}.pp-schedule-list{flex-direction:column;gap:0;display:flex}.pp-schedule-card{border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:20px;padding:16px 4px;transition:background .15s;display:flex}.pp-schedule-card:last-child{border-bottom:none}.pp-schedule-card:hover{background:#f8fafc;border-radius:8px;margin:0 -8px;padding-left:12px;padding-right:12px}.pp-schedule-time-col{text-align:left;flex-shrink:0;min-width:76px}.pp-schedule-time{color:#0f172a;font-size:15px;font-weight:700;line-height:1.2;display:block}.pp-schedule-duration{color:#94a3b8;margin-top:2px;font-size:12px;display:block}.pp-schedule-body{flex:1;min-width:0}.pp-schedule-top{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.pp-schedule-patient{color:#0f172a;font-size:15px}.pp-schedule-dob{color:#94a3b8;font-size:12px;font-weight:500}.pp-schedule-reason{color:#64748b;margin:0 0 8px;font-size:13px}.pp-schedule-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pp-status-pill{color:#fff;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.pp-status-pill--completed{background:#16a34a}.pp-status-pill--in-progress{background:#ea580c}.pp-status-pill--checked-in{background:#2563eb}.pp-status-pill--scheduled{color:#64748b;background:0 0;border:1px solid #cbd5e1}.pp-reg-pill,.pp-forms-pill{padding:2px 0;font-size:11px;font-weight:600}.pp-reg-pill--complete{color:#15803d}.pp-reg-pill--incomplete{color:#dc2626}.pp-forms-pill--complete{color:#15803d}.pp-forms-pill--missing{color:#ea580c}.pp-forms-pill--na{color:#94a3b8}.pp-room-pill{color:#6d28d9;background:#ede9fe;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.pp-wait-pill{color:#c2410c;background:#ffedd5;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.pp-assign-pill{border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.pp-assign-pill--mine{color:#15803d;background:#dcfce7}.pp-assign-pill--other{color:#4338ca;background:#e0e7ff}.pp-assign-pill--open{color:#475569;background:#f1f5f9}.pp-schedule-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;min-width:120px;display:flex}.pp-schedule-location{color:#94a3b8;align-items:center;gap:4px;font-size:12px;font-weight:500;display:inline-flex}.pp-open-chart-outline-btn{color:#2563eb;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #2563eb;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.pp-open-chart-outline-btn:hover{background:#eff6ff}.pp-upcoming-group{margin-bottom:24px}.pp-upcoming-date{color:#475569;border-bottom:1px solid #e2e8f0;margin:0 0 10px;padding-bottom:6px;font-size:14px;font-weight:600}.pp-patient-search{color:#94a3b8;align-items:center;gap:10px;margin-bottom:16px;display:flex}.pp-patient-search .form-input{flex:1}.pp-patient-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.pp-patient-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.pp-patient-info strong{margin-bottom:2px;font-size:15px;display:block}.pp-patient-info>span{color:#64748b;font-size:13px}.pp-patient-meta{gap:6px;margin-top:6px;display:flex}.pp-tasks-layout,.pp-tm{flex-direction:column;gap:28px;display:flex}.pp-tm-block-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.pp-tm-block-title{color:#0f172a;margin:0;font-size:16px;font-weight:700}.pp-tm-create-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.pp-tm-create-btn:hover{background:#1d4ed8}.pp-tm-new-msg-btn{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.pp-tm-new-msg-btn:hover{background:#0f172a}.pp-tm-compose{border-radius:12px;margin-bottom:12px;padding:16px 18px}.pp-tm-compose--task{background:#eff6ff;border:1px solid #93c5fd}.pp-tm-compose--message{background:#f8fafc;border:1px solid #e2e8f0}.pp-tm-compose-label{color:#2563eb;margin:0 0 14px;font-size:13px;font-weight:600}.pp-tm-compose--message .pp-tm-compose-label{color:#475569}.pp-tm-compose-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.pp-tm-field{flex-direction:column;gap:6px;display:flex}.pp-tm-field span{color:#475569;font-size:12px;font-weight:600}.pp-tm-field--full{margin-bottom:12px}.pp-tm-textarea{resize:vertical;min-height:80px}.pp-tm-compose-actions{justify-content:flex-end;gap:10px;display:flex}.pp-tm-cancel-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 18px;font-size:13px;font-weight:600}.pp-tm-cancel-btn:hover{color:#0f172a;background:#f8fafc}.pp-tm-save-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 18px;font-size:13px;font-weight:600;display:inline-flex}.pp-tm-save-btn:hover:not(:disabled){background:#1d4ed8}.pp-tm-save-btn:disabled{opacity:.5;cursor:not-allowed}.pp-tm-send-btn{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:10px;align-items:center;gap:6px;padding:8px 18px;font-size:13px;font-weight:600;display:inline-flex}.pp-tm-send-btn:hover:not(:disabled){background:#0f172a}.pp-tm-send-btn:disabled{opacity:.5;cursor:not-allowed}.pp-tm-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.pp-tm-empty{text-align:center;color:#94a3b8;margin:0;padding:32px 20px;font-size:14px}.pp-tm-task-list,.pp-tm-message-list{margin:0;padding:0;list-style:none}.pp-tm-task-list li{border-bottom:1px solid #f1f5f9;align-items:center;gap:14px;padding:14px 18px;display:flex}.pp-tm-task-list li:last-child{border-bottom:none}.pp-tm-task-list li.complete{opacity:.65}.pp-tm-task-check{accent-color:#2563eb;cursor:pointer;flex-shrink:0;width:18px;height:18px}.pp-tm-task-done{color:#fff;background:#16a34a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.pp-tm-task-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pp-tm-task-title{color:#0f172a;font-size:14px;font-weight:600}.pp-tm-task-list li.complete .pp-tm-task-title,.pp-tm-task-list li.complete .pp-tm-task-meta{color:#94a3b8;text-decoration:line-through}.pp-tm-task-meta{color:#94a3b8;font-size:12px}.pp-tm-priority{border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:11px;font-weight:700}.pp-tm-priority--high{color:#b91c1c;background:#fee2e2}.pp-tm-priority--med{color:#b45309;background:#fef3c7}.pp-tm-priority--low{color:#64748b;background:#f1f5f9}.pp-tm-message-list li{border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:14px;padding:14px 18px;display:flex}.pp-tm-message-list li:last-child{border-bottom:none}.pp-tm-msg-avatar{color:#64748b;background:#e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.pp-tm-msg-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pp-tm-msg-subject{color:#0f172a;font-size:14px;font-weight:600}.pp-tm-msg-sender{color:#64748b;font-size:12px}.pp-tm-msg-snippet{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.pp-tm-msg-aside{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.pp-tm-msg-aside time{color:#94a3b8;white-space:nowrap;font-size:12px}.pp-tm-unread-dot{background:#2563eb;border-radius:50%;width:8px;height:8px}.pp-tasks-section,.pp-messages-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;min-height:380px;padding:20px;display:flex}.pp-tasks-section h3,.pp-messages-section h3{color:#0f172a;margin:0 0 16px;font-size:16px;font-weight:700}.pp-task-form,.pp-message-form{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.pp-task-input,.pp-message-textarea{width:100%}.pp-task-add-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;width:100%;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s}.pp-task-add-btn:hover:not(:disabled){background:#1d4ed8}.pp-task-add-btn:disabled{opacity:.5;cursor:not-allowed}.pp-message-send-btn{color:#fff;cursor:pointer;background:#1e3a8a;border:none;border-radius:10px;width:100%;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s}.pp-message-send-btn:hover:not(:disabled){background:#1e40af}.pp-message-send-btn:disabled{opacity:.5;cursor:not-allowed}.pp-task-list,.pp-message-list{margin:0;padding:0;list-style:none}.pp-task-list li{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.pp-task-list li:last-child{border-bottom:none}.pp-task-list li.complete .pp-task-check span{color:#94a3b8;text-decoration:line-through}.pp-task-check{cursor:pointer;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.pp-task-check input{accent-color:#2563eb;flex-shrink:0;width:16px;height:16px}.pp-task-priority{text-transform:lowercase;color:#64748b;background:#f1f5f9;border-radius:999px;flex-shrink:0;padding:3px 12px;font-size:11px;font-weight:600}.pp-task-priority--high{color:#b91c1c;background:#fee2e2}.pp-task-priority--medium{color:#64748b;background:#f1f5f9}.pp-task-priority--low{color:#94a3b8;background:#f8fafc}.pp-message-list li{border-bottom:1px solid #f8fafc;padding:12px 0}.pp-message-list li.unread{background:#eff6ff;border-radius:8px;margin:0 -16px;padding:12px 16px}.pp-message-header{justify-content:space-between;gap:8px;font-size:14px;display:flex}.pp-message-header time{color:#94a3b8;white-space:nowrap;font-size:11px}.pp-message-from{color:#64748b;margin:2px 0;font-size:12px}.pp-message-body{color:#334155;margin:0;font-size:13px}.pp-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.pp-pill-green{color:#15803d;background:#dcfce7}.pp-pill-amber{color:#b45309;background:#fef3c7}.pp-pill-teal{color:#0f766e;background:#ccfbf1}.pp-pill-orange{color:#c2410c;background:#ffedd5}.pp-pill-red{color:#b91c1c;background:#fee2e2}.pp-pill-slate{color:#475569;background:#f1f5f9}.pp-pill-blue{color:#1d4ed8;background:#dbeafe}.pp-chart-overlay{z-index:500;background:#0f172a66;position:fixed;inset:0}.pp-chart-panel{z-index:501;background:#fff;flex-direction:column;width:600px;max-width:100vw;height:100vh;animation:.25s ease-out pp-slide-in;display:flex;position:fixed;top:0;right:0;box-shadow:-8px 0 32px #0f172a26}@keyframes pp-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.pp-chart-header{color:#fff;background:linear-gradient(160deg,#1e40af 0%,#2563eb 45%,#3b82f6 100%);flex-shrink:0;padding:18px 20px 16px;position:relative}.pp-chart-header-top{align-items:center;gap:14px;padding-right:36px;display:flex}.pp-chart-header-avatar{border:2px solid #ffffff59;box-shadow:0 2px 8px #00000026}.pp-chart-header-identity{min-width:0}.pp-chart-patient-name{color:#fff;margin:0 0 2px;font-size:22px;font-weight:700;line-height:1.2}.pp-chart-patient-meta{color:#ffffffe0;margin:0;font-size:13px}.pp-chart-header-contact{color:#ffffffeb;grid-template-columns:1fr 1fr;gap:6px 16px;margin-top:12px;font-size:12px;display:grid}.pp-chart-visit-card{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:16px 20px}.pp-chart-visit-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pp-chart-visit-title{color:#1e40af;margin:0 0 4px;font-size:16px;font-weight:700}.pp-chart-visit-sub{color:#64748b;margin:0;font-size:13px}.pp-chart-visit-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.pp-chart-occmed-box{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:13px}.pp-chart-result-doc{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:12px;padding:12px}.pp-chart-result-doc-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pp-chart-result-doc-file{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.pp-chart-visit-context{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.pp-chart-close{color:#fff;cursor:pointer;z-index:2;background:#ffffff26;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:14px;right:14px}.pp-chart-close:hover{background:#ffffff40}.pp-chart-back-bar{background:#fff;padding:10px 20px 0}.pp-chart-back-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.pp-chart-back-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.pp-chart-header-loading,.pp-chart-error{text-align:center;color:#fff;padding:20px 0}.pp-chart-actions{background:#f8fafc;border-bottom:1px solid #f1f5f9;padding:12px 20px}.pp-chart-actions-label{text-transform:uppercase;color:#64748b;letter-spacing:.04em;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.pp-chart-action-btns{flex-wrap:wrap;gap:8px;display:flex}.pp-chart-action-btns--secondary{margin-top:8px}.pp-chart-action-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s}.pp-chart-action-btn:hover:not(:disabled){filter:brightness(.95)}.pp-chart-action-btn:disabled{opacity:.6;cursor:not-allowed}.pp-chart-action-btn--orange{color:#fff;background:#ea580c}.pp-chart-action-btn--blue{color:#fff;background:#2563eb}.pp-chart-action-btn--green{color:#fff;background:#16a34a}.pp-chart-action-btn--coral{color:#fff;background:#f97316}.pp-chart-action-btn--outline{color:#475569;background:#fff;border-color:#cbd5e1}.pp-chart-action-btn--outline-danger{color:#dc2626;background:#fff;border-color:#fca5a5}.pp-chart-action-btn--primary{color:#fff;background:#2563eb;border-color:#2563eb}.pp-chart-action-btn--success{color:#fff;background:#15803d;border-color:#15803d}.pp-chart-action-btn--muted{color:#94a3b8;background:#fff;border-color:#e2e8f0}.pp-chart-tabs{border-bottom:1px solid #e2e8f0;padding:0 20px;display:flex}.pp-chart-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 16px;font-size:13px;font-weight:500}.pp-chart-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.pp-chart-body{flex:1;padding:20px;overflow-y:auto}.pp-chart-body-loading{text-align:center;color:#64748b;padding:32px}.pp-chart-info-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;display:grid}.pp-chart-info-item{background:#f8fafc;border-radius:10px;padding:12px;font-size:13px}.pp-chart-info-label{text-transform:uppercase;color:#94a3b8;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.pp-chart-visit-details h3{margin:0 0 10px;font-size:14px;font-weight:600}.pp-chart-visit-details dl{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px;display:grid}.pp-chart-visit-details dt{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:600}.pp-chart-visit-details dd{color:#0f172a;margin:0 0 8px;font-size:13px}.pp-chart-checklist{gap:16px;font-size:13px;display:flex}.pp-chart-checklist .done{color:#15803d;font-weight:600}.pp-chart-checklist .pending{color:#b45309}.pp-chart-summary-section{margin-bottom:24px}.pp-chart-section-title{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin:0 0 12px;font-size:11px;font-weight:700}.pp-chart-prev-appts{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.pp-chart-prev-appt-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.pp-chart-prev-appt-item--button{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;transition:border-color .15s,background .15s}.pp-chart-prev-appt-item--button:hover{background:#f1f5f9;border-color:#94a3b8}.pp-chart-prev-appt-main{flex-direction:column;gap:2px;min-width:0;display:flex}.pp-chart-prev-appt-main strong{color:#0f172a;font-size:14px}.pp-chart-prev-appt-main span{color:#64748b;font-size:12px}.pp-chart-prev-provider{color:#94a3b8!important;font-size:11px!important}.pp-pay-pill{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.pp-pay-paid{color:#15803d;background:#dcfce7}.pp-pay-unpaid{color:#b91c1c;background:#fee2e2}.pp-pay-pending{color:#b45309;background:#fef3c7}.pp-pay-neutral{color:#475569;background:#f1f5f9}.pp-chart-note-compose{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:20px;padding:14px}.pp-chart-note-compose-label{color:#1e40af;margin:0 0 10px;font-size:13px}.pp-chart-note-compose-label strong{font-weight:700}.pp-chart-note-type-select{margin-bottom:10px;font-size:13px}.pp-chart-note-textarea{resize:vertical;margin-bottom:10px;font-size:13px}.pp-chart-note-compose-actions{justify-content:flex-end;gap:8px;display:flex}.pp-chart-note-date{color:#94a3b8;margin-left:auto;font-size:11px}.pp-chart-forms-block{margin-bottom:24px}.pp-chart-forms-block-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.pp-chart-forms-hint{color:#94a3b8;margin:4px 0 0;font-size:12px}.pp-chart-upload-btn{white-space:nowrap}.pp-chart-doc-cards{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.pp-chart-doc-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:12px;padding:12px;display:flex}.pp-chart-doc-card-icon{background:#f1f5f9;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.pp-chart-doc-card-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pp-chart-doc-card-body a{color:#1e40af;font-size:14px;font-weight:600;text-decoration:none}.pp-chart-doc-card-body a:hover{text-decoration:underline}.pp-chart-doc-card-body strong{color:#0f172a;font-size:14px;display:block}.pp-chart-doc-card-actions{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.pp-chart-doc-action{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:flex}.pp-chart-doc-action:hover:not(:disabled){color:#2563eb;background:#f1f5f9}.pp-chart-doc-action:disabled{opacity:.4;cursor:not-allowed}.pp-chart-doc-action--danger:hover:not(:disabled){color:#dc2626;background:#fef2f2}.pp-chart-note-form{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.pp-chart-note-list{margin:0;padding:0;list-style:none}.pp-chart-note-item{border-bottom:1px solid #f1f5f9;gap:12px;padding:12px 0;display:flex}.pp-chart-note-avatar{color:#2563eb;background:#dbeafe;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.pp-chart-note-avatar img{object-fit:cover;width:100%;height:100%}.pp-chart-note-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;font-size:12px;display:flex}.pp-chart-note-meta strong{color:#0f172a}.pp-chart-note-meta span{color:#94a3b8}.pp-chart-note-content p{color:#334155;margin:0;font-size:13px}.pp-chart-empty{text-align:center;color:#94a3b8;padding:24px;font-size:13px}.pp-chart-forms h3{color:#0f172a;margin:0;font-size:14px;font-weight:600}.pp-chart-forms-section-header{justify-content:space-between;align-items:center;gap:12px;margin:16px 0 8px;display:flex}.pp-chart-forms-section-header:first-child{margin-top:0}.pp-chart-doc-list a{color:#2563eb;text-decoration:none}.pp-chart-doc-list a:hover{text-decoration:underline}.pp-chart-doc-list{margin:0 0 20px;padding:0;list-style:none}.pp-chart-doc-list li{border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:center;gap:8px;padding:10px 0;font-size:13px;display:flex}.pp-chart-doc-date{color:#94a3b8;font-size:11px}@media (max-width:900px){.pp-kpi-row{grid-template-columns:repeat(3,1fr)}.pp-tm-compose-grid{grid-template-columns:1fr}.pp-avatar-text{display:none}.pp-chart-info-grid{grid-template-columns:1fr}}@media (max-width:640px){.pp-kpi-row{grid-template-columns:repeat(2,1fr)}.pp-schedule-card{flex-direction:column;align-items:stretch}.pp-schedule-actions{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:0}.pp-open-chart-outline-btn{flex:1;justify-content:center}.pp-patient-item,.pp-active-visit-banner{flex-direction:column;align-items:flex-start}.pp-active-visit-btn{justify-content:center;width:100%}.pp-active-board-card{flex-direction:column;align-items:stretch}.pp-active-board-side{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:0}.pp-self-assign-btn{flex:1;justify-content:center}}.pp-active-board-panel{background:var(--content-bg);border:1px solid var(--border-color);border-radius:14px;padding:20px 22px}.pp-active-board-subtitle{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.pp-active-board-list{flex-direction:column;gap:12px;margin-top:18px;display:flex}.pp-active-board-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.pp-active-board-card:hover{border-color:#cbd5e1;box-shadow:0 4px 14px #0f172a0d}.pp-active-board-main{flex:1;min-width:0}.pp-active-board-top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.pp-active-board-name{color:var(--text-primary);font-size:16px}.pp-active-board-age,.pp-active-board-ticket{color:var(--text-secondary);background:#f1f5f9;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.pp-active-board-reason{color:var(--text-secondary);margin:0 0 10px;font-size:13px}.pp-active-board-side{flex-direction:column;align-items:flex-end;gap:10px;min-width:150px;display:flex}.pp-self-assign-btn{justify-content:center;min-width:120px}.staff-new-appt-modal{flex-direction:column;width:100%;max-width:min(1140px,100vw - 40px);max-height:calc(100vh - 40px);padding:0;display:flex;overflow:hidden}.staff-new-appt-header{border-bottom:1px solid var(--border-color);align-items:flex-start;gap:14px;padding:22px 24px 16px;display:flex}.staff-new-appt-header-icon{width:42px;height:42px;color:var(--color-primary);background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.staff-new-appt-header-text{flex:1;min-width:0}.staff-new-appt-title{color:var(--text-primary);margin:0 0 4px;font-size:22px;font-weight:800}.staff-new-appt-subtitle{color:var(--text-secondary);margin:0;font-size:13px}.staff-new-appt-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px}.staff-new-appt-close:hover{color:var(--text-primary);background:#f1f5f9}.staff-new-appt-body{flex-direction:column;gap:18px;padding:20px 24px;display:flex;overflow-y:auto}.staff-new-appt-section{flex-direction:column;gap:10px;display:flex}.staff-new-appt-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.staff-new-appt-label{color:var(--text-primary);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.staff-new-appt-label--spaced{margin-top:14px}.staff-new-appt-required{color:var(--color-danger)}.staff-new-appt-optional{color:var(--text-secondary);font-weight:500}.staff-new-appt-duration-pill{color:var(--color-primary);background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.staff-new-appt-reason-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:240px;overflow-y:auto}@media (min-width:1024px){.staff-new-appt-reason-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.staff-new-appt-field--provider{z-index:1;position:relative}.staff-new-appt-field--provider:has(.appt-provider-cell--open){z-index:30}.staff-appt-provider-picker,.staff-appt-provider-picker .appt-provider-trigger{width:100%}.staff-appt-provider-picker .staff-appt-provider-dropdown{width:100%;min-width:0;max-width:none;left:0;right:0}.staff-appt-provider-picker.appt-provider-cell--open .staff-appt-provider-dropdown{top:auto;bottom:calc(100% + 6px)}.staff-new-appt-day-row{margin-top:4px}.staff-new-appt-row{gap:16px;display:grid}.staff-new-appt-row--split{grid-template-columns:1.4fr 1fr;align-items:start}.staff-new-appt-slot-grid{max-height:180px;overflow-y:auto}.staff-new-appt-notes{resize:vertical;min-height:88px}.staff-new-appt-notify{border:1px solid var(--border-color);background:#f8fafc;border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.staff-new-appt-notify-title{color:var(--text-primary);font-size:13px;font-weight:700}.staff-new-appt-notify-option{color:var(--text-primary);align-items:center;gap:10px;font-size:13px;display:flex}.staff-new-appt-notify-option.disabled{color:var(--text-secondary)}.staff-new-appt-loading,.staff-new-appt-error{color:var(--text-secondary);padding:12px 0;font-size:13px}.staff-new-appt-error{color:var(--color-danger)}.staff-new-appt-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;padding:16px 24px 20px;display:flex}.staff-new-appt-required-note{color:var(--text-secondary);font-size:12px}.staff-new-appt-footer-actions{gap:10px;display:flex}@media (max-width:768px){.staff-new-appt-row--split{grid-template-columns:1fr}.staff-new-appt-footer{flex-direction:column;align-items:stretch}.staff-new-appt-footer-actions{flex-direction:column}.staff-new-appt-footer-actions .btn{justify-content:center;width:100%}}.employer-portal-login{background:#f0f6ff;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:32px 16px;display:flex}.employer-portal-login-brand{text-align:center;margin-bottom:20px}.employer-portal-login-brand h1{margin:8px 0 0;font-size:22px;font-weight:700}.employer-portal-login-brand p{color:var(--text-secondary);margin:4px 0 0;font-size:14px}.employer-portal-login-logo{background:var(--color-primary);border-radius:10px;width:44px;height:44px;margin:0 auto}.employer-portal-login-card{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:12px;width:100%;max-width:420px;padding:28px;box-shadow:0 8px 24px #0f172a0f}.employer-portal-login-card h2{margin:0 0 6px;font-size:18px}.employer-portal-login-sub{color:var(--text-secondary);margin:0 0 16px;font-size:13px}.employer-portal-login-help{color:var(--text-secondary);text-align:center;max-width:420px;margin-top:16px;font-size:12px}.employer-portal{background:#f8fafc;min-height:100vh}.employer-portal-header{border-bottom:1px solid var(--border-color,#e5e7eb);background:#fff;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.employer-portal-brand{color:var(--text-primary);font-weight:700}.employer-portal-brand-sub{color:var(--text-secondary);font-size:12px}.employer-portal-header-right{align-items:center;gap:16px;display:flex}.employer-portal-inner{max-width:1100px;margin:0 auto;padding:24px 16px 80px}.employer-chat-fab{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:12px 18px;font-weight:600;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 20px #0049b959}.employer-employee-link{color:var(--color-primary,#2563eb);font-weight:600;text-decoration:none}.employer-employee-link:hover{text-decoration:underline}.employer-action-btn{white-space:nowrap;color:#1d4ed8;background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.employer-action-btn:hover{background:#dbeafe;border-color:#60a5fa}.employer-action-btn--details{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.employer-action-btn--result{color:#15803d;background:#f0fdf4;border-color:#86efac}.employer-action-btn--result:hover{background:#dcfce7;border-color:#4ade80}.employer-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.employer-visit-row--focus{background:#fff!important}.pp-page .card .data-table tbody tr,.pp-page .card .data-table tbody tr:nth-child(2n){background:#fff}.pp-page .card .data-table tbody tr:hover{background:#f1f5f9}.pp-page .card .data-table tbody tr:last-child td{border-bottom:1px solid #f3f4f6}.pp-page .employer-visits-table thead th{background:#f0f6ff}.pp-page .employer-visits-table tbody tr,.pp-page .employer-visits-table tbody tr:nth-child(2n),.pp-page .employer-visits-table tbody td{background:#fff}.pp-page .employer-visits-table tbody tr:hover,.pp-page .employer-visits-table tbody tr:hover td{background:#f8fafc}.pp-page .card .data-table tbody tr.employer-visit-row--focus,.pp-page .card .data-table tbody tr.employer-visit-row--focus:hover,.pp-page .card .data-table tbody tr.employer-visit-row--focus td,.pp-page .employer-visits-table tbody tr.employer-visit-row--focus td{background:#fff}.employer-chat-panel{border:1px solid var(--border-color,#e5e7eb);z-index:50;background:#fff;border-radius:12px;flex-direction:column;width:360px;height:420px;display:flex;position:fixed;bottom:72px;right:20px;overflow:hidden;box-shadow:0 12px 32px #0f172a29}.employer-chat-panel-header,.employer-chat-panel-footer{border-bottom:1px solid var(--border-color,#e5e7eb);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.employer-chat-panel-footer{border-bottom:none;border-top:1px solid var(--border-color,#e5e7eb)}.employer-chat-panel-body{background:#f8fafc;flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow:auto}.employer-chat-bubble{border-radius:10px;max-width:85%;padding:8px 10px;font-size:13px;line-height:1.4}.employer-chat-bubble.me{background:var(--color-primary);color:#fff;align-self:flex-end}.employer-chat-bubble.them{border:1px solid var(--border-color,#e5e7eb);background:#fff;align-self:flex-start}.occmed-one-off-row{background:#fff7ed73}.page-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.occmed-page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:16px;display:flex}.occmed-page-actions>.btn,.occmed-page-actions>a.btn{margin:0}.occmed-actions-wrap{display:inline-flex;position:relative}.occmed-menu-btn{border:1px solid var(--border-color,#e5e7eb);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.occmed-menu-btn:hover{background:var(--color-primary-light,#eff6ff);border-color:var(--color-primary);color:var(--color-primary)}.occmed-stepper{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:12px;align-items:flex-start;gap:0;margin-bottom:16px;padding:16px 20px;display:flex;overflow:visible}.occmed-step-wrap{flex:1;align-items:flex-start;min-width:0;display:flex}.occmed-step-wrap:first-child{flex:none}.occmed-step-line{background:#e5e7eb;flex:1;min-width:12px;height:2px;margin:15px 0 0}.occmed-step-line.filled{background:var(--color-success,#16a34a)}.occmed-step{cursor:default;color:var(--text-secondary);background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;min-width:64px;padding:0;display:inline-flex}.occmed-step:not(:disabled){cursor:pointer}.occmed-step-circle{color:#64748b;background:#f1f5f9;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:inline-flex}.occmed-step.active .occmed-step-circle{background:var(--color-primary);color:#fff}.occmed-step.done .occmed-step-circle{background:var(--color-success,#16a34a);color:#fff}.occmed-step-label{white-space:nowrap;font-size:11px;font-weight:600}.occmed-step.active .occmed-step-label{color:var(--color-primary)}.occmed-step.done .occmed-step-label{color:var(--color-success,#16a34a)}.occmed-wizard-card{padding:0;overflow:hidden}.occmed-wizard-card-header{border-bottom:1px solid var(--border-color,#e5e7eb);padding:18px 20px 12px}.occmed-wizard-card-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.occmed-wizard-card-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.occmed-wizard-card-body{padding:20px}.occmed-scheduling-form .occmed-wizard-card-body{flex-direction:column;gap:20px;display:flex}.occmed-scheduling-form .occmed-wizard-card-body .grid-2{gap:20px}.occmed-scheduling-form .occmed-wizard-card-body .form-group{margin:0}.occmed-scheduling-form .occmed-wizard-card-body hr{margin:4px 0}.occmed-scheduling-form .occmed-wizard-card{border:1px solid #d8e2ee;border-radius:12px;box-shadow:0 1px 2px #0f172a14}.occmed-scheduling-form .occmed-wizard-card-title{font-size:18px}.occmed-scheduling-form .occmed-wizard-card-subtitle:empty{display:none}.occmed-scheduling-form--step-3 .occmed-wizard-card{box-shadow:none;background:0 0;border:0;overflow:visible}.occmed-scheduling-form--step-3 .occmed-wizard-card-header{display:none}.occmed-scheduling-form--step-3 .occmed-wizard-card-body{padding:0}.occmed-scheduling-form--step-3 .occmed-wizard-card-footer{background:0 0;border:0;padding:0}.occmed-scheduling-form .form-input,.occmed-scheduling-form .form-select{min-height:42px}.occmed-photo-id-heading{border-top:1px solid var(--border-color);color:#486786;letter-spacing:.04em;align-items:center;gap:9px;padding-top:16px;font-size:12px;display:flex}.occmed-photo-id-heading>span:first-child{color:var(--color-primary);font-size:18px}.occmed-photo-id-heading .badge{letter-spacing:normal;margin-left:2px}.occmed-id-fields{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.occmed-photo-upload-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.occmed-scheduling-form .portal-upload-field{margin:0}.occmed-scheduling-form .portal-upload-box{background:#fbfdff;border-color:#93c5fd;min-height:112px}.occmed-scheduling-form .portal-upload-inner-label{font-size:13px;font-weight:600}.occmed-identity-check{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.occmed-identity-check input{width:18px;height:18px;accent-color:var(--color-primary);margin-top:2px}.occmed-identity-check span{flex-direction:column;gap:3px;display:flex}.occmed-identity-check strong{font-size:13px}.occmed-identity-check small{color:var(--text-secondary);font-size:12px}.occmed-service-select-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;padding:18px}.occmed-service-select-heading{margin-bottom:14px}.occmed-service-select-heading>strong{font-size:16px}.occmed-service-select-heading p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.occmed-service-checklist{flex-direction:column;gap:8px;display:flex}.occmed-service-check-item{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:10px 14px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.occmed-service-check-item:hover{border-color:#93c5fd}.occmed-service-check-item.selected{background:#f0f7ff;border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa}.occmed-service-check-item input{accent-color:#111827;width:17px;height:17px}.occmed-service-check-name{flex:1;font-size:14px;font-weight:500}.occmed-service-check-duration{color:#8aa0b8;white-space:nowrap;font-size:12px}.occmed-service-empty{border:1px dashed var(--border-color);color:var(--text-secondary);text-align:center;border-radius:10px;padding:20px;font-size:13px}.occmed-service-total{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:14px 16px;font-size:13px;display:flex}.occmed-auth-upload-heading strong{font-size:14px}.occmed-auth-upload-heading p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.occmed-auth-upload-section .portal-upload-box{color:#c2410c;background:#fffcf5;border-color:#fbbf24;min-height:108px}.occmed-confirm-summary{background:#f8fafc;border:1px solid #d8e2ee;border-radius:10px;flex-direction:column;gap:11px;padding:18px 16px;display:flex}.occmed-confirm-summary .occmed-summary-row{justify-content:initial;grid-template-columns:126px minmax(0,1fr);display:grid}.occmed-confirm-summary .occmed-summary-row>span:last-child{font-weight:500}.occmed-summary-divider{background:var(--border-color);height:1px;margin:1px 0}.occmed-file-status{border:1px solid;border-radius:5px;align-items:center;gap:6px;width:fit-content;padding:3px 7px;font-size:12px;display:inline-flex}.occmed-file-status--success{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.occmed-file-status--danger{color:#dc2626;background:#fef2f2;border-color:#fecaca}@media (max-width:760px){.occmed-id-fields,.occmed-photo-upload-grid{grid-template-columns:1fr}.occmed-confirm-summary .occmed-summary-row{grid-template-columns:105px minmax(0,1fr)}}.occmed-booking-success{text-align:center;background:#fff;border:1px solid #bbf7d0;border-radius:16px;width:min(720px,100%);margin:32px auto;padding:32px;box-shadow:0 12px 30px #0f172a14}.occmed-booking-success-icon{color:#16a34a;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:30px;font-weight:700;display:flex}.occmed-booking-success h2{color:#0f172a;margin:0;font-size:24px}.occmed-booking-success-copy{max-width:520px;color:var(--text-secondary);margin:8px auto 20px;font-size:14px;line-height:1.5}.occmed-booking-success-reference{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;gap:12px;margin-bottom:22px;padding:9px 14px;font-size:13px;display:inline-flex}.occmed-booking-success-reference strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px}.occmed-booking-success-details{border:1px solid var(--border-color);background:var(--border-color);text-align:left;border-radius:12px;grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.occmed-booking-success-details>div{background:#f8fafc;flex-direction:column;gap:5px;min-height:76px;padding:14px 16px;display:flex}.occmed-booking-success-details span{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.occmed-booking-success-details strong{color:#0f172a;font-size:14px;line-height:1.45}.occmed-booking-success-details-wide{grid-column:span 2}.occmed-booking-success-files{flex-wrap:wrap;justify-content:center;gap:10px;margin:18px 0 24px;display:flex}.occmed-booking-success-files span{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:600}.occmed-booking-success-actions{justify-content:center;gap:10px;display:flex}@media (max-width:600px){.occmed-booking-success{margin:16px auto;padding:24px 18px}.occmed-booking-success-details{grid-template-columns:1fr}.occmed-booking-success-details-wide{grid-column:auto}.occmed-booking-success-actions{flex-direction:column}}.occmed-wizard-card-footer{border-top:1px solid var(--border-color,#e5e7eb);background:#f8fafc;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.occmed-wizard-footer-right{align-items:center;gap:10px;display:flex}.occmed-step-meta{color:var(--text-secondary);font-size:12px;font-weight:500}.occmed-service-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.occmed-service-option{border:1px solid var(--border-color,#e5e7eb);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.occmed-service-option:hover{border-color:#93c5fd}.occmed-service-option.selected{border-color:var(--color-primary);background:var(--color-primary-light,#eff6ff);box-shadow:0 0 0 1px var(--color-primary)}.occmed-service-option input{accent-color:var(--color-primary);margin-top:2px}.occmed-service-option-name{color:var(--text-primary);font-size:14px;font-weight:600}.occmed-service-option-meta{color:var(--text-secondary);margin-top:2px;font-size:12px}.occmed-upload-zone{cursor:pointer;text-align:center;min-height:110px;color:var(--text-secondary);background:#f8fbff;border:1.5px dashed #93c5fd;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px;font-size:13px;display:flex}.occmed-upload-zone:hover{border-color:var(--color-primary);background:var(--color-primary-light,#eff6ff)}.occmed-upload-zone.uploaded{color:var(--color-success,#15803d);background:#f0fdf4;border-color:#86efac}.occmed-upload-zone.warning{background:#fffbeb;border-color:#fcd34d}.occmed-summary-list{border:1px solid var(--border-color,#e5e7eb);background:#f8fafc;border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.occmed-summary-row{justify-content:space-between;gap:12px;font-size:14px;display:flex}.occmed-summary-row span:first-child{color:var(--text-secondary)}.occmed-summary-row span:last-child{color:var(--text-primary);text-align:right;font-weight:600}.occmed-quick-actions{flex-direction:column;gap:12px;display:flex}.occmed-quick-action{text-align:left;border:1px solid var(--border-color,#e5e7eb);cursor:pointer;width:100%;color:inherit;background:#fff;border-radius:12px;align-items:flex-start;gap:14px;padding:14px 16px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.occmed-quick-action:hover{background:var(--color-primary-light,#eff6ff);border-color:#93c5fd}.occmed-quick-action.highlight{background:#fff7ed;border-color:#fed7aa}.occmed-quick-action-icon{background:var(--color-primary-light,#eff6ff);width:40px;height:40px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.occmed-quick-action-icon--highlight{color:#c2410c;background:#fff7ed}.occmed-quick-action-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.occmed-quick-action-title{color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.35;display:block}.occmed-quick-action-sub{color:var(--text-secondary);font-size:12px;line-height:1.45;display:block}.occmed-source-bars{flex-direction:column;gap:12px;display:flex}.occmed-source-row{grid-template-columns:120px 1fr 36px;align-items:center;gap:10px;font-size:13px;display:grid}.occmed-source-bar-track{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.occmed-source-bar-fill{border-radius:999px;height:100%}.occmed-employer-list{flex-direction:column;gap:10px;display:flex}.occmed-employer-row{align-items:center;gap:10px;display:flex}.occmed-top-employers-list{gap:12px}.occmed-top-employer-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;padding:10px 12px}.occmed-top-employer-avatar{letter-spacing:.02em;color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.occmed-top-employer-copy{flex:1;min-width:0}.occmed-top-employer-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.occmed-top-employer-visits{color:var(--text-secondary);margin-top:2px;font-size:12px}.occmed-employer-avatar{color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:700;display:inline-flex}.occmed-employer-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.occmed-employer-visits{font-size:13px;font-weight:700}.occmed-inbox-list{flex-direction:column;display:flex}.occmed-inbox-item{border-bottom:1px solid var(--border-color,#e5e7eb);gap:12px;padding:14px 16px;display:flex}.occmed-inbox-item:last-child{border-bottom:none}.occmed-inbox-item.unread{background:#f8fbff}.occmed-forms-list{flex-direction:column;display:flex}.occmed-forms-info-banner{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:13px;line-height:1.45}.occmed-forms-table .occmed-services-toolbar{border-bottom:1px solid var(--border-color,#e5e7eb);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.occmed-form-table-desc{-webkit-line-clamp:2;color:var(--text-secondary);-webkit-box-orient:vertical;max-width:280px;font-size:13px;display:-webkit-box;overflow:hidden}.occmed-form-used-by{flex-wrap:wrap;gap:6px;display:flex}.occmed-form-file-meta{color:var(--text-secondary);word-break:break-word;font-size:12px}.occmed-form-image-preview{border:1px solid var(--border-color,#e5e7eb);background:#f8fafc;border-radius:8px;justify-content:center;align-items:center;min-height:360px;max-height:70vh;padding:16px;display:flex;overflow:auto}.occmed-form-image-preview-img{object-fit:contain;border-radius:4px;max-width:100%;max-height:65vh}.occmed-form-item{border-bottom:1px solid var(--border-color,#e5e7eb);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.occmed-form-item:last-child{border-bottom:none}.occmed-form-icon{background:var(--color-primary-light,#eff6ff);width:36px;height:36px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.occmed-detail-tabs{margin-bottom:16px}tr.occmed-one-off-row{background:#fff7ed73}.occmed-link{color:var(--color-primary);font-weight:600;text-decoration:none}.occmed-link:hover{text-decoration:underline}.stat-card-value.violet{color:#6d28d9}.occmed-services-toolbar{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.occmed-services-toolbar-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.occmed-services-data-table th,.occmed-services-data-table td{vertical-align:middle}.occmed-service-cell{align-items:flex-start;gap:10px;min-width:0;display:flex}.occmed-service-cell-icon{width:32px;height:32px;color:var(--color-primary);background:#eff6ff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.occmed-service-cell-name{color:var(--text-primary);font-weight:600}.occmed-service-cell-desc{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:260px;margin-top:2px;font-size:12px;overflow:hidden}.occmed-service-duration{color:var(--text-primary);white-space:nowrap;font-weight:600}.occmed-service-location-badges{flex-wrap:wrap;gap:6px;display:flex}.occmed-billing-code{color:#374151;background:#f3f4f6;border-radius:6px;align-items:center;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:600;display:inline-flex}.occmed-billing-code-empty{color:#cbd5e1;font-weight:500}.occmed-service-modal{flex-direction:column;display:flex;overflow:hidden}.occmed-service-modal-title-wrap{align-items:flex-start;gap:12px;display:flex}.occmed-service-modal-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.occmed-modal-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px;font-weight:400}.occmed-service-modal-body{max-height:calc(90vh - 170px);overflow-y:auto}.occmed-service-modal .form-group{gap:10px;margin-bottom:18px}.occmed-service-modal .grid-2{margin-bottom:4px}.occmed-service-modal .grid-2 .form-group{margin-bottom:0}.occmed-forms-count-btn{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;justify-content:center;align-items:center;min-width:32px;height:28px;padding:0 10px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.occmed-forms-count-btn:hover{background:#dbeafe;border-color:#93c5fd}.occmed-form-view-list{flex-direction:column;gap:10px;display:flex}.occmed-form-view-item{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;padding:14px 16px}.occmed-form-view-name{color:var(--text-primary);font-size:14px;font-weight:600}.occmed-form-view-desc{color:var(--text-secondary);margin-top:4px;font-size:12px;line-height:1.45}.occmed-service-forms-modal-body{max-height:calc(90vh - 180px);overflow-y:auto}.occmed-service-modal-section{margin-top:20px}.occmed-billing-input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.occmed-location-checklist{flex-direction:column;gap:10px;margin-top:12px;display:flex}.occmed-location-check{color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.occmed-location-check input{width:16px;height:16px;accent-color:var(--color-primary)}.occmed-forms-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.occmed-forms-section-header .form-section-title{border:none;margin:0;padding:0}.occmed-forms-selected-count{color:var(--text-secondary);font-size:12px;font-weight:600}.occmed-form-select-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.occmed-form-select-item{border:1px solid var(--border-color,#e5e7eb);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.occmed-form-select-item:hover{border-color:#93c5fd}.occmed-form-select-item.selected{background:#eff6ffcc;border-color:#93c5fd;box-shadow:0 0 0 1px #93c5fd}.occmed-form-select-item input{accent-color:var(--color-primary);margin-top:3px}.occmed-form-select-name{color:var(--text-primary);font-size:14px;font-weight:600}.occmed-form-select-item.selected .occmed-form-select-name{color:#1d4ed8}.occmed-form-select-desc{color:var(--text-secondary);margin-top:3px;font-size:12px;line-height:1.4}.occmed-forms-library-note{color:var(--text-secondary);margin:12px 0 0;font-size:12px}.occmed-empty-hint{color:var(--text-secondary);margin:0;font-size:13px}.occmed-employer-modal .modal-footer .btn-primary{align-items:center;gap:8px;display:inline-flex}.occmed-employer-stats .stat-card-value.danger{color:var(--color-danger)}.occmed-one-off-btn{color:#fff!important;background:#ea580c!important;border-color:#ea580c!important}.occmed-one-off-btn:hover{color:#fff!important;background:#c2410c!important;border-color:#c2410c!important}.occmed-employer-filter-bar{gap:12px}.occmed-employer-filter-bar .search-input-wrapper{flex:0 320px}.occmed-employer-tabs{flex-wrap:wrap;flex:none;justify-content:flex-start;align-items:center;width:fit-content;max-width:100%}.occmed-employer-tabs .tab-btn{flex:none;margin:0}.occmed-employer-tab--warning.active{background:#f59e0b!important;border-color:#f59e0b!important}.occmed-employer-tab--danger.active{background:#ef4444!important;border-color:#ef4444!important}.occmed-employer-row--temporary{background:#fff7eda6}.occmed-employer-company-cell{align-items:flex-start;gap:12px;display:flex}.occmed-employer-company-cell .occmed-employer-avatar{color:#1d4ed8;background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:flex}.occmed-employer-avatar--temporary{color:#c2410c;background:#fff7ed}.occmed-employer-name-link{color:var(--text-primary);font-weight:600;text-decoration:none}.occmed-employer-name-link:hover{color:var(--color-primary)}.occmed-employer-subtext,.occmed-employer-subtag{color:var(--text-secondary);margin-top:2px;font-size:12px}.occmed-employer-subtag{color:#c2410c;font-weight:600}.occmed-employer-contact-name{color:var(--text-primary);font-weight:600}.occmed-employer-type-badges{flex-wrap:wrap;gap:6px;display:flex}.occmed-employer-visits{color:var(--text-primary);font-weight:700}.occmed-employer-status-cell{align-items:center;gap:8px;display:flex}.occmed-employer-status-label{color:var(--text-secondary);font-size:13px;font-weight:600}.occmed-employer-status-label--active{color:var(--color-success)}.occmed-employer-modal{flex-direction:column;display:flex;overflow:hidden}.occmed-employer-modal .modal-header{align-items:flex-start;gap:12px;padding:22px 24px 20px}.occmed-employer-modal-title-wrap{align-items:flex-start;gap:12px;padding-bottom:4px;display:flex}.occmed-employer-modal .occmed-modal-subtitle{margin:8px 0 0;line-height:1.5}.occmed-employer-modal-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.occmed-employer-modal-body{max-height:calc(90vh - 170px);padding-top:24px;overflow-y:auto}.occmed-employer-modal .form-section-title{margin:0 0 18px;padding-bottom:10px}.occmed-employer-modal .form-group{gap:10px;margin-bottom:18px}.occmed-employer-modal-section{margin-top:28px}.occmed-employer-modal-section>.form-section-title,.occmed-employer-modal-section>.occmed-forms-section-header{margin-bottom:18px}.occmed-employer-detail-card{margin-bottom:16px;padding:20px}.occmed-employer-detail-top{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.occmed-employer-detail-identity{align-items:flex-start;gap:16px;display:flex}.occmed-employer-detail-avatar{color:#1d4ed8;background:#eff6ff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:18px;font-weight:700;display:flex}.occmed-employer-detail-name-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.occmed-employer-detail-name{margin:0;font-size:22px}.occmed-employer-detail-meta-grid{color:var(--text-secondary);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px;font-size:13px;display:grid}.occmed-employer-detail-actions{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.occmed-employer-detail-actions>.btn,.occmed-employer-detail-actions>a.btn{margin:0}.occmed-employer-detail-stats{border-top:1px solid var(--border-color);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;padding-top:16px;display:grid}.occmed-employer-detail-stat-value{font-size:28px;font-weight:700;line-height:1}.occmed-employer-detail-stat-value.warning{color:var(--color-warning)}.occmed-employer-detail-stat-value.success{color:var(--color-success)}.occmed-employer-detail-stat-label{color:var(--text-secondary);margin-top:6px;font-size:12px}.occmed-employer-details-panel,.occmed-portal-users-panel,.occmed-approved-services-panel{padding:20px}.occmed-employer-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;display:grid}.occmed-detail-field--full{grid-column:1/-1}.occmed-detail-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.occmed-detail-value{color:var(--text-primary);word-break:break-word;font-size:14px;font-weight:500;line-height:1.45}.occmed-billing-panel{flex-direction:column;gap:24px;display:flex}.occmed-billing-panel__notice{margin-bottom:0}.occmed-billing-section{flex-direction:column;gap:14px;display:flex}.occmed-billing-section__title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.occmed-billing-info-grid{gap:16px 24px}.occmed-billing-notes-empty{color:var(--text-secondary);background:#f8fafc;border-radius:10px;margin:0;padding:14px 16px;font-size:14px}.occmed-billing-notes-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.occmed-billing-note-item{color:var(--text-primary);word-break:break-word;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.5}.occmed-billing-note-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin-bottom:6px;font-size:12px;display:flex}.occmed-billing-note-time{font-weight:500}.occmed-billing-note-author{color:var(--text-primary);font-weight:600}.occmed-billing-note-author:before{content:"·";color:var(--text-secondary);margin-right:10px;font-weight:400}.occmed-billing-note-body{color:var(--text-primary);white-space:pre-wrap;font-size:14px;line-height:1.5}.occmed-employer-notes-block{color:var(--text-primary);white-space:pre-wrap;background:#f8fafc;border-radius:10px;padding:14px 16px;line-height:1.5}.occmed-billing-note-form{border-top:1px solid var(--border-color,#e2e8f0);margin-top:0;padding-top:24px}.occmed-billing-note-form__field{margin-bottom:0}.occmed-billing-note-form__title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.occmed-billing-note-form__hint{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.occmed-billing-note-form__actions{justify-content:flex-end;margin-top:12px;display:flex}.occmed-dashboard{flex-direction:column;gap:24px;width:100%;min-width:0;display:flex}.occmed-dashboard__stats{margin-bottom:0}.occmed-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-width:0;display:grid}.occmed-dashboard-card{min-width:0;padding:18px}.occmed-dashboard-card--actions{min-height:100%}.occmed-dashboard-card--table{padding:18px}.occmed-dashboard-card__title{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:600}.occmed-dashboard-card__subtitle{color:var(--text-secondary);margin:-8px 0 12px;font-size:12px}.occmed-dashboard-card__footnote{color:var(--color-success);margin:12px 0 0;font-size:12px}.occmed-dashboard-empty{color:var(--text-secondary);margin:0;font-size:13px}.occmed-dashboard-table-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.occmed-dashboard-table-header .occmed-dashboard-card__title{margin-bottom:0}.occmed-dashboard-table-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.occmed-dashboard-table-wrap{overflow-x:auto}@media (max-width:1100px){.occmed-dashboard-grid{grid-template-columns:1fr 1fr}.occmed-dashboard-card--actions{grid-column:1/-1}}@media (max-width:768px){.occmed-dashboard-grid{grid-template-columns:1fr}.occmed-dashboard__stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.occmed-employer-details-grid,.occmed-billing-info-grid{grid-template-columns:1fr}.occmed-source-row{grid-template-columns:minmax(0,1fr);gap:6px}.occmed-source-row strong{justify-self:start}.occmed-dashboard-table-header{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.occmed-dashboard__stats{grid-template-columns:1fr!important}}.occmed-portal-users-banner{background:#eff6ff;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding:14px 16px;display:flex}.occmed-portal-users-banner p{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.occmed-checkbox-row{color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.occmed-checkbox-row input{width:16px;height:16px;accent-color:var(--primary,#2563eb)}.occmed-portal-role-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.occmed-portal-role-card{border:1px solid var(--border-color);background:#fff;border-radius:10px;padding:12px}.occmed-portal-role-card p{color:var(--text-secondary);margin:8px 0 0;font-size:12px;line-height:1.45}.occmed-portal-user-cell{align-items:center;gap:10px;display:flex}.occmed-portal-user-avatar{border-radius:999px;width:32px;height:32px;font-size:11px}.occmed-approved-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.occmed-approved-service-item{border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:8px;padding:10px 12px;display:flex}.occmed-approved-service-check{color:var(--color-success);font-weight:700}.occmed-auth-list{flex-direction:column;gap:10px;display:flex}.occmed-auth-card{border:1px solid var(--border-color);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.occmed-auth-card-title{font-weight:600}.occmed-auth-alert .btn-danger{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.occmed-auth-filters{flex-wrap:wrap;gap:8px;display:flex}.occmed-auth-filter-pill{color:#334155;cursor:pointer;background:#eef2f7;border:none;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.occmed-auth-filter-pill.active{background:var(--color-primary,#2563eb);color:#fff}.occmed-auth-table-wrap{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:12px;overflow:visible;box-shadow:0 1px 2px #0f172a0a}.occmed-auth-table thead{background:#f0f6ff}.occmed-auth-table tbody tr,.occmed-auth-table tbody tr:nth-child(2n){background:#fff}.occmed-auth-table tbody tr:hover{background:#f8fafc}.occmed-auth-table .table-actions-col{text-align:right;width:56px;min-width:56px}.action-menu-dropdown .dropdown-item{align-items:center;gap:10px;display:flex}.action-menu-dropdown .dropdown-item-icon{width:16px;height:16px;color:inherit;flex-shrink:0;display:inline-flex}.occmed-auth-appt-id{font-size:13px;font-weight:700}.occmed-auth-appt-date{color:var(--text-secondary);margin-top:2px;font-size:12px}.occmed-auth-services{flex-wrap:wrap;gap:6px;display:flex}.occmed-auth-doc-missing{color:#b91c1c;font-size:13px;font-weight:600}.occmed-auth-doc-link{color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none}.occmed-auth-doc-link:hover{text-decoration:underline}.occmed-auth-modal-sub{color:var(--text-secondary);margin:6px 0 0;font-size:13px;font-weight:500;line-height:1.4}.occmed-auth-upload-modal .modal-header{align-items:flex-start;padding-bottom:16px}.occmed-auth-upload-body{flex-direction:column;gap:20px;display:flex;padding-top:8px!important}.occmed-auth-upload-section{flex-direction:column;gap:10px;display:flex}.occmed-auth-upload-section .form-label{margin-bottom:0}.occmed-auth-upload-section .portal-upload-field{margin:0}.occmed-auth-upload-section .portal-upload-hint{margin-top:8px}.occmed-auth-upload-modal .modal-footer{gap:10px;padding-top:16px}.occmed-auth-upload-modal .modal-footer .btn{align-items:center;gap:6px;display:inline-flex}.occmed-auth-service-checks{flex-direction:column;gap:10px;margin-top:2px;display:flex}.occmed-auth-service-check{border:1px solid var(--border-color,#e5e7eb);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.occmed-auth-service-check.selected{background:#fff7ed;border-color:#fdba74}.occmed-auth-service-check small{color:#c2410c;margin-top:2px;font-size:12px;display:block}.occmed-auth-doc-card{border:1px solid var(--border-color,#e5e7eb);background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.occmed-auth-request-btn{color:#b91c1c!important;border-color:#fca5a5!important}.occmed-auth-approve-btn{align-items:center;gap:6px;display:inline-flex;background:#16a34a!important;border-color:#16a34a!important}.occmed-auth-approve-btn:hover:not(:disabled){background:#15803d!important;border-color:#15803d!important}.occmed-auth-bulk-list{flex-direction:column;gap:8px;max-height:220px;margin-bottom:8px;display:flex;overflow:auto}.occmed-auth-bulk-item{border:1px solid var(--border-color,#e5e7eb);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.employer-auth-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.employer-auth-view-btn{color:#6d28d9;background:#f5f3ff;border:1px solid #c4b5fd;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.employer-auth-view-btn:hover{background:#ede9fe}.occmed-auth-card-sub{color:var(--text-secondary);margin-top:2px;font-size:12px}.employer-portal-login,.employer-portal{font-family:inherit}.kiosk-access-panel{box-sizing:border-box;place-items:center;min-height:calc(100dvh - 190px);padding:24px 0;display:grid}.kiosk-access-card{box-sizing:border-box;text-align:center;background:#fff;border:1px solid #d8e6f5;border-radius:24px;width:min(100%,480px);padding:40px;box-shadow:0 22px 55px #0f2b4d1f,0 4px 14px #0f2b4d0f}.kiosk-access-card .kiosk-icon-circle{width:80px;height:80px;box-shadow:inset 0 0 0 1px #1a6fd414}.kiosk-access-kicker{color:var(--color-primary);letter-spacing:.09em;text-transform:uppercase;margin-top:20px;font-size:12px;font-weight:700}.kiosk-access-card .kiosk-panel-title{margin:8px 0;font-size:30px;line-height:1.2}.kiosk-access-card .kiosk-panel-subtitle{max-width:390px;margin:0 auto;font-size:15px;line-height:1.6}.kiosk-access-form{text-align:left;width:100%;margin:28px auto 0}.kiosk-access-form .form-label{font-size:14px}.portal-booking .kiosk-access-pin{color:#0f2b4d;letter-spacing:.55em;text-align:center;text-indent:.55em;background:#f8fbff;border:2px solid #cbd9e8;border-radius:12px;min-height:62px;padding:10px 16px;font-size:28px;font-weight:700}.portal-booking .kiosk-access-pin:focus{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #1a6fd41f}.portal-booking .kiosk-access-pin[aria-invalid=true]{border-color:var(--color-danger)}.kiosk-access-help{color:var(--text-secondary);text-align:center;margin:2px 0 0;font-size:12px}.kiosk-access-error{text-align:left;background:#fef2f2;border-radius:8px;margin:14px 0 0;padding:10px 12px;line-height:1.45}.kiosk-access-submit{min-height:54px;margin-top:18px;font-size:16px;transition:background .15s,transform .15s,box-shadow .15s}.kiosk-access-submit:not(:disabled):hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 8px 20px #1a6fd438}.kiosk-access-submit:disabled{cursor:not-allowed;opacity:.5}.kiosk-access-session-note{color:#7a8da3;margin:24px 0 0;font-size:12px;line-height:1.5}.kiosk-home-return{border-top:1px solid #d8e6f5;width:100%;margin-top:32px;padding-top:24px}.kiosk-home-return .kiosk-btn-outline{margin-top:0}.kiosk-pin-configured::placeholder{color:var(--text-primary);letter-spacing:.18em;opacity:1;font-size:18px}@media (max-width:600px){.portal-main:has(.kiosk-access-panel){padding:20px 16px 32px}.kiosk-access-panel{min-height:calc(100dvh - 160px);padding:8px 0}.kiosk-access-card{border-radius:20px;padding:30px 22px}.kiosk-access-card .kiosk-panel-title{font-size:26px}}@media (max-height:700px) and (min-width:601px){.kiosk-access-panel{min-height:auto;padding:16px 0}.kiosk-access-card{padding:28px 36px}}.employer-schedule-modal{flex-direction:column;max-width:min(760px,100vw - 32px);display:flex;overflow:hidden}.employer-schedule-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 16px;display:flex}.employer-schedule-modal-title-wrap{align-items:flex-start;gap:12px;display:flex}.employer-schedule-modal-icon{width:36px;height:36px;color:var(--color-primary);background:#eff6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.employer-schedule-modal-title{margin:0;font-size:18px;font-weight:700}.employer-schedule-modal-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.employer-schedule-modal-body{max-height:calc(90vh - 120px);padding:16px 20px 20px;overflow-y:auto}.employer-schedule-modal .occmed-stepper{background:0 0;border:none;justify-content:center;max-width:560px;margin:0 auto;padding:0 0 12px}.employer-schedule-modal .occmed-step-wrap{flex:none}.employer-schedule-modal .occmed-step-wrap:not(:first-child){flex:0 auto;min-width:0}.employer-schedule-modal .occmed-step-line{flex:0 0 56px;width:56px;min-width:40px;max-width:72px;margin-top:15px}.employer-schedule-modal .occmed-wizard-card-body{flex-direction:column;gap:18px;padding:20px 24px;display:flex}.employer-schedule-modal .occmed-wizard-card-body .form-group,.employer-schedule-modal .occmed-wizard-card-body .grid-2,.employer-schedule-modal .portal-upload-field{margin:0}.employer-schedule-modal .portal-upload-box{min-height:120px}.employer-schedule-modal .portal-upload-inner-label{font-size:13px;font-weight:600}.employer-schedule-modal .occmed-wizard-card{border:1px solid var(--border-color);box-shadow:none}.employer-schedule-modal .occmed-wizard-card-header{display:none}.employer-location-pills{flex-wrap:wrap;gap:10px;display:flex}.employer-location-pill{border:1px solid var(--border-color);color:var(--color-primary);cursor:pointer;background:#fff;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.employer-location-pill:hover{border-color:#93c5fd}.employer-location-pill.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.employer-photo-id-section{border-top:1px solid var(--border-color);margin-top:8px;padding-top:16px}.employer-photo-id-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.employer-photo-id-copy{color:var(--text-secondary);margin:0 0 12px;font-size:13px;line-height:1.5}.employer-photo-id-upload-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px;display:grid}.employer-photo-id-skip{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600;text-decoration:underline}.employer-service-checklist{flex-direction:column;gap:10px;display:flex}.employer-service-check-item{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.employer-service-check-item:hover{border-color:#93c5fd}.employer-service-check-item.selected{border-color:var(--color-primary);background:#eff6ff}.employer-service-check-item input{accent-color:var(--color-primary)}.employer-service-check-name{color:var(--text-primary);flex:1;font-size:14px;font-weight:600}.employer-service-check-duration{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.employer-booking-time-picker{flex-direction:column;gap:14px;display:flex}.employer-booking-slots-label{color:var(--text-secondary);font-size:13px;font-weight:600}.employer-schedule-success{text-align:center;padding:28px 24px 24px}.employer-schedule-success-icon{color:#16a34a;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;display:flex}.employer-schedule-success h2{color:var(--color-primary);margin:0 0 12px;font-size:20px}.employer-schedule-success-detail{color:var(--text-secondary);margin:0 0 6px;font-size:14px}.employer-schedule-success-ref{color:var(--text-secondary);margin:0 0 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.employer-schedule-success-auth{text-align:left;flex-direction:column;align-items:stretch;gap:6px;margin-bottom:20px;display:flex}.employer-schedule-success-auth strong{font-size:14px;line-height:1.3;display:block}.employer-schedule-success-auth p{margin:0;font-size:13px;font-weight:400;line-height:1.45}.btn-success{color:#fff;background:#16a34a;border-color:#16a34a}.btn-success:hover:not(:disabled){background:#15803d;border-color:#15803d}@media (max-width:640px){.employer-photo-id-upload-grid{grid-template-columns:1fr}.employer-schedule-modal-body{padding:12px 14px 16px}}:root{--sm-sidebar-safe:0px;--sm-edge:20px;--sm-fab-clearance:84px;--sm-normal-w:600px;--sm-normal-h:760px;--sm-expanded-w:1200px;--sm-expanded-h:900px;--sm-avail-w:calc(100vw - var(--sm-sidebar-safe) - (var(--sm-edge) * 2));--sm-avail-h-normal:calc(100vh - var(--sm-fab-clearance) - var(--sm-edge));--sm-avail-h-expanded:calc(100vh - (var(--sm-edge) * 2))}body.has-staff-sidebar{--sm-sidebar-safe:var(--sidebar-width,240px)}@media (max-width:768px){body.has-staff-sidebar{--sm-sidebar-safe:0px}}.sm-backdrop{top:0;bottom:0;right:0;left:var(--sm-sidebar-safe);z-index:110;background:#0f172a38;border:0;position:fixed}.sm-fab{z-index:120;color:#fff;cursor:pointer;background:linear-gradient(135deg,#0052cc 0%,#0041a8 100%);border:0;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 28px #0041a859}.sm-fab:hover,.sm-fab--open{background:#0041a8}.sm-fab-badge{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-4px;right:-4px}.sm-fab-urgent{color:#ef4444;width:14px;height:14px;position:absolute;bottom:2px;right:2px}.sm-toast{z-index:130;width:min(320px, calc(100vw - var(--sm-sidebar-safe) - 32px));color:#fff;text-align:left;cursor:pointer;background:#0f172a;border:0;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;animation:.2s sm-toast-in;display:flex;position:fixed;bottom:92px;right:20px;box-shadow:0 16px 40px #0f172a59}.sm-toast strong{font-size:13px}.sm-toast span{opacity:.86;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}@keyframes sm-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sm-panel{top:auto;left:auto;right:var(--sm-edge);bottom:var(--sm-fab-clearance);z-index:115;width:min(var(--sm-normal-w), var(--sm-avail-w));height:min(var(--sm-normal-h), var(--sm-avail-h-normal));max-width:var(--sm-avail-w);max-height:var(--sm-avail-h-normal);background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;transition:width .2s,height .2s,right .2s,bottom .2s,border-radius .2s;display:flex;position:fixed;overflow:hidden;box-shadow:0 24px 60px #0f172a38}.sm-panel--expanded{top:auto;left:auto;right:var(--sm-edge);bottom:var(--sm-edge);width:min(var(--sm-expanded-w), var(--sm-avail-w));height:min(var(--sm-expanded-h), var(--sm-avail-h-expanded));max-width:var(--sm-avail-w);max-height:var(--sm-avail-h-expanded);z-index:115;border-radius:18px}.sm-panel--presence-open{overflow:visible}.sm-root--page{height:100%;min-height:0}.sm-shell--page{z-index:auto;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;width:100%;max-width:none;height:min(940px,100vh - 180px);min-height:560px;max-height:none;display:flex;position:relative;bottom:auto;right:auto;overflow:hidden;box-shadow:0 8px 24px #0f172a14}.sm-shell--page.sm-shell--presence-open{overflow:visible}.page-content:has(.sm-root--page){min-height:calc(100vh - var(--header-height,64px));flex-direction:column;display:flex}.sm-header{color:#fff;background:linear-gradient(135deg,#0052cc 0%,#0041a8 100%);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 14px 10px;display:flex}.sm-header h2{color:#fff;margin:0;font-size:16px;font-weight:700}.sm-header span{opacity:.9;color:#ffffffeb;margin-top:2px;font-size:12px;display:block}.sm-header nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.sm-header nav button,.sm-icon-btn{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.sm-header__announce{position:relative}.sm-header__badge{color:#fff;text-align:center;background:#ef4444;border:1.5px solid #0041a8;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:800;line-height:16px;position:absolute;top:-4px;right:-4px}.sm-header nav button:hover,.sm-icon-btn:hover{color:#fff;background:#ffffff38}.sm-header nav button svg,.sm-icon-btn svg{color:#fff;stroke:currentColor}.sm-quick-nav{isolation:isolate;background:#0041a8;align-items:center;gap:0;padding:0;display:flex;position:relative}.sm-quick-nav__track{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#ffffff73 #ffffff1f;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:8px;width:100%;padding:10px 14px 8px;display:flex;overflow:auto hidden}.sm-quick-nav__track::-webkit-scrollbar{height:6px}.sm-quick-nav__track::-webkit-scrollbar-thumb{background:#ffffff73;border-radius:999px}.sm-quick-nav__track::-webkit-scrollbar-track{background:#ffffff1f;border-radius:999px}.sm-quick-nav__track button{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1f;border:0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.sm-quick-nav__track button:hover{background:#ffffff38;transform:translateY(-1px)}.sm-quick-nav__track button b{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;display:inline-flex}.sm-inbox,.sm-utility,.sm-chat{background:#fff;flex-direction:column;flex:1;min-height:0;display:flex}.sm-search{color:#64748b;background:#f1f5f9;border-radius:12px;align-items:center;gap:8px;margin:12px;padding:10px 12px;display:flex}.sm-search input{width:100%;font:inherit;color:#0f172a;background:0 0;border:0;outline:none}.sm-section-label{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:4px 14px 6px;font-size:11px;font-weight:700}.sm-conv-list{padding:0 6px 10px;overflow:auto}.sm-conv-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;width:100%;padding:10px 8px;display:grid;position:relative}.sm-conv-row:hover{background:#f8fafc}.sm-conv-row--muted{opacity:.6}.sm-conv-row strong{color:#0f172a;font-size:13px;display:block}.sm-conv-row small{color:#64748b;white-space:nowrap;text-overflow:ellipsis;max-width:190px;margin-top:2px;font-size:12px;display:block;overflow:hidden}.sm-conv-meta{color:#94a3b8;flex-direction:column;align-items:flex-end;gap:6px;font-size:11px;display:flex}.sm-unread{color:#fff;background:#2563eb;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.sm-inbox{background:#fff;flex-direction:column;flex:1;min-height:0;display:flex}.sm-search--inbox{margin:12px 12px 8px}.sm-conversation-sections h3{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;align-items:center;gap:6px;margin:10px 10px 6px;font-size:11px;font-weight:700;display:flex}.sm-conversation{border-radius:12px;grid-template-columns:minmax(0,1fr) 28px;align-items:stretch;margin:0 4px;display:grid;position:relative}.sm-avatar{color:#fff;box-sizing:border-box;background:#0052cc;border-radius:999px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:inline-flex;position:relative}.sm-avatar--image{color:#0000;background:#e2e8f0}.sm-avatar--image img{object-fit:cover;border-radius:inherit;z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.sm-avatar--small{width:32px;height:32px;font-size:11px}.sm-avatar--ring{box-shadow:0 0 0 1px #fff, 0 0 0 2.5px var(--sm-presence-color,#94a3b8)}.sm-avatar--header.sm-avatar--ring{box-shadow:0 0 0 1px #fff6, 0 0 0 2.5px var(--sm-presence-color,#94a3b8)}.sm-avatar--ring-online{--sm-presence-color:#22c55e}.sm-avatar--ring-busy{--sm-presence-color:#f59e0b}.sm-avatar--ring-in-visit{--sm-presence-color:#8b5cf6}.sm-avatar--ring-on-break{--sm-presence-color:#64748b}.sm-avatar--ring-dnd{--sm-presence-color:#ef4444}.sm-avatar--ring-on-call{--sm-presence-color:#06b6d4}.sm-avatar--ring-offline{--sm-presence-color:#94a3b8}.sm-presence{z-index:1;background:#94a3b8;border:2px solid #fff;border-radius:999px;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.sm-avatar--header .sm-presence{border-color:#0041a8}.sm-presence--online{background:#22c55e}.sm-presence--busy{background:#f59e0b}.sm-presence--in-visit{background:#8b5cf6}.sm-presence--on-break{background:#64748b}.sm-presence--dnd{background:#ef4444}.sm-presence--on-call{background:#06b6d4}.sm-presence--offline{background:#94a3b8}.sm-phi-warning{color:#9a3412;background:#fff7ed;border-top:1px solid #fed7aa;align-items:center;gap:6px;padding:8px 12px;font-size:11px;display:flex}.sm-presence-footer{z-index:4;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex;position:relative}.sm-presence-footer__profile{flex:1;min-width:0;position:relative}.sm-presence-footer__profile>button:first-child{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:0;display:flex}.sm-presence-footer>button:first-child{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.sm-presence-footer strong{color:#0f172a;font-size:13px;display:block}.sm-presence-footer small,.sm-presence-label{color:#64748b;text-transform:capitalize;font-size:12px}.sm-presence-label--online{color:#16a34a;font-weight:600}.sm-presence-label--busy,.sm-presence-label--in-visit,.sm-presence-label--on-call{color:#d97706;font-weight:600}.sm-presence-label--dnd{color:#dc2626;font-weight:600}.sm-empty-inbox,.sm-state-message{text-align:center;color:#64748b;padding:28px 20px}.sm-empty-inbox strong{color:#0f172a;margin:10px 0 6px;display:block}.sm-secondary-btn,.sm-primary-btn{cursor:pointer;border:0;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:600}.sm-secondary-btn{color:#0f172a;background:#e2e8f0}.sm-primary-btn{color:#fff;background:#0052cc}.sm-menu,.sm-mute-menu,.sm-presence-menu{z-index:5;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-width:180px;padding:6px;position:absolute;box-shadow:0 12px 28px #0f172a29}.sm-menu button,.sm-mute-menu button,.sm-presence-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:8px 10px;font-size:12px}.sm-menu button:hover,.sm-mute-menu button:hover,.sm-presence-menu button:hover{background:#f1f5f9}.sm-chat-header{border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:12px;display:flex}.sm-chat-header h3{color:inherit;margin:0;font-size:14px}.sm-chat-header small{color:inherit;opacity:.85}.sm-messages{background:#f8fafc;flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow:auto}.sm-bubble{border-radius:14px;max-width:78%;padding:10px 12px;font-size:13px;line-height:1.4;position:relative}.sm-bubble--out{color:#fff;background:#2563eb;align-self:flex-end}.sm-bubble--in{background:#fff;border:1px solid #e2e8f0;align-self:flex-start;box-shadow:0 1px 2px #0f172a0a}.sm-compose{border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;padding:10px;display:flex}.sm-compose-tools{flex-wrap:wrap;gap:4px;display:flex}.sm-compose-tools button{color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;width:30px;height:30px}.sm-compose-tools button.is-active,.sm-compose-tools button.is-open{color:#0f172a;background:#e2e8f0;box-shadow:inset 0 0 0 1px #94a3b8}.sm-priority-tool.is-active,.sm-priority-tool.is-open{box-shadow:inset 0 0 0 1.5px}.sm-priority-tool--urgent{color:#b91c1c;background:#fee2e2}.sm-priority-tool--important{color:#b45309;background:#fef3c7}.sm-priority-tool--ack{color:#6d28d9;background:#ede9fe}.sm-picker-list>button.is-selected{background:#eff6ff;box-shadow:inset 0 0 0 1px #93c5fd}.sm-compose-row{gap:8px;display:flex}.sm-compose-row textarea{resize:vertical;min-height:42px;max-height:110px;font:inherit;border:1px solid #e2e8f0;border-radius:12px;flex:1;padding:10px 12px}.sm-compose-row button,.sm-send-btn{color:#fff;cursor:pointer;background:#0052cc;border:0;border-radius:999px;flex:none;justify-content:center;align-self:flex-end;align-items:center;width:42px;height:42px;display:inline-flex}.sm-send-btn:disabled{opacity:.45;cursor:not-allowed}.sm-composer{background:#fff;border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.sm-compose-tags{flex-wrap:wrap;gap:6px;display:flex}.sm-compose-tag{color:#0f3d91;cursor:pointer;background:#e8f0fe;border:0;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.sm-compose-tag__text{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.sm-compose-tag--urgent,.sm-compose-tag--ack{color:#991b1b;background:#fee2e2}.sm-compose-tag--important{color:#92400e;background:#fef3c7}.sm-compose-tag--patient{color:#065f46;background:#ecfdf5}.sm-compose-tag--appointment{color:#1d4ed8;background:#eff6ff}.sm-upload-progress{color:#64748b;align-items:center;gap:8px;font-size:11px;display:flex}.sm-upload-progress i{background:#0052cc;border-radius:999px;flex:1;max-width:160px;height:4px;display:block}.sm-reply-target{color:#475569;background:#f8fafc;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.sm-reply-target span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sm-reply-target button{color:#64748b;cursor:pointer;background:0 0;border:0}.sm-subview-header{color:#fff;background:linear-gradient(135deg,#0052cc 0%,#0041a8 100%);align-items:center;gap:8px;padding:12px 12px 10px;display:flex}.sm-subview-header h2{color:#fff;flex:1;min-width:0;margin:0;font-size:18px;font-weight:700}.sm-subview-header .sm-icon-btn{color:#fff;background:#ffffff24}.sm-subview-header__expand{margin-left:auto}.sm-subview-content{flex-direction:column;flex:1;gap:10px;min-height:0;padding:4px 12px 16px;display:flex;overflow:auto}.sm-field{color:#64748b;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.sm-field input,.sm-field select,.sm-field textarea{font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;outline:none;padding:10px 12px;font-weight:500}.sm-field input:focus,.sm-field select:focus,.sm-field textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb1f}.sm-directory-list{flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow:auto}.sm-directory-sections{gap:12px}.sm-directory-section h3{letter-spacing:.04em;text-transform:uppercase;color:#64748b;align-items:center;gap:6px;margin:0 0 4px;padding:4px 8px;font-size:11px;font-weight:700;display:flex}.sm-directory-section h3 span{color:#94a3b8;letter-spacing:0;text-transform:none;background:#f1f5f9;border-radius:999px;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:700}.sm-directory-filters{scroll-behavior:smooth;scrollbar-width:thin;overscroll-behavior-x:contain;gap:6px;padding:0 12px 8px;display:flex;overflow:auto hidden}.sm-directory-filter{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:600;display:inline-flex}.sm-directory-filter b{color:#64748b;background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.sm-directory-filter.is-active{color:#fff;background:#2563eb;border-color:#2563eb}.sm-directory-filter.is-active b{color:#fff;background:#ffffff38}.sm-directory-row{border-radius:12px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 8px;display:grid}.sm-directory-row:hover{background:#f8fafc}.sm-directory-row__identity{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-directory-row__identity strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.sm-directory-row__identity small{color:#64748b;text-transform:uppercase;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.sm-directory-row input[type=checkbox]{accent-color:#0052cc;cursor:pointer;width:18px;height:18px}.sm-primary-btn--wide{border-radius:12px;width:100%;margin-top:8px;padding:12px 14px;font-size:13px}.sm-inline-error{color:#991b1b;background:#fef2f2;border-radius:10px;padding:8px 10px;font-size:12px}.sm-chat-header{color:#fff;background:linear-gradient(135deg,#0052cc 0%,#0041a8 100%);border-bottom:1px solid #0000;grid-template-columns:32px 40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.sm-chat-header__identity{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-chat-header__identity strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;display:block;overflow:hidden}.sm-chat-header__name-link{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;width:100%;margin:0;padding:0;text-decoration:none;display:block}.sm-chat-header__name-link:hover strong,.sm-chat-header__name-link:focus-visible strong{text-underline-offset:2px;text-decoration:underline}.sm-chat-header__name-link:focus-visible{outline-offset:2px;outline:2px solid #ffffffb3}.sm-chat-header__status{color:#ffffffd1;text-transform:capitalize;font-size:12px;line-height:1.2;display:block}.sm-chat-header__actions{color:#fff;gap:2px;display:flex}.sm-icon-btn--on-blue{color:#fff;background:#ffffff1f}.sm-icon-btn--on-blue svg{color:#fff;stroke:currentColor}.sm-icon-btn--on-blue.active,.sm-icon-btn.active{background:#ffffff38}.sm-icon-btn--muted{color:#334155;background:#f1f5f9}.sm-icon-btn--muted svg{color:#334155;stroke:currentColor}.sm-icon-btn--muted:hover{color:#0f172a;background:#e2e8f0}.sm-avatar--header:not(.sm-avatar--image){color:#fff}.sm-avatar--header.sm-avatar--image{background:#fff3}.sm-chat-search{color:#64748b;background:#f1f5f9;border-radius:10px;align-items:center;gap:8px;margin:0 12px 8px;padding:8px 10px;display:flex}.sm-chat-search input{font:inherit;background:0 0;border:0;outline:none;flex:1}.sm-chat-search button{color:#64748b;cursor:pointer;background:0 0;border:0}.sm-chat-workspace{flex:1;min-width:0;min-height:0;display:flex}.sm-chat-workspace.is-resizing{cursor:col-resize}.sm-chat-workspace.is-resizing .sm-chat-main,.sm-chat-workspace.is-resizing .sm-details{pointer-events:none;-webkit-user-select:none;user-select:none}.sm-details-resizer{cursor:col-resize;z-index:2;touch-action:none;flex:0 0 6px;width:6px;margin:0 -2px;position:relative}.sm-details-resizer:before{content:"";background:#e2e8f0;border-radius:999px;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:2px}.sm-details-resizer:hover:before,.sm-chat-workspace.is-resizing .sm-details-resizer:before{background:#93c5fd}.sm-chat-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.sm-message-list{background:#f8fafc;flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 12px;display:flex;overflow:hidden auto}.sm-load-more{justify-content:center;padding:4px 0 8px;display:flex}.sm-load-more--history{padding-top:0;padding-bottom:4px}.sm-load-more__btn{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #dbeafe;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600}.sm-load-more__btn:hover:not(:disabled){background:#eff6ff}.sm-load-more__btn:disabled{opacity:.65;cursor:default}.sm-empty-chat{text-align:center;color:#64748b;max-width:260px;margin:auto;padding:24px 16px}.sm-empty-chat__icon{color:#0052cc;background:#e8f0fe;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex}.sm-empty-chat strong{color:#0f172a;margin:12px 0 6px;font-size:14px;display:block}.sm-empty-chat p{margin:0;font-size:12px;line-height:1.45}.sm-message{align-items:flex-end;gap:8px;max-width:100%;display:flex}.sm-message--mine{flex-direction:row-reverse}.sm-message__body{flex-direction:column;gap:4px;min-width:0;max-width:min(82%,320px);display:flex}.sm-message--mine .sm-message__body{align-items:flex-end}.sm-message__sender{color:#64748b;padding:0 4px;font-size:11px}.sm-avatar--message{background:#4f46e5;width:28px;height:28px;font-size:10px}.sm-message--mine .sm-bubble{color:#fff;background:#2563eb;border:0}.sm-message--mine .sm-reference,.sm-message--mine .sm-task-card{color:#0f172a;background:#fff7ed;border:1px solid #fdba74}.sm-message--mine .sm-reference--patient{background:#ecfdf5;border-color:#a7f3d0}.sm-message--mine .sm-reference__label,.sm-message--mine .sm-reference--appointment .sm-reference__label{color:#c2410c}.sm-message--mine .sm-reference--patient .sm-reference__label{color:#047857}.sm-message--mine .sm-reference strong,.sm-message--mine .sm-task-card strong{color:#0f172a}.sm-message--mine .sm-reference__meta,.sm-message--mine .sm-reference small,.sm-message--mine .sm-reference span,.sm-message--mine .sm-task-card span{color:#7c2d12}.sm-reference__patient{color:#9a3412!important;font-size:14px!important}.sm-message--mine .sm-bubble.sm-bubble--urgent{color:#7f1d1d;box-shadow:none;background:#fef2f2;border:1px solid #fecaca;border-left:3px solid #ef4444}.sm-message--mine .sm-bubble.sm-bubble--important{color:#92400e;box-shadow:none;background:#fffbeb;border:1px solid #fde68a;border-left:3px solid #f59e0b}.sm-message--mine .sm-bubble.sm-bubble--ack{color:#5b21b6;box-shadow:none;background:#f5f3ff;border:1px solid #ddd6fe;border-left:3px solid #7c3aed}.sm-message--mine .sm-bubble.sm-bubble--urgent .sm-priority,.sm-message--mine .sm-bubble.sm-bubble--important .sm-priority,.sm-message--mine .sm-bubble.sm-bubble--ack .sm-priority{background:inherit;color:inherit}.sm-message--mine .sm-bubble.sm-bubble--urgent .sm-priority{color:#b91c1c;background:#fee2e2}.sm-message--mine .sm-bubble.sm-bubble--important .sm-priority{color:#b45309;background:#fef3c7}.sm-message--mine .sm-bubble.sm-bubble--ack .sm-priority{color:#6d28d9;background:#ede9fe}.sm-message--mine .sm-bubble.sm-bubble--urgent .sm-mention,.sm-bubble--urgent .sm-mention{color:#b91c1c;font-weight:700}.sm-message--mine .sm-bubble.sm-bubble--important .sm-mention,.sm-bubble--important .sm-mention{color:#b45309;font-weight:700}.sm-message--mine .sm-bubble.sm-bubble--ack .sm-mention,.sm-bubble--ack .sm-mention{color:#6d28d9;font-weight:700}.sm-mention{color:#0052cc;font-weight:600}.sm-message--mine .sm-bubble:not(.sm-bubble--urgent):not(.sm-bubble--important):not(.sm-bubble--ack) .sm-mention{color:#fff;text-underline-offset:2px;background:#ffffff2e;border-radius:4px;padding:0 3px;font-weight:700;text-decoration:underline}.sm-message--flash{animation:1.4s sm-message-flash}@keyframes sm-message-flash{0%,to{background:0 0}25%,60%{background:#2563eb1f;border-radius:14px}}.sm-message__meta{color:#94a3b8;justify-content:flex-end;align-items:center;gap:5px;margin-top:4px;padding:0 2px;font-size:11px;line-height:1;display:flex}.sm-message:not(.sm-message--mine) .sm-message__meta{justify-content:flex-start}.sm-message__meta time{color:#94a3b8;white-space:nowrap;font-size:11px}.sm-bubble-wrap{flex-direction:column;max-width:100%;display:flex;position:relative}.sm-message--mine .sm-bubble-wrap{align-items:flex-end}.sm-message:not(.sm-message--mine) .sm-bubble-wrap{align-items:flex-start}.sm-bubble{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:16px;max-width:100%;padding:10px 12px;font-size:13px;line-height:1.4;box-shadow:0 1px 2px #0f172a0a}.sm-bubble p{white-space:pre-wrap;word-break:break-word;margin:0}.sm-bubble--urgent{color:#7f1d1d;background:#fef2f2;border-left:3px solid #ef4444}.sm-bubble--important{color:#92400e;background:#fffbeb;border-left:3px solid #f59e0b}.sm-bubble--ack{color:#5b21b6;background:#f5f3ff;border-left:3px solid #7c3aed}.sm-bubble--deleted{opacity:.7;font-style:italic}.sm-bubble-chevron{color:#94a3b8;opacity:0;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:16px;height:16px;margin:0;padding:0;transition:opacity .12s,background .12s;display:inline-flex}.sm-bubble-chevron svg{transform:rotate(90deg)}.sm-message:hover .sm-bubble-chevron,.sm-bubble-wrap.is-open .sm-bubble-chevron,.sm-bubble-chevron:focus-visible,.sm-bubble-chevron.active{opacity:.85}.sm-bubble-chevron:hover,.sm-bubble-chevron.active,.sm-bubble-chevron:focus-visible{opacity:1;color:#64748b;background:#0f172a0f}.sm-message-hover{opacity:0;pointer-events:none;z-index:3;align-items:center;gap:4px;transition:opacity .12s;display:flex;position:absolute;top:-10px;right:-6px}.sm-message--mine .sm-message-hover{left:-6px;right:auto}.sm-message:hover .sm-message-hover,.sm-bubble-wrap.is-open .sm-message-hover,.sm-message-hover:focus-within{opacity:1;pointer-events:auto}@media (hover:none){.sm-bubble-chevron{opacity:.75}.sm-message-hover{opacity:1;pointer-events:auto}}.sm-hover-react{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex;box-shadow:0 2px 8px #0f172a1f}.sm-hover-react:hover,.sm-hover-react.active{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.sm-thread-link,.sm-thread-badge,.sm-reactions button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:4px;padding:3px 7px;font-size:11px;display:inline-flex}.sm-thread-badge{color:#475569;background:#f8fafc;border-color:#e2e8f0;border-radius:10px;gap:6px;max-width:100%;margin-top:4px;padding:5px 10px;font-weight:600}.sm-thread-badge:hover{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.sm-thread-badge i{opacity:.55;font-style:normal}.sm-thread-badge time{color:inherit;opacity:.85;font-weight:500}.sm-reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.sm-reaction{z-index:1;display:inline-flex;position:relative}.sm-reaction:hover,.sm-reaction:focus-within{z-index:12}.sm-reactions .sm-reaction>button,.sm-reactions button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:4px;padding:3px 7px;font-size:11px;display:inline-flex}.sm-reactions .sm-reaction>button.active,.sm-reactions button.active,.sm-reaction.is-mine>button{color:#1d4ed8;background:#e8f0fe;border-color:#93c5fd}.sm-reaction-tooltip{color:#f9fafb;opacity:0;visibility:hidden;pointer-events:none;z-index:40;text-align:left;background:#111827;border-radius:10px;min-width:168px;max-width:220px;padding:8px 10px;transition:opacity .12s,visibility .12s;position:absolute;top:calc(100% + 8px);bottom:auto;left:0;box-shadow:0 10px 24px #0f172a47}.sm-message--mine .sm-reaction-tooltip{left:auto;right:0}.sm-reaction-tooltip:before{content:"";border:6px solid #0000;border-bottom-color:#111827;position:absolute;bottom:100%;left:14px}.sm-message--mine .sm-reaction-tooltip:before{left:auto;right:14px}.sm-reaction:hover .sm-reaction-tooltip,.sm-reaction:focus-within .sm-reaction-tooltip{opacity:1;visibility:visible}.sm-reaction-tooltip__head{border-bottom:1px solid #ffffff1a;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;display:flex}.sm-reaction-tooltip__head>span{font-size:18px;line-height:1}.sm-reaction-tooltip__head em{color:#9ca3af;font-size:11px;font-style:normal}.sm-reaction-tooltip ul{flex-direction:column;gap:6px;max-height:140px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.sm-reaction-tooltip li{color:#e5e7eb;align-items:center;gap:8px;font-size:12px;line-height:1.2;display:flex}.sm-reaction-tooltip li b{color:#f9fafb;background:#374151;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:9px;font-weight:700;display:inline-flex}.sm-reaction-tooltip small{color:#9ca3af;border-top:1px solid #ffffff1a;margin-top:8px;padding-top:8px;font-size:10px;display:block}.sm-message-menu{z-index:20;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:auto;box-shadow:0 12px 28px #0f172a29}.sm-message--mine .sm-message-menu{left:auto;right:0}.sm-message-menu--up{top:auto;bottom:calc(100% + 6px)}.sm-reaction-picker{z-index:24;background:#fff;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;align-items:stretch;gap:6px;width:max-content;max-width:min(360px,100vw - 32px);padding:6px;display:flex;position:absolute;top:-52px;left:0;right:auto;box-shadow:0 8px 24px #0f172a29}.sm-message--mine .sm-reaction-picker{left:auto;right:0}.sm-reaction-picker--up{top:auto;bottom:calc(100% + 8px)}.sm-reaction-picker--down{top:-52px;bottom:auto}.sm-reaction-picker.is-expanded{border-radius:16px;width:min(300px,100vw - 32px)}.sm-reaction-picker__quick{align-items:center;gap:4px;min-width:0;display:flex}.sm-reaction-picker__emojis{scrollbar-width:none;flex-wrap:nowrap;align-items:center;gap:2px;min-width:0;display:flex;overflow-x:auto}.sm-reaction-picker__emojis::-webkit-scrollbar{display:none}.sm-reaction-picker__all{border-top:1px solid #e2e8f0;max-height:200px;padding-top:6px;overflow:auto}.sm-reaction-picker__all-title{color:#64748b;padding:0 4px 6px;font-size:11px;font-weight:600}.sm-message-menu button,.sm-reaction-picker button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:inline-flex}.sm-reaction-picker__emojis>button,.sm-reaction-more{text-align:center;border-radius:999px;flex-shrink:0;justify-content:center;width:34px;height:34px;padding:0;font-size:18px;line-height:1}.sm-reaction-more{color:#334155;margin-left:2px;font-weight:700;background:#f1f5f9!important;border:1px solid #cbd5e1!important;font-size:22px!important}.sm-reaction-more.active{color:#1d4ed8;background:#e8f0fe!important;border-color:#93c5fd!important}.sm-message-menu button:hover,.sm-reaction-picker button:hover{background:#f1f5f9}.sm-message-menu button.danger{color:#b91c1c}.sm-emoji-grid--reactions{grid-template-columns:repeat(6,1fr);gap:2px;padding:2px}.sm-emoji-grid--reactions button{aspect-ratio:1;border-radius:8px;justify-content:center;width:100%;padding:0;font-size:18px}.sm-reference,.sm-task-card{color:inherit;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;margin-top:8px;padding:10px 12px;text-decoration:none;display:flex}.sm-task-card--button{text-align:left;cursor:pointer;width:100%;font:inherit;transition:border-color .15s,background .15s}.sm-task-card--button:hover{background:#eef2ff;border-color:#c7d2fe}.sm-task-card__hint{color:#4f46e5;margin-top:2px;font-size:11px;font-weight:600}.sm-reference--patient{background:#ecfdf5;border-color:#a7f3d0}button.sm-reference{text-align:left;width:100%;font:inherit;cursor:pointer}.sm-task-card__patient-link{color:#0052cc;font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font-size:12px;font-weight:600;text-decoration:underline;display:inline-flex}.sm-reference--appointment{background:#fff7ed;border-color:#fdba74}.sm-reference--appointment .sm-reference__label{color:#c2410c}.sm-reference__meta{color:#7c2d12;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.sm-reference__meta em{align-items:center;gap:4px;font-style:normal;display:inline-flex}.sm-mention-person{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.sm-mention-person:hover{background:#f1f5f9}.sm-mention-person__copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sm-mention-person__copy strong{color:#0f172a;font-size:13px}.sm-mention-person__copy small{color:#64748b;font-size:11px}.sm-mention-presence{text-transform:capitalize;color:#94a3b8;white-space:nowrap;font-size:10px;font-style:normal}.sm-mention-presence--online{color:#16a34a}.sm-mention-presence--busy,.sm-mention-presence--in-visit{color:#7c3aed}.sm-mention-presence--on-break{color:#ea580c}.sm-mention-section{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.sm-mention-section:last-child{margin-bottom:0}.sm-mention-section>h4{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:0 0 4px;padding:0 4px;font-size:11px;font-weight:700}.sm-mention-broadcast-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;display:grid}.sm-mention-broadcast{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:10px;display:flex}.sm-mention-broadcast:hover{background:#eff6ff;border-color:#bfdbfe}.sm-mention-broadcast--everyone{background:#fff1f2;border-color:#fecaca}.sm-mention-broadcast--everyone:hover{background:#ffe4e6;border-color:#fda4af}.sm-mention-broadcast--providers{background:#f5f3ff;border-color:#ddd6fe}.sm-mention-broadcast--providers:hover{background:#ede9fe;border-color:#c4b5fd}.sm-mention-broadcast__icon{color:#2563eb;background:#ffffffd9;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.sm-mention-broadcast__copy{flex-direction:column;gap:2px;display:flex}.sm-mention-broadcast__copy strong{color:#0f172a;font-size:13px}.sm-mention-broadcast__copy small{color:#64748b;font-size:11px}.sm-mention-broadcast em{color:#2563eb;font-size:11px;font-style:normal;font-weight:700}.sm-mention-group--roles{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:8px}.sm-mention-role{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.sm-mention-role:hover{background:#f1f5f9}.sm-mention-role__token{min-width:88px;font-size:12px;font-weight:700}.sm-mention-role__token--everyone{color:#dc2626}.sm-mention-role__token--providers{color:#7c3aed}.sm-mention-role__token--role{color:#0d9488}.sm-mention-role__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-mention-role__copy strong{color:#0f172a;font-size:13px}.sm-mention-role small,.sm-mention-role__copy small{color:#64748b;font-size:11px}.sm-reference__label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;align-items:center;gap:4px;font-size:10px;font-weight:700;display:inline-flex}.sm-reference strong,.sm-task-card strong{color:#0f172a;overflow-wrap:anywhere;font-size:13px}.sm-reference small,.sm-reference span,.sm-task-card span{color:#64748b;font-size:11px}.sm-picker{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;max-height:240px;display:flex;overflow:hidden;box-shadow:0 8px 24px #0f172a1a}.sm-picker>header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.sm-picker>header button{color:#64748b;cursor:pointer;background:0 0;border:0}.sm-picker .sm-search{margin:8px 10px}.sm-picker-list{flex-direction:column;gap:4px;padding:6px;display:flex;overflow:auto}.sm-picker-list>button,.sm-picker-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:flex-start;gap:8px;width:100%;padding:10px;display:flex}.sm-picker-list>button:hover,.sm-picker-row:hover{background:#f1f5f9}.sm-picker-row__copy,.sm-picker-list>button{min-width:0}.sm-picker-row__copy strong,.sm-picker-list>button strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.sm-picker-row__copy small,.sm-picker-list>button small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.sm-picker-state,.sm-picker-fallback{text-align:center;color:#64748b;padding:16px 12px;font-size:12px}.sm-picker-fallback{text-align:left;flex-direction:column;gap:8px;display:flex}.sm-picker-fallback input{font:inherit;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px}.sm-emoji-grid{grid-template-columns:repeat(5,1fr);gap:4px;padding:8px;display:grid}.sm-emoji-grid button{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px;font-size:18px}.sm-emoji-grid button:hover{background:#f1f5f9}.sm-priority{text-transform:uppercase;border-radius:999px;align-items:center;margin-bottom:6px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.sm-priority--urgent{color:#b91c1c;background:#fee2e2}.sm-priority--important{color:#b45309;background:#fef3c7}.sm-priority--ack{color:#6d28d9;background:#ede9fe}.sm-priority--normal{color:#475569;background:#e2e8f0}.sm-conversation-sections{flex:1;min-height:0;padding:0 8px 12px;overflow:auto}.sm-conversation-sections section{margin-bottom:8px}.sm-conversation-sections h3{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;align-items:center;gap:6px;margin:8px 8px 6px;font-size:11px;display:flex}.sm-conversation{border-radius:12px;grid-template-columns:minmax(0,1fr) 28px;align-items:stretch;display:grid;position:relative}.sm-conversation:hover{background:#f8fafc}.sm-conversation__main{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 6px 10px 8px;display:grid}.sm-conversation__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-conversation__copy>span{align-items:center;gap:6px;min-width:0;display:flex}.sm-conversation__copy strong{text-overflow:ellipsis;white-space:nowrap;color:#0f172a;flex:1;min-width:0;font-size:13px;overflow:hidden}.sm-conversation__copy time{color:#94a3b8;flex:none;font-size:11px}.sm-conversation__copy small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.sm-conversation__menu-btn{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:8px}.sm-conversation__urgent{color:#ef4444;font-style:normal}.sm-conversation--muted .sm-conversation__main{opacity:.72}.sm-conversation--muted .sm-conversation__copy strong{color:#64748b}.sm-conversation.is-menu-open{z-index:8}.sm-conversation__muted{color:#94a3b8;vertical-align:middle;justify-content:center;align-items:center;margin-left:4px;display:inline-flex}.sm-conversation__muted svg{display:block}.sm-conversation__mention{color:#3730a3;background:#e0e7ff;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:inline-flex}.sm-conversation-menu,.sm-mute-menu{z-index:30;opacity:1;isolation:isolate;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-width:200px;padding:6px;position:absolute;top:42px;right:8px;box-shadow:0 12px 28px #0f172a38}.sm-presence-selector{opacity:1;isolation:isolate;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px 10px 10px;box-shadow:0 16px 40px #0f172a2e}.sm-presence-selector--dock{z-index:40;min-width:248px;max-width:calc(100vw - 48px);position:absolute;bottom:calc(100% + 10px);left:0}.sm-presence-selector__title{letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin:0 8px 10px;font-size:11px;font-weight:700}.sm-presence-selector__list{flex-direction:column;gap:2px;display:flex}.sm-presence-selector__option{text-align:left;cursor:pointer;color:#334155;background:0 0;border:0;border-radius:10px;grid-template-columns:16px 1fr auto;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:14px;display:grid}.sm-presence-selector__option:hover{background:#f8fafc}.sm-presence-selector__option.is-selected{background:#f1f5f9}.sm-presence-selector__option.is-selected .sm-presence-selector__label{color:#0f172a;font-weight:700}.sm-presence-dot{border-radius:999px;flex-shrink:0;width:14px;height:14px}.sm-presence-dot--online{background:#22c55e}.sm-presence-dot--busy{background:#f59e0b}.sm-presence-dot--in-visit{background:#8b5cf6}.sm-presence-dot--on-break{background:#64748b}.sm-presence-dot--dnd{background:#ef4444}.sm-presence-dot--on-call{background:#06b6d4}.sm-presence-dot--offline{background:#cbd5e1}.sm-presence-selector__check{color:#2563eb}.sm-conversation-menu button,.sm-mute-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:12px;display:inline-flex}.sm-conversation-menu button:hover,.sm-mute-menu button:hover{background:#f1f5f9}.sm-mute-menu header{justify-content:space-between;align-items:center;padding:6px 8px 8px;font-size:12px;display:flex}.sm-avatar__type{color:#fff;z-index:1;background:#0f172a;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex;position:absolute;bottom:-2px;right:-2px}.sm-typing{color:#64748b;align-items:center;gap:8px;padding:0 4px;font-size:12px;display:flex}.sm-typing strong{color:#0f172a;font-weight:600}.sm-typing em{color:#64748b;font-style:normal}.sm-typing span{gap:3px;display:inline-flex}.sm-typing i{background:#94a3b8;border-radius:999px;width:5px;height:5px;animation:1s ease-in-out infinite sm-typing;display:block}.sm-typing i:nth-child(2){animation-delay:.15s}.sm-typing i:nth-child(3){animation-delay:.3s}@keyframes sm-typing{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.sm-channel-warning,.sm-urgent-banner,.sm-readonly-note{border-radius:10px;align-items:center;gap:6px;margin:0 12px 8px;padding:8px 10px;font-size:12px;display:flex}.sm-channel-warning{color:#9a3412;background:#fff7ed}.sm-urgent-banner{color:#991b1b;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;width:calc(100% - 24px)}.sm-urgent-banner b{color:#b91c1c;text-transform:uppercase;letter-spacing:.04em;margin-left:auto;font-size:11px}.sm-readonly-note{color:#64748b;background:#f8fafc}.sm-details{background:#fff;flex-direction:column;flex:none;min-width:220px;max-width:65%;min-height:0;display:flex}.sm-details header{text-align:center;border-bottom:1px solid #e2e8f0;flex-direction:column;align-items:center;gap:6px;padding:14px 40px;display:flex;position:relative}.sm-details__close{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:absolute;top:8px;left:8px}.sm-details__close:hover,.sm-details__close:focus-visible{color:#0f172a;background:#f1f5f9}.sm-details__profile-link{color:#0052cc;cursor:pointer;background:#eef4ff;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;text-decoration:none;display:inline-flex;position:absolute;top:8px;right:8px}.sm-details__profile-link:hover,.sm-details__profile-link:focus-visible{color:#003f9e;background:#dce9ff}.sm-details__profile-link:focus-visible{outline-offset:2px;outline:2px solid #0052cc}.sm-details__name-link{max-width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;margin:0;padding:0;text-decoration:none;display:block;position:static}.sm-details__name-link strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sm-details__name-link:hover strong,.sm-details__name-link:focus-visible strong{color:#0052cc;text-underline-offset:2px;text-decoration:underline}.sm-details__name-link:focus-visible{outline-offset:2px;outline:2px solid #0052cc}.sm-details nav{scrollbar-width:thin;scrollbar-color:#94a3b8b3 transparent;gap:4px;padding:8px;display:flex;overflow-x:auto}.sm-details nav::-webkit-scrollbar{height:6px}.sm-details nav::-webkit-scrollbar-thumb{background:#94a3b8b3;border-radius:999px}.sm-details nav::-webkit-scrollbar-track{background:0 0}.sm-details nav button{color:#475569;cursor:pointer;white-space:nowrap;background:#f1f5f9;border:0;border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:600}.sm-details nav button.active{color:#fff;background:#0052cc}.sm-details__content{color:#475569;flex:1;padding:8px 12px 16px;font-size:12px;overflow:auto}.sm-details-section-title{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:0 0 10px;font-size:11px;font-weight:700}.sm-details-members-add{border-bottom:1px solid #e2e8f0;margin-bottom:16px;padding-bottom:14px}.sm-details-members-current{flex-direction:column;gap:2px;display:flex}.sm-details-members-empty{color:#94a3b8;margin:8px 0 0;font-size:12px}.sm-search--compact{margin:0 0 8px;padding:8px 10px}.sm-directory-filters--compact{padding:0 0 8px}.sm-details-members-picker{max-height:220px;padding:0;overflow:auto}.sm-directory-row--static:hover{background:0 0}.sm-directory-row--static .sm-mention-presence{margin-left:auto}.sm-form-picker{flex-direction:column;gap:8px;display:flex}.sm-form-picker--directory{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.sm-form-picker__selection{flex-wrap:wrap;gap:6px;display:flex}.sm-form-picker__chip{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600}.sm-form-picker__chip.is-active{color:#fff;background:#2563eb;border-color:#2563eb}.sm-form-picker__list{max-height:180px;padding:0;overflow:auto}.sm-form-picker__empty{color:#94a3b8;margin:8px 4px;font-size:12px}.sm-form-picker__selected{color:#2563eb;margin-left:auto;font-size:11px;font-style:normal;font-weight:700}.sm-directory-row--button{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0}.sm-directory-row--button.is-selected{background:#eff6ff}.sm-form-picker--dropdown{position:relative}.sm-form-picker__trigger{color:#0f172a;cursor:pointer;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:13px;display:flex}.sm-form-picker__trigger:hover{border-color:#cbd5e1}.sm-form-picker__menu{z-index:30;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 12px 32px #0f172a24}.sm-form-picker__menu-list{flex-direction:column;gap:2px;max-height:220px;display:flex;overflow:auto}.sm-form-picker__menu-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;gap:2px;width:100%;padding:8px 10px;display:flex}.sm-form-picker__menu-item strong{color:#0f172a;font-size:13px}.sm-form-picker__menu-item small{color:#64748b;font-size:11px}.sm-form-picker__menu-item:hover,.sm-form-picker__menu-item.is-selected{background:#eff6ff}.sm-detail-row{border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:8px;padding:8px 0;display:flex}.sm-panel-view{background:#f8fafc;flex-direction:column;flex:1;min-height:0;display:flex}.sm-panel-view__header{background:#fff;border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:12px 14px;display:flex}.sm-panel-view__header button{cursor:pointer;background:0 0;border:0}.sm-panel-view__header strong{color:#0f172a;font-size:14px;display:block}.sm-panel-view__header small{color:#64748b;font-size:11px}.sm-message-info__content{flex-direction:column;flex:1;gap:14px;min-height:0;padding:14px;display:flex;overflow:auto}.sm-message-info__preview{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:14px 14px 14px 4px;align-self:flex-start;max-width:88%;padding:10px 12px 8px;box-shadow:0 1px 2px #0f172a0a}.sm-message-info__preview.is-mine{color:#fff;background:#2563eb;border-color:#0000;border-radius:14px 14px 4px;align-self:flex-end}.sm-message-info__preview p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px;line-height:1.4}.sm-message-info__preview footer{opacity:.8;justify-content:flex-end;align-items:center;gap:6px;margin-top:6px;font-size:10px;display:flex}.sm-message-info__sections{flex-direction:column;gap:10px;display:flex}.sm-receipt-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px;box-shadow:0 1px 2px #0f172a08}.sm-receipt-section>header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.sm-receipt-section>header strong{color:#0f172a;font-size:13px;display:block}.sm-receipt-section>header small{color:#64748b;font-size:11px;display:block}.sm-receipt-section__icon{letter-spacing:-.06em;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:inline-flex}.sm-receipt-section__icon--read{color:#0284c7;background:#e0f2fe}.sm-receipt-section__icon--delivered{color:#475569;background:#f1f5f9}.sm-receipt-section__icon--pending{color:#c2410c;background:#fff7ed}.sm-receipt-section__empty{color:#94a3b8;margin:0;padding:8px 2px 2px;font-size:12px}.sm-receipt-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sm-receipt-list li{background:#f8fafc;border-radius:12px;align-items:center;gap:10px;padding:8px;display:flex}.sm-receipt-list__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-receipt-list__meta strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25;display:block;overflow:hidden}.sm-receipt-list__meta small{color:#64748b;font-size:11px;line-height:1.25;display:block}.sm-ack-btn{color:#fff;cursor:pointer;background:#5b21b6;border:0;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:11px;font-weight:700}.sm-attachment{color:inherit;text-align:left;cursor:pointer;width:100%;font:inherit;background:#0f172a0f;border:0;border-radius:10px;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;text-decoration:none;display:flex}.sm-attachment span{flex:1;min-width:0}.sm-attachment strong,.sm-attachment small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sm-attachment small{opacity:.8;font-size:11px}.sm-media{width:100%;max-width:280px;margin-top:8px}.sm-media--image{background:#0f172a14;border-radius:12px;overflow:hidden}.sm-media__image-btn{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.sm-media__image-btn img{object-fit:cover;width:100%;max-height:280px;display:block}.sm-media--voice{background:#0f172a0f;border-radius:14px;flex-direction:column;gap:6px;min-width:220px;padding:10px 12px;display:flex}.sm-message--mine .sm-media--voice,.sm-message--mine .sm-attachment{background:#ffffff29}.sm-voice-player{align-items:center;gap:10px;width:100%;display:flex}.sm-voice-player audio{display:none}.sm-voice-player__play{color:#fff;cursor:pointer;background:#0f172a;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;line-height:1;display:inline-flex}.sm-message--mine .sm-voice-player__play{color:#0041a8;background:#fff}.sm-voice-player__track{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sm-voice-player__track input[type=range]{accent-color:#0041a8;cursor:pointer;width:100%}.sm-message--mine .sm-voice-player__track input[type=range]{accent-color:#fff}.sm-voice-player__track span{opacity:.85;font-variant-numeric:tabular-nums;font-size:10px}.sm-media__pending{opacity:.8;text-align:center;padding:18px 12px;font-size:12px}.sm-activity-message{color:#94a3b8;background:#f1f5f9;border-radius:999px;align-self:center;padding:4px 10px;font-size:11px}.sm-voice-recorder{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.sm-voice-recorder span{color:#0052cc;background:#e8f0fe;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex}.sm-voice-recorder span.recording{color:#b91c1c;background:#fee2e2}.sm-danger-btn{color:#fff;cursor:pointer;background:#dc2626;border:0;border-radius:10px;padding:8px 12px;font-weight:600}.sm-receipt{letter-spacing:-.04em;color:#94a3b8;font-size:12px;line-height:1}.sm-receipt--delivered{color:#94a3b8}.sm-receipt--read{color:#38bdf8}.sm-receipt--failed{color:#f87171;font-weight:700}.sm-receipt--sending{opacity:.7;color:#94a3b8}.sm-patient-tasks{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.sm-patient-tasks__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.sm-patient-tasks--detail-open .sm-patient-tasks__header{align-items:center}.sm-patient-tasks__title{align-items:flex-start;gap:10px;min-width:0;display:flex}.sm-patient-tasks__icon{color:#2563eb;background:#dbeafe;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.sm-patient-tasks__title h3{color:#0f172a;margin:0;font-size:16px}.sm-patient-tasks__title p{color:#64748b;margin:4px 0 0;font-size:12px}.sm-patient-task-filters{align-items:center;margin-bottom:14px}.sm-patient-task-refresh{color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex-shrink:0;margin-left:auto;font-size:12px;font-weight:600}.sm-patient-task-list{flex-direction:column;gap:8px;display:flex}.sm-patient-task-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:12px}.sm-task-row__open--static{cursor:default}.sm-task-row__open--static:hover{background:0 0}.sm-task-row__description{color:#64748b;font-size:12px;line-height:1.45;display:block}.sm-patient-task__actions{border-left:1px solid #e2e8f0;flex-direction:column;justify-content:center;gap:8px;min-width:132px;padding:10px 12px;display:flex}.sm-patient-task__status select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:7px 8px;font-size:12px}.sm-patient-tasks--detail-open{padding-bottom:12px}.sm-patient-tasks__title--detail h3{font-size:15px}.sm-patient-task-detail__back{flex-shrink:0;align-items:center;gap:6px;font-weight:600;display:inline-flex}.sm-patient-task-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.sm-patient-task-detail-card__top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sm-patient-task-detail-card__messenger{margin-left:auto}.sm-patient-task-detail-card__submit{align-self:flex-start}.sm-patient-tasks .sm-task-priority-badge{color:#475569;background:#e2e8f0}.sm-patient-tasks .sm-task-priority-badge--urgent{color:#b91c1c;background:#fee2e2}.sm-patient-tasks .sm-task-priority-badge--high{color:#b45309;background:#ffedd5}.sm-patient-tasks .sm-task-priority-badge--normal{color:#1d4ed8;background:#dbeafe}.sm-patient-tasks .sm-task-priority-badge--low{color:#64748b;background:#f1f5f9}.sm-patient-comms__search{background:#fff;border:1px solid #e2e8f0;margin:0 0 12px}.sm-patient-comms__search-clear{color:#94a3b8;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.sm-patient-comms__search-clear:hover{color:#475569}.sm-patient-comms__list{gap:10px}.sm-patient-comms__main{flex-direction:column;flex:1;align-items:stretch;gap:0;min-width:0;padding:12px 14px;display:flex}.sm-patient-comms__open{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;align-items:flex-start;gap:12px;padding:0;display:flex}.sm-patient-comms__open:hover strong{color:#1d4ed8}.sm-patient-comms__avatar{flex-shrink:0;margin-top:2px}.sm-patient-comms__type{color:#475569;text-transform:capitalize;background:#e2e8f0;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.sm-patient-comms__type--task{color:#1d4ed8;background:#dbeafe}.sm-patient-comms__type--attachment{color:#0e7490;background:#ecfeff}.sm-patient-comms__type--mention{color:#b45309;background:#fef3c7}.sm-patient-comms__type--urgent{color:#b91c1c;background:#fee2e2}.sm-patient-comms__type--high{color:#c2410c;background:#ffedd5}.sm-patient-comms__type--activity{color:#64748b;background:#f1f5f9}.sm-patient-comms__type--deleted{color:#94a3b8;background:#f8fafc}.sm-patient-comms__preview{white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sm-patient-comms__row--deleted .sm-patient-comms__preview,.sm-patient-comms__row--activity .sm-patient-comms__preview{color:#64748b;font-style:italic}.sm-patient-comms__row--urgent{border-color:#fecaca}.sm-patient-comms__row--high{border-color:#fed7aa}.sm-patient-comms__files{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.sm-patient-comms__file{color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;max-width:100%;padding:5px 8px;font-size:12px;text-decoration:none;display:inline-flex}.sm-patient-comms__file:hover{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.sm-patient-comms__file.is-static{color:#475569}.sm-patient-comms__file span{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.sm-patient-comms__file em{color:#94a3b8;white-space:nowrap;font-size:11px;font-style:normal}.sm-patient-comms__task-chip{color:#1d4ed8;text-transform:capitalize;background:#eff6ff;border-radius:8px;align-items:center;gap:6px;width:fit-content;margin-top:8px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.sm-patient-comms__refs{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.sm-patient-comms__refs em{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal}.sm-patient-comms__actions{align-items:stretch;min-width:88px}.sm-patient-comms__actions .sm-text-btn{justify-content:center;align-items:center;gap:4px;width:100%;font-weight:600;display:inline-flex}.sm-patient-task-status-btns{max-width:100%}.sm-patient-task-list .sm-task-row__open{cursor:pointer}.sm-result-list{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:auto}.sm-flag-view__intro{color:#64748b;margin:0 0 4px;font-size:12px;line-height:1.4}.sm-flag-view{gap:12px}.sm-flag-view__banner{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.sm-flag-view__banner--saved{background:linear-gradient(#eff6ff 0%,#fff 100%);border-color:#bfdbfe}.sm-flag-view__banner--urgent{background:linear-gradient(#fef2f2 0%,#fff 100%);border-color:#fecaca}.sm-flag-view__banner--mentions{background:linear-gradient(#eef2ff 0%,#fff 100%);border-color:#c7d2fe}.sm-flag-view__banner-icon{color:#1d4ed8;background:#dbeafe;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.sm-flag-view__banner--urgent .sm-flag-view__banner-icon{color:#b91c1c;background:#fee2e2}.sm-flag-view__banner--mentions .sm-flag-view__banner-icon{color:#4338ca;background:#e0e7ff}.sm-flag-view__banner strong{color:#0f172a;font-size:13px;line-height:1.25;display:block}.sm-flag-view__banner small{color:#64748b;margin-top:2px;font-size:12px;line-height:1.35;display:block}.sm-result-card{text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:0;width:100%;padding:0;transition:border-color .12s,background .12s,box-shadow .12s;display:flex;overflow:hidden}.sm-result-card__open{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;grid-template-columns:36px 1fr;align-items:start;gap:10px;padding:12px;display:grid}.sm-result-card:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 4px 14px #0f172a0d}.sm-result-card.is-unread{background:#f8fbff;border-color:#bfdbfe;box-shadow:inset 3px 0 #3b82f6}.sm-result-card--urgent.is-unread{background:#fff7f7;border-color:#fecaca;box-shadow:inset 3px 0 #ef4444}.sm-result-card--mention.is-unread{background:#f8fbff;border-color:#bfdbfe;box-shadow:inset 3px 0 #2563eb}.sm-result-card--urgent:not(.is-unread){background:#fff;border-color:#f1f5f9}.sm-result-card__unsave{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;justify-content:center;align-self:flex-end;align-items:center;gap:6px;margin:0 12px 12px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-flex}.sm-result-card__unsave:hover:not(:disabled){color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.sm-result-card__unsave:disabled{opacity:.65;cursor:wait}.sm-result-card__pill--saved{color:#1d4ed8;background:#dbeafe}.sm-result-card__avatar{margin-top:2px}.sm-result-card__body{flex-direction:column;gap:4px;min-width:0;display:flex}.sm-result-card__meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.sm-result-card__meta strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sm-result-card__meta time,.sm-result-card small{color:#94a3b8;flex-shrink:0;font-size:11px}.sm-result-card__preview{color:#475569;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.sm-result-card__mention{color:#1d4ed8;font-style:normal;font-weight:700}.sm-result-card--urgent .sm-result-card__mention{color:#b91c1c}.sm-result-card__footer{align-items:center;gap:8px;margin-top:2px;display:flex}.sm-result-card__pill{text-transform:uppercase;letter-spacing:.03em;color:#b91c1c;background:#fee2e2;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.sm-result-card__pill--mention{color:#1d4ed8;background:#dbeafe}.sm-result-card__dot{background:#2563eb;border-radius:999px;width:7px;height:7px;margin-left:auto}.sm-result-card--urgent .sm-result-card__dot{background:#ef4444}.sm-workflow-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.sm-workflow-card>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.sm-workflow-card p{color:#334155;margin:0;font-size:13px}.sm-workflow-card footer{color:#94a3b8;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.sm-workflow-card__actions{align-items:center;gap:8px;display:inline-flex}.sm-workflow-card--clickable{padding:0;overflow:hidden}.sm-workflow-card__open{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;gap:8px;padding:12px 12px 0;display:flex}.sm-workflow-card__open>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.sm-workflow-card__open p{color:#334155;margin:0;font-size:13px}.sm-workflow-card__open footer{padding-bottom:4px}.sm-workflow-card--clickable>.sm-workflow-card__actions{justify-content:flex-end;width:100%;padding:0 12px 12px}.sm-workflow-card.is-pending{border-color:#fca5a5;box-shadow:inset 3px 0 #ef4444}.sm-handoff-detail__meta{color:#64748b;flex-wrap:wrap;gap:8px 12px;font-size:12px;display:flex}.sm-handoff-detail__pending{color:#b91c1c;font-weight:700}.sm-handoff-detail__section h3{color:#64748b;text-transform:uppercase;letter-spacing:.02em;margin:0 0 4px;font-size:12px;font-weight:700}.sm-handoff-detail__section p{color:#0f172a;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.sm-secondary-btn--wide,.sm-primary-btn--wide{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.sm-primary-btn--compact{padding:6px 10px;font-size:11px}.sm-form-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex;box-shadow:0 8px 20px #0f172a0a}.sm-form-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sm-form-card__header strong{color:#0f172a;font-size:14px;display:block}.sm-form-card__header small{color:#64748b;margin-top:2px;font-size:11px;display:block}.sm-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sm-form-actions{justify-content:flex-end;gap:8px;display:flex}.sm-handoff{gap:12px}.sm-handoff-form .sm-stepper{justify-content:space-between;align-items:flex-start;gap:0;margin:0;padding:4px 2px 2px;list-style:none;display:flex}.sm-stepper__item{flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.sm-stepper__line{background:#e2e8f0;border-radius:999px;height:2px;position:absolute;top:13px;left:calc(16px - 50%);right:calc(50% + 16px)}.sm-stepper__item.is-done .sm-stepper__line,.sm-stepper__item.is-current .sm-stepper__line{background:#93c5fd}.sm-stepper__dot{z-index:1;color:#64748b;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:inline-flex;position:relative}.sm-stepper__item.is-current .sm-stepper__dot{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb24}.sm-stepper__item.is-done .sm-stepper__dot{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.sm-stepper__label{color:#94a3b8;text-align:center;font-size:11px;font-weight:600;line-height:1.2}.sm-stepper__item.is-current .sm-stepper__label{color:#1e3a8a}.sm-stepper__item.is-done .sm-stepper__label{color:#334155}.sm-field input[readonly]{color:#475569;background:#f8fafc}.sm-check{color:#334155;align-items:center;gap:8px;font-size:13px;display:inline-flex}.sm-priority-select{text-transform:capitalize;font-weight:700!important}.sm-field select.sm-priority-select--normal{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.sm-field select.sm-priority-select--important{color:#b45309;background:#fffbeb;border-color:#fcd34d}.sm-field select.sm-priority-select--urgent{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.sm-field select.sm-priority-select--ack{color:#6d28d9;background:#f5f3ff;border-color:#c4b5fd}.sm-announcements{gap:12px}.sm-announce-list{flex-direction:column;gap:10px;display:flex}.sm-announce-card{background:#fff;border:1px solid #e2e8f0;border-left:3px solid #94a3b8;border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.sm-announce-card--important{background:linear-gradient(#fffbeb 0%,#fff 48%);border-left-color:#f59e0b}.sm-announce-card--urgent{background:linear-gradient(#fef2f2 0%,#fff 48%);border-left-color:#ef4444}.sm-announce-card--normal{border-left-color:#64748b}.sm-announce-card__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sm-announce-card__meta time{color:#94a3b8;margin-left:auto;font-size:11px}.sm-announce-card__audience{color:#334155;text-transform:uppercase;letter-spacing:.03em;background:#f1f5f9;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.sm-announce-card h3{color:#0f172a;margin:0;font-size:14px}.sm-announce-card p{color:#334155;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.sm-announce-card footer{color:#64748b;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:10px;padding-top:4px;font-size:11px;display:flex}.sm-announce-card.is-pending{box-shadow:inset 0 0 0 1px #ef44442e}.sm-announce-card__new{color:#fff;text-transform:uppercase;letter-spacing:.03em;background:#ef4444;border-radius:999px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:800}.sm-announce-card__actions{align-items:center;gap:8px;display:inline-flex}.sm-announce-card__acked{color:#15803d;font-size:11px;font-weight:700}.sm-announce-empty{margin-top:12px}.sm-announce-empty svg{color:#94a3b8}.sm-inline-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:8px 10px;font-size:12px}.sm-text-btn{color:#2563eb;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:650}.sm-badge{color:#334155;text-transform:uppercase;background:#e2e8f0;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.sm-danger-link{color:#b91c1c;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:600}body.sm-overlay-open{overflow:hidden}@media (max-width:768px){:root{--sm-sidebar-safe:0px;--sm-edge:12px;--sm-fab-clearance:76px;--sm-normal-w:400px;--sm-normal-h:560px;--sm-expanded-w:100vw;--sm-expanded-h:100vh}.sm-panel--expanded{border-radius:0;width:100vw;max-width:none;height:100vh;max-height:none;inset:0}.sm-backdrop{left:0}.sm-fab{bottom:16px;right:16px}.sm-details{display:none}}@media (prefers-reduced-motion:reduce){.sm-panel{transition:none}.sm-typing i{animation:none}}.sm-message-list,.sm-inbox,.sm-picker,.sm-subview-content,.sm-conversation-sections,.sm-thread-replies,.sm-mention-list{scrollbar-width:thin;scrollbar-color:#0052cc73 transparent}.sm-message-list::-webkit-scrollbar{width:8px;height:8px}.sm-inbox::-webkit-scrollbar{width:8px;height:8px}.sm-picker::-webkit-scrollbar{width:8px;height:8px}.sm-subview-content::-webkit-scrollbar{width:8px;height:8px}.sm-conversation-sections::-webkit-scrollbar{width:8px;height:8px}.sm-thread-replies::-webkit-scrollbar{width:8px;height:8px}.sm-mention-list::-webkit-scrollbar{width:8px;height:8px}.sm-message-list::-webkit-scrollbar-track{background:0 0}.sm-inbox::-webkit-scrollbar-track{background:0 0}.sm-picker::-webkit-scrollbar-track{background:0 0}.sm-subview-content::-webkit-scrollbar-track{background:0 0}.sm-conversation-sections::-webkit-scrollbar-track{background:0 0}.sm-thread-replies::-webkit-scrollbar-track{background:0 0}.sm-mention-list::-webkit-scrollbar-track{background:0 0}.sm-message-list::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-inbox::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-picker::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-subview-content::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-conversation-sections::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-thread-replies::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-mention-list::-webkit-scrollbar-thumb{background:linear-gradient(#0052cc8c,#0041a866) padding-box padding-box;border:2px solid #0000;border-radius:999px}.sm-message__body{position:relative;overflow:visible}.sm-bubble-wrap{z-index:1}.sm-bubble-wrap.is-open{z-index:8}.sm-quote{text-align:left;background:#0f172a0d;border-left:3px solid #0052ccb3;border-radius:8px;flex-direction:column;gap:2px;margin:0 0 8px;padding:8px 10px;display:flex}.sm-message--mine .sm-quote{background:#ffffff29;border-left-color:#ffffffb3}.sm-quote strong{color:#0041a8;font-size:11px}.sm-message--mine .sm-quote strong{color:#fff}.sm-quote span{opacity:.85;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:12px;overflow:hidden}.sm-role-badge{color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:inline-flex}.sm-avatar .sm-role-badge{z-index:1;border:1.5px solid #fff;position:absolute;bottom:-2px;right:-2px}.sm-role-badge--staff{background:#2563eb}.sm-role-badge--provider{background:#7c3aed}.sm-role-badge--employer{background:#0f766e}.sm-message__sender{align-items:center;gap:6px;display:inline-flex}.sm-message__sender .sm-role-badge{border:0;height:16px;padding:0 6px;font-size:10px;position:static}.sm-toast--messenger{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border:1px solid #ffffff14;flex-direction:row;align-items:center;gap:10px}.sm-toast__avatar{color:#fff;background:#0052cc;border-radius:999px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:inline-flex}.sm-toast__copy{text-align:left;flex-direction:column;gap:2px;min-width:0;display:flex}.sm-composer{position:relative}.sm-picker--docked{z-index:20;max-height:240px;position:absolute;bottom:calc(100% - 4px);left:10px;right:10px;overflow:hidden;box-shadow:0 12px 32px #0f172a33}.sm-picker--docked.sm-picker--mention{max-height:320px}.sm-picker--docked.sm-picker--mention .sm-mention-list{max-height:220px}.sm-compose-error{color:#b91c1c;background:#fef2f2;border-radius:10px;margin:0 12px 8px;padding:8px 10px;font-size:12px}.sm-compose-notice{color:#1d4ed8;background:#eff6ff;border-radius:10px;margin:0 12px 8px;padding:8px 10px;font-size:12px}.sm-rate-limit-notice{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;margin:0 14px}.sm-voice-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;margin:0 12px 8px;padding:10px;display:flex}.sm-voice-preview audio{width:100%}.sm-voice-preview__actions{justify-content:flex-end;gap:8px;display:flex}.sm-mention-group{margin-bottom:10px}.sm-mention-group h4{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:0 0 6px;font-size:11px}.sm-mention-group button{text-align:left;align-items:center;gap:10px;width:100%;display:flex}.sm-thread{background:#f8fafc;flex-direction:column;flex:1;min-height:0;display:flex}.sm-thread__header{background:#fff;border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:12px 14px;display:flex}.sm-thread__header .sm-icon-btn--muted{flex-shrink:0}.sm-thread__header strong{color:#0f172a;font-size:15px;display:block}.sm-thread__header small{color:#64748b;font-size:12px}.sm-thread__body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px 14px 16px;display:flex;overflow:auto}.sm-thread__label{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;padding:0 2px;font-size:11px;font-weight:600}.sm-thread-original{background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:36px 1fr;gap:10px;margin:0;padding:12px;display:grid;box-shadow:0 1px 2px #0f172a0a}.sm-thread-original strong{color:#0f172a;font-size:13px;display:block}.sm-thread-original p,.sm-thread-reply__bubble p{color:#0f172a;white-space:pre-wrap;word-break:break-word;margin:4px 0;font-size:13px}.sm-thread-original time,.sm-thread-reply__bubble time{color:#94a3b8;font-size:11px;display:block}.sm-thread-replies{flex-direction:column;gap:10px;padding:4px 0 0;display:flex}.sm-thread-reply{align-items:flex-end;gap:8px;max-width:92%;display:flex}.sm-thread-reply.is-mine{flex-direction:row-reverse;align-self:flex-end}.sm-thread-reply__bubble{background:#fff;border:1px solid #e2e8f0;border-radius:14px;min-width:0;padding:10px 12px 8px;box-shadow:0 1px 2px #0f172a0a}.sm-thread-reply.is-mine .sm-thread-reply__bubble{color:#fff;background:#2563eb;border-color:#0000;border-radius:14px 14px 4px}.sm-thread-reply.is-mine .sm-thread-reply__bubble p,.sm-thread-reply.is-mine .sm-thread-reply__bubble time{color:inherit}.sm-thread-reply.is-mine .sm-thread-reply__bubble time{opacity:.8}.sm-thread-reply__bubble strong{color:#2563eb;margin-bottom:2px;font-size:12px;display:block}.sm-thread-compose{background:#fff;border-top:1px solid #e2e8f0;gap:8px;padding:10px 12px 12px;display:flex}.sm-thread-compose input{min-width:0;font:inherit;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;outline:none;flex:1;padding:10px 14px}.sm-thread-compose input:focus{background:#fff;border-color:#93c5fd}.sm-settings{gap:12px;padding-top:12px}.sm-settings-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.sm-settings-card h3{color:#0f172a;margin:0;font-size:13px}.sm-setting-row{color:#334155;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:flex}.sm-setting-row:last-child{border-bottom:0}.sm-alert{border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:12px;line-height:1.45;display:flex}.sm-alert svg{flex:none;margin-top:1px}.sm-alert--warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.sm-alert--warning svg{color:#d97706}.sm-alert--info{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.sm-alert--info svg{color:#2563eb}.sm-archive-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.sm-simple-conversation{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:grid}.sm-simple-conversation:hover{background:#f8fafc}.sm-simple-conversation strong{color:#0f172a;font-size:13px;display:block}.sm-simple-conversation small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.sm-archive-view,.sm-channels-view{flex-direction:column;gap:0;padding:0 0 12px;display:flex}.sm-archive-toolbar{z-index:2;background:linear-gradient(#f8fafc 0%,#fff 100%);border-bottom:1px solid #eef2f7;align-items:center;gap:10px;padding:10px 12px 8px;display:flex;position:sticky;top:0}.sm-archive-search{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:0;padding:7px 10px;display:flex}.sm-archive-search input{color:#0f172a;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:13px}.sm-archive-search input::placeholder{color:#94a3b8}.sm-archive-count{color:#64748b;background:#f1f5f9;border-radius:999px;flex:none;padding:4px 8px;font-size:11px;font-weight:600}.sm-archive-list{flex-direction:column;display:flex}.sm-archive-item{border-bottom:1px solid #f1f5f9;grid-template-columns:1fr auto;align-items:stretch;gap:4px;padding:2px 4px 2px 0;display:grid}.sm-archive-item:hover{background:#f8fafc}.sm-archive-item__main{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:40px 1fr;align-items:center;gap:10px;min-width:0;padding:10px 8px 10px 12px;display:grid}.sm-archive-item__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.sm-archive-item__title{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sm-archive-item__title strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sm-archive-item__title time{color:#94a3b8;flex:none;font-size:11px}.sm-archive-item__preview{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sm-archive-item__meta{align-items:center;gap:6px;margin-top:2px;display:inline-flex}.sm-archive-item__meta em{color:#64748b;text-transform:capitalize;background:#f1f5f9;border-radius:999px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:600}.sm-archive-item__restore{color:#1d4ed8;cursor:pointer;white-space:nowrap;background:#eff6ff;border:0;border-radius:8px;align-self:center;align-items:center;gap:4px;margin-right:8px;padding:7px 10px;font-size:11px;font-weight:650;display:inline-flex}.sm-archive-item__restore:hover{background:#dbeafe}.sm-archive-item__restore:disabled{opacity:.65;cursor:wait}.sm-archive-empty{margin-top:24px}.sm-archive-empty svg{color:#94a3b8}.sm-fab-badge,.sm-fab__badge{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-4px;right:-4px}.sm-fab-urgent,.sm-fab__urgent{color:#ef4444;width:14px;height:14px;position:absolute;bottom:2px;right:2px}.sm-tasks-header{gap:8px}.sm-tasks-header__icon{color:#fff;background:#ffffff29;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.sm-tasks-header__copy{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sm-tasks-header__copy h2{color:#fff;flex:none;margin:0;font-size:16px;font-weight:700;line-height:1.2}.sm-tasks-header__copy small{color:#ffffffd1;font-size:11px;font-weight:500}.sm-tasks-new-btn{cursor:pointer;color:#2563eb;white-space:nowrap;background:#fff;border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 1px 2px #0f172a1f}.sm-tasks-new-btn:hover{background:#eff6ff}.sm-tasks{gap:12px;padding-top:10px}.sm-task-filters{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#0052cc73 #0052cc1f;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:6px;margin:0 -4px;padding-bottom:6px;padding-left:4px;padding-right:4px;display:flex;overflow:auto hidden}.sm-task-filters::-webkit-scrollbar{height:6px}.sm-task-filters::-webkit-scrollbar-thumb{background:#0052cc73;border-radius:999px}.sm-task-filters::-webkit-scrollbar-track{background:#0052cc1f;border-radius:999px}.sm-task-filter{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:600;display:inline-flex}.sm-task-filter b{color:#64748b;background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.sm-task-filter.is-active{color:#fff;background:#2563eb;border-color:#2563eb}.sm-task-filter.is-active b{color:#fff;background:#ffffff38}.sm-task-list{flex-direction:column;gap:8px;display:flex}.sm-task-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:stretch;gap:8px;padding:0;display:flex;position:relative;overflow:hidden}.sm-task-row.is-needs-confirm{border-left:3px solid #22c55e}.sm-task-row__open{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:0;flex:1;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.sm-task-row__open:hover{background:#f8fafc}.sm-task-dot{background:#94a3b8;border-radius:999px;flex-shrink:0;width:8px;height:8px;margin-top:6px}.sm-task-dot--open{background:#94a3b8}.sm-task-dot--in_progress{background:#2563eb}.sm-task-dot--waiting{background:#f59e0b}.sm-task-dot--completed{background:#22c55e}.sm-task-dot--cancelled{background:#ef4444}.sm-task-dot--p-urgent{box-shadow:0 0 0 3px #ef44442e}.sm-task-dot--p-high{box-shadow:0 0 0 3px #f59e0b29}.sm-task-row__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sm-task-row__title-line{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.sm-task-row__title-line strong{color:#0f172a;overflow-wrap:anywhere;font-size:13px;font-weight:650;line-height:1.3}.sm-task-row__title-line strong.is-done{color:#94a3b8;font-weight:550;text-decoration:line-through}.sm-task-status{letter-spacing:.01em;white-space:nowrap;text-transform:capitalize;border-radius:999px;flex-shrink:0;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.sm-task-status--open{color:#64748b;background:#f1f5f9}.sm-task-status--in_progress{color:#1d4ed8;background:#dbeafe}.sm-task-status--waiting{color:#b45309;background:#fef3c7}.sm-task-status--completed{color:#15803d;background:#dcfce7}.sm-task-status--cancelled{color:#b91c1c;background:#fee2e2}.sm-task-row__meta{color:#94a3b8;flex-wrap:wrap;gap:4px;font-size:11px;display:flex}.sm-task-row__meta em{font-style:normal}.sm-task-row__patient{color:#7c3aed;align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.sm-task-row__footer{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.sm-task-avatars{align-items:center;display:inline-flex}.sm-task-avatars .sm-avatar{border:1.5px solid #fff;margin-left:-4px}.sm-task-avatars .sm-avatar:first-child{margin-left:0}.sm-avatar--tiny{width:20px;height:20px;font-size:8px;font-weight:700}.sm-task-row__stats{color:#94a3b8;gap:8px;font-size:10px;display:inline-flex}.sm-task-row__stats em{font-style:normal;font-weight:600}.sm-task-confirm-btn{color:#15803d;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #22c55e;border-radius:999px;flex-shrink:0;align-self:center;margin-right:10px;padding:6px 10px;font-size:11px;font-weight:700}.sm-task-confirm-btn:hover:not(:disabled){background:#f0fdf4}.sm-task-confirm-btn:disabled{opacity:.65;cursor:wait}.sm-task-confirm-btn--wide{width:100%;margin:8px 0 0;padding:8px 12px}.sm-tasks-empty{margin-top:20px}.sm-tasks-empty svg{color:#94a3b8}.sm-tasks-help{color:#94a3b8;font-size:11px;font-weight:500;line-height:1.35}.sm-task-priority-seg{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:4px;padding:3px;display:grid}.sm-task-priority-seg__btn{cursor:pointer;color:#64748b;background:0 0;border:0;border-radius:8px;padding:7px 4px;font-size:11px;font-weight:650}.sm-task-priority-seg__btn.is-active{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a1a}.sm-task-priority-seg__btn--urgent.is-active{color:#b91c1c}.sm-task-priority-seg__btn--high.is-active{color:#b45309}.sm-task-priority-badge{text-transform:capitalize;color:#fff;background:#ffffff2e;border-radius:999px;align-items:center;padding:1px 8px;font-size:10px;font-weight:700;display:inline-flex}.sm-task-detail__title{color:#0f172a;margin:0;font-size:16px;font-weight:700;line-height:1.3}.sm-task-tabs{border-bottom:1px solid #e2e8f0;gap:4px;padding-bottom:0;display:flex}.sm-task-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-size:12px;font-weight:650}.sm-task-tabs button.is-active{color:#2563eb;border-bottom-color:#2563eb}.sm-task-section{flex-direction:column;gap:8px;display:flex}.sm-task-section h4{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0;font-size:11px;font-weight:700}.sm-task-section__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.sm-task-description{color:#334155;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.sm-task-status-btns{flex-wrap:wrap;gap:6px;display:flex}.sm-task-status-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:650}.sm-task-status-btn:disabled{opacity:.7;cursor:default}.sm-task-status-btn.is-active.sm-task-status-btn--open{color:#334155;background:#f1f5f9;border-color:#cbd5e1}.sm-task-status-btn.is-active.sm-task-status-btn--in_progress{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.sm-task-status-btn.is-active.sm-task-status-btn--waiting{color:#b45309;background:#fef3c7;border-color:#fcd34d}.sm-task-status-btn.is-active.sm-task-status-btn--completed{color:#15803d;background:#dcfce7;border-color:#86efac}.sm-task-status-btn.is-active.sm-task-status-btn--cancelled{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.sm-task-people{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sm-task-people>li{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.sm-task-people__meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sm-task-people__meta strong{color:#0f172a;font-size:12px}.sm-task-people__meta small{color:#94a3b8;text-transform:capitalize;font-size:10px}.sm-task-people__remove{color:#94a3b8;background:0 0;width:26px;height:26px}.sm-task-people__remove:hover{color:#ef4444;background:#fee2e2}.sm-task-empty-people{color:#94a3b8;margin:0;font-size:12px}.sm-task-progress{background:#e2e8f0;border-radius:999px;height:6px;overflow:hidden}.sm-task-progress>span{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#16a34a);height:100%;transition:width .2s;display:block}.sm-task-confirmed{color:#15803d;align-items:center;gap:3px;margin-right:2px;font-size:10px;font-weight:700;display:inline-flex}.sm-task-add-person{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.sm-task-detail__footer{color:#64748b;border-top:1px solid #e2e8f0;margin-top:4px;padding-top:10px;font-size:12px;font-weight:600}.sm-task-comments{flex-direction:column;gap:10px;display:flex}.sm-task-comment-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.sm-task-comment-list>li{align-items:flex-start;gap:8px;display:flex}.sm-task-comment-list header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sm-task-comment-author{color:#0f172a;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.sm-task-comment-author .sm-role-badge,.sm-task-people__meta strong .sm-role-badge{border:0;height:16px;padding:0 6px;font-size:10px;position:static}.sm-task-comment-role{color:#64748b;font-size:11px;font-style:normal;font-weight:500}.sm-task-people__meta strong{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sm-task-comment-list header time{color:#94a3b8;flex-shrink:0;font-size:10px}.sm-task-comment-list p{color:#334155;white-space:pre-wrap;margin:3px 0 0;font-size:12px;line-height:1.4}
