/* Shared dark navy / cyan theme for the patient and clinic workspaces. */
body.reference-theme {
  --ink: #eaf5ff; --teal: #06c3dc; --cyan: #55e6f4; --muted: #9bacc5;
  --line: rgba(143, 184, 226, .16); --paper: #10213e; --shadow: 0 20px 60px rgba(0, 0, 0, .22);
  color: #edf6ff; background: radial-gradient(ellipse at 86% 4%, rgba(0, 177, 220, .14), transparent 31%), linear-gradient(135deg, #07142d, #0b1c37 58%, #0d2441); color-scheme: dark;
}
body.reference-theme .demo-header, body.reference-theme .portal-header { color: #eff7ff; background: rgba(7, 17, 39, .94); border-color: rgba(133, 181, 227, .12); }
body.reference-theme .demo-badge { color: #73e3ed; background: rgba(16, 195, 220, .1); border-color: rgba(85, 230, 244, .25); }
body.reference-theme .demo-languages, body.reference-theme .portal-languages { background: #132442; }
body.reference-theme .demo-languages button, body.reference-theme .portal-languages button { color: #aabbd2; }
body.reference-theme .demo-languages button.is-active, body.reference-theme .portal-languages button.is-active { color: #07142d; background: #55e6f4; }
body.reference-theme .back-link { color: #87dce8; }
body.reference-theme .eyebrow, body.reference-theme .intro-kicker { color: #55e6f4; }
body.reference-theme .eyebrow i, body.reference-theme .intro-kicker i, body.reference-theme .secure-label i { background: #19cee4; box-shadow: 0 0 0 5px rgba(25, 206, 228, .13); }
body.reference-theme .home-heading p, body.reference-theme .app-hero p, body.reference-theme .portal-intro p { color: #aab9cf; }
body.reference-theme .home-heading h1 em, body.reference-theme .portal-intro h1 em { color: #55e6f4; }
body.reference-theme .role-card, body.reference-theme .panel, body.reference-theme .portal-card, body.reference-theme .dentist-chip, body.reference-theme .stat-card, body.reference-theme .summary-card { color: #edf6ff; background: #10213e; border-color: rgba(136, 182, 226, .15); box-shadow: 0 16px 42px rgba(0, 0, 0, .17); }
body.reference-theme .dentist-card, body.reference-theme .stat-highlight, body.reference-theme .summary-balance { color: #f5fbff; background: linear-gradient(145deg, #103753, #0a2948); border-color: rgba(64, 213, 236, .22); }
body.reference-theme .patient-card { background: linear-gradient(145deg, #122744, #10213e); }
body.reference-theme .role-card h2, body.reference-theme .panel-title h2, body.reference-theme .panel-title h3, body.reference-theme .workspace-top h2, body.reference-theme .record-heading h3, body.reference-theme .card-heading h2, body.reference-theme .dashboard-top h2, body.reference-theme .data-card h3, body.reference-theme .data-card > h3 { color: #f1f7ff; }
body.reference-theme .role-eyebrow, body.reference-theme .card-eyebrow, body.reference-theme .secure-label { color: #62dce8; }
body.reference-theme .role-card p, body.reference-theme .patient-card p, body.reference-theme .muted-line, body.reference-theme .dentist-chip small, body.reference-theme .stat-card > span, body.reference-theme .stat-card > small, body.reference-theme .summary-card span, body.reference-theme .data-item small, body.reference-theme .data-item p, body.reference-theme .demo-notice, body.reference-theme .register-heading p, body.reference-theme .form-hint, body.reference-theme .login-help, body.reference-theme .portal-footer { color: #9bacc5; }
body.reference-theme .stat-card strong, body.reference-theme .summary-card strong { color: #eaf5ff; }
body.reference-theme .stat-highlight strong, body.reference-theme .stat-highlight > span, body.reference-theme .stat-highlight > small, body.reference-theme .summary-balance strong, body.reference-theme .summary-balance span { color: #f5fbff; }
body.reference-theme .role-icon, body.reference-theme .lock-icon, body.reference-theme .lock-mark, body.reference-theme .patient-mark, body.reference-theme .dentist-avatar { color: #6fe6ef; background: rgba(18, 196, 220, .13); }
body.reference-theme .patient-card .role-icon, body.reference-theme .small-action, body.reference-theme .portal-status[data-tone="info"] { color: #75e6ef; background: rgba(18, 196, 220, .12); }
body.reference-theme .primary-button, body.reference-theme .button-primary { color: #06152d; background: #06c3dc; }
body.reference-theme .primary-button:hover, body.reference-theme .button-primary:hover { color: #06152d; background: #75eff7; }
body.reference-theme .quiet-button, body.reference-theme .button-outline { color: #d8e6f5; background: #132744; border-color: rgba(160, 197, 231, .24); }
body.reference-theme .quiet-button:hover, body.reference-theme .button-outline:hover { background: #1a3453; }
body.reference-theme .demo-login label, body.reference-theme .search-label, body.reference-theme .register-form label, body.reference-theme .portal-card form label { color: #c1d0e3; }
body.reference-theme input, body.reference-theme select, body.reference-theme textarea, body.reference-theme .register-form input { color: #f1f7ff; background: #0a1933; border-color: rgba(144, 188, 229, .21); }
body.reference-theme input::placeholder, body.reference-theme textarea::placeholder { color: #8298b5; }
body.reference-theme select option { color: #f1f7ff; background: #0a1933; }
body.reference-theme input:focus, body.reference-theme select:focus, body.reference-theme textarea:focus { border-color: #55e6f4; box-shadow: 0 0 0 3px rgba(85, 230, 244, .14); }
body.reference-theme .demo-credentials, body.reference-theme .empty-state, body.reference-theme .patient-summary > div, body.reference-theme .record-tabs, body.reference-theme .login-tabs, body.reference-theme .portal-status[data-tone="info"] { color: #a8bad1; background: #0b1a34; border-color: rgba(143, 184, 226, .14); }
body.reference-theme .demo-credentials strong, body.reference-theme .small-action, body.reference-theme .data-item .money, body.reference-theme .payment-row > b { color: #62dce8; }
body.reference-theme .record-tabs button, body.reference-theme .login-tabs button { color: #9bacc5; }
body.reference-theme .record-tabs button.is-active, body.reference-theme .login-tabs button[aria-selected="true"] { color: #f3f8ff; background: #1a3453; box-shadow: none; }
body.reference-theme .patient-option, body.reference-theme .record-item, body.reference-theme .data-item, body.reference-theme .week-day, body.reference-theme .appointment-card { color: #eaf5ff; background: #0d1d38; border-color: rgba(136, 182, 226, .14); }
body.reference-theme .patient-option:hover, body.reference-theme .patient-option.is-active, body.reference-theme .week-day:hover, body.reference-theme .week-day.is-selected { color: #f1fbff; background: #153651; border-color: rgba(85, 230, 244, .42); }
body.reference-theme .patient-initial, body.reference-theme .payment-icon, body.reference-theme .plan-pill, body.reference-theme .appointment-count { color: #6fe6ef; background: rgba(18, 196, 220, .13); }
body.reference-theme .progress-track { background: #1a2d4b; }
body.reference-theme .progress-track span { background: linear-gradient(90deg, #06c3dc, #68e5ee); }
body.reference-theme .timeline-dot { background: #39cfdf; box-shadow: 0 0 0 4px rgba(57, 207, 223, .15); }
body.reference-theme .timeline p, body.reference-theme .timeline small, body.reference-theme .progress-foot, body.reference-theme .plan-facts small { color: #9bacc5; }
body.reference-theme .plan-facts, body.reference-theme .quick-entry, body.reference-theme .register-form, body.reference-theme .staff-form, body.reference-theme .staff-lists { border-color: rgba(143, 184, 226, .16); }
body.reference-theme .plan-facts strong, body.reference-theme .plan-facts small { color: #d5e4f4; }
body.reference-theme .appointment-status.is-pending { color: #ffd68c; background: rgba(176, 111, 28, .2); box-shadow: inset 0 0 0 1px rgba(255, 190, 83, .2); }
body.reference-theme .appointment-card .appointment-contact { color: #a9eaf1; }
body.reference-theme .clinic-menu-toggle { background: rgba(13, 29, 56, .96); border-color: rgba(133, 181, 227, .18); box-shadow: 0 7px 22px rgba(0, 0, 0, .24); }
body.reference-theme .clinic-menu-toggle span { background: #e8f8ff; }
body.reference-theme .clinic-demo-nav { background: #10213e; border-color: rgba(133, 181, 227, .16); box-shadow: 0 18px 50px rgba(0, 0, 0, .28); }
body.reference-theme .clinic-demo-nav a { color: #d8e5f5; }
body.reference-theme .clinic-demo-nav a:hover { background: #1a3453; }
body.reference-theme .demo-warning { color: #f2d99e; background: rgba(87, 64, 24, .34); border-color: rgba(229, 190, 94, .24); }
body.reference-theme .demo-warning p { color: inherit; }
body.reference-theme .portal-status[data-tone="success"] { color: #9aefc9; background: rgba(20, 91, 65, .32); }
body.reference-theme .portal-status[data-tone="error"] { color: #ffd4ce; background: rgba(117, 37, 42, .3); }
body.reference-theme .form-status { color: #ffb6ae; }
body.reference-theme :focus-visible { outline-color: rgba(85, 230, 244, .7); }
@media (max-width: 680px) { body.reference-theme .demo-header, body.reference-theme .portal-header { background: rgba(7, 17, 39, .97); } body.reference-theme .clinic-demo-nav { background: #10213e; } }
