/* Color-only layer. Typography, content, photographs and layout stay in v9. */
:root[data-palette="porcelain"]{
 color-scheme:light;
 --paper:#f7f8fa;--text:#252c36;--quiet:#5b6470;--accent:#405c78;
 --surface:#edf0f4;--field:#ffffff;--mark:#cdd3db;--control:#7c8999;
 --rule:#d1d6dd;--hover:#dfe5ed;--error:#a33934;--veil:#202733a8;
}
:root[data-palette="sage"]{
 color-scheme:light;
 --paper:#eaf0e9;--text:#253a31;--quiet:#52645b;--accent:#41654d;
 --surface:#dce6da;--field:#f3f6f0;--mark:#b8cab8;--control:#7a8f80;
 --rule:#c0cec1;--hover:#cddcca;--error:#943d33;--veil:#1c3028ad;
}
:root[data-palette="rose"]{
 color-scheme:light;
 --paper:#f4eaeb;--text:#442b35;--quiet:#72555f;--accent:#83475c;
 --surface:#ebdadd;--field:#fcf5f5;--mark:#d5b5bc;--control:#ae8894;
 --rule:#d8bec6;--hover:#e0c7d0;--error:#9b3434;--veil:#35212bad;
}
:root[data-palette="dusk"]{
 color-scheme:dark;
 --paper:#242d38;--text:#f0ece5;--quiet:#c1c6cd;--accent:#d4b895;
 --surface:#323e4b;--field:#2c3744;--mark:#566373;--control:#8494a6;
 --rule:#4b5968;--hover:#414f5f;--error:#ffb4a5;--veil:#0e151dcc;
}
:root[data-palette] body{background:var(--paper);color:var(--text)}
:root[data-palette] .site,
:root[data-palette] .site[data-phase],
:root[data-palette] .site[data-warm="off"][data-phase]{
 --b-now:var(--paper);--b-dawn:var(--paper);--b-morning:var(--paper);
 --b-noon:var(--paper);--b-golden:var(--paper);--b-dusk:var(--paper);
 --b-ink:var(--text);--b-muted:var(--quiet);--b-line:var(--rule);
 --b-honey:var(--accent);--b-field:var(--field);--b-glow:transparent;
 --b-night:var(--paper);--b-on-night:var(--text);--b-night-muted:var(--quiet);--b-night-line:var(--rule);
 background:var(--paper);color:var(--text);
}
[data-palette] .site-header,[data-palette] .mobile-book-bar{background:var(--paper);background:color-mix(in srgb,var(--paper) 95%,transparent)}
[data-palette] .site .solid-cta:hover,[data-palette] .site .b-tg:hover{background:var(--accent);color:var(--paper)}
[data-palette] .price-strip>button:hover,[data-palette] .faq-anchor:hover{color:var(--accent)}
[data-palette] .rail-controls button:not(:disabled):hover,
[data-palette] .site .h-carousel-controls button:hover{background:var(--surface)}
[data-palette] .site .work-photo{background:var(--surface)}
[data-palette] .photo-expand,[data-palette] .site .h-place-expand{background:var(--paper);color:var(--text)}
[data-palette] .site .about-mark{color:var(--mark)}
[data-palette] .process-list>li>span{color:var(--accent)}
[data-palette] .site .h-rev{scrollbar-color:var(--mark) transparent}
[data-palette] .site .b-card.on{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--accent)}
[data-palette] .site .b-card:hover{box-shadow:inset 0 0 0 1px var(--control)}
[data-palette] .site .b-card.on:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}
[data-palette] .site .b-field{box-shadow:inset 0 0 0 1px var(--control)}
[data-palette] .site .b-field:focus-within{box-shadow:inset 0 0 0 1.5px var(--accent)}
[data-palette] .site .b-slot{opacity:1}
[data-palette] .site .b-slot:not(.on) .b-sky{opacity:.65}
[data-palette] .site .b-tog{background:var(--control)}
[data-palette] .site .b-tg .ic{color:inherit}
[data-palette] .site .is-empty{color:var(--quiet);opacity:1}
[data-palette] .site input::placeholder,[data-palette] .site textarea::placeholder{color:var(--quiet);opacity:1}
[data-palette] .site select option{background:var(--field);color:var(--text)}
[data-palette] .site .gallery-place-label select{border-color:var(--control)}
[data-palette] .booking-error{color:var(--error)}
[data-palette] .language-status,[data-palette] .request-status{background:var(--surface)}
[data-palette] .site .place-dialog{background:var(--paper);color:var(--text)}
[data-palette] .site .place-dialog p{color:var(--quiet)}
[data-palette] .site dialog::backdrop{background:var(--veil)}
[data-palette] .site .event-dialog input,
[data-palette] .site .event-dialog select,
[data-palette] .site .event-dialog textarea{background:var(--field);border-color:var(--control)}
[data-palette] .site :is(button,a,summary,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
[data-palette] .site .b-field :is(input,select,textarea):focus-visible{outline:none}
[data-palette] ::selection{background:var(--text);color:var(--paper)}
