.genetta-booking{margin-top:30px}.booking-preview-note{font-size:14px;color:var(--muted);border-left:2px solid var(--green);padding:4px 0 4px 16px;margin-bottom:24px;max-width:none}.booking-layout{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.5fr);border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.booking-context{padding:36px;background:var(--soft);border-right:1px solid var(--line)}.booking-context h2{font-size:28px;max-width:290px}.booking-context p{font-size:16px;color:var(--muted)}.booking-duration{border:0;padding:0;margin:30px 0 24px;display:flex;gap:10px}.booking-duration legend{font-size:14px;margin-bottom:10px}.booking-duration label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;margin:0;font-size:14px}.booking-duration input{width:auto;margin:0;accent-color:var(--blue)}.booking-context label{font-size:14px}.booking-context select{font-size:14px;border-radius:8px}.booking-summary{margin-top:28px;line-height:1.8}.booking-main{padding:32px 40px;min-width:0}.booking-main h2{font-size:25px;margin:0 0 26px}.booking-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.booking-calendar-head strong{font-weight:500;text-transform:capitalize}.booking-calendar-head button{width:40px;height:40px;border:0;background:transparent;color:var(--ink);font-size:26px}.booking-weekdays,.booking-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.booking-weekdays span{text-align:center;color:var(--muted);font-size:12px;padding:8px 0}.booking-days button{min-height:42px;padding:8px 0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:15px}.booking-days button:hover:not(:disabled){background:var(--pale)}.booking-days button[aria-current=date]{border-color:var(--line)}.booking-days button[aria-pressed=true]{background:var(--title);color:var(--bg)}.booking-main button:disabled{opacity:.35;cursor:not-allowed}.booking-main h3{font-size:16px;margin:25px 0 12px}.booking-slots{width:100%;max-width:320px;min-height:48px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:12px;font:inherit;font-size:16px;cursor:pointer}.booking-slots:focus-visible{outline:2px solid var(--title);outline-offset:3px}.booking-slots:disabled{opacity:.5;cursor:not-allowed}.booking-status{font-size:14px;line-height:1.6;color:var(--muted);margin:16px 0;min-height:22px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-main form{max-width:none}.booking-main input{border-radius:8px;font-size:16px}.booking-selection{background:var(--pale);padding:16px;border-radius:8px;font-size:15px;margin-bottom:26px;color:var(--ink)}.booking-main label{font-size:14px}.booking-main .btn{border-radius:8px}.booking-main .actions{gap:10px}@media(max-width:760px){.booking-layout{grid-template-columns:1fr}.booking-context{padding:24px;border-right:0;border-bottom:1px solid var(--line)}.booking-context h2{max-width:none;font-size:25px}.booking-main{padding:24px 18px}.booking-summary{margin-top:16px}.booking-duration{margin:20px 0}.booking-fields{grid-template-columns:1fr;gap:0}}@media(max-width:380px){.booking-days{gap:2px}.booking-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}
