@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Outfit:wght@300;400;500;600;700&display=swap");

/* Clara workspace — graphite editorial: a quiet, high-contrast operating surface */
:root {
  --clara-bg: #0a0a0a;
  --clara-panel: #141414;
  --clara-raised: #1a1a1a;
  --clara-field: #111111;
  --clara-line: #2a2a2a;
  --clara-soft-line: #202020;
  --clara-text: #dedede;
  --clara-muted: #8d8d8d;
  --clara-faint: #969e99;
  --clara-green: #00f890;
  --clara-green-ink: #052515;
  --clara-red: #ff6464;
  --clara-lime: #b4f25d;
  --clara-amber: #ffc25a;
  --ink: var(--clara-text);
  --muted: var(--clara-muted);
  --canvas: var(--clara-bg);
  --surface: var(--clara-panel);
  --line: var(--clara-line);
  --brand: var(--clara-green);
  --brand-dark: #101d17;
  --lime: var(--clara-green);
  --amber: var(--clara-amber);
  --st-contactar: #ffb75c;
  --st-contactado: #50a8ff;
  --st-seguimiento: #b486ff;
  --st-visita: #58d9d2;
  --st-negociacion: var(--clara-lime);
  --st-operacion: var(--clara-green);
  --st-nointeres: var(--clara-red);
  --shadow: 0 18px 48px rgba(0,0,0,.35);
}

