/* Offline layout support; actual brand stylesheet is retained separately. Fonts use local fallbacks. */
body{background:var(--bg-linen)!important;color:var(--text-dark);font-family:Inter,system-ui,sans-serif;max-width:none!important;padding:0!important}h1,h2,h3{color:var(--brand-blue)}h1{font-family:Charm,Georgia,serif}a{color:var(--brand-blue)}.review-brand,.brand{max-width:1120px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.review-brand img,.brand img{width:190px;max-height:90px}.review-policy,.journey{max-width:960px;margin:24px auto;padding:32px;background:var(--bg-cream);border-radius:20px;border:1px solid #c6d4cc}.journey h1{font-size:42px}.review-policy{max-width:800px}.review-banner,.banner{padding:12px;text-align:center;background:var(--bg-champagne);color:var(--brand-blue)}.container{margin:auto;padding:20px}.row{display:flex;flex-wrap:wrap;gap:16px}.col-md-6{flex:1 1 280px}.col-12{width:100%}.mb-3,.mb-4{margin-bottom:22px}.p-4{padding:26px}.bg-white{background:white}.rounded-4{border-radius:18px}.border{border:1px solid #d3dcd6}.d-none,[hidden]{display:none!important}.form-check{display:block}.form-control,.form-select,input:not([type=radio]):not([type=checkbox]),select,textarea{font:inherit;width:100%;padding:12px;border:1px solid #8ea89d;border-radius:7px;box-sizing:border-box}input[type=radio],input[type=checkbox]{width:20px;height:20px;accent-color:#20465e;margin-right:8px}button,.btn{background:#20465e;color:white;border:0;border-radius:8px;padding:13px 20px;cursor:pointer;font:inherit;display:inline-block;text-decoration:none}button:disabled{opacity:.6}label{line-height:1.7}.safety-choice{color:#1e242b}.header-dog-img{width:110px!important}.mobile-header-lockup{display:flex;gap:20px}.small{font-size:.9rem}.alert,.note{padding:18px;background:#edf2ee}.draft{background:#f6ecd5;padding:12px;color:#634b18}pre{white-space:pre-wrap;overflow-wrap:anywhere}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.review-grid>section{padding:24px;background:#edf2ee;border-radius:16px}.review-grid img{width:140px}.review-nav{display:flex;gap:15px;flex-wrap:wrap}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a04411;outline-offset:3px}.layout{margin-top:24px}.brand strong{color:#20465e}.original{background:#eaf2f8;padding:4px}#incident-review{min-height:0}@media(max-width:700px){.review-grid{grid-template-columns:1fr}.journey,.review-policy{margin:12px;padding:22px}.review-brand{display:block}.review-brand span{display:block;margin-top:12px}.journey h1{font-size:32px}}
/* Guardian presentation using the retained Pixie Dust palette and illustrations. */
.review-brand{max-width:1100px;border-bottom:1px solid #d5ddd4;margin-bottom:28px}.review-brand span{font-family:Georgia,serif;font-style:italic;color:var(--brand-blue)}.review-brand img{max-width:210px;max-height:86px;width:210px}.guardian-footer{text-align:center;padding:40px 24px;color:var(--brand-blue);font-size:14px;background:var(--bg-champagne);margin-top:48px}body>main.container{max-width:1040px}.review-policy{margin:0 0 32px;max-width:none;padding:26px;background:var(--bg-cream)}#booking-fields>.row{display:block}#booking-fields .col-md-6{margin-bottom:24px}#booking-fields{min-width:0}.safety-question{margin:26px 0}.form-check{font-weight:400}label:has(input[type=radio]),label:has(input[type=checkbox]){display:flex;align-items:flex-start;gap:10px}input[type=radio],input[type=checkbox]{flex:0 0 20px;margin-top:5px}.booking-summary{display:grid;grid-template-columns:110px 1fr;gap:10px 24px;margin:28px 0}.booking-summary dt,.booking-summary dd{margin:0;padding:10px 0;border-bottom:1px solid #d5ddd4}.journey{max-width:760px;padding:42px}.journey:before{content:'';display:block;width:75px;height:75px;background:url('dog_green.svg') center/contain no-repeat;margin-bottom:20px}#steps button{color:var(--brand-blue);background:transparent;border-radius:10px}#steps button[aria-current=step]{background:#e1e9df}.brand{border-bottom:1px solid #d5ddd4}.brand .eyebrow{color:var(--brand-blue)}.layout aside{background:transparent;border:0;padding:0}.layout main{background:var(--bg-cream)}.choice{font-weight:400}button.primary{background:var(--brand-blue)}.note{font-size:.95rem}#incident-review:has(#incidents:empty){background:transparent;border:0;padding:0}.journey p{line-height:1.75}@media(max-width:760px){.review-brand{padding:18px;gap:18px;display:flex}.review-brand img{width:165px}.review-brand span{font-size:12px;max-width:130px}.journey{padding:26px}.booking-summary{grid-template-columns:85px 1fr}.row{display:block}.brand .eyebrow{display:none}}
/* October 20 owner corrections: scoped intake navigation and compact controls. */
.layout{display:grid!important;grid-template-columns:245px minmax(0,1fr);gap:28px;max-width:1140px}
.layout aside{display:block!important;position:sticky;top:16px;align-self:start;max-height:calc(100dvh - 32px);overflow-y:auto}
.layout #steps{display:block}.layout #steps button{display:block;width:100%;min-height:44px;text-align:left;padding:9px 12px;margin:2px 0}
.layout #steps button[aria-current=step]{background:#dce9df;font-weight:700;border-left:4px solid var(--brand-blue)}
.mobile-sections{display:none}.layout textarea{min-height:0;line-height:1.5}.short-choices .choice{display:inline-flex;margin-right:22px;align-items:center;min-height:44px;padding:4px 0}.short-choices .choice input{margin-top:0}
.layout .choice{min-height:44px;padding:4px 0;gap:8px}.layout .choice input{margin-bottom:0}.layout fieldset{margin:22px 0}
@media(min-width:761px) and (max-width:1000px){.layout{grid-template-columns:205px minmax(0,1fr);gap:20px;padding:0 18px}.layout main{padding:26px}}
@media(max-width:760px){.layout{display:block!important;padding:0 12px}.layout aside{position:sticky;top:0;z-index:10;max-height:none;overflow:visible;background:var(--bg-linen);padding:8px 4px 10px;margin-bottom:12px;border-bottom:1px solid #bdcabe}.layout #steps{display:none}.mobile-sections{display:block;font-size:.85rem}.mobile-sections select{min-height:44px;padding:8px;font-size:.9rem}.layout #status:empty{display:none}.layout progress{display:block;height:6px;margin:3px 0 6px}.layout main{padding:20px 16px}.layout fieldset{margin:18px 0}.layout p{margin-bottom:12px}.layout .note{padding:12px;margin:14px 0}.layout .nav{padding-top:16px;margin-top:22px}.brand{padding:16px 18px}.layout .short-choices .choice{margin-right:16px}.layout .original{font-size:.8rem}}
@media(max-width:360px){.layout .short-choices .choice{margin-right:10px}}
.safety-options:has(input[type=radio]){display:flex;flex-wrap:wrap;column-gap:20px;row-gap:0}.safety-options .safety-choice{min-height:44px;padding:4px 0;margin:0}.safety-options:has(input[type=checkbox]){display:block}
@media(max-width:760px){body>main.container{padding:14px 12px}.p-4{padding:18px}.mb-3,.mb-4{margin-bottom:16px}#booking-fields .col-md-6{margin-bottom:16px}.safety-question{margin:18px 0}#booking-fields label{margin-top:10px}#booking-fields .safety-choice{margin-top:0}.safety-options:has(input[type=radio]){column-gap:18px}textarea.form-control{min-height:0;line-height:1.5}}

/* October 20 comprehensive isolated revision */
:root{--muted:#465a53} .help,.original,.status{color:#465a53!important}input,select,textarea{border-color:#63776d!important} .journey label{display:block} .journey .choice{display:flex;align-items:flex-start;gap:10px;min-height:44px}.journey .choice input{width:20px;flex:0 0 20px}.journey article{margin:24px 0;border-top:1px solid #bdcabe;padding-top:18px}.journey article p{white-space:pre-line}.equipment-group{font-size:1rem;margin:12px 0 0}.layout fieldset[data-question=equipment]{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.layout fieldset[data-question=equipment]>legend,.equipment-group{grid-column:1/-1}
@media(max-width:760px){.layout main{padding:14px 12px}.layout{padding:0 8px}.layout fieldset{margin:12px 0}.layout legend{line-height:1.4;margin-bottom:3px}.layout p{margin:5px 0 8px}.layout input:not([type=radio]):not([type=checkbox]),.layout textarea,.layout select,textarea.form-control,.form-control,.form-select{padding:7px 9px;font-size:16px;line-height:1.4}.layout .note{padding:9px 11px;margin:10px 0}.layout .nav{margin-top:16px;padding-top:12px}.layout h1{font-size:27px}.layout .carried-notice{font-size:14px}.layout .choice{line-height:1.4}.layout textarea{height:auto;min-height:58px}.journey{padding:18px 15px;margin:10px 8px}.journey h1{font-size:29px}.journey p{line-height:1.5}.journey:before{width:48px;height:48px;margin-bottom:12px}.review-policy{padding:14px;margin-bottom:18px}.review-brand{margin-bottom:12px;padding:12px}.booking-summary{grid-template-columns:75px 1fr;gap:6px 12px}.booking-summary dd{overflow-wrap:anywhere}.layout fieldset[data-question=equipment]{display:block}}
@media print{.review-brand,button,form,.eyebrow{display:none!important}.journey{border:0;margin:0;padding:0;max-width:none}.journey:before{display:none}}

/* October 20 visual checkpoint: Section 5 and final review only. */
#main[data-design-sample="health"] .question-group{font:600 1.15rem/1.4 system-ui,sans-serif;margin:28px 0 14px;padding-bottom:9px;border-bottom:1px solid #bdcabe}
#main[data-design-sample="health"] fieldset{margin:20px 0 24px}
#main[data-design-sample="health"] legend{font-size:1.08rem;line-height:1.45;font-weight:700;margin-bottom:8px}
#main[data-design-sample="health"] .help{line-height:1.5;margin:4px 0 10px}
#main[data-design-sample="health"] [data-followup]{border-left:2px solid #bdcabe;padding-left:16px;margin:12px 0 24px 10px}
#main[data-design-sample="health"] [data-followup] legend{font-size:.96rem;font-weight:600}
#main[data-design-sample="health"] textarea{min-height:132px}
#main[data-design-sample="health"] .original{background:none;padding:0;margin-bottom:8px;font-size:.82rem}
#main[data-design-sample="review"] .review-remaining{padding:16px 18px;background:#edf2ee;border:1px solid #bdcabe;border-radius:10px;margin:20px 0}
#main[data-design-sample="review"] .review-remaining p{margin:0 0 10px}
#main[data-design-sample="review"] .review-remaining ul{margin:0;padding-left:20px}
#main[data-design-sample="review"] .review-remaining a{display:inline-block;padding:8px 0;line-height:1.5}
#main[data-design-sample="review"] .answer-section{margin:28px 0;padding-top:22px;border-top:1px solid #bdcabe}
#main[data-design-sample="review"] .answer-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
#main[data-design-sample="review"] .answer-section-heading h2{margin:0;flex:1 1 230px;font-size:1.3rem}
#main[data-design-sample="review"] .answer-section-heading button{font-size:.85rem;padding:10px 14px;min-height:44px;background:transparent;color:#20465e;border:1px solid #637d72}
#main[data-design-sample="review"] .answer-row{padding:14px 0;border-bottom:1px solid #dce2d9}
#main[data-design-sample="review"] dt{margin:0;font-size:.96rem;line-height:1.5}
#main[data-design-sample="review"] dd{margin:6px 0 0;line-height:1.5}
#main[data-design-sample="review"] .not-answered{display:inline-block;color:#52645f;background:#edf0ec;border:1px solid #c6d0c9;border-radius:5px;padding:2px 8px;font-size:.85rem}
#main[data-design-sample="review"] .review-required{color:#744125;font-weight:600;font-size:.9rem}
@media(max-width:760px){#main[data-design-sample="health"] .question-group{margin-top:24px}#main[data-design-sample="health"] [data-followup]{margin-left:4px;padding-left:12px}#main[data-design-sample="review"] .answer-section-heading{gap:10px}#main[data-design-sample="review"] .review-remaining{padding:14px}}

#main[data-design-sample="review"] .review-remaining a{display:block}

/* Owner targeted corrections, October 20: consistent follow-ups and compact review. */
#main[data-design-sample="health"] [data-followup]{border:0;padding-left:0;margin:20px 0 24px}
.layout input#clinic{display:block;width:100%;max-width:none;min-width:0;box-sizing:border-box}
#main[data-design-sample="review"] .review-remaining{padding:12px;margin:14px 0}
#main[data-design-sample="review"] .review-remaining ul{list-style:none;padding:0}
#main[data-design-sample="review"] .review-remaining li{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0;font-size:.9rem}
#main[data-design-sample="review"] .review-remaining button{flex-shrink:0;padding:6px 10px;min-height:44px;font-size:.85rem}
#main[data-design-sample="review"] button.review-required{background:transparent;border:1px solid #744125;padding:6px 10px;min-height:44px;text-align:left}
#main[data-design-sample="review"] .answer-row{padding:8px 0}
#main[data-design-sample="review"] .answer-section{margin:20px 0;padding-top:16px}

/* Owner-approved mobile-first consistency pass, October 20. Presentation only.
   Follow-up styling never determines requiredness; question definitions retain it. */
.layout{font-size:16px;line-height:1.5}
.layout main{padding:28px 30px}
.layout h1{font-size:30px;line-height:1.25;margin:4px 0 14px}
.layout h2{font-size:21px;line-height:1.35}
.layout fieldset,#main[data-design-sample="health"] fieldset{margin:20px 0 24px}
.layout legend,#main[data-design-sample="health"] legend{font-size:17px;font-weight:700;line-height:1.4;margin-bottom:6px}
.layout fieldset[data-followup],#main[data-design-sample="health"] fieldset[data-followup]{margin:10px 0 18px;padding:0;border:0}
.layout [data-followup] legend,#main[data-design-sample="health"] [data-followup] legend{font-size:16px;font-weight:600;line-height:1.4}
.layout fieldset:has(+[data-followup]){margin-bottom:10px}
.layout .help,#main[data-design-sample="health"] .help{font-size:14px;line-height:1.5;margin:4px 0 8px}
.layout .original,#main[data-design-sample="health"] .original{font-size:13px;line-height:1.5;margin-bottom:6px}
.layout input:not([type=radio]):not([type=checkbox]),.layout select{min-height:44px;padding:9px;font-size:16px;line-height:1.4}
.layout textarea,#main[data-design-sample="health"] textarea{min-height:64px;padding:9px;font-size:16px;line-height:1.4}
.layout .choice{min-height:44px;line-height:1.45}
.layout .note{padding:12px;margin:14px 0}
.layout .nav{margin-top:22px;padding-top:16px}
.booking-preview h1#booking-header-title{font-size:32px;line-height:1.2;margin:8px 0 12px}
.booking-preview h2{font-size:22px;line-height:1.35;margin:22px 0 12px}
.booking-preview h3,.booking-preview .safety-followup h3{font-size:18px;line-height:1.4;margin:16px 0 8px}
.booking-preview label,.booking-preview legend{font-size:17px;line-height:1.4}
.booking-preview .safety-choice{font-size:16px;min-height:44px;align-items:center}
.booking-preview .safety-help,.booking-preview .small{font-size:14px;line-height:1.5}
.booking-preview textarea{min-height:64px;line-height:1.4;font-size:16px}
.booking-preview input:not([type=radio]):not([type=checkbox]),.booking-preview select,.booking-preview button,.booking-preview .btn{min-height:44px}
.booking-preview .safety-followup{margin-top:10px;padding-top:8px;padding-bottom:8px}
@media(max-width:760px){
 .layout main{padding:16px 12px}.layout h1{font-size:25px;margin-bottom:12px}.layout h2{font-size:20px}
 .layout fieldset,#main[data-design-sample="health"] fieldset{margin:16px 0 20px}
 .layout fieldset[data-followup],#main[data-design-sample="health"] fieldset[data-followup]{margin:8px 0 16px}
 .layout fieldset:has(+[data-followup]){margin-bottom:8px}
 .layout .brand{padding:12px}.layout .note{padding:10px;margin:12px 0}
 .layout textarea,#main[data-design-sample="health"] textarea{min-height:60px;padding:7px 9px}
 .layout .nav{margin-top:18px;padding-top:12px}
 .booking-preview h1#booking-header-title{font-size:27px}.booking-preview h2{font-size:21px;margin-top:18px}
 .booking-preview h3,.booking-preview .safety-followup h3{font-size:17px}
 .booking-preview .p-4{padding:16px}.booking-preview .safety-question{margin:16px 0}
 .booking-preview textarea{min-height:60px;padding:7px 9px}
}

/* October 20 approved targeted density and legibility correction. */
.layout .choice{margin:0;min-height:44px;padding:4px 0;align-items:center}
.layout .choice input{margin-top:0}
.layout fieldset,#main[data-design-sample="health"] fieldset{margin:14px 0 18px}
.layout fieldset[data-followup],#main[data-design-sample="health"] fieldset[data-followup]{margin:6px 0 12px}
.layout .help,#main[data-design-sample="health"] .help{margin:3px 0 5px}
.layout .note{margin:10px 0;padding:10px}
.layout .nav{margin-top:16px;padding-top:12px}
.booking-preview label{margin-top:12px}
.booking-preview .safety-choice{margin:0;padding:4px 0;min-height:44px}
.booking-preview .safety-question{margin:14px 0}
.booking-preview .mb-3,.booking-preview .mb-4{margin-bottom:14px}
.booking-preview textarea.form-control{padding:9px;min-height:64px;line-height:1.4;font-size:16px}
.layout .help,.layout .original,.layout .status,.booking-preview .text-secondary,.booking-preview .text-muted,.booking-preview .safety-help{color:#40544e!important}
#main[data-design-sample="review"] .not-answered{color:#40544e;background:none;border:0;padding:0;font-size:inherit}
#main[data-design-sample="review"] .answer-section{margin:16px 0;padding-top:14px}
#main[data-design-sample="review"] .answer-row{padding:8px 0}
@media(max-width:760px){
 .layout main{padding:12px}.layout h1{margin-bottom:10px}
 .booking-preview textarea.form-control{padding:7px 9px;min-height:60px}
 .booking-preview .p-4{padding:14px}
}
.layout .short-choices .choice{margin-right:14px}

/* October 20 owner-approved narrow option/review correction. */
.layout .short-choices{display:flex;flex-wrap:wrap;column-gap:8px;row-gap:0}
.layout .short-choices .choice{margin:0;min-width:44px}
.layout .choice,.booking-preview .safety-choice{padding:0;min-height:44px}
.booking-preview .safety-options:has(input[type=radio]){column-gap:8px;row-gap:0}
.layout .equipment-group{margin-top:6px}
#main[data-design-sample="review"] dt{color:#172f29;font-size:17px;font-weight:700}
#main[data-design-sample="review"] dd{color:#172f29;font-size:17px;font-weight:500}
#main[data-design-sample="review"] .not-answered{color:#263c38;font-weight:500}
#main[data-design-sample="review"] .answer-section-heading button,
#main[data-design-sample="review"] button.review-required{font-size:16px;font-weight:650;color:#20465e;border-color:#20465e;padding:6px 10px;min-height:44px}

/* Owner manual-test corrections, local candidate October 21. */
#address-results{display:block;margin:0;border:1px solid #87958d;border-radius:0 0 7px 7px;background:white;max-height:280px;overflow:auto}
#address-results:empty{display:none}
#address-results button{display:block;width:100%;min-height:44px;margin:0;padding:10px 12px;border:0;border-bottom:1px solid #d3dcd6;border-radius:0;background:white;color:#243746;text-align:left;font-size:15px;line-height:1.4}
#address-results button:hover,#address-results button:focus{background:#edf2ee}
#slots-container{display:flex;flex-wrap:wrap;gap:8px}
#slots-container .slot-btn{min-height:44px;min-width:84px;width:auto;margin:0;padding:8px 12px;background:white;color:#20465e;border:2px solid #637d72;border-radius:7px}
#slots-container .slot-btn[aria-pressed=true]{background:#20465e;color:white;border-color:#20465e;box-shadow:0 0 0 2px white,0 0 0 4px #20465e;font-weight:750}
#slots-container .slot-btn[aria-pressed=true]::before{content:'✓ ';}
.zoom-summary{padding:12px 16px;border-left:4px solid #20465e;background:#edf2ee}
#main[data-design-sample=review] .review-required{color:#8e241b;font-weight:700}
#main[data-design-sample=review] button.review-required{color:#8e241b;border:2px solid #8e241b;background:transparent;text-align:left}
.review-missing-summary{border:2px solid #8e241b;color:#8e241b;background:transparent;padding:14px}
.harness-inline{margin:0 0 12px 30px!important;padding:8px 12px!important;border-left:3px solid #637d72!important}

.clinic-results{border:1px solid #87958d;border-radius:0 0 7px 7px;background:white;max-height:260px;overflow:auto}.clinic-results:empty{display:none}.clinic-results button{display:block;width:100%;min-height:44px;margin:0;padding:10px 12px;border:0;border-bottom:1px solid #d3dcd6;border-radius:0;background:white;color:#243746;text-align:left;font-size:15px;line-height:1.4}.clinic-results button:hover,.clinic-results button:focus{background:#edf2ee}

/* October 21 owner wording and date-control correction, local candidate. */
.zoom-summary{white-space:pre-line}
.date-selectors{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;min-width:0}
.date-selectors>label{flex:1 1 85px;min-width:0;margin:0;font-weight:600}
.date-selectors>label:first-of-type{flex-basis:115px}
.date-selectors select,.date-selectors input{width:100%;min-height:44px;margin-top:4px}
.date-selectors .other-year{flex:1 1 100%}
.date-error{flex-basis:100%;margin:2px 0;color:#8e241b;font-weight:700;background:transparent}
.date-selectors[data-date-invalid],.layout [data-question][data-invalid=true]{border:2px solid #8e241b;border-radius:7px;padding:10px}
.error,.review-missing-summary,#main[data-design-sample=review] button.review-required{background:transparent}
.layout input[aria-invalid=true],.layout textarea[aria-invalid=true],.layout select[aria-invalid=true],.booking-preview [aria-invalid=true]{border-color:#8e241b}
.text-danger{color:#8e241b;font-weight:700}

.layout [data-question][data-invalid=true]:has([data-date-control]){border:0;padding:0}.booking-summary dd{white-space:pre-line}

/* Owner testing correction: equal, reversible native package choices. */
.package-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:16px}
.package-options>.col-md-6{display:flex;margin:0!important;min-width:0}
.package-options .form-check{display:flex;align-items:flex-start;gap:10px;width:100%;height:100%;min-height:135px;padding:16px}
.package-options .form-check>label{flex:1;margin:0;cursor:pointer}
.package-options .form-check:has(input:checked){border:2px solid #20465e;background:#edf2ee}
.package-options .form-check:focus-within{outline:3px solid #a04411;outline-offset:3px}
@media(max-width:760px){.package-options{grid-template-columns:1fr}}
/* Reserve date feedback space so leaving a partial date cannot shift a tap target. */
.date-selectors{border:2px solid transparent;border-radius:7px;padding:10px}
.date-selectors .date-error{min-height:3.2em}
.date-selectors .date-error[hidden]{display:block!important;visibility:hidden}

/* Ordinary control size when editing carried booking authority in final review. */
.layout #authority{display:block;width:100%;min-width:0;height:46px;min-height:46px;padding:9px 36px 9px 12px;font:400 16px/1.5 Inter,system-ui,sans-serif;background-color:#fff;color:#243746;border-radius:7px}
.layout [data-question="authority"]{min-width:0}
