.booking-section{padding:85px 0;background:linear-gradient(145deg,#34251d,#201b17)}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:start}.booking-aside{position:sticky;top:35px}.booking-aside p{color:var(--muted);max-width:330px;font-size:13px}.booking-panel{border:1px solid var(--line);padding:35px;background:#19181680}.booking-panel h3{font-size:40px}.booking-panel p{font-size:12px;color:var(--muted)}.booking-progress{display:flex;gap:20px;color:var(--gold);font-size:10px;flex-wrap:wrap;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:12px;color:var(--text);margin-bottom:20px}input,select,textarea{display:block;width:100%;padding:13px 12px;margin-top:8px;color:var(--text);background:#211c18;border:1px solid #d1ad7355;border-radius:0;font:inherit;min-width:0;color-scheme:dark}textarea{min-height:90px}input[type=checkbox]{display:inline-block;width:auto;accent-color:var(--gold);margin:0;flex-shrink:0}input:disabled,button:disabled{opacity:.5;cursor:wait}.field-hint{font-size:11px;color:var(--muted)}.slot-field{border:0;padding:0;margin:28px 0}.slot-field legend{font-size:12px;margin-bottom:15px}.slot-list{display:flex;flex-wrap:wrap;gap:10px}.slot{border:1px solid var(--line);padding:12px;background:transparent;color:var(--text);cursor:pointer;min-width:95px}.slot strong,.slot span{display:block}.slot span{font-size:9px;color:var(--muted)}.slot[aria-pressed=true]{border-color:var(--gold);background:#d1ad7320}.consent{display:flex;gap:12px;align-items:start;font-size:10px;color:var(--muted);margin:25px 0}.consent input{margin-top:5px}.form-feedback{color:#f0bc92;overflow-wrap:anywhere;font-size:12px}.booking-summary{display:grid;grid-template-columns:100px 1fr;font-size:13px;gap:12px}.booking-summary dt{color:var(--muted)}.booking-summary dd{margin:0;overflow-wrap:anywhere}.reference{overflow-wrap:anywhere}.booking-panel .actions{flex-wrap:wrap;gap:12px}.booking-panel .button{gap:15px}.admin-header{height:auto;min-height:100px;padding:24px 5%;display:flex;justify-content:space-between;gap:20px}.admin-header>div{display:flex;gap:10px;align-items:center}.admin-main{width:min(1100px,90%);margin:50px auto}.login-panel{max-width:460px;margin:70px auto;padding:35px;border:1px solid var(--line)}.admin-tabs{display:flex;gap:10px;margin:30px 0;flex-wrap:wrap}.admin-tabs button.active{background:var(--gold);color:#211c18}.admin-top{display:flex;justify-content:space-between;align-items:end;gap:20px}.admin-top h1{font-size:52px;letter-spacing:-1px;margin-bottom:12px}.stats-row{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0;color:var(--gold)}.appointment{border:1px solid var(--line);padding:25px;margin-bottom:16px;background:#251e19}.appointment header{display:flex;justify-content:space-between;gap:15px;height:auto;background:none;border:0;margin-bottom:15px}.appointment h3{font-size:30px;margin:0}.appointment p{font-size:12px;color:var(--muted);margin-bottom:5px}.appointment-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.status-badge{font-size:10px;padding:5px 10px;border:1px solid var(--line);height:max-content;color:var(--gold)}.admin-section{border-top:1px solid var(--line);padding:30px 0}.admin-section h2{font-size:34px}.admin-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:15px 0;border-bottom:1px solid var(--line)}.admin-row label{flex:1;min-width:120px;margin:0}.admin-row .button{padding:12px}.hours-row{display:grid;grid-template-columns:110px 1fr;gap:15px;align-items:center}.hours-row label{margin:0}.hours-row input{margin:8px 0}.service-checks{display:flex;gap:15px;flex-wrap:wrap;width:100%}.service-checks label{flex:none;display:flex;align-items:center;gap:7px;font-size:11px}.admin-settings>.button{margin:25px 0}.admin-settings .consent{font-size:13px}.empty-list{padding:45px;border:1px dashed var(--line);color:var(--muted);text-align:center}.app-booking-teaser{padding:75px 0;border-top:1px solid var(--line);background:#302219}.app-booking-teaser .split{gap:30px}.app-booking-teaser p{color:var(--muted);font-size:13px}.admin-body [hidden],.booking-panel [hidden]{display:none!important}@media(max-width:700px){.booking-layout{grid-template-columns:1fr;gap:35px}.booking-aside{position:static}.booking-panel{padding:25px 20px}.form-grid{grid-template-columns:1fr;gap:0}.admin-header{flex-wrap:wrap}.admin-top{align-items:start;flex-direction:column}.hours-row{grid-template-columns:90px 1fr}.admin-header .logo{font-size:28px}.admin-header .button{padding:10px;font-size:10px}.login-panel{padding:25px}.appointment{padding:20px}.appointment header{flex-direction:column}.admin-row .button{margin-top:12px}}
