.auth-v2{--auth-forest:#0b4035;--auth-deep:#082f29;--auth-ivory:#faf9f5;--auth-ink:#173b34;--auth-teal:#099f89;--auth-muted:#5b6f62;--auth-border:#dce3dd;--auth-danger:#a6382e;--auth-heading:var(--font-manrope), system-ui, sans-serif;--auth-body:var(--font-dm-sans), system-ui, sans-serif;background:var(--auth-ivory);color:var(--auth-ink);font-family:var(--auth-body);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.5}.auth-v2 *,.auth-v2 :before,.auth-v2 :after{box-sizing:border-box}.auth-v2 h1,.auth-v2 h2,.auth-v2 h3,.auth-v2 p{margin:0}.auth-v2 h1,.auth-v2 h2,.auth-v2 h3{font-family:var(--auth-heading);font-weight:500}.auth-v2 a{color:inherit;text-decoration:none}.auth-v2 button{color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0}.auth-v2 button[disabled]{cursor:default}.auth-v2 input{font:inherit}.auth-v2 img{max-width:100%;display:block}.auth-v2 a:focus-visible,.auth-v2 button:focus-visible,.auth-v2 input:focus-visible{outline-offset:3px;border-radius:4px;outline:3px solid #37b5a1}.auth-v2 [hidden]{display:none!important}.auth-v2 .skip-link{color:var(--auth-ink);z-index:100;background:#fff;border-radius:8px;padding:12px;font-size:14px;position:fixed;top:-100px;left:20px}.auth-v2 .skip-link:focus{top:10px}.auth-v2 .auth-shell{min-height:100dvh;padding:max(12px, env(safe-area-inset-top,0px)) max(12px, env(safe-area-inset-right,0px)) max(12px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));grid-template-columns:1fr 1fr;gap:12px;display:grid}.auth-v2 .auth-side{flex-direction:column;min-width:0;min-height:0;display:flex}.auth-v2 .auth-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 28px;display:flex}.auth-v2 .auth-brandmark{align-items:center;gap:9px;display:inline-flex}.auth-v2 .back-site{color:#526c5d;white-space:nowrap;font-size:13px}.auth-v2 .back-site:hover{color:var(--auth-forest)}.auth-v2 .auth-main{flex-direction:column;flex:auto;justify-content:center;width:min(410px,100% - 40px);min-height:0;margin:auto;padding:8px 0;display:flex}.auth-v2 .auth-main h1{letter-spacing:-1px;color:var(--auth-forest);font-size:clamp(24px,4.5vw,30px);font-weight:550;line-height:1.15}.auth-v2 .auth-main h1:focus-visible{outline-offset:5px;outline:3px solid #37b5a1}.auth-v2 .auth-subtitle{color:var(--auth-muted);margin-top:6px;font-size:14px;line-height:1.45}.auth-v2 .auth-mode{border-bottom:1px solid #dce5dc;gap:20px;margin:12px 0 10px;display:flex}.auth-v2 .auth-mode button{color:#637469;border-bottom:2px solid #0000;padding:0 1px 8px;font-size:14px;transition:color .2s,border-color .2s}.auth-v2 .auth-mode button[aria-pressed=true]{color:#153f32;border-color:#153f32;font-weight:600}.auth-v2 .provider-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.auth-v2 .provider-grid button{color:#244736;background:#fff;border:1px solid #d7e0d9;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 10px;font-size:14px;transition:background .2s,border-color .2s;display:flex}.auth-v2 .provider-grid button:hover{background:#f0f5ef;border-color:#91b29c}.auth-v2 .provider-grid svg{flex-shrink:0;width:18px;height:18px}.auth-v2 .auth-divider{color:#708176;align-items:center;gap:12px;margin:10px 0;font-size:12px;display:flex}.auth-v2 .auth-divider:before,.auth-v2 .auth-divider:after{content:"";background:#e0e6df;flex:1;height:1px}.auth-v2 .auth-field{margin-bottom:10px}.auth-v2 .auth-field label{margin-bottom:4px;font-size:13px;font-weight:600;display:block}.auth-v2 .auth-field input,.auth-v2 .auth-field .auth-select,.auth-v2 .auth-textarea{width:100%;height:44px;color:var(--auth-ink);font-size:14px;font:inherit;background:#fff;border:1px solid #cfdcd2;border-radius:9px;outline:none;padding:0 12px;transition:box-shadow .2s,border-color .2s}.auth-v2 .auth-field .auth-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%235b6f62' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.auth-v2 .auth-textarea{resize:vertical;height:auto;min-height:64px;padding:10px 12px}.auth-v2 .auth-field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (max-width:520px){.auth-v2 .auth-field-row{grid-template-columns:1fr}}.auth-v2 .auth-choice-grid{gap:10px;margin-top:8px;display:grid}.auth-v2 .auth-choice-card{text-align:left;background:#fff;border:1px solid #cfdcd2;border-radius:10px;gap:4px;width:100%;padding:14px;transition:border-color .2s,box-shadow .2s;display:grid}.auth-v2 .auth-choice-card strong{font-family:var(--auth-heading);color:var(--auth-ink);font-size:15px;font-weight:600}.auth-v2 .auth-choice-card span{color:var(--auth-muted);font-size:13px;line-height:1.4}.auth-v2 .auth-choice-card:hover:not([disabled]){border-color:#388368;box-shadow:0 0 0 3px #38836817}.auth-v2 .auth-choice-card[disabled]{opacity:.72}.auth-v2 .auth-progress{grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 8px;display:grid}.auth-v2 .auth-progress>span{background:#dbe4dd;border-radius:99px;height:4px}.auth-v2 .auth-progress>span.is-on{background:var(--auth-teal)}.auth-v2 .auth-step-label{color:var(--auth-muted);margin-bottom:6px;font-size:12px}.auth-v2 .auth-fieldset{border:0;margin:0 0 10px;padding:0}.auth-v2 .auth-fieldset legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.auth-v2 .auth-chips{flex-wrap:wrap;gap:8px;display:flex}.auth-v2 .auth-chip{color:var(--auth-ink);background:#fff;border:1px solid #cfdcd2;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:500}.auth-v2 .auth-chip.is-on{color:#1d4d3a;background:#e8f3ec;border-color:#2f6b54}.auth-v2 .auth-chip[disabled]{opacity:.72}.auth-v2 .auth-field input::placeholder{color:#89998f}.auth-v2 .auth-field input:focus{border-color:#388368;box-shadow:0 0 0 3px #38836817}.auth-v2 .auth-field input:disabled{color:#6c7e72;background:#f4f6f2}.auth-v2 .auth-field input[aria-invalid=true]{border-color:#b44d42}.auth-v2 .label-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-v2 .label-row button{color:#315d47;text-underline-offset:2px;padding:0 0 4px;font-size:12px;text-decoration:underline}.auth-v2 .password-wrap{position:relative}.auth-v2 .password-wrap input{padding-right:48px}.auth-v2 .password-wrap button{color:#6b8070;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:4px;right:4px}.auth-v2 .password-wrap svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.auth-v2 .auth-field small{color:#64776b;margin-top:4px;font-size:12px;line-height:1.4;display:block}.auth-v2 .auth-field .field-error{color:var(--auth-danger)}.auth-v2 .auth-submit{background:var(--auth-forest);color:#fff;border-radius:9px;justify-content:center;align-items:center;gap:14px;width:100%;min-height:44px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .2s,transform .2s;display:flex}.auth-v2 .auth-submit:hover:not([disabled]){background:#175843;transform:translateY(-1px)}.auth-v2 .auth-submit[disabled]{opacity:.72}.auth-v2 .sso-button{color:#3e644d;justify-content:center;gap:10px;width:100%;margin-top:2px;padding:10px;font-size:13px;display:flex}.auth-v2 .sso-button:hover{color:var(--auth-forest)}.auth-v2 .auth-back{text-align:center;color:#335e46;width:100%;margin-top:12px;font-size:13px;display:block}.auth-v2 .auth-bookings{flex-direction:column;gap:28px;margin:8px 0 4px;display:flex}.auth-v2 .auth-bookings-group-title{letter-spacing:.02em;text-transform:uppercase;color:var(--auth-muted);margin:0 0 4px;font-size:13px;font-weight:700}.auth-v2 .auth-bookings-group:not(:first-child) .auth-bookings-group-title{margin-top:4px;padding-top:4px}.auth-v2 .auth-bookings-row{border-bottom:1px solid var(--auth-border);flex-wrap:wrap;align-items:flex-start;gap:10px 16px;margin:0;padding:18px 0;display:flex}.auth-v2 .auth-bookings-row:last-child{border-bottom:none}.auth-v2 .auth-bookings-label{min-width:min(100%,140px);color:var(--auth-ink);flex:160px;padding-top:6px;font-size:14px;font-weight:600}.auth-v2 .auth-bookings-row .auth-chips{flex:240px;justify-content:flex-start;min-width:min(100%,240px)}.auth-v2 .auth-bookings-help{color:var(--auth-muted);flex:100%;margin:0;font-size:12px;line-height:1.4}.auth-v2 .auth-bookings-note{color:var(--auth-muted);text-align:center;margin:10px 0 0;font-size:12px;line-height:1.45}.auth-v2 .auth-alt{color:#6b7d70;text-align:center;margin-top:10px;font-size:13px;line-height:1.45}.auth-v2 .auth-alt a{color:#315d47;text-underline-offset:2px;font-weight:500;text-decoration:underline}.auth-v2 .auth-owner-hint{color:#6b7d70;text-align:center;margin-top:10px;font-size:12px;line-height:1.4}.auth-v2 .auth-owner-hint-lead{color:#526c5d;font-weight:500}.auth-v2 .auth-feedback{color:#315840;background:#eef5ef;border:1px solid #d2e1d6;border-radius:10px;margin-top:8px;padding:10px 12px;font-size:14px;line-height:1.4}.auth-v2 .auth-feedback a{color:#1f5a3f;text-underline-offset:2px;font-weight:600;text-decoration:underline}.auth-v2 .auth-feedback--providers{margin:8px 0 0}.auth-v2 .auth-alert{color:#8c2f26;background:#fbf0ee;border:1px solid #e3c3bd;border-radius:10px;margin-bottom:10px;padding:10px 12px;font-size:14px;line-height:1.4}.auth-v2 .auth-footer{color:#6b7d70;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 28px;font-size:11px;display:flex}.auth-v2 .auth-legal{gap:15px;display:flex}.auth-v2 .auth-footer a{color:#436650}.auth-v2 .auth-footer a:hover{color:var(--auth-forest)}.auth-v2 .auth-brand{isolation:isolate;background:var(--auth-deep);color:#f3f4ea;border-radius:20px;flex-direction:column;height:100%;min-height:0;padding:24px 28px;display:flex;position:relative;overflow:hidden}.auth-v2 .auth-brand:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(at 48% 56%,#276f554d,#0000 68%);position:absolute;inset:0}.auth-v2 .auth-network{pointer-events:none;z-index:0;position:absolute;inset:0}.auth-v2 .auth-network svg{fill:none;stroke:#9ad1b0;stroke-width:.8px;opacity:.13;width:100%;height:100%}.auth-v2 .auth-network path{stroke-dasharray:3 9;animation:70s linear infinite auth-v2-flow}.auth-v2 .auth-network path:nth-child(2){animation-duration:93s;animation-direction:reverse}.auth-v2 .auth-brand-top,.auth-v2 .auth-brand-copy,.auth-v2 .auth-product-scene,.auth-v2 .auth-brand-bottom{z-index:1;position:relative}.auth-v2 .auth-brand-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-v2 .auth-brand-chrome{align-items:center;gap:10px;display:inline-flex}.auth-v2 .brand-pill{letter-spacing:1.5px;color:#b8d0be;align-items:center;gap:8px;font-size:10px;display:flex}.auth-v2 .brand-pill i{background:#aad5b4;border-radius:50%;flex-shrink:0;width:5px;height:5px}.auth-v2 .auth-motion-toggle{color:#bfd8c5;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:7px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.auth-v2 .auth-motion-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.auth-v2 .auth-brand-meta{align-items:center;gap:14px;display:flex}.auth-v2 .auth-brand-copy{flex-shrink:0;margin-top:18px}.auth-v2 .auth-brand-copy h2{letter-spacing:-1.2px;font-size:clamp(24px,2.6vw,36px);line-height:1.15}.auth-v2 .auth-brand-copy h2 span{color:#bdddc3}.auth-v2 .auth-brand-copy p{color:#b2cbbb;margin-top:10px;font-size:14px;line-height:1.5}.auth-v2 .auth-product-scene{flex:auto;justify-content:center;align-items:center;min-height:0;margin:16px 0 12px;animation:.9s both auth-v2-entrance;display:flex;position:relative}.auth-v2 .auth-dashboard{color:#183e32;transform-origin:50%;background:#f7faf6;border:1px solid #ffffff5c;border-radius:13px;width:100%;max-width:520px;overflow:hidden;transform:rotate(-1.5deg);box-shadow:0 30px 80px #001d2340}.auth-v2 .dash-toolbar{color:#5f7868;background:#edf3eb;border-bottom:1px solid #dce6da;align-items:center;gap:12px;padding:10px 14px;font-size:10px;display:flex}.auth-v2 .mock-wordmark{font-family:var(--auth-heading);letter-spacing:-1.4px;color:#153f32;align-items:baseline;margin-right:auto;font-size:23px;font-weight:750;line-height:1.1;display:inline-flex}.auth-v2 .brand-dot{background:#91c9aa;border-radius:50%;width:5px;height:5px;margin-left:3px;display:inline-block}.auth-v2 .dash-avatar{background:#d9e6d8;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:9px;display:grid}.auth-v2 .dash-content{padding:14px}.auth-v2 .dash-welcome{justify-content:space-between;align-items:center;gap:10px;display:flex}.auth-v2 .dash-welcome>div>span{letter-spacing:1px;color:#6c8070;font-size:8px}.auth-v2 .dash-welcome h3{letter-spacing:-.5px;margin-top:2px;font-size:17px}.auth-v2 .dash-date{color:#687e6e;font-size:9px}.auth-v2 .auth-metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.auth-v2 .auth-metrics>div{background:#fff;border:1px solid #e0e8dd;border-radius:8px;padding:8px 10px}.auth-v2 .auth-metrics span{color:#59725f;font-size:10px}.auth-v2 .auth-metrics strong{font-size:20px;font-weight:500;line-height:1.35;display:block}.auth-v2 .auth-metrics small{color:#6e8271;font-size:9px}.auth-v2 .dash-schedule{background:#fff;border:1px solid #e0e8dd;border-radius:8px;margin-top:10px}.auth-v2 .dash-schedule header{border-bottom:1px solid #e9eee6;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:11px;display:flex}.auth-v2 .dash-schedule header>span{color:#65816b;font-size:9px}.auth-v2 .auth-appointment{border-bottom:1px solid #edf1e9;align-items:center;gap:9px;padding:9px 10px;display:flex}.auth-v2 .auth-appointment:last-child{border-bottom:0}.auth-v2 .auth-appointment time{color:#56705c;font-size:10px}.auth-v2 .auth-appointment img,.auth-v2 .dash-pet{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.auth-v2 .dash-pet{background:#edf1e6;place-items:center;font-size:12px;display:grid}.auth-v2 .auth-appointment b{font-size:11px}.auth-v2 .auth-appointment small{color:#69816f;font-size:9px;display:block}.auth-v2 .auth-confirmed{color:#3e7051;white-space:nowrap;background:#e6f2e7;border-radius:20px;margin-left:auto;padding:3px 6px;font-size:8px}.auth-v2 .auth-floating{color:#163f30;background:#fff;border:1px solid #dce8da;border-radius:12px;align-items:flex-start;gap:11px;padding:12px 14px;animation:8s ease-in-out infinite auth-v2-float;display:flex;position:absolute;box-shadow:0 13px 35px #001d2c26}.auth-v2 .auth-float-message{width:220px;top:72px;right:-12px}.auth-v2 .auth-float-ai{width:260px;animation-delay:-3s;bottom:-28px;left:-12px}.auth-v2 .auth-float-icon{background:#eaf3e8;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.auth-v2 .auth-floating small{letter-spacing:.8px;color:#66826a;margin-bottom:5px;font-size:8px;display:block}.auth-v2 .auth-floating b{font-size:12px;font-weight:600}.auth-v2 .auth-floating p{color:#5c7862;margin-top:4px;font-size:10px;line-height:1.7}.auth-v2 .auth-brand-bottom{color:#a6c2ad;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:12px;margin-top:auto;padding-top:8px;font-size:11px;display:flex}.auth-v2 .auth-brand-bottom i{background:#5a826b;border-radius:50%;width:3px;height:3px}@keyframes auth-v2-flow{to{stroke-dashoffset:-480px}}@keyframes auth-v2-float{50%{transform:translateY(-6px)}}@keyframes auth-v2-entrance{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.auth-v2.motion-paused *,.auth-v2.motion-paused :before,.auth-v2.motion-paused :after{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){.auth-v2 *,.auth-v2 :before,.auth-v2 :after{transition:none!important;animation:none!important}}@media (min-width:801px) and (min-height:700px){.auth-v2{height:100dvh;overflow:hidden}.auth-v2 .auth-shell{height:100dvh;min-height:0;overflow:hidden}.auth-v2 .auth-side,.auth-v2 .auth-brand{overflow:hidden}}@media (min-width:801px) and (max-height:900px){.auth-v2 .auth-brand{padding:18px 22px}.auth-v2 .auth-brand-copy{margin-top:12px}.auth-v2 .auth-brand-copy h2{font-size:clamp(22px,2.4vw,30px)}.auth-v2 .auth-brand-copy p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;display:-webkit-box;overflow:hidden}.auth-v2 .auth-product-scene{margin:10px 0 6px}.auth-v2 .auth-dashboard{transform:rotate(-1.5deg)scale(.88)}.auth-v2 .auth-float-message,.auth-v2 .auth-float-ai,.auth-v2 .dash-schedule .auth-appointment:nth-child(n+4){display:none}.auth-v2 .auth-brand-bottom{padding-top:4px;font-size:10px}}@media (min-width:801px) and (max-height:760px){.auth-v2 .auth-brand-copy p{display:none}.auth-v2 .auth-dashboard{transform:rotate(-1.5deg)scale(.78)}.auth-v2 .auth-brand-bottom{display:none}.auth-v2 .auth-owner-hint{margin-top:6px;font-size:11px;line-height:1.35}.auth-v2 .auth-alt{margin-top:6px;font-size:12px}}@media (min-width:1600px){.auth-v2 .auth-shell{grid-template-columns:1.05fr 1fr}.auth-v2 .auth-brand{padding:28px 40px}.auth-v2 .auth-main{width:440px}.auth-v2 .auth-product-scene{width:100%;max-width:610px;margin-left:auto;margin-right:auto}}@media (max-width:1100px){.auth-v2 .auth-brand{padding:20px 18px}.auth-v2 .auth-header,.auth-v2 .auth-footer{padding-left:16px;padding-right:16px}.auth-v2 .auth-float-message{width:200px;right:-6px}.auth-v2 .auth-float-ai{width:230px;left:-6px}.auth-v2 .dash-date{display:none}.auth-v2 .auth-brand-copy h2{font-size:28px}.auth-v2 .auth-appointment{gap:6px}.auth-v2 .auth-confirmed{display:none}}@media (max-width:800px){.auth-v2 .auth-shell{padding:max(0px, env(safe-area-inset-top,0px)) max(0px, env(safe-area-inset-right,0px)) max(0px, env(safe-area-inset-bottom,0px)) max(0px, env(safe-area-inset-left,0px));grid-template-columns:1fr;gap:0;height:auto;min-height:100dvh;overflow:visible}.auth-v2{height:auto;overflow:visible}.auth-v2 .auth-brand{display:none}.auth-v2 .auth-side{min-height:100dvh}.auth-v2 .auth-header{padding:18px 20px}.auth-v2 .auth-main{justify-content:flex-start;width:min(430px,100% - 40px);padding:12px 0 20px}.auth-v2 .auth-footer{padding:16px 20px}}@media (max-width:420px){.auth-v2 .auth-header{padding:16px}.auth-v2 .auth-main{width:calc(100% - 32px)}.auth-v2 .provider-grid{grid-template-columns:1fr}.auth-v2 .auth-mode{gap:16px}.auth-v2 .auth-footer{justify-content:flex-start;row-gap:6px;padding:14px 16px}}