/* Saffron Loom — Dark theme
   Rule: every normal section is pure black; sections with their own
   colour (marquee, craft = primary, visit = secondary) keep it; navbar & footer share backdrop. */
[data-theme="dark"] {
  color-scheme: dark;
  --bg: #000000;
  --surface: #0d0d0d;
  --ink: #ffffff;
  --muted: #b8b8b8;
  --line: #2b2b2b;
  --ptext: color-mix(in srgb, var(--primary) 50%, #fff);
  --wv: rgba(255, 255, 255, .05);
  --sh: 0 14px 34px rgba(0, 0, 0, .7);
  --sh-s: 0 6px 16px rgba(0, 0, 0, .6);
}

[data-theme="dark"] body::before {
  opacity: .07;
  filter: invert(1)
}

[data-theme="dark"] .navbar,
[data-theme="dark"] .footer {
  background: rgba(0, 0, 0, .92)
}

[data-theme="dark"] input[type="date"] {
  color-scheme: dark
}

[data-theme="dark"] .date-input-wrap .date-ico {
  color: #ffffff
}

[data-theme="dark"] .loom-bar {
  background: #fff
}

[data-theme="dark"] .rug-box {
  border-color: #fff
}

[data-theme="dark"] .quote b,
[data-theme="dark"] .price {
  color: var(--ptext)
}

/* sections with their own colour stay coloured; text inside is fixed */
[data-theme="dark"] .craft h2,
[data-theme="dark"] .craft h3 {
  color: #fff
}

[data-theme="dark"] .visit h2,
[data-theme="dark"] .visit-info b {
  color: var(--ink)
}

[data-theme="dark"] .book h3 {
  color: var(--ink)
}

[data-theme="dark"] .p-spec span,
[data-theme="dark"] .perk {
  color: #fff
}

[data-theme="dark"] .tag {
  color: var(--secondary)
}

[data-theme="dark"] .visit .tag {
  color: #fff;
  background: var(--primary)
}

[data-theme="dark"] .icon-btn:hover {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary)
}

[data-theme="dark"] .ct-cta {
  background: #141211;
  border: 1.5px solid var(--line);
  color: #ffffff;
}

[data-theme="dark"] .ct-cta b {
  color: #ffffff;
}

[data-theme="dark"] .ct-cta span {
  color: rgba(255, 255, 255, 0.78);
}