*,:before,:after{box-sizing:border-box}body{color:#374151;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;margin:0;font-family:Inter,system-ui,-apple-system,sans-serif}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{margin:0;font-family:Inter,system-ui,sans-serif}p{margin:0}a{text-decoration:none}button{cursor:pointer;font-family:inherit}.navbar{z-index:200;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;height:72px;padding:0 32px;display:flex;position:sticky;top:0}.navbar-logo{align-items:center;text-decoration:none;display:flex}.logo-img{object-fit:contain;width:auto;height:56px}.navbar-links{align-items:center;gap:4px;display:flex}.navbar-links a{color:#4b5563;border-radius:50px;padding:7px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s}.navbar-links a:hover{color:#0d1b3e;background:#f3f4f6}.navbar-links a.active{color:#fff;background:#0d1b3e}.btn-login{color:#fff;letter-spacing:.2px;cursor:pointer;background:#0d1b3e;border:none;border-radius:50px;padding:9px 22px;font-size:14px;font-weight:700;transition:background .15s}.btn-login:hover{background:#1a3060}.btn-logout{color:#6b7280;cursor:pointer;background:0 0;border:1.5px solid #e5e7eb;border-radius:50px;padding:7px 16px;font-size:14px;font-weight:600;transition:all .15s}.btn-logout:hover{color:#374151;border-color:#9ca3af}.admin-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;vertical-align:middle;background:#3b82f6;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700}.navbar-mobile-right{align-items:center;gap:10px;display:none}.hamburger{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;gap:5px;padding:6px;transition:background .15s;display:flex}.hamburger:hover{background:#f3f4f6}.hamburger span{background:#374151;border-radius:2px;width:22px;height:2px;transition:all .2s;display:block}.hamburger-open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger-open span:nth-child(2){opacity:0}.hamburger-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-overlay{z-index:150;background:#0000004d;position:fixed;inset:72px 0 0}.mobile-menu{z-index:160;background:#fff;border-bottom:1px solid #e5e7eb;flex-direction:column;padding:8px 16px 16px;display:flex;position:fixed;top:72px;left:0;right:0;box-shadow:0 8px 24px #0000001a}.mobile-link{color:#374151;border-bottom:1px solid #f3f4f6;padding:14px 12px;font-size:16px;font-weight:600;text-decoration:none;transition:color .15s}.mobile-link:last-of-type{border-bottom:none}.mobile-link:hover{color:#0d1b3e}.mobile-link-active{color:#0d1b3e;font-weight:700}.mobile-menu-footer{border-top:1px solid #f3f4f6;justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;display:flex}@media (width<=768px){.navbar{height:64px;padding:0 16px}.logo-img{height:46px}.navbar-desktop{display:none!important}.navbar-mobile-right{display:flex}}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:400px;padding:40px;position:relative;box-shadow:0 20px 60px #00000026}.modal-close{cursor:pointer;color:#9ca3af;background:0 0;border:none;font-size:18px;position:absolute;top:16px;right:16px}.modal-logo{margin-bottom:12px;font-size:48px}.modal-tabs{background:#f3f4f6;border-radius:8px;margin-bottom:20px;padding:3px;display:flex}.mtab{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:8px;font-size:14px;font-weight:600;transition:all .15s}.mtab.active{color:#1a1a2e;background:#fff;box-shadow:0 1px 4px #00000014}.btn-staff{background:#1a1a2e!important}.btn-staff:hover{background:#0f172a!important}.modal h2{color:#1a1a2e;margin:0 0 8px}.modal p{color:#6b7280;margin-bottom:24px;font-size:14px}.modal form{flex-direction:column;gap:12px;display:flex}.modal input{border:1px solid #d1d5db;border-radius:8px;outline:none;padding:12px 16px;font-size:15px;transition:border-color .2s}.modal input:focus{border-color:#2563eb}.btn-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;margin-top:4px;padding:12px;font-size:16px;font-weight:600;transition:background .2s}.btn-submit:hover{background:#1d4ed8}.form-field{text-align:left;flex-direction:column;gap:5px;display:flex}.form-field label{text-transform:uppercase;letter-spacing:.5px;color:#6b7280;font-size:12px;font-weight:700}.modal-error{color:#991b1b;text-align:left;background:#fee2e2;border-radius:8px;margin:0;padding:10px 14px;font-size:13px;font-weight:500}.modal-footer{color:#6b7280;margin-top:20px!important;font-size:14px!important}.modal-switch-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.check-email-icon{margin-bottom:12px;font-size:52px}.landing{flex-direction:column;display:flex}.hero{text-align:center;background-color:#0d1b3e;background-image:linear-gradient(#0d1b3ead,#0d1b3ead),url(/images/hero-dogs.jpg);background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:88vh;padding:80px 24px;display:flex}.hero-content{max-width:760px}.hero-eyebrow{letter-spacing:2px;text-transform:uppercase;color:#ffffff8c;margin-bottom:20px;font-size:13px;font-weight:700}.hero h1{color:#fff;letter-spacing:-1.5px;margin-bottom:16px;font-size:72px;font-weight:900;line-height:1.08}.hero-sub{color:#ffffffb3;margin-bottom:40px;font-size:22px;font-weight:600}.btn-hero{color:#fff;cursor:pointer;letter-spacing:.3px;background:0 0;border:2px solid #fff9;border-radius:50px;padding:15px 38px;font-size:16px;font-weight:600;transition:all .2s;display:inline-block}.btn-hero:hover{background:#ffffff1f;border-color:#fff}.welcome{text-align:center;background:#fff;padding:80px 24px}.welcome-inner{max-width:640px;margin:0 auto}.welcome h2{color:#0d1b3e;letter-spacing:-.8px;margin-bottom:16px;font-size:40px;font-weight:900}.welcome p{color:#6b7280;font-size:17px;line-height:1.75}.services{background:#f8f9fb;padding:80px 24px}.services-inner{text-align:center;max-width:1000px;margin:0 auto}.section-eyebrow{letter-spacing:2px;text-transform:uppercase;color:#c41e1e;margin-bottom:10px;font-size:12px;font-weight:700}.services h2{color:#0d1b3e;letter-spacing:-.5px;margin-bottom:48px;font-size:36px;font-weight:900}.services-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.service-card{text-align:left;background:#fff;border:1.5px solid #e5e7eb;border-radius:18px;flex-direction:column;gap:10px;padding:36px 28px;transition:box-shadow .2s,transform .2s;display:flex}.service-card:hover{transform:translateY(-3px);box-shadow:0 8px 32px #0d1b3e1a}.service-card-featured{color:#fff;background:#0d1b3e;border-color:#0d1b3e}.service-card-featured h3{color:#fff}.service-card-featured p{color:#ffffffb3}.service-card-featured .service-price{color:#ffffff80}.service-icon{margin-bottom:4px;font-size:36px}.service-card h3{color:#0d1b3e;font-size:19px;font-weight:800}.service-card p{color:#6b7280;flex:1;font-size:14px;line-height:1.65}.service-price{color:#9ca3af;margin-top:4px;font-size:13px;font-weight:700}.why-us{background:#fff;padding:80px 24px}.why-inner{text-align:center;max-width:860px;margin:0 auto}.why-us h2{color:#0d1b3e;letter-spacing:-.5px;margin-bottom:48px;font-size:36px;font-weight:900}.why-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.why-item{background:#f8f9fb;border-radius:14px;align-items:flex-start;gap:16px;padding:24px;display:flex}.why-check{color:#fff;background:#0d1b3e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:2px;font-size:14px;font-weight:700;display:flex}.why-item strong{color:#0d1b3e;margin-bottom:4px;font-size:15px;font-weight:700;display:block}.why-item p{color:#6b7280;font-size:14px;line-height:1.6}.cta{text-align:center;color:#fff;background:#0d1b3e;padding:96px 24px}.cta h2{color:#fff;letter-spacing:-.8px;margin-bottom:12px;font-size:40px;font-weight:900}.cta p{color:#fff9;margin-bottom:36px;font-size:17px}.btn-cta{color:#0d1b3e;cursor:pointer;background:#fff;border:none;border-radius:50px;padding:15px 38px;font-size:16px;font-weight:800;transition:opacity .15s}.btn-cta:hover{opacity:.9}@media (width<=768px){.hero{min-height:75vh;padding:60px 20px}.hero h1{letter-spacing:-.5px;font-size:42px}.hero-sub{font-size:17px}.welcome h2,.services h2,.why-us h2,.cta h2{font-size:28px}.services-grid,.why-grid{grid-template-columns:1fr}.welcome,.services,.why-us{padding:56px 20px}.cta{padding:64px 20px}}@media (width<=480px){.hero h1{font-size:32px}.hero-sub{margin-bottom:28px;font-size:15px}.btn-hero{padding:13px 28px;font-size:15px}.welcome h2,.services h2,.why-us h2,.cta h2{font-size:24px}.cta p{font-size:15px}.service-card{padding:24px 20px}.why-item{padding:16px}}.news-page{max-width:760px;margin:0 auto;padding:48px 24px}.page-header p{color:#6b7280;font-size:16px}.news-feed{flex-direction:column;gap:20px;display:flex}.news-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:28px;transition:box-shadow .2s}.news-card:hover{box-shadow:0 4px 16px #00000012}.news-meta{align-items:center;gap:12px;margin-bottom:12px;display:flex}.news-tag{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:600}.tag-announcement{color:#1d4ed8;background:#dbeafe}.tag-news{color:#065f46;background:#d1fae5}.tag-important{color:#991b1b;background:#fee2e2}.news-date{color:#9ca3af;font-size:13px}.news-card h2{color:#1a1a2e;margin:0 0 10px;font-size:20px;font-weight:700}.news-card p{color:#4b5563;font-size:15px;line-height:1.65}.appointments-page{flex-direction:column;gap:20px;max-width:860px;margin:0 auto;padding:48px 24px;display:flex}.success-banner{color:#065f46;background:#d1fae5;border-radius:10px;padding:13px 18px;font-size:14px;font-weight:600}.section-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:28px}.section-card h2{color:#1a1a2e;margin:0 0 20px;font-size:18px;font-weight:700}.empty{color:#9ca3af;text-align:center;padding:28px 0;font-size:15px}.appt-table{border-collapse:collapse;width:100%;font-size:14px}.appt-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;border-bottom:1px solid #f3f4f6;padding:8px 12px;font-size:11px;font-weight:700}.appt-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f9fafb;padding:13px 12px}.appt-table tr:last-child td{border-bottom:none}.type-badge{color:#1a1a2e;white-space:nowrap;font-weight:600}.td-price{color:#1a1a2e;font-weight:700}.td-dog{color:#1a1a2e;font-weight:600}.dog-selector{margin-bottom:20px}.selector-label{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin:0 0 10px;font-size:13px;font-weight:700}.dog-chips{flex-wrap:wrap;gap:10px;display:flex}.dog-chip{color:#374151;cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:50px;align-items:center;gap:8px;padding:8px 16px 8px 8px;font-size:14px;font-weight:600;transition:all .15s;display:flex}.dog-chip:hover{color:#0d1b3e;border-color:#0d1b3e}.dog-chip-active{color:#fff;background:#0d1b3e;border-color:#0d1b3e}.dog-chip-photo{object-fit:cover;border-radius:50%;width:28px;height:28px}.dog-chip-emoji{font-size:20px;line-height:1}.status-confirmed{color:#065f46;white-space:nowrap;background:#d1fae5;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}.appt-status{border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.appt-status-confirmed,.appt-status-Confirmed{color:#1d4ed8;background:#dbeafe}.appt-status-checked_in{color:#854d0e;background:#fef9c3}.appt-status-completed{color:#15803d;background:#dcfce7}.btn-cancel-row{color:#991b1b;cursor:pointer;background:#fee2e2;border:none;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s}.btn-cancel-row:hover{background:#fecaca}.booking-layout{border:1px solid #e5e7eb;border-radius:14px;gap:0;margin-top:4px;display:flex;overflow:hidden}.svc-list{background:#f9fafb;border-right:1px solid #e5e7eb;flex-direction:column;min-width:200px;display:flex}.svc-list-item{text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #e5e7eb;flex-direction:column;gap:3px;padding:16px 18px;transition:background .12s;display:flex}.svc-list-item:last-child{border-bottom:none}.svc-list-item:hover{background:#f0f4ff}.svc-list-active{box-shadow:inset 3px 0 #2563eb;background:#fff!important}.svc-list-name{color:#1a1a2e;font-size:14px;font-weight:700}.svc-list-meta{color:#9ca3af;font-size:12px}.svc-cal-area{flex-direction:column;flex:1;min-height:340px;padding:24px;display:flex}.svc-cal-empty{color:#9ca3af;text-align:center;margin:auto;font-size:14px}.cal-day-blank{aspect-ratio:1;background:0 0}.cal-day-na{cursor:default;pointer-events:none}.cal-num-na{color:#d1d5db}.cal-avail-badge{color:#fff;text-align:center;background:#10b981;border-radius:10px;min-width:16px;padding:1px 5px;font-size:9px;font-weight:800;line-height:1.5}.cal-day.sel .cal-avail-badge{background:#ffffff4d}.cal-day-booked{opacity:.5;cursor:default}.cal-booked-dot{background:#f59e0b;border-radius:50%;width:6px;height:6px;margin:2px auto 0;display:block}.cal-unavail-dot{background:#ef4444;border-radius:50%;width:6px;height:6px;display:block}.cal-avail-dot{background:#10b981;border-radius:50%;width:6px;height:6px;display:block}.booking-panel{animation:.18s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.calendar{max-width:100%}.cal-nav-btn{color:#374151;cursor:pointer;background:#f3f4f6;border:none;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;transition:background .15s;display:flex}.cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-weekday{text-align:center;color:#d1d5db;padding:4px 0 6px;font-size:11px;font-weight:700}.cal-day{aspect-ratio:1;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;transition:background .12s;display:flex;position:relative}.cal-day:hover:not(:disabled):not(.dim){background:#dbeafe}.cal-num{color:#1a1a2e;font-size:13px;font-weight:600;line-height:1}.cal-day.dim{opacity:.25;cursor:default}.cal-day.dim .cal-num{color:#9ca3af}.cal-day.sel{border-radius:8px;background:#2563eb!important}.cal-day.sel .cal-num{color:#fff}.cal-day.sel .cal-tag{color:#ffffffbf}.cal-day.in-range{background:#dbeafe;border-radius:0}.cal-day.sel-in{border-radius:8px 0 0 8px!important}.cal-day.sel-out{border-radius:0 8px 8px 0!important}.cal-tag{text-transform:uppercase;color:#fffc;font-size:8px;font-weight:700}.cal-pip{border-radius:50%;width:5px;height:5px;display:block}.cal-pip.inline{display:inline-block}.pip-ok{background:#10b981}.pip-low{background:#f59e0b}.pip-full{background:#ef4444}.cal-legend{color:#6b7280;flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px;font-size:12px;display:flex}.cal-legend span{align-items:center;gap:5px;display:flex}.legend-hint{color:#9ca3af;margin-left:auto;font-style:italic}.overnight-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.overnight-chip{border:1.5px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:2px;padding:10px 16px;transition:border-color .15s;display:flex}.overnight-chip.chip-filled{background:#eff6ff;border-color:#2563eb}.chip-label{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;font-size:10px;font-weight:700}.chip-value{color:#1a1a2e;font-size:14px;font-weight:700}.chip-empty .chip-value{color:#d1d5db}.overnight-arrow{color:#d1d5db;font-size:16px}.overnight-times{color:#9ca3af;margin:4px 0 8px;font-size:13px}.training-session-info{color:#374151;align-items:center;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.nights-badge{color:#fff;background:#2563eb;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}.session-toggle{background:#f3f4f6;border-radius:10px;gap:0;padding:3px;display:inline-flex}.toggle-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:9px 20px;font-size:14px;font-weight:600;transition:all .15s}.toggle-btn:hover:not(.toggle-active){color:#374151}.toggle-active{box-shadow:0 1px 4px #0000001a;color:#1a1a2e!important;background:#fff!important}.type-spots{color:#065f46;background:#d1fae5;border-radius:20px;margin-top:2px;padding:2px 8px;font-size:11px;font-weight:700}.type-spots-low{color:#92400e;background:#fef3c7}.type-spots-full{color:#991b1b;background:#fee2e2}.confirm-spots{color:#10b981;margin-top:3px;font-size:12px;font-weight:600}.confirm-spots-low{color:#f59e0b}.session-toggle-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.session-toggle-row .session-toggle{margin-bottom:0}.session-spots-badge{color:#065f46;white-space:nowrap;background:#d1fae5;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}.ssb-low{color:#92400e;background:#fef3c7}.ssb-full{color:#991b1b;background:#fee2e2}.confirm-bar{color:#374151;background:#f9fafb;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:14px 18px;font-size:14px;display:flex}.confirm-price{color:#6b7280;font-size:13px;font-weight:600}.btn-confirm{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:none;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:700;transition:background .15s}.btn-confirm:hover{background:#1d4ed8}@media (width<=640px){.booking-layout{flex-direction:column}.svc-list{border-bottom:1px solid #e5e7eb;border-right:none;flex-direction:row;overflow-x:auto}.svc-list-item{white-space:nowrap;border-bottom:none;border-right:1px solid #e5e7eb}.svc-list-item:last-child{border-right:none}.svc-list-active{box-shadow:inset 0 -3px #2563eb}.session-toggle{width:100%}.toggle-btn{text-align:center;flex:1}}.profile-page{flex-direction:column;gap:24px;max-width:960px;margin:0 auto;padding:48px 24px;display:flex}.page-header{margin-bottom:4px}.page-header h1{color:#1a1a2e;margin:0 0 8px;font-size:32px;font-weight:800}.page-header p{color:#6b7280;margin:0;font-size:16px}.billing-card{color:#fff;background:linear-gradient(135deg,#0d1b3e,#1e3a6e);border-radius:16px;padding:28px 32px}.billing-card-wide{align-items:flex-start;gap:32px;display:flex}.billing-left{flex:none;min-width:160px}.billing-right{flex:1}.billing-label{text-transform:uppercase;letter-spacing:.6px;opacity:.6;margin-bottom:6px;font-size:11px;font-weight:700}.billing-amount{margin-bottom:4px;font-size:44px;font-weight:800;line-height:1}.billing-charge-note{opacity:.6;font-size:12px}.billing-divider{background:#ffffff26;height:1px;margin:12px 0}.billing-divider-v{background:#ffffff26;align-self:stretch;width:1px;height:auto;margin:0}.billing-charges{flex-direction:column;gap:10px;margin-top:12px;display:flex}.billing-charge-row{opacity:.9;align-items:center;gap:8px;font-size:14px;display:flex}.billing-charge-date{opacity:.6;flex:1;font-size:13px}.billing-charge-cost{font-weight:700}.billing-payment{opacity:.55;font-size:12px}.section{flex-direction:column;gap:16px;display:flex}.section-header{justify-content:space-between;align-items:center;display:flex}.section-header h2{color:#1a1a2e;margin:0;font-size:22px;font-weight:700}.btn-add-dog{color:#fff;cursor:pointer;background:#0d1b3e;border:none;border-radius:50px;padding:9px 20px;font-size:14px;font-weight:600;transition:background .2s}.btn-add-dog:hover{background:#1a2f5e}.dogs-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.profile-card{background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;padding:24px}.profile-card h3{color:#1a1a2e;margin:0;font-size:17px;font-weight:700}.profile-card-editing{border-color:#0d1b3e;box-shadow:0 0 0 3px #0d1b3e14}.dog-avatar{flex-direction:column;align-items:center;gap:10px;margin:16px 0 20px;display:flex}.dog-photo{object-fit:cover;border:3px solid #0d1b3e;border-radius:50%;width:100px;height:100px}.dog-photo-placeholder{background:#f3f4f6;border:2px dashed #d1d5db;border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;font-size:44px;display:flex}.dog-photo-change-btn{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:20px;padding:5px 14px;font-size:12px;font-weight:600}.dog-photo-change-btn:hover{background:#e5e7eb}.info-fields{flex-direction:column;gap:14px;display:flex}.info-field{flex-direction:column;gap:4px;display:flex}.info-field label{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;font-size:11px;font-weight:700}.info-field span{color:#1a1a2e;font-size:15px;font-weight:500}.info-field input,.info-field select{background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:15px}.info-field input:focus,.info-field select:focus{border-color:#0d1b3e}.placeholder-text{color:#d1d5db;font-style:italic}.dog-pricing{border-top:1px solid #f3f4f6;padding-top:12px}.pricing-heading{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin-bottom:10px;font-weight:700;display:block;font-size:11px!important}.pricing-row{flex-direction:column;gap:8px;display:flex}.pricing-field{color:#374151;justify-content:space-between;align-items:center;font-size:14px;font-weight:500;display:flex}.price-input-wrap{background:#fff;border:1px solid #d1d5db;border-radius:8px;align-items:center;gap:4px;width:90px;padding:5px 10px;display:flex}.price-input-wrap span{color:#6b7280;font-size:14px}.price-input-wrap input{color:#1a1a2e;outline:none;width:52px;font-size:14px;font-weight:600;border:none!important;padding:0!important}.dog-health{border-top:1px solid #f3f4f6;padding-top:12px}.dog-health-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.btn-upload-sm{color:#374151;cursor:pointer;background:#f3f4f6;border:none;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600}.btn-upload-sm:hover{background:#e5e7eb}.vacc-tags{flex-wrap:wrap;gap:6px;display:flex}.vacc-tag{color:#065f46;background:#d1fae5;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}.card-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.card-header h2{color:#1a1a2e;margin:0;font-size:20px;font-weight:700}.card-header-actions{gap:8px;display:flex}.btn-edit{color:#374151;cursor:pointer;background:#f3f4f6;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600}.btn-edit:hover{background:#e5e7eb}.btn-save{color:#fff;cursor:pointer;background:#0d1b3e;border:none;border-radius:8px;padding:7px 16px;font-size:13px;font-weight:600}.btn-save:hover:not(:disabled){background:#1a2f5e}.btn-save:disabled{opacity:.6;cursor:not-allowed}.address-card{background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;padding:28px}.address-row{gap:12px;margin-bottom:4px;display:flex}.info-field-sm{max-width:90px}@media (width<=640px){.billing-card-wide{flex-direction:column}.billing-divider-v{width:100%;height:1px}.dogs-grid{grid-template-columns:1fr}.address-row{flex-direction:column}.info-field-sm{max-width:100%}}.admin-page{flex-direction:column;gap:20px;max-width:1000px;margin:0 auto;padding:40px 24px;display:flex}.admin-page-header{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:28px 32px;display:flex}.admin-page-header h1{color:#1a1a2e;margin:0;font-size:28px;font-weight:800}.admin-page-header p{color:#6b7280;margin:4px 0 0;font-size:14px}.admin-card{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;overflow-x:auto}.admin-card h2{color:#1a1a2e;margin:0 0 18px;font-size:17px;font-weight:700}.admin-empty{color:#9ca3af;text-align:center;padding:32px 0;font-size:14px}.view-toggle{background:#f3f4f6;border-radius:10px;gap:2px;padding:3px;display:flex}.vtoggle{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 18px;font-size:14px;font-weight:600;transition:all .15s}.vtoggle.active{color:#1a1a2e;background:#fff;box-shadow:0 1px 4px #00000014}.cal-layout{grid-template-columns:340px 1fr;align-items:start;gap:20px;display:grid}.cal-card{padding:20px}.cal-nav{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cal-month-label{color:#1a1a2e;font-size:15px;font-weight:700}.cal-nav-btn{cursor:pointer;background:#f3f4f6;border:none;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;font-size:15px;transition:background .15s;display:flex}.cal-nav-btn:hover{background:#e5e7eb}.admin-cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.admin-cal-weekday{text-align:center;color:#d1d5db;padding:4px 0 6px;font-size:11px;font-weight:700}.admin-cal-day{aspect-ratio:1;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;transition:background .12s;display:flex;position:relative}.admin-cal-day:hover{background:#f3f4f6}.aday-num{color:#374151;font-size:13px;font-weight:600}.aday-dot{background:#2563eb;border-radius:50%;width:5px;height:5px;margin-top:2px}.aday-sel{background:#2563eb!important}.aday-sel .aday-num{color:#fff}.aday-sel .aday-dot{background:#ffffffb3}.aday-today{border:2px solid #2563eb}.aday-today .aday-num{color:#2563eb}.aday-sel.aday-today .aday-num{color:#fff}.aday-past{opacity:.35}.aday-past .aday-num{color:#9ca3af}.day-detail h2{color:#1a1a2e;margin:0 0 16px;font-size:17px;font-weight:700}.day-detail-panel{flex-direction:column;gap:20px;padding:24px;display:flex}.ddp-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ddp-title{color:#1a1a2e;margin:0;font-size:16px;font-weight:800}.ddp-toggle-row{border:1.5px solid #e5e7eb;border-radius:8px;display:flex;overflow:hidden}.ddp-toggle-btn{color:#6b7280;cursor:pointer;background:#fff;border:none;padding:6px 16px;font-size:13px;font-weight:600;transition:all .15s}.ddp-toggle-btn+.ddp-toggle-btn{border-left:1.5px solid #e5e7eb}.ddp-toggle-active{color:#fff;background:#0d1b3e}.ddp-toggle-closed-active{color:#fff;background:#dc2626}.ddp-services{flex-direction:column;gap:12px;display:flex}.ddp-services-closed{opacity:.45;pointer-events:none}.ddp-service-block{border:1.5px solid #e5e7eb;border-radius:10px;padding:12px 14px}.ddp-svc-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.ddp-svc-name{text-transform:uppercase;letter-spacing:.4px;color:#1a1a2e;font-size:13px;font-weight:800}.ddp-svc-toggle{cursor:pointer;border:none;border-radius:99px;padding:4px 14px;font-size:12px;font-weight:700;transition:background .15s,color .15s}.ddp-svc-toggle-on{color:#065f46;background:#d1fae5}.ddp-svc-toggle-off{color:#9ca3af;background:#f3f4f6}.ddp-svc-toggle:disabled{opacity:.4;cursor:not-allowed}.ddp-svc-toggle-on:not(:disabled):hover{background:#a7f3d0}.ddp-svc-toggle-off:not(:disabled):hover{color:#374151;background:#e5e7eb}.ddp-session-row{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.ddp-session-row+.ddp-session-row{border-top:1px solid #f3f4f6;margin-top:6px;padding-top:10px}.ddp-session-info{flex-direction:column;gap:2px;display:flex}.ddp-session-label{color:#374151;font-size:12px;font-weight:700}.ddp-session-time{color:#9ca3af;font-size:12px}.ddp-cap-row{align-items:center;gap:8px;display:flex}.ddp-cap-label{color:#9ca3af;font-size:12px;font-weight:600}.ddp-cap-input{text-align:center;color:#1a1a2e;border:1.5px solid #d1d5db;border-radius:7px;outline:none;width:52px;padding:5px 6px;font-size:14px;font-weight:700;transition:border-color .15s}.ddp-cap-input:focus{border-color:#2563eb}.ddp-cap-input:disabled{color:#d1d5db;background:#f9fafb}.ddp-default-note{color:#9ca3af;font-size:11px}.ddp-bookings{background:#f9fafb;border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.ddp-bookings-label{text-transform:uppercase;letter-spacing:.4px;color:#9ca3af;margin-bottom:2px;font-size:11px;font-weight:700}.ddp-booking-row{align-items:center;gap:8px;font-size:13px;display:flex}.ddp-dog-name{color:#1a1a2e;font-weight:700}.ddp-booking-session{color:#9ca3af;font-size:12px}.service-tag-sm{padding:2px 7px;font-size:10px}.ddp-footer{border-top:1px solid #f3f4f6;justify-content:flex-end;align-items:center;gap:12px;padding-top:4px;display:flex}.booking-rows{flex-direction:column;gap:10px;display:flex}.booking-row{background:#f9fafb;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.booking-row-info{flex-direction:column;flex:1;gap:2px;display:flex}.brow-dog{color:#1a1a2e;font-size:14px;font-weight:700}.brow-owner{color:#9ca3af;font-size:12px}.brow-details{color:#6b7280;font-size:13px}.service-tag{white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700}.tag-daycare{color:#1d4ed8;background:#dbeafe}.tag-overnight{color:#6d28d9;background:#ede9fe}.tag-training{color:#92400e;background:#fef3c7}.service-filter{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.sfilt{color:#6b7280;cursor:pointer;background:#fafafa;border:1.5px solid #e5e7eb;border-radius:8px;padding:7px 16px;font-size:13px;font-weight:600;transition:all .15s}.sfilt:hover{color:#1d4ed8;border-color:#93c5fd}.sfilt-active{color:#2563eb!important;background:#eff6ff!important;border-color:#2563eb!important}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;border-bottom:1px solid #f3f4f6;padding:8px 12px;font-size:11px;font-weight:700}.admin-table td{vertical-align:middle;color:#374151;border-bottom:1px solid #f9fafb;padding:13px 12px}.admin-table tr:last-child td{border-bottom:none}.admin-table tr.row-expanded td{background:#f9fafb}.td-bold{color:#1a1a2e;font-weight:700}.td-muted{color:#9ca3af}.svc-price-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.svc-price-card{text-align:center;border:1.5px solid #e5e7eb;border-radius:14px;padding:20px;transition:border-color .15s}.svc-editing{background:#eff6ff;border-color:#2563eb}.svc-icon{margin-bottom:6px;font-size:28px}.svc-name{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:13px;font-weight:700}.svc-amount{color:#1a1a2e;font-size:26px;font-weight:800}.svc-per{color:#9ca3af;font-size:13px;font-weight:500}.fin-summary{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.fin-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:20px;position:relative}.fin-stat-highlight{background:#eff6ff;border-color:#2563eb}.fin-stat-label{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin-bottom:6px;font-size:12px;font-weight:600}.fin-stat-value{color:#1a1a2e;font-size:28px;font-weight:800}.fin-stat-date{padding-top:4px;font-size:18px}.fin-stat-sub{color:#9ca3af;margin-top:4px;font-size:11px}.btn-edit-price{color:#3730a3;cursor:pointer;background:#e0e7ff;border:none;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;position:absolute;top:12px;right:12px}.price-editor p{color:#6b7280;margin:-10px 0 16px;font-size:14px}.price-input-row{align-items:center;gap:8px;margin-bottom:16px;display:flex}.price-symbol{color:#374151;font-size:20px;font-weight:700}.price-input{border:2px solid #d1d5db;border-radius:8px;outline:none;width:90px;padding:8px 12px;font-size:24px;font-weight:700}.price-input:focus{border-color:#2563eb}.price-label{color:#6b7280;font-size:15px}.price-actions{gap:8px;display:flex}.credit-badge{border-radius:20px;padding:3px 12px;font-size:14px;font-weight:700;display:inline-block}.credit-ok{color:#065f46;background:#d1fae5}.credit-low{color:#92400e;background:#fef3c7}.credit-zero{color:#991b1b;background:#fee2e2}.credit-input{border:1.5px solid #2563eb;border-radius:6px;outline:none;width:60px;padding:6px 8px;font-size:14px;font-weight:700}.btn-edit-sm{color:#374151;cursor:pointer;white-space:nowrap;background:#f3f4f6;border:none;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s}.btn-edit-sm:hover{background:#e5e7eb}.btn-checkin{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:none;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600}.btn-checkin:hover:not(:disabled){background:#1d4ed8}.btn-checkin:disabled{opacity:.6;cursor:default}.btn-checkout{color:#fff;cursor:pointer;white-space:nowrap;background:#16a34a;border:none;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600}.btn-checkout:hover:not(:disabled){background:#15803d}.btn-checkout:disabled{opacity:.6;cursor:default}.checkin-status{border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.checkin-status-confirmed{color:#1d4ed8;background:#dbeafe}.checkin-status-checked_in{color:#854d0e;background:#fef9c3}.checkin-status-completed{color:#15803d;background:#dcfce7}.btn-confirm-sm{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600}.btn-confirm-sm:hover{background:#1d4ed8}.btn-cancel-sm{color:#6b7280;cursor:pointer;background:#f3f4f6;border:none;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600}.btn-cancel-sm:hover{background:#e5e7eb}.dog-status-badge{border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}.dog-checkedin{color:#065f46;background:#d1fae5}.dog-dropoff{color:#92400e;background:#fef3c7}.dog-home{color:#6b7280;background:#f3f4f6}.dog-pickup{color:#1d4ed8;background:#dbeafe}.doc-summary{font-size:13px;font-weight:600}.doc-ok{color:#059669}.doc-expiring{color:#d97706}.doc-missing{color:#dc2626}.docs-row td{padding:0 12px 12px}.docs-expand{background:#f9fafb;border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.doc-item{align-items:center;gap:16px;font-size:13px;display:flex}.doc-item-name{color:#1a1a2e;flex:1;font-weight:600}.doc-item-date{color:#9ca3af}.doc-item-status{border-radius:20px;padding:2px 10px;font-size:12px;font-weight:600}.dstatus-ok{color:#065f46;background:#d1fae5}.dstatus-exp{color:#92400e;background:#fef3c7}.dstatus-miss{color:#991b1b;background:#fee2e2}.dogs-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.dogs-search{border:1.5px solid #e5e7eb;border-radius:8px;outline:none;flex:1;min-width:200px;padding:9px 14px;font-size:14px;transition:border-color .15s}.dogs-search:focus{border-color:#2563eb}.dogs-filter{gap:6px;display:flex}.btn-view-dog{color:#374151;cursor:pointer;background:#f3f4f6;border:none;border-radius:6px;padding:5px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.btn-view-dog:hover{color:#fff;background:#0d1b3e}.price-cell{cursor:pointer;color:#1a1a2e;border-bottom:1px solid #0000;padding:4px 2px;font-size:14px;font-weight:600;transition:border-color .15s,color .15s;display:inline-block}.price-cell:hover{color:#2563eb;border-bottom-color:#2563eb}.team-badge{white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700}.badge-owner{color:#92400e;background:#fef3c7}.badge-staff{color:#1d4ed8;background:#dbeafe}.badge-customer{color:#6b7280;background:#f3f4f6}.team-actions{align-items:center;gap:8px;display:flex}.btn-remove-sm{color:#991b1b;cursor:pointer;background:#fee2e2;border:none;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s}.btn-remove-sm:hover{background:#fecaca}.team-search-row{gap:10px;margin-bottom:12px;display:flex}.invite-form{flex-direction:column;display:flex}.invite-fields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.invite-fields .form-field{flex:1;min-width:180px}.invite-fields .form-field label{color:#374151;margin-bottom:5px;font-size:13px;font-weight:600;display:block}.invite-fields .form-field input{box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:8px;outline:none;width:100%;padding:9px 14px;font-size:14px;transition:border-color .15s}.invite-fields .form-field input:focus{border-color:#2563eb}.team-search-input{border:1.5px solid #e5e7eb;border-radius:8px;outline:none;flex:1;padding:9px 14px;font-size:14px;transition:border-color .15s}.team-search-input:focus{border-color:#2563eb}.team-search-err{color:#dc2626;margin:0;font-size:13px;font-weight:600}.team-found-card{background:#f9fafb;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:16px;display:flex}.team-found-name{color:#1a1a2e;margin-bottom:6px;font-size:15px;font-weight:700}.team-found-role{color:#6b7280;align-items:center;gap:6px;font-size:13px;display:flex}.cap-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cap-description{color:#6b7280;margin:0 0 20px;font-size:13px}.cap-table{flex-direction:column;gap:0;display:flex}.cap-table-header{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;border-bottom:1px solid #f3f4f6;grid-template-columns:1fr 1fr 180px;gap:12px;margin-bottom:4px;padding:6px 12px;font-size:11px;font-weight:700;display:grid}.cap-table-row{border-bottom:1px solid #f9fafb;grid-template-columns:1fr 1fr 180px;align-items:center;gap:12px;padding:12px;display:grid}.cap-table-row:last-child{border-bottom:none}.cap-svc-label{color:#1a1a2e;font-size:14px;font-weight:700}.cap-session-label{color:#6b7280;font-size:13px}.cap-input-wrap{align-items:center;gap:6px;display:flex}.cap-stepper{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;font-weight:600;line-height:1;transition:background .12s;display:flex}.cap-stepper:hover{background:#e5e7eb}.cap-input{text-align:center;color:#1a1a2e;border:1.5px solid #d1d5db;border-radius:7px;outline:none;width:50px;padding:6px 4px;font-size:16px;font-weight:700}.cap-input:focus{border-color:#2563eb}.cap-unit{color:#9ca3af;font-size:13px;font-weight:500}.btn-save-cap{color:#fff;cursor:pointer;background:#0d1b3e;border:none;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:700;transition:background .15s}.btn-save-cap:hover:not(:disabled){background:#1a2f5e}.btn-save-cap:disabled{opacity:.6;cursor:not-allowed}.cap-saved-msg{color:#059669;font-size:13px;font-weight:600}.svc-mgmt-notice{color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin:0 0 16px;padding:10px 16px;font-size:13px}.svc-mgmt-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.svc-mgmt-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;gap:18px;padding:20px 22px;display:flex}.svc-mgmt-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.svc-mgmt-name{color:#1a1a2e;margin:0;font-size:16px;font-weight:800}.svc-section-label{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.svc-price-row{text-align:right}.svc-price-input-wrap{border:1.5px solid #d1d5db;border-radius:8px;align-items:center;gap:2px;padding:4px 8px;transition:border-color .15s;display:inline-flex}.svc-price-input-wrap:focus-within{border-color:#2563eb}.svc-price-dollar{color:#6b7280;font-size:14px;font-weight:600}.svc-price-input{color:#1a1a2e;text-align:right;background:0 0;border:none;outline:none;width:52px;font-size:15px;font-weight:700}.day-toggles{flex-wrap:wrap;gap:6px;display:flex}.day-btn{color:#6b7280;cursor:pointer;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s}.day-btn:hover{color:#374151;border-color:#9ca3af}.day-btn-on{color:#fff;background:#0d1b3e;border-color:#0d1b3e}.day-btn-on:hover{color:#fff;background:#1a2f5e;border-color:#1a2f5e}.svc-sessions{flex-direction:column;gap:12px;display:flex}.svc-session-block{background:#f9fafb;border-radius:10px;padding:12px 14px}.svc-session-label{text-transform:uppercase;letter-spacing:.4px;color:#6b7280;margin-bottom:10px;font-size:12px;font-weight:700}.svc-session-fields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.svc-field{flex-direction:column;gap:4px;display:flex}.svc-field label{color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.svc-field input[type=time],.svc-cap-input{color:#1a1a2e;background:#fff;border:1.5px solid #d1d5db;border-radius:7px;outline:none;padding:6px 8px;font-size:13px;font-weight:600;transition:border-color .15s}.svc-field input[type=time]:focus,.svc-cap-input:focus{border-color:#2563eb}.svc-cap-input{text-align:center;width:56px}.svc-field-note{color:#9ca3af;margin-top:3px;font-size:11px}.svc-mgmt-footer{justify-content:flex-end;align-items:center;gap:12px;margin-top:2px;display:flex}.svc-saved-msg{color:#059669;font-size:13px;font-weight:600}.btn-save-svc{color:#fff;cursor:pointer;background:#0d1b3e;border:none;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:700;transition:background .15s}.btn-save-svc:hover:not(:disabled){background:#1a2f5e}.btn-save-svc:disabled{opacity:.6;cursor:not-allowed}.aday-count{color:#fff;background:#2563eb;border-radius:99px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:800;line-height:1;display:inline-flex}.aday-sel .aday-count{background:#ffffff4d}.day-modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.day-modal-box{background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:540px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}.day-modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.day-modal-title{color:#1a1a2e;margin:0;font-size:18px;font-weight:800}.day-modal-count{color:#6b7280;margin:2px 0 0;font-size:13px;font-weight:600}.day-modal-close{cursor:pointer;color:#6b7280;background:#f3f4f6;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:background .15s;display:flex}.day-modal-close:hover{background:#e5e7eb}.day-modal-tabs{border-bottom:1px solid #f3f4f6;gap:0;padding:16px 24px 0;display:flex}.day-modal-tab{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-size:14px;font-weight:600;transition:color .15s,border-color .15s}.day-modal-tab:hover{color:#374151}.dmt-active{color:#1a1a2e!important;border-bottom-color:#2563eb!important}.day-modal-body{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.day-modal-group{flex-direction:column;gap:6px;display:flex}.day-modal-group-header{color:#1a1a2e;text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.day-modal-group-count{color:#1d4ed8;text-transform:none;letter-spacing:0;background:#dbeafe;border-radius:99px;padding:2px 7px;font-size:11px;font-weight:700}.day-modal-dogs{flex-direction:column;gap:4px;display:flex}.day-modal-dog-row{background:#f9fafb;border-radius:8px;justify-content:space-between;align-items:center;padding:7px 10px;display:flex}.day-modal-dog-name{color:#1a1a2e;font-size:14px;font-weight:600}.day-modal-dog-detail{color:#9ca3af;font-size:12px}.avail-cal-layout{grid-template-columns:auto 1fr;align-items:start;gap:24px;display:grid}.avail-cal-left{min-width:280px}.avail-cal-right{border-left:1px solid #f3f4f6;min-height:200px;padding-left:24px}.avail-day-title{color:#1a1a2e;margin:0 0 16px;font-size:15px;font-weight:700}@media (width<=768px){.admin-page{gap:12px;padding:16px 12px}.admin-page-header{padding:18px 20px}.admin-page-header h1{font-size:22px}.admin-card{padding:16px}.admin-card h2{margin-bottom:14px;font-size:15px}.avail-cal-layout{grid-template-columns:1fr}.avail-cal-right{border-top:1px solid #f3f4f6;border-left:none;padding-top:20px;padding-left:0}.cal-layout{grid-template-columns:1fr}.admin-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{min-width:480px}.admin-table th,.admin-table td{padding:10px 8px;font-size:13px}.fin-summary{grid-template-columns:1fr 1fr;gap:10px}.fin-stat-value{font-size:22px}.svc-mgmt-grid{grid-template-columns:1fr}.invite-fields{flex-direction:column;gap:10px}.invite-fields .form-field{min-width:0}.invite-fields button{width:100%}.view-toggle{flex-wrap:wrap}.vtoggle{padding:7px 12px;font-size:13px}.dogs-toolbar{flex-direction:column;align-items:stretch}.dogs-search{min-width:0}}@media (width<=480px){.admin-page{padding:12px 10px}.admin-page-header{flex-direction:column;align-items:flex-start;padding:14px 16px}.fin-summary{grid-template-columns:1fr}.admin-table{min-width:380px}}.ob-wrap{background:#f3f4f6;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.ob-card{background:#fff;border-radius:20px;width:100%;max-width:520px;padding:40px;box-shadow:0 20px 60px #0000001f}.ob-header{text-align:center;margin-bottom:28px}.ob-logo{width:auto;height:52px;margin-bottom:16px}.ob-step-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px;font-size:13px;font-weight:600}.ob-progress-bar{background:#e5e7eb;border-radius:99px;height:4px;overflow:hidden}.ob-progress-fill{background:#0d1b3e;border-radius:99px;height:100%;transition:width .4s}.ob-step h2{color:#1a1a2e;margin:0 0 6px;font-size:22px}.ob-step>p{color:#6b7280;margin:0 0 24px;font-size:14px}.ob-field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.ob-field label{text-transform:uppercase;letter-spacing:.5px;color:#6b7280;font-size:12px;font-weight:700}.ob-field input,.ob-field select{border:1px solid #d1d5db;border-radius:8px;outline:none;padding:11px 14px;font-family:inherit;font-size:15px;transition:border-color .2s}.ob-field input:focus,.ob-field select:focus{border-color:#0d1b3e}.ob-field-row{gap:10px;display:flex}.ob-field-row .ob-field{flex:1}.ob-field-sm{flex:0 0 80px!important}.ob-field-grow{flex:auto}.ob-field-apt{flex:0 0 120px}.ob-photo-upload{flex-direction:column;align-items:center;gap:14px;margin-bottom:24px;display:flex}.ob-photo-placeholder{background:#f3f4f6;border:2px dashed #d1d5db;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;font-size:52px;display:flex}.ob-photo-preview{object-fit:cover;border:3px solid #0d1b3e;border-radius:50%;width:120px;height:120px}.ob-photo-label{color:#fff;cursor:pointer;background:#0d1b3e;border-radius:50px;padding:9px 20px;font-size:14px;font-weight:600;transition:background .2s}.ob-photo-label:hover{background:#1a2f5e}.ob-checks{flex-direction:column;gap:14px;margin-bottom:24px;display:flex}.ob-check{color:#1a1a2e;cursor:pointer;align-items:center;gap:12px;font-size:15px;display:flex}.ob-check input[type=checkbox]{accent-color:#0d1b3e;cursor:pointer;width:18px;height:18px}.ob-payment-notice{background:#f0f4ff;border:1px solid #c7d7fe;border-radius:12px;align-items:flex-start;gap:16px;margin-bottom:24px;padding:18px;display:flex}.ob-payment-icon{flex-shrink:0;font-size:28px}.ob-payment-notice strong{color:#1a1a2e;margin-bottom:4px;font-size:15px;display:block}.ob-payment-notice p{color:#6b7280;margin:0;font-size:13px}.ob-actions{margin-top:8px}.ob-actions-row{justify-content:flex-end;gap:10px;display:flex}.ob-btn-primary{color:#fff;cursor:pointer;background:#0d1b3e;border:none;border-radius:50px;padding:12px 28px;font-size:15px;font-weight:600;transition:background .2s}.ob-btn-primary:hover:not(:disabled){background:#1a2f5e}.ob-btn-primary:disabled{opacity:.6;cursor:not-allowed}.ob-btn-ghost{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:50px;padding:12px 20px;font-size:15px;font-weight:600;transition:all .2s}.ob-btn-ghost:hover{color:#0d1b3e;border-color:#0d1b3e}.ob-error{color:#991b1b;background:#fee2e2;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px;font-weight:500}.ob-done-icon{text-align:center;margin-bottom:12px;font-size:64px}.ob-card h2{text-align:center;color:#1a1a2e;margin:0 0 8px}.ob-card>p{text-align:center;color:#6b7280;margin-bottom:24px;font-size:15px}*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a2e;background:#f9fafb;font-family:system-ui,-apple-system,sans-serif}#root{text-align:left;border:none;width:100%;max-width:100%;min-height:100vh}
