:root,
[data-theme="light"] {
  --bg: #faf6eb;
  --panel: #ffffff;
  --surface: #f7f2e8;
  --surface-input: #fffdf8;
  --ink: #1f1608;
  --muted: #6b5a3e;
  --line: #e8dcc4;
  --accent: #c9930a;
  --accent-dark: #9a7208;
  --accent-soft: rgba(201, 147, 10, 0.14);
  --blue: var(--accent);
  --blue-dark: var(--accent-dark);
  --green: #0f8a66;
  --amber: #b7791f;
  --rose: #c2415d;
  --shadow: 0 16px 45px rgba(84, 58, 8, 0.1);
  --sidebar-bg: #171008;
  --sidebar-panel: #24180d;
  --sidebar-line: #4a3820;
  --ghost-bg: #f3ead8;
  --ghost-ink: #3f2f14;
  --badge-bg: #ecfdf5;
  --message-bg: #eef4ff;
  --message-user-bg: #e8f7f1;
  --chip-bg: #eef3ff;
  --chip-ink: #1f3b8a;
  --chip-analyzed-bg: rgba(59, 130, 246, 0.15);
  --chip-analyzed-ink: #1d4ed8;
  --chip-tailored-bg: rgba(34, 197, 94, 0.15);
  --chip-tailored-ink: #15803d;
  --chip-warn-bg: #fff4e5;
  --chip-warn-ink: #8a4b00;
  --empty-surface: #fafbfd;
  --preview-surface: #f8fbff;
  --agent-highlight-border: #cfe0ff;
  --agent-highlight-border-alt: #bfd0ff;
  --score-strip-bg: #f8fbff;
  --chip-keyword-bg: #eaf2ff;
  --chip-keyword-ink: #1d4fbf;
  --highlight-add-bg: #fef3c7;
  --highlight-add-ink: #92400e;
  --editor-ink: #1f2937;
  --notes-color: #334155;
  --status-save-bg: rgba(34, 197, 94, 0.14);
  --status-save-ink: #15803d;
  --status-pending-bg: rgba(59, 130, 246, 0.12);
  --status-pending-ink: #1d4ed8;
  --scrollbar-track: #eef1f6;
  --scrollbar-thumb: #b8c4d9;
  --scrollbar-thumb-hover: #98a8c4;
  --card-hover-border: #9db7ff;
  --selected-template-bg: #f3f8ff;
  --format-card-bg: #f8fbff;
  --delete-zone-bg: rgba(251, 191, 36, 0.28);
  --delete-zone-ink: #92400e;
  --delete-zone-active-bg: rgba(254, 202, 202, 0.72);
  --delete-zone-active-ink: #991b1b;
  --workspace-logo-opacity: 0.16;
  --workspace-logo-filter: saturate(1.05) brightness(0.92);
  --nav-group-border: rgba(255, 255, 255, 0.14);
  --nav-group-bg: rgba(255, 255, 255, 0.04);
  --agent-group-border: #e8dcc4;
  --agent-group-bg: rgba(255, 255, 255, 0.42);
  --agent-copilot-border: rgba(201, 147, 10, 0.35);
  --agent-copilot-bg: rgba(201, 147, 10, 0.08);
  --metric-ring-track: #e8dcc4;
  --metric-ring-progress: #c9930a;
  --metric-ring-progress-alt: #2457d6;
  --metric-ring-value: #5c3b00;
  --percent-ring-active: #3b82f6;
  --percent-ring-inactive: #e2e8f0;
  --percent-ring-label: #2563eb;
  --metric-icon-border: #e8dcc4;
  --metric-icon-bg: #fffdf8;
  --metric-icon-ink: #5c3b00;
  --metric-icon-applications: #15803d;
  --metric-icon-applications-border: rgba(21, 128, 61, 0.28);
  --metric-icon-applications-bg: rgba(34, 197, 94, 0.12);
  --metric-icon-interviews: #1d4ed8;
  --metric-icon-interviews-border: rgba(29, 78, 216, 0.28);
  --metric-icon-interviews-bg: rgba(59, 130, 246, 0.12);
  --metric-icon-years: #7c3aed;
  --metric-icon-years-border: rgba(124, 58, 237, 0.28);
  --metric-icon-years-bg: rgba(139, 92, 246, 0.12);
  --metric-icon-companies: #0f766e;
  --metric-icon-companies-border: rgba(15, 118, 110, 0.28);
  --metric-icon-companies-bg: rgba(20, 184, 166, 0.12);
  --metric-icon-projects: #b45309;
  --metric-icon-projects-border: rgba(180, 83, 9, 0.28);
  --metric-icon-projects-bg: rgba(245, 158, 11, 0.14);
  --metric-icon-achievements: #be123c;
  --metric-icon-achievements-border: rgba(190, 18, 60, 0.28);
  --metric-icon-achievements-bg: rgba(244, 63, 94, 0.12);
  --nav-dashboard-border: rgba(201, 147, 10, 0.35);
  --nav-dashboard-bg: rgba(201, 147, 10, 0.08);
  --kanban-cta-apply-bg: #c9930a;
  --kanban-cta-apply-border: #9a7208;
  --kanban-cta-apply-hover: #b7791f;
  --kanban-cta-network-bg: #fff8eb;
  --kanban-cta-network-ink: #5c3b00;
  --kanban-cta-network-border: #c9930a;
  --kanban-cta-network-hover: #f3e4c5;
  --diff-changed-bg: #fff7df;
  --draft-ink: #25324a;
}

