:root{--brand:#6b3f2d;--paper:#efe7dc;--ink:#1a2433;--muted:#6b7280;--ok:#3b7e41;--warn:#b7791f;--full:#9b2c2c;--card:#f5efe6;--radius:18px}*{box-sizing:border-box}body{background:#fff;color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',Roboto,Inter,Arial,sans-serif;margin:0}.page-header{margin:0 auto;max-width:1100px;padding:32px 16px 8px}.page-header h1{font-size:36px;margin:0 0 8px}.page-header p{color:var(--muted);margin:0}.tabs{display:flex;gap:8px;margin:12px auto 8px;max-width:1100px;padding:0 16px}.tab-btn{background:#fff;border:2px solid var(--brand);border-radius:999px;color:var(--brand);cursor:pointer;font-weight:700;padding:10px 14px}.tab-btn.active{background:var(--brand);color:#fff}.tab-panel{display:none;margin:0 auto;max-width:1100px;padding:8px 16px 40px}.tab-panel.active{display:block}.grid{display:grid;gap:24px;grid-template-columns:1.05fr 0.95fr}@media (width <= 900px){.grid{grid-template-columns:1fr}}.cal-card{background:var(--card);border-radius:var(--radius);box-shadow:0 10px 20px rgb(0 0 0 / 7%);padding:14px}.cal-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px;padding:8px 6px}.cal-head .title{font-weight:800}.cal-head .nav{background:var(--brand);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:22px;height:40px;width:40px}.cal{display:grid;gap:6px;grid-template-columns:repeat(7,1fr)}.cal .day,.cal .wk{border-radius:10px;padding:7px 4px;text-align:center}.cal .wk{color:var(--muted);font-weight:700}.cell{background:#fff;border:1px solid #eee;border-radius:12px;cursor:pointer;padding:10px 0;position:relative;user-select:none}.cell.inactive{cursor:not-allowed;opacity:.35}.cell.full{background:linear-gradient(180deg,#fff,#fde8e8);border-color:#f5cccc}.cell.partial{background:linear-gradient(180deg,#fff,#fff7ea);border-color:#ffe3b3}.cell.range{outline:3px solid var(--brand)}.cell.end::after,.cell.start::after{background:var(--brand);border-radius:50%;bottom:6px;content:'';height:8px;left:50%;position:absolute;transform:translateX(-50%);width:8px}.legend{align-items:center;color:var(--muted);display:flex;gap:12px;margin-top:10px}.legend .dot{border:1px solid #ddd;border-radius:50%;display:inline-block;height:10px;margin-right:4px;width:10px}.legend .dot.free{background:#e9f7ea;border-color:#d3edd6}.legend .dot.partial{background:#fff7ea;border-color:#ffe3b3}.legend .dot.full{background:#fde8e8;border-color:#f5cccc}.booking-form{background:#fff;border-radius:var(--radius);box-shadow:0 10px 20px rgb(0 0 0 / 7%);padding:16px;position:sticky;top:12px}.booking-form h3{margin:0 0 8px}label{display:block;font-size:14px;font-weight:600;margin:10px 0 6px}input,select,textarea{border:2px solid #dfe3e8;border-radius:12px;font-size:16px;padding:12px;width:100%}.split{display:grid;gap:12px;grid-template-columns:1fr 1fr}@media (width <= 640px){.split{grid-template-columns:1fr}}.consent{align-items:flex-start;display:flex;font-weight:500;gap:10px}.cta{background:var(--brand);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:800;margin-top:8px;padding:14px 18px}.cta:hover{box-shadow:0 8px 18px rgb(107 63 45 / 25%);transform:translateY(-1px)}