/* Top and detail use the same palette. Theme changes do not change photos, hotel data or layout. */
:root {
  --theme-accent:var(--coral);
  --theme-accent-ink:#fff;
  --theme-soft:var(--sky);
  --theme-surface:#fff;
  --theme-paper:#fff;
  --theme-ink:var(--navy);
  --theme-muted:#5F6E80;
  --theme-border:var(--line);
  --theme-gold:#E8BD65;
}
html[data-site-theme="halloween"] {
  --theme-accent:#673291; --theme-accent-ink:#fff;
  --theme-soft:#F1E8F7; --theme-surface:#FFFDFC; --theme-paper:#FFFAF3;
  --theme-ink:#3D1D53; --theme-muted:#74617D; --theme-border:#E1CCE8;
  --theme-gold:#FFD57A;
}
html[data-site-theme="christmas"] {
  --ink:#243247; --navy:#1C3352; --lagoon:#40668A; --lagoon-deep:#294B70;
  --coral:#365F89; --sky:#FBF4E7; --sky-2:#E7DFD4; --line:rgba(102,76,43,.16);
  --theme-accent:#365F89; --theme-accent-ink:#fff; --theme-soft:#FBF4E7;
  --theme-surface:#FFFEFC; --theme-paper:#FFFCF6; --theme-ink:#1C3352;
  --theme-muted:#6C6970; --theme-border:#E8DECE; --theme-gold:#E2BA6C;
}
html[data-site-theme="sakura"] {
  --ink:#463749; --navy:#45334E; --lagoon:#7B628C; --lagoon-deep:#675177;
  --coral:#776089; --sky:#FFF1F3; --sky-2:#EFDFE7; --line:rgba(116,81,116,.16);
  --theme-accent:#776089; --theme-accent-ink:#fff; --theme-soft:#FFF1F3;
  --theme-surface:#FFFEFF; --theme-paper:#FFF9FA; --theme-ink:#45334E;
  --theme-muted:#7B6776; --theme-border:#EBD6DF; --theme-gold:#D7B070;
}
html[data-site-theme="summer"] {
  --navy:#153E5E; --lagoon:#197BAE; --lagoon-deep:#12628D; --coral:#197BAE;
  --sky:#EDF8FD; --sky-2:#DCEFF8; --line:rgba(24,97,141,.14);
  --theme-accent:#197BAE; --theme-accent-ink:#fff; --theme-soft:#EDF8FD;
  --theme-paper:#fff; --theme-ink:#153E5E; --theme-muted:#60778A; --theme-border:#D6E9F3;
}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"],[data-site-theme="summer"]) body {background:var(--theme-paper)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .areas,
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .hotels {background:var(--theme-paper)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .map {background:linear-gradient(140deg,var(--theme-soft),var(--theme-surface));border-color:var(--theme-border)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .map .pin.on circle {fill:var(--theme-accent)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .area-news,
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .search-card {border-color:var(--theme-border);background:var(--theme-surface)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .area-photo-card.on {border-color:var(--theme-accent)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .area-photo-card.on::after {background:var(--theme-accent)}
html:is([data-site-theme="christmas"],[data-site-theme="sakura"]) .home-pickup {background:var(--theme-soft)}
html[data-site-theme="christmas"] header.site {border-bottom-color:var(--theme-gold);box-shadow:0 2px 0 #E2BA6C55}
html[data-site-theme="christmas"] .section-head .eyebrow {color:#8D682B}
html[data-site-theme="christmas"] footer {background:#162A45}
html[data-site-theme="sakura"] header.site {border-bottom-color:#EBC6D4;box-shadow:0 2px 0 #EBC6D455}
html[data-site-theme="sakura"] .section-head .eyebrow {color:#8D567D}
html[data-site-theme="sakura"] footer {background:#382F48}
/* Calendar and guest controls consume the same accent as the current top-page buttons. */
html:is([data-site-theme="christmas"],[data-site-theme="sakura"],[data-site-theme="summer"]) .stay-calendar,
html:is([data-site-theme="christmas"],[data-site-theme="sakura"],[data-site-theme="summer"]) .home-dialog {--coral:var(--theme-accent);--lagoon:var(--theme-accent);--lagoon-deep:var(--theme-accent)}
.site-season-decor {position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:41;contain:strict}
.site-season-particle {position:absolute;top:10%;width:7px;height:7px;background:var(--theme-gold);border-radius:50%;opacity:.45;animation:kinjo-season-drift 14s ease-in-out infinite}
.site-season-particle--1 {left:2%;top:16%;animation-delay:-2s}
.site-season-particle--2 {left:97%;top:29%;animation-delay:-6s}
.site-season-particle--3 {left:1%;top:56%;animation-delay:-10s}
.site-season-particle--4 {left:98%;top:70%;animation-delay:-4s}
.site-season-particle--5 {left:3%;top:91%;animation-delay:-8s}
.site-season-particle--6 {left:96%;top:9%;animation-delay:-12s}
html[data-site-theme="christmas"] .site-season-particle {box-shadow:0 0 12px #E2BA6C80}
html[data-site-theme="sakura"] .site-season-particle {background:#E9B3C7;border-radius:75% 15% 65% 25%;width:9px;height:12px}
@keyframes kinjo-season-drift {0%,100%{transform:translateY(-8px) rotate(-12deg);opacity:.22}50%{transform:translateY(26px) rotate(30deg);opacity:.5}}
html[data-stay-calendar-open] .site-season-decor,html[data-home-dialog-open] .site-season-decor,html[data-hotel-dialog-open] .site-season-decor {visibility:hidden}
.stay-calendar {--calendar-accent:var(--theme-accent);--calendar-soft:var(--theme-soft);--calendar-line:var(--theme-border);--calendar-button:var(--theme-accent);--calendar-button-text:var(--theme-accent-ink)}
@media(max-width:767px){.site-season-particle--3,.site-season-particle--4,.site-season-particle--5,.site-season-particle--6{display:none}.site-season-particle{opacity:.25}}
@media(prefers-reduced-motion:reduce){.site-season-particle{animation:none}}
