.aca-booking-root{--aca-bg:#121212;--aca-surface:#1b1b1b;--aca-line:#373535;--aca-white:#faf8f4;--aca-sub:#bab7b1;--aca-gold:#d4c4ac;box-sizing:border-box;width:100%;max-width:1120px;margin:32px auto;background:var(--aca-bg);color:var(--aca-white);padding:clamp(24px,5vw,64px);border:1px solid var(--aca-line);font-family:inherit;line-height:1.5;overflow-wrap:anywhere}
.aca-booking-root *{box-sizing:border-box}
.aca-booking-root [hidden]{display:none!important}
.aca-booking-root .aca-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:600;color:var(--aca-gold);margin:0 0 16px}
.aca-booking-root .aca-heading{font-size:clamp(30px,4.3vw,56px);font-weight:450;line-height:1.14;letter-spacing:-.04em;margin:0 0 18px;color:var(--aca-white)}
.aca-booking-root .aca-heading em{font-weight:350;color:var(--aca-gold)}
.aca-booking-root h3{font-size:clamp(21px,2.5vw,29px);font-weight:500;line-height:1.3;margin:14px 0 10px;color:var(--aca-white)}
.aca-booking-root h4{margin:9px 0;font-size:18px;font-weight:550;color:var(--aca-white)}
.aca-booking-root p{color:var(--aca-sub);margin:8px 0 18px;font-size:15px}
.aca-booking-root a{color:var(--aca-gold)}
.aca-booking-root .aca-lead{font-size:16px;max-width:630px;margin-bottom:35px}
.aca-booking-root .aca-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:25px 0 38px}
.aca-booking-root .aca-steps>span{color:#8f8c88;font-size:12px;text-transform:uppercase;letter-spacing:.075em;padding:12px 5px 14px 0;border-bottom:1px solid #484543}
.aca-booking-root .aca-steps>span.is-active{color:var(--aca-white);border-color:var(--aca-white)}
.aca-booking-root .aca-steps>span.is-done{color:var(--aca-gold);border-color:var(--aca-gold)}
.aca-booking-root .aca-panel{min-height:250px}
.aca-booking-root button,.aca-booking-root input{font:inherit}
.aca-booking-root button{cursor:pointer}
.aca-booking-root button:disabled{opacity:.55;cursor:wait}
.aca-booking-root :is(button,input,a):focus-visible{outline:2px solid var(--aca-gold);outline-offset:3px}
.aca-booking-root .aca-option-list{display:grid;gap:10px;margin:26px 0}
.aca-booking-root .aca-option{width:100%;text-align:left;border:1px solid var(--aca-line);background:var(--aca-surface);color:var(--aca-white);padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:border-color .2s,background .2s}
.aca-booking-root .aca-option:hover,.aca-booking-root .aca-staff-card:hover,.aca-booking-root .aca-time:hover{border-color:var(--aca-gold);background:#252321}
.aca-booking-root .aca-option span:first-child{display:flex;flex-direction:column;gap:7px}
.aca-booking-root .aca-option small{text-transform:uppercase;letter-spacing:.11em;font-size:10px;color:var(--aca-gold)}
.aca-booking-root .aca-option strong{font-weight:550;font-size:16px}
.aca-booking-root .aca-option-meta{white-space:nowrap;text-align:right;color:var(--aca-sub);font-size:13px}
.aca-booking-root .aca-option-meta b{display:block;font-size:15px;font-weight:550;color:var(--aca-white);padding-top:5px}
.aca-booking-root .aca-staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:25px 0}
.aca-booking-root .aca-staff-card{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-height:160px;padding:23px;background:var(--aca-surface);border:1px solid var(--aca-line);color:var(--aca-white);text-align:left}
.aca-booking-root .aca-staff-card strong{font-weight:500;font-size:17px}
.aca-booking-root .aca-staff-card small{color:var(--aca-sub);font-size:12px}
.aca-booking-root .aca-avatar{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid #60564b;border-radius:50%;color:var(--aca-gold);font-size:21px}
.aca-booking-root .aca-label{font-size:13px;display:block;color:var(--aca-sub);margin-top:24px}
.aca-booking-root .aca-input,.aca-booking-root .aca-block-form input{display:block;max-width:100%;width:260px;background:#272625;color:var(--aca-white);color-scheme:dark;padding:13px 15px;margin:8px 0;border:1px solid var(--aca-line);border-radius:0}
.aca-booking-root .aca-time-slots{margin:25px 0}
.aca-booking-root .aca-slots-label{font-size:13px;margin:0 0 12px}
.aca-booking-root .aca-slot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.aca-booking-root .aca-time{padding:13px 7px;background:var(--aca-surface);border:1px solid var(--aca-line);color:var(--aca-white);font-size:14px}
.aca-booking-root .aca-back{display:inline-block;background:none;border:0;color:var(--aca-gold);font-size:13px;padding:16px 0;margin-top:15px}
.aca-booking-root .aca-btn{display:inline-flex;text-decoration:none;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border:1px solid var(--aca-gold);font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;transition:background .2s,color .2s;border-radius:0}
.aca-booking-root .aca-btn-primary{background:var(--aca-gold);color:#191817;border-color:var(--aca-gold)}
.aca-booking-root .aca-btn-primary:hover{background:#f1e5d4;color:#141414}
.aca-booking-root .aca-btn-ghost{background:transparent;color:var(--aca-white)}
.aca-booking-root .aca-btn-ghost:hover{background:#292623;color:var(--aca-white)}
.aca-booking-root .aca-summary{display:grid;gap:14px;padding:28px;margin:25px 0;border:1px solid var(--aca-line);background:var(--aca-surface)}
.aca-booking-root .aca-summary>div{padding-bottom:12px;border-bottom:1px solid #34312e;color:var(--aca-white)}
.aca-booking-root .aca-summary>div:last-child{border:0;padding:0}
.aca-booking-root .aca-note{background:#252422;border:1px solid var(--aca-line);padding:16px 18px;color:var(--aca-sub);font-size:14px}
.aca-booking-root .aca-feedback{font-size:14px;min-height:0;margin:15px 0 0;color:var(--aca-gold)}
.aca-booking-root .aca-feedback.is-error{color:#edaaa6}
.aca-booking-root .aca-success-mark{border:1px solid var(--aca-gold);color:var(--aca-gold);width:57px;height:57px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin:15px 0 20px}
.aca-booking-root .aca-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0 32px}
.aca-booking-root .aca-stats>div{padding:20px;border:1px solid var(--aca-line);background:var(--aca-surface);display:flex;flex-direction:column;gap:6px}
.aca-booking-root .aca-stats strong{font-size:36px;font-weight:450;color:var(--aca-gold)}
.aca-booking-root .aca-stats span{font-size:12px;color:var(--aca-sub)}
.aca-booking-root .aca-booking-row{border-bottom:1px solid var(--aca-line);padding:19px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}
.aca-booking-root .aca-booking-row p{margin:4px 0;color:var(--aca-sub);font-size:13px}
.aca-booking-root .aca-booking-row h4{font-size:16px}
.aca-booking-root .aca-row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px}
.aca-booking-root .aca-small-btn{border:1px solid var(--aca-gold);color:#151515;background:var(--aca-gold);padding:9px 11px;font-size:12px;white-space:nowrap}
.aca-booking-root .aca-small-btn.aca-danger{color:#efb3ae;border-color:#8a4340;background:transparent}
.aca-booking-root .aca-small-btn.aca-muted{background:transparent;color:var(--aca-sub);border-color:var(--aca-line)}
.aca-booking-root .aca-status{display:inline-flex;border:1px solid #625e58;color:var(--aca-sub);padding:4px 8px;font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.aca-booking-root .aca-status-confirmed{border-color:#536e5b;color:#b0d5b9}
.aca-booking-root .aca-status-pending{border-color:#8d754d;color:#ead4a6}
.aca-booking-root .aca-status-declined,.aca-booking-root .aca-status-cancelled{border-color:#6e4a4a;color:#e9aaaa}
.aca-booking-root .aca-subnote{font-size:12px;margin:14px 0 30px}
.aca-booking-root .aca-account>h3{margin:32px 0 16px}
.aca-booking-root .aca-staff-tabs{display:flex;overflow:auto;gap:10px;margin:28px 0 20px;border-bottom:1px solid var(--aca-line)}
.aca-booking-root .aca-staff-tabs button{white-space:nowrap;color:var(--aca-sub);background:transparent;border:0;border-bottom:2px solid transparent;padding:12px 15px;font-size:13px}
.aca-booking-root .aca-staff-tabs button.is-active{color:var(--aca-white);border-color:var(--aca-gold)}
.aca-booking-root .aca-block-form{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:22px 0 30px}
.aca-booking-root .aca-block-form label{font-size:12px;color:var(--aca-sub)}
.aca-booking-root .aca-block-form input{width:auto;min-width:140px}
.aca-booking-root .aca-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}
.aca-booking-root .aca-auth{max-width:580px}
@media(max-width:750px){.aca-booking-root{padding:24px 17px;margin:20px auto}.aca-booking-root .aca-steps{gap:5px;margin-bottom:28px}.aca-booking-root .aca-steps>span{font-size:10px;letter-spacing:0}.aca-booking-root .aca-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aca-booking-root .aca-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.aca-booking-root .aca-booking-row{align-items:stretch;flex-direction:column}.aca-booking-root .aca-row-actions{justify-content:flex-start}}
@media(max-width:420px){.aca-booking-root .aca-staff-grid{grid-template-columns:1fr 1fr}.aca-booking-root .aca-staff-card{padding:15px;min-height:140px}.aca-booking-root .aca-option{padding:17px 13px;gap:10px}.aca-booking-root .aca-option strong{font-size:14px}.aca-booking-root .aca-option-meta{font-size:11px}.aca-booking-root .aca-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.aca-booking-root .aca-stats{gap:5px}.aca-booking-root .aca-stats>div{padding:12px 8px}.aca-booking-root .aca-stats strong{font-size:27px}.aca-booking-root .aca-stats span{font-size:10px}}

.aca-booking-root .aca-reception-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:25px 0 18px}
.aca-booking-root .aca-reception-filters label{font-size:12px;color:var(--aca-sub);display:flex;flex-direction:column;gap:8px}
.aca-booking-root .aca-reception-filters input,.aca-booking-root .aca-reception-filters select{min-height:43px;max-width:100%;color:var(--aca-white);background:#272625;border:1px solid var(--aca-line);padding:10px 12px;color-scheme:dark;font:inherit}
.aca-booking-root .aca-reception-filters select{min-width:220px}
.aca-booking-root .aca-reception-filters input{min-width:165px}
.aca-booking-root .aca-reception-filters button{min-height:43px}
.aca-booking-root .aca-booking-row strong{font-weight:550}
@media(max-width:550px){.aca-booking-root .aca-reception-filters label{width:100%}.aca-booking-root .aca-reception-filters select,.aca-booking-root .aca-reception-filters input{width:100%}}
