/* GENERATED by scripts/build-themes.mjs from public/js/themes.js — do not edit by hand.
   Every theme sorted into roles: the main colour on the plates (with its own text tone), the palette's neutral for the
   content areas, one accent for what is clicked, a thin status edge; each pair checked (text 4.5:1 on what it sits on,
   edges 3:1); derived values are noted. */

/* Light (light) */
html[data-theme="light"] {
  --surface-1: rgba(255, 255, 255, 0.9); --plate-text: #1a1a1a; --plate-text-2: #666666; --plate-text-3: #6e6e6e; --plate-line: rgba(26, 26, 26, 0.14);
  --surface-2: #ffffff; --raise: #f3f1ec; --raise-hover: #e9e7e3; --paper: #ffffff;
  --scrim: rgba(255, 255, 255, 0.985); --veil: rgba(255, 255, 255, 0.86); --halo: #ffffff; --bg: #ffffff;
  --line: rgba(26, 26, 26, 0.1); --line-strong: rgba(26, 26, 26, 0.18);
  --text: #1a1a1a; --text-2: #4a4a4a; --text-3: #6c6c6c; /* text-3: 4.7:1 at its quietest */
  --accent: #a68f42; --logo: #af9645; /* accent derived: #af9645 → #a68f42, to a 3:1 edge on the areas */
  --accent-strong: #97813b; --accent-text: #7b6930; /* accent-text derived: #af9645 → #7b6930, to 4.5:1 as text */
  --accent-tint: rgba(175, 150, 69, 0.1); --accent-tint-2: #ede8d6; --accent-ring: rgba(175, 150, 69, 0.38); --accent-wash: rgba(175, 150, 69, 0.14);
  --on-accent: #1a1a1a; --on-accent-strong: #1a1a1a; /* 5.5:1 on the accent, 4.6:1 on the hover */
  --danger: #d12424; --off: #909090; --off-text: #4a4a4a; --off-tint: #f3f1ec;
  --hand-fill-accent: #c2bfb2; --hand-paper: #ffffff; --hand-paper-other: #f3f1ec; --hand-ink-arming: #4a4a4a; --hand-ink-other: #909090; --hand-frame: rgba(26, 26, 26, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #a68f42; --sale-text: #1a1a1a; --sale-tint: #f3f1ec; /* sale: 3.2:1 edge, text 15.4:1 */
  --rent: #4a4a4a; --rent-text: #1a1a1a; --rent-tint: #f3f1ec; /* rent: 8.9:1 edge, text 15.4:1 */
  --offer: #97813b; --offer-text: #1a1a1a; --offer-tint: #f3f1ec; /* offer: 3.8:1 edge, text 15.4:1 */
  --sold: #909090; --sold-text: #4a4a4a; --sold-tint: #f3f1ec; /* sold: 3.2:1 edge, text 7.9:1 */
}

/* Dark (dark) */
html[data-theme="dark"] {
  --surface-1: rgba(20, 20, 20, 0.9); --plate-text: #f2f2f2; --plate-text-2: #a0a0a0; --plate-text-3: #999999; --plate-line: rgba(242, 242, 242, 0.14);
  --surface-2: #1f1f1f; --raise: #2a2a2a; --raise-hover: #353535; --paper: #1f1f1f;
  --scrim: rgba(31, 31, 31, 0.985); --veil: rgba(20, 20, 20, 0.86); --halo: #1f1f1f; --bg: #141414;
  --line: rgba(242, 242, 242, 0.1); --line-strong: rgba(242, 242, 242, 0.18);
  --text: #f2f2f2; --text-2: #c9c9c9; --text-3: #969696; /* text-3: 4.9:1 at its quietest */
  --accent: #af9645; --logo: #af9645;
  --accent-strong: #c9b16a; --accent-text: #af9645;
  --accent-tint: rgba(175, 150, 69, 0.14); --accent-tint-2: #3f3927; --accent-ring: rgba(175, 150, 69, 0.38); --accent-wash: rgba(175, 150, 69, 0.18);
  --on-accent: #1f1f1f; --on-accent-strong: #1f1f1f; /* 5.7:1 on the accent, 7.8:1 on the hover */
  --danger: #f87171; --off: #7e7e7e; --off-text: #c9c9c9; --off-tint: #2a2a2a;
  --hand-fill-accent: #d2ceb9; --hand-paper: #1f1f1f; --hand-paper-other: #2a2a2a; --hand-ink-arming: #c9c9c9; --hand-ink-other: #7e7e7e; --hand-frame: rgba(242, 242, 242, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #af9645; --sale-text: #f2f2f2; --sale-tint: #2a2a2a; /* sale: 5.7:1 edge, text 12.8:1 */
  --rent: #e8e8e8; --rent-text: #f2f2f2; --rent-tint: #2a2a2a; /* rent: 13.5:1 edge, text 12.8:1 */
  --offer: #c9b16a; --offer-text: #f2f2f2; --offer-tint: #2a2a2a; /* offer: 7.8:1 edge, text 12.8:1 */
  --sold: #7e7e7e; --sold-text: #c9c9c9; --sold-tint: #2a2a2a; /* sold: 4.1:1 edge, text 8.7:1 */
}

