:root{--bg: #f6efe6;--bg-deep: #e8d5c4;--card: #fff7ef;--accent: #b8582a;--accent-dark: #8c3f1d;--ink: #2f221a;--muted: #6f5a4c;--shadow: 0 24px 60px rgba(55, 30, 10, .18)}*{box-sizing:border-box}body{margin:0;font-family:Gill Sans,Trebuchet MS,sans-serif;color:var(--ink);background:radial-gradient(circle at top,#fff4e8,var(--bg) 50%,#e0c8b8);min-height:100vh}.page{max-width:1200px;margin:0 auto;padding:48px 24px 80px;display:flex;flex-direction:column;gap:40px;position:relative;animation:page-in .8s ease-out}.page:before,.page:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;opacity:.35;filter:blur(2px);z-index:-1}.page:before{background:#f2b79a;top:-80px;right:-60px}.page:after{background:#d6a1a1;bottom:-120px;left:-80px}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:32px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;color:var(--muted);margin:0 0 12px}h1{font-family:Palatino Linotype,Book Antiqua,serif;font-size:clamp(40px,5vw,64px);margin:0 0 12px}.subtitle{font-size:18px;max-width:520px;color:var(--muted);line-height:1.5}.hero-card{background:var(--card);padding:24px;border-radius:24px;box-shadow:var(--shadow);border:1px solid #f0dccc;display:grid;gap:12px}.hero-detail{display:flex;justify-content:space-between;font-size:16px}.content{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px}.panel{background:var(--card);padding:28px;border-radius:28px;box-shadow:var(--shadow);border:1px solid #f0dccc;display:flex;flex-direction:column;gap:24px}.form-grid{display:grid;gap:16px}label{font-weight:600;display:grid;gap:8px}select,input{padding:12px 14px;border-radius:12px;border:1px solid #d9c5b4;background:#fff;font-size:16px;color:var(--ink)}.slots{display:grid;gap:16px}.slots-header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.slot{padding:12px;border-radius:14px;border:1px solid #e0c8b8;background:#fff;text-align:left;display:grid;gap:4px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;animation:stagger-in .4s ease both}.slot:nth-child(odd){animation-delay:.05s}.slot:nth-child(2n){animation-delay:.1s}.slot:hover{transform:translateY(-2px);box-shadow:0 8px 18px #371e0a33}.slot.active{border-color:var(--accent);background:#ffe7d7;box-shadow:0 12px 20px #823c144d}.actions{display:grid;gap:12px}.primary{background:var(--accent);color:#fff;border:none;padding:14px 18px;border-radius:16px;font-size:16px;cursor:pointer;transition:background .2s ease}.primary:hover{background:var(--accent-dark)}.message{margin:0;font-weight:600}.admin{background:#f7eee6}.admin-header{display:flex;align-items:center;justify-content:space-between}.admin-list{display:grid;gap:12px}.booking-row{background:#fff;padding:14px 16px;border-radius:16px;border:1px solid #e4d2c3;display:flex;justify-content:space-between;align-items:center;gap:12px}.booking-row span{display:block;color:var(--muted);font-size:14px}.ghost{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:8px 12px;border-radius:12px;cursor:pointer}.hint{font-size:13px;color:var(--muted);margin:0}@keyframes page-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes stagger-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 720px){.page{padding:32px 18px 60px}.slots-header,.booking-row{flex-direction:column;align-items:flex-start}}
