#horizon-booking-demo .hs-page{padding-bottom:24px}
#horizon-booking-demo #hd-page-settings{padding:24px}
#horizon-booking-demo #hd-page-settings>.hs-settings-heading{margin:2px 0 22px;padding:0 0 14px;border-bottom:1px solid var(--hd-line)}
#horizon-booking-demo #hd-page-settings>.hs-settings-heading h2{font-family:'Segoe UI',system-ui,sans-serif;font-size:24px;font-weight:650;line-height:1.25;letter-spacing:-.3px;margin:0}
#horizon-booking-demo #hd-page-settings>.hs-settings-heading p{margin:6px 0 0;max-width:60ch;font-size:12px;line-height:1.5;color:var(--hd-secondary)}
@media(max-width:600px){#horizon-booking-demo #hd-page-settings{padding:18px}}
#horizon-booking-demo .hs-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}
#horizon-booking-demo .hs-card{border:1px solid #43516e;border-radius:14px;background:linear-gradient(135deg,#202c43,#151e2f);padding:20px;margin-bottom:16px;min-width:0}
#horizon-booking-demo .hs-card h3{font-size:16px;margin:0 0 10px;color:#f1f5ff}
#horizon-booking-demo .hs-card p{font-size:12px;color:#b8c8df;line-height:1.6;margin:4px 0 14px}
#horizon-booking-demo .hs-card label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#d0dcef;margin-bottom:12px}
#horizon-booking-demo .hs-profiles{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:18px;align-items:center}
#horizon-booking-demo .hs-profiles label{margin:0}
#horizon-booking-demo .hs-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
#horizon-booking-demo .hs-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 22px}
#horizon-booking-demo .hs-preset{border:1px solid #536381;background:#192337;color:#eaf0fc;border-radius:10px;padding:13px 10px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:9px;min-width:0}
#horizon-booking-demo .hs-preset[aria-pressed=true]{border-color:#f384b7;box-shadow:0 0 0 1px #f384b750;background:#30263f}
#horizon-booking-demo .hs-preset span{font-size:10px;line-height:1.5;color:#b3c3df}
#horizon-booking-demo .hs-swatches{display:flex;height:22px;gap:3px;width:100%;border-radius:5px;overflow:hidden}
#horizon-booking-demo .hs-swatches i{flex:1}
#horizon-booking-demo .hs-range{display:grid!important;grid-template-columns:1fr auto;align-items:center}
#horizon-booking-demo .hs-range input{grid-column:1/-1;width:100%;accent-color:#ec4899}
#horizon-booking-demo .hs-range output{color:#ffb3d6;font-variant-numeric:tabular-nums}
#horizon-booking-demo .hs-check{flex-direction:row!important;align-items:center;gap:9px!important}
#horizon-booking-demo .hs-colour-preview{display:flex;align-items:center;gap:22px;border-top:1px solid #41516b;padding-top:16px}
#horizon-booking-demo .hs-preview-jobs{display:grid;gap:8px;flex:1}
#horizon-booking-demo .hs-preview-job{border-radius:7px;padding:9px 12px;font-size:12px;font-weight:600}
#horizon-booking-demo .hs-card-heading{display:flex;gap:18px;justify-content:space-between;align-items:flex-start}
#horizon-booking-demo .hs-boundary-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#horizon-booking-demo [data-hs-band][aria-pressed=true]{border-color:#e8a6d0;color:#ffb8dc}
#horizon-booking-demo .hs-pricing-map{height:460px;border:1px solid #60728b;border-radius:11px;margin:12px 0 15px;overflow:hidden;position:relative}
#horizon-booking-demo .hmp-pricing-vertex{width:15px;height:15px;padding:0;border-radius:50%;border:2px solid #fff;background:var(--vertex-color,#79baff);box-shadow:0 0 0 3px #06111cb3;cursor:grab;touch-action:none}
#horizon-booking-demo .hmp-pricing-vertex:focus-visible{outline:3px solid #ff4fa3;outline-offset:4px}
#horizon-booking-demo .hs-save-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #44516c;border-radius:12px;background:#182238;padding:15px;position:sticky;bottom:10px;z-index:6;box-shadow:0 6px 25px #0005}
#horizon-booking-demo .hs-save-bar #hs-status{margin-right:auto;color:#b6c8e1;font-size:12px}
#horizon-booking-demo #hs-error{color:#ffaccc;flex-basis:100%;margin:0}
#horizon-booking-demo #hs-error:empty{display:none}
#horizon-booking-demo[data-density=compact] .hd-lane:not(.hd-vacant-lane),#horizon-booking-demo[data-density=compact] .hd-lane:not(.hd-vacant-lane) .hd-track{min-height:54px}
#horizon-booking-demo[data-density=compact] .hd-job{font-size:10px}
#horizon-booking-demo .hc-confirm-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px}
#horizon-booking-demo .hc-confirm-controls label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#c0d0e8}
#horizon-booking-demo .hc-quote-help{font-size:11px;line-height:1.5;color:#afc0d9;margin:0 0 12px}
#horizon-booking-demo .hd-draft-preview{pointer-events:auto;padding-left:16px;padding-right:16px}
#horizon-booking-demo .hd-draft-resize{position:absolute;top:0;bottom:0;width:15px;border:0;border-radius:0;background:transparent;cursor:ew-resize;touch-action:none;padding:0;z-index:6}
#horizon-booking-demo .hd-draft-resize::after{content:'';position:absolute;left:6px;top:calc(50% - 10px);width:3px;height:20px;border-radius:2px;background:#ffbadb}
#horizon-booking-demo .hd-draft-resize[data-draft-side=start]{left:0}
#horizon-booking-demo .hd-draft-resize[data-draft-side=end]{right:0}
#horizon-booking-demo .hd-track:has(.hd-draft-preview) .hd-empty-lane{visibility:hidden}
#horizon-booking-demo .hd-draft-resize:focus-visible{outline:2px solid #fff;outline-offset:-2px}
@media(max-width:900px){#horizon-booking-demo .hs-grid{grid-template-columns:1fr}#horizon-booking-demo .hs-profiles{grid-template-columns:1fr 1fr}#horizon-booking-demo .hs-card-heading{flex-direction:column}#horizon-booking-demo .hs-boundary-buttons{justify-content:flex-start}}
@media(max-width:560px){#horizon-booking-demo .hs-profiles,#horizon-booking-demo .hs-fields{grid-template-columns:1fr}#horizon-booking-demo .hs-presets{grid-template-columns:1fr}#horizon-booking-demo .hs-pricing-map{height:350px}#horizon-booking-demo .hc-confirm-controls{grid-template-columns:1fr}}

/* Leave page-scroll gutters beside the boundary editor. */
#horizon-booking-demo .hs-pricing-map{width:min(840px,calc(100% - 80px));height:360px;margin:16px auto;box-sizing:border-box}
#horizon-booking-demo .hs-staff-card #hd-staff-settings{margin:0}
#horizon-booking-demo .hs-staff-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#horizon-booking-demo .hs-staff-card .hd-team-admin{border-top:1px solid #52617a;padding-top:18px;margin-top:20px}
#horizon-booking-demo .hs-staff-card #hd-team-form{max-width:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px}
#horizon-booking-demo .hs-staff-card #hd-team-form button{justify-self:start;grid-column:1/-1}
@media(max-width:720px){#horizon-booking-demo .hs-staff-fields,#horizon-booking-demo .hs-staff-card #hd-team-form{grid-template-columns:1fr 1fr}#horizon-booking-demo .hs-pricing-map{width:calc(100% - 48px);height:320px}}
@media(max-width:460px){#horizon-booking-demo .hs-staff-fields,#horizon-booking-demo .hs-staff-card #hd-team-form{grid-template-columns:1fr}}

/* Draft palette is independent of booked-job colours. Automatic preserves Bubble/Dark pink. */
#horizon-booking-demo{--hd-draft-fill:#5d7f9c26;--hd-draft-edge:#5d7f9c;--hd-draft-grip:#5d7f9c;--hd-draft-ink:#283f54}
#horizon-booking-demo[data-draft-colour=teal]{--hd-draft-fill:#4e858226;--hd-draft-edge:#4e8582;--hd-draft-grip:#4e8582;--hd-draft-ink:#254743}
#horizon-booking-demo[data-draft-colour=lavender]{--hd-draft-fill:#87739f26;--hd-draft-edge:#87739f;--hd-draft-grip:#87739f;--hd-draft-ink:#473557}
#horizon-booking-demo[data-draft-colour=amber]{--hd-draft-fill:#a0804726;--hd-draft-edge:#a08047;--hd-draft-grip:#a08047;--hd-draft-ink:#60491f}
#horizon-booking-demo[data-draft-colour=pink],#horizon-booking-demo[data-draft-colour=auto]:is([data-horizon-theme=bubbles],[data-horizon-theme=horizon]){--hd-draft-fill:#ef16792c;--hd-draft-edge:#fb4e9b;--hd-draft-grip:#ffbadb;--hd-draft-ink:var(--hd-fg,#fff)}
#horizon-booking-demo:is([data-horizon-theme=bubbles],[data-horizon-theme=horizon]){--hd-draft-ink:#fff}
#horizon-booking-demo .hd-draft-preview{background:var(--hd-draft-fill)!important;border-color:var(--hd-draft-edge)!important;border-style:dashed;color:var(--hd-draft-ink)!important;pointer-events:auto;touch-action:none;user-select:none;cursor:grab;padding:6px 16px;font-size:10px;font-weight:normal;isolation:isolate}
#horizon-booking-demo .hd-draft-label{pointer-events:none}
#horizon-booking-demo .hd-draft-resize{width:min(24px,30%);min-width:0;min-height:0;height:auto;margin:0;box-sizing:border-box;background:transparent!important;box-shadow:none;touch-action:none;cursor:ew-resize}
#horizon-booking-demo .hd-draft-resize::after{top:calc(50% - 10px);width:3px;height:20px;background:var(--hd-draft-grip)!important;box-shadow:none}
#horizon-booking-demo .hd-draft-resize.is-start::after{left:6px;right:auto}
#horizon-booking-demo .hd-draft-resize.is-end::after{left:auto;right:6px}
#horizon-booking-demo .hd-draft-resize:focus-visible{outline:2px solid var(--hd-fg,#fff);outline-offset:-2px}
#horizon-booking-demo .hd-draft-preview.is-conflict{background:#f13a3940!important;border-color:#ff8e98!important}
#horizon-booking-demo.hd-draft-dragging,#horizon-booking-demo.hd-draft-dragging *{cursor:ew-resize!important;user-select:none}