[data-theme="dark"] {
  --bg: #090512;
  --panel: #140d22;
  --surface: #1b1229;
  --surface-input: #160f24;
  --ink: #f3eef9;
  --muted: #b7a8cc;
  --line: #2f2147;
  --accent: #2e1065;
  --accent-dark: #1a0533;
  --accent-soft: rgba(126, 58, 213, 0.18);
  --blue: #7c3aed;
  --blue-dark: #5b21b6;
  --green: #34d399;
  --amber: #fbbf24;
  --rose: #fb7185;
  --shadow: 0 16px 45px rgba(0, 0, 0, 0.45);
  --sidebar-bg: #06030d;
  --sidebar-panel: #110a1c;
  --sidebar-line: #34224f;
  --ghost-bg: #221636;
  --ghost-ink: #e9e0f5;
  --badge-bg: rgba(52, 211, 153, 0.14);
  --message-bg: #221636;
  --message-user-bg: #1f2937;
  --chip-bg: rgba(124, 58, 237, 0.22);
  --chip-ink: #e9e0f5;
  --chip-analyzed-bg: rgba(96, 165, 250, 0.22);
  --chip-analyzed-ink: #bfdbfe;
  --chip-tailored-bg: rgba(52, 211, 153, 0.22);
  --chip-tailored-ink: #6ee7b7;
  --chip-warn-bg: rgba(251, 191, 36, 0.2);
  --chip-warn-ink: #fde68a;
  --empty-surface: #1b1229;
  --preview-surface: #160f24;
  --agent-highlight-border: rgba(124, 58, 237, 0.55);
  --agent-highlight-border-alt: rgba(124, 58, 237, 0.45);
  --score-strip-bg: #1b1229;
  --chip-keyword-bg: rgba(124, 58, 237, 0.22);
  --chip-keyword-ink: #ddd6fe;
  --highlight-add-bg: rgba(251, 191, 36, 0.22);
  --highlight-add-ink: #fde68a;
  --editor-ink: #f3eef9;
  --notes-color: #c4b5d8;
  --status-save-bg: rgba(52, 211, 153, 0.22);
  --status-save-ink: #6ee7b7;
  --status-pending-bg: rgba(96, 165, 250, 0.22);
  --status-pending-ink: #bfdbfe;
  --scrollbar-track: #1b1229;
  --scrollbar-thumb: #4c3a6a;
  --scrollbar-thumb-hover: #6b5494;
  --card-hover-border: rgba(124, 58, 237, 0.65);
  --selected-template-bg: rgba(124, 58, 237, 0.14);
  --format-card-bg: #160f24;
  --delete-zone-bg: rgba(251, 191, 36, 0.18);
  --delete-zone-ink: #fde68a;
  --delete-zone-active-bg: rgba(251, 113, 133, 0.28);
  --delete-zone-active-ink: #fecdd3;
  --workspace-logo-opacity: 0.28;
  --workspace-logo-filter: brightness(2.35) saturate(1.15);
  --nav-group-border: rgba(255, 255, 255, 0.14);
  --nav-group-bg: rgba(255, 255, 255, 0.04);
  --agent-group-border: rgba(124, 58, 237, 0.35);
  --agent-group-bg: rgba(124, 58, 237, 0.08);
  --agent-copilot-border: rgba(167, 139, 250, 0.55);
  --agent-copilot-bg: rgba(124, 58, 237, 0.16);
  --metric-ring-track: rgba(167, 139, 250, 0.25);
  --metric-ring-progress: #c4b5fd;
  --metric-ring-progress-alt: #93c5fd;
  --metric-ring-value: #f3eef9;
  --percent-ring-active: #60a5fa;
  --percent-ring-inactive: rgba(148, 163, 184, 0.22);
  --percent-ring-label: #93c5fd;
  --metric-icon-border: rgba(167, 139, 250, 0.35);
  --metric-icon-bg: rgba(124, 58, 237, 0.12);
  --metric-icon-ink: #f3eef9;
  --metric-icon-applications: #6ee7b7;
  --metric-icon-applications-border: rgba(52, 211, 153, 0.35);
  --metric-icon-applications-bg: rgba(52, 211, 153, 0.12);
  --metric-icon-interviews: #bfdbfe;
  --metric-icon-interviews-border: rgba(96, 165, 250, 0.35);
  --metric-icon-interviews-bg: rgba(96, 165, 250, 0.12);
  --metric-icon-years: #ddd6fe;
  --metric-icon-years-border: rgba(167, 139, 250, 0.35);
  --metric-icon-years-bg: rgba(167, 139, 250, 0.12);
  --metric-icon-companies: #99f6e4;
  --metric-icon-companies-border: rgba(45, 212, 191, 0.35);
  --metric-icon-companies-bg: rgba(45, 212, 191, 0.12);
  --metric-icon-projects: #fcd34d;
  --metric-icon-projects-border: rgba(251, 191, 36, 0.35);
  --metric-icon-projects-bg: rgba(251, 191, 36, 0.12);
  --metric-icon-achievements: #fda4af;
  --metric-icon-achievements-border: rgba(251, 113, 133, 0.35);
  --metric-icon-achievements-bg: rgba(251, 113, 133, 0.12);
  --nav-dashboard-border: rgba(167, 139, 250, 0.55);
  --nav-dashboard-bg: rgba(124, 58, 237, 0.16);
  --kanban-cta-apply-bg: #7c3aed;
  --kanban-cta-apply-border: #5b21b6;
  --kanban-cta-apply-hover: #6d28d9;
  --kanban-cta-network-bg: #2a1a45;
  --kanban-cta-network-ink: #f3eef9;
  --kanban-cta-network-border: #a78bfa;
  --kanban-cta-network-hover: #3b2760;
  --diff-changed-bg: rgba(251, 191, 36, 0.14);
  --draft-ink: #e9e0f5;
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  background: var(--panel);
  color: var(--ink);
  min-height: 40px;
  padding: 0 12px 0 8px;
  border-radius: 999px;
  cursor: pointer;
  font-weight: 700;
}

