/* Cuidadoso LP → APP. Visual layer only: no visibility or state changes. */
:root {
  --cu-deep: #0F3D28;
  --cu-primary: #1B6B50;
  --cu-accent: #F4845F;
  --cu-bg: #FFFAF5;
  --cu-surface: #FFFFFF;
  --cu-mint: #EDF8F2;
  --cu-text: #243C30;
  --cu-muted: #52665B;
  --cu-border: #D4E6DC;
  --cu-success: #176B43;
  --cu-warning: #805000;
  --cu-danger: #B42332;
  --cu-radius-sm: 10px;
  --cu-radius: 16px;
  --cu-radius-lg: 24px;
  --cu-shadow: 0 8px 28px rgba(15, 61, 40, 0.08);
  --cu-shadow-lg: 0 16px 48px rgba(15, 61, 40, 0.12);
  /* Compatibility aliases: dynamic templates keep their original contracts. */
  --bg-deep: var(--cu-bg);
  --bg-primary: var(--cu-bg);
  --bg-secondary: var(--cu-mint);
  --bg-card: var(--cu-surface);
  --bg-card-hover: var(--cu-mint);
  --bg-input: var(--cu-surface);
  --cyan: var(--cu-primary);
  --cyan-dim: var(--cu-mint);
  --cyan-glow: rgba(27, 107, 80, 0.12);
  --blue: var(--cu-primary);
  --blue-dim: var(--cu-mint);
  --accent: var(--cu-primary);
  --accent2: var(--cu-primary);
  --white: var(--cu-text);
  --text: var(--cu-text);
  --text-muted: var(--cu-muted);
  --gray: var(--cu-muted);
  --gray-light: var(--cu-muted);
  --border: var(--cu-border);
  --border-active: var(--cu-primary);
  --green: var(--cu-success);
  --success: var(--cu-success);
  --orange: var(--cu-warning);
  --warning: var(--cu-warning);
  --red: var(--cu-danger);
  --danger: var(--cu-danger);
  --green-900: var(--cu-deep);
  --green-700: var(--cu-primary);
  --green-600: var(--cu-primary);
  --green-500: var(--cu-primary);
  --green-100: var(--cu-mint);
  --gray-500: var(--cu-muted);
  --gray-200: var(--cu-border);
  --radius: var(--cu-radius);
  --radius-sm: var(--cu-radius-sm);
  --shadow: var(--cu-shadow);
}
body.cuidadoso-app {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 17px;
  line-height: 1.6;
  color: var(--cu-text);
  background: var(--cu-bg);
  -webkit-font-smoothing: antialiased;
  color-scheme: light;
  margin: 0;
}
.cuidadoso-app *, .cuidadoso-app *::before, .cuidadoso-app *::after { box-sizing: border-box; }
.cuidadoso-app :is(h1, h2, h3, h4, .page-title, .section-title, .plan-name, .stat-value) {
  font-family: 'Outfit', 'Inter', system-ui, sans-serif;
  color: var(--cu-deep);
  line-height: 1.25;
  letter-spacing: -0.025em;
}
.cuidadoso-app :is(a, button, input, select, textarea) { -webkit-tap-highlight-color: transparent; }
.cuidadoso-app a { color: var(--cu-primary); }
.cuidadoso-app a:hover { text-decoration: underline; text-underline-offset: 4px; }
.cuidadoso-app :is(button, input, select, textarea) { font-family: inherit; }
.cuidadoso-app :is(button, .btn, .back, .back-link, .sidebar nav a, .card-icon-btn, .section-header-btn) {
  min-height: 44px;
}
.cuidadoso-app button { white-space: normal; line-height: 1.35; }
.cuidadoso-app :is(button, a, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--cu-primary);
  outline-offset: 3px;
}
.cuidadoso-app :is(input, select, textarea):not([type='checkbox']):not([type='radio']) {
  background: var(--cu-surface);
  color: var(--cu-text);
  border: 1px solid var(--cu-border);
  border-radius: var(--cu-radius-sm);
  min-height: 48px;
  font-size: 1rem;
  max-width: 100%;
}
.cuidadoso-app :is(.form-input, .form-select, .form-textarea) {
  background: var(--cu-surface);
  border-color: var(--cu-border);
  color: var(--cu-text);
}
.cuidadoso-app :is(input, textarea)::placeholder { color: var(--cu-muted); opacity: 1; }
.cuidadoso-app :is(input[type='checkbox'], input[type='radio']) {
  accent-color: var(--cu-primary);
  width: 20px;
  height: 20px;
  min-height: 20px;
  flex: 0 0 20px;
}
.cuidadoso-app :is(.form-label, .form-group label) { color: var(--cu-text); font-weight: 600; font-size: 0.94rem; }
.cuidadoso-app :is(.grid-bg, .circuit-left, .circuit-right) { background: none; }
body.cuidadoso-app::before { background: none; }
.cuidadoso-app :is(.main-grid, .header-left, .header-right, .header-info, .client-info, .client-stats, .welcome-left, .welcome-right, .stat-card, .plan-card, .modal-content) { min-width: 0; max-width: 100%; }
.cuidadoso-app :is(.main-grid, .stats-grid) > div { min-width: 0; }
.cuidadoso-app :is(.client-name, .med-name, .resp-name, .page-title, .welcome-text h2, .form-label, .plan-name) { overflow-wrap: anywhere; }
/* The heart badge and wordmark are identical on every surface. */
.cuidadoso-app .cu-brand {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  margin: 0;
  color: var(--cu-deep);
  text-decoration: none;
  vertical-align: middle;
}
.cuidadoso-app .cu-brand img { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 11px; }
.cuidadoso-app .cu-brand-name {
  font-family: 'Outfit', 'Inter', system-ui, sans-serif;
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--cu-deep);
  background: none;
  -webkit-text-fill-color: var(--cu-deep);
  letter-spacing: -0.035em;
  line-height: 1.2;
}
/* Entry flows: normal document scrolling, never a footer over a form. */
body.cu-page-auth {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100svh;
  align-items: center;
  justify-content: center;
  padding: 32px 20px;
  gap: 20px;
  background: radial-gradient(ellipse at top, var(--cu-mint), var(--cu-bg) 65%);
}
.cuidadoso-app :is(.login-card, .cu-page-auth main) { border: 1px solid var(--cu-border); }
.cu-page-auth :is(.login-card, main), .cu-page-invitation main, .cu-page-success .card {
  background: var(--cu-surface);
  color: var(--cu-text);
  border: 1px solid var(--cu-border);
  border-radius: var(--cu-radius-lg);
  box-shadow: var(--cu-shadow-lg);
  padding: 32px;
  width: min(460px, 100%);
  max-width: 100%;
}
.cu-page-auth main > .cu-brand, .cu-page-invitation main > .cu-brand, .cu-page-success .card > .cu-brand { margin-bottom: 24px; }
.cu-page-auth .brand { margin-bottom: 24px; }
.cu-page-auth .brand p { color: var(--cu-muted); margin-top: 10px; }
.cu-page-auth .tabs { border-color: var(--cu-border); }
.cu-page-auth .tabs button.active { color: var(--cu-primary); border-color: var(--cu-primary); }
.cu-page-auth .back-home {
  position: static !important;
  width: 100%;
  margin: 0;
  padding: 4px 0;
}
.cu-page-auth .back-home a { color: var(--cu-primary); opacity: 1; display: inline-flex; align-items: center; min-height: 44px; }
body.cu-page-invitation { padding: 32px 20px; min-height: 100vh; }
.cu-page-invitation main { width: min(620px, 100%); margin: 0 auto; }
.cu-page-invitation main p { margin: 16px 0; }
.cu-page-invitation :is(button, input), .cu-page-auth main :is(button, input) { width: 100%; }
body.cu-page-success { padding: 24px; }
.cu-page-success .card { width: min(540px, 100%); }
.cu-page-success .spinner { border-color: var(--cu-border); border-top-color: var(--cu-primary); }
.cu-page-success p { color: var(--cu-muted); }
.cu-page-success .error { color: var(--cu-danger); }
/* Shared surfaces, including content created by the existing scripts. */
.cuidadoso-app :is(.section, .card, .stat-card, .plan-card, .subscription-info, .email-section) {
  background: var(--cu-surface);
  color: var(--cu-text);
  border-color: var(--cu-border);
  border-radius: var(--cu-radius-lg);
  box-shadow: var(--cu-shadow);
}
.cuidadoso-app :is(.med-card, .appt-card, .resp-card, .contact-card, .client-item, .list-item, .delete-option-btn) {
  background: var(--cu-surface);
  color: var(--cu-text);
  border-color: var(--cu-border);
  border-radius: var(--cu-radius);
}
.cuidadoso-app :is(.header-stat, .header-date, .date-display, .active-clients-card, .user-menu, .stat-mini) {
  background: var(--cu-mint);
  color: var(--cu-text);
  border-color: var(--cu-border);
  border-radius: var(--cu-radius);
}
.cuidadoso-app :is(.med-name, .resp-name, .client-name, .option-title, .calendar-title, .modal-title) { color: var(--cu-deep); }
.cuidadoso-app :is(.user-role, .med-dosage, .med-days, .resp-relationship, .header-stat-label, .active-clients-label, .month-year, .stat-mini-label, .option-desc, .empty-state, .loading) { color: var(--cu-muted); }
.cuidadoso-app :is(.header-stat-value, .stat-mini-value, .active-clients-value, .header-date .day, .date-display .day) { color: var(--cu-primary); }
.cuidadoso-app :is(.header-avatar, .client-avatar, .header-stat-icon, .active-clients-icon, .section-icon) { background: var(--cu-mint); border-color: var(--cu-border); }
.cuidadoso-app :is(.user-avatar, .avatar, .resp-avatar, .contact-avatar) { background: var(--cu-primary); color: var(--cu-surface); }
.cu-page-admin > .header, .cu-page-client > .header, .cu-page-workspace .topbar {
  background: var(--cu-surface);
  border-bottom: 1px solid var(--cu-border);
  box-shadow: 0 2px 12px rgba(15, 61, 40, 0.04);
}
.cu-page-client > .header { flex-wrap: wrap; gap: 24px; padding: 24px 32px; }
.cu-page-client > .header > .cu-brand { flex-basis: 100%; }
.cu-page-admin .logo-container { flex-wrap: wrap; }
.cu-page-admin .header-title-group h1 { font-size: 1.1rem; }
.cu-page-admin .welcome-banner { background: var(--cu-mint); border-color: var(--cu-border); border-radius: var(--cu-radius-lg); }
.cu-page-admin .header-right, .cu-page-admin .welcome-right { flex-wrap: wrap; }
.cu-page-admin .main-container { padding-bottom: 110px; }
.cu-page-client .main-container { padding-bottom: 110px; }
/* Primary actions are coral with deep-green text; status is not accent. */
.cuidadoso-app :is(.btn-submit, .btn-primary, .btn-subscribe, .btn-support-float, .fab),
.cu-page-auth main button[type='submit'], .cu-page-invitation button[type='submit'] {
  background: var(--cu-accent);
  color: var(--cu-deep);
  border: 1px solid transparent;
  border-radius: var(--cu-radius);
  box-shadow: none;
  font-weight: 700;
  min-height: 48px;
}
.cuidadoso-app :is(.btn-submit, .btn-primary, .btn-subscribe, .btn-support-float, .fab):hover { background: #F79B7D; box-shadow: var(--cu-shadow); }
.cuidadoso-app button.cu-button-primary { background: var(--cu-primary) !important; color: var(--cu-surface) !important; box-shadow: none !important; border-radius: var(--cu-radius-sm); }
.cuidadoso-app button.cu-button-danger { background: var(--cu-danger) !important; color: var(--cu-surface) !important; box-shadow: none !important; }
.cuidadoso-app :is(.btn-secondary, .btn-ghost, .btn-call, .btn-action, .btn-install, .btn-senior-toggle, .card-icon-btn, .calendar-btn) {
  background: var(--cu-mint);
  color: var(--cu-primary);
  border: 1px solid var(--cu-border);
  border-radius: var(--cu-radius-sm);
}
.cuidadoso-app :is(.btn-taken, .btn-success, .btn-whatsapp) { background: var(--cu-primary); color: var(--cu-surface); border-color: var(--cu-primary); }
.cuidadoso-app .btn-later { background: #FFF3DC; color: var(--cu-warning); border-color: #E6D0A0; }
.cuidadoso-app :is(.btn-logout, .btn-danger, .btn-cancel, .card-icon-btn.delete, .modal-close) { background: #FFF1EF; color: var(--cu-danger); border-color: #EDC6C8; }
.cuidadoso-app :is(.section-header-btn, .day-chip, .med-time-badge, .badge-info) { background: var(--cu-mint); color: var(--cu-primary); border-color: var(--cu-border); }
.cuidadoso-app :is(.day-chip.active, .section-badge, .notification-badge) { background: var(--cu-primary); color: var(--cu-surface); }
.cuidadoso-app .notification-badge { background: var(--cu-danger); }
.cuidadoso-app .card-icon-btn { min-width: 44px; }
/* Plans are generated at runtime: aliases and component selectors both apply. */
.cu-page-plans .container { max-width: 640px; }
.cu-page-plans .header { padding-top: 20px; }
.cu-page-plans .plan-card.selected { background: var(--cu-mint); border-color: var(--cu-primary); box-shadow: 0 0 0 2px var(--cu-border); }
.cu-page-plans .plan-card .popular-badge { background: var(--cu-accent); color: var(--cu-deep); }
.cu-page-plans .plan-card .plan-name { color: var(--cu-deep); }
.cu-page-plans .plan-card .amount { color: var(--cu-primary); }
.cu-page-plans .info-row { gap: 16px; flex-wrap: wrap; }
/* Workspace keeps its navigation, form states and modal transitions intact. */
.cu-page-workspace #login-screen { overflow-y: auto; padding: 24px; background: var(--cu-bg); }
.cu-page-workspace .login-card { padding: 32px; background: var(--cu-surface); border-radius: var(--cu-radius-lg); box-shadow: var(--cu-shadow-lg); margin: auto; }
.cu-page-workspace .login-card .logo h1 { background: none; -webkit-text-fill-color: var(--cu-deep); }
.cu-page-workspace .topbar { height: auto; min-height: 72px; padding: 12px 24px; gap: 16px; flex-wrap: wrap; }
.cu-page-workspace .topbar .brand { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.cu-page-workspace .topbar .brand span { background: none; -webkit-text-fill-color: currentColor; }
.cu-page-workspace .topbar .brand .cu-brand-name { -webkit-text-fill-color: var(--cu-deep); }
.cu-page-workspace .sidebar { background: var(--cu-surface); }
.cu-page-workspace .sidebar nav a { color: var(--cu-muted); font-size: 0.94rem; }
.cu-page-workspace .sidebar nav a.active { background: var(--cu-mint); color: var(--cu-primary); }
.cu-page-workspace .main-content { min-width: 0; padding: 28px; }
.cu-page-workspace .page-title { font-size: 1.75rem; margin-bottom: 12px; }
.cu-page-workspace .page-subtitle, .cu-page-workspace .stat-label { font-size: 0.94rem; }
.cu-page-workspace .list-item .info .title { font-size: 1rem; }
.cu-page-workspace .list-item .info .sub { font-size: 0.9rem; }
/* Calendar, chat and long-form pages use quiet white/mint surfaces. */
.cuidadoso-app .calendar-container { background: var(--cu-surface); border-color: var(--cu-border); }
.cuidadoso-app .calendar-day { color: var(--cu-text); box-shadow: none; }
.cuidadoso-app .calendar-day.today { background: var(--cu-mint); color: var(--cu-primary); border: 1px solid var(--cu-primary); }
.cuidadoso-app .calendar-day.selected { background: var(--cu-primary); color: var(--cu-surface); box-shadow: none; }
.cuidadoso-app .calendar-btn { min-width: 44px; width: 44px; height: 44px; }
.cuidadoso-app .calendar-day.other-month { color: var(--cu-muted); background: var(--cu-surface); opacity: 1; }
.cuidadoso-app .cu-version { color: var(--cu-muted); opacity: 1; }
.cuidadoso-app :is(#chat-container, #support-chat-messages) { background: var(--cu-mint); color: var(--cu-text); border-color: var(--cu-border); }
.cuidadoso-app :is(.chat-msg.assistant, .support-msg.assistant) { background: var(--cu-surface); color: var(--cu-text); border-color: var(--cu-border); }
.cuidadoso-app :is(.chat-msg.user, .support-msg.user) { background: var(--cu-primary); color: var(--cu-surface); }
.cuidadoso-app .chat-suggestions button { color: var(--cu-primary); background: var(--cu-surface); border-color: var(--cu-border); }
.cuidadoso-app :is(.toast, .toast-success) { background: var(--cu-primary); color: var(--cu-surface); border-color: var(--cu-primary); box-shadow: var(--cu-shadow-lg); }
.cuidadoso-app :is(.toast.error, .toast-error) { background: var(--cu-danger); color: var(--cu-surface); }
/* Overlays are intentionally distinct from their dialog cards. */
.cu-page-client > .modal, .cu-page-admin > .modal, .cu-page-workspace .modal-overlay {
  background: rgba(15, 61, 40, 0.48);
  backdrop-filter: blur(4px);
}
.cu-page-workspace .modal, .cuidadoso-app .modal-content {
  background: var(--cu-surface);
  color: var(--cu-text);
  border: 1px solid var(--cu-border);
  border-radius: var(--cu-radius-lg);
  box-shadow: var(--cu-shadow-lg);
}
.cuidadoso-app .modal-close { min-width: 44px; width: 44px; height: 44px; }
body.cu-page-document {
  max-width: 880px;
  margin: 0 auto;
  padding: 36px 28px 56px;
  font-size: 17px;
  line-height: 1.75;
}
.cu-page-document > .cu-brand { margin-bottom: 28px; display: flex; }
.cu-page-document h1 { font-size: clamp(1.7rem, 4vw, 2.3rem); border-color: var(--cu-border); }
.cu-page-document :is(h2, h3) { color: var(--cu-deep); scroll-margin-top: 24px; }
.cu-page-document :is(.toc, .tip, .step) { background: var(--cu-surface); border: 1px solid var(--cu-border); border-radius: var(--cu-radius); padding: 20px 24px; }
.cu-page-document .tip { background: var(--cu-mint); }
.cu-page-document :is(p, ul, ol) { margin-top: 14px; }
.cu-page-document :is(ul, ol) { padding-left: 24px; }
.cu-page-document li { margin: 6px 0; }
.cu-page-document .cu-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid var(--cu-border); border-radius: var(--cu-radius); background: var(--cu-surface); }
.cu-page-document .cu-table-scroll table { min-width: 560px; margin: 0; }
.cu-page-document { overflow-wrap: anywhere; }
.cu-page-document footer { color: var(--cu-muted); border-color: var(--cu-border); }
.cu-page-document .back { display: inline-flex; align-items: center; color: var(--cu-primary); }
/* Override the legacy compact controls without shrinking senior mode. */
body.cu-page-client .calendar-day { min-height: 44px !important; }
body.cu-page-client:not(.modo-senior) .card-icon-btn { min-width: 44px; min-height: 44px; width: 44px; height: 44px; }
body.cu-page-client:not(.modo-senior) :is(.btn-taken, .btn-later) { min-height: 44px; }
.cuidadoso-app .day-chip { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
/* Respect the existing senior mode: no global size reset or visibility rule. */
.cuidadoso-app.modo-senior :is(.form-input, .form-select, .form-textarea) { font-size: 1.2rem; min-height: 56px; }
@media (max-width: 900px) {
  .cu-page-admin .header, .cu-page-admin .welcome-banner { flex-direction: column; align-items: flex-start; gap: 20px; }
  .cu-page-admin .main-container, .cu-page-client .main-container { padding: 24px 20px 110px; }
  .cu-page-client > .header { padding: 20px; }
}
@media (max-width: 600px) {
  body.cu-page-auth { padding: 20px 12px; justify-content: flex-start; }
  .cu-page-auth :is(.login-card, main), .cu-page-invitation main, .cu-page-success .card { padding: 24px 20px; }
  .cu-page-auth .login-card { margin-top: 12px; }
  .cu-page-workspace #login-screen { padding: 16px 12px; align-items: flex-start; }
  .cu-page-workspace .login-card { padding: 24px 20px; max-width: 100%; }
  .cu-page-workspace .topbar { padding: 16px; }
  .cu-page-workspace .topbar .user-info { flex-wrap: wrap; }
  .cu-page-workspace .main-content { padding: 20px 16px; }
  .cu-page-workspace .stats-grid { grid-template-columns: minmax(0, 1fr); }
  .cu-page-workspace .modal, .cuidadoso-app .modal-content { padding: 24px 20px; max-width: calc(100vw - 24px); }
  .cu-page-client .section, .cu-page-admin .section { padding: 20px 16px; }
  .cu-page-admin .header { padding: 20px 16px; }
  .cu-page-admin .logo-container { gap: 12px; }
  .cu-page-admin .welcome-banner { padding: 24px 20px; }
  .cu-page-admin .client-item { grid-template-columns: auto minmax(0, 1fr); gap: 12px; }
  .cu-page-admin .client-stats { grid-column: 1 / -1; }
  .cu-page-client .section-header-btn { gap: 8px; flex-wrap: wrap; }
  .cu-page-client .calendar-container, .cu-page-admin .calendar-container { padding: 12px 4px; }
  .cuidadoso-app .calendar-grid { gap: 3px; }
  .cuidadoso-app .calendar-header { gap: 8px; flex-wrap: wrap; }
  .cuidadoso-app .calendar-title { font-size: 1rem; white-space: normal; }
  .cuidadoso-app .calendar-nav { gap: 4px; }
  .cu-page-plans .plan-card .plan-header { flex-wrap: wrap; gap: 12px; }
  .cu-page-plans .plan-card .popular-badge { position: static; display: inline-flex; margin-bottom: 12px; }
  .cuidadoso-app .btn-support-float { bottom: 16px; right: 16px; padding: 12px 20px; }
  body.cu-page-document { padding: 24px 20px 48px; }
  .cu-page-document :is(.toc, .tip, .step) { padding: 16px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .cuidadoso-app *, .cuidadoso-app *::before, .cuidadoso-app *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

/* Frozen runtime templates emit legacy inline colors. Override only those
   exact declarations; no universal color rule and no visibility changes. */
body.cuidadoso-app [style*="color: #475569" i],
body.cuidadoso-app [style*="color: #64748b" i],
body.cuidadoso-app [style*="color: #666" i],
body.cuidadoso-app [style*="color: #8A9BB5" i],
body.cuidadoso-app [style*="color: #94a3b8" i],
body.cuidadoso-app [style*="color: #fca5a5" i],
body.cuidadoso-app [style*="color:#475569" i],
body.cuidadoso-app [style*="color:#64748b" i],
body.cuidadoso-app [style*="color:#666" i],
body.cuidadoso-app [style*="color:#8A9BB5" i],
body.cuidadoso-app [style*="color:#94a3b8" i],
body.cuidadoso-app [style*="color:#fca5a5" i] { color: var(--cu-muted) !important; }
body.cuidadoso-app [style*="color: #333" i],
body.cuidadoso-app [style*="color: #C5D0E0" i],
body.cuidadoso-app [style*="color: #FFF" i],
body.cuidadoso-app [style*="color: #cbd5e1" i],
body.cuidadoso-app [style*="color: #e2e8f0" i],
body.cuidadoso-app [style*="color: #fff" i],
body.cuidadoso-app [style*="color: white" i],
body.cuidadoso-app [style*="color:#333" i],
body.cuidadoso-app [style*="color:#C5D0E0" i],
body.cuidadoso-app [style*="color:#FFF" i],
body.cuidadoso-app [style*="color:#cbd5e1" i],
body.cuidadoso-app [style*="color:#e2e8f0" i],
body.cuidadoso-app [style*="color:#fff" i],
body.cuidadoso-app [style*="color:white" i] { color: var(--cu-text) !important; }
body.cuidadoso-app [style*="color: #f59e0b" i],
body.cuidadoso-app [style*="color:#f59e0b" i] { color: var(--cu-warning) !important; }
body.cuidadoso-app [style*="color: #00D4FF" i],
body.cuidadoso-app [style*="color: #10b981" i],
body.cuidadoso-app [style*="color: #25d366" i],
body.cuidadoso-app [style*="color: #3b82f6" i],
body.cuidadoso-app [style*="color:#00D4FF" i],
body.cuidadoso-app [style*="color:#10b981" i],
body.cuidadoso-app [style*="color:#25d366" i],
body.cuidadoso-app [style*="color:#3b82f6" i] { color: var(--cu-primary) !important; }
body.cuidadoso-app [style*="color: #EF4444" i],
body.cuidadoso-app [style*="color: #ef4444" i],
body.cuidadoso-app [style*="color: #ff6b6b" i],
body.cuidadoso-app [style*="color:#EF4444" i],
body.cuidadoso-app [style*="color:#ef4444" i],
body.cuidadoso-app [style*="color:#ff6b6b" i] { color: var(--cu-danger) !important; }
body.cuidadoso-app [style*="border: 1px dashed rgba(148,163,184,0.5)" i],
body.cuidadoso-app [style*="border: 1px solid #334155" i],
body.cuidadoso-app [style*="border: 1px solid #e2e8f0" i],
body.cuidadoso-app [style*="border: 1px solid rgba(0,0,0,0.1)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(0,212,255,0.3)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(0,212,255,0.4)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(0,212,255,0.5)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(148,163,184,0.2)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(148,163,184,0.3)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(16, 185, 129, 0.4)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(239, 68, 68, 0.7)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(239,68,68,0.5)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(255,255,255,0.1)" i],
body.cuidadoso-app [style*="border: 1px solid rgba(255,255,255,0.15)" i],
body.cuidadoso-app [style*="border: 2px solid #ddd" i],
body.cuidadoso-app [style*="border: 2px solid #ef4444" i],
body.cuidadoso-app [style*="border: 2px solid #f59e0b" i],
body.cuidadoso-app [style*="border: 4px solid #00D4FF" i],
body.cuidadoso-app [style*="border: 4px solid #10b981" i],
body.cuidadoso-app [style*="border: rgba(16,185,129,0.2)" i],
body.cuidadoso-app [style*="border: rgba(245,158,11,0.2)" i],
body.cuidadoso-app [style*="border: rgba(255,82,82,0.3)" i],
body.cuidadoso-app [style*="border:1px dashed rgba(148,163,184,0.5)" i],
body.cuidadoso-app [style*="border:1px solid #334155" i],
body.cuidadoso-app [style*="border:1px solid #e2e8f0" i],
body.cuidadoso-app [style*="border:1px solid rgba(0,0,0,0.1)" i],
body.cuidadoso-app [style*="border:1px solid rgba(0,212,255,0.3)" i],
body.cuidadoso-app [style*="border:1px solid rgba(0,212,255,0.4)" i],
body.cuidadoso-app [style*="border:1px solid rgba(0,212,255,0.5)" i],
body.cuidadoso-app [style*="border:1px solid rgba(148,163,184,0.2)" i],
body.cuidadoso-app [style*="border:1px solid rgba(148,163,184,0.3)" i],
body.cuidadoso-app [style*="border:1px solid rgba(16, 185, 129, 0.4)" i],
body.cuidadoso-app [style*="border:1px solid rgba(239, 68, 68, 0.7)" i],
body.cuidadoso-app [style*="border:1px solid rgba(239,68,68,0.5)" i],
body.cuidadoso-app [style*="border:1px solid rgba(255,255,255,0.1)" i],
body.cuidadoso-app [style*="border:1px solid rgba(255,255,255,0.15)" i],
body.cuidadoso-app [style*="border:2px solid #ddd" i],
body.cuidadoso-app [style*="border:2px solid #ef4444" i],
body.cuidadoso-app [style*="border:2px solid #f59e0b" i],
body.cuidadoso-app [style*="border:4px solid #00D4FF" i],
body.cuidadoso-app [style*="border:4px solid #10b981" i],
body.cuidadoso-app [style*="border:rgba(16,185,129,0.2)" i],
body.cuidadoso-app [style*="border:rgba(245,158,11,0.2)" i],
body.cuidadoso-app [style*="border:rgba(255,82,82,0.3)" i] { border-color: var(--cu-border) !important; }
body.cuidadoso-app [style*="background: #00D4FF22" i],
body.cuidadoso-app [style*="background: #10b981" i],
body.cuidadoso-app [style*="background: #3b82f6" i],
body.cuidadoso-app [style*="background: #8b5cf6" i],
body.cuidadoso-app [style*="background: linear-gradient(135deg, #0052FF, #00D4FF)" i],
body.cuidadoso-app [style*="background: linear-gradient(135deg, #10b981, #059669)" i],
body.cuidadoso-app [style*="background: linear-gradient(135deg, #ef4444, #dc2626)" i],
body.cuidadoso-app [style*="background: rgba(0, 212, 255, 0.15)" i],
body.cuidadoso-app [style*="background: rgba(0,200,83,0.15)" i],
body.cuidadoso-app [style*="background: rgba(0,212,255,0.15)" i],
body.cuidadoso-app [style*="background: rgba(148,163,184,0.1)" i],
body.cuidadoso-app [style*="background: rgba(16, 185, 129, 0.15)" i],
body.cuidadoso-app [style*="background: rgba(239, 68, 68, 0.15)" i],
body.cuidadoso-app [style*="background: rgba(239,68,68,0.15)" i],
body.cuidadoso-app [style*="background: rgba(239,68,68,0.2)" i],
body.cuidadoso-app [style*="background: rgba(255, 255, 255, 0.05)" i],
body.cuidadoso-app [style*="background: rgba(255,255,255,0.05)" i],
body.cuidadoso-app [style*="background:#00D4FF22" i],
body.cuidadoso-app [style*="background:#10b981" i],
body.cuidadoso-app [style*="background:#3b82f6" i],
body.cuidadoso-app [style*="background:#8b5cf6" i],
body.cuidadoso-app [style*="background:linear-gradient(135deg, #0052FF, #00D4FF)" i],
body.cuidadoso-app [style*="background:linear-gradient(135deg, #10b981, #059669)" i],
body.cuidadoso-app [style*="background:linear-gradient(135deg, #ef4444, #dc2626)" i],
body.cuidadoso-app [style*="background:rgba(0, 212, 255, 0.15)" i],
body.cuidadoso-app [style*="background:rgba(0,200,83,0.15)" i],
body.cuidadoso-app [style*="background:rgba(0,212,255,0.15)" i],
body.cuidadoso-app [style*="background:rgba(148,163,184,0.1)" i],
body.cuidadoso-app [style*="background:rgba(16, 185, 129, 0.15)" i],
body.cuidadoso-app [style*="background:rgba(239, 68, 68, 0.15)" i],
body.cuidadoso-app [style*="background:rgba(239,68,68,0.15)" i],
body.cuidadoso-app [style*="background:rgba(239,68,68,0.2)" i],
body.cuidadoso-app [style*="background:rgba(255, 255, 255, 0.05)" i],
body.cuidadoso-app [style*="background:rgba(255,255,255,0.05)" i] { background: var(--cu-mint) !important; }
body.cuidadoso-app [style*="background: #0b1220" i],
body.cuidadoso-app [style*="background: #0f172a" i],
body.cuidadoso-app [style*="background: #1e293b" i],
body.cuidadoso-app [style*="background: #334155" i],
body.cuidadoso-app [style*="background: #9ca3af" i],
body.cuidadoso-app [style*="background: #FFFFFF" i],
body.cuidadoso-app [style*="background: #f3f4f6" i],
body.cuidadoso-app [style*="background: #f8fafc" i],
body.cuidadoso-app [style*="background: white" i],
body.cuidadoso-app [style*="background:#0b1220" i],
body.cuidadoso-app [style*="background:#0f172a" i],
body.cuidadoso-app [style*="background:#1e293b" i],
body.cuidadoso-app [style*="background:#334155" i],
body.cuidadoso-app [style*="background:#9ca3af" i],
body.cuidadoso-app [style*="background:#FFFFFF" i],
body.cuidadoso-app [style*="background:#f3f4f6" i],
body.cuidadoso-app [style*="background:#f8fafc" i],
body.cuidadoso-app [style*="background:white" i] { background: var(--cu-surface) !important; }
body.cuidadoso-app [style*="background: #f59e0b" i],
body.cuidadoso-app [style*="background:#f59e0b" i] { background: #FFF3DC !important; }
body.cuidadoso-app [style*="background: #ef4444" i],
body.cuidadoso-app [style*="background: #ff6b6b" i],
body.cuidadoso-app [style*="background:#ef4444" i],
body.cuidadoso-app [style*="background:#ff6b6b" i] { background: #FFF1EF !important; }

/* Colored runtime actions and messages remain accessible on their surfaces. */
body.cuidadoso-app button:is([style*="background:#10b981" i], [style*="background: #10b981" i], [style*="background:#3b82f6" i], [style*="background: #3b82f6" i], [style*="background:linear-gradient" i], [style*="background: linear-gradient" i]) { background: var(--cu-primary) !important; color: var(--cu-surface) !important; }
body.cuidadoso-app button:is([style*="background:#ef4444" i], [style*="background: #ef4444" i], [style*="background:#ff6b6b" i]) { background: var(--cu-danger) !important; color: var(--cu-surface) !important; }
body.cuidadoso-app :is(.toast, .toast-success, .chat-msg.user, .support-msg.user)[style] { background: var(--cu-primary) !important; color: var(--cu-surface) !important; }
body.cuidadoso-app :is(.toast.error, .toast-error)[style] { background: var(--cu-danger) !important; color: var(--cu-surface) !important; }
body.cuidadoso-app :is(.chat-msg.assistant, .support-msg.assistant)[style] { background: var(--cu-surface) !important; color: var(--cu-text) !important; }
body.cuidadoso-app :is(#trial-badge, #upgrade-badge)[style] { background: var(--cu-mint) !important; color: var(--cu-primary) !important; }
body.cuidadoso-app .section-badge[style] { background: var(--cu-mint) !important; color: var(--cu-primary) !important; }
