:root{--skin-image:linear-gradient(115deg,rgba(255,255,255,.08),rgba(247,252,249,.18)),url('/soft-beach.png');--ink:#18242b;--surface:rgba(255,255,255,.45);--panel:rgba(255,255,255,.4);--day:rgba(252,254,253,.56);--field:rgba(255,255,255,.8);--border:rgba(187,207,203,.78);--own-bg:#c7e9d9;--own-ink:#08734f;--primary-bg:#c9e9dc;--primary-hover:#b5dece;--primary-ink:#18242b;--accent-bg:#e0f0ec;--accent:#227565;--card-opacity:.65}
html[data-skin=beach]{--skin-image:linear-gradient(115deg,rgba(255,255,255,.08),rgba(247,252,249,.18)),url('/soft-beach.png')}
html[data-skin=sunrise]{--skin-image:url('/skin-images/sunrise.webp')}
html[data-skin=dusk]{--skin-image:url('/skin-images/dusk.webp')}
html[data-skin=ocean]{--skin-image:url('/skin-images/ocean.webp')}
html[data-skin=lagoon]{--skin-image:url('/skin-images/lagoon.webp')}
html[data-skin=forest]{--skin-image:url('/skin-images/forest.webp')}
html[data-skin=meadow]{--skin-image:url('/skin-images/meadow.webp')}
html[data-skin=alpine]{--skin-image:url('/skin-images/alpine.webp')}
html[data-skin=desert]{--skin-image:url('/skin-images/desert.webp')}
html[data-skin=canyon]{--skin-image:url('/skin-images/canyon.webp')}
html[data-skin=lavender]{--skin-image:url('/skin-images/lavender.webp')}
html[data-skin=rose]{--skin-image:url('/skin-images/rose.webp')}
html[data-skin=sakura]{--skin-image:url('/skin-images/sakura.webp')}
html[data-skin=citrus]{--skin-image:radial-gradient(circle at 80% 70%,#f9e995,transparent 36%),linear-gradient(135deg,#fff9e6,#e7edba 55%,#b5d2ae)}
html[data-skin=aurora]{--skin-image:url('/skin-images/aurora.webp')}
html[data-skin=starlight]{--skin-image:radial-gradient(circle at 80% 20%,#e8dfef,transparent 16%),radial-gradient(circle at 17% 66%,#e5e5f3,transparent 22%),linear-gradient(140deg,#e4e8f5,#aaaed3 65%,#818fb7)}
html[data-skin=snowfall]{--skin-image:url('/skin-images/snowfall.webp')}
html[data-skin=clouds]{--skin-image:url('/skin-images/clouds.webp')}
html[data-skin=terracotta]{--skin-image:radial-gradient(circle at 82% 77%,#ddb5a1,transparent 42%),linear-gradient(130deg,#faf1e9,#e9d0bf 55%,#c99984)}
html[data-skin=slate]{--skin-image:radial-gradient(circle at 70% 20%,#d6e2e9,transparent 35%),linear-gradient(130deg,#f1f5f6,#b6c9d2 55%,#879dab)}
html[data-skin=linen]{--skin-image:repeating-linear-gradient(90deg,rgba(151,133,111,.06) 0 1px,transparent 1px 5px),linear-gradient(130deg,#fffdf7,#ece8dc 60%,#d9d8ca)}
html[data-mode=dark]{--ink:#f1f5f6;--surface:rgba(22,31,43,.78);--panel:rgba(16,26,39,.7);--day:rgba(28,41,54,.78);--field:rgba(20,31,43,.92);--border:rgba(177,199,212,.35);--own-bg:#204f48;--own-ink:#a8f0d4;--primary-bg:#245e61;--primary-hover:#327477;--primary-ink:#f7fbfb;--accent-bg:rgba(82,153,151,.28);--accent:#a7e8df}
html[data-scene=true][data-mode=light]{--surface:rgba(255,255,255,.73);--panel:rgba(255,255,255,.66);--day:rgba(255,255,255,.7)}
html[data-text=ink]{--ink:#18242b}html[data-text=navy]{--ink:#153653}html[data-text=plum]{--ink:#553150}html[data-text=pine]{--ink:#194b3f}html[data-text=cocoa]{--ink:#553a2d}
html[data-text=cloud]{--ink:#f1f5f6}html[data-text=ice]{--ink:#d9f3ff}html[data-text=lilac]{--ink:#f0e1ff}html[data-text=mint]{--ink:#dcf8ec}html[data-text=peach]{--ink:#ffe8db}
html[data-highlight=ocean]{--own-bg:#c7e6f6;--own-ink:#07597e;--primary-bg:#c6e6f5;--primary-hover:#afd9eb;--accent-bg:#dbeefa;--accent:#17688c}
html[data-highlight=coral]{--own-bg:#f9d5ca;--own-ink:#8e3d30;--primary-bg:#f8d4c7;--primary-hover:#f1c2b1;--accent-bg:#fce8e1;--accent:#a44738}
html[data-highlight=amber]{--own-bg:#f8e6bc;--own-ink:#765314;--primary-bg:#f5e0ab;--primary-hover:#f0d490;--accent-bg:#fbf0d4;--accent:#805e19}
html[data-highlight=violet]{--own-bg:#e6d9f8;--own-ink:#613b83;--primary-bg:#e4d8f5;--primary-hover:#d8c6ef;--accent-bg:#f0e9fa;--accent:#70509b}
html[data-highlight=rose]{--own-bg:#f7d8e4;--own-ink:#903b60;--primary-bg:#f6d5e3;--primary-hover:#efbfd3;--accent-bg:#fbe8ef;--accent:#9d4a6c}
html[data-mode=dark][data-highlight=ocean]{--own-bg:#1d4960;--own-ink:#a5e6ff;--primary-bg:#245b75;--primary-hover:#30718f;--primary-ink:#f7fbfb;--accent-bg:#1c4052;--accent:#a5e6ff}
html[data-mode=dark][data-highlight=coral]{--own-bg:#63413c;--own-ink:#ffd4c7;--primary-bg:#80514b;--primary-hover:#976058;--primary-ink:#fff;--accent-bg:#553a38;--accent:#ffd4c7}
html[data-mode=dark][data-highlight=amber]{--own-bg:#5b4a2c;--own-ink:#ffe5aa;--primary-bg:#735c31;--primary-hover:#8c7040;--primary-ink:#fff;--accent-bg:#51452e;--accent:#ffe5aa}
html[data-mode=dark][data-highlight=violet]{--own-bg:#514366;--own-ink:#e7d3ff;--primary-bg:#64527d;--primary-hover:#796492;--primary-ink:#fff;--accent-bg:#40374f;--accent:#e7d3ff}
html[data-mode=dark][data-highlight=rose]{--own-bg:#603e51;--own-ink:#ffd8e9;--primary-bg:#795066;--primary-hover:#906077;--primary-ink:#fff;--accent-bg:#523747;--accent:#ffd8e9}
body{background-image:var(--skin-image);background-position:center;background-size:cover;background-attachment:fixed;color:var(--ink)}
html[data-mode=dark] body{background-image:linear-gradient(rgba(4,12,24,.6),rgba(4,12,24,.68)),var(--skin-image)}
.sidebar,.page-header,.calendar-panel,.utility-panel,.surface,.auth-card,.flow-panel{background:var(--panel);border-color:var(--border);backdrop-filter:blur(8px)}
.sidebar,.surface,.auth-card{background:var(--surface)}.day,.day.weekend{background:var(--day);border-color:var(--border)}
.page-header,.calendar-panel,.utility-panel,.surface,.auth-card,.flow-panel,.waitlist-dialog,.day,.day.weekend,.my-day:not(.booked):not(.waiting):not(.pending){background:rgba(255,255,255,var(--card-opacity))}
html[data-mode=dark] .page-header,html[data-mode=dark] .calendar-panel,html[data-mode=dark] .utility-panel,html[data-mode=dark] .surface,html[data-mode=dark] .auth-card,html[data-mode=dark] .flow-panel,html[data-mode=dark] .waitlist-dialog,html[data-mode=dark] .day,html[data-mode=dark] .day.weekend,html[data-mode=dark] .my-day:not(.booked):not(.waiting):not(.pending){background:rgba(16,26,39,var(--card-opacity))}
.day.mine,.day.selected{background:var(--accent-bg);border-color:var(--accent)}.slot.filled,.slot.open{background:var(--surface)}.slot.own{background:var(--own-bg)}
html[data-mode=dark] .day.mine,html[data-mode=dark] .day.selected{background:var(--accent-bg);border-color:var(--accent)}
input,select,.admin-booking select{background:var(--field);border-color:var(--border);color:var(--ink)}
.secondary,.icon-button,.view-toggle,.view-toggle button[aria-pressed=true],.profile-chip,.notice,.flow-status,.flow-result,.admin-booking{background:var(--surface);border-color:var(--border)}
.nav-item.active,.nav-item:hover{background:var(--accent-bg)}.primary{background:var(--primary-bg);border-color:var(--border)}.primary:hover{background:var(--primary-hover)}
.appearance-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:1rem;min-height:0;flex:1;padding-top:1rem}
.appearance-skins{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(70px,1fr);gap:.5rem;padding:.15rem .35rem .35rem .1rem}
.skin-choice{display:flex;align-items:end;min-width:0;padding:.4rem;border:2px solid var(--border);border-radius:13px;background-image:var(--skin-image);background-position:center;background-size:cover;box-shadow:0 3px 10px rgba(30,50,60,.12);text-align:left}
.skin-choice[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),0 4px 12px rgba(30,50,60,.15)}
.skin-choice span{display:block;min-width:0;max-width:100%;padding:.24rem .5rem;border-radius:7px;background:rgba(255,255,255,.9);color:#172630!important;font-size:.74rem;font-weight:800;line-height:1.1;overflow-wrap:anywhere}
.appearance-settings{display:grid;align-content:start;gap:.75rem;margin:0}.appearance-settings label{max-width:none}.appearance-settings select{width:100%;border-radius:9px;padding:.6rem}.appearance-settings p{margin:0}.appearance-actions{display:flex;gap:.4rem;flex-wrap:wrap}.appearance-status{min-height:1.2rem;font-size:.8rem;font-weight:750}
.transparency-control>span{display:flex;justify-content:space-between;gap:.5rem}.transparency-control output{font-variant-numeric:tabular-nums}.appearance-settings .transparency-control input{width:100%;padding:0;accent-color:var(--accent);cursor:pointer}.transparency-control small{font-size:.7rem}
.backup-form{display:flex;align-items:end;gap:.7rem;flex-wrap:wrap}.backup-form label{min-width:190px}.backup-form .backup-switch{display:flex;align-items:center;gap:.5rem;align-self:center;min-width:100%;font-size:.85rem}.backup-switch input{width:18px;height:18px;accent-color:var(--accent)}.backup-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.email-request-settings{display:grid;gap:.55rem;justify-items:start}.email-request-settings .setting-switch{display:flex;align-items:center;gap:.65rem;max-width:none;font-size:.86rem}.setting-switch input{width:18px;height:18px;accent-color:var(--accent)}.email-request-settings p{margin:0 0 .35rem 1.9rem;font-size:.76rem}.email-request-settings button{margin-top:.3rem}
.admin-booking{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(190px,260px);align-items:center;gap:.7rem;margin:.25rem 0 .55rem;padding:.7rem .85rem;border:2px solid var(--accent);border-radius:12px;background:var(--accent-bg);box-shadow:0 3px 12px rgba(30,70,65,.08)}
.admin-booking-copy{display:grid;gap:.15rem}.admin-booking-copy strong{font-size:.82rem}.admin-booking-copy span{font-size:.72rem;opacity:.82}.admin-booking label{font-size:.76rem;white-space:nowrap}.admin-booking select{width:100%;min-width:0;padding:.55rem .65rem;border:1px solid var(--accent);border-radius:9px;font:inherit;font-size:.82rem;font-weight:700}
.selection-actions button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.admin-booking{grid-template-columns:1fr minmax(0,1fr)}.admin-booking-copy{grid-column:1/-1}}
@media(max-width:1000px){.appearance-layout{grid-template-columns:1fr}.appearance-skins{grid-template-columns:repeat(4,minmax(0,1fr));max-height:45vh}.appearance-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-actions,.appearance-status{grid-column:1/-1}}
@media(max-width:640px){.appearance-skins{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.appearance-layout{display:block}.appearance-settings{margin-top:1rem}.appearance-panel{min-height:calc(100dvh - 130px)}}