.theme-toggle-track {
  position: relative;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: var(--accent-soft);
  border: 1px solid var(--line);
}

.theme-toggle-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--accent);
  transition: transform 0.2s ease;
}

[data-theme="dark"] .theme-toggle-thumb {
  transform: translateX(20px);
}

.theme-toggle-label {
  font-size: 13px;
  min-width: 34px;
  text-align: left;
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

[data-theme="dark"] .action-item,
[data-theme="dark"] .agent-card,
[data-theme="dark"] .prep-card,
[data-theme="dark"] .kanban-card,
[data-theme="dark"] .draft-box,
[data-theme="dark"] .job-view-meta-item,
[data-theme="dark"] .job-view-description,
[data-theme="dark"] .application-jd-box,
[data-theme="dark"] .application-resume-box,
[data-theme="dark"] .miiats-submission-card,
[data-theme="dark"] .standing-card,
[data-theme="dark"] .card-list article {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--line);
}

[data-theme="dark"] .action-item p,
[data-theme="dark"] .agent-card strong,
[data-theme="dark"] .prep-card h3,
[data-theme="dark"] .prep-card li,
[data-theme="dark"] .standing-card strong,
[data-theme="dark"] .standing-card p {
  color: var(--ink);
}

[data-theme="dark"] textarea,
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] .resume-rich-preview,
[data-theme="dark"] .resume-editable-preview {
  background: var(--surface-input);
  color: var(--ink);
  border-color: var(--line);
}

