html[data-theme="wildflowers"] {
  --palette-1: #a8dcab;
  --palette-2: #519755;
  --palette-3: #dbaaa7;
  --palette-4: #be91be;
  --bg: #eef7ef;
  --bg-top: #f7ecec;
  --bg-bottom: #e9f5ea;
  --surface: rgba(255, 255, 255, 0.94);
  --surface-strong: rgba(255, 255, 255, 0.97);
  --surface-soft: rgba(247, 238, 244, 0.96);
  --line: rgba(49, 95, 61, 0.16);
  --line-strong: rgba(49, 95, 61, 0.31);
  --text: #24342a;
  --muted: #617066;
  --brand: #519755;
  --brand-deep: #315f3d;
  --accent: #be91be;
  --accent-soft: #f4e8f4;
  --danger: #9b4555;
  --bg-women: #f4e3e1;
  --bg-men: #e4f3e5;
  --bg-leader: #ead8ea;
  --bg-title: #edf5ed;
  --overall: #dbaaa7;
  --m01: #faecec;
  --m02: #f6e5e3;
  --m03: #f1e7ef;
  --m04: #edf5ed;
  --m05: #e7f3e8;
  --m06: #e2efe5;
  --m07: #e6f1ec;
  --m08: #ece8f2;
  --m09: #f0e5f0;
  --m10: #f5e4eb;
  --m11: #f7e8e4;
  --m12: #f2eee8;
  --changed: #f6e4e3;
  --changed-line: #be7774;
  --theme-soft: rgba(168, 220, 171, 0.2);
  --theme-soft-2: rgba(219, 170, 167, 0.22);
  --theme-header: #e8f1e8;
  --theme-focus: rgba(81, 151, 85, 0.18);
  --theme-glow-a: rgba(219, 170, 167, 0.48);
  --theme-glow-b: rgba(168, 220, 171, 0.48);
  --print-line: #607464;
}

html[data-theme="forest"] {
  --bg: #eef2e9;
  --bg-top: #f4efe5;
  --bg-bottom: #e5eee5;
  --surface: rgba(255, 255, 252, 0.94);
  --surface-strong: rgba(255, 255, 252, 0.97);
  --surface-soft: rgba(240, 244, 235, 0.96);
  --line: rgba(53, 94, 77, 0.17);
  --line-strong: rgba(53, 94, 77, 0.32);
  --text: #29362f;
  --muted: #657068;
  --brand: #6e8b74;
  --brand-deep: #355e4d;
  --accent: #c59b6d;
  --accent-soft: #f6ecdf;
  --danger: #9b4f4b;
  --bg-women: #f4eadf;
  --bg-men: #e6eee3;
  --bg-leader: #f1dfc8;
  --bg-title: #e9eee5;
  --overall: #e8c7ab;
  --m01: #f3e9dc;
  --m02: #f0e6da;
  --m03: #eef0df;
  --m04: #e8eee0;
  --m05: #e3ebde;
  --m06: #e0e9df;
  --m07: #e3ebe5;
  --m08: #e7eadd;
  --m09: #ece9da;
  --m10: #f0e6d9;
  --m11: #f3e4d5;
  --m12: #eee8dc;
  --changed: #f4e4c9;
  --changed-line: #ae7f48;
  --theme-soft: rgba(110, 139, 116, 0.16);
  --theme-soft-2: rgba(197, 155, 109, 0.2);
  --theme-header: #e8ede3;
  --theme-focus: rgba(53, 94, 77, 0.17);
  --theme-glow-a: rgba(197, 155, 109, 0.38);
  --theme-glow-b: rgba(110, 139, 116, 0.4);
  --print-line: #59675e;
}

html[data-theme="lavender"] {
  --bg: #f4f0f8;
  --bg-top: #f9eff4;
  --bg-bottom: #eeeaf8;
  --surface: rgba(255, 255, 255, 0.94);
  --surface-strong: rgba(255, 255, 255, 0.97);
  --surface-soft: rgba(247, 241, 250, 0.96);
  --line: rgba(80, 58, 112, 0.16);
  --line-strong: rgba(80, 58, 112, 0.3);
  --text: #302b3a;
  --muted: #6f6679;
  --brand: #745a9d;
  --brand-deep: #503a70;
  --accent: #d098af;
  --accent-soft: #f8e9ef;
  --danger: #a4445d;
  --bg-women: #f7e8ee;
  --bg-men: #eee9f7;
  --bg-leader: #eadcf2;
  --bg-title: #f0ebf6;
  --overall: #e4b8c9;
  --m01: #f8e9ef;
  --m02: #f4e7f2;
  --m03: #efe8f6;
  --m04: #ebeaf7;
  --m05: #e8ecf6;
  --m06: #e9eef7;
  --m07: #ebebf8;
  --m08: #eee8f8;
  --m09: #f1e6f5;
  --m10: #f5e5f0;
  --m11: #f7e7ed;
  --m12: #f3eaf4;
  --changed: #f2e2f6;
  --changed-line: #9971b1;
  --theme-soft: rgba(183, 165, 216, 0.2);
  --theme-soft-2: rgba(218, 177, 197, 0.22);
  --theme-header: #eee9f5;
  --theme-focus: rgba(116, 90, 157, 0.18);
  --theme-glow-a: rgba(218, 177, 197, 0.43);
  --theme-glow-b: rgba(183, 165, 216, 0.44);
  --print-line: #675c72;
}

html[data-theme]:not([data-theme="classic"]) .app-page {
  background:
    radial-gradient(circle at top left, var(--theme-glow-a), transparent 31%),
    radial-gradient(circle at top right, var(--theme-glow-b), transparent 35%),
    linear-gradient(180deg, var(--bg-top), var(--bg-bottom));
}

html[data-theme]:not([data-theme="classic"]) .hero {
  background: linear-gradient(135deg, var(--surface-soft), var(--surface-strong));
}

html[data-theme]:not([data-theme="classic"]) .eyebrow,
html[data-theme]:not([data-theme="classic"]) .meta-box,
html[data-theme]:not([data-theme="classic"]) .summary div {
  border-color: var(--line);
  background: var(--theme-soft);
}

html[data-theme]:not([data-theme="classic"]) input:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 4px var(--theme-focus);
}

html[data-theme]:not([data-theme="classic"]) th {
  background: var(--theme-header);
}

html[data-theme]:not([data-theme="classic"]) .women-line,
html[data-theme]:not([data-theme="classic"]) .women-cell,
html[data-theme]:not([data-theme="classic"]) .role-women {
  background: var(--bg-women);
}

html[data-theme]:not([data-theme="classic"]) .men-line,
html[data-theme]:not([data-theme="classic"]) .men-cell,
html[data-theme]:not([data-theme="classic"]) .role-men {
  background: var(--bg-men);
}

html[data-theme]:not([data-theme="classic"]) .chip.leader,
html[data-theme]:not([data-theme="classic"]) .leader {
  border-color: var(--accent);
  background: var(--bg-leader);
}

html[data-theme]:not([data-theme="classic"]) .month-cell {
  background: var(--bg-title);
}

html[data-theme]:not([data-theme="classic"]) .rule {
  background: var(--brand-deep);
}

html[data-theme]:not([data-theme="classic"]) .print-page {
  --line: var(--print-line);
}

@media print {
  html[data-theme]:not([data-theme="classic"]) .print-page {
    background: #fff;
  }
}