/* Amber (light) */
html[data-theme="amber"] {
  --surface-1: rgba(255, 177, 98, 0.9); --plate-text: #4e2718; --plate-text-2: #5f3520; --plate-text-3: #6f4126; --plate-line: rgba(78, 39, 24, 0.14);
  --surface-2: #eee9df; --raise: #e2ddd4; --raise-hover: #d9d4cc; --paper: #eee9df;
  --scrim: rgba(238, 233, 223, 0.985); --veil: rgba(255, 177, 98, 0.86); --halo: #eee9df; --bg: #ffb162;
  --line: rgba(27, 38, 50, 0.1); --line-strong: rgba(27, 38, 50, 0.18);
  --text: #1b2632; --text-2: #2c3b4d; --text-3: #505b68; /* text-3: 5.1:1 at its quietest */
  --accent: #2c3b4d; --logo: #4e2718;
  --accent-strong: #1b2632; --accent-text: #2c3b4d;
  --accent-tint: rgba(44, 59, 77, 0.1); --accent-tint-2: #c3c3bf; --accent-ring: rgba(44, 59, 77, 0.38); --accent-wash: rgba(44, 59, 77, 0.14);
  --on-accent: #eee9df; --on-accent-strong: #eee9df; /* 9.4:1 on the accent, 12.7:1 on the hover */
  --danger: #bd2020; --off: #818383; --off-text: #2c3b4d; --off-tint: #e2ddd4;
  --hand-fill-accent: #a8b1bb; --hand-paper: #eee9df; --hand-paper-other: #e2ddd4; --hand-ink-arming: #2c3b4d; --hand-ink-other: #818383; --hand-frame: rgba(27, 38, 50, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #2c3b4d; --sale-text: #1b2632; --sale-tint: #e2ddd4; /* sale: 9.4:1 edge, text 11.3:1 */
  --rent: #a35139; --rent-text: #1b2632; --rent-tint: #e2ddd4; /* rent: 4.6:1 edge, text 11.3:1 */
  --offer: #1b2632; --offer-text: #1b2632; --offer-tint: #e2ddd4; /* offer: 12.7:1 edge, text 11.3:1 */
  --sold: #818383; --sold-text: #2c3b4d; --sold-tint: #e2ddd4; /* sold: 3.2:1 edge, text 8.4:1 */
}