body, button, input, select, textarea { font-family: "Outfit", sans-serif !important; }
body { background: var(--clara-bg) !important; color: var(--clara-text) !important; font-weight: 400; }
body::selection { background: rgba(0,248,144,.28); color: var(--clara-text); }
button, a, input, select, textarea { transition: color .16s ease, background-color .16s ease, border-color .16s ease, transform .16s ease; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--clara-green) !important; outline-offset: 2px;
}
::-webkit-scrollbar { width: 9px; height: 9px; }
::-webkit-scrollbar-track { background: var(--clara-bg); }
::-webkit-scrollbar-thumb { background: #3b3b3b; border: 2px solid var(--clara-bg); border-radius: 10px; }

/* Workspace shell */
.dashboard-header { background: #101010 !important; border-right: 1px solid var(--clara-line) !important; box-shadow: none !important; }
.logo { filter: brightness(0) invert(1); opacity: .9; }
.clara-avatar { border-color: var(--clara-line) !important; }
.workspace-nav-item, .header-action-btn, .logout-btn { color: var(--clara-muted) !important; font-weight: 500 !important; border-radius: 8px !important; }
.workspace-nav-item i { color: var(--clara-faint) !important; }
.workspace-nav-item:hover, .header-action-btn:hover, .logout-btn:hover { background: #1d1d1d !important; color: var(--clara-text) !important; }
.workspace-nav-item.is-active { background: rgba(0,248,144,.11) !important; color: var(--clara-green) !important; }
.workspace-nav-item.is-active i { color: var(--clara-green) !important; }
.header-actions, .user-info { border-color: var(--clara-line) !important; }
.user-welcome { color: var(--clara-muted) !important; }

.unified-filters-section { background: var(--clara-bg) !important; box-shadow: 0 1px 0 var(--clara-line) !important; }
.workspace-heading h1 { color: var(--clara-text) !important; font-family: "Outfit", sans-serif !important; font-weight: 400; letter-spacing: -.045em !important; }
.workspace-heading p { color: var(--clara-muted) !important; }
.workspace-heading .eyebrow { color: var(--clara-green) !important; }
.workspace-new-lead, .btn-primary, .btn-save-tarea, .tareas-add-btn {
  border-color: var(--clara-green) !important; background: var(--clara-green) !important; color: var(--clara-green-ink) !important; font-weight: 700 !important;
}
.workspace-new-lead:hover, .btn-primary:hover, .btn-save-tarea:hover, .tareas-add-btn:hover { background: #5dffb5 !important; border-color: #5dffb5 !important; }
.filter-item label, .tarea-form-label { color: var(--clara-muted) !important; }
.filter-item .filter-input, .filter-input, .table-select, .detail-editable-input, .detail-editable-select,
.regla-textarea, textarea, .chat-input, .message-input-group textarea {
  border-color: var(--clara-line) !important; background: var(--clara-field) !important; color: var(--clara-text) !important; box-shadow: none !important;
}
.filter-item .filter-input::placeholder, input::placeholder, textarea::placeholder { color: var(--clara-faint) !important; }
.tokko-pending-quick, .more-filters-btn, .asignacion-regla-btn, .btn-secondary, .btn-cancel-tarea {
  border-color: var(--clara-line) !important; background: var(--clara-raised) !important; color: var(--clara-text) !important;
}
.tokko-pending-quick.active { background: rgba(255,194,90,.11) !important; border-color: var(--clara-amber) !important; color: var(--clara-amber) !important; }

/* Funnel and inbox */
.metric-card { background: var(--clara-panel) !important; border-color: var(--clara-line) !important; box-shadow: none !important; }
.metric-card.total { border-left-color: var(--clara-green) !important; }.metric-card.contactar { border-left-color: var(--clara-amber) !important; }
.metric-card.contactado { border-left-color: #50a8ff !important; }.metric-card.seguimiento { border-left-color: #b486ff !important; }
.metric-card.visita { border-left-color: #58d9d2 !important; }.metric-card.negociacion { border-left-color: var(--clara-lime) !important; }
.metric-card.operacion { border-left-color: var(--clara-green) !important; }.metric-card.descalificado { border-left-color: var(--clara-red) !important; }
.metric-card h3, .metric-change { color: var(--clara-muted) !important; }.metric-value { color: var(--clara-text) !important; font-family: "DM Mono", monospace !important; }
.table-section { background: var(--clara-panel) !important; border-color: var(--clara-line) !important; box-shadow: var(--shadow) !important; }
.table-header { border-color: var(--clara-line) !important; background: #121212; }.table-header h3 { color: var(--clara-text) !important; }.table-header h3 i { color: var(--clara-green) !important; }
.table-header-right > #totalRows { color: var(--clara-muted) !important; }
.view-toggle { border-color: var(--clara-line) !important; background: #0e0e0e; }.view-toggle-btn { color: var(--clara-muted) !important; background: transparent !important; }.view-toggle-btn.active { background: var(--clara-raised) !important; color: var(--clara-green) !important; }
.conversaciones-table th { background: #181818 !important; color: var(--clara-muted) !important; border-color: var(--clara-line) !important; }
.conversaciones-table th:hover { background: #202020 !important; }.conversaciones-table td { color: var(--clara-text) !important; border-color: var(--clara-soft-line) !important; }
.conversaciones-table tbody tr, .conversaciones-table tbody tr:nth-child(even) { background: #141414 !important; }
.conversaciones-table tbody tr:hover, .conversaciones-table tbody tr.detail-row-active { background: #1b211e !important; box-shadow: inset 3px 0 var(--clara-green) !important; }
.inbox-contact-name, .inbox-interest strong, .inbox-grouped .budget-cell strong { color: var(--clara-text) !important; }
.inbox-phone, .inbox-interest span, .inbox-source, .date-display { color: var(--clara-muted) !important; }
.inbox-readable-select { background: #171717 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.inbox-readable-select:focus-within { outline-color: var(--clara-green) !important; }
.table-pagination { background: #111 !important; border-color: var(--clara-line) !important; color: var(--clara-muted) !important; }

/* Kanban */
.kanban-container { background: #0d0d0d !important; }.kanban-column { background: var(--clara-panel) !important; border-color: var(--clara-line) !important; border-radius: 10px !important; }
.kanban-column-header { border-color: var(--clara-line) !important; background: #181818 !important; color: var(--clara-text) !important; }
.kanban-count { background: #282828 !important; color: var(--clara-muted) !important; }.kanban-card { background: #1a1a1a !important; border-color: #303030 !important; box-shadow: none !important; }
.kanban-card:hover { border-color: #505050 !important; transform: translateY(-2px) !important; }.kanban-card-header strong, .kanban-card-details { color: var(--clara-text) !important; }
.kanban-card-phone, .kanban-date, .kanban-card-agent { color: var(--clara-muted) !important; }.kanban-tag { background: #252525 !important; color: var(--clara-text) !important; }

/* All operational dialogs */
.modal { background: rgba(0,0,0,.74) !important; backdrop-filter: blur(4px); }
.modal-content { background: var(--clara-panel) !important; border-color: #353535 !important; color: var(--clara-text) !important; box-shadow: 0 28px 72px rgba(0,0,0,.62) !important; }
.modal-header { background: #171717 !important; border-bottom: 1px solid var(--clara-line) !important; color: var(--clara-text) !important; }
.modal-header h4, .modal-header h3 { color: var(--clara-text) !important; }.modal-header i { color: var(--clara-green) !important; }.close, .details-panel-collapse { color: var(--clara-muted) !important; }
.modal-body, .modal-footer { background: var(--clara-panel) !important; color: var(--clara-text) !important; border-color: var(--clara-line) !important; }
.details-section, .tarea-form-card, .regla-card, .agent-card { background: #181818 !important; border-color: var(--clara-line) !important; }
.details-section h5 { color: var(--clara-green) !important; }.detail-item strong, .detail-item label, .nlm-label, #detailsURLHint { color: var(--clara-muted) !important; }
.detail-item span, .detail-item div { color: var(--clara-text); }.details-tabs { background: var(--clara-panel) !important; border-color: var(--clara-line) !important; }
.details-tabs button { color: var(--clara-muted) !important; }.details-tabs button:hover { background: #242424 !important; color: var(--clara-text) !important; }.details-tabs button.is-active { background: rgba(0,248,144,.12) !important; color: var(--clara-green) !important; }
#notesHistory, .chat-messages-container, .messages-container, .historial-tareas-body { background: #101010 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.detail-url-display > a, .btn-link { color: var(--clara-green) !important; }
.ficha-search-results, .autocomplete-results { background: #1b1b1b !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.ficha-search-result, .autocomplete-item { border-color: var(--clara-line) !important; }.ficha-search-result:hover, .autocomplete-item:hover { background: #282828 !important; }
.chat-message-user { background: rgba(0,248,144,.12) !important; color: var(--clara-text) !important; }.chat-message-bot, .chat-message-agent { background: #252525 !important; color: var(--clara-text) !important; }
.chat-message-time, .chat-message-sender { color: var(--clara-muted) !important; }.chat-send-btn, .btn-send { background: var(--clara-green) !important; color: var(--clara-green-ink) !important; }

/* Visits/calendar and tasks */
.visitas-calendar-modal, #visitasCalendar { background: var(--clara-panel) !important; color: var(--clara-text) !important; }
.fc { --fc-page-bg-color: #151515; --fc-neutral-bg-color: #1c1c1c; --fc-border-color: #303030; --fc-list-event-hover-bg-color: #252525; --fc-today-bg-color: rgba(0,248,144,.08); --fc-button-bg-color: #202020; --fc-button-border-color: #363636; --fc-button-hover-bg-color: #303030; --fc-button-active-bg-color: #173323; --fc-event-bg-color: #167b54; --fc-event-border-color: #167b54; --fc-event-text-color: #f1fff8; color: var(--clara-text); }
#visitasCalendar .fc-toolbar-title { color: var(--clara-text) !important; }.tarea-item, .task-item { background: #1a1a1a !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.tarea-item.completed, .task-item.completed { opacity: .58; }.tarea-priority-alta { color: var(--clara-red) !important; }.tarea-priority-media { color: var(--clara-amber) !important; }.tarea-priority-baja { color: var(--clara-green) !important; }

/* Analytics and ROI inherit the same operating environment */
.analytics-page, .roi-page { min-height: 100dvh; background: var(--clara-bg) !important; color: var(--clara-text) !important; }
.analytics-header, .roi-header { background: #111 !important; border-bottom: 1px solid var(--clara-line); }.analytics-header .back-btn, .roi-header .back-btn { background: #1d1d1d !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.analytics-main, .roi-main { color: var(--clara-text) !important; }.analytics-filters .filter-bar, .roi-filters, .analytics-chart-box, .roi-chart-box, .roi-table-section, .inversiones-section { background: var(--clara-panel) !important; border: 1px solid var(--clara-line) !important; box-shadow: none !important; }
.analytics-chart-box h3, .roi-chart-box h3, .roi-table-section h3 { color: var(--clara-text) !important; }.analytics-chart-box h3 i, .roi-chart-box h3 i, .roi-table-section h3 i { color: var(--clara-green) !important; }
.chart-insights .insight-pill { background: #191919 !important; border-color: var(--clara-line) !important; }.chart-insights .insight-label { color: var(--clara-muted) !important; }.chart-insights .insight-value { color: var(--clara-text) !important; }
.roi-table, .roi-table th, .roi-table td { color: var(--clara-text) !important; border-color: var(--clara-line) !important; }.roi-table th { background: #1b1b1b !important; color: var(--clara-muted) !important; }.roi-table tr:nth-child(even) { background: #171717 !important; }

/* Authentication */
.login-page, .login-container-wrapper, body:has(.login-container) { background: var(--clara-bg) !important; }
.login-container { background: var(--clara-panel) !important; border: 1px solid var(--clara-line); box-shadow: var(--shadow) !important; }
.login-header { background: #141414 !important; border-bottom: 1px solid var(--clara-line); }.login-header h1, .login-header p, .form-group label { color: var(--clara-text) !important; }
.form-input { background: var(--clara-field) !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }.input-icon > i { color: var(--clara-faint) !important; }
.password-toggle { color: var(--clara-muted) !important; }.login-btn { background: var(--clara-green) !important; color: var(--clara-green-ink) !important; }.footer { color: var(--clara-muted) !important; }.footer a { color: var(--clara-green) !important; }
.sso-modal { background: rgba(0,0,0,.74) !important; }.sso-modal-content { background: var(--clara-panel) !important; color: var(--clara-text) !important; border: 1px solid var(--clara-line); }

@media (max-width: 768px) {
  .dashboard-header, .workspace-nav.is-open { background: #101010 !important; border-color: var(--clara-line) !important; }
  .unified-filters-section { background: var(--clara-bg) !important; }
}

/* Exact class names used by the existing task, agent and batch interfaces. */
.tareas-modal-body, .historial-tareas-body { background: var(--clara-panel) !important; }
.tarea-form-title, .tareas-section-label, .tarea-card, .tarea-content, .tarea-title, .tarea-meta, .tarea-empty, .tareas-empty { color: var(--clara-text) !important; }
.tarea-card, .agent-form, .agent-item { background: #191919 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; box-shadow: none !important; }
.tarea-card.completada { background: #141414 !important; }
.tarea-checkbox { border-color: var(--clara-faint) !important; }
.tarea-form-card input[type="text"], .tarea-form-card textarea, .tarea-form-card input[type="date"], .tarea-form-card select, .agent-input {
  background: var(--clara-field) !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important;
}
.agent-name, .agent-contact, .agent-phone, .agent-email { color: var(--clara-text) !important; }
.bulk-action-bar { background: #171717 !important; border-color: var(--clara-line) !important; box-shadow: var(--shadow) !important; color: var(--clara-text) !important; }
.bulk-select, .bulk-btn { background: #222 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.bulk-btn-estado { color: var(--clara-amber) !important; }.bulk-btn-agente { color: var(--clara-green) !important; }.bulk-btn-delete { color: var(--clara-red) !important; }

/* Semantic pipeline colors remain consistently legible in table and kanban. */
.estado-contactar { background: rgba(255,194,90,.14) !important; color: var(--clara-amber) !important; border-color: rgba(255,194,90,.34) !important; }
.estado-contactado { background: rgba(80,168,255,.13) !important; color: #78bdff !important; border-color: rgba(80,168,255,.3) !important; }
.estado-en-seguimiento { background: rgba(180,134,255,.14) !important; color: #c6a5ff !important; border-color: rgba(180,134,255,.3) !important; }
.estado-visita-agendada { background: rgba(88,217,210,.13) !important; color: #72e5df !important; border-color: rgba(88,217,210,.32) !important; }
.estado-negociacion { background: rgba(180,242,93,.13) !important; color: var(--clara-lime) !important; border-color: rgba(180,242,93,.32) !important; }
.estado-operacion-concretada { background: rgba(0,248,144,.13) !important; color: var(--clara-green) !important; border-color: rgba(0,248,144,.32) !important; }
.estado-no-interesado { background: rgba(255,100,100,.14) !important; color: var(--clara-red) !important; border-color: rgba(255,100,100,.32) !important; }
.origin-badge { background: #242424 !important; border-color: #363636 !important; color: var(--clara-muted) !important; }
.origin-badge.origin-email { background: #152d3c !important; border-color: #427c9e !important; color: #a5dcff !important; }
.origin-badge.origin-clara-email { background: linear-gradient(90deg, #153128 0 50%, #152d3c 50%) !important; border-color: #558e8d !important; color: #c3f0e0 !important; }

/* The ROI template uses a different header class than Analytics. */
.roi-page-header { background: #111 !important; border-bottom: 1px solid var(--clara-line); }
.roi-page-header .back-btn { background: #1d1d1d !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.roi-filters .filter-bar, .roi-inv-section { background: var(--clara-panel) !important; border: 1px solid var(--clara-line) !important; box-shadow: none !important; }

/* Exact dynamically-rendered controls: preserve each current selected state. */
.table-pagination .pg-btn { background: #202020 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.table-pagination .pg-btn:hover:not(:disabled) { background: #2c2c2c !important; border-color: #4c4c4c !important; }
.table-pagination .pg-btn.active, .table-pagination .pg-btn.active:disabled { background: rgba(0,248,144,.14) !important; border-color: var(--clara-green) !important; color: var(--clara-green) !important; }
.table-pagination .pg-btn:disabled { background: #151515 !important; color: #585858 !important; }
.table-pagination .pg-label { color: var(--clara-muted) !important; }
.intent-select.intent-high, .intent-badge.intent-high { background: rgba(0,248,144,.14) !important; color: var(--clara-green) !important; border-color: rgba(0,248,144,.3) !important; }
.intent-select.intent-mid, .intent-badge.intent-mid { background: rgba(255,194,90,.14) !important; color: var(--clara-amber) !important; border-color: rgba(255,194,90,.3) !important; }
.intent-select.intent-low, .intent-badge.intent-low { background: rgba(255,100,100,.13) !important; color: var(--clara-red) !important; border-color: rgba(255,100,100,.28) !important; }
.intent-select.intent-na, .intent-badge.intent-na { background: #222 !important; color: var(--clara-muted) !important; border-color: var(--clara-line) !important; }

/* CRM, source and safe URL editor content within the existing detail drawer. */
.tokko-info-grid > div, .tokko-raw-details, .tokko-derived-history, .ficha-seleccionada, .nlm-locked-field {
  background: #191919 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important;
}
.tokko-info-grid strong, .tokko-info-grid span, .tokko-raw-details pre, .tokko-derived-history, .ficha-seleccionada strong, .ficha-seleccionada small { color: var(--clara-text) !important; }
.tokko-raw-details summary, .tokko-notification-status.ok, .tokko-derived-history .ok, .tokko-agent-hint { color: var(--clara-green) !important; }
.tokko-notification-status.error, .tokko-derived-history .error, .tokko-agent-hint.missing-phone, .tokko-manage-error { color: var(--clara-red) !important; }
.tokko-url-warning { background: rgba(255,194,90,.1) !important; border-color: rgba(255,194,90,.34) !important; color: var(--clara-amber) !important; }
.tokko-manage-error { background: rgba(255,100,100,.1) !important; border-color: rgba(255,100,100,.3) !important; }
.ficha-result-item, .tokko-ficha-result { background: #1b1b1b !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.ficha-result-item:hover, .tokko-ficha-result:hover { background: #292929 !important; }
.ficha-detail, .tokko-form-hint, .tokko-no-property { color: var(--clara-muted) !important; }

/* Existing conversation and complete-chat bubble class names. */
.conversation-body, .chat-modal-body { background: var(--clara-panel) !important; }
.prospecto-info, .conversation-controls, .conversation-messages, .send-message-section { background: #171717 !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.prospecto-summary span, .message-sender, .message-content { color: var(--clara-text) !important; }.message-time { color: var(--clara-muted) !important; }
.mode-select { background: var(--clara-field) !important; border-color: var(--clara-line) !important; color: var(--clara-text) !important; }
.message-user { background: rgba(80,168,255,.12) !important; border-left-color: #50a8ff !important; }
.message-bot { background: rgba(0,248,144,.1) !important; border-left-color: var(--clara-green) !important; }
.message-agent { background: rgba(255,194,90,.1) !important; border-left-color: var(--clara-amber) !important; }
.chat-message { color: var(--clara-text) !important; }.chat-message-user { background: rgba(80,168,255,.14) !important; }.chat-message-bot { background: #242424 !important; }.chat-message-agent { background: rgba(255,194,90,.13) !important; }
.details-chat-messages { background: #101010 !important; border-color: var(--clara-line) !important; }.details-chat-message.incoming { background: #242424 !important; }.details-chat-message.outgoing { background: rgba(0,248,144,.13) !important; }.details-chat-message small { color: var(--clara-muted) !important; }

/* Calendar / Flatpickr remain dark and retain current-day and chosen-day cues. */
.flatpickr-calendar { background: #1a1a1a !important; border-color: #3a3a3a !important; box-shadow: var(--shadow) !important; }
.flatpickr-months .flatpickr-month, .flatpickr-weekdays, span.flatpickr-weekday, .flatpickr-current-month input.cur-year, .flatpickr-current-month .flatpickr-monthDropdown-months { color: var(--clara-text) !important; background: #1a1a1a !important; }
.flatpickr-day { color: var(--clara-text) !important; }.flatpickr-day:hover { background: #2a2a2a !important; border-color: #2a2a2a !important; }
.flatpickr-day.today { border-color: var(--clara-green) !important; }.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange { background: var(--clara-green) !important; border-color: var(--clara-green) !important; color: var(--clara-green-ink) !important; }
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay { color: #616161 !important; }

/* Assignment rule cards have their own light surfaces in the legacy stylesheet. */
.regla-section {
  background: #1b1b1b !important; border-color: #353b37 !important;
}
.regla-label { color: #75dca6 !important; }
.regla-hint, .regla-meta-text { color: #aeb8b1 !important; }
.regla-hint i { color: #75dca6 !important; opacity: 1; }
.regla-textarea::placeholder { color: #9da8a1 !important; opacity: 1; }
.regla-textarea.regla-observaciones.tiene-observacion {
  color: #ffd18a !important; background: #33291c !important; border-color: #bd8b41 !important;
}

/* Contrast completion pass — dynamically populated detail drawer content */
.details-section,
.detail-item span,
.details-section .preferencias-busqueda-list,
.details-section .detalles-lead-text,
.details-section .notes-display,
.details-section .notes-history-container,
.details-section .current-notes,
.details-section .note-history-item {
  background: #181818 !important;
  border-color: var(--clara-line) !important;
  color: var(--clara-text) !important;
}
.detail-item span.editable-field:hover { background: #222 !important; border-color: #4a8067 !important; }
.detail-item span.editable-field::after { filter: grayscale(1) brightness(2); }
.detalles-lead-text {
  border-left-color: var(--clara-green) !important;
  line-height: 1.6;
}
.details-section .detail-item label,
.details-section .detail-item strong,
.details-section .detail-item small,
.details-section .preferencias-busqueda-list > *,
.details-section .notes-display *,
.details-section .note-history-item * { color: var(--clara-text) !important; }
.details-section .detail-item strong,
.details-section .detail-item label,
.details-section .detail-item small,
.details-section .note-date,
.details-section .text-muted { color: var(--clara-muted) !important; }
.email-edit-input,
.add-note-section textarea,
.modal-body input:not([type="checkbox"]):not([type="radio"]),
.modal-body select,
.modal-body textarea {
  background: var(--clara-field) !important;
  border-color: var(--clara-line) !important;
  color: var(--clara-text) !important;
}
.modal-body select option,
.detail-editable-select option,
.table-select option,
.filter-input option,
.inbox-readable-select option,
.mode-select option {
  background: #1b1b1b;
  color: var(--clara-text);
}
.modal-body input[readonly],
.modal-body input:disabled,
.modal-body select:disabled,
.modal-body textarea:disabled,
.nlm-locked-field {
  background: #202020 !important;
  border-color: #303030 !important;
  color: #aaa !important;
  -webkit-text-fill-color: #aaa;
  opacity: 1 !important;
}
.modal-body input:disabled::placeholder,
.modal-body textarea:disabled::placeholder { color: #737373 !important; }
.note-history-item { border-left-color: var(--clara-green) !important; }
.note-content, .notes-info p, #notesHistory h5 { color: var(--clara-text) !important; }
.notes-info { background: rgba(0,248,144,.08) !important; border-color: rgba(0,248,144,.32) !important; }
.dudas-grid-container .no-dudas-text,
.dudas-table td,
.historial-fecha,
.historial-usuario,
.historial-nota,
.chat-loading,
.chat-empty { color: var(--clara-muted) !important; }
.dudas-table th { background: #263a31 !important; color: var(--clara-text) !important; }
.dudas-table td { border-color: var(--clara-line) !important; }
.dudas-table tbody tr:nth-child(even) { background: #1a1a1a !important; }
.dudas-table tbody tr:hover,
.dudas-table tbody tr:nth-child(even):hover { background: #222 !important; }

/* Detail activity, chat, task and assignment modal surfaces */
.chat-input-container,
.chat-input-wrapper,
.add-agent-section,
.agents-list,
.regla-modal-body,
.regla-form,
.visita-detail-grid,
.visitas-calendar-actions {
  background: #171717 !important;
  border-color: var(--clara-line) !important;
  color: var(--clara-text) !important;
}
.chat-loading i, .chat-empty i { color: var(--clara-faint) !important; }
.chat-send-btn:disabled,
.btn-send:disabled,
.btn-primary:disabled,
.btn-save-tarea:disabled {
  background: #303030 !important;
  border-color: #303030 !important;
  color: #777 !important;
  cursor: not-allowed;
  opacity: 1 !important;
}
.historial-item { border-color: var(--clara-line) !important; }
.historial-cambio { color: var(--clara-green) !important; }
.historial-nota { border-left-color: #444 !important; }
.tarea-descripcion,
.tarea-due-chip,
.tarea-prioridad-chip,
.historial-tarea-item,
.historial-tarea-info,
.regla-form label,
.regla-card label,
.agent-form label { color: var(--clara-muted) !important; }
.tarea-action-btn,
.delete-agent-btn,
.inv-item .inv-delete,
.details-nav-btn {
  background: #202020 !important;
  border-color: var(--clara-line) !important;
  color: var(--clara-text) !important;
}
.delete-agent-btn, .inv-item .inv-delete { color: var(--clara-red) !important; }
.tarea-action-btn:hover, .details-nav-btn:hover { background: #2b2b2b !important; }

/* Analytics, ROI and login retain readable secondary data and controls */
.analytics-filters .filter-item label,
.roi-filters .filter-item label,
.roi-inv-section h3,
.roi-inv-form label,
.analytics-main .text-muted,
.roi-main .text-muted { color: var(--clara-muted) !important; }
.analytics-filters .filter-input,
.roi-filters .filter-input,
.roi-inv-form .filter-input {
  background: var(--clara-field) !important;
  border-color: var(--clara-line) !important;
  color: var(--clara-text) !important;
}
.roi-inv-section h3, .roi-chart-box h3,
.roi-table-section h3, .inv-item .inv-name { color: var(--clara-text) !important; }
.inv-item { background: #1a1a1a !important; border: 1px solid var(--clara-line); }
.inv-item .inv-delete:hover { background: rgba(255,100,100,.12) !important; }
.roi-table tr:hover td { background: #202020 !important; }
.roi-table .conv-rate { color: var(--clara-green) !important; }
.chart-insights .insight-pill i { color: var(--clara-green) !important; }
.chart-insights .insight-value small,
.chart-insights .insight-empty { color: var(--clara-muted) !important; }
.login-container input:disabled,
.login-container input[readonly] {
  background: #202020 !important;
  color: #aaa !important;
  -webkit-text-fill-color: #aaa;
  opacity: 1 !important;
}
.login-container .form-input::placeholder { color: var(--clara-faint) !important; }

/* Native date controls and FullCalendar's remaining light subcomponents */
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="datetime-local"]::-webkit-calendar-picker-indicator { filter: invert(1) brightness(.78); cursor: pointer; }
.fc .fc-col-header-cell-cushion,
.fc .fc-daygrid-day-number,
.fc .fc-list-day-text,
.fc .fc-list-day-side-text,
.fc .fc-list-event-time,
.fc .fc-list-event-title,
.fc .fc-button,
.fc-theme-standard td,
.fc-theme-standard th { color: var(--clara-text) !important; }
.fc-theme-standard .fc-scrollgrid,
.fc-theme-standard td,
.fc-theme-standard th { border-color: #303030 !important; }
.fc .fc-daygrid-day.fc-day-other { background: #111 !important; }
.fc .fc-daygrid-day.fc-day-other .fc-daygrid-day-number { color: #666 !important; }
.fc .fc-list, .fc .fc-list-table { border-color: #303030 !important; }
.fc .fc-list-day-cushion { background: #202020 !important; }
.fc .fc-list-event:hover td { background: #272727 !important; }
.fc .fc-button:disabled { background: #191919 !important; border-color: #303030 !important; color: #707070 !important; opacity: 1 !important; }
.flatpickr-calendar .flatpickr-prev-month,
.flatpickr-calendar .flatpickr-next-month { color: var(--clara-text) !important; fill: var(--clara-text) !important; }
.flatpickr-time input,
.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  background: #1a1a1a !important;
  color: var(--clara-text) !important;
  border-color: var(--clara-line) !important;
}