[data-theme="dark"] .ghost-button {
  background: var(--ghost-bg);
  color: var(--ghost-ink);
}

[data-theme="dark"] label {
  color: var(--muted);
}

[data-theme="dark"] .section-heading > span {
  background: var(--accent-soft);
  color: var(--ink);
}

[data-theme="dark"] .badge {
  background: var(--badge-bg);
  color: var(--green);
}

[data-theme="dark"] .message {
  background: var(--message-bg);
  color: var(--ink);
}

[data-theme="dark"] .message.user {
  background: var(--message-user-bg);
}

[data-theme="dark"] .kanban-column.drag-over {
  background: rgba(124, 58, 237, 0.12);
  box-shadow: inset 0 0 0 2px rgba(124, 58, 237, 0.45);
}

[data-theme="dark"] .resume-editable-preview[contenteditable="true"]:focus {
  outline-color: var(--blue);
}

/* --- Dark mode readability fixes --- */

[data-theme="dark"] .agent-card[data-agent="MiiResume"],
[data-theme="dark"] .agent-card[data-agent="MiiATS"] {
  background: var(--surface);
  border-color: var(--agent-highlight-border);
}

[data-theme="dark"] .agent-card[data-agent="MiiResume"]:hover,
[data-theme="dark"] .agent-card[data-agent="MiiATS"]:hover {
  border-color: var(--blue);
  background: rgba(124, 58, 237, 0.14);
}

[data-theme="dark"] .agent-card[data-agent="MiiResume"] strong,
[data-theme="dark"] .agent-card[data-agent="MiiATS"] strong {
  color: var(--ink);
}

[data-theme="dark"] .agent-card[data-agent="MiiResume"] span,
[data-theme="dark"] .agent-card[data-agent="MiiATS"] span {
  color: var(--muted);
}

[data-theme="dark"] .miiresume-template-card p,
[data-theme="dark"] .miiats-submission-card p,
[data-theme="dark"] .miiats-empty-state,
[data-theme="dark"] .field-label {
  color: var(--muted);
}

[data-theme="dark"] .miiresume-template-card.selected {
  background: rgba(124, 58, 237, 0.14);
  box-shadow: 0 0 0 1px var(--blue);
}

[data-theme="dark"] .miiresume-template-tags span,
[data-theme="dark"] .miiats-submission-meta > span {
  background: var(--chip-bg);
  color: var(--chip-ink);
}

[data-theme="dark"] .miiats-submission-meta span.status-analyzed {
  background: var(--chip-analyzed-bg);
  color: var(--chip-analyzed-ink);
}

[data-theme="dark"] .miiats-submission-meta span.status-tailored {
  background: var(--chip-tailored-bg);
  color: var(--chip-tailored-ink);
}

[data-theme="dark"] .miiats-submission-meta span.status-applied {
  background: rgba(96, 165, 250, 0.18);
  color: #93c5fd;
}

[data-theme="dark"] .miiats-submission-meta span.warn {
  background: var(--chip-warn-bg);
  color: var(--chip-warn-ink);
}

[data-theme="dark"] .miiats-empty-state {
  background: var(--empty-surface);
}

[data-theme="dark"] .dashboard-cta {
  background: var(--surface);
  border-color: var(--line);
}

[data-theme="dark"] .dashboard-cta strong {
  color: var(--ink);
}

[data-theme="dark"] .dashboard-cta span {
  color: var(--muted);
}