/* Fairuz (light) */
html[data-theme="fairuz"] {
  --surface-1: rgba(99, 184, 188, 0.9); --plate-text: #003339; --plate-text-2: #053a40; --plate-text-3: #0e464c; --plate-line: rgba(0, 51, 57, 0.14);
  --surface-2: #f7f7f8; --raise: #ebebec; --raise-hover: #e2e2e3; --paper: #f7f7f8;
  --scrim: rgba(247, 247, 248, 0.985); --veil: rgba(99, 184, 188, 0.86); --halo: #f7f7f8; --bg: #63b8bc;
  --line: rgba(5, 27, 29, 0.1); --line-strong: rgba(5, 27, 29, 0.18);
  --text: #051b1d; --text-2: #003339; --text-3: #4b6e73; /* text-3: 4.7:1 at its quietest */
  --accent: #00666b; --logo: #003339;
  --accent-strong: #003339; --accent-text: #00666b;
  --accent-tint: rgba(0, 102, 107, 0.1); --accent-tint-2: #c1d7d9; --accent-ring: rgba(0, 102, 107, 0.38); --accent-wash: rgba(0, 102, 107, 0.14);
  --on-accent: #f7f7f8; --on-accent-strong: #f7f7f8; /* 6.3:1 on the accent, 12.8:1 on the hover */
  --danger: #c72222; --off: #838d8e; --off-text: #003339; --off-tint: #ebebec;
  --hand-fill-accent: #9abec5; --hand-paper: #f7f7f8; --hand-paper-other: #ebebec; --hand-ink-arming: #003339; --hand-ink-other: #838d8e; --hand-frame: rgba(5, 27, 29, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #00666b; --sale-text: #051b1d; --sale-tint: #ebebec; /* sale: 6.3:1 edge, text 14.9:1 */
  --rent: #33989c; --rent-text: #051b1d; --rent-tint: #ebebec; /* rent: 3.2:1 edge, text 14.9:1 */
  --offer: #003339; --offer-text: #051b1d; --offer-tint: #ebebec; /* offer: 12.8:1 edge, text 14.9:1 */
  --sold: #838d8e; --sold-text: #003339; --sold-tint: #ebebec; /* sold: 3.2:1 edge, text 11.5:1 */
}

/* Rosy (light) */
html[data-theme="rosy"] {
  --surface-1: rgba(152, 86, 114, 0.97); --plate-text: #f2f3f4; --plate-text-2: #f2f3f4; --plate-text-3: #f2f3f4; --plate-line: rgba(242, 243, 244, 0.14);
  --surface-2: #f2f3f4; --raise: #e6e7e8; --raise-hover: #dddedf; --paper: #f2f3f4;
  --scrim: rgba(242, 243, 244, 0.985); --veil: rgba(152, 86, 114, 0.86); --halo: #f2f3f4; --bg: #985672;
  --line: rgba(15, 45, 77, 0.1); --line-strong: rgba(15, 45, 77, 0.18);
  --text: #0f2d4d; --text-2: #174871; --text-3: #3f688a; /* text-3: 4.8:1 at its quietest */
  --accent: #174871; --logo: #ded1c6;
  --accent-strong: #0f2d4d; --accent-text: #174871;
  --accent-tint: rgba(23, 72, 113, 0.1); --accent-tint-2: #c2cdd7; --accent-ring: rgba(23, 72, 113, 0.38); --accent-wash: rgba(23, 72, 113, 0.14);
  --on-accent: #f2f3f4; --on-accent-strong: #f2f3f4; /* 8.6:1 on the accent, 12.6:1 on the hover */
  --danger: #c72222; --off: #7e8b99; --off-text: #174871; --off-tint: #e6e7e8;
  --hand-fill-accent: #a2b5c7; --hand-paper: #f2f3f4; --hand-paper-other: #e6e7e8; --hand-ink-arming: #174871; --hand-ink-other: #7e8b99; --hand-frame: rgba(15, 45, 77, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #174871; --sale-text: #0f2d4d; --sale-tint: #e6e7e8; /* sale: 8.6:1 edge, text 11.3:1 */
  --rent: #a77693; --rent-text: #0f2d4d; --rent-tint: #e6e7e8; /* rent: 3.3:1 edge, text 11.3:1 */
  --offer: #0f2d4d; --offer-text: #0f2d4d; --offer-tint: #e6e7e8; /* offer: 12.6:1 edge, text 11.3:1 */
  --sold: #7e8b99; --sold-text: #174871; --sold-tint: #e6e7e8; /* sold: 3.1:1 edge, text 7.7:1 */
}

