:root{--clay-pink:#de84b4;--clay-dark:#9f2f67;--clay-pale:#fff4fa;--clay-line:#efb8d5}
.clay-booking-lock{overflow:hidden}
.clay-booking-modal{align-items:center;background:rgba(34,20,29,.74);display:none;inset:0;justify-content:center;padding:18px;position:fixed;z-index:100000}
.clay-booking-modal.is-open{display:flex}
.clay-booking-panel{background:#fff;border:2px solid var(--clay-line);border-radius:28px;box-shadow:0 26px 75px rgba(61,22,43,.3);max-height:94vh;max-width:820px;overflow:auto;padding:28px;position:relative;width:100%}
.clay-booking-close{align-items:center;background:#222;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:25px;height:42px;justify-content:center;position:absolute;right:16px;top:16px;width:42px}
.clay-booking-kicker{color:var(--clay-dark);font-size:12px;font-weight:900;letter-spacing:.13em;margin:0;text-transform:uppercase}
.clay-booking-panel h2{color:var(--clay-pink);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(36px,7vw,64px);font-style:italic;letter-spacing:.02em;line-height:.95;margin:8px 50px 8px 0;text-transform:uppercase}
.clay-booking-intro{color:#555;font-size:16px;font-style:italic;margin:0 0 22px}
.clay-booking-form{display:grid;gap:18px}
.clay-booking-section{background:var(--clay-pale);border:1px solid var(--clay-line);border-radius:20px;padding:18px}
.clay-booking-section h3{color:var(--clay-dark);font-size:20px;margin:0 0 14px}
.clay-booking-grid{display:grid;gap:13px;grid-template-columns:repeat(2,minmax(0,1fr))}
.clay-booking-field{display:grid;gap:6px}
.clay-booking-field.full{grid-column:1/-1}
.clay-booking-field span,.clay-booking-choice-title{color:#5b3d4d;font-size:13px;font-weight:900}
.clay-booking-field input,.clay-booking-field select,.clay-booking-field textarea{background:#fff;border:2px solid #ecc3d8;border-radius:13px;color:#292529;font:inherit;padding:12px;width:100%}
.clay-booking-field select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,var(--clay-pink) 50%),linear-gradient(135deg,var(--clay-pink) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;box-shadow:0 4px 0 #f2c6dc;cursor:pointer;font-weight:800;padding-right:40px}
.clay-booking-field select:focus{border-color:var(--clay-pink);box-shadow:0 0 0 4px rgba(222,132,180,.18),0 4px 0 #d777aa;outline:none}
.clay-booking-range-row{align-items:center;display:grid;gap:12px;grid-template-columns:1fr auto}
.clay-booking-count{align-items:center;background:var(--clay-pink);border-radius:50%;color:#fff;display:flex;font-size:18px;font-weight:900;height:42px;justify-content:center;width:42px}
.clay-booking-note{background:#fff8cf;border:2px solid #f1cf59;border-radius:13px;color:#734f00;font-size:13px;font-weight:900;margin-top:10px;padding:12px 14px;transform-origin:center}
.clay-finishing-status i{font-size:16px;margin-right:7px}.clay-finishing-status.is-unlocked{background:#e9faef;border-color:#61d794;color:#176b3b}.clay-finishing-status.is-changing{animation:clayUnlockCelebration 1.15s cubic-bezier(.2,.85,.25,1)}
.clay-finishing-status--below{margin-top:16px}
.clay-booking-fee-status{align-items:center;background:#fff8cf;border:2px solid #f1cf59;border-radius:13px;color:#734f00;display:flex;font-size:13px;font-weight:900;gap:9px;margin-top:10px;padding:12px 14px;transform-origin:center}.clay-booking-fee-status>i{font-size:17px}.clay-booking-fee-status strong{font-weight:900}.clay-booking-fee-status.is-waived{background:#e9faef;border-color:#61d794;color:#176b3b}.clay-booking-fee-status.is-changing{animation:clayUnlockCelebration 1.15s cubic-bezier(.2,.85,.25,1)}
.clay-extra-timing-note{background:#fff4b8;border:2px solid #efc84a;border-radius:14px;color:#6d4d00;display:none;font-size:13px;line-height:1.45;margin-top:13px;padding:13px 15px}.clay-extra-timing-note.is-visible{display:block}.clay-extra-timing-note i{font-size:17px;margin-right:7px}.clay-extra-timing-note.is-changing{animation:clayTimingNotice .7s cubic-bezier(.2,.85,.25,1)}
@keyframes clayTimingNotice{0%{box-shadow:0 0 0 rgba(239,200,74,0);opacity:0;transform:translateY(-10px) scale(.97)}45%{box-shadow:0 0 0 7px rgba(239,200,74,.24),0 0 22px rgba(239,200,74,.45);opacity:1;transform:translateY(0) scale(1.025)}100%{box-shadow:none;opacity:1;transform:scale(1)}}
@keyframes clayUnlockCelebration{0%{background:#fff0a8;border-color:#f0c642;box-shadow:0 0 0 rgba(240,198,66,0);transform:translateY(-12px) scale(.96)}30%{background:#fff0a8;box-shadow:0 0 0 9px rgba(240,198,66,.3),0 0 26px rgba(240,198,66,.72);transform:translateY(0) scale(1.035)}65%{box-shadow:0 0 0 5px rgba(97,215,148,.24),0 0 24px rgba(97,215,148,.55);transform:scale(1)}100%{background:#e9faef;border-color:#61d794;box-shadow:0 0 0 rgba(97,215,148,0);transform:scale(1)}}
.clay-booking-options{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
.clay-booking-option{background:#fff;border:2px solid var(--clay-line);border-radius:17px;cursor:pointer;display:block;padding:15px;position:relative}
.clay-booking-option:has(input:checked){background:var(--clay-pink);border-color:var(--clay-dark);box-shadow:0 5px 0 var(--clay-dark),0 10px 24px rgba(159,47,103,.22);color:#fff;transform:translateY(-2px)}
.clay-booking-option:has(input:checked)::after{background:#fff;border-radius:999px;color:var(--clay-dark);content:'✓ SELECTED';font-size:10px;font-weight:950;padding:5px 8px;position:absolute;right:10px;top:10px}
.clay-booking-option input{position:absolute;opacity:0}
.clay-booking-option strong,.clay-booking-option small,.clay-booking-option b{display:block}
.clay-booking-option strong{font-size:18px}.clay-booking-option small{line-height:1.4;margin-top:5px}.clay-booking-option b{font-size:13px;margin-top:9px}
.clay-booking-extra-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}
.clay-booking-extra{background:#fff;border:1px solid var(--clay-line);border-radius:14px;font-size:12px;font-weight:800;padding:12px;text-align:center}
.clay-booking-extra i{color:var(--clay-pink);display:block;font-size:22px;margin-bottom:7px}
.clay-booking-total{align-items:center;background:#2a2427;border-radius:16px;color:#fff;display:flex;font-size:17px;font-weight:900;justify-content:space-between;padding:15px 18px}
.clay-booking-total strong{color:#ffd5ea;font-size:26px}
.clay-booking-submit{background:var(--clay-pink);border:0;border-radius:14px;box-shadow:0 6px 0 var(--clay-dark);color:#fff;cursor:pointer;font-size:17px;font-weight:900;padding:15px 20px}
.clay-booking-submit:disabled{box-shadow:none;opacity:.6;transform:translateY(5px)}
.clay-booking-status{color:var(--clay-dark);font-size:13px;font-weight:800;min-height:18px;text-align:center}
.clay-booking-success{display:none}.clay-booking-success.is-open{display:block}
.clay-booking-success h3{color:var(--clay-dark);font-size:26px;margin:0 0 8px}.clay-booking-success>p{color:#555}
.success-participant-editor{background:#fff7fb;border:2px solid var(--clay-line);border-radius:20px;margin-top:18px;padding:16px}.success-participant-editor-head{align-items:start;display:flex;gap:12px;justify-content:space-between}.success-participant-editor-head strong{color:var(--clay-dark);display:block;font-size:20px}.success-participant-editor-head p{color:#555;font-size:13px;margin:4px 0}.success-participant-editor-head>span{background:var(--clay-pink);border-radius:999px;color:#fff;font-size:12px;font-weight:900;padding:6px 10px}.success-participant-list{display:grid;gap:10px;margin-top:14px;max-height:42vh;overflow:auto}.success-participant-list.is-collapsed .success-participant-row:nth-child(n+6){display:none}.success-participant-row{align-items:end;background:#fff;border:1px solid var(--clay-line);border-radius:14px;display:grid;gap:9px;grid-template-columns:34px minmax(0,1fr) minmax(0,1fr);padding:10px}.success-participant-number{align-items:center;background:var(--clay-pink);border-radius:50%;color:#fff;display:flex;font-weight:900;height:30px;justify-content:center;width:30px}.success-participant-row label span{color:#5b3d4d;display:block;font-size:11px;font-weight:900;margin-bottom:4px}.success-participant-row input{border:1px solid var(--clay-line);border-radius:9px;padding:9px;width:100%}.success-participant-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:14px}.success-participant-save{background:var(--clay-pink);border:0;border-radius:999px;color:#fff;cursor:pointer;font-weight:900;padding:11px 16px}.success-participant-skip,.success-participant-show-all{background:transparent;border:0;color:var(--clay-dark);cursor:pointer;font-weight:900;text-decoration:underline}.success-participant-status{color:var(--clay-dark);font-size:13px;font-weight:800;margin-top:8px}
@media(max-width:650px){.clay-booking-modal{padding:0}.clay-booking-panel{border-radius:0;max-height:100vh;min-height:100vh;padding:22px 16px}.clay-booking-grid,.clay-booking-options{grid-template-columns:1fr}.clay-booking-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