[data-theme="dark"] .miiresume-formatting-card {
  background: var(--format-card-bg);
  border-color: var(--line);
}

[data-theme="dark"] .score-strip {
  background: var(--score-strip-bg);
}

[data-theme="dark"] .chip {
  background: var(--chip-keyword-bg);
  color: var(--chip-keyword-ink);
}

[data-theme="dark"] .chip.warn {
  background: var(--chip-warn-bg);
  color: var(--chip-warn-ink);
}

[data-theme="dark"] .notes,
[data-theme="dark"] .diff-summary {
  color: var(--notes-color);
}

[data-theme="dark"] .job-search-tags span {
  background: var(--chip-bg);
  color: var(--chip-ink);
}

[data-theme="dark"] .resume-preview {
  background: var(--preview-surface);
  color: var(--ink);
}

[data-theme="dark"] .suggested-line-highlight {
  color: var(--editor-ink);
}

[data-theme="dark"] .suggested-line-highlight mark.suggested-addition {
  background: var(--highlight-add-bg);
  color: var(--highlight-add-ink);
}

[data-theme="dark"] .suggested-line-input {
  caret-color: var(--editor-ink);
}

[data-theme="dark"] .tailored-save-badge {
  background: var(--status-save-bg);
  color: var(--status-save-ink);
}

[data-theme="dark"] .tailored-save-badge.is-pending {
  background: var(--status-pending-bg);
  color: var(--status-pending-ink);
}

[data-theme="dark"] .saved-version-link .version-status {
  background: var(--status-save-bg);
  color: var(--status-save-ink);
}

[data-theme="dark"] .kanban-delete-zone {
  background: var(--delete-zone-bg);
  color: var(--delete-zone-ink);
}

[data-theme="dark"] .kanban-delete-zone.drag-over {
  background: var(--delete-zone-active-bg);
  color: var(--delete-zone-active-ink);
}

[data-theme="dark"] .miiresume-template-grid::-webkit-scrollbar-track {
  background: var(--scrollbar-track);
}

[data-theme="dark"] .miiresume-template-grid::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
}

[data-theme="dark"] .miiresume-template-grid::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover);
}

[data-theme="dark"] .job-search-card,
[data-theme="dark"] .kanban-card strong,
[data-theme="dark"] .kanban-card span,
[data-theme="dark"] .miiats-submission-card h3,
[data-theme="dark"] .job-search-card h3,
[data-theme="dark"] .insight-grid article,
[data-theme="dark"] .insight-grid h3,
[data-theme="dark"] .card-list article,
[data-theme="dark"] .positioning,
[data-theme="dark"] .score-grid article {
  color: var(--ink);
}

[data-theme="dark"] .badge.mid {
  background: var(--chip-warn-bg);
  color: var(--chip-warn-ink);
}

[data-theme="dark"] .panel,
[data-theme="dark"] .editor-panel,
[data-theme="dark"] .modal-card {
  background: var(--panel);
  color: var(--ink);
}

[data-theme="dark"] .eyebrow,
[data-theme="dark"] .miiats-lead,
[data-theme="dark"] .field-hint,
[data-theme="dark"] .job-meta {
  color: var(--muted);
}

[data-theme="dark"] .diff-line.removed {
  background: rgba(251, 113, 133, 0.12);
}

[data-theme="dark"] .sticky-actions {
  background: linear-gradient(180deg, rgba(9, 5, 18, 0), var(--bg) 35%);
}

[data-theme="dark"] .sticky-save-status:not(:empty) {
  color: var(--green);
}

[data-theme="dark"] .bar {
  background: var(--line);
}

[data-theme="dark"] .badge.low {
  background: rgba(251, 113, 133, 0.18);
  color: var(--rose);
}

[data-theme="dark"] .signup-card,
[data-theme="dark"] .signup-card label,
[data-theme="dark"] .signup-card input {
  background: var(--panel);
  color: var(--ink);
  border-color: var(--line);
}

[data-theme="dark"] .signup-card label {
  color: var(--muted);
}

[data-theme="dark"] body {
  background: var(--bg);
  color: var(--ink);
}