/* Caramel (light) */
html[data-theme="caramel"] {
  --surface-1: rgba(230, 190, 156, 0.9); --plate-text: #5b4148; --plate-text-2: #5b4148; --plate-text-3: #62474c; --plate-line: rgba(91, 65, 72, 0.14);
  --surface-2: #f9f6f4; --raise: #edeae8; --raise-hover: #e4e1df; --paper: #f9f6f4;
  --scrim: rgba(249, 246, 244, 0.985); --veil: rgba(230, 190, 156, 0.86); --halo: #f9f6f4; --bg: #e6be9c;
  --line: rgba(91, 65, 72, 0.1); --line-strong: rgba(91, 65, 72, 0.18);
  --text: #5b4148; --text-2: #6f585e; --text-3: #766066; /* text-3: 4.8:1 at its quietest */
  --accent: #92555b; --logo: #5b4148;
  --accent-strong: #5b4148; --accent-text: #92555b;
  --accent-tint: rgba(146, 85, 91, 0.1); --accent-tint-2: #e2d3d2; --accent-ring: rgba(146, 85, 91, 0.38); --accent-wash: rgba(146, 85, 91, 0.14);
  --on-accent: #f9f6f4; --on-accent-strong: #f9f6f4; /* 5.3:1 on the accent, 8.5:1 on the hover */
  --danger: #c72222; --off: #918788; --off-text: #6f585e; --off-tint: #edeae8;
  --hand-fill-accent: #c9b9c0; --hand-paper: #f9f6f4; --hand-paper-other: #edeae8; --hand-ink-arming: #6f585e; --hand-ink-other: #918788; --hand-frame: rgba(91, 65, 72, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #92555b; --sale-text: #5b4148; --sale-tint: #edeae8; /* sale: 5.3:1 edge, text 7.6:1 */
  --rent: #648d95; --rent-text: #5b4148; --rent-tint: #edeae8; /* rent: 3.4:1 edge, text 7.6:1 */
  --offer: #5b4148; --offer-text: #5b4148; --offer-tint: #edeae8; /* offer: 8.5:1 edge, text 7.6:1 */
  --sold: #918788; --sold-text: #6f585e; --sold-tint: #edeae8; /* sold: 3.2:1 edge, text 5.4:1 */
}

/* Jade (light) */
html[data-theme="jade"] {
  --surface-1: rgba(149, 207, 136, 0.9); --plate-text: #0f4d33; --plate-text-2: #0f4d33; --plate-text-3: #165437; --plate-line: rgba(15, 77, 51, 0.14);
  --surface-2: #f6f7ed; --raise: #eaebe1; --raise-hover: #e1e2d8; --paper: #f6f7ed;
  --scrim: rgba(246, 247, 237, 0.985); --veil: rgba(149, 207, 136, 0.86); --halo: #f6f7ed; --bg: #95cf88;
  --line: rgba(15, 77, 51, 0.1); --line-strong: rgba(15, 77, 51, 0.18);
  --text: #0f4d33; --text-2: #1f6b47; --text-3: #2a724f; /* text-3: 4.8:1 at its quietest */
  --accent: #1e488f; --logo: #0f4d33;
  --accent-strong: #001f3f; --accent-text: #1e488f;
  --accent-tint: rgba(30, 72, 143, 0.1); --accent-tint-2: #c6d1d8; --accent-ring: rgba(30, 72, 143, 0.38); --accent-wash: rgba(30, 72, 143, 0.14);
  --on-accent: #f6f7ed; --on-accent-strong: #f6f7ed; /* 8.2:1 on the accent, 15.3:1 on the hover */
  --danger: #c72222; --off: #7a9283; --off-text: #1f6b47; --off-tint: #eaebe1;
  --hand-fill-accent: #a4b5d0; --hand-paper: #f6f7ed; --hand-paper-other: #eaebe1; --hand-ink-arming: #1f6b47; --hand-ink-other: #7a9283; --hand-frame: rgba(15, 77, 51, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #1e488f; --sale-text: #0f4d33; --sale-tint: #eaebe1; /* sale: 8.2:1 edge, text 8.2:1 */
  --rent: #00804c; --rent-text: #0f4d33; --rent-tint: #eaebe1; /* rent: 4.6:1 edge, text 8.2:1 */
  --offer: #001f3f; --offer-text: #0f4d33; --offer-tint: #eaebe1; /* offer: 15.3:1 edge, text 8.2:1 */
  --sold: #7a9283; --sold-text: #1f6b47; --sold-tint: #eaebe1; /* sold: 3.1:1 edge, text 5.4:1 */
}

