:root{--brand-primary:#9a6b06;--brand-primary-light:#c79417;--brand-primary-dark:#7e5705;--brand-sage:#c8d8b8;--brand-sage-light:#f1ead8;--accent-green:#2e8b4e;--accent-green-deep:#1f5538;--brand-cream:#f4f4ef;--brand-bark:#1e1f1b;--brand-stone:#77776c;--brand-stone-light:#e5e4dc;--brand-gold:#c8643c;--brand-gold-light:#f6e7df;--brand-error:#b23a2e;--brand-error-light:#f7e4e1;--brand-success:#2e8b4e;--brand-success-light:#e1f0e7;--brand-warning:#b4690e;--brand-warning-light:#fbeeda;--green:var(--brand-primary);--green-bright:var(--brand-primary-light);--green-deep:var(--brand-primary-dark);--green-wash:var(--brand-sage-light);--gold:var(--brand-primary);--gold-wash:var(--brand-sage-light);--paper:var(--brand-cream);--card:#fff;--ink:var(--brand-bark);--muted:var(--brand-stone);--line:var(--brand-stone-light);--clay:var(--brand-gold);--clay-wash:var(--brand-gold-light);--ok-wash:var(--brand-success-light);--warn:var(--brand-warning);--surface:#f8f8f3;--surface-sunk:#efeee7;--line-soft:#eae9e1;--accent-rail:var(--green);--font-display:"Fraunces", Georgia, serif;--font-body:"Hanken Grotesk", system-ui, -apple-system, sans-serif;--r-sm:10px;--r-md:14px;--r-lg:18px;--card-radius:var(--r-lg);--card-shadow:0 1px 2px #23201b0a, 0 6px 20px #23201b0f;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:17px}body{font-family:var(--font-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100vh;padding:0 1rem 5rem}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(at 12% 6%,#9a6b060f 0%,#0000 50%),radial-gradient(at 90% 92%,#c8643c0d 0%,#0000 48%);position:fixed;inset:0}.ic{stroke:currentColor;stroke-width:1.75px;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.125em;flex-shrink:0;width:1em;height:1em;display:inline-block}.site-header{text-align:center;z-index:1;max-width:600px;margin:0 auto;padding:1.75rem 0 1rem;position:relative}.logo-mark{width:52px;height:52px;color:var(--green);animation:markIn .6s var(--ease) both;justify-content:center;align-items:center;margin:0 auto .55rem;display:flex;position:relative}.logo-mark:after{content:"";z-index:-1;background:radial-gradient(circle,#9a6b0629 0%,#0000 70%);border-radius:50%;position:absolute;inset:-8px}.logo-mark .ic{stroke-width:1.5px;width:40px;height:40px}@keyframes markIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.site-name{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-green-deep);font-size:1.3rem;font-weight:500}.site-tagline{color:var(--muted);letter-spacing:.05em;margin-top:.25rem;font-size:.74rem;font-weight:400}.card{background:var(--card);border-radius:var(--card-radius);max-width:600px;box-shadow:var(--card-shadow);border:1px solid var(--line);z-index:1;min-height:80px;animation:rise .5s var(--ease) both;margin:0 auto 1rem;padding:1.9rem 1.6rem;position:relative;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stagger{opacity:0;animation:rise .5s var(--ease) forwards}.stagger.d1{animation-delay:50ms}.stagger.d2{animation-delay:.13s}.stagger.d3{animation-delay:.21s}.stagger.d4{animation-delay:.29s}.stagger.d5{animation-delay:.37s}.view{display:none}.view.active{display:block}.loading-wrap{text-align:center;padding:2.5rem 0}.spinner{border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;width:36px;height:36px;margin:0 auto 1rem;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-wrap p{color:var(--muted);font-size:.875rem;font-weight:400}.inline-spinner{border:2px solid var(--line);border-top-color:var(--green);vertical-align:-.12em;border-radius:50%;width:11px;height:11px;margin-right:.4rem;animation:.7s linear infinite spin;display:inline-block}.invalid-wrap{text-align:center;padding:2rem 0}.invalid-icon{width:3rem;height:3rem;color:var(--clay);margin:0 auto 1rem}.greeting-name{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);margin-bottom:.6rem;font-size:2.35rem;font-weight:400;line-height:1.1}.greeting-name em{color:var(--green);font-style:italic}.greeting-sub{color:var(--muted);font-size:.88rem;font-weight:400;line-height:1.6}.divider{background:var(--line);height:1px;margin:1.5rem 0}.setup-strip{background:var(--clay-wash);border-radius:var(--r-sm);cursor:pointer;color:inherit;align-items:center;gap:.7rem;margin-top:1.1rem;padding:.7rem .85rem;text-decoration:none;transition:transform .12s;display:flex}.setup-strip:active{transform:scale(.995)}.setup-strip .ic{width:18px;height:18px;color:var(--clay)}.setup-strip .txt{color:var(--ink);flex:1;font-size:.8rem}.setup-strip .txt b{font-weight:600}.setup-strip .arrow{width:16px;height:16px;color:var(--clay)}.alert-strip{border-radius:var(--r-sm);align-items:flex-start;gap:.7rem;margin-top:1.1rem;margin-bottom:0;padding:.8rem .95rem;display:flex}.alert-strip.warn{background:var(--warning-wash,var(--brand-warning-light));border:1px solid #b4690e33}.pay-method-card{background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--green);border-radius:12px;align-items:center;gap:.7rem;margin-bottom:.85rem;padding:.75rem .9rem;display:flex}.pay-method-card>.ic{width:20px;height:20px;color:var(--green);flex-shrink:0}.pay-method-card .btn-sm{flex-shrink:0}.pmc-title{color:var(--ink);font-size:.85rem;font-weight:600}.pmc-sub{color:var(--brand-stone);margin-top:.1rem;font-size:.75rem;line-height:1.5}.alert-strip.err{background:var(--brand-error-light);border:1px solid #b23a2e33}.alert-strip .ic{width:18px;height:18px;margin-top:.05rem}.alert-strip.warn .ic{color:var(--warn)}.alert-strip.err .ic{color:var(--brand-error)}.alert-strip .body{color:var(--ink);flex:1;font-size:.82rem;line-height:1.45}.alert-strip .body b{font-weight:600}.progress-wrap{margin-top:1.1rem;margin-bottom:1.5rem}.progress-label{justify-content:space-between;align-items:baseline;margin-bottom:.55rem;display:flex}.progress-label span{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}.progress-label strong{color:var(--green);font-size:.72rem;font-weight:600}.progress-track{background:var(--line);border-radius:999px;height:7px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--green), var(--green-bright));height:100%;transition:width .9s var(--ease), opacity .3s var(--ease);border-radius:999px}.progress-fill[style*="width:0%"],.progress-fill[style*="width: 0%"]{opacity:0}.hero-cta{color:#fff;background:linear-gradient(135deg, var(--green), var(--green-bright));border-radius:var(--r-md);width:100%;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.55rem;padding:1.05rem 1.25rem;font-size:1.05rem;font-weight:600;transition:transform .12s,box-shadow .2s,filter .2s;display:flex;box-shadow:0 5px 16px #9a6b064d}.hero-cta:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 8px 22px #9a6b065c}.hero-cta:active{transform:translateY(0)scale(.99)}.hero-cta .ic{width:20px;height:20px}.subactions{grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:.85rem;display:grid}.subactions.has-four{grid-template-columns:repeat(2,1fr)}.subaction{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);cursor:pointer;transition:all .18s var(--ease);text-align:center;color:inherit;flex-direction:column;align-items:center;gap:.45rem;padding:.85rem .5rem;text-decoration:none;display:flex}.subaction:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 6px 16px #9a6b061f}.subaction:active{transform:translateY(0)scale(.98)}.subaction .ic{width:20px;height:20px;color:var(--green);transition:transform .2s var(--ease)}.subaction:hover .ic{transform:scale(1.12)}.subaction .lab{font-size:.74rem;font-weight:600;line-height:1.2}.section-header{justify-content:space-between;align-items:baseline;margin-bottom:1rem;display:flex}.section-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:1.35rem;font-weight:500}.section-link{color:var(--green);font-size:.8rem;font-weight:500;text-decoration:none;transition:color .15s}.section-link:hover{color:var(--green-bright)}.appt{border-bottom:1px solid var(--line);align-items:center;gap:.85rem;padding:.85rem 0;display:flex}.appt:last-child{border-bottom:none}.appt-date{text-align:center;flex-shrink:0;width:52px}.appt-date .m{letter-spacing:.08em;text-transform:uppercase;color:var(--clay);font-size:.64rem;font-weight:700}.appt-date .d{font-family:var(--font-display);color:var(--ink);font-size:1.5rem;font-weight:500;line-height:1}.appt-body{flex:1}.appt-body .t{font-size:.9rem;font-weight:600}.appt-body .s{color:var(--muted);margin-top:.1rem;font-size:.78rem}.upcoming-empty{text-align:center;padding:1.25rem .5rem .5rem}.upcoming-empty>.ic{width:28px;height:28px;color:var(--muted);margin-bottom:.6rem}.upcoming-empty p{color:var(--muted);margin-bottom:.9rem;font-size:.85rem;line-height:1.5}.appt-date-tile{border:1px solid var(--line);text-align:center;background:#fff;border-radius:11px;flex-shrink:0;width:52px;line-height:1;overflow:hidden;box-shadow:0 1px 2px #23201b0d}.appt-date-tile-month{background:var(--green);color:#fff;font-family:var(--font-body);letter-spacing:.08em;padding:.22rem 0;font-size:.62rem;font-weight:700}.appt-date-tile-day{font-family:var(--font-display);color:var(--ink);padding:.2rem 0 .3rem;font-size:1.55rem;font-weight:600}.btn-sm{background:var(--green);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:background .18s,transform .1s;display:inline-flex}.btn-sm .ic{color:#fff;width:14px;height:14px}.btn-sm:hover{background:var(--green-bright)}.btn-sm:active{transform:scale(.97)}.chip{letter-spacing:.02em;border-radius:6px;align-items:center;gap:.35rem;padding:.2rem 0;font-size:.7rem;font-weight:600;display:inline-flex}.chip .dot{border-radius:50%;width:6px;height:6px;position:relative}.chip.active{color:var(--green);background:0 0}.chip.active .dot{background:var(--green)}.chip.active .dot:after{content:"";background:var(--green);animation:pulse 2.4s var(--ease) infinite;border-radius:50%;position:absolute;inset:0}@keyframes pulse{0%{opacity:.7;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(3)}}.chip.inactive{color:var(--muted);background:0 0}.chip.inactive .dot{background:var(--muted)}.pet-cards,.resident-list{flex-direction:column;gap:0;margin-top:.25rem;display:flex}.resident{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);transition:border-color .2s var(--ease), box-shadow .2s var(--ease), transform .2s var(--ease);margin-bottom:.85rem;overflow:hidden;box-shadow:0 1px 2px #23201b0a,0 4px 14px #23201b0d}.resident:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 8px 26px #9a6b0629}.resident-top{cursor:pointer;grid-template-columns:auto 1fr auto;grid-template-areas:"photo body actions";align-items:center;gap:.9rem 1rem;padding:1.05rem 1.1rem;display:grid}.resident-photo{grid-area:photo}.resident-body{grid-area:body}.resident-actions{grid-area:actions}@media (width<=480px){.resident-top{grid-template-columns:auto 1fr;grid-template-areas:"photo body""actions actions"}.resident-actions{justify-content:flex-end;margin-top:.25rem}}.resident-photo{background:linear-gradient(135deg, var(--surface-sunk), #fff);width:58px;height:58px;color:var(--green);border:1px solid var(--line);transition:transform .25s var(--ease), box-shadow .25s var(--ease);border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.resident:hover .resident-photo{transform:scale(1.04)}.resident-photo .ic{width:27px;height:27px}.resident-photo img{object-fit:cover;width:100%;height:100%}.resident.is-active .resident-photo{box-shadow:0 0 0 2px #fff,0 0 0 4px #9a6b0640}.resident-photo-wrap{flex-shrink:0;grid-area:photo;width:58px;height:58px;position:relative}.resident-photo-wrap .resident-photo{grid-area:auto}.photo-edit-badge{background:var(--green);color:#fff;border:2px solid var(--surface);cursor:pointer;z-index:3;width:22px;height:22px;transition:background .2s var(--ease);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;bottom:-3px;right:-3px;box-shadow:0 1px 3px #00000038}.photo-edit-badge:hover{background:var(--green-bright)}.photo-edit-badge .ic{stroke-width:2px;width:12px;height:12px}.photo-spinner{z-index:4;background:#ffffff8c;border-radius:15px;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.photo-spinner:after{content:"";border:2.5px solid var(--line);border-top-color:var(--green);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}.resident-photo-wrap.is-uploading .photo-spinner{display:flex}.resident-photo-wrap.is-uploading .photo-edit-badge{opacity:.5;pointer-events:none}.resident-body{min-width:0}.resident-nameline{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.resident-nameline .chip{align-self:center}.resident-name{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);font-size:1.5rem;font-weight:500;line-height:1.1}.resident.is-inactive .resident-name{color:var(--ink)}.resident-meta{letter-spacing:.01em;color:var(--muted);margin-top:.3rem;font-size:.82rem;font-weight:500;line-height:1.35}.resident-breed{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;font-size:.78rem;font-weight:500;line-height:1.3}.resident.is-memorial{background:var(--surface);box-shadow:none}.resident.is-memorial:hover{border-color:var(--line);box-shadow:none;transform:none}.resident.is-memorial .resident-photo{filter:grayscale();opacity:.8;box-shadow:none;border-color:var(--line-soft)}.resident.is-memorial:hover .resident-photo{transform:none}.resident.is-memorial .resident-name{color:var(--ink)}.memorial-line{font-family:var(--font-display);color:var(--muted);letter-spacing:.01em;margin-top:.35rem;font-size:.92rem;font-style:italic}.resident-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.chev{transition:transform .32s var(--ease);color:var(--muted);width:18px;height:18px}.resident.open .chev{transform:rotate(90deg)}.resident-detail{transition:grid-template-rows .32s var(--ease);grid-template-rows:0fr;display:grid}.resident-detail>.inner{overflow:hidden}.resident.open .resident-detail{grid-template-rows:1fr}.detail-pad{border-top:1px solid var(--line);padding:0 1rem 1rem}.detail-row{align-items:flex-start;gap:.55rem;padding:.55rem 0;font-size:.83rem;display:flex}.detail-row .ic{width:16px;height:16px;color:var(--green);margin-top:.12rem}.detail-row .k{color:var(--muted)}.doc-line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.81rem;display:flex}.doc-line:last-child{border-bottom:none}.doc-line .name{align-items:center;gap:.45rem;display:flex}.doc-line .name .ic{width:15px;height:15px}.doc-line.ok .name .ic{color:var(--green)}.doc-line.miss .name,.doc-line.miss .name .ic{color:var(--warn)}.doc-line.expired .name,.doc-line.expired .name .ic{color:var(--brand-error)}.doc-line .when{color:var(--muted);font-size:.73rem}.doc-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:.75rem 0 .3rem;font-size:.65rem;font-weight:600}.nudge{background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--clay);border-radius:0 var(--r-sm) var(--r-sm) 0;align-items:center;gap:.85rem;margin:0 1rem 1rem;padding:.9rem 1rem;display:flex}.nudge-welcome{background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--green);border-radius:0 var(--r-sm) var(--r-sm) 0}.nudge p{color:var(--ink);font-size:.82rem;line-height:1.45}.nudge .btn-clay,.nudge .btn-green{flex-shrink:0}.nudge-vet{margin-top:0;margin-bottom:.6rem}@media (width<=480px){.nudge{flex-direction:column;align-items:stretch}.nudge .btn-clay,.nudge .btn-green{justify-content:center;width:100%}}.add-resident{width:100%;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r-md);font-family:var(--font-body);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.4rem;padding:.7rem;font-size:.82rem;font-weight:600;transition:background .15s,transform .1s,color .15s,border-color .15s;display:flex}.add-resident:hover{background:var(--surface);border-color:var(--green);color:var(--green)}.add-resident:active{transform:scale(.99)}.checklist{flex-direction:column;gap:.6rem;display:flex}.check-item{border-radius:var(--r-md);border:1px solid var(--line);cursor:pointer;color:inherit;background:var(--card);align-items:center;gap:.85rem;padding:.9rem 1rem;text-decoration:none;transition:all .18s;display:flex}.check-item:hover:not(.done){border-color:var(--green);background:var(--green-wash);transform:translate(3px)}.check-item.done{border-color:var(--line);background:var(--card);cursor:pointer}.check-item.done:hover{border-color:var(--green);background:var(--surface);transform:translate(3px)}.check-item.active-step{border-color:var(--green);background:var(--green-wash);box-shadow:0 0 0 3px #9a6b061f}#dash-setup .check-item,#dash-setup .check-item.done{background:var(--card);border:1px solid var(--line);cursor:pointer}#dash-setup .check-item:hover,#dash-setup .check-item.done:hover{border-color:var(--green);background:var(--surface);transform:translate(3px)}#dash-setup .check-icon{border-radius:50%;width:22px;height:22px}#dash-setup .check-icon .ic{stroke-width:2.25px;width:13px;height:13px}#dash-setup .check-item.done .check-icon{background:var(--ok-wash);color:var(--accent-green)}#dash-setup .check-item:not(.done) .check-icon{background:var(--clay);color:#fff}#dash-setup .check-arrow{opacity:.45}#dash-setup .check-item:hover .check-arrow{opacity:1;transform:translate(3px)}.check-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.check-icon .ic{width:15px;height:15px}.check-item.done .check-icon{background:var(--accent-green);color:#fff}.check-item:not(.done) .check-icon{background:var(--line);color:var(--muted)}.check-item.active-step .check-icon{background:var(--green);color:#fff}#dash-setup .check-title{font-size:.98rem;font-weight:600}#dash-setup .check-desc{font-size:.8rem}.check-text{flex:1}.check-title{color:var(--ink);margin-bottom:.1rem;font-size:.88rem;font-weight:600}.check-desc{color:var(--muted);font-size:.77rem;font-weight:400}.check-arrow{width:16px;height:16px;color:var(--muted);transition:transform .18s}.check-item:hover .check-arrow{transform:translate(3px)}.complete-banner{background:var(--ok-wash);border-radius:var(--r-md);border:1px solid #2e8b4e33;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.1rem 1.25rem;display:flex}.complete-banner-icon{width:2rem;height:2rem;color:var(--accent-green);flex-shrink:0}.complete-banner-text h3{font-family:var(--font-display);color:var(--accent-green-deep);margin-bottom:.2rem;font-size:1.2rem;font-weight:600}.complete-banner-text p{color:var(--ink);font-size:.82rem;font-weight:400}.quick-actions{grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem;display:grid}.action-btn{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);cursor:pointer;color:inherit;transition:all .18s var(--ease);text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem .75rem;text-decoration:none;display:flex}.action-btn:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 6px 16px #9a6b0621}.action-btn .ic{width:22px;height:22px;color:var(--green)}.action-btn-label{color:var(--ink);font-size:.8rem;font-weight:600}.step-header{margin-bottom:1.5rem}.step-back{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;margin-bottom:1rem;padding:0;font-size:.8rem;font-weight:600;transition:color .2s;display:inline-flex}.step-back:hover{color:var(--green)}.step-back .ic{width:15px;height:15px}.step-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;margin-bottom:.35rem;font-size:1.7rem;font-weight:400}.step-title em{color:var(--green);font-style:italic}.step-desc{color:var(--muted);font-size:.875rem;font-weight:400;line-height:1.6}.form-group{margin-bottom:1.1rem}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.alt-caregiver-section{border-top:1px solid var(--line-soft);margin-top:2.25rem;padding-top:1.75rem}.alt-caregiver-head{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin-bottom:.4rem;font-size:1.35rem;font-weight:400}.alt-caregiver-head em{color:var(--green);font-style:italic}.alt-caregiver-head .opt{color:var(--muted);letter-spacing:normal;font-size:.85rem;font-style:normal;font-weight:300}label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:.45rem;font-size:.7rem;font-weight:600;display:block}label .req{color:var(--clay);margin-left:2px}label .opt{color:var(--muted);text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:400}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],textarea,select{border:1.5px solid var(--line);border-radius:var(--r-sm);width:100%;font-family:var(--font-body);color:var(--ink);appearance:none;background:#fff;outline:none;padding:.7rem .9rem;font-size:1rem;font-weight:400;transition:border-color .2s,box-shadow .2s}.currency-field{position:relative}.currency-field .currency-prefix{color:var(--muted);pointer-events:none;font-size:1rem;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.currency-field input[type=number]{padding-left:1.7rem}.field-note{color:var(--muted);margin:.5rem 0 0;font-size:.78rem;line-height:1.6}input[type=date]{appearance:none;min-height:3rem;line-height:1.2;display:block}input[type=date]::-webkit-date-and-time-value{text-align:left}input[type=date]:not(:focus):invalid,input[type=date][value=""]{color:var(--muted)}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.85;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%239A6B06'%20stroke-width='1.75'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='4'%20width='18'%20height='18'%20rx='2'/%3E%3Cline%20x1='16'%20y1='2'%20x2='16'%20y2='6'/%3E%3Cline%20x1='8'%20y1='2'%20x2='8'%20y2='6'/%3E%3Cline%20x1='3'%20y1='10'%20x2='21'%20y2='10'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;width:18px;height:18px}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}select{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23857C6E'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpolyline%20points='6%209%2012%2015%2018%209'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;background-size:16px;padding-right:2.4rem}input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--muted)}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #9a6b061a}textarea{resize:vertical;min-height:80px}select{min-height:3rem}.file-drop{border:2px dashed var(--line);border-radius:var(--r-md);text-align:center;cursor:pointer;background:var(--paper);padding:1.75rem 1rem;transition:all .2s;position:relative}.file-drop:hover,.file-drop.drag-over{border-color:var(--green);background:#9a6b060a}.file-drop.has-file{border-color:var(--green);background:var(--green-wash)}.file-drop input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-drop-icon{width:1.75rem;height:1.75rem;color:var(--green);pointer-events:none;margin:0 auto .4rem}.file-drop-text{color:var(--muted);pointer-events:none;font-size:.825rem;font-weight:400}.file-drop-text strong{color:var(--green);font-weight:600}.file-name{color:var(--green);pointer-events:none;margin-top:.4rem;font-size:.8rem;font-weight:600}.doc-pills,.pet-pills{flex-wrap:wrap;gap:.5rem;display:flex}.doc-pill-input,.pet-pill-input,.booking-pet-check{display:none}.doc-pill-input+label,.pet-pill-input+label,.booking-pet-check+label{border:1.5px solid var(--line);letter-spacing:0;text-transform:none;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:.35rem;margin:0;padding:.45rem .9rem;font-size:.8rem;font-weight:400;transition:all .2s;display:inline-flex}.doc-pill-input:checked+label,.pet-pill-input:checked+label,.booking-pet-check:checked+label{border-color:var(--green);background:var(--green-wash);color:var(--green-deep);font-weight:600}.doc-pill-input:disabled+label{opacity:.45;cursor:not-allowed}.doc-pills.mini-avail label{flex-direction:column;flex:92px;gap:.28rem;padding-top:.5rem;padding-bottom:.45rem}.doc-pills.mini-avail .ad-dot{border-radius:50%;width:7px;height:7px;display:block}.slot-cards{gap:.5rem;display:flex}.slot-card-input{display:none}.slot-card-input+label{text-align:center;border:1.5px solid var(--line);cursor:pointer;text-transform:none;letter-spacing:0;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:.3rem;margin:0;padding:.8rem .4rem;font-weight:400;transition:all .18s;display:flex}.slot-card-input+label .ic{width:22px;height:22px;color:var(--muted);flex:none}.slot-card-input+label .slot-name{color:var(--ink);font-size:.9rem;font-weight:600}.slot-card-input:checked+label{border-color:var(--green);background:var(--green-wash)}.slot-card-input:checked+label .ic,.slot-card-input:checked+label .slot-name{color:var(--green-deep)}.info-box--plain{color:var(--muted);background:0 0;border-left:none;border-radius:0;padding:0;font-size:.78rem}.svc-cards{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.svc-card-input{display:none}.svc-card-input+label{border:1.5px solid var(--line);cursor:pointer;text-transform:none;letter-spacing:0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:.5rem;height:100%;margin:0;padding:.95rem;font-weight:400;transition:all .18s;display:flex;position:relative}.svc-soon{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--surface-sunk);border:1px solid var(--line);border-radius:999px;padding:.2rem .5rem;font-size:.6rem;font-weight:700;line-height:1;position:absolute;top:.7rem;right:.7rem}.svc-card-input+label>.ic{width:22px;height:22px;color:var(--green-deep);box-sizing:content-box;background:var(--surface-sunk);border-radius:12px;flex:none;padding:9px}.svc-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.svc-name{color:var(--ink);font-size:1rem;font-weight:600}.svc-desc{color:var(--muted);font-size:.76rem;line-height:1.35}.svc-meta{color:var(--muted);font-size:.82rem;font-weight:600}.svc-card-input:checked+label{border-color:var(--green);background:var(--green-wash);box-shadow:0 2px 10px #9a6b0614}.svc-card-input:checked+label>.ic{background:#fff}.svc-card-input:checked+label .svc-name{color:var(--green-deep)}.svc-card-input:checked+label .svc-meta{color:var(--green)}.svc-card-input:disabled+label{opacity:.5;cursor:not-allowed}.agreement-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:1.25rem;overflow:hidden}.agreement-box-scroll{max-height:220px;color:var(--ink);scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:1.25rem;font-size:.82rem;font-weight:400;line-height:1.7;overflow-y:auto}.agreement-box-scroll::-webkit-scrollbar{width:8px}.agreement-box-scroll::-webkit-scrollbar-track{background:0 0}.agreement-box-scroll::-webkit-scrollbar-thumb{background:var(--line);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.agreement-box-scroll::-webkit-scrollbar-thumb:hover{background:var(--muted);background-clip:padding-box;border:2px solid #0000}.agreement-box h4{font-family:var(--font-display);color:var(--ink);margin-bottom:.75rem;font-size:1.2rem;font-weight:600}.agreement-box h5{font-family:var(--font-display);color:var(--ink);margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.agreement-box p{margin-bottom:.75rem}.agreement-box p:last-child{margin-bottom:0}.checkbox-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);align-items:flex-start;gap:.75rem;padding:.9rem 1rem;transition:border-color .18s,background .18s;display:flex}.checkbox-row:hover{border-color:var(--green)}.checkbox-row.checked{background:var(--green-wash);border-color:#9a6b064d}.checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);cursor:pointer;flex-shrink:0;margin-top:2px}.checkbox-row label{letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer;margin:0;font-size:.82rem;font-weight:400;line-height:1.5}.info-box{background:var(--gold-wash);border-left:3px solid var(--gold);color:var(--ink);border-radius:0 8px 8px 0;margin-top:.5rem;padding:.7rem .9rem;font-size:.8rem;font-weight:400;line-height:1.5}.avail{border-left:3px solid;border-radius:0 8px 8px 0;padding:.7rem .9rem;font-size:.8rem;line-height:1.5}.avail.open{background:var(--ok-wash);border-color:var(--accent-green);color:var(--accent-green-deep)}.avail.limited{color:#9a5a0e;background:#f7eacf;border-color:#c88a22}.avail.full{background:var(--clay-wash);border-color:var(--clay);color:#8a4433}.avail.closed{color:#5c574a;background:#e4e0d6;border-color:#8a8272}.avail-strip-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;font-size:.72rem;font-weight:500}.avail-strip{scrollbar-width:thin;gap:.45rem;padding-bottom:.3rem;display:flex;overflow-x:auto}.avail-day{text-align:center;border:1.5px solid var(--line);cursor:pointer;width:52px;font-family:var(--font-body);background:#fff;border-radius:12px;flex:none;padding:.45rem .3rem .4rem;transition:border-color .15s,background .15s}.avail-day:hover:not(.is-disabled){border-color:var(--green)}.avail-day.selected{border-color:var(--green);background:var(--green-wash)}.avail-day.is-disabled{opacity:.5;cursor:not-allowed}.avail-day .ad-dow{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.6rem}.avail-day .ad-num{color:var(--ink);font-size:1.05rem;font-weight:600;font-family:var(--font-display);line-height:1.15}.avail-day .ad-dot{border-radius:50%;width:7px;height:7px;margin:.28rem auto 0;display:block}.avail-strip-legend{color:var(--muted);gap:.85rem;margin-top:.4rem;font-size:.68rem;display:flex}.avail-strip-legend span{align-items:center;gap:.3rem;display:inline-flex}.avail-strip-legend .ad-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.ad-dot.open{background:var(--accent-green)}.ad-dot.limited{background:#c88a22}.ad-dot.full{background:var(--clay)}.ad-dot.closed{background:#8a8272}.transport-pills{flex-wrap:wrap;gap:.4rem;display:flex}.transport-pill{border:1.5px solid var(--line);color:var(--ink);font-family:var(--font-body);cursor:pointer;background:#fff;border-radius:999px;flex:none;padding:.45rem .85rem;font-size:.82rem;transition:border-color .15s,background .15s,color .15s}.transport-pill:hover:not(:disabled){border-color:var(--green)}.transport-pill.selected{border-color:var(--green);background:var(--green-wash);color:var(--green-deep);font-weight:500}.transport-pill:disabled{opacity:.55;cursor:default}.selected-days{color:var(--ink);background:var(--green-wash);border-radius:8px;margin-top:.6rem;padding:.5rem .7rem;font-size:.82rem;line-height:1.5}.selected-days b{color:var(--green-deep)}.selected-days .sd-note{color:#9a5a0e;margin-top:.2rem;font-size:.75rem;display:block}.vax-bundle{flex-direction:column;display:flex}.vax-bundle>.doc-type-row{border-bottom:none}.vax-sub{flex-direction:column;gap:.35rem;margin-top:.15rem;padding-left:1.55rem;display:flex}.vax-sub-line{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.76rem;display:flex}.vax-sub-line span{align-items:center;gap:.3rem;display:inline-flex}.vax-sub-line .ic{width:12px;height:12px;color:var(--green);flex-shrink:0}.vax-sub-hint{color:var(--muted);margin-top:.15rem;padding-left:1.55rem;font-size:.74rem;line-height:1.45}.tag-ack-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);text-transform:none;letter-spacing:normal;cursor:pointer;align-items:flex-start;gap:.7rem;margin-top:1rem;padding:.95rem 1.1rem;font-weight:400;transition:border-color .15s,background .15s;display:flex}.tag-ack-card:hover{border-color:var(--green)}.tag-ack-card.done{border-left:3px solid var(--green)}.tag-ack-card input{width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin:.05rem 0 0}.tag-ack-body{flex-direction:column;gap:.2rem;display:flex}.tag-ack-msg{color:var(--ink);font-size:.82rem;line-height:1.45}.tag-ack-stamp{color:var(--green);font-size:.72rem;font-weight:600}.tag-ack-stamp:empty{display:none}.vax-file-btn{border:1.5px dashed var(--line);cursor:pointer;width:100%;color:var(--ink);text-transform:none;letter-spacing:normal;border-radius:12px;align-items:center;gap:.5rem;margin:0;padding:.7rem .9rem;font-size:.9rem;font-weight:500;display:flex}.vax-file-btn:hover{border-color:var(--green)}.vax-file-btn .ic{width:16px;height:16px;color:var(--green);flex-shrink:0}.vax-rows{flex-direction:column;display:flex}.vax-row{border-bottom:1px solid var(--line-soft);padding:.55rem 0}.vax-row:last-child{border-bottom:none}.vax-check{cursor:pointer;text-transform:none;letter-spacing:normal;color:var(--ink);align-items:center;gap:.55rem;margin:0;font-size:.92rem;font-weight:500;display:flex}.vax-check input{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}.vax-badge{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.08rem .4rem;font-size:.6rem;font-style:normal}.vax-row-fields{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding-left:1.7rem;display:flex}.vax-field{flex-direction:column;flex:140px;gap:.25rem;min-width:0;display:flex}.vax-field-label{color:var(--muted);text-transform:none;letter-spacing:normal;font-size:.68rem;font-weight:600}.vax-field input[type=date],.vax-field .vax-proof{width:100%;min-width:0}.vax-note{color:var(--muted);margin-top:.15rem;padding-left:1.85rem;font-size:.72rem;line-height:1.4}.vax-titer-hint{color:var(--muted);margin-top:.4rem;padding-left:1.7rem;font-size:.72rem;line-height:1.4}.btn-primary{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;border-radius:var(--r-md);width:100%;font-family:var(--font-body);cursor:pointer;border:none;margin-top:1.5rem;padding:.9rem 1rem;font-size:.95rem;font-weight:600;transition:transform .12s,box-shadow .2s,filter .2s;box-shadow:0 4px 14px #9a6b0647}.btn-primary:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 7px 20px #9a6b0657}.btn-primary:active:not(:disabled){transform:translateY(0)scale(.99)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary.loading .btn-text{display:none}.btn-primary.loading .btn-loading{display:inline}.btn-primary .btn-loading{display:none}.btn-ghost{color:var(--green);border:1.5px solid var(--green);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.3rem;padding:.32rem .7rem;font-size:.73rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .1s;display:inline-flex}.btn-ghost .ic{width:13px;height:13px}.btn-ghost:hover{background:var(--green);color:#fff}.btn-ghost:active{transform:scale(.94)}.btn-ghost.quiet{color:var(--muted);border-color:var(--line);font-weight:500}.btn-ghost.quiet:hover{border-color:var(--green);color:var(--green);background:0 0}.btn-clay{color:var(--clay);border:1.5px solid var(--clay);font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.78rem;font-weight:600;transition:background .15s,color .15s,transform .1s;display:inline-flex}.btn-clay .ic{width:14px;height:14px}.btn-clay:hover{background:var(--clay);color:#fff}.btn-clay:active{transform:scale(.94)}.btn-green{color:var(--green);border:1.5px solid var(--green);font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.78rem;font-weight:600;transition:background .15s,color .15s,transform .1s;display:inline-flex}.btn-green .ic{width:14px;height:14px}.btn-green:hover{background:var(--green);color:#fff}.btn-green:active{transform:scale(.94)}.nudge-welcome .btn-green{flex-shrink:0}@media (width<=480px){.nudge-welcome .btn-green{justify-content:center;width:100%}}.btn-danger,.btn-warn{font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.78rem;font-weight:600;transition:background .15s,color .15s,transform .1s;display:inline-flex}.btn-danger{color:var(--brand-error);border:1.5px solid var(--brand-error)}.btn-danger:hover{background:var(--brand-error);color:#fff}.btn-warn{color:var(--warn);border:1.5px solid var(--warn)}.btn-warn:hover{background:var(--warn);color:#fff}.btn-danger .ic,.btn-warn .ic{width:14px;height:14px}.btn-danger:active,.btn-warn:active{transform:scale(.94)}.field-hint{color:var(--muted);margin-top:.4rem;font-size:.78rem;line-height:1.5}.field-error{color:var(--brand-error);margin-top:.3rem;font-size:.75rem;display:none}.field-error.visible{display:block}.msg-chips{flex-wrap:wrap;gap:.5rem;display:flex}.msg-chip{background:var(--surface);color:var(--ink);border:1px solid var(--line);font-family:var(--font-body);cursor:pointer;border-radius:999px;padding:.45rem .85rem;font-size:.82rem;font-weight:500;transition:border-color .15s,background .15s,color .15s}.msg-chip:hover{border-color:var(--green)}.msg-chip.active{background:var(--green-wash);color:var(--green-deep);border-color:#9a6b0659}.form-error{background:var(--brand-error-light);border-radius:var(--r-sm);color:var(--brand-error);border:1px solid #b23a2e33;margin-top:1rem;padding:.8rem 1rem;font-size:.85rem;display:none}.form-error.visible{display:block}.success-wrap{text-align:center;padding:1.5rem 0}.success-circle{background:var(--green-wash);width:68px;height:68px;color:var(--green);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.1rem;animation:.4s cubic-bezier(.34,1.56,.64,1) both pop;display:flex}.success-circle .ic{width:32px;height:32px}@keyframes pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}h2{font-family:var(--font-display);color:var(--ink);margin-bottom:.5rem;font-size:1.5rem;font-weight:600}p{color:var(--muted);font-size:.875rem;font-weight:400;line-height:1.6}.doc-cards{flex-direction:column;gap:1rem;display:flex}.doc-card{border-radius:var(--r-md);border:1px solid var(--line);background:#fff;overflow:hidden}.doc-card-header{background:var(--surface);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:.9rem 1rem;display:flex}.doc-card-header.ok{background:var(--surface);border-left:3px solid var(--green)}.doc-card-header.missing{background:var(--surface);border-left:3px solid var(--clay)}.doc-card-title{color:var(--ink);align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.doc-card-title .ic{width:16px;height:16px}.doc-card-status{font-size:.72rem;font-weight:600}.doc-card-status.ok{color:var(--green);background:0 0}.doc-card-status.missing{color:var(--clay);background:0 0}.doc-card-body{padding:.75rem 1rem}.doc-type-row{border-bottom:1px solid var(--line-soft);flex-direction:column;align-items:stretch;gap:.45rem;padding:.65rem 0;display:flex}.doc-type-row:last-child{border-bottom:none}.doc-type-label{color:var(--ink);align-items:center;gap:.5rem;font-size:.84rem;font-weight:500;display:flex}.doc-type-label .ic{width:15px;height:15px;color:var(--muted);flex-shrink:0}.doc-optional-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-sunk);border-radius:4px;margin-left:.5rem;padding:.1rem .4rem;font-size:.62rem;font-weight:600}.doc-badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:4px;margin-left:.5rem;padding:.1rem .4rem;font-size:.62rem;font-weight:700}.doc-badge.legal{color:var(--clay);background:var(--clay-wash,#f6e7e0)}.doc-badge.policy{color:var(--brand-primary);background:var(--gold-wash,#f5ecd8)}.doc-badge.rec{color:var(--accent-green-deep);background:var(--green-wash)}.lead-checks,.lead-consents{flex-direction:column;gap:.5rem;display:flex}.lead-check,.lead-consent{text-transform:none;letter-spacing:normal;color:var(--ink);background:var(--surface);border:1px solid var(--line-soft);cursor:pointer;border-radius:10px;align-items:center;gap:.6rem;padding:.7rem .85rem;font-size:.9rem;font-weight:400;display:flex}.lead-consent{align-items:flex-start;line-height:1.45}.lead-check input,.lead-consent input{width:18px;height:18px;accent-color:var(--brand-primary);flex-shrink:0;margin:0}.lead-consent input{margin-top:2px}.lead-check span,.lead-consent span{flex:1}.lead-req,.lead-rec{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:4px;padding:.1rem .4rem;font-size:.62rem;font-style:normal;font-weight:700}.lead-req{color:var(--clay);background:var(--clay-wash,#f6e7e0)}.lead-rec{color:var(--muted);background:var(--surface-sunk)}.doc-type-right{align-items:center;gap:.6rem;width:100%;display:flex}.doc-type-right .doc-status-onfile{flex:auto}.doc-status-onfile.soon{color:var(--clay)}.btn-doc-action.subtle{color:var(--muted);border:1px solid var(--line);padding:.3rem .7rem}.btn-doc-action.subtle:hover{border-color:var(--green);color:var(--green)}.doc-card-pet-row{flex-direction:column;gap:.5rem;display:flex}.doc-card-pet{justify-content:space-between;align-items:center;font-size:.83rem;display:flex}.doc-card-pet-name{color:var(--ink);align-items:center;gap:.4rem;font-weight:400;display:flex}.btn-upload-small{background:var(--green);color:#fff;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:.35rem .85rem;font-size:.75rem;font-weight:600;transition:background .2s,transform .1s}.btn-upload-small:hover{background:var(--green-bright)}.btn-upload-small:active{transform:scale(.95)}.doc-status-onfile{color:var(--green);cursor:default;background:0 0;border:none;align-items:center;gap:.3rem;padding:0;font-size:.78rem;font-weight:600;display:inline-flex}.doc-status-onfile .ic{width:13px;height:13px}.btn-doc-action{font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,transform .1s;display:inline-flex}.btn-doc-action .ic{width:12px;height:12px}.btn-doc-action.warn{color:var(--clay);border:1.5px solid var(--clay)}.btn-doc-action.warn:hover{background:var(--clay);color:#fff}.btn-doc-action:active{transform:scale(.95)}.modal-scroll{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.modal-scroll::-webkit-scrollbar{width:8px}.modal-scroll::-webkit-scrollbar-track{background:0 0}.modal-scroll::-webkit-scrollbar-thumb{background:var(--line);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.modal-scroll::-webkit-scrollbar-thumb:hover{background:var(--muted);background-clip:padding-box;border:2px solid #0000}.consent-confirm{background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--green);border-radius:0 12px 12px 0;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding:.9rem 1.1rem;display:flex}.consent-check{width:26px;height:26px;color:var(--green);flex-shrink:0;margin-top:.05rem}.consent-title{font-family:var(--font-body);color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.35}.consent-sub{color:var(--muted);margin-top:.2rem;font-size:.8rem}.compliance-banner{border-radius:var(--r-md);align-items:flex-start;gap:.85rem;margin-bottom:.25rem;padding:1.1rem 1.25rem;display:flex}.compliance-banner.compliant{background:var(--ok-wash);border:1px solid #2e8b4e33}.compliance-banner.warning{background:var(--brand-warning-light);border:1px solid #b4690e33}.compliance-banner.blocked{background:var(--brand-error-light);border:1px solid #b23a2e33}.compliance-banner-icon{flex-shrink:0;width:1.5rem;height:1.5rem;margin-top:.1rem}.compliance-banner.compliant .compliance-banner-icon{color:var(--green)}.compliance-banner.warning .compliance-banner-icon{color:var(--warn)}.compliance-banner.blocked .compliance-banner-icon{color:var(--brand-error)}.compliance-banner-body{flex:1}.compliance-banner-title{font-family:var(--font-display);margin-bottom:.25rem;font-size:1.05rem;font-weight:600}.compliance-banner.compliant .compliance-banner-title{color:var(--green-deep)}.compliance-banner.warning .compliance-banner-title{color:var(--warn)}.compliance-banner.blocked .compliance-banner-title{color:var(--brand-error)}.compliance-banner-desc{color:var(--ink);font-size:.8rem;font-weight:400;line-height:1.5}.btn-book{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;border-radius:var(--r-md);width:100%;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;margin-top:1.25rem;padding:1rem;font-size:1rem;font-weight:600;transition:transform .12s,box-shadow .2s,filter .2s;display:flex;box-shadow:0 4px 14px #9a6b0647}.btn-book:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 7px 20px #9a6b0657}.btn-book:active:not(:disabled){transform:translateY(0)scale(.99)}.btn-book:disabled{opacity:.4;cursor:not-allowed;transform:none}footer{text-align:center;color:var(--muted);opacity:.6;z-index:1;margin-top:2rem;font-size:.72rem;position:relative}@media (width<=420px){.card{padding:1.4rem 1.15rem}.form-row{grid-template-columns:1fr}.subactions{gap:.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.stagger{opacity:1}.card{animation:none}}
