:root{color:#17211f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f8f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f8fbfc;min-width:320px;margin:0}button,input,select,textarea{font:inherit}:root{--background-primary:#f8fbfc;--background-secondary:#eef7f6;--background-dark:#071527;--background-dark-secondary:#0b2742;--background-dark-accent:#0f3b55;--card-background:#fff;--card-background-soft:#f7fbfa;--text-primary:#102a28;--text-secondary:#42514d;--text-muted:#64736f;--text-on-dark:#f4fbfb;--text-on-dark-secondary:#d6eceb;--border-color:#c9dddd;--border-color-soft:#e8eef2;--input-background:#fff;--input-text:#102a28;--input-placeholder:#667370;--button-primary:#0f766e;--button-primary-hover:#0b5e59;--button-text:#fff;--danger-background:#fff1f1;--danger-text:#9f2f2f;--warning-background:#fff6df;--warning-text:#8a4f00;--success-background:#e8f4f1;--success-text:#0d5f59;--status-pending-bg:#fff4c7;--status-pending-text:#6f4600;--status-confirmed-bg:#dcfce7;--status-confirmed-text:#14532d;--status-waiting-bg:#dff5ff;--status-waiting-text:#075985;--status-present-bg:#f0e7ff;--status-present-text:#5b21b6;--status-attended-bg:#0f766e;--status-attended-text:#fff;--status-cancelled-bg:#ffe4e6;--status-cancelled-text:#9f1239;--status-absent-bg:#ffedd5;--status-absent-text:#7c2d12;--status-rescheduled-bg:#e2e8f0;--status-rescheduled-text:#1e293b;--status-neutral-bg:#eef7f6;--status-neutral-text:#0f3b55;--focus-ring:#3aafa947;--shadow-soft:0 12px 28px #020a181f}.login-shell{isolation:isolate;box-sizing:border-box;background-position:50%;background-repeat:no-repeat;background-size:cover;place-items:center;min-height:100vh;padding:28px;display:grid;position:relative;overflow:hidden}.login-shell:before,.login-shell:after{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.login-shell:before{background:radial-gradient(circle at 50% 86%,#48b5752e,#0000 30%),radial-gradient(circle at 72% 24%,#38b5b81f,#0000 24%),linear-gradient(120deg,#001615b8,#022a2880 48%,#000e0ec7)}.login-shell:after{background:linear-gradient(#ffffff0d,#0000002e);animation:9s ease-in-out infinite alternate softGlow}.login-card{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#031d1ee0,#08403aad);border:1px solid #ffffff57;border-radius:8px;gap:16px;width:min(420px,100%);padding:30px;display:grid;box-shadow:0 28px 80px #00000094}.login-card h1,.login-card p{margin:0}.login-card h1{text-shadow:0 3px 18px #0000007a}.login-card p,.login-card small,.login-card label{color:#ffffffeb;text-shadow:0 2px 12px #00000075}.login-card input{background:#fffffff0;border-color:#ffffff9e;box-shadow:inset 0 1px #ffffff8c}.license-trial-banner{background:#0f766e61;border:1px solid #97deb36b;border-radius:8px;padding:10px 12px;font-weight:800}.license-code-box{color:#123734;background:#e8f4f1f0;border:1px solid #bfd6d1b8;border-radius:8px;gap:6px;padding:12px;display:grid}.license-code-box span{color:#0f766e;text-transform:uppercase;font-size:12px;font-weight:800}.license-code-box strong{overflow-wrap:anywhere;letter-spacing:.03em;font-size:14px}.audit-layout{align-items:start}.audit-filter-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0;display:grid}.audit-table-wrap{background:#fffffff0;border:1px solid #cbdbdce6;border-radius:8px;width:100%;overflow:auto}.audit-table{border-collapse:collapse;width:100%;min-width:980px;font-size:12px}.audit-table th,.audit-table td{text-align:left;vertical-align:top;border-bottom:1px solid #d3e0e0e6;padding:10px 9px}.audit-table th{z-index:1;color:#0f4f50;text-transform:uppercase;background:#eefafa;font-size:11px;position:sticky;top:0}.audit-table td{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.audit-detail-panel{position:sticky;top:16px}.audit-detail{gap:10px;display:grid}.audit-detail div{border-bottom:1px solid #dae5e5e6;gap:3px;padding:8px 0;display:grid}.audit-detail span{color:#647273;text-transform:uppercase;font-size:11px;font-weight:800}.audit-detail strong{overflow-wrap:anywhere;color:#173534;min-width:0}.audit-detail textarea{resize:vertical;white-space:pre-wrap;min-height:82px;font-family:Consolas,Courier New,monospace;font-size:11px;line-height:1.35}.ai-assistant-card{background:linear-gradient(135deg,#ebfcfaf5,#fffffff0);border:1px solid #acdcdae6;border-radius:8px;gap:14px;margin-top:18px;padding:18px;display:grid;box-shadow:0 16px 34px #032d301a}.ai-suggestions,.ai-chat-form{gap:10px;display:grid}.ai-suggestions{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.ai-chat-form textarea{resize:vertical;width:100%;min-height:82px}.ai-answer{color:#123c3b;white-space:pre-wrap;background:#f0fdfaf5;border-left:4px solid #0f766e;border-radius:8px;padding:14px;line-height:1.5}.clinical-ai-summary{margin:14px 0}.app-shell{isolation:isolate;color:#17211f;background:linear-gradient(#f8fbfcf0,#f8fbfcf0),#f8fbfc;grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid;position:relative;overflow-x:hidden}.app-shell:before{content:"";z-index:0;pointer-events:none;filter:blur(26px);opacity:.055;background:url(/images/background-medical.png) 50%/cover no-repeat fixed;position:fixed;inset:-34px;transform:scale(1.05)}.app-shell:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(#f8fbfcf0,#f1f8f7f5);position:fixed;inset:0}.workspace,.sidebar{z-index:1;position:relative}.app-shell.sidebar-open{grid-template-columns:280px minmax(0,1fr)}.app-shell.sidebar-closed{grid-template-columns:minmax(0,1fr)}.app-shell.sidebar-closed .sidebar{display:none}.sidebar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-sizing:border-box;background:#ffffffe6;border-right:1px solid #ffffff70;flex-direction:column;gap:28px;height:100vh;padding:28px 22px;display:flex;position:sticky;top:0;box-shadow:16px 0 44px #04111f29}.brand{align-items:center;gap:12px;display:flex}.brand-logo{object-fit:contain;background:#e6f5faf5;border-radius:8px;display:block;box-shadow:0 14px 34px #00000042}.login-logo{background:#e6f5faf5;border:1px solid #ffffff47;justify-self:center;width:min(260px,82%);height:120px;padding:10px 18px;box-shadow:0 20px 54px #00000080,0 0 34px #48b5752e}.sidebar-logo{flex:none;width:64px;height:46px;padding:5px}.topbar-logo{background:#e6f5faf5;border:1px solid #ffffff3d;flex:none;width:62px;height:42px;padding:5px}.sidebar-close,.menu-toggle,.sidebar-backdrop{font:inherit;cursor:pointer;border:0}.sidebar-hover-zone{z-index:70;cursor:pointer;background:linear-gradient(90deg,#0f766ec7,#0f766e29,#0000);border:0;width:14px;padding:0;position:fixed;inset:0 auto 0 0}.sidebar-hover-zone:after{content:"";background:#ffffffc7;border-radius:999px;width:4px;height:52px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.sidebar-close{color:#0d5f59;white-space:nowrap;background:#e8f4f1;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;margin-left:auto;font-size:22px;font-weight:800;line-height:1;display:inline-grid;overflow:hidden}.menu-toggle{color:#0d5f59;background:#fff;border:1px solid #bfd6d1;border-radius:8px;flex:none;place-items:center;width:42px;height:42px;font-size:22px;line-height:1;display:inline-grid}.sidebar-backdrop,.app-shell.sidebar-open .sidebar-hover-zone{display:none}.brand strong,.brand small{display:block}.brand small,.side-note small,.mini-appointment small,.appointment-item small,.patient-card small{color:#667370}.nav-list{gap:8px;display:grid}.nav-list button,.ghost-button,.primary-button,.danger-button,.text-button,.slot button,.appointment-actions button{font:inherit;cursor:pointer;border:0;border-radius:8px}.nav-list button{text-align:left;color:#394541;background:0 0;padding:12px 14px}.nav-list button:hover,.nav-list button.active{color:#0d5f59;background:#e8f4f1}.nav-list button:disabled{cursor:not-allowed;color:#9aa8a4;opacity:.58;background:0 0}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.side-note{background:#eef7f5;border-radius:8px;gap:4px;padding:16px;display:grid}.sidebar-footer .side-note{margin-top:0}.side-note span,.eyebrow{color:#0f766e;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.workspace{min-width:0;padding:30px}.topbar{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%);border:1px solid #ffffff24;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;min-height:78px;margin-bottom:24px;padding:14px 18px;display:flex;position:relative;overflow:visible;box-shadow:0 18px 44px #020a183d}.topbar-brand{text-align:center;pointer-events:none;justify-content:center;align-items:center;gap:14px;min-width:0;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.topbar-actions{justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.topbar h1,.section-heading h2,.form-panel h2{margin:0}.topbar h1{color:#fff;letter-spacing:.12em;text-shadow:0 8px 24px #00000057;white-space:nowrap;font-family:Trebuchet MS,Inter,Segoe UI,sans-serif;font-size:clamp(28px,3vw,40px);font-weight:900;line-height:1.15}.eyebrow{text-shadow:0 2px 12px #00000052;margin:0 0 6px}.topbar .eyebrow{color:#ffe8b8;text-shadow:0 2px 14px #0000008c}.ghost-button{color:#0d5f59;background:#ffffffeb;border:1px solid #c8ddd9;border-radius:12px;min-height:42px;padding:10px 16px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;box-shadow:0 10px 24px #020a1814}.ghost-button:hover{background:#fff;border-color:#0f766e57;transform:translateY(-1px);box-shadow:0 14px 30px #020a181f}.topbar .ghost-button,.topbar .menu-toggle,.notification-button{box-shadow:0 12px 26px #020a182e}.topbar .ghost-button,.topbar .notification-button,.topbar .database-badge{background:#fffffff0;border-color:#ffffff38}.database-badge{color:#8a4f00;background:#fff6dfeb;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.database-badge.connected{color:#0d5f59;background:#e8f4f1eb}.role-picker{min-width:170px}.sidebar-role-picker{color:#33413e;min-width:0}.sidebar-role-picker select{background:#fff;min-height:40px}.user-badge{background:#eef7f5eb;border-radius:8px;gap:2px;min-width:170px;padding:8px 12px;display:grid;box-shadow:0 10px 24px #020a181f}.user-badge span{color:#0d5f59;text-transform:uppercase;font-size:12px;font-weight:800}.user-badge strong{color:#17211f;font-size:14px}.sidebar-user-badge{min-width:0;box-shadow:none;border:1px solid #0f766e1f}.sidebar-license-badge{justify-content:center;width:100%;min-height:36px}.notification-center{z-index:42;position:relative}.notification-button{color:#0d5f59;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #bfd6d1;border-radius:8px;padding:8px 12px;font-weight:800}.notification-button strong{color:#fff;background:#b42318;border-radius:999px;place-items:center;min-width:22px;height:22px;margin-left:6px;font-size:12px;display:inline-grid}.notification-panel{z-index:45;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #dce8e5;border-radius:8px;gap:10px;width:min(420px,80vw);max-height:70vh;padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 24px 58px #00000047}.notification-panel h3{margin:0}.notification-row{background:#f7fbfa;border-radius:8px;gap:6px;padding:10px;display:grid}.notification-row span,.notification-row small{color:#667370}.notification-row .button-row{flex-wrap:wrap;justify-content:flex-start}.notification-row .button-row button{flex:0 auto}.agenda-layout,.clinical-layout,.two-column,.report-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:20px;display:grid}.two-column.compact{grid-template-columns:minmax(0,1fr) 340px}.main-panel,.form-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border:1px solid #e8eef2;border-radius:16px;box-shadow:0 5px 18px #0000000d}.main-panel{min-width:0;padding:24px}.form-panel{padding:24px}.toolbar,.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.toolbar label{flex:1}label{color:#33413e;gap:6px;font-size:14px;font-weight:700;display:grid}input,select,textarea{box-sizing:border-box;color:#17211f;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #cbdcd8;border-radius:12px;padding:9px 12px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#0f766e;outline:3px solid #cdece7}.stats-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px;display:grid}.stats-row div{background:#f1f8f6eb;border-radius:8px;gap:4px;padding:14px;display:grid}.stats-row strong{color:#0d5f59;font-size:24px}.stats-row span{color:#667370;font-size:13px}.dashboard-panel{background:#ffffffb8;gap:24px;display:grid}.dashboard-card-title,.dashboard-detail-toolbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.dashboard-header{color:#fff;background:linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%);border:1px solid #ffffff8a;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:24px;display:grid;overflow:hidden;box-shadow:0 16px 38px #020a183d}.dashboard-hero-copy{align-items:center;gap:16px;min-width:0;display:flex}.dashboard-hero-logo{background:#fffffff0;border:1px solid #ffffff5c;flex:none;width:72px;height:54px;padding:7px;box-shadow:0 12px 28px #032d3029}.dashboard-hero-meta{background:#ffffff24;border:1px solid #ffffff42;border-radius:14px;justify-items:end;gap:4px;min-width:180px;padding:10px 14px;display:grid}.dashboard-hero-meta span{text-transform:capitalize;color:#ffffffd6;font-size:12px}.dashboard-hero-meta strong{color:#fff;font-size:14px}.dashboard-header h2,.dashboard-header p,.dashboard-card-title h3,.dashboard-card-title p{margin:0}.dashboard-header h2{color:#fff;font-size:32px;line-height:1.1}.dashboard-header p{color:#ffffffd6}.dashboard-header .eyebrow{color:#d7fff8;text-shadow:none}.dashboard-export-actions,.dashboard-chart-legend{flex-wrap:wrap;gap:8px;display:flex}.dashboard-header .primary-button{color:#0f766e;background:#fff;box-shadow:0 12px 28px #032d302e}.dashboard-header .primary-button:hover{color:#0b5e59;background:#ecfdf5}.dashboard-header .ghost-button{color:#fff;box-shadow:none;background:#ffffff21;border-color:#ffffff57}.dashboard-filters{background:#ffffffe0;border:1px solid #e8eef2;border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding:18px;display:grid;box-shadow:0 5px 18px #0000000a}.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.dashboard-custom-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.dashboard-widget-shell{min-width:0;transition:transform .18s,opacity .18s;position:relative}.dashboard-widget-small{grid-column:span 1}.dashboard-widget-medium,.dashboard-widget-large{grid-column:span 2}.dashboard-widget-full{grid-column:1/-1}.dashboard-widget-shell.dragging{opacity:.72;transform:scale(.985)}.dashboard-widget-drag{z-index:2;color:#fff;cursor:grab;background:#08263d;border:1px solid #08263d2e;border-radius:10px;place-items:center;width:34px;height:30px;font-size:15px;font-weight:900;line-height:1;display:grid;position:absolute;top:12px;right:12px}.dashboard-widget-drag:active{cursor:grabbing}.dashboard-kpi-card{text-align:left;color:#fff;cursor:pointer;background:radial-gradient(circle at 100% 0,#3aafa933,#0000 38%),linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%);border:1px solid #ffffff24;border-radius:16px;gap:8px;width:100%;height:100%;min-height:146px;padding:20px 58px 20px 20px;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;display:grid;box-shadow:0 14px 30px #020a182e}.dashboard-kpi-card:hover{border-color:#7dfff55c;transform:translateY(-4px);box-shadow:0 18px 38px #020a183d}.dashboard-kpi-card span,.dashboard-card-title p,.dashboard-mini-row span,.dashboard-summary-grid span{color:#667370}.dashboard-kpi-card span{color:#f1fbfce6;letter-spacing:0;text-transform:uppercase;max-width:calc(100% - 8px);font-size:12px;font-weight:900}.dashboard-kpi-card strong{color:#fff;word-break:break-word;font-size:clamp(28px,3vw,40px);line-height:1.04}.dashboard-kpi-card small{color:#dbeafee0;font-weight:700}.dashboard-kpi-card.patients{border-left:5px solid #67e8f9}.dashboard-kpi-card.patients strong{color:#fff}.dashboard-kpi-card.finance{border-left:5px solid #86efac}.dashboard-kpi-card.finance strong{color:#fff}.dashboard-kpi-card.debt{border-left:5px solid #fbbf24}.dashboard-kpi-card.debt strong{color:#fff}.dashboard-kpi-card.account{border-left:5px solid #5eead4}.dashboard-kpi-card.account strong{color:#fff}.dashboard-kpi-card.warning{border-left:5px solid #fde68a}.dashboard-kpi-card.warning strong{color:#fff}.dashboard-kpi-card.overdue{border-left:5px solid #fda4af}.dashboard-kpi-card.overdue strong{color:#fff}.dashboard-no-widgets,.dashboard-config-status{color:#0f3b55;background:#f0fbfa;border:1px solid #b8d8d5;border-radius:14px;grid-column:1/-1;padding:16px}.dashboard-no-widgets{gap:4px;display:grid}.dashboard-no-widgets strong{color:#083344}.dashboard-config-status{white-space:pre-line;margin:-8px 0 0}.billing-badge{color:#475569;background:#eef2f7;border-radius:999px;width:fit-content;padding:4px 8px;font-size:11px;font-weight:900}.billing-badge.account{color:#115e59;background:#ccfbf1}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.dashboard-card{background:#fff;border:1px solid #e8eef2;border-radius:16px;min-width:0;height:100%;padding:22px;transition:transform .25s,box-shadow .25s;box-shadow:0 5px 18px #0000000d}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #00000014}.dashboard-ai-card,.dashboard-summary-card{grid-column:1/-1}.dashboard-ai-card{background:linear-gradient(105deg,#040e1ff5 0%,#051f32e0 44%,#064e5c94 100%),url(/images/dashboard-ai-background.png) 100%/cover no-repeat,#071527;border-color:#67e8f942;position:relative;overflow:hidden;box-shadow:0 18px 48px #030a1833}.dashboard-ai-form{grid-template-columns:minmax(0,1fr) 170px;gap:12px;margin-top:16px;display:grid}.dashboard-ai-form input{background:#fffffff5;border-radius:16px;min-height:54px;padding:14px 16px}.dashboard-ai-model-row{grid-template-columns:minmax(220px,320px) auto;align-items:end;gap:12px;margin-top:16px;display:grid}.dashboard-ai-model-row .ghost-button{min-height:42px}.ai-modal-backdrop{z-index:130;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#022c306b;place-items:center;padding:18px;animation:.18s ease-out fade-in;display:grid;position:fixed;inset:0}.ai-modal{background:linear-gradient(#fff,#f0fdfa);border:1px solid #0d94883d;border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(760px,100%);max-height:min(82vh,820px);padding:22px;animation:.22s ease-out modal-pop;display:grid;box-shadow:0 28px 80px #04111f47}.ai-modal-header{border-bottom:1px solid #0d948824;justify-content:space-between;gap:18px;padding-bottom:12px;display:flex}.ai-modal-header span{color:#0f766e;text-transform:uppercase;font-size:12px;font-weight:900}.ai-modal-header h2{color:#0f2f2d;margin:4px 0}.ai-modal-header p{color:#536461;max-width:620px;margin:0;font-size:13px;line-height:1.45}.ai-modal-answer{color:#102a28;background:#ffffffdb;border:1px solid #0d948829;border-radius:8px;min-height:140px;padding:16px;line-height:1.6;overflow:auto}.ai-modal-answer p{white-space:pre-wrap;margin:0 0 8px}.ai-modal-error{color:#9a3412;background:#fff7ed;border-radius:8px;gap:4px;padding:10px 12px;font-size:12px;display:grid}.ai-modal-technical{color:#64748b;gap:6px;font-size:12px;display:grid}.ai-modal-followup{border-top:1px solid #0d948824;gap:12px;padding-top:12px;display:grid}.ai-modal-followup label{color:#0f2f2d;gap:6px;font-size:12px;font-weight:800;display:grid}.help-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.help-quick-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:14px 0;display:grid}.help-manual-list{gap:12px;display:grid}.help-section-card{background:#fff;border:1px solid #0d948824;border-radius:8px;justify-content:space-between;gap:16px;padding:16px;display:flex}.help-section-card span{color:#0f766e;text-transform:uppercase;font-size:11px;font-weight:900}.help-section-card h3{color:#102a28;margin:4px 0 8px}.help-section-card p{color:#41514e;margin:0 0 8px;line-height:1.55}.manual-admin-box{border-top:1px solid #0d948824;margin-top:18px;padding-top:18px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.dashboard-month-chart{background:#fbfefe;border-radius:16px;gap:10px;margin-top:18px;padding:14px;display:grid}.dashboard-month-chart svg{width:100%;min-height:260px;overflow:visible}.month-grid-line{stroke:#94a3b838;stroke-width:1px}.month-total-bar{fill:#8b5cf6;opacity:.82;transition:opacity .18s}.month-attended-bar{fill:#3aafa9;opacity:.9}.month-cancel-line{fill:none;stroke:#fb7185;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.month-cancel-dot{fill:#fb7185;stroke:#fff;stroke-width:1.5px}.month-day-label{fill:#64748b;font-size:11px;font-weight:800}.dashboard-balance-summary{color:#0f2f2d;justify-items:end;gap:2px;font-size:12px;display:grid}.dashboard-balance-summary strong{color:#0f766e}.dashboard-balance-summary small{color:#be123c;font-weight:800}.dashboard-chart-legend span{color:#33413e;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.dashboard-chart-legend span:before{content:"";border-radius:50%;width:10px;height:10px}.dashboard-chart-legend .green:before{background:#3aafa9}.dashboard-chart-legend .red:before{background:#fb7185}.dashboard-chart-legend .purple:before{background:#8b5cf6}.dashboard-chart-legend .yellow:before{background:#facc15}.collection-chart{background:#fbfefe;border-radius:16px;gap:14px;margin-top:18px;padding:14px;display:grid}.collection-bar{background:#e2e8f0;border-radius:999px;height:38px;display:flex;overflow:hidden}.collection-bar i{min-width:0;transition:width .18s;display:block}.collection-bar .paid{background:#34d399}.collection-bar .pending{background:#fde68a}.collection-bar .overdue{background:#fb7185}.dashboard-pie-layout{grid-template-columns:170px minmax(0,1fr);align-items:center;gap:18px;margin-top:14px;display:grid}.dashboard-pie{aspect-ratio:1;border-radius:50%;width:160px;box-shadow:inset 0 0 0 18px #fff,0 12px 28px #04111f1a}.dashboard-side-list,.dashboard-bars,.dashboard-indicators{gap:10px;display:grid}.dashboard-mini-row,.dashboard-bar-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.dashboard-mini-row strong{color:#0d5f59}.dashboard-bar-row{grid-template-columns:minmax(110px,1fr) minmax(0,2fr) 44px}.dashboard-bar-row span,.dashboard-bar-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-bar-row div{background:#edf6f4;border-radius:999px;height:12px;overflow:hidden}.dashboard-bar-row i{border-radius:inherit;background:linear-gradient(90deg,#0f766e,#3aafa9);height:100%;transition:width .22s;display:block}.dashboard-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.dashboard-summary-grid div{background:#f7fbfa;border:1px solid #e8eef2;border-radius:14px;gap:5px;padding:14px;display:grid}.dashboard-summary-grid strong{color:#0d5f59;font-size:20px}.dashboard-indicator{background:#f8fafc;border:1px solid #0000;border-radius:14px;gap:5px;padding:14px;display:grid}.dashboard-indicator span{text-transform:uppercase;font-size:12px;font-weight:900}.dashboard-indicator.ok{background:#f0fdf4;border-color:#22c55e38}.dashboard-indicator.ok span,.dashboard-indicator.ok strong{color:#166534}.dashboard-indicator.warning{background:#fffbeb;border-color:#f59e0b47}.dashboard-indicator.warning span,.dashboard-indicator.warning strong{color:#92400e}.dashboard-indicator.critical{background:#fef2f2;border-color:#dc26263d}.dashboard-indicator.critical span,.dashboard-indicator.critical strong{color:#991b1b}.dashboard-detail-backdrop{z-index:120;background:#09141875;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.dashboard-detail-modal{background:#fff;border:1px solid #2dd4bf4d;border-radius:8px;gap:14px;width:min(1120px,100%);max-height:88vh;padding:20px;display:grid;overflow:hidden;box-shadow:0 26px 80px #030d1857}.dashboard-detail-toolbar{align-items:stretch}.dashboard-detail-toolbar input{flex:1}.dashboard-detail-table{max-height:56vh;overflow:auto}.dashboard-detail-table .report-table-header,.dashboard-detail-table .report-table-row{min-width:max-content}.dashboard-config-modal{max-width:860px}.dashboard-config-layout{grid-template-columns:minmax(260px,.82fr) minmax(280px,1fr);gap:18px;margin-top:14px;display:grid}.dashboard-widget-checklist,.dashboard-widget-preview{background:#fff;border:1px solid #d7e6e6;border-radius:16px;gap:10px;padding:16px;display:grid}.dashboard-widget-checklist .checkbox-row{color:#0f172a;background:#f8fbfc;border-radius:10px;min-height:34px;padding:8px 10px;font-weight:800}.dashboard-config-group{border-bottom:1px solid #d7e6e6;gap:8px;padding-bottom:12px;display:grid}.dashboard-config-group:last-child{border-bottom:0;padding-bottom:0}.dashboard-config-group>strong{color:#08263d;letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:900}.dashboard-config-widget-row{grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:8px;display:grid}.dashboard-config-widget-row select{border-radius:10px;min-height:34px;font-size:12px}.dashboard-widget-preview>strong{color:#08263d;font-size:14px}.dashboard-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dashboard-preview-grid span{color:#fff;background:linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%);border-left:4px solid #67e8f9;border-radius:12px;align-items:center;min-height:52px;padding:10px 12px;font-size:12px;font-weight:900;display:flex}.dashboard-preview-grid .dashboard-widget-small{grid-column:span 1}.dashboard-preview-grid .dashboard-widget-medium,.dashboard-preview-grid .dashboard-widget-large{grid-column:span 2}.dashboard-preview-grid .dashboard-widget-full{grid-column:1/-1}.dashboard-preview-grid small{color:#536460}.dashboard-config-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.system-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.system-status-grid article{background:#f7fbfa;border:1px solid #0a63582e;border-radius:8px;gap:7px;min-height:116px;padding:16px;display:grid}.system-status-grid span{color:#667370;text-transform:uppercase;font-size:12px;font-weight:900}.system-status-grid strong{color:#123d37;font-size:22px}.system-status-grid small{color:#667370;overflow-wrap:anywhere}.calendar-toolbar{justify-content:space-between;align-items:center;gap:14px;margin:0 0 18px;display:flex}.calendar-view-switch,.calendar-legend{flex-wrap:wrap;gap:8px;display:flex}.calendar-view-switch button{color:#0d5f59;font:inherit;cursor:pointer;background:#ffffffeb;border:1px solid #bfd6d1;border-radius:8px;padding:9px 12px;font-weight:800}.calendar-view-switch button.active{color:#fff;background:linear-gradient(135deg,#0f766e,#0b5368);border-color:#0000;box-shadow:0 12px 24px #063a402e}.legend-dot{color:#33413e;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:7px 9px;font-size:12px;font-weight:800;display:inline-flex}.legend-dot:before{content:"";background:currentColor;border-radius:999px;width:10px;height:10px}.calendar-title-row{justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.calendar-title-row h3{text-transform:capitalize;margin:0;font-size:22px}.calendar-title-row span{color:#667370;font-weight:800}.schedule-grid{gap:10px;display:grid}.calendar-week-view{padding-bottom:8px;overflow-x:auto}.agenda-time-grid{--agenda-height:840px;background:#fffffff0;border:1px solid #dce8e5;border-radius:8px;grid-template-columns:74px minmax(0,1fr);gap:0;display:grid;overflow-x:auto}.agenda-time-grid.week{grid-template-columns:74px minmax(980px,1fr)}.agenda-time-axis{height:var(--agenda-height);z-index:3;background:#f4faf8;border-right:1px solid #c7d8d5;position:relative}.agenda-time-axis.with-header{margin-top:64px}.agenda-time-axis span{height:64px;display:block}.agenda-time-axis time{z-index:4;background:#fffffff5;border-radius:6px;padding:2px 4px;font-size:13px;font-weight:950;line-height:1;position:absolute;right:12px;transform:translateY(-50%);color:#102a35!important;opacity:1!important}.agenda-week-columns{grid-template-columns:repeat(7,minmax(120px,1fr));display:grid}.agenda-week-empty{color:#0f3b55;background:#ecfdf5;border:1px solid #bfe6e0;border-radius:10px;margin-bottom:12px;padding:12px 14px;font-size:13px;font-weight:850}.agenda-density-control{color:#102a28;gap:5px;min-width:160px;font-size:12px;font-weight:900;display:grid}.agenda-density-control select{border-radius:10px;min-height:36px}.agenda-day-column{grid-template-rows:auto minmax(0,1fr);min-width:0;display:grid}.agenda-time-grid.day .agenda-day-column{grid-template-rows:minmax(0,1fr)}.agenda-day-header{color:#33413e;height:64px;min-height:64px;font:inherit;text-align:center;cursor:pointer;background:#f8fbfa;border:1px solid #dce8e5;border-top:0;border-left:0;align-content:center;justify-items:center;gap:4px;padding:8px 6px;display:grid;overflow:hidden}.agenda-day-header.active{color:#0d5f59;background:#e8f4f1}.agenda-day-header span{text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;max-width:100%;font-size:12px;font-weight:900;line-height:1;overflow:hidden}.agenda-day-header strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;line-height:1.05;overflow:hidden}.agenda-day-lane{height:var(--agenda-height);cursor:crosshair;background:#fff;border-right:1px solid #e7efed;position:relative}.agenda-grid-line{pointer-events:none;background:#f8fcfc94;border-top:1px solid #75999461;min-height:1px;position:absolute;left:0;right:0}.agenda-grid-line.hour{background:#f1f8f8d1;border-top-color:#0f3b5557}.agenda-grid-line.minute{border-top-style:dashed}.agenda-off-hours{z-index:1;color:inherit;pointer-events:none;background:0 0;display:none;position:absolute;left:0;right:0}.agenda-off-hours span{display:none}.agenda-event-block{z-index:2;box-sizing:border-box;text-align:left;min-width:0;min-height:0;font:inherit;cursor:pointer;border:1px solid;border-left-width:4px;border-radius:6px;grid-template-rows:auto minmax(0,1fr) auto;align-content:start;gap:2px;padding:4px 7px;line-height:1.05;transition:box-shadow .16s,transform .16s;display:grid;position:absolute;left:7px;right:7px;overflow:hidden;box-shadow:0 10px 22px #04111f21}.agenda-event-block strong,.agenda-event-block span,.agenda-event-block small,.agenda-event-block b{text-overflow:ellipsis;min-width:0;overflow:hidden}.agenda-event-block strong{-webkit-line-clamp:1;white-space:normal;-webkit-box-orient:vertical;font-size:12px;line-height:1.08;display:-webkit-box}.agenda-event-block span{font-size:12px;font-weight:850;line-height:1.16}.agenda-event-block .agenda-event-time{white-space:nowrap;font-size:11px;font-weight:950}.agenda-event-block.short{align-items:center;gap:4px;padding:2px 7px;line-height:1.15;display:flex}.agenda-event-block.short .agenda-event-inline{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;font-size:12px;font-weight:850;line-height:1.15;display:block;overflow:hidden}.agenda-event-block.short .agenda-event-inline b{font-weight:950}.agenda-event-block.stacked{grid-template-rows:auto auto;align-content:center;gap:1px;padding:3px 7px;line-height:1.1}.agenda-event-block.stacked strong{white-space:nowrap;font-size:12px;line-height:1.12;display:block}.agenda-event-block.roomy{align-content:start}.agenda-event-block small{gap:1px;min-width:0;font-size:10px;font-weight:800;line-height:1.05;display:grid}.agenda-event-block small b,.agenda-event-block small em{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-style:normal;font-weight:800;overflow:hidden}.agenda-event-block.compact{min-height:0;padding:3px 6px}.agenda-event-block.short.compact{padding:2px 6px}.agenda-event-block.compact small,.agenda-event-block.tight small,.agenda-event-block.tight em,.agenda-event-block.medium em{display:none}.agenda-event-block.compact span{font-size:11.5px}.agenda-event-block.tight{gap:1px;min-height:0;padding:3px 6px;line-height:1.1}.agenda-event-block.tight strong{font-size:11px}.agenda-event-block.tight span{font-size:10px;line-height:1.1}.agenda-event-block.micro{min-height:0;padding:2px 6px}.agenda-event-block.micro small{display:none}.agenda-event-block.short.tight .agenda-event-inline,.agenda-event-block.short.micro .agenda-event-inline,.agenda-event-block.short.compact .agenda-event-inline{font-size:12px;line-height:1.15}.agenda-event-block:hover{z-index:5;transform:translateY(-1px);box-shadow:0 12px 24px #04111f29}.agenda-event-block.overlapping{border-right-width:3px}.agenda-overlap-badge{max-width:100%;color:inherit;background:#ffffffb8;border-radius:999px;justify-self:start;padding:2px 6px;font-size:10px!important;font-weight:950!important;line-height:1.1!important}.agenda-empty-day{text-align:center;pointer-events:none;font-size:12px;font-weight:800;display:none;position:absolute;top:12px;left:10px;right:10px;color:#33413e!important;opacity:1!important}.calendar-week-day,.calendar-month-day{background:#ffffffe0;border:1px solid #dce8e5;border-radius:8px;align-content:start;gap:8px;min-width:0;padding:10px;display:grid}.calendar-day-heading,.calendar-month-date{color:#0d5f59;font:inherit;text-align:left;cursor:pointer;text-transform:capitalize;background:#e8f4f1;border:0;border-radius:8px;padding:8px;font-weight:900}.calendar-day-heading.active,.calendar-month-date.active{color:#fff;background:#0f766e}.calendar-slot{background:#fffffff0;border:1px solid #dce8e5;border-radius:8px;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:8px;min-height:54px;padding:8px;display:grid}.calendar-slot.occupied{background:#f7fbfa}.calendar-slot.blocked{background:#fff6df;border-color:#f0d28a}.calendar-slot time{color:#0d5f59;font-weight:900}.calendar-slot-body{gap:6px;display:grid}.calendar-appointment,.calendar-free-slot,.calendar-absence{color:#33413e;text-align:left;width:100%;font:inherit;background:#f8fbfa;border:0;border-left:5px solid;border-radius:8px;gap:2px;padding:8px;display:grid}.calendar-appointment{color:var(--appointment-text,#33413e);background:var(--appointment-color,#f8fbfa);cursor:pointer;box-shadow:0 8px 20px #04111f14}.calendar-appointment strong,.calendar-appointment span,.calendar-appointment small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-appointment small{color:var(--appointment-text,#46534f);font-size:12px;font-weight:800}.calendar-appointment.compact{padding:6px 7px;font-size:12px}.calendar-range-fill{cursor:default;opacity:.88;min-height:38px}.calendar-free-slot{color:#0d5f59;cursor:pointer;background:#e8f4f1;border-left-color:#79b8a8;font-weight:900}.calendar-notify-button{color:#5b3bc4;width:100%;font:inherit;cursor:pointer;background:#f0ebff;border:0;border-radius:8px;padding:7px 8px;font-size:12px;font-weight:900}.calendar-absence{color:#8a4f00;background:#fff1cf;border-left-color:#b87512}.status-pendiente{color:#8a4f00;background:#fff6df}.status-confirmado{color:#0d5f59;background:#e8f4f1}.status-atendido{color:#185b9d;background:#eaf3ff}.status-ausente{color:#7b2d20;background:#ffe8e2}.status-cancelado{color:#6b7280;background:#eef0f3;text-decoration:line-through}.status-en-sala-de-espera{color:#5b3bc4;background:#f0ebff}.status-paciente-presente{color:#0f5f8f;background:#e6f6ff}.status-reprogramado{color:#9a3412;background:#ffedd5}.calendar-month-grid{grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px;display:grid}.calendar-month-view{padding-bottom:8px;overflow-x:auto}.calendar-month-day{min-height:150px}.quick-appointment-backdrop{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle at 50% 18%,#20c9b438,#0000 34%),#04111f7a;place-items:center;padding:20px;animation:.18s ease-out both quickBackdropIn;display:grid;position:fixed;inset:0}.quick-appointment-modal{background:linear-gradient(#ecfdfafa,#fffffffa 35%),#fff;border:1px solid #2dd4bf61;border-radius:18px;gap:20px;width:min(720px,100%);max-height:min(84vh,760px);padding:24px;animation:.19s cubic-bezier(.16,1,.3,1) both quickModalIn;display:grid;overflow:auto;box-shadow:0 32px 90px #020a1857,inset 0 0 0 1px #ffffffad}.quick-appointment-modal .panel-title-row{border-bottom:1px solid #0d94882e;align-items:start;gap:16px;padding-bottom:16px}.quick-appointment-modal .eyebrow{color:#0f766e;letter-spacing:0}.quick-close-button{color:#0f766e;width:38px;height:38px;font:inherit;cursor:pointer;background:#f0fdfae6;border:1px solid #0d94883d;border-radius:50%;place-items:center;font-size:16px;font-weight:900;line-height:1;transition:transform .16s,background .16s,color .16s,box-shadow .16s;display:inline-grid;box-shadow:0 10px 24px #0f766e1f}.quick-close-button:hover{color:#fff;background:#0f766e;transform:translateY(-1px);box-shadow:0 14px 30px #0f766e3d}.quick-appointment-modal h2,.quick-appointment-modal h3,.quick-appointment-modal p{margin:0}.quick-appointment-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-appointment-details div{background:#f0fdfab8;border:1px solid #0d94881f;border-radius:12px;gap:6px;padding:13px;display:grid;box-shadow:inset 0 1px #fffc}.quick-appointment-details span{color:#0f766e;text-transform:uppercase;font-size:12px;font-weight:800}.quick-appointment-details strong{color:#102a27;text-overflow:ellipsis;overflow:hidden}.quick-action-block{background:#ffffffbd;border:1px solid #0d94881f;border-radius:14px;gap:12px;padding:16px;display:grid}.quick-action-internal{background:#e8faf7e0;border-color:#0a63582e}.quick-action-help{color:#667370;font-size:13px;line-height:1.45}.quick-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quick-status-grid.internal{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-status-grid button{min-height:42px;font:inherit;cursor:pointer;border:1px solid;border-radius:10px;padding:9px;font-weight:900;transition:transform .15s,box-shadow .15s,filter .15s}.quick-status-grid button:hover{filter:saturate(1.05);transform:translateY(-1px);box-shadow:0 10px 22px #04111f1f}.quick-status-grid button.active{box-shadow:inset 0 0 0 2px,0 10px 22px #04111f24}.quick-actions{flex-wrap:wrap;gap:10px;display:flex}.quick-actions button{flex:150px}.new-appointment-panel{background:linear-gradient(#ecfdfae6,#fffffff5);border:1px solid #0d94882e;border-radius:14px;gap:10px;padding:16px;display:grid}.new-appointment-panel p{color:#5d6c68;margin:0;font-size:13px;line-height:1.45}.new-appointment-button{min-height:48px;font-size:16px}.day-turn-summary{background:#fff;border:1px solid #dce8e5;border-radius:14px;gap:10px;padding:16px;display:grid}.day-turn-summary h3{margin:0}.day-turn-card{text-align:left;width:100%;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;gap:4px;padding:12px;display:grid}.day-turn-card strong,.day-turn-card span,.day-turn-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-turn-card strong{font-weight:900}.day-turn-card span{font-weight:800}.day-turn-card small{color:#4b5f5a}.day-turn-card.attending{color:#14532d;background:#dcfce7;border-color:#22c55e47}.day-turn-card.next{color:#075985;background:#e0f2fe;border-color:#0ea5e947}.day-turn-card.unfinished{color:#713f12;background:#fef9c3;border-color:#eab3085c}.appointment-modal-backdrop,.waiting-room-alert-backdrop{z-index:95;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle at 50% 18%,#2dd4bf33,#0000 34%),#04111f80;place-items:center;padding:22px;animation:.18s ease-out both quickBackdropIn;display:grid;position:fixed;inset:0}.appointment-modal{background:linear-gradient(#ecfdfafa,#fffffffa 30%),#fff;border:1px solid #2dd4bf61;border-radius:18px;gap:18px;width:min(980px,100%);max-height:min(90vh,860px);padding:24px;animation:.19s cubic-bezier(.16,1,.3,1) both quickModalIn;display:grid;overflow:auto;box-shadow:0 32px 90px #020a1857,inset 0 0 0 1px #ffffffad}.appointment-modal-form{gap:14px}.appointment-form-step{background:#ffffffc7;border:1px solid #0d948821;border-radius:14px;gap:12px;padding:16px;display:grid}.appointment-form-step>span{color:#0f766e;text-transform:uppercase;font-size:12px;font-weight:900}.appointment-form-step h3{margin:0}.appointment-modal-actions{background:linear-gradient(#fff0,#fff 38%);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 0 0;display:flex;position:sticky;bottom:-24px}.waiting-room-alert{text-align:center;background:radial-gradient(circle at 50% 0,#2dd4bf2e,#0000 42%),linear-gradient(#ecfdf5,#fff 54%);border:1px solid #2dd4bf75;border-radius:24px;justify-items:center;gap:22px;width:min(680px,100vw - 44px);max-height:calc(100vh - 44px);padding:34px;animation:.19s cubic-bezier(.16,1,.3,1) both quickModalIn;display:grid;overflow:auto;box-shadow:0 34px 100px #020a186b,inset 0 0 0 1px #ffffffb8}.waiting-room-alert-backdrop{z-index:130;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(circle at 50% 18%,#2dd4bf2e,#0000 34%),#04111f8f}.waiting-room-alert-details,.waiting-room-alert .button-row{width:100%}.waiting-room-alert .button-row{justify-content:center;gap:12px}.waiting-room-icon{color:#fff;background:#0f766e;border-radius:50%;place-items:center;width:76px;height:76px;font-size:40px;font-weight:900;display:grid;box-shadow:0 16px 32px #0f766e42}.waiting-room-alert.reminder .waiting-room-icon{background:#0b5e59}.waiting-room-alert h2,.waiting-room-alert p{margin:0}.waiting-room-alert-main{justify-items:center;gap:10px;display:grid}.waiting-room-alert-main .eyebrow{color:#0f766e;letter-spacing:0;text-transform:uppercase;font-size:clamp(24px,2.4vw,30px);font-weight:950}.waiting-room-alert-main h2{color:#082f2c;font-size:clamp(32px,3.4vw,42px);font-weight:950;line-height:1.05}.waiting-room-alert-main p{color:#23423e;font-size:clamp(17px,1.5vw,20px);font-weight:800}.waiting-room-alert-details{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.waiting-room-alert-details>div{background:#f0fdfadb;border:1px solid #0f766e29;border-radius:16px;gap:8px;padding:18px;display:grid}.waiting-room-alert-details span{color:#0f766e;text-transform:uppercase;font-size:13px;font-weight:900}.waiting-room-alert-details strong{color:#102a27;font-size:clamp(24px,2.6vw,32px);font-weight:950;line-height:1}.waiting-room-queue-note{color:#9a3412;background:#fff7ed;border-radius:999px;padding:9px 13px;font-size:14px;font-weight:950}.waiting-room-open-button,.waiting-room-close-button{min-width:180px;min-height:52px;font-size:15px;font-weight:950}.waiting-room-notice-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.waiting-room-notice-summary>div{background:#ecfdfadb;border:1px solid #0f766e2e;border-radius:12px;gap:3px;padding:10px;display:grid}.waiting-room-notice-summary span{color:#0f766e;text-transform:uppercase;font-size:11px;font-weight:900}.waiting-room-notice-summary strong{color:#102a28;font-size:13px;font-weight:900}.sd-toast{z-index:420;color:#064e3b;background:#ecfdf5;border:1px solid #2dd4bf66;border-radius:14px;max-width:min(420px,100vw - 44px);padding:14px 16px;font-size:14px;font-weight:900;animation:.19s cubic-bezier(.16,1,.3,1) both quickModalIn;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 42px #020a183d}.sd-toast.success{color:#064e3b;background:#ecfdf5;border-color:#14b8a673}.sd-toast.error{color:#7f1d1d;background:#fff1f2;border-color:#ef444473}@keyframes quickBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes quickModalIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.quick-appointment-backdrop,.quick-appointment-modal,.appointment-modal-backdrop,.appointment-modal,.waiting-room-alert-backdrop,.waiting-room-alert{animation:none}.quick-close-button,.quick-status-grid button{transition:none}}.calendar-month-day.muted{opacity:.58}.calendar-month-date{text-align:center;justify-self:start;min-width:36px}.calendar-muted,.calendar-more{color:#667370;font-size:12px;font-weight:800}.slot{border:1px solid #dce8e5;border-radius:8px;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:12px;min-height:66px;padding:12px;display:grid}.slot time,.appointment-item time{color:#0d5f59;font-weight:800}.slot.occupied{background:#f7fbfa}.slot.available{background:#fff}.slot.blocked{background:#fff6df;border-color:#f0d28a}.slot.blocked strong{color:#8a4f00}.slot div,.slot-detail{gap:2px;display:grid}.slot-detail{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.slot-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.slot span,.doctor-card span,.insurance-card span,.appointment-item span,.patient-card span,.mini-appointment span{color:#46534f}.slot small{color:#997221;font-weight:700}.slot button{color:#0d5f59;background:#e8f4f1;justify-self:start;padding:8px 12px;font-weight:700}.appointment-list,.patient-list,.doctor-grid,.insurance-list{gap:12px;display:grid}.appointment-item{border:1px solid #dce8e5;border-left:6px solid var(--appointment-text,#0f766e);background:var(--appointment-color,#fff);border-radius:8px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.time-picker-field{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.palette-field{gap:8px;display:grid}.palette-field>span{color:#33413e;font-size:13px;font-weight:800}.color-palette{flex-wrap:wrap;gap:8px;display:flex}.color-palette button{width:38px;height:34px;font:inherit;cursor:pointer;border:3px solid #0000;border-radius:8px;place-items:center;font-weight:900;display:inline-grid;box-shadow:inset 0 0 0 1px #0f2a261f}.color-palette button.selected{box-shadow:0 0 0 2px #0f2a262e,inset 0 0 0 1px #ffffffb3}.appointment-item div,.patient-card div,.doctor-card div,.mini-appointment{gap:3px;display:grid}.card-actions{justify-content:flex-end;display:flex}.card-actions button{color:#0d5f59;cursor:pointer;font:inherit;background:#e8f4f1;border:0;border-radius:8px;padding:8px 11px;font-weight:800}.appointment-actions{gap:8px;display:flex}.appointment-actions select{min-width:130px}.appointment-actions button{color:#9f2f2f;background:#fff1f1;padding:8px 10px}.appointment-actions .edit-action{color:#0d5f59;background:#e8f4f1}.stack-form{gap:14px;margin-top:16px;display:grid}.primary-button{color:#fff;background:#0f766e;border-radius:12px;min-height:42px;padding:10px 16px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;box-shadow:0 12px 26px #0f766e33}.primary-button:hover{background:#0b5e59;transform:translateY(-1px);box-shadow:0 16px 30px #0f766e3d}.primary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.55}.danger-button{color:#9f2f2f;background:#fff1f1;border-radius:12px;min-height:42px;padding:10px 16px;font-weight:800}.text-button{color:#0d5f59;background:0 0;padding:8px 0;font-weight:800}.panel-title-row,.button-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.button-row{align-items:stretch}.button-row button{flex:1}.report-actions{gap:10px;margin-bottom:20px;display:flex}.form-alert{color:#8a4f00;background:#fff6df;border-radius:8px;margin:-4px 0 0;padding:10px 12px;font-size:14px;font-weight:700}.patient-picker{gap:8px;display:grid}.patient-picker-list{gap:8px;max-height:260px;display:grid;overflow:auto}.patient-picker-list button{color:#17211f;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #dce8e5;border-radius:8px;gap:2px;padding:10px;display:grid}.patient-picker-list button:hover,.patient-picker-list button.selected{background:#e8f4f1;border-color:#0f766e}.patient-picker-list span,.patient-picker-list small{color:#667370}.patient-picker-list p{color:#667370;text-align:center;border:1px dashed #adc7c1;border-radius:8px;margin:0;padding:12px}.quick-patient{gap:10px;display:grid}.quick-patient>.text-button{justify-self:start}.quick-patient-form{background:#f7fbfa;border:1px solid #dce8e5;border-radius:8px;gap:12px;padding:12px;display:grid}.next-box{border-top:1px solid #dce8e5;margin-top:22px;padding-top:18px}.next-box h3{margin:0 0 12px}.mini-appointment{border-bottom:1px solid #edf4f2;padding:10px 0}.cancelled-row{padding-right:94px;position:relative}.cancelled-row button{color:#0d5f59;cursor:pointer;font:inherit;background:#e8f4f1;border:0;border-radius:8px;padding:7px 9px;font-weight:700;position:absolute;top:10px;right:0}.section-heading p{color:#667370;margin:6px 0 0}.search-input{max-width:300px}.patient-card{border:1px solid #dce8e5;border-radius:8px;grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:12px;padding:14px;display:grid}.patient-card small{grid-column:1/3}.doctor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-card,.insurance-card{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:10px;padding:16px;display:grid}.doctor-card ul{color:#46534f;gap:4px;margin:0;padding-left:18px;display:grid}.doctor-card,.doctor-card :where(div,strong,span,small,ul,li,b,em){color:#17211f}.doctor-card :where(span,small){color:#42514d}.doctor-card ul,.doctor-card li,.doctor-card li strong{color:#17211f}.absence-panel{border-top:1px solid #dce8e5;gap:16px;margin-top:22px;padding-top:18px;display:grid}.absence-list{gap:10px;display:grid}.absence-row{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:10px;padding:12px;display:grid}.absence-row div:first-child{gap:4px;display:grid}.absence-row span,.absence-row small{color:#667370}.absence-warning{color:#8a4f00;background:#fff6df;border-radius:8px;gap:6px;padding:12px;display:grid}.absence-warning span{color:#5f4210;font-size:13px}.absence-history{gap:10px;display:grid}.absence-history h3{margin:0}.day-picker{border:1px solid #cbdcd8;border-radius:8px;flex-wrap:wrap;gap:8px;padding:12px;display:flex}.day-picker legend{color:#33413e;padding:0 6px;font-size:14px;font-weight:800}.day-picker label{background:#f1f8f6;border-radius:8px;align-items:center;gap:6px;padding:6px 8px;display:inline-flex}.day-picker input{width:auto;min-height:auto}.schedule-editor{border:1px solid #cbdcd8;border-radius:8px;gap:10px;padding:12px;display:grid}.schedule-editor legend{color:#33413e;padding:0 6px;font-size:14px;font-weight:800}.schedule-day{background:#ffffffb8;border:1px solid #e1ece9;border-radius:8px;gap:10px;padding:12px;display:grid}.schedule-day.active{background:#f7fbfa;border-color:#b8d5cf}.schedule-day-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.schedule-day-header span,.schedule-day small{color:#667370;font-size:13px;font-weight:800}.schedule-intervals{gap:10px;display:grid}.schedule-interval{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.schedule-interval .danger-button{min-height:42px;padding:8px 12px}.inline-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.report-filters{grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px;min-width:min(620px,100%);display:grid}.report-stats{margin-bottom:20px}.report-grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:16px;display:grid}.report-block,.report-side-list{gap:10px;display:grid}.report-block h3{margin:0}.report-table{gap:6px;display:grid;overflow-x:auto}.report-table-header,.report-table-row{border-radius:8px;grid-template-columns:1.2fr 1fr 1fr .7fr .8fr 1fr;gap:10px;min-width:760px;padding:10px;display:grid}.report-table-header{color:#33413e;background:#e8f4f1;font-weight:800}.report-table-row{color:#46534f;background:#fbfdfc}.report-row{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.report-row div{gap:3px;display:grid}.report-row span{color:#667370}.report-numbers{justify-items:end;font-size:13px}.compact-row{grid-template-columns:minmax(0,1fr) auto}.muted-text{color:#667370;margin:0}.email-config-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.email-config-form .button-row,.email-config-form .form-alert,.email-config-form .section-heading,.email-test-recipients{grid-column:1/-1}.email-config-form .form-alert{white-space:pre-line}.agenda-email-test-form{border-top:1px solid #dce8e5;margin-top:24px;padding-top:20px}.email-recipient-list,.agenda-preferences{gap:10px;display:grid}.email-test-recipients{color:#0f3b55;background:#f0fbfa;border:1px solid #b8d8d5;border-radius:12px;gap:5px;padding:12px;display:grid}.email-test-recipients strong{color:#083344;font-size:13px}.email-test-recipients span,.email-test-recipients small{color:#33413e}.agenda-email-preview{color:#0f3b55;background:#f7fffd;border:1px solid #99d6cf;border-radius:14px;grid-column:1/-1;gap:8px;padding:14px;display:grid}.agenda-email-preview>strong,.agenda-email-preview div>strong{color:#08263d}.agenda-email-preview span,.agenda-email-preview small{color:#33413e}.agenda-email-preview div{border-top:1px solid #d7e6e6;gap:4px;padding-top:8px;display:grid}.main-panel:not(.dashboard-panel) .email-config-form .email-test-recipients,.form-panel .email-config-form .email-test-recipients,.main-panel:not(.dashboard-panel) .email-config-form .agenda-email-preview,.form-panel .email-config-form .agenda-email-preview{color:#12363f;background:#f7fffd;border-color:#9ad7d1;box-shadow:0 12px 28px #020a1829}.main-panel:not(.dashboard-panel) .email-config-form .email-test-recipients :where(strong,span,small,p,label),.form-panel .email-config-form .email-test-recipients :where(strong,span,small,p,label),.main-panel:not(.dashboard-panel) .email-config-form .agenda-email-preview :where(strong,span,small,p,label),.form-panel .email-config-form .agenda-email-preview :where(strong,span,small,p,label){color:#12363f}.main-panel:not(.dashboard-panel) .email-config-form .email-test-recipients strong,.form-panel .email-config-form .email-test-recipients strong,.main-panel:not(.dashboard-panel) .email-config-form .agenda-email-preview strong,.form-panel .email-config-form .agenda-email-preview strong{color:#07283a}.main-panel:not(.dashboard-panel) .email-config-form .email-test-recipients small,.form-panel .email-config-form .email-test-recipients small,.main-panel:not(.dashboard-panel) .email-config-form .agenda-email-preview small,.form-panel .email-config-form .agenda-email-preview small{color:#476360}.main-panel:not(.dashboard-panel) .email-config-form .agenda-email-preview .checkbox-line,.form-panel .email-config-form .agenda-email-preview .checkbox-line{color:#12363f}.main-panel:not(.dashboard-panel) .email-config-form .section-heading :where(h3,p),.form-panel .email-config-form .section-heading :where(h3,p){color:#f8feff}.main-panel:not(.dashboard-panel) .email-config-form .section-heading p,.form-panel .email-config-form .section-heading p{color:#eaf7f6d1}.agenda-email-preferences-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px;margin-top:6px;display:grid}.field-label,.agenda-preferences h4{color:#0f172a;margin:0;font-size:13px;font-weight:800}.email-recipient-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.agenda-preferences{background:#ffffffdb;border:1px solid #dce8e5;border-radius:12px;margin-top:8px;padding:14px}.agenda-preferences .checkbox-row{min-height:24px}.checkbox-row.compact{padding:4px 0}.email-history-row{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:4px;padding:12px;display:grid}.email-history-row span,.email-history-row small{color:#667370}.template-list{gap:14px;display:grid}.template-card{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:12px;padding:16px;display:grid}.template-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.template-card-heading>div{gap:6px;display:grid}.template-card-heading strong{color:#102a35;font-size:15px;line-height:1.25}.template-card-heading span{color:#0f5f59;background:#e8f5f3;border-radius:999px;width:fit-content;padding:4px 9px;font-size:11px;font-weight:850;line-height:1}.template-card span{color:#667370}.template-card .template-card-heading span{color:#0f5f59}.user-list{gap:12px;display:grid}.user-row{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.user-row div:first-child{gap:4px;display:grid}.user-row span,.user-row small{color:#667370}.user-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.status-pill{border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800}.status-pill.active{color:#0d5f59;background:#e8f4f1}.status-pill.inactive{color:#7b2d20;background:#ffe8e2}.checkbox-row{align-items:center;gap:8px;display:flex}.checkbox-row input{width:auto;min-height:0}.financial-layout{gap:20px;display:grid}.financial-table,.financial-history,.nomenclator-list,.task-checklist,.selected-task-list{gap:10px;display:grid}.financial-table{overflow-x:auto}.financial-table-header,.financial-table-row{border-radius:8px;grid-template-columns:1.4fr .8fr .9fr 1fr .8fr .9fr .9fr .9fr .8fr auto;align-items:center;gap:10px;min-width:1240px;padding:11px 12px;display:grid}.financial-table-header{color:#33413e;text-transform:uppercase;background:#e8f4f1;font-size:12px;font-weight:800}.financial-table-row{border:1px solid #dce8e5}.financial-table-row.ok{background:#e6f7eb}.financial-table-row.debt{background:#fff5bf;border-color:#ead77a}.financial-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.financial-block{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:12px;padding:14px;display:grid}.financial-block h3{margin:0}.manual-task-box{grid-template-columns:minmax(0,.7fr) minmax(0,1fr);align-items:end;gap:10px;display:grid}.manual-task-box .checkbox-row,.manual-task-box button{align-self:center}.selected-task-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.selected-task-list span,.nomenclator-list article,.history-item{background:#fff;border:1px solid #dce8e5;border-radius:8px;padding:10px}.nomenclator-list article,.history-item{gap:6px;display:grid}.history-item p,.history-item small,.nomenclator-list span,.nomenclator-list small{color:#667370;margin:0}.history-item.voided{opacity:.68;background:#f4f4f4}.inventory-layout{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:20px;display:grid}.inventory-filters{margin-bottom:18px}.inventory-grid{gap:12px;margin-bottom:20px;display:grid}.inventory-card{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:12px;padding:14px;display:grid}.inventory-card.warning{background:#fffaf0;border-color:#f0d28a}.inventory-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.inventory-card dt{color:#33413e;font-weight:800}.inventory-card dd{color:#46534f;margin:0}.clinical-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.clinical-summary div{background:#f1f8f6;border-radius:8px;gap:4px;padding:12px;display:grid}.clinical-summary span,.clinical-record span,.clinical-record small{color:#667370}.clinical-filters{margin-bottom:18px}.clinical-records{gap:14px;display:grid}.clinical-record{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:14px;padding:16px;display:grid}.clinical-record.turno{border-left:4px solid #0f766e}.clinical-record.consulta{border-left:4px solid #997221}.event-list{flex-wrap:wrap;gap:8px;display:flex}.event-list span{color:#0d5f59;background:#e8f4f1;border-radius:8px;padding:6px 8px;font-size:13px;font-weight:800}.clinical-record dl{gap:10px;margin:0;display:grid}.clinical-record dl div{gap:3px;display:grid}.clinical-record dt{color:#33413e;font-weight:800}.clinical-record dd{color:#46534f;margin:0}.clinical-supplies-box{background:#fbfdfc;border:1px solid #dce8e5;border-radius:8px;gap:10px;padding:12px;display:grid}.attachment-list{flex-wrap:wrap;gap:8px;display:flex}.attachment-list a,.attachment-list span{color:#0d5f59;background:#e8f4f1;border-radius:8px;padding:7px 9px;font-size:13px;font-weight:800;text-decoration:none}.attachments-pilot-panel{color:#eaf7f6;background:linear-gradient(135deg,#061b30f0,#0a3d52eb),radial-gradient(circle at 100% 0,#2cc4b833,#0000 38%);border:1px solid #66d3cd52;border-radius:16px;gap:16px;margin:18px 0;padding:18px;display:grid;box-shadow:0 18px 38px #020a1838}.attachments-pilot-panel .eyebrow,.attachments-pilot-panel h3,.attachments-pilot-panel span,.attachments-pilot-panel small{color:inherit}.attachments-pilot-panel h3{margin:2px 0 4px}.attachments-pilot-controls{grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto minmax(220px,1fr);align-items:end;gap:12px;display:grid}.attachments-pilot-controls label,.attachment-confirm{color:#dff7f5;gap:6px;font-size:12px;font-weight:800;display:grid}.attachments-pilot-controls select,.attachments-pilot-controls input,.attachment-confirm input{color:#0b2033;background:#f8fffd;border:1px solid #9ddada8c;border-radius:10px;min-height:42px;padding:9px 12px;font-weight:800}.pilot-checkbox{background:#ffffff14;border:1px solid #9ddada47;border-radius:10px;align-content:center;min-height:42px;padding:8px 10px}.pilot-file-input input{color:#0b2033}.attachments-pilot-help{color:#5e4100;background:#fff7dd;border:1px solid #f6c45352;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:800}.attachments-pilot-status{color:#5e4100;background:#fff4cf}.attachments-pilot-list{gap:10px;display:grid}.attachment-pilot-card{color:#0c2538;background:#f8fffd;border:1px solid #8fd3cf57;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px;display:grid}.attachment-pilot-card.deleted{color:#475569;background:#eef2f4;border-style:dashed}.attachment-pilot-card strong,.attachment-pilot-card span,.attachment-pilot-card small{color:inherit;display:block}.attachment-pilot-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.attachment-pilot-card small{color:#53646a}.attachment-status{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.attachment-status.active{color:#07513e;background:#cff7e6}.attachment-status.deleted{color:#8a1c1c;background:#ffe0e0}.attachment-actions{justify-content:flex-end}.attachment-confirm{max-width:360px}.variable-list{flex-wrap:wrap;gap:8px;display:flex}.variable-list code{color:#0d5f59;background:#e8f4f1;border-radius:8px;padding:6px 8px;font-size:13px;font-weight:800}.empty-state{color:#667370;text-align:center;background:#fbfdfc;border:1px dashed #adc7c1;border-radius:8px;padding:24px}.main-panel:not(.dashboard-panel),.form-panel{color:#eaf7f6;background:linear-gradient(145deg,#071527 0%,#0b2742 58%,#0f3b55 100%);border:1px solid #8cd3db38;box-shadow:0 18px 46px #020a1847}.main-panel:not(.dashboard-panel) h2,.main-panel:not(.dashboard-panel) h3,.form-panel h2,.form-panel h3{color:#f8feff;letter-spacing:0}.main-panel:not(.dashboard-panel) p,.main-panel:not(.dashboard-panel) small,.main-panel:not(.dashboard-panel) .muted-text,.form-panel p,.form-panel small,.form-panel .muted-text{color:#eaf7f6c2}.main-panel:not(.dashboard-panel) label,.form-panel label,.main-panel:not(.dashboard-panel) legend,.form-panel legend{color:#d7fff8}.main-panel:not(.dashboard-panel) input,.main-panel:not(.dashboard-panel) select,.main-panel:not(.dashboard-panel) textarea,.form-panel input,.form-panel select,.form-panel textarea{color:#102a28;background:#fffffffa;border-color:#97d2d3db;box-shadow:inset 0 1px #ffffffbd,0 8px 18px #020a1814}.main-panel:not(.dashboard-panel) input:focus,.main-panel:not(.dashboard-panel) select:focus,.main-panel:not(.dashboard-panel) textarea:focus,.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{border-color:#71d8d3;outline:3px solid #3aafa942}.main-panel:not(.dashboard-panel) .stats-row div,.main-panel:not(.dashboard-panel) .system-status-grid article,.main-panel:not(.dashboard-panel) .next-box,.main-panel:not(.dashboard-panel) .report-row,.main-panel:not(.dashboard-panel) .report-table-row,.main-panel:not(.dashboard-panel) .email-history-row,.main-panel:not(.dashboard-panel) .patient-card,.main-panel:not(.dashboard-panel) .appointment-item,.main-panel:not(.dashboard-panel) .inventory-card,.main-panel:not(.dashboard-panel) .schedule-editor,.main-panel:not(.dashboard-panel) .schedule-day,.main-panel:not(.dashboard-panel) .day-picker,.main-panel:not(.dashboard-panel) .empty-state,.form-panel .stats-row div,.form-panel .system-status-grid article,.form-panel .next-box,.form-panel .report-row,.form-panel .report-table-row,.form-panel .email-history-row,.form-panel .patient-card,.form-panel .appointment-item,.form-panel .inventory-card,.form-panel .schedule-editor,.form-panel .schedule-day,.form-panel .day-picker,.form-panel .empty-state{background:#ffffff13;border-color:#91d2d63d;box-shadow:0 12px 26px #020a181f}.main-panel:not(.dashboard-panel) .stats-row strong,.main-panel:not(.dashboard-panel) .system-status-grid strong,.main-panel:not(.dashboard-panel) .report-row strong,.main-panel:not(.dashboard-panel) .email-history-row strong,.main-panel:not(.dashboard-panel) .patient-card strong,.main-panel:not(.dashboard-panel) .appointment-item strong,.main-panel:not(.dashboard-panel) .inventory-card strong,.form-panel .stats-row strong,.form-panel .system-status-grid strong,.form-panel .report-row strong,.form-panel .email-history-row strong,.form-panel .patient-card strong,.form-panel .appointment-item strong,.form-panel .inventory-card strong{color:#f8feff}.main-panel:not(.dashboard-panel) .stats-row span,.main-panel:not(.dashboard-panel) .system-status-grid span,.main-panel:not(.dashboard-panel) .system-status-grid small,.main-panel:not(.dashboard-panel) .report-row span,.main-panel:not(.dashboard-panel) .report-table-row,.main-panel:not(.dashboard-panel) .email-history-row span,.main-panel:not(.dashboard-panel) .email-history-row small,.main-panel:not(.dashboard-panel) .patient-card span,.main-panel:not(.dashboard-panel) .patient-card small,.main-panel:not(.dashboard-panel) .appointment-item span,.main-panel:not(.dashboard-panel) .appointment-item small,.main-panel:not(.dashboard-panel) .inventory-card dt,.main-panel:not(.dashboard-panel) .inventory-card dd,.form-panel .stats-row span,.form-panel .system-status-grid span,.form-panel .system-status-grid small,.form-panel .report-row span,.form-panel .report-table-row,.form-panel .email-history-row span,.form-panel .email-history-row small,.form-panel .patient-card span,.form-panel .patient-card small,.form-panel .appointment-item span,.form-panel .appointment-item small,.form-panel .inventory-card dt,.form-panel .inventory-card dd{color:#eaf7f6c2}.main-panel:not(.dashboard-panel) .report-table-header,.form-panel .report-table-header{color:#d7fff8;background:#3aafa929}.main-panel:not(.dashboard-panel) .calendar-view-switch button,.form-panel .calendar-view-switch button{color:#d7fff8;background:#ffffff14;border-color:#91d2d647}.main-panel:not(.dashboard-panel) .calendar-view-switch button.active,.form-panel .calendar-view-switch button.active{color:#071527;background:#a7f3ef;border-color:#a7f3ef}.main-panel:not(.dashboard-panel) .calendar-legend span,.main-panel:not(.dashboard-panel) .calendar-title-row span,.main-panel:not(.dashboard-panel) .agenda-day-header span,.main-panel:not(.dashboard-panel) .agenda-day-header strong,.form-panel .calendar-legend span,.form-panel .calendar-title-row span,.form-panel .agenda-day-header span,.form-panel .agenda-day-header strong{color:#eaf7f6d1}.main-panel:not(.dashboard-panel) .agenda-time-axis,.main-panel:not(.dashboard-panel) .agenda-day-lane,.form-panel .agenda-time-axis,.form-panel .agenda-day-lane{background:#ffffff0f;border-color:#91d2d633}.main-panel:not(.dashboard-panel) .agenda-grid-line.hour,.form-panel .agenda-grid-line.hour{border-color:#bfe6e63d}.main-panel:not(.dashboard-panel) .agenda-grid-line.half,.form-panel .agenda-grid-line.half{border-color:#bfe6e61a}.main-panel:not(.dashboard-panel) .agenda-empty-day,.form-panel .agenda-empty-day{color:#eaf7f6ad}.main-panel:not(.dashboard-panel) .calendar-month-day,.main-panel:not(.dashboard-panel) .calendar-week-day,.main-panel:not(.dashboard-panel) .calendar-slot,.form-panel .calendar-month-day,.form-panel .calendar-week-day,.form-panel .calendar-slot{background:#ffffff12;border-color:#91d2d638}.main-panel:not(.dashboard-panel) .calendar-day-heading,.main-panel:not(.dashboard-panel) .calendar-month-date,.main-panel:not(.dashboard-panel) .calendar-slot time,.form-panel .calendar-day-heading,.form-panel .calendar-month-date,.form-panel .calendar-slot time{color:#d7fff8}.main-panel:not(.dashboard-panel) .calendar-muted,.main-panel:not(.dashboard-panel) .calendar-more,.form-panel .calendar-muted,.form-panel .calendar-more{color:#eaf7f69e}.main-panel:not(.dashboard-panel) .primary-button,.form-panel .primary-button{background:#168a80;box-shadow:0 14px 28px #00000038}.main-panel:not(.dashboard-panel) .primary-button:hover,.form-panel .primary-button:hover{background:#22aaa0}.main-panel:not(.dashboard-panel) .ghost-button,.form-panel .ghost-button{color:#d7fff8;box-shadow:none;background:#ffffff14;border-color:#91d2d64d}.main-panel:not(.dashboard-panel) .ghost-button:hover,.form-panel .ghost-button:hover{color:#071527;background:#d7fff8}.main-panel:not(.dashboard-panel) .danger-button,.form-panel .danger-button{color:#ffe4e6;background:#be123c38;border:1px solid #fb718547}.main-panel:not(.dashboard-panel) :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,th,td,li),.form-panel :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,th,td,li){color:#edfafa}.main-panel:not(.dashboard-panel) :where(small,.muted-text,.calendar-title-row span,.agenda-empty-day,.calendar-muted,.calendar-more),.form-panel :where(small,.muted-text,.calendar-title-row span,.agenda-empty-day,.calendar-muted,.calendar-more){color:#edfafab8}.main-panel:not(.dashboard-panel) :where(input,select,textarea,option),.form-panel :where(input,select,textarea,option){color:#102a28}.main-panel:not(.dashboard-panel) :where(),.form-panel :where(){color:#62736f}.main-panel:not(.dashboard-panel) :where(.legend-dot,.database-badge,.billing-badge,.form-alert,.license-code-box,.calendar-free-slot,.calendar-notify-button,.calendar-absence),.form-panel :where(.legend-dot,.database-badge,.billing-badge,.form-alert,.license-code-box,.calendar-free-slot,.calendar-notify-button,.calendar-absence){color:#123734}.main-panel:not(.dashboard-panel) :where(.legend-dot span,.database-badge span,.billing-badge span,.form-alert span,.license-code-box span,.calendar-free-slot span,.calendar-notify-button span,.calendar-absence span),.form-panel :where(.legend-dot span,.database-badge span,.billing-badge span,.form-alert span,.license-code-box span,.calendar-free-slot span,.calendar-notify-button span,.calendar-absence span){color:inherit}.main-panel:not(.dashboard-panel) .status-pendiente,.form-panel .status-pendiente{color:#8a4f00;background:#fff6df}.main-panel:not(.dashboard-panel) .status-confirmado,.form-panel .status-confirmado{color:#0d5f59;background:#e8f4f1}.main-panel:not(.dashboard-panel) .status-atendido,.form-panel .status-atendido{color:#185b9d;background:#eaf3ff}.main-panel:not(.dashboard-panel) .status-ausente,.form-panel .status-ausente{color:#7b2d20;background:#ffe8e2}.main-panel:not(.dashboard-panel) .status-cancelado,.form-panel .status-cancelado{color:#6b7280;background:#eef0f3}.main-panel:not(.dashboard-panel) .status-en-sala-de-espera,.form-panel .status-en-sala-de-espera{color:#5b3bc4;background:#f0ebff}.main-panel:not(.dashboard-panel) .status-paciente-presente,.form-panel .status-paciente-presente{color:#0f5f8f;background:#e6f6ff}.main-panel:not(.dashboard-panel) .status-reprogramado,.form-panel .status-reprogramado{color:#9a3412;background:#ffedd5}.main-panel:not(.dashboard-panel) .calendar-appointment,.main-panel:not(.dashboard-panel) .calendar-appointment :where(strong,span,small),.form-panel .calendar-appointment,.form-panel .calendar-appointment :where(strong,span,small){color:var(--appointment-text,#33413e)}.main-panel:not(.dashboard-panel) .agenda-event-block,.main-panel:not(.dashboard-panel) .agenda-event-block :where(strong,span,small,b,em),.form-panel .agenda-event-block,.form-panel .agenda-event-block :where(strong,span,small,b,em){color:inherit}.main-panel:not(.dashboard-panel) .quick-status-grid button,.form-panel .quick-status-grid button,.main-panel:not(.dashboard-panel) .color-palette button,.form-panel .color-palette button{color:#102a28}@keyframes softGlow{0%{opacity:.72;transform:scale(1)}to{opacity:1;transform:scale(1.03)}}@media (width<=1100px){.agenda-layout,.clinical-layout,.financial-detail-grid,.two-column,.two-column.compact,.report-layout,.dashboard-grid,.dashboard-custom-grid,.dashboard-kpi-grid,.dashboard-summary-grid{grid-template-columns:1fr}.dashboard-widget-small,.dashboard-widget-medium,.dashboard-widget-large,.dashboard-widget-full{grid-column:1/-1}.report-grid,.dashboard-header{grid-template-columns:1fr}.dashboard-hero-meta{justify-items:start}.topbar-brand{position:static;transform:none}.topbar-actions{flex-wrap:wrap;margin-left:0}}@media (width<=900px){.sidebar-hover-zone{display:none}.app-shell,.app-shell.sidebar-open,.app-shell.sidebar-closed{grid-template-columns:minmax(0,1fr)}.sidebar,.app-shell.sidebar-closed .sidebar{z-index:60;width:min(300px,86vw);height:100dvh;transition:transform .18s;display:flex;position:fixed;inset:0 auto 0 0;overflow:auto;transform:translate(-105%);box-shadow:22px 0 50px #0f2a2633}.app-shell.sidebar-open .sidebar{transform:translate(0)}.sidebar-backdrop{z-index:50;background:#0f2a2652;display:block;position:fixed;inset:0}.app-shell.sidebar-closed .sidebar-backdrop{display:none}}@media (width<=720px){.login-card{padding:24px}.login-logo{width:92px;height:92px}.workspace{padding:18px}.sidebar{padding:22px 18px}.topbar,.toolbar,.section-heading,.dashboard-card-title,.dashboard-detail-toolbar{flex-direction:column;align-items:stretch}.dashboard-header{padding:20px}.dashboard-hero-copy{flex-direction:column;align-items:flex-start}.dashboard-header h2{font-size:28px}.topbar-logo{align-self:flex-start;width:54px;height:54px}.topbar-brand{align-self:center}.topbar-actions{width:100%}.topbar-actions>*{flex:auto}.nav-list,.stats-row,.system-status-grid,.clinical-summary,.manual-task-box,.report-filters,.email-config-form,.dashboard-filters,.dashboard-pie-layout,.dashboard-ai-form,.dashboard-ai-model-row,.help-layout,.time-picker-field,.schedule-interval,.doctor-grid,.patient-card,.appointment-item{grid-template-columns:1fr}.appointment-actions{flex-direction:column}.calendar-toolbar,.calendar-title-row{flex-direction:column;align-items:stretch}.calendar-view-switch button{flex:1}.agenda-time-grid.week{grid-template-columns:62px minmax(760px,1fr)}.agenda-time-grid{grid-template-columns:62px minmax(0,1fr)}.agenda-event-block{padding:4px 7px}.agenda-event-block.short,.agenda-event-block.short.compact,.agenda-event-block.micro{padding:2px 6px}.agenda-event-block.stacked,.agenda-event-block.tight{padding:3px 7px}.agenda-event-block strong{font-size:12px}.agenda-event-block .agenda-event-time{font-size:11px}.quick-appointment-details,.quick-status-grid,.appointment-modal-form .inline-fields,.appointment-modal-form .time-picker-field{grid-template-columns:1fr}.appointment-modal,.ai-modal,.waiting-room-alert{border-radius:14px;max-height:92vh;padding:18px}.ai-modal-header,.help-section-card{flex-direction:column}.appointment-modal-actions{justify-content:stretch}.appointment-modal-actions button{flex:100%}.slot-detail,.slot-actions,.button-row,.report-row,.report-actions{grid-template-columns:1fr;align-items:stretch}.report-actions{flex-direction:column}.slot-actions{justify-content:stretch}.report-numbers{justify-items:start}.search-input{max-width:none}}.main-panel:not(.dashboard-panel) :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.day-picker label,.absence-row,.clinical-supplies-box,.license-code-box),.form-panel :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.day-picker label,.absence-row,.clinical-supplies-box,.license-code-box){color:#17211f;background:#fffffff5;border-color:#c4d9d9eb}.main-panel:not(.dashboard-panel) :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.absence-row,.clinical-supplies-box,.license-code-box) :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li),.form-panel :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.absence-row,.clinical-supplies-box,.license-code-box) :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li){color:#17211f}.main-panel:not(.dashboard-panel) :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.absence-row,.clinical-supplies-box) :where(small,span,dd),.form-panel :where(.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.quick-patient-form,.schedule-day,.day-picker,.absence-row,.clinical-supplies-box) :where(small,span,dd){color:#536460}.main-panel:not(.dashboard-panel) .day-turn-card .status-pill,.form-panel .day-turn-card .status-pill,.main-panel:not(.dashboard-panel) :where(.status-pill,.billing-badge),.form-panel :where(.status-pill,.billing-badge){color:#0d5f59}.main-panel:not(.dashboard-panel) .day-turn-card .status-pill.inactive,.form-panel .day-turn-card .status-pill.inactive,.main-panel:not(.dashboard-panel) .status-pill.inactive,.form-panel .status-pill.inactive{color:#7b2d20}.main-panel:not(.dashboard-panel) .next-box,.form-panel .next-box,.main-panel:not(.dashboard-panel) .mini-appointment,.form-panel .mini-appointment{color:#edfafa;background:0 0}.main-panel:not(.dashboard-panel) .next-box :where(h3,strong,p,span,small,time),.form-panel .next-box :where(h3,strong,p,span,small,time),.main-panel:not(.dashboard-panel) .mini-appointment :where(strong,span,small,time),.form-panel .mini-appointment :where(strong,span,small,time){color:#edfafa}.main-panel:not(.dashboard-panel) .next-box .empty-state,.form-panel .next-box .empty-state,.main-panel:not(.dashboard-panel) .next-box .empty-state :where(p,span,small,strong),.form-panel .next-box .empty-state :where(p,span,small,strong),.main-panel:not(.dashboard-panel) :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row),.form-panel :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row){color:#17211f;background:#fffffff5}.main-panel:not(.dashboard-panel) :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row) :where(h2,h3,h4,p,span,small,strong,b,em,li),.form-panel :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row) :where(h2,h3,h4,p,span,small,strong,b,em,li){color:#17211f}.main-panel:not(.dashboard-panel) :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row) :where(p,span,small),.form-panel :where(.new-appointment-panel,.day-turn-summary,.doctor-card,.insurance-card,.report-row.compact-row) :where(p,span,small){color:#42514d}.main-panel:not(.dashboard-panel) :where(.new-appointment-panel,.day-turn-summary) :where(h3),.form-panel :where(.new-appointment-panel,.day-turn-summary) :where(h3){color:#17211f}.form-panel .new-appointment-panel p,.form-panel .new-appointment-panel p *,.main-panel:not(.dashboard-panel) .new-appointment-panel p,.main-panel:not(.dashboard-panel) .new-appointment-panel p *{color:#42514d!important}.form-panel .day-turn-summary h3,.main-panel:not(.dashboard-panel) .day-turn-summary h3{color:#17211f!important}.main-panel:not(.dashboard-panel) .doctor-card>small,.main-panel:not(.dashboard-panel) .doctor-card>span,.main-panel:not(.dashboard-panel) .doctor-card div>span,.form-panel .doctor-card>small,.form-panel .doctor-card>span,.form-panel .doctor-card div>span{color:#42514d!important;opacity:1!important}.main-panel:not(.dashboard-panel) .doctor-card,.form-panel .doctor-card,.form-panel .new-appointment-panel,.form-panel .day-turn-summary{background:#fff!important}.app-shell{color:var(--text-primary)}.topbar,.dashboard-header,.main-panel:not(.dashboard-panel),.form-panel{background:linear-gradient(145deg, var(--background-dark) 0%, var(--background-dark-secondary) 58%, var(--background-dark-accent) 100%)!important;color:var(--text-on-dark)!important;border-color:#8cd3db38!important}.topbar :where(h1,h2,h3,p,span,small,strong,label),.dashboard-header :where(h1,h2,h3,p,span,small,strong,label),.main-panel:not(.dashboard-panel)>:where(h1,h2,h3,h4,p,span,small,strong,label),.main-panel:not(.dashboard-panel)>.section-heading :where(h1,h2,h3,h4,p,span,small,strong,label),.main-panel:not(.dashboard-panel)>.panel-title-row :where(h1,h2,h3,h4,p,span,small,strong,label),.form-panel>:where(h1,h2,h3,h4,p,span,small,strong,label),.form-panel>.section-heading :where(h1,h2,h3,h4,p,span,small,strong,label),.form-panel>.panel-title-row :where(h1,h2,h3,h4,p,span,small,strong,label){color:var(--text-on-dark)!important;opacity:1!important}.main-panel:not(.dashboard-panel)>:where(p,small,.muted-text),.main-panel:not(.dashboard-panel)>.section-heading :where(p,small,.muted-text),.form-panel>:where(p,small,.muted-text),.form-panel>.section-heading :where(p,small,.muted-text){color:var(--text-on-dark-secondary)!important;opacity:1!important}.sidebar,.dashboard-panel,.dashboard-card,.dashboard-kpi-card,.dashboard-summary-card,.dashboard-ai-card,.dashboard-indicator,.dashboard-detail-modal,.ai-modal,.appointment-modal,.quick-appointment-modal,.waiting-room-alert,.notification-panel,.quick-patient-form,.patient-picker-list,.main-panel:not(.dashboard-panel) :where(.stats-row>div,.system-status-grid article,.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary>div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.schedule-editor,.schedule-day,.day-picker,.day-picker label,.absence-row,.clinical-supplies-box,.license-code-box,.manual-task-box,.slot-detail,.task-card,.help-section-card,.audit-table-wrap,.audit-detail,.dashboard-detail-table,.quick-appointment-details>div,.waiting-room-alert-details>div),.form-panel :where(.stats-row>div,.system-status-grid article,.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary>div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.schedule-editor,.schedule-day,.day-picker,.day-picker label,.absence-row,.clinical-supplies-box,.license-code-box,.manual-task-box,.slot-detail,.task-card,.help-section-card,.audit-table-wrap,.audit-detail,.dashboard-detail-table,.quick-appointment-details>div,.waiting-room-alert-details>div){background:var(--card-background)!important;color:var(--text-primary)!important;border-color:var(--border-color-soft)!important;opacity:1!important}.sidebar :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li),.dashboard-panel :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.dashboard-card :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.dashboard-kpi-card :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.dashboard-summary-card :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.dashboard-ai-card :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.dashboard-detail-modal :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.ai-modal :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.appointment-modal :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.quick-appointment-modal :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.waiting-room-alert :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.notification-panel :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.main-panel:not(.dashboard-panel) :where(.stats-row>div,.system-status-grid article,.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary>div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.schedule-editor,.schedule-day,.day-picker,.absence-row,.clinical-supplies-box,.license-code-box,.manual-task-box,.slot-detail,.task-card,.help-section-card,.audit-table-wrap,.audit-detail,.dashboard-detail-table,.quick-appointment-details>div,.waiting-room-alert-details>div) :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td),.form-panel :where(.stats-row>div,.system-status-grid article,.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.day-turn-card,.report-row,.report-table-row,.email-history-row,.template-card,.user-row,.inventory-card,.clinical-record,.clinical-summary>div,.financial-block,.financial-table-row,.nomenclator-list article,.history-item,.selected-task-list span,.empty-state,.schedule-editor,.schedule-day,.absence-row,.day-picker,.clinical-supplies-box,.license-code-box,.manual-task-box,.slot-detail,.task-card,.help-section-card,.audit-table-wrap,.audit-detail,.dashboard-detail-table,.quick-appointment-details>div,.waiting-room-alert-details>div) :where(h1,h2,h3,h4,h5,p,span,small,strong,b,em,time,dt,dd,legend,label,li,th,td){color:var(--text-primary)!important;opacity:1!important}.sidebar :where(small,.muted-text),.dashboard-panel :where(small,.muted-text,.dashboard-card-title p,.dashboard-mini-row span),.dashboard-card :where(small,.muted-text,.dashboard-card-title p,.dashboard-mini-row span),.dashboard-kpi-card :where(small,.muted-text),.main-panel:not(.dashboard-panel) :where(.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.report-row,.inventory-card,.clinical-record,.financial-block) :where(p,span,small,dd),.form-panel :where(.new-appointment-panel,.day-turn-summary,.patient-card,.doctor-card,.insurance-card,.appointment-item,.report-row,.inventory-card,.clinical-record,.financial-block) :where(p,span,small,dd){color:var(--text-secondary)!important;opacity:1!important}.main-panel:not(.dashboard-panel) .doctor-card :where(strong,b,h3,h4),.form-panel .doctor-card :where(strong,b,h3,h4),.main-panel:not(.dashboard-panel) .insurance-card :where(strong,b,h3,h4),.form-panel .insurance-card :where(strong,b,h3,h4){color:var(--text-primary)!important}.main-panel:not(.dashboard-panel) .doctor-card :where(span,small,p,div),.form-panel .doctor-card :where(span,small,p,div),.main-panel:not(.dashboard-panel) .insurance-card :where(span,small,p,div),.form-panel .insurance-card :where(span,small,p,div){color:var(--text-secondary)!important;opacity:1!important}.main-panel:not(.dashboard-panel) :where(input,select,textarea,option),.form-panel :where(input,select,textarea,option),.dashboard-panel :where(input,select,textarea,option),.appointment-modal :where(input,select,textarea,option),.quick-appointment-modal :where(input,select,textarea,option),.ai-modal :where(input,select,textarea,option),.dashboard-detail-modal :where(input,select,textarea,option),.waiting-room-alert :where(input,select,textarea,option),.notification-panel :where(input,select,textarea,option),.sidebar :where(input,select,textarea,option){background:var(--input-background)!important;color:var(--input-text)!important;border-color:var(--border-color)!important;opacity:1!important}.main-panel:not(.dashboard-panel) :where(),.form-panel :where(),.dashboard-panel :where(),.appointment-modal :where(),.quick-appointment-modal :where(),.ai-modal :where(),.dashboard-detail-modal :where(),.waiting-room-alert :where(),.notification-panel :where(),.sidebar :where(){color:var(--input-placeholder)!important;opacity:1!important}.primary-button,.main-panel:not(.dashboard-panel) .primary-button,.form-panel .primary-button,.dashboard-panel .primary-button{background:var(--button-primary)!important;color:var(--button-text)!important;border-color:var(--button-primary)!important}.primary-button:hover,.main-panel:not(.dashboard-panel) .primary-button:hover,.form-panel .primary-button:hover,.dashboard-panel .primary-button:hover{background:var(--button-primary-hover)!important;border-color:var(--button-primary-hover)!important}.ghost-button,.main-panel:not(.dashboard-panel) .ghost-button,.form-panel .ghost-button,.dashboard-panel .ghost-button{color:var(--button-primary)!important;border-color:var(--border-color)!important;background:#fff!important}.topbar .ghost-button,.topbar .menu-toggle,.topbar .notification-button,.topbar .database-badge,.dashboard-header .ghost-button{color:var(--button-primary)!important;background:#ffffffeb!important;border-color:#ffffff57!important}.danger-button{color:#7b1f32!important;background:#f3bec7!important;border-color:#f0aeb9!important}.status-pill,.billing-badge,.database-badge,.form-alert,.license-code-box,.calendar-free-slot,.calendar-notify-button,.calendar-absence{color:var(--text-primary)!important;opacity:1!important}.status-pendiente{background:var(--warning-background)!important;color:var(--warning-text)!important}.status-confirmado,.status-atendido,.status-paciente-presente{background:var(--success-background)!important;color:var(--success-text)!important}.status-ausente,.status-cancelado,.status-pill.inactive{background:var(--danger-background)!important;color:var(--danger-text)!important}.status-en-sala-de-espera,.status-reprogramado{color:#174f78!important;background:#eaf4ff!important}.report-table-header,.dashboard-detail-table .report-table-header{background:var(--card-background-soft)!important;color:var(--text-primary)!important;border-color:var(--border-color-soft)!important}.calendar-month-day,.calendar-week-day,.calendar-slot,.agenda-day-lane,.agenda-time-axis{color:var(--text-primary)!important;border-color:var(--border-color-soft)!important;background:#fffffffa!important}.calendar-day-heading,.calendar-month-date,.calendar-slot time,.agenda-day-header :where(strong,span),.calendar-title-row :where(strong,span){color:var(--text-primary)!important;opacity:1!important}.calendar-muted,.calendar-more,.agenda-empty-day{color:var(--text-secondary)!important;opacity:1!important}.calendar-appointment,.calendar-appointment :where(strong,span,small),.agenda-event-block,.agenda-event-block :where(strong,span,small,b,em){color:var(--appointment-text,var(--text-primary))!important;opacity:1!important}.calendar-view-switch button,.quick-status-grid button{color:var(--button-primary)!important;border-color:var(--border-color)!important;background:#fff!important}.calendar-view-switch button.active,.quick-status-grid button.active{background:var(--button-primary)!important;color:var(--button-text)!important;border-color:var(--button-primary)!important}.legend-dot,.status-pill,.billing-badge,.database-badge,.calendar-appointment,.quick-status-grid button,.report-row .status-pill,.report-table-row .status-pill,.inventory-card .status-pill,.notification-panel .status-pill{text-decoration:none;box-shadow:none!important;opacity:1!important;border:1px solid #0000!important}.legend-dot{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;min-height:28px;padding:6px 10px;font-weight:900;line-height:1.1;display:inline-flex}.legend-dot:before{border-radius:999px;width:8px;height:8px;opacity:1!important;background:currentColor!important}.status-pendiente,.legend-dot.status-pendiente,.quick-status-grid button.status-pendiente,.calendar-appointment.status-pendiente,.agenda-event-block.status-pendiente{background:var(--status-pending-bg)!important;color:var(--status-pending-text)!important;border-color:#f3d675!important}.status-confirmado,.legend-dot.status-confirmado,.quick-status-grid button.status-confirmado,.calendar-appointment.status-confirmado,.agenda-event-block.status-confirmado{background:var(--status-confirmed-bg)!important;color:var(--status-confirmed-text)!important;border-color:#9ee7b4!important}.status-en-sala-de-espera,.legend-dot.status-en-sala-de-espera,.quick-status-grid button.status-en-sala-de-espera,.calendar-appointment.status-en-sala-de-espera,.agenda-event-block.status-en-sala-de-espera{background:var(--status-waiting-bg)!important;color:var(--status-waiting-text)!important;border-color:#95d9f5!important}.status-paciente-presente,.legend-dot.status-paciente-presente,.quick-status-grid button.status-paciente-presente,.calendar-appointment.status-paciente-presente,.agenda-event-block.status-paciente-presente{background:var(--status-present-bg)!important;color:var(--status-present-text)!important;border-color:#cdb7ff!important}.status-atendido,.legend-dot.status-atendido,.quick-status-grid button.status-atendido,.calendar-appointment.status-atendido,.agenda-event-block.status-atendido,.status-pill.active{background:var(--status-attended-bg)!important;color:var(--status-attended-text)!important;border-color:var(--status-attended-bg)!important}.status-cancelado,.legend-dot.status-cancelado,.quick-status-grid button.status-cancelado,.calendar-appointment.status-cancelado,.agenda-event-block.status-cancelado{background:var(--status-cancelled-bg)!important;color:var(--status-cancelled-text)!important;border-color:#f6a7b3!important;text-decoration:none!important}.status-ausente,.legend-dot.status-ausente,.quick-status-grid button.status-ausente,.calendar-appointment.status-ausente,.agenda-event-block.status-ausente,.status-pill.inactive{background:var(--status-absent-bg)!important;color:var(--status-absent-text)!important;border-color:#fdba74!important}.status-reprogramado,.legend-dot.status-reprogramado,.quick-status-grid button.status-reprogramado,.calendar-appointment.status-reprogramado,.agenda-event-block.status-reprogramado{background:var(--status-rescheduled-bg)!important;color:var(--status-rescheduled-text)!important;border-color:#cbd5e1!important}.quick-status-grid button.active{transform:translateY(-1px);outline:3px solid var(--focus-ring)!important}.quick-status-grid button.active.status-atendido,.quick-status-grid button.active.status-confirmado{background:var(--button-primary)!important;color:var(--button-text)!important;border-color:var(--button-primary)!important}.quick-status-grid button.active.status-pendiente,.quick-status-grid button.active.status-cancelado,.quick-status-grid button.active.status-ausente,.quick-status-grid button.active.status-reprogramado,.quick-status-grid button.active.status-en-sala-de-espera,.quick-status-grid button.active.status-paciente-presente{box-shadow:inset 0 0 0 2px!important}.billing-badge{color:#0f5f59!important;background:#edf7f5!important;border-color:#b8deda!important}.billing-badge.account{color:#075985!important;background:#e0f2fe!important;border-color:#93c5fd!important}.database-badge{color:#334155!important;background:#f8fafc!important;border-color:#cbd5e1!important}.database-badge.connected{color:#14532d!important;background:#dcfce7!important;border-color:#86efac!important}.environment-badge{letter-spacing:0;text-transform:uppercase;background:#083344;border:1px solid #67e8f9;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 12px 24px #020a182e;color:#ecfeff!important}.form-alert{background:var(--warning-background)!important;color:var(--warning-text)!important;border-color:#f3d675!important}.financial-status-alert,.main-panel:not(.dashboard-panel) .financial-status-alert,.form-panel .financial-status-alert{color:#5f3b00!important;letter-spacing:0!important;opacity:1!important;background:#fff7d6!important;border:1px solid #e0b94f!important;font-weight:900!important;box-shadow:inset 4px 0 #d99a00,0 8px 18px #5f3b0014!important}.financial-status-alert :where(span,strong,small,b,em){color:inherit!important;opacity:1!important}.ai-modal-error,.error-text{background:var(--danger-background)!important;color:var(--danger-text)!important;border-color:#f6a7b3!important}.calendar-appointment :where(strong,span,small,b,em),.agenda-event-block :where(strong,span,small,b,em),.quick-status-grid button :where(strong,span,small,b,em),.legend-dot :where(strong,span,small,b,em),.status-pill :where(strong,span,small,b,em),.billing-badge :where(strong,span,small,b,em),.database-badge :where(strong,span,small,b,em){color:inherit!important;opacity:1!important}.next-box,.mini-appointment,.cancelled-row{background:var(--card-background)!important;color:var(--text-primary)!important;border-color:var(--border-color-soft)!important;opacity:1!important}.next-box :where(h2,h3,h4,p,span,small,strong,b,em,time),.mini-appointment :where(h2,h3,h4,p,span,small,strong,b,em,time),.cancelled-row :where(h2,h3,h4,p,span,small,strong,b,em,time){color:var(--text-primary)!important;opacity:1!important}.next-box :where(p,span,small),.mini-appointment :where(p,span,small),.cancelled-row :where(p,span,small){color:var(--text-secondary)!important}.main-panel:not(.dashboard-panel)>.calendar-title-row :where(h2,h3,strong,span,div),.form-panel>.calendar-title-row :where(h2,h3,strong,span,div),.dashboard-header :where(.eyebrow,h1,h2,h3,p,span,small,strong){color:var(--text-on-dark)!important;opacity:1!important}.dashboard-header .dashboard-hero-meta{background:#ffffff1f!important;border-color:#ffffff47!important}.main-panel:not(.dashboard-panel) .calendar-title-row :where(h2,h3,strong,span,div),.form-panel .calendar-title-row :where(h2,h3,strong,span,div){color:var(--text-on-dark)!important;opacity:1!important}.dashboard-kpi-card :where(span,small,strong){opacity:1!important}.dashboard-panel .dashboard-kpi-card{color:#fff!important;background:radial-gradient(circle at 100% 0,#3aafa933,#0000 38%),linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%)!important;border-color:#ffffff24!important}.dashboard-kpi-card span{color:#f1fbfce6!important}.dashboard-kpi-card strong{color:#fff!important}.dashboard-kpi-card small{color:#dbeafee0!important}.dashboard-preview-grid>span{color:#fff!important;background:linear-gradient(135deg,#071527 0%,#0b2742 58%,#0f3b55 100%)!important;border-left-color:#22d3ee!important}.dashboard-preview-grid>span :where(span,small,strong),.dashboard-preview-grid>span{opacity:1!important}.dashboard-config-modal{scrollbar-gutter:stable;max-height:min(86vh,820px);overflow-y:auto}.dashboard-config-modal .panel-title-row{z-index:5;background:#fff;border-bottom:1px solid #d7e6e6;margin:-20px -20px 12px;padding:20px;position:sticky;top:0}section.dashboard-card.dashboard-ai-card{min-height:190px;color:#f8fdff!important;background:linear-gradient(105deg,#040e1ff5 0%,#051f32e6 42%,#064e5ca3 100%),url(/images/dashboard-ai-background.png) 100%/cover no-repeat,#071527!important;border-color:#67e8f957!important;position:relative!important;overflow:hidden!important;box-shadow:0 18px 48px #030a183d!important}section.dashboard-card.dashboard-ai-card:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 76% 44%,#22d3ee2e,#0000 28%),linear-gradient(#0206171a,#02061738);position:absolute;inset:0}.dashboard-ai-card :where(.dashboard-card-title,.dashboard-ai-model-row,.dashboard-ai-form,.form-alert){z-index:1;position:relative}.dashboard-ai-card .dashboard-card-title h3,.dashboard-ai-card .dashboard-card-title p,.dashboard-ai-card .dashboard-ai-model-row label,.dashboard-ai-card :where(h1,h2,h3,h4,p,span,small,strong,b,em,label){text-shadow:0 1px 2px #0000006b;color:#f8fdff!important;opacity:1!important}.dashboard-ai-card .dashboard-card-title p{color:#e2f6ffeb!important}.dashboard-ai-card .database-badge{box-shadow:0 10px 24px #030a182e;color:#0f3b55!important;text-shadow:none!important;background:#f1f5f9eb!important;border-color:#e2f6ffbf!important}.dashboard-ai-card .database-badge.connected{color:#14532d!important;background:#dcfce7!important;border-color:#86efac!important}.dashboard-ai-card :where(input,select){color:#08263d!important;text-shadow:none!important;background:#fffffff2!important;border-color:#bae6fdcc!important;box-shadow:0 12px 28px #030a1829!important}.dashboard-ai-card :where(){color:#5f6f7a!important;opacity:1!important}.dashboard-ai-card option{color:#08263d!important;background:#fff!important}.dashboard-ai-card .ghost-button{color:#0f5f59!important;text-shadow:none!important;background:#ffffffeb!important;border-color:#bae6fde0!important;box-shadow:0 12px 28px #030a1829!important}.dashboard-ai-card .primary-button{color:#fff!important;background:linear-gradient(135deg,#0f766e,#14b8a6)!important;border-color:#99f6e485!important;box-shadow:0 14px 30px #0f766e59!important}.dashboard-ai-card .form-alert{color:#5f3b00!important;text-shadow:none!important;background:#fff7d6f0!important;border-color:#e0b94f!important}.help-context-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#08263d,#0f766e);border:1px solid #99f6e470;border-radius:12px;width:42px;height:42px;font-size:20px;font-weight:900;box-shadow:0 10px 28px #030a1829}.floating-help-button{z-index:1200;color:#fff;letter-spacing:.01em;cursor:pointer;background:linear-gradient(135deg,#08263d,#0f3b55 55%,#0f766e);border:1px solid #bae6fdb3;border-radius:999px;align-items:center;gap:10px;min-width:128px;height:58px;padding:8px 16px 8px 8px;font-weight:900;transition:transform .2s,box-shadow .2s;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 42px #030a1847}.floating-help-button:hover,.floating-help-button.active{transform:translateY(-3px);box-shadow:0 24px 54px #030a1857}.floating-help-button img{object-fit:cover;background:#fff;border-radius:50%;width:42px;height:42px}.floating-help-button span{color:#fff}.help-assistant-panel{z-index:1199;color:#08263d;background:linear-gradient(#f8fdfff7,#eef8f7f7),#fff;border:1px solid #7dd3fc6b;border-radius:22px;flex-direction:column;width:min(430px,100vw - 32px);max-height:min(760px,100vh - 122px);animation:.2s modal-pop;display:flex;position:fixed;bottom:94px;right:24px;overflow:hidden;box-shadow:0 26px 70px #030a1852}.help-assistant-panel.minimized{max-height:86px}.help-assistant-header{color:#fff;background:radial-gradient(circle at 18% 16%,#22d3ee42,#0000 28%),linear-gradient(135deg,#071527 0%,#08263d 56%,#0f766e 100%);grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;display:grid}.help-assistant-header>img{object-fit:cover;background:#fff;border:2px solid #ffffffb8;border-radius:16px;width:54px;height:54px}.help-assistant-header span,.help-assistant-header h2,.help-assistant-header small{color:#fff;opacity:1}.help-assistant-header span{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900}.help-assistant-header h2{margin:3px 0;font-size:20px}.help-assistant-header small{color:#e2f6ffe6}.help-assistant-actions{gap:6px;display:inline-flex}.help-assistant-form,.help-assistant-suggestions,.help-assistant-history{padding:14px 16px}.help-assistant-form{border-bottom:1px solid #d7e6e6;grid-template-columns:minmax(0,1fr) 118px;gap:10px;display:grid}.help-assistant-form textarea{resize:vertical;color:#08263d;background:#fff;border-radius:14px;min-height:72px}.help-assistant-form textarea::placeholder{color:#64748b;opacity:1}.help-assistant-suggestions{background:#e8f7fb8c;border-bottom:1px solid #d7e6e6;flex-wrap:wrap;gap:8px;display:flex}.help-assistant-suggestions strong{color:#08263d;width:100%;font-size:12px}.help-assistant-suggestions button{color:#0f5f59;cursor:pointer;background:#fff;border:1px solid #0d948838;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}.help-assistant-history{gap:12px;display:grid;overflow:auto}.help-assistant-history .panel-title-row{margin:0}.help-assistant-message{background:#fff;border:1px solid #d7e6e6;border-radius:16px;gap:10px;padding:13px;display:grid;box-shadow:0 8px 24px #030a180f}.help-question-link{color:#08263d;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:900}.help-answer-text{color:#102a28;background:#f8fdff;border-radius:12px;max-height:230px;padding:11px;line-height:1.55;overflow:auto}.help-answer-text p{color:#102a28;margin:0 0 7px}.help-assistant-note{color:#755900;background:#fff7d6;border:1px solid #f1d889;border-radius:10px;padding:8px 10px;font-weight:800}.help-assistant-image{object-fit:contain;background:#fff;border:1px solid #d7e6e6;border-radius:14px;width:100%;max-height:220px}.help-video-link{text-align:center}@media (width>=1101px){.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=721px) and (width<=1100px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.dashboard-kpi-grid,.dashboard-custom-grid,.dashboard-config-layout,.dashboard-preview-grid,.dashboard-config-widget-row{grid-template-columns:1fr}.dashboard-kpi-card{min-height:132px}.dashboard-config-actions{display:grid}.floating-help-button{width:58px;min-width:58px;padding:8px;bottom:14px;right:14px}.floating-help-button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.help-assistant-panel{width:calc(100vw - 24px);max-height:calc(100vh - 98px);bottom:82px;right:12px}.help-assistant-form{grid-template-columns:1fr}.help-assistant-header{grid-template-columns:46px minmax(0,1fr) auto}.help-assistant-header>img{width:44px;height:44px}.attachments-pilot-controls,.attachment-pilot-card{grid-template-columns:1fr}.attachment-actions{justify-content:stretch}.attachment-actions button{width:100%}}
