/* Единая ночная тема поверх исходных стилей: коллажи и структура не меняются. */
:root {
  color-scheme: dark;
  --ink: #f8f7f3;
  --cream: #091522;
  --gold: #e7c47b;
  --line: #416079;
  --night: #091522;
  --surface: #102438;
  --surface-raised: #172e44;
  --text-muted: #d1dde5;
  --text-soft: #aebfcb;
}

body { color: var(--ink); background: #050d18; }
.app-shell {
  background-color: var(--night);
  background-image:
    radial-gradient(circle at 9% 9%, #accaddb8 0 1px, transparent 1.7px),
    radial-gradient(circle at 82% 30%, #e7c47b9c 0 1px, transparent 1.8px),
    radial-gradient(circle at 45% 71%, #e8eff5a1 0 1px, transparent 1.5px),
    radial-gradient(ellipse at 105% 12%, #21446377, transparent 43%),
    radial-gradient(ellipse at -15% 83%, #15345288, transparent 46%),
    linear-gradient(180deg, #091522, #0c1c2d 55%, #071421);
  background-size: 137px 163px, 197px 211px, 83px 109px, auto, auto, auto;
}
h1, h2 { color: #fffaf2; }
.eyebrow, .section-heading p { color: #d0be99; }
.gold { color: var(--gold); }
.practice-page-intro, .practice-method-note { color: var(--text-muted); }
.section-heading span { background: var(--gold); }
.avatar, .practice-header-mark { color: var(--gold); background: #163048; border-color: #927748; }

/* Календарь уже тёмный; подравниваем его к новому фону. */
.lunar-calendar { border-color: #56728a; box-shadow: 0 18px 38px #0007; }
.calendar-panel { background-color: #0b1d2d; }
.calendar-recommendation { background: linear-gradient(140deg, #163047f2, #0e2438f2); }
.calendar-disclaimer { color: #c1cfd8; }

/* Анкета, месячный план и четыре практики. */
.rhythm-card, .rhythm-summary, .monthly-plan-open,
.daily-offer-card, .daily-offer-card.breathing-offer,
.daily-offer-card.ritual-offer,
.feature-card, .feature-card.peach, .feature-card.blue,
.feature-card.sage, .feature-card.lavender {
  color: var(--ink);
  border-color: #49667e;
  background: linear-gradient(145deg, #172e44, #102438 74%);
  box-shadow: 0 10px 24px #0004;
}
.daily-offer-card.breathing-offer { background: linear-gradient(145deg, #173747, #102838 76%); }
.daily-offer-card.ritual-offer { background: linear-gradient(145deg, #223a48, #122739 76%); }
.personal-plan { border-color: #6c89a0; background: linear-gradient(135deg, #112941, #193c59 56%, #1a344a); }
.personal-plan > p:not(.eyebrow), .plan-details span { color: #eef4f6; }
.personal-plan > .lunar-why,
.daily-offer-card > .lunar-why,
.lunar-why {
  display: block;
  max-width: none;
  margin: 14px 0 16px;
  padding: 10px 12px;
  border-left: 2px solid #e7c47b;
  border-radius: 0 9px 9px 0;
  color: #f2e4c4;
  background: #e7c47b14;
  font-size: 11px;
  line-height: 1.55;
}
.lunar-why[hidden] { display: none; }
.dialog-lunar-why { margin: 8px 0 20px; }
.plan-details span { background: #0a203887; }
.rhythm-card h2, .daily-offer-card h2,
.daily-offer-card > p:not(.eyebrow), .feature-card strong,
.monthly-plan-open strong { color: #fffaf2; }
.daily-offer-card > p:not(.eyebrow), .rhythm-intro,
.rhythm-summary p:not(.eyebrow), .monthly-plan-open small,
.feature-card small { color: var(--text-muted); }
.personal-plan > p.lunar-why,
.daily-offer-card > p.lunar-why {
  max-width: none;
  margin: 14px 0 16px;
  color: #f2e4c4;
}
.daily-offer-card > .meditation-phase-label:not(.eyebrow) {
  color: #f0d49c; border-color: #977d4d; background: #294152;
}
.feature-card .feature-icon,
.feature-card.peach .feature-icon,
.feature-card.lavender .feature-icon {
  color: #f0d49c; border-color: #55758a; background: #203b51;
}
.monthly-plan-open > span:last-child, .daily-offer-icon { color: var(--gold); }
.daily-offer-action, .primary-button, .rhythm-save {
  color: #081c2e; background: #eed395;
}
.daily-offer-secondary, .personal-edit { color: #f0d49c; }
.done-button { color: #0a2036; background: #eed395; }
.done-button span { color: #fff; background: #214b61; }
.done-button.completed { color: #fff; background: #327668; }
.done-button.completed span { color: #24584e; background: #fff; }

/* Поля и варианты выбора должны быть такими же тёмными, как карточка. */
.rhythm-fields label, .rhythm-focus .eyebrow { color: #f3ede1; }
.rhythm-fields label small, .rhythm-note { color: #c0d5d7; }
.rhythm-fields input, .rhythm-options button {
  color: #fffaf2; border-color: #5b788b; background: #0d2133;
  color-scheme: dark;
}
.rhythm-fields input::placeholder { color: #afc0ca; opacity: 1; }
.rhythm-fields input:focus { border-color: #e7c47b; box-shadow: 0 0 0 3px #e7c47b38; }
.rhythm-options button.selected { color: #081c2e; border-color: #e7c47b; background: #eed395; }
.rhythm-summary button { color: #f7e7bd; border-color: #7995a5; background: #203c50; }

/* Окна поверх приложения: никакой белой панели или тёмного текста. */
dialog, .monthly-plan-dialog, .meditation-dialog, .personal-dialog {
  color: var(--ink); border: 1px solid #6b8798;
  background: radial-gradient(circle at 95% 0, #234761aa, transparent 46%), #0e2235;
  box-shadow: 0 24px 80px #000b;
}
dialog::backdrop { background: #020814c9; }
.dialog-close { color: #f1e5cb; }
#detail-dialog h2, #dialog-text,
.monthly-plan-dialog h2, .meditation-dialog h2,
.personal-dialog h2, .meditation-session h3,
#breathing-dialog h3 { color: #fffaf2; }
#dialog-text, .monthly-plan-intro, .monthly-plan-storage-note,
.meditation-intro, .personal-intro, .personal-disclaimer,
.meditation-hint, .meditation-session > p:not(.eyebrow):not(.meditation-timer):not(.meditation-hint),
#breathing-step-text { color: var(--text-muted); }
.practice-steps { border-top-color: #5c7788; }
.practice-steps li { border-bottom-color: #3a5368; }
.practice-steps li > span { color: #f4dfac; background: #213f55; }
.practice-steps strong, .meditation-timer { color: #fffaf2; }
.practice-steps p { color: var(--text-muted); }
.meditation-choice, .monthly-plan-day, .personal-advice-card {
  color: var(--ink); border-color: #48667d; background: #172e44;
}
.meditation-choice:hover, .meditation-choice:focus-visible,
.monthly-plan-day.today { border-color: #dfc17f; background: #244258; }
.meditation-choice strong, .monthly-plan-day h3,
.personal-advice-card h3 { color: #fffaf2; }
.meditation-choice span, .monthly-plan-day small,
.personal-advice-number { color: #edcd8b; }
.meditation-choice small, .monthly-plan-day p,
.personal-advice-card p { color: var(--text-muted); }
.meditation-back { color: #f1d493; }
.personal-factors span { color: #f1e0b5; border-color: #627d8c; background: #244053; }

.bottom-nav { border-top-color: #557083; background: #081827f5; }
.nav-item { color: #d1dce4; }
.nav-item.active { color: #f3d484; }
button:focus-visible { outline: 2px solid #f4d584; outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) {
  .feature-card:hover { transform: none; }
}