/* Coral (light) */
html[data-theme="coral"] {
  --surface-1: rgba(249, 130, 99, 0.9); --plate-text: #351e1c; --plate-text-2: #482823; --plate-text-3: #512d26; --plate-line: rgba(53, 30, 28, 0.14);
  --surface-2: #f5f4ed; --raise: #e9e8e1; --raise-hover: #e0dfd8; --paper: #f5f4ed;
  --scrim: rgba(245, 244, 237, 0.985); --veil: rgba(249, 130, 99, 0.86); --halo: #f5f4ed; --bg: #f98263;
  --line: rgba(53, 30, 28, 0.1); --line-strong: rgba(53, 30, 28, 0.18);
  --text: #351e1c; --text-2: #733635; --text-3: #8c5a57; /* text-3: 4.6:1 at its quietest */
  --accent: #733635; --logo: #351e1c;
  --accent-strong: #351e1c; --accent-text: #733635;
  --accent-tint: rgba(115, 54, 53, 0.1); --accent-tint-2: #d8cac5; --accent-ring: rgba(115, 54, 53, 0.38); --accent-wash: rgba(115, 54, 53, 0.14);
  --on-accent: #f5f4ed; --on-accent-strong: #f5f4ed; /* 8.3:1 on the accent, 14.1:1 on the hover */
  --danger: #c72222; --off: #8f8681; --off-text: #733635; --off-tint: #e9e8e1;
  --hand-fill-accent: #bfafb3; --hand-paper: #f5f4ed; --hand-paper-other: #e9e8e1; --hand-ink-arming: #733635; --hand-ink-other: #8f8681; --hand-frame: rgba(53, 30, 28, 0.45);
  /* sale / rent / offer / sold: a thin edge on a neutral pin label, a dot on a neutral pill — the accent for sale, the secondary for rent */
  --sale: #733635; --sale-text: #351e1c; --sale-tint: #e9e8e1; /* sale: 8.3:1 edge, text 12.6:1 */
  --rent: #708c8e; --rent-text: #351e1c; --rent-tint: #e9e8e1; /* rent: 3.3:1 edge, text 12.6:1 */
  --offer: #351e1c; --offer-text: #351e1c; --offer-tint: #e9e8e1; /* offer: 14.1:1 edge, text 12.6:1 */
  --sold: #8f8681; --sold-text: #733635; --sold-tint: #e9e8e1; /* sold: 3.2:1 edge, text 7.4:1 */
}

/* the Theme button's swatches: the plates and the accent of each theme */
.theme-chip[data-value="light"] .swatch { background: linear-gradient(135deg, #ffffff 50%, #a68f42 50%); }
.theme-chip[data-value="dark"] .swatch { background: linear-gradient(135deg, #141414 50%, #af9645 50%); }
.theme-chip[data-value="amber"] .swatch { background: linear-gradient(135deg, #ffb162 50%, #2c3b4d 50%); }
.theme-chip[data-value="fairuz"] .swatch { background: linear-gradient(135deg, #63b8bc 50%, #00666b 50%); }
.theme-chip[data-value="rosy"] .swatch { background: linear-gradient(135deg, #985672 50%, #174871 50%); }
.theme-chip[data-value="caramel"] .swatch { background: linear-gradient(135deg, #e6be9c 50%, #92555b 50%); }
.theme-chip[data-value="jade"] .swatch { background: linear-gradient(135deg, #95cf88 50%, #1e488f 50%); }
.theme-chip[data-value="coral"] .swatch { background: linear-gradient(135deg, #f98263 50%, #733635 50%); }
