#horizon-booking-demo{overflow:clip}
#horizon-booking-demo .hd-rec-rank{margin:0 0 6px;font-size:12px;font-weight:700;line-height:1.5;color:var(--hd-text)}
#horizon-booking-demo.hd-editing .hd-planner-sticky{position:sticky;top:0;z-index:8;background:var(--hd-bg);border-bottom:1px solid #40506a;box-shadow:0 8px 18px #0003}
#horizon-booking-demo .hd-editor-workspace{margin:0 16px 14px}
#horizon-booking-demo.hd-editing .hd-editor-workspace{position:sticky;top:var(--hd-planner-height,305px);z-index:7;background:var(--hd-bg)}
#horizon-booking-demo .hd-inline-editor[open]{position:relative;inset:auto;display:block;width:100%;max-width:none;max-height:max(180px,calc(100dvh - var(--hd-planner-height,305px) - 30px));margin:0;padding:18px 20px;overflow:auto;border:1px solid #56617a;border-radius:12px;box-sizing:border-box;box-shadow:0 5px 20px #0003}
#horizon-booking-demo .hd-inline-editor:not([open]){display:none}
#horizon-booking-demo .hd-inline-editor h2{font-size:20px;line-height:1.3;margin:0 0 10px}
#horizon-booking-demo .hd-editor-heading p{font-size:11px;color:#aab8cc;margin:0 0 12px}
#horizon-booking-demo .hd-booking-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
#horizon-booking-demo .hd-booking-confirmation{margin:0}
#horizon-booking-demo .hd-booking-time-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
#horizon-booking-demo .hd-quarter-time{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:4px}
#horizon-booking-demo .hd-quarter-time select{min-width:0;padding:7px 5px;font-size:13px;height:36px}
#horizon-booking-demo .hd-quarter-time span{font-size:13px;color:#aab7cb}
#horizon-booking-demo .hd-booking-time-fields>.hd-label{margin:0}
#horizon-booking-demo .hd-customer-fields{border:0;border-top:1px solid #3a465c;padding:12px 0 0;margin:0 0 12px;min-width:0}
#horizon-booking-demo .hd-customer-fields legend{font-size:12px;font-weight:650;color:#d9e3f3;padding-right:8px}
#horizon-booking-demo .hd-customer-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
#horizon-booking-demo .hd-customer-address-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}
#horizon-booking-demo .hd-customer-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#horizon-booking-demo .hd-customer-fields .hd-label,#horizon-booking-demo .hd-customer-notes-grid .hd-label{margin:0;font-size:11px;font-weight:550;color:#bac8dc}
#horizon-booking-demo .hd-customer-fields input,#horizon-booking-demo .hd-customer-fields select{height:35px;padding:7px 10px;margin-top:4px;font-size:13px;width:100%}
#horizon-booking-demo .hd-customer-notes-grid textarea{margin-top:4px;width:100%;min-height:62px}
#horizon-booking-demo .hd-inline-editor .hd-dialog-actions{position:sticky;bottom:-18px;background:#1c2433;border-top:1px solid #3f4b62;padding:10px 0 5px;margin-top:10px;z-index:2}
#horizon-booking-demo .hd-inline-editor [role=alert]:empty{display:none}
#horizon-booking-demo .hd-draft-status{font-size:11px;color:#a1dcb9;line-height:1.5;margin:0 0 10px}
#horizon-booking-demo .hd-draft-status.is-error,#horizon-booking-demo .hd-customer-edit-error{color:#ff9cbc}
#horizon-booking-demo .hd-draft-preview{position:absolute;top:4px;bottom:4px;border:2px dashed #fb4e9b;border-radius:7px;background:#ef16792c;color:#fff;font-size:10px;padding:6px;pointer-events:none;overflow:hidden;z-index:4;box-sizing:border-box}
#horizon-booking-demo .hd-draft-preview.is-conflict{background:#f13a3940;border-color:#ff8e98}
#horizon-booking-demo #hd-edit-customer .hd-customer-contact-grid,#horizon-booking-demo #hd-edit-customer .hd-customer-address-grid,#horizon-booking-demo #hd-edit-customer .hd-customer-notes-grid{grid-template-columns:1fr}
#horizon-booking-demo #hd-edit-customer input{font-size:13px}
#horizon-booking-demo .hd-customer-record dd,#horizon-booking-demo .hd-profile-contact dd{white-space:pre-line}
#horizon-booking-demo #hd-source-settings{margin:0;width:100%;max-width:none}
#horizon-booking-demo .hd-slot-alternatives{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
#horizon-booking-demo .hd-slot-alternatives button{font-size:11px;padding:6px 9px}
#horizon-booking-demo .hd-source-report{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
#horizon-booking-demo .hd-source-report>div{padding:12px;background:#232d3e;border:1px solid #3d4c64;border-radius:9px;font-size:12px}
#horizon-booking-demo .hd-source-report strong{display:block;font-size:20px;margin-top:4px}
#horizon-booking-demo .hd-sound-toggle{font-size:10px;padding:6px 9px;white-space:nowrap}
#horizon-booking-demo .hd-heading{grid-template-columns:minmax(0,1fr) auto auto auto auto;gap:10px}
#horizon-booking-demo #hd-draft-location{order:2;font-size:11px;white-space:nowrap;padding:6px 9px;min-height:34px}
#horizon-booking-demo #hd-draft-location:disabled{opacity:.45;cursor:default}
#horizon-booking-demo .hd-job{cursor:grab;touch-action:none}
#horizon-booking-demo .hd-block:not(.hd-leave){border:2px dashed #b9c9e3;border-radius:7px}
#horizon-booking-demo .hd-job:active{cursor:grabbing}
#horizon-booking-demo .hd-drag-preview{position:absolute;top:4px;bottom:4px;z-index:8;pointer-events:none;box-sizing:border-box;border:2px dashed #ff66ad;border-radius:7px;background:#782f59b0;color:#fff;padding:8px;font-size:11px;overflow:hidden}
#horizon-booking-demo .hd-drag-preview.is-conflict{background:#802a39b0;border-color:#ff8d91}
#horizon-booking-demo .hd-slot-preview{pointer-events:auto;z-index:3;cursor:context-menu}
#horizon-booking-demo .hd-schedule .hd-track .hd-slot-preview{background:color-mix(in srgb,var(--job-color,var(--hd-action)) 12%,transparent);box-shadow:none;backdrop-filter:none}
#horizon-booking-demo .hd-schedule-notice details{font-size:11px;margin-top:4px}
#horizon-booking-demo .hd-schedule-notice summary{cursor:pointer;color:#ccd6e9}
#horizon-booking-demo .hd-schedule-notice ul{padding-left:18px;margin:5px 0}
#horizon-booking-demo .hd-timeline-error{color:#ffb4bb;margin:0 0 8px;line-height:1.5}
#horizon-booking-demo .hd-time-navigation{order:3}
#horizon-booking-demo .hd-sound-toggle{order:4}
#horizon-booking-demo .hd-vacant-lane .hd-empty-lane{min-height:30px}
#horizon-booking-demo .hd-map{height:clamp(150px,calc(100dvh - 585px),390px)}
#horizon-booking-demo .hd-sound-toggle[aria-pressed=true]{border-color:#ec438c;color:#ffc9e2;box-shadow:0 0 12px #ee338a28}
#horizon-booking-demo .hd-nav [aria-selected=true]{box-shadow:0 0 16px #f1298b42,inset 0 0 8px #ff67b52a}
#horizon-booking-demo .hd-brand{animation:hd-logo-glow 16s ease-in-out infinite}
#horizon-booking-demo .hd-track>.hd-half-hour-guide{position:absolute;top:0;bottom:0;width:0;border-left:1px dotted color-mix(in srgb,var(--hd-fg) 22%,transparent);pointer-events:none}
#horizon-booking-demo .hd-primary:hover{box-shadow:0 0 16px #f1298b42}
#horizon-booking-demo .hd-booking-moves{padding:12px;background:#2d2238;border:1px solid #ae5684;border-radius:8px;font-size:12px;margin:10px 0}
#horizon-booking-demo .hd-booking-moves p{font-size:11px;color:#cbb7c4}
#horizon-booking-demo .hd-booking-moves input{accent-color:#ef1679}
#horizon-booking-demo .hd-move-note{font-size:11px;color:#ffd0e2;flex-basis:100%;line-height:1.6}
#horizon-booking-demo .hd-arrival-fields{margin:8px 0;font-size:11px}
#horizon-booking-demo .hd-arrival-fields .hd-label{font-size:11px;margin:0}
#horizon-booking-demo .hd-arrival-fields select{padding:6px 8px;font-size:12px}
#horizon-booking-demo .hd-arrival-help{font-size:10px;color:#aebbcf;margin:4px 0;line-height:1.5}
#horizon-booking-demo .hd-arrival-custom{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
#horizon-booking-demo .hd-job-type-field{font-size:11px;margin:8px 0}
#horizon-booking-demo .hd-job-type-field select{font-size:12px;padding:6px 8px}
#horizon-booking-demo .hd-job-kind:empty{display:none}
#horizon-booking-demo .hd-times{background:#222938;overflow:visible}
#horizon-booking-demo .hd-times span{top:0;height:100%;width:var(--hour-grid);transform:none;padding:0 0 0 6px;box-sizing:border-box;border-left:1px solid #364054;display:flex;align-items:center;text-align:left}
#horizon-booking-demo .hd-times .hd-first-time{border-left:0}
#horizon-booking-demo .hd-times .hd-final-time{transform:none;width:42px;padding-left:6px;padding-right:0}
#horizon-booking-demo .hd-search-arrival{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}
#horizon-booking-demo .hd-search-arrival .hd-arrival-fields{display:flex;align-items:center;gap:12px;margin:0}
#horizon-booking-demo .hd-search-arrival .hd-arrival-fields>.hd-label{display:flex;align-items:center;gap:10px;white-space:nowrap}
#horizon-booking-demo .hd-search-arrival .hd-arrival-help{margin:0}
@media(max-width:720px){#horizon-booking-demo .hd-search-arrival .hd-arrival-fields{flex-wrap:wrap;gap:4px}#horizon-booking-demo .hd-search-arrival .hd-arrival-fields>.hd-label{white-space:normal}}
@keyframes hd-logo-glow{0%,72%,100%{filter:drop-shadow(0 0 3px #ef167910)}83%{filter:drop-shadow(0 0 9px #ef16794a)}}
@media(prefers-reduced-motion:reduce){#horizon-booking-demo .hd-brand{animation:none}}
@media(max-width:720px){
 #horizon-booking-demo .hd-heading{grid-template-columns:minmax(0,1fr) auto auto}
 #horizon-booking-demo #hd-calendar-host{grid-column:1/-1;grid-row:2}
 #horizon-booking-demo #hd-draft-location{grid-column:1;grid-row:3;justify-self:start}
 #horizon-booking-demo .hd-time-navigation{grid-column:2;grid-row:1}
 #horizon-booking-demo .hd-sound-toggle{grid-column:3;grid-row:1}
 #horizon-booking-demo .hd-map{height:320px}
 #horizon-booking-demo .hd-editor-workspace{margin:0 12px 12px}
 #horizon-booking-demo .hd-inline-editor[open]{padding:14px}
 #horizon-booking-demo .hd-booking-editor-grid{grid-template-columns:1fr;gap:14px}
 #horizon-booking-demo .hd-booking-time-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 #horizon-booking-demo .hd-customer-contact-grid,#horizon-booking-demo .hd-customer-address-grid,#horizon-booking-demo .hd-customer-notes-grid{grid-template-columns:1fr}
 #horizon-booking-demo .hd-customer-fields input,#horizon-booking-demo .hd-customer-fields select,#horizon-booking-demo .hd-quarter-time select{font-size:16px}
}

/* Temporary booking workspace: navigation and the timeline stay in view. */
body.hd-booking-layout-lock{overflow:auto}
#horizon-booking-demo.hd-booking-layout.hd-editing{position:relative;inset:auto;width:auto;max-width:none;height:auto;min-height:calc(100dvh - 16px);display:flex;flex-direction:column;overflow:visible;z-index:20}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-top{flex:none;min-height:66px;padding:4px 16px 4px 30px;gap:10px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-top .hd-brand{flex:0 0 220px;width:220px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hq-wordmark{padding:3px 0 9px;gap:10px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hq-title{font-size:27px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hq-subtitle{font-size:8px;letter-spacing:2.4px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hq-badge{font-size:17px;width:42px;height:42px;min-width:42px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-nav button{padding:6px 9px;min-height:32px}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-page-schedule{display:flex;flex-direction:column;flex:none;min-height:0;overflow:visible}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-booking{flex:none;padding:5px 12px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-booking{display:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-form input,#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-form select,#horizon-booking-demo.hd-booking-layout.hd-editing .hd-find-slot{height:32px;min-height:32px;padding:5px 10px;font-size:12px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-form label{font-size:10px;margin-bottom:3px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-recommendation,#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-examples,#horizon-booking-demo.hd-booking-layout.hd-editing .hd-location{display:none!important}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-planner-sticky{position:sticky;top:0;flex:none;box-shadow:0 4px 12px #0003}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-heading{padding:5px 12px;gap:8px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-heading h2{font-size:16px;margin:0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-heading p{display:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-heading button{min-height:28px;padding:4px 8px;font-size:11px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-scheduler-scroll{overflow-x:auto;overflow-y:hidden;max-height:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-vacant-lane{display:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-editor-workspace{position:relative;top:auto;flex:none;min-height:0;margin:6px 12px 10px;overflow:visible}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-inline-editor[open]{height:auto;max-height:none;padding:10px 12px;overflow:visible}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-inline-editor[hidden]{display:none!important}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-dialog[open]{display:flex;flex-direction:column;overflow:visible}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form{display:flex;flex-direction:column;min-height:0;flex:1}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-dialog-title{font-size:17px;margin:0 0 4px;flex:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-draft-status{margin:0 0 6px;font-size:10px;flex:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-editor-grid{flex:none;min-height:0;min-width:0;overflow:visible;gap:16px;padding:0 0 6px;align-items:start}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-editor-main{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:4px 10px;align-items:start}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-editor-main>:not(.hd-arrival-fields):not(.hd-job-type-field){grid-column:1/-1}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form .hd-label{font-size:11px;margin:3px 0;gap:3px}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form .hd-field{padding:5px 8px;font-size:12px;min-height:32px;height:32px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer{position:relative;padding-right:0;display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:center}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer>.hd-label{grid-column:1;grid-row:1}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer>.hc-search-host{grid-column:1/-1;grid-row:2}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer>#hd-booking-new-customer{grid-column:2;grid-row:1}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{grid-column:1/-1;grid-row:3;display:block;line-height:1.4}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary strong{display:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary span{font-size:10px;display:inline}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary span+span:before{content:' · '}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary div{display:inline}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary div+div:before{content:' · '}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-new-customer{font-size:10px;padding:3px 0;min-height:22px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{padding:5px 8px;margin:3px 0;font-size:10px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary p{margin:2px 0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-time-fields{gap:7px;margin:5px 0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-quarter-time{gap:3px}
#horizon-booking-demo.hd-booking-layout.hd-editing fieldset.hd-arrival-fields{padding:7px 9px;margin:6px 0;border-radius:8px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-arrival-fields legend{font-size:10px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-arrival-custom{gap:9px;margin:0;max-width:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-job-type-field{margin:5px 0}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form #hd-booking-title{height:60px;min-height:60px;max-height:140px;resize:vertical}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-confirm-controls{grid-template-columns:1fr 1fr 1.2fr;gap:8px;margin-bottom:4px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-confirm-controls label{font-size:10px;gap:3px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-confirmation .hs-note,#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-email-status{font-size:10px;line-height:1.4;margin:4px 0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-no-email{font-size:11px;margin:5px 0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-contact-alerts{margin:4px 0;gap:4px}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form #hd-booking-confirmation{height:180px;min-height:130px;max-height:280px;resize:vertical;line-height:1.45}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-error{flex:none;margin:3px 0;font-size:11px}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form>.hd-dialog-actions{position:static;flex:none;padding:0;margin-top:4px;bottom:auto;border:0;background:transparent}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-dialog-actions button{padding:6px 13px;min-height:32px;font-size:12px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-moves{margin:0 0 7px;padding:8px;font-size:11px}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-moves p{margin:4px 0;font-size:10px}
@media(max-width:1000px){#horizon-booking-demo.hd-booking-layout.hd-editing .hd-top{flex-wrap:wrap;min-height:70px;padding:4px 12px;gap:4px 10px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-nav{order:2;flex-basis:100%;justify-content:space-between;margin:0}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-top .hd-brand{flex-basis:200px;width:200px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-session-bar{margin-left:auto}#horizon-booking-demo.hd-booking-layout.hd-editing .hq-wordmark{padding:0 0 5px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-nav button{font-size:11px;padding:4px 7px;min-height:28px}}
@media(max-width:720px){#horizon-booking-demo.hd-booking-layout.hd-editing{inset:0;height:100dvh;border-radius:0}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-editor-grid{grid-template-columns:1fr}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-time-fields{grid-template-columns:repeat(4,minmax(0,1fr))}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-heading{grid-template-columns:minmax(0,1fr) auto auto}#horizon-booking-demo.hd-booking-layout.hd-editing #hd-calendar-host{grid-column:1/-1;grid-row:2}#horizon-booking-demo.hd-booking-layout.hd-editing #hd-draft-location{grid-column:2;grid-row:1}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-time-navigation{grid-column:3;grid-row:1}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-sound-toggle{display:none}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-form{flex-wrap:nowrap}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-postcode-field{flex-basis:auto}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-duration-field{flex:0 0 95px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-find-slot{flex:0 0 auto}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-editor-grid .hd-field{font-size:16px}}

/* Stable one-button-per-engineer suggestions, keeping the next option explicit. */
#horizon-booking-demo .hd-slot-alternatives .hd-engineer-slot{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;flex:1 1 220px;max-width:380px;padding:10px 12px;min-height:56px}
#horizon-booking-demo .hd-engineer-slot strong{font-size:12px;font-weight:600}
#horizon-booking-demo .hd-engineer-slot span{font-size:11px;line-height:1.4}
#horizon-booking-demo .hd-slot-alternatives .hd-engineer-slot[aria-pressed=true]{border-color:var(--hd-action);box-shadow:inset 0 0 0 1px var(--hd-action)}
#horizon-booking-demo .hd-slot-alternatives .hd-engineer-slot:disabled{opacity:.65;cursor:default}
#horizon-booking-demo .hd-slot-alternatives .hd-move-note{flex-basis:100%}
#horizon-booking-demo .hd-postcode-credit{font-size:11px;color:var(--hd-muted,#a9b8cf);margin:6px 0}
#horizon-booking-demo .hd-postcode-credit summary{cursor:pointer}
#horizon-booking-demo .hd-postcode-credit p{margin:6px 0;line-height:1.4}
#horizon-booking-demo .ha-reference-attribution{display:block;font-size:10px;line-height:1.4;color:var(--hd-muted,#a9b8cf)}
#horizon-booking-demo .ha-reference-attribution[hidden]{display:none}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 14px;margin:6px 0 10px;border-color:#63718c80;background:linear-gradient(130deg,#26324990,#131f31a6);border-radius:10px;font-size:11px}
#horizon-booking-demo .hc-booking-details{display:grid;grid-template-columns:76px minmax(0,1fr);gap:5px 12px;margin:0;line-height:1.5;min-width:0}
#horizon-booking-demo .hc-booking-details dt{color:#adbed9;font-weight:500}
#horizon-booking-demo .hc-booking-details dd{color:#eef3fc;margin:0;white-space:pre-line;overflow-wrap:anywhere}
#horizon-booking-demo .hc-booking-details .hc-detail-missing{color:#ff777f!important}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary .hc-booking-details-actions{display:flex;align-items:center;justify-content:flex-end;min-width:0}
#horizon-booking-demo .hc-booking-details-actions button{font-size:11px;white-space:normal;text-align:center;max-width:170px;min-height:36px}
#horizon-booking-demo .hc-booking-return{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 18px;padding:12px 16px;border:1px solid #d681b175;border-radius:12px;background:linear-gradient(110deg,#36243b,#172439);box-shadow:0 5px 18px #05091435}
#horizon-booking-demo .hc-booking-return strong,#horizon-booking-demo .hc-booking-return span{display:block}
#horizon-booking-demo .hc-booking-return strong{font-size:13px;color:#ffd4e7;margin-bottom:4px}
#horizon-booking-demo .hc-booking-return span{font-size:11px;color:#c1cde0}
#horizon-booking-demo #hd-customer-form button[type=submit]:disabled{white-space:normal;max-width:100%}
@media(max-width:650px){#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{grid-template-columns:1fr;gap:10px}#horizon-booking-demo .hc-booking-details-actions button{max-width:none;width:100%}#horizon-booking-demo .hc-booking-return{flex-wrap:wrap;margin:10px}}

/* Compact booking details, with normal page flow instead of a nested scroller. */
#horizon-booking-demo .hd-booking-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 10px;min-width:0}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-heading .hd-draft-status{flex:1;min-width:0;margin:0;line-height:1.5;overflow-wrap:anywhere}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-heading h2{flex:none;margin:0;white-space:nowrap}
#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 120px;align-items:start;gap:12px;padding:9px 11px;margin:4px 0 7px}
#horizon-booking-demo .hc-booking-details{gap:3px 8px;grid-template-columns:64px minmax(0,1fr)}
#horizon-booking-demo .hc-booking-address-details{grid-template-columns:minmax(0,1fr)}
#horizon-booking-demo .hc-booking-address-details dd{line-height:1.55}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-booking-details-actions{align-self:center}
#horizon-booking-demo .hc-booking-email-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin:5px 0 8px;min-width:0}
#horizon-booking-demo .hc-booking-email-choice>.hd-booking-email-status{margin:0;overflow-wrap:anywhere}
#horizon-booking-demo.hd-booking-layout.hd-editing .hc-booking-email-choice>.hc-no-email{margin:0;max-width:210px;min-width:0;line-height:1.5}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form #hd-booking-title{height:64px;min-height:64px;max-height:none;line-height:18px}
#horizon-booking-demo.hd-booking-layout.hd-editing #hd-booking-form #hd-booking-confirmation{height:192px;min-height:192px;max-height:none;line-height:18px}
@media(max-width:720px){#horizon-booking-demo.hd-booking-layout.hd-editing{inset:auto;height:auto;min-height:100dvh}#horizon-booking-demo .hd-booking-heading{gap:10px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-customer-summary{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px}#horizon-booking-demo.hd-booking-layout.hd-editing .hc-booking-details-actions{grid-column:1/-1}#horizon-booking-demo .hc-booking-email-choice{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}}
@media(max-width:460px){#horizon-booking-demo .hc-booking-contact-details{grid-template-columns:minmax(0,1fr);gap:1px}#horizon-booking-demo .hc-booking-contact-details dd{margin-bottom:4px}#horizon-booking-demo .hd-booking-heading{align-items:flex-start}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-heading h2{font-size:15px}#horizon-booking-demo.hd-booking-layout.hd-editing .hd-booking-time-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep the active draft shortcut immediately left of the date navigation. */
#horizon-booking-demo .hd-heading{grid-template-columns:minmax(0,1fr) auto auto}
#horizon-booking-demo #hd-calendar-host{display:flex;align-items:center;gap:6px;min-width:0}
#horizon-booking-demo #hd-calendar-host>.hd-date{flex:1;min-width:0}
#horizon-booking-demo #hd-calendar-host>#hd-draft-location{order:-1;flex:0 0 auto;font-weight:600}
#horizon-booking-demo #hd-draft-location[hidden]{display:none!important}
@media(max-width:720px){#horizon-booking-demo #hd-calendar-host>.hd-date{width:auto;grid-template-columns:34px minmax(0,1fr) 34px max-content}}
