
:root{--bg:#f4ede6;--panel:#fffaf5;--soft:#efe1d3;--ink:#2f241d;--muted:#756354;--line:#e4d1c0;--accent:#8a6a4f;--accent-dark:#6c503b;--green:#5d8063;--green-soft:#dcebd9;--red:#994d45;--red-soft:#f4d9d4;--shadow:0 22px 60px rgba(66,45,32,.10)}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#f9f4ef 0%,var(--bg) 100%);color:var(--ink);line-height:1.6}
button,input,select,textarea{font:inherit}a{color:inherit}
.client-header{max-width:1180px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.client-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.client-brand img{width:52px;height:52px;border-radius:16px}.client-brand strong,.client-brand small{display:block}.client-brand small{color:var(--muted)}
.client-langs{display:flex;gap:7px}.client-langs a{padding:8px 11px;border-radius:999px;text-decoration:none;background:var(--soft);font-weight:700}.client-langs a.active{background:var(--accent);color:white}
.client-page,.booking-status-page{width:min(92%,1120px);margin:auto;padding:30px 0 70px}
.client-intro{display:grid;grid-template-columns:1fr 240px;gap:30px;align-items:center;padding:38px;background:var(--panel);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);margin-bottom:24px}
.eyebrow{margin:0 0 8px;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800}
.client-intro h1,.status-hero h1{font-size:clamp(36px,6vw,64px);line-height:1.05;margin:0 0 16px}.client-intro p{max-width:720px;color:var(--muted);font-size:18px}.intro-lily{text-align:center}.intro-lily img{width:min(100%,210px);filter:drop-shadow(0 16px 25px rgba(90,63,43,.18))}
.booking-layout{display:grid;gap:16px}.booking-card{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.section-number{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--soft);color:var(--accent);font-weight:800}.section-body h2{margin:3px 0 16px;font-size:23px}
select,input,textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink)}textarea{min-height:120px;resize:vertical}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-grid label{display:grid;gap:6px}.contact-grid label span,.reschedule-form label span{color:var(--muted);font-size:13px;font-weight:700}.contact-grid .full{grid-column:1/-1}
.slot-message{padding:13px 15px;border-radius:14px;background:var(--soft);color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:9px;margin-top:10px}.slot{padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}.slot.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.privacy-check{display:flex;align-items:flex-start;gap:10px;padding:16px}.privacy-check input{width:auto;margin-top:6px}.privacy-check a{color:var(--accent);font-weight:700}
.submit-button,.primary-button{display:inline-block;padding:16px 24px;border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;text-decoration:none;text-align:center;cursor:pointer}.submit-button{width:100%;font-size:18px}.submit-button:hover,.primary-button:hover{background:var(--accent-dark)}
.success-card{display:grid;grid-template-columns:100px 1fr;gap:22px;align-items:center;padding:32px;background:var(--green-soft);border:1px solid #c8ddc5;border-radius:28px;box-shadow:var(--shadow)}.success-card img{width:100px}.success-card h2{margin:0 0 8px;font-size:30px}
.client-alert{padding:14px 16px;border-radius:14px;margin-bottom:18px}.client-alert.error{background:var(--red-soft);color:var(--red)}.client-alert.success{background:var(--green-soft);color:var(--green)}
.client-footer{text-align:center;padding:32px 18px;background:#3b2d24;color:#fffaf5}.client-footer a{margin:0 8px;color:#e2c2aa}.admin-entry{opacity:.65}
.status-hero{display:flex;align-items:center;gap:20px;padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);margin-bottom:18px}.status-hero img{width:90px}.status-hero h1{font-size:42px;margin-bottom:12px}
.public-status{display:inline-block;padding:8px 12px;border-radius:999px;font-weight:800}.status-pending{background:#f2dfc9;color:#a77743}.status-confirmed{background:var(--green-soft);color:var(--green)}.status-cancelled{background:var(--red-soft);color:var(--red)}.status-completed{background:var(--soft);color:var(--accent)}
.status-card,.status-actions{padding:26px;background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);margin-bottom:18px}.status-details{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.status-details div{padding:16px;border-radius:16px;background:var(--soft)}.status-details span,.status-details strong{display:block}.status-details span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.status-actions{display:grid;gap:18px}.reschedule-form{display:grid;gap:12px}.reschedule-form label{display:grid;gap:6px}.danger-button{padding:14px 20px;border:1px solid var(--red);border-radius:999px;background:transparent;color:var(--red);font-weight:800;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.client-header{padding:16px}.client-brand small{display:none}.client-intro{grid-template-columns:1fr;padding:25px}.intro-lily{display:none}.booking-card{grid-template-columns:1fr}.section-number{width:44px;height:44px}.contact-grid,.status-details{grid-template-columns:1fr}.contact-grid .full{grid-column:auto}.success-card{grid-template-columns:1fr;text-align:center}.success-card img{margin:auto}.status-hero{align-items:flex-start}.status-hero img{width:70px}}
