/* Чернила и тлеющий коралл. Single theme, replacing the graphite theme owner.
   Original token names are retained for every existing component. */
:root, html.dark {
  color-scheme: dark;
  --background: 210 4.76% 8.24%; /* #141516 */
  --foreground: 30 21.05% 92.55%; /* #F0ECE8 */
  --card: 210 6.45% 12.16%; /* #1D1F21 */
  --card-foreground: var(--foreground);
  --card-border: 210 5% 22%;
  --popover: 210 7.14% 16.47%; /* #272A2D */
  --popover-foreground: var(--foreground);
  --popover-border: 210 5% 28%;
  --primary: 12.63 83.52% 64.31%; /* #F07858 */
  --primary-foreground: 210 4.76% 8.24%;
  --primary-border: hsl(12.63 83.52% 64.31%);
  --secondary: 210 7.14% 16.47%;
  --secondary-foreground: var(--foreground);
  --secondary-border: hsl(210 5% 26%);
  --muted: 210 6% 14%;
  --muted-foreground: 30 5.75% 65.88%; /* #ADA8A3 */
  --muted-border: hsl(210 5% 24%);
  --accent: var(--primary);
  --accent-foreground: var(--primary-foreground);
  --accent-border: hsl(var(--primary) / .35);
  --destructive: 348 70% 72%;
  --destructive-foreground: var(--background);
  --destructive-border: hsl(348 70% 72% / .4);
  --border: 210 5% 23%;
  --input: 210 5% 27%;
  --ring: var(--primary);
  --button-outline: hsl(var(--border));
  --badge-outline: hsl(var(--border));
  --sidebar-bg: 210 6% 10.5%;
  --priority-1: 348 70% 72%;
  --priority-2: 32 65% 66%;
  --priority-3: 160 25% 62%;
  --priority-4: 30 5.75% 65.88%;
  --pomodoro-work: var(--primary);
  --view-accent: var(--primary);
  --view-accent-2: var(--primary);
  --cold-accent: var(--primary);
  --cold-accent-2: var(--primary);
  --warm-accent: var(--primary);
  --signal-accent: var(--primary);
  --glass-surface: var(--card);
  --glass-surface-strong: var(--secondary);
  --glass-highlight: 30 12% 80%;
  --glass-rim: 210 5% 23%;
  --glass-frost: 30 12% 80%;
  --glass-blur-small: 0px;
  --glass-blur-medium: 0px;
  --glass-blur-large: 8px;
  --glass-shadow-small: none;
  --glass-shadow-medium: none;
  --glass-shadow-large: 0 12px 36px rgb(0 0 0 / .18);
  --ambient-bg-1: var(--background);
  --ambient-bg-2: var(--background);
  --ambient-bg-3: var(--background);
}
html.dark body { background:#141516; color:#F0ECE8; }
html.dark body::before, html.dark body::after, html.dark .tasks-page::before { display:none; }
html.dark .tasks-page { --view-accent:var(--primary); --view-accent-2:var(--primary); }
html.dark :is(.glass,.glass-material-small,.glass-material-medium,.glass-material-large) {
  background:hsl(var(--card)); border-color:hsl(var(--border) / .65);
  box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none;
}
html.dark :is(.glass-material-medium,.glass-material-large)::after { display:none; }
html.dark :is([role="dialog"],[role="menu"],[role="listbox"],.task-document) {
  background:hsl(var(--popover) / .98); border-color:hsl(var(--popover-border));
  box-shadow:0 16px 48px rgb(0 0 0 / .28);
}
html.dark .bg-primary { background:hsl(var(--primary)); color:hsl(var(--primary-foreground)); box-shadow:none; }
html.dark button.bg-primary:not(:disabled):hover { background:#FA896B; }
html.dark .text-primary { color:hsl(var(--primary)); }
html.dark .sidebar-item { box-shadow:none; }
html.dark .sidebar-item.active { background:hsl(var(--primary) / .12); color:#F89478; border-color:hsl(var(--primary) / .22); box-shadow:none; }
html.dark .sidebar-item.active::before { background:hsl(var(--primary)); box-shadow:none; }
html.dark .sidebar-item:hover:not(.active) { background:hsl(var(--secondary)); }
/* Existing bright utility surfaces become neutral, without touching semantic status colours. */
html.dark :is(.bg-white\/48,.bg-white\/42,.bg-white\/45,.bg-white\/50,.bg-white\/34,.bg-white\/24,.bg-white\/52,.bg-white\/46,.bg-white\/55) { background:hsl(var(--secondary) / .65); box-shadow:none; }
html.dark :is(.border-white\/70,.border-white\/60,.border-white\/50) { border-color:hsl(var(--border) / .7); }
html.dark :is(input,textarea,[role="combobox"]) { color:hsl(var(--foreground)); background:hsl(var(--background) / .45); border-color:hsl(var(--input)); box-shadow:none; }
html.dark :is(input,textarea)::placeholder { color:hsl(var(--muted-foreground)); opacity:1; }
html.dark .document-field { background:transparent; }
html.dark :is(.text-red-400,.text-red-500) { color:#F18196; }
html.dark :is(.text-emerald-400,.text-emerald-500) { color:#83B89E; }
html.dark .bg-emerald-500 { background:#83B89E; }
html.dark :is(.hover\:bg-white\/45,.hover\:bg-white\/50,.hover\:bg-white\/55):hover { background:hsl(var(--secondary)); }
html.dark :is(.bg-primary,.sidebar-item.active) .text-primary { color:inherit; }
html.dark .evolve-habit-row { background:hsl(var(--card)); border:1px solid hsl(var(--border) / .6); box-shadow:none; }
html.dark .evolve-habit-row:hover { background:hsl(var(--secondary) / .6); }
/* The deployed CSS also adds glass to ordinary cards through this shared selector. */
html.dark main :is(.border.bg-secondary\/20,.border.bg-secondary\/30,.border.bg-card) {
  background:hsl(var(--card)); box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none;
}
html.dark main :is(.border.bg-secondary\/20,.border.bg-secondary\/30,.border.bg-card)::after { display:none; }
html.dark :is([role="tab"][data-state="active"],[role="menuitem"]:focus) { background:hsl(var(--primary) / .14); color:#F89478; }
