.week-editor{margin:0 0 24px;padding:24px;background:#fff;border:1px solid #dce5e2;border-radius:18px;color:#203b36}.week-editor header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.week-editor h2{margin:0 0 8px;font-size:1.45rem}.week-editor p{margin:0;color:#53645f;line-height:1.5}.week-editor__badge{padding:7px 12px;border-radius:20px;background:#edf5f2;font-size:.8rem;white-space:nowrap}.week-editor fieldset{margin:18px 0 0;padding:0;border:0;min-width:0}.week-editor__hint{padding:0 0 14px;color:#53645f;font-size:.9rem}.week-editor__day{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;padding:16px 0;border-top:1px solid #e6ece9}.week-editor__toggle{display:flex;align-items:center;gap:12px;cursor:pointer;align-self:start;padding-top:8px}.week-editor__toggle input{width:22px;height:22px;margin:0;accent-color:#246b57}.week-editor__toggle strong,.week-editor__toggle small{display:block}.week-editor__toggle small{margin-top:4px;color:#63736d;font-size:.8rem}.week-editor__ranges{display:grid;gap:12px;justify-items:start}.week-editor__range{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.week-editor__range label{display:grid;gap:5px;font-size:.8rem;color:#53645f}.week-editor__range input{box-sizing:border-box;width:150px;min-height:44px;padding:8px 10px;border:1px solid #b9ccc4;border-radius:8px;background:#fff;color:#203b36;font:inherit;font-size:1rem}.week-editor button{width:auto;min-height:40px;padding:8px 14px;border-radius:8px;font-size:.9rem;font-weight:600;box-shadow:none;cursor:pointer}.week-editor button.week-editor__subtle{color:#285c4d;background:#f1f6f3;border:1px solid #dce5e2}.week-editor button.week-editor__save{color:#fff;background:#246b57;border:1px solid #246b57}.week-editor button:disabled{opacity:.5;cursor:default}.week-editor :focus-visible{outline:3px solid #6bbda5;outline-offset:3px}.week-editor footer{border-top:1px solid #e6ece9;padding-top:18px;display:grid;gap:16px}.week-editor footer p{font-size:.85rem}.week-editor footer>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.week-editor p.week-editor__error{margin-top:14px;color:#a02020}.week-editor p.week-editor__success{margin-top:14px;color:#246b57}@media(max-width:700px){.week-editor{padding:16px}.week-editor header{flex-direction:column}.week-editor__day{grid-template-columns:1fr;gap:12px}.week-editor__range{gap:8px}.week-editor__range input{width:125px}}.photo-upload-form{background:#fff;border-radius:12px;border:1px solid var(--admin-border);padding:1.5rem}.upload-form-grid{display:flex;gap:2rem;flex-wrap:wrap}.upload-file-area{flex:1;min-width:250px}.upload-details-area{flex:2;min-width:300px;display:flex;flex-direction:column;gap:1rem}.photo-upload-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.upload-dropzone{border:2px dashed var(--admin-border);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;height:100%;min-height:200px;cursor:pointer;background:#f9f9fc;transition:all .2s;text-align:center}.upload-dropzone:hover{border-color:var(--primary-light);background:#fff}.upload-dropzone:focus-visible{outline:3px solid var(--primary-light);outline-offset:3px}.upload-dropzone.has-file{border-style:solid;border-color:var(--primary-color);background:var(--primary-color-10)}.upload-icon{font-size:1.1rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:1rem}.upload-instructions{color:var(--admin-text-muted);font-size:.9rem;word-break:break-all}.upload-select-button{margin-top:1rem;min-width:180px}.row-group{display:flex;flex-direction:column}@media(min-width:768px){.row-group{flex-direction:row;align-items:center;justify-content:space-between}.row-group .form-label{margin-bottom:0;width:30%}.row-group .form-select,.row-group .form-input{width:70%}}.form-label{font-weight:500;margin-bottom:.5rem;display:block}.form-select,.form-input{width:100%;padding:.75rem;border:1px solid var(--admin-border);border-radius:8px;font-family:inherit}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-weight:500;cursor:pointer}.warning-text{color:#d9534f;font-size:.85rem;display:block;margin-top:.25rem}.visibility-helper{display:block;margin-top:.25rem;color:var(--admin-text-muted);font-size:.85rem}.success-text{color:#5cb85c;font-size:.9rem;font-weight:500}.groom-history-timeline{display:flex;flex-direction:column;gap:2rem}.groom-history-entry{background:#fff;border:1px solid var(--admin-border);border-radius:12px;padding:1.5rem}.history-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.history-date{margin:0;font-size:1.1rem;font-weight:600}.history-service{font-weight:500;color:var(--primary-color);background:var(--primary-color-10);padding:.25rem .75rem;border-radius:1rem;font-size:.9rem}.history-entry-meta{display:flex;gap:1rem;margin-bottom:1rem;color:var(--admin-text-muted);font-size:.9rem;flex-wrap:wrap}.status-pill{padding:.1rem .5rem;border-radius:4px;background:#eee;text-transform:capitalize}.status-pill.completed{background:#d4edda;color:#155724}.status-pill.canceled{background:#f8d7da;color:#721c24}.history-entry-notes{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.note-block{background:#f9f9fc;padding:.75rem 1rem;border-radius:8px;border-left:3px solid var(--admin-border)}.note-label{font-weight:600;font-size:.85rem;text-transform:uppercase;color:var(--admin-text-muted);display:block;margin-bottom:.25rem}.note-block p{margin:0;font-size:.95rem}.history-entry-photos{display:flex;flex-direction:column;gap:1.5rem}.before-after-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.other-photos-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.photo-thumb{display:flex;flex-direction:column;gap:.5rem}.photo-thumb-img-wrapper{aspect-ratio:1;border-radius:8px;overflow:hidden;background:#f0f0f0}.photo-thumb-img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumb-meta{display:flex;justify-content:space-between;align-items:center}.photo-type-badge{font-size:.75rem;padding:.1rem .5rem;border-radius:1rem;font-weight:600}.photo-type-badge.bg-blue-100{background:#dbeafe;color:#1e40af}.photo-type-badge.bg-orange-100{background:#ffedd5;color:#9a3412}.photo-type-badge.bg-green-100{background:#dcfce7;color:#166534}.photo-type-badge.bg-purple-100{background:#f3e8ff;color:#6b21a8}.photo-type-badge.bg-red-100{background:#fee2e2;color:#991b1b}.photo-type-badge.bg-pink-100{background:#fce7f3;color:#9d174d}.photo-type-badge.bg-gray-100{background:#f3f4f6;color:#1f2937}.photo-visibility-badge{font-size:.8rem}.photo-visibility-badge.hidden{opacity:.5}.photo-thumb-caption{margin:0;font-size:.85rem;color:var(--admin-text-muted);font-style:italic}.no-photos-msg{color:var(--admin-text-muted);font-style:italic;margin:0}:root{font-family:Aptos,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#1f2937;background:radial-gradient(circle at top,rgba(14,116,144,.12),transparent 32%),linear-gradient(180deg,#eff6ff,#f8fafc 48%,#eef2ff)}*{box-sizing:border-box}body{margin:0}.container{max-width:960px;margin:0 auto;padding:24px}.header{margin-bottom:18px}.header h1{margin:0 0 8px;font-size:clamp(2rem,4vw,2.8rem)}.header p{margin:0 0 18px;color:#4b5563;max-width:42rem}.card{background:#ffffffeb;border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:18px;margin-bottom:16px;box-shadow:0 18px 40px #0f172a12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-soft{background:#ffffffd6}.card-soft>.calendar-shell{margin-bottom:0}.admin-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.admin-nav-tab{background:#ffffffeb;color:#0f172a;border:1px solid rgba(148,163,184,.32)}.admin-nav-tab.is-active{background:linear-gradient(135deg,#0f766e,#0f4c81);color:#fff;border-color:transparent}.form label,label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}input,select,textarea,button{padding:10px;border-radius:6px;border:1px solid #d1d5db;font:inherit}button{cursor:pointer;background:linear-gradient(135deg,#0f766e,#0f4c81);color:#fff;border:none;font-weight:600}button.danger{background:linear-gradient(135deg,#b91c1c,#dc2626)}button:disabled{opacity:.7;cursor:wait}.toolbar-button,.toggle-chip{background:#fff;color:#0f172a;border:1px solid rgba(148,163,184,.4)}.actions{display:flex;gap:10px;flex-wrap:wrap}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.section-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.section-heading h2,.empty-state h3,.appointment-title-row h3,.request-card h3,.calendar-day-details h2{margin:0}.eyebrow{margin:0 0 6px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0f4c81}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card{background:#ffffffe6;border:1px solid rgba(148,163,184,.22);border-radius:22px;padding:18px;box-shadow:0 12px 28px #0f172a0f}.summary-card strong{display:block;font-size:clamp(1.7rem,4vw,2.4rem);margin-bottom:6px}.summary-card span,.day-heading p,.appointment-time span,.appointment-body p,.empty-state p,.request-card p,.attention-card p,.client-card p,.pet-card p,.review-card p{color:#475569;margin:0}.calendar-shell{overflow:hidden}.calendar-toolbar,.view-toggle{display:flex;flex-wrap:wrap;gap:8px}.toggle-chip.is-active{background:linear-gradient(135deg,#0f766e,#0f4c81);color:#fff;border-color:transparent}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px}.calendar-weekdays span{text-align:center;font-size:.78rem;font-weight:700;color:#64748b;text-transform:uppercase}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-day{min-height:118px;padding:10px;border-radius:18px;border:1px solid rgba(148,163,184,.24);background:#ffffffd1;color:inherit;display:flex;flex-direction:column;gap:8px;text-align:left}.calendar-day.is-muted{opacity:.48}.calendar-day.is-today{border-color:#1d4ed880;box-shadow:inset 0 0 0 1px #1d4ed826}.calendar-day.is-selected{border-color:transparent;background:linear-gradient(180deg,#dbeafef2,#eff6fffa);box-shadow:0 12px 28px #2563eb26}.calendar-day-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.calendar-day-number{font-weight:700}.calendar-count-pill{min-width:22px;padding:3px 7px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.74rem;font-weight:700;text-align:center}.calendar-day-body{display:flex;flex-direction:column;gap:6px;min-height:0}.calendar-appointment-pill{display:flex;flex-direction:column;gap:2px;padding:6px 7px;border-radius:12px;background:#0f766e1a;color:#134e4a;font-size:.72rem;line-height:1.2}.calendar-appointment-pill strong{font-size:.74rem}.calendar-day-hint,.calendar-more-label{font-size:.72rem;color:#94a3b8}.calendar-day-details{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.calendar-empty-state{margin-top:14px}.attention-list,.pet-card-list{display:flex;flex-direction:column;gap:12px}.attention-card,.client-card,.pet-card,.pricing-history-item,.review-card{border-radius:18px;border:1px solid rgba(148,163,184,.2);background:linear-gradient(180deg,#fffffff5,#f1f5f9eb);padding:14px}.attention-card-top,.client-card-top,.pet-card-top,.review-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.agenda-stack{display:flex;flex-direction:column;gap:18px}.day-group{border-top:1px solid #e2e8f0;padding-top:18px}.day-group:first-of-type{border-top:none;padding-top:0}.day-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:12px}.day-chip,.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:700}.day-chip{background:#dbeafe;color:#1d4ed8}.pill{background:#e2e8f0;color:#334155}.pill-success{background:#dcfce7;color:#166534}.pill-warning{background:#fef3c7;color:#92400e;text-transform:capitalize}.appointment-list{display:flex;flex-direction:column;gap:12px}.appointment-card,.request-card{display:grid;grid-template-columns:112px 1fr;gap:14px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#fffffff5,#f1f5f9eb);border:1px solid rgba(148,163,184,.2)}.appointment-card-compact{grid-template-columns:96px 1fr}.vaccine-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700}.vaccine-badge.is-approved{background:#dcfce7;color:#166534}.vaccine-badge.is-pending{background:#fef3c7;color:#92400e}.vaccine-badge.is-missing,.vaccine-badge.is-rejected,.vaccine-badge.is-expired{background:#fee2e2;color:#b91c1c}.pricing-summary,.pricing-panel{margin-top:14px;padding-top:14px;border-top:1px solid #e2e8f0}.pricing-badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.pricing-badge{display:inline-flex;flex-direction:column;gap:2px;min-width:100px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:#fff;padding:8px 10px}.pricing-badge span{color:#64748b;font-size:.74rem;font-weight:700;text-transform:uppercase}.pricing-badge strong{color:#0f172a}.pricing-summary-form,.pricing-history-form{margin-top:12px}.pricing-history-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.pricing-history-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.pricing-history-top h4{margin:0;font-size:1.2rem}.appointment-time{display:flex;flex-direction:column;gap:4px}.appointment-time strong{font-size:1.05rem}.appointment-body{display:flex;flex-direction:column;gap:8px}.appointment-title-row,.request-topline{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.empty-state{border:1px dashed #cbd5e1;border-radius:18px;padding:18px;background:#f8fafccc}.empty-state-compact{padding:14px 16px}.file-upload-field input[type=file]{background:#fff;padding:12px}.list{margin:0;padding-left:18px}.error{color:#b91c1c}.success{color:#166534}@media(max-width:720px){.container{padding:18px}.grid-two,.summary-grid{grid-template-columns:1fr}.section-heading,.day-heading,.appointment-title-row,.request-topline,.attention-card-top,.client-card-top,.pet-card-top,.review-card-top{flex-direction:column;align-items:flex-start}.calendar-weekdays,.calendar-grid{gap:6px}.calendar-day{min-height:104px;padding:8px}.calendar-weekdays span,.calendar-appointment-pill,.calendar-day-hint,.calendar-more-label{font-size:.68rem}.appointment-card,.request-card,.appointment-card-compact{grid-template-columns:1fr}}body:has(.admin-shell){color:#eef4ff;background:linear-gradient(135deg,rgba(20,184,166,.12),transparent 28%),linear-gradient(225deg,rgba(96,165,250,.12),transparent 34%),#07090f}.admin-shell{max-width:1240px;color:#e6eef8}.admin-shell .header{position:relative;overflow:hidden;margin-bottom:18px;border:1px solid rgba(148,163,184,.18);border-radius:8px;padding:clamp(22px,4vw,34px);background:linear-gradient(135deg,rgba(45,212,191,.16),transparent 42%),linear-gradient(180deg,#181f2ef5,#0d111bf5);box-shadow:0 24px 70px #00000052}.admin-shell .header:after{content:"Live schedule";position:absolute;right:22px;top:22px;border:1px solid rgba(45,212,191,.32);border-radius:999px;padding:7px 11px;color:#99f6e4;background:#0d94881f;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-shell .header h1{color:#f8fbff;letter-spacing:-.045em}.admin-shell .header p{color:#a9b8cc}.admin-shell .admin-nav{position:sticky;top:0;z-index:4;margin-bottom:18px;border:1px solid rgba(148,163,184,.16);border-radius:8px;padding:8px;background:#080c14d6;box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-shell .admin-nav-tab,.admin-shell .toolbar-button,.admin-shell .toggle-chip{border:1px solid rgba(148,163,184,.18);border-radius:8px;color:#dbeafe;background:#111827db;box-shadow:inset 0 1px #ffffff0a}.admin-shell .admin-nav-tab:hover,.admin-shell .toolbar-button:hover,.admin-shell .toggle-chip:hover{border-color:#2dd4bf66;color:#f8fbff;transform:translateY(-1px)}.admin-shell .admin-nav-tab.is-active,.admin-shell .toggle-chip.is-active{border-color:#2dd4bf9e;color:#ecfeff;background:linear-gradient(135deg,#14b8a6d1,#2563ebd1);box-shadow:0 14px 34px #14b8a62e}.admin-shell .admin-logout-button{margin-left:auto;border-color:#fb718538;color:#fecdd3;background:#7f1d1d3d}.login-shell{max-width:560px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.login-card{margin-bottom:0}.login-form{display:flex;flex-direction:column;gap:4px}.admin-shell .login-form input{border-color:#94a3b838;color:#f8fbff;background:#0f172ad1}.admin-shell .login-form input:focus{outline:2px solid rgba(45,212,191,.35);border-color:#2dd4bf94}.login-help{margin:14px 0 0;color:#9fb0c7;font-size:.88rem}.account-settings-card{max-width:760px}.settings-form,.settings-form form{display:flex;flex-direction:column;gap:12px}.admin-shell .settings-form input{border-color:#94a3b838;color:#f8fbff;background:#0f172ad1}.admin-shell .settings-form input:focus{outline:2px solid rgba(45,212,191,.35);border-color:#2dd4bf94}.two-factor-qr-card{width:fit-content;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:12px;background:#fff}.two-factor-qr-card img{display:block;width:min(240px,68vw);height:auto}body:has(.booking-landing){background:radial-gradient(circle at 96% 3%,rgba(167,139,250,.18),transparent 12%),radial-gradient(circle at 7% 12%,rgba(45,212,191,.13),transparent 18%),linear-gradient(135deg,#fbfaff,#f7fbff 45%,#fff7fb)}.booking-landing{max-width:1320px;padding:26px;color:#161933}.booking-site-header{position:sticky;top:14px;z-index:12;display:grid;grid-template-columns:240px 1fr auto;align-items:center;gap:20px;border:1px solid rgba(143,133,180,.22);border-radius:8px;padding:14px 18px;background:#ffffffe0;box-shadow:0 20px 50px #52448021;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.booking-brand,.desktop-booking-nav button,.signin-link{border:0;background:transparent;color:#101426;box-shadow:none}.booking-brand{display:inline-flex;align-items:center;gap:10px;padding:0;text-align:left}.brand-paw{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;overflow:hidden;flex-shrink:0}.brand-paw img{width:100%;height:100%;object-fit:cover;display:block}.booking-brand strong{display:block;font-size:1.25rem;letter-spacing:-.04em}.booking-brand small{display:block;color:#7a6d9a;font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.desktop-booking-nav{display:flex;justify-content:center;gap:clamp(18px,4vw,58px)}.desktop-booking-nav button,.signin-link{font-weight:800}.desktop-booking-nav button.is-active{color:#5b45c4;text-decoration:underline;text-underline-offset:12px;text-decoration-thickness:2px}.booking-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.client-chip{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(109,78,232,.18);border-radius:999px;padding:7px 12px 7px 7px;color:#15192f;background:#fffc;box-shadow:none;font-weight:900}.client-chip span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#6d4ee8,#14b8a6)}.signup-button,.primary-booking-button,.mobile-signup-button{border-radius:8px;background:linear-gradient(135deg,#6d4ee8,#4338ca);box-shadow:0 16px 35px #4f46e540}.booking-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:32px;overflow:hidden;margin-top:16px;border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:clamp(28px,6vw,76px);background:radial-gradient(circle at 78% 44%,rgba(153,246,228,.52),transparent 28%),linear-gradient(135deg,#fffffffa,#faf7ffe6);box-shadow:0 28px 80px #4d428021}.hero-copy{position:relative;z-index:2}.loved-pill,.request-pill{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;padding:9px 14px;color:#5b45c4;background:#ede9fee6;font-weight:800}.booking-hero h1{max-width:640px;margin:18px 0 12px;color:#11162d;font-size:clamp(2.7rem,7vw,5.45rem);line-height:.95;letter-spacing:-.075em}.booking-hero h1 span{display:block;color:#5844cc}.hero-subtitle{max-width:560px;margin:0;color:#66708a;font-size:clamp(1rem,2vw,1.28rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.primary-booking-button,.secondary-booking-button{min-height:54px;padding:0 22px;font-weight:900}.secondary-booking-button{border:1px solid rgba(109,78,232,.12);color:#5b45c4;background:#f5f3fff2;box-shadow:none}.booking-logic-note{max-width:520px;margin:14px 0 0;color:#7c6f95;font-size:.94rem}.trust-row{display:flex;flex-wrap:wrap;gap:18px;margin-top:34px;color:#5f6678;font-size:.94rem}.hero-visual{position:relative;min-height:440px}.dog-portrait{position:absolute;inset:0 4% 0 auto;display:flex;align-items:center;justify-content:center;width:min(520px,100%);border-radius:999px 999px 8px;background:radial-gradient(circle at 52% 40%,#fff,#dff9f7 48%,#ede9fe)}.dog-illustration{position:relative;width:min(320px,70%);aspect-ratio:1;filter:drop-shadow(0 24px 26px rgba(94,72,130,.2))}.dog-head,.dog-ear,.dog-snout,.dog-bandana,.dog-eye,.dog-nose,.dog-smile{position:absolute;display:block}.dog-head{top:18%;right:16%;bottom:14%;left:16%;z-index:2;border-radius:48% 48% 44% 44%;background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.82),transparent 16%),linear-gradient(145deg,#f5c88f,#d99450)}.dog-ear{top:18%;z-index:1;width:28%;height:54%;border-radius:48% 48% 55% 55%;background:linear-gradient(180deg,#d8944f,#b66b32)}.dog-ear-left{left:8%;transform:rotate(10deg)}.dog-ear-right{right:8%;transform:rotate(-10deg)}.dog-eye{top:36%;width:8%;height:8%;border-radius:999px;background:#281a18;box-shadow:0 0 0 5px #ffffff3d}.dog-eye-left{left:30%}.dog-eye-right{right:30%}.dog-snout{left:50%;bottom:24%;width:42%;height:30%;border-radius:48% 48% 50% 50%;background:#ffe5bf;transform:translate(-50%)}.dog-nose{left:50%;top:24%;width:28%;height:22%;border-radius:48% 48% 58% 58%;background:#2b1a1d;transform:translate(-50%)}.dog-smile{left:50%;bottom:18%;width:38%;height:24%;border-bottom:4px solid #9c513f;border-radius:0 0 999px 999px;transform:translate(-50%)}.dog-bandana{left:50%;bottom:1%;z-index:3;width:42%;height:22%;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(135deg,#7dd3fc,#5eead4);transform:translate(-50%)}.sparkle{position:absolute;color:#7c6be8;font-size:2rem;font-weight:900}.sparkle-one{left:14%;top:26%}.sparkle-two{right:14%;top:16%}.landing-section{margin-top:22px;border:1px solid rgba(143,133,180,.16);border-radius:8px;padding:clamp(20px,3vw,34px);background:#ffffffdb;box-shadow:0 20px 60px #4d428014}.landing-section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.landing-section-heading h2,.service-preview-card h3,.bio-copy h2{margin:0;color:#15192f;letter-spacing:-.04em}.landing-section-heading button{border:0;color:#5544c7;background:transparent;box-shadow:none}.service-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-preview-card{overflow:hidden;border:1px solid rgba(143,133,180,.16);border-radius:8px;background:#fff;box-shadow:0 18px 42px #4d428014}.service-dog-bubble{display:flex;align-items:center;justify-content:center;min-height:148px;background:#ede9fe;font-size:5rem}.service-preview-card.accent-mint .service-dog-bubble{background:#dcfdf7}.service-preview-card.accent-aqua .service-dog-bubble{background:#e0f7fa}.service-preview-card.accent-peach .service-dog-bubble{background:#fff1e7}.service-preview-card div:last-child{padding:16px}.service-preview-card p{margin:6px 0 14px;color:#687084}.service-preview-card strong{color:#5b45c4}.service-included-list{display:grid;gap:6px;margin:10px 0;padding:0;list-style:none}.service-included-list li{color:#485066;font-size:.9rem}.service-included-list li:before{content:"✓";margin-right:8px;color:#0f766e;font-weight:900}.addon-preview-panel,.public-pricing-note{margin-top:16px;border:1px solid rgba(20,184,166,.16);border-radius:18px;padding:16px;background:#f0fdfa}.addon-preview-panel>div{display:flex;flex-wrap:wrap;gap:10px}.addon-preview-panel span{display:grid;gap:3px;border-radius:14px;padding:10px 12px;color:#134e4a;background:#fff}.addon-preview-panel small,.public-pricing-note{color:#4b5563}.groomer-bio{display:grid;grid-template-columns:170px minmax(0,1fr) minmax(220px,.8fr) 160px;gap:24px;align-items:center}.groomer-photo-card{display:grid;place-items:center;min-height:160px;border-radius:8px;background:linear-gradient(135deg,#ede9fe,#ccfbf1);text-align:center}.groomer-photo-card span{font-size:4.8rem}.groomer-photo-card small,.rating-card small{color:#697188}.bio-copy p{color:#697188;line-height:1.6}.bio-checklist{display:grid;gap:10px;margin:0;padding:0;color:#586174;list-style:none}.rating-card{display:grid;gap:4px;border:1px solid rgba(143,133,180,.16);border-radius:8px;padding:18px;background:#fff;text-align:center}.rating-card strong{color:#15192f;font-size:2rem}.rating-card span{color:#fbbf24}.booking-form-section .form{border-radius:8px;box-shadow:none}.booking-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);gap:14px;align-items:end}.booking-selected-dog,.selected-time-panel{border:1px solid rgba(143,133,180,.18);border-radius:8px;background:#f8fafc;padding:14px 16px}.booking-selected-dog{display:flex;justify-content:space-between;gap:12px;align-items:center}.booking-selected-dog strong,.selected-time-panel strong{color:#11162d}.booking-selected-dog span,.selected-time-panel span,.selected-time-panel small{color:#697188}.selected-time-panel{display:grid;gap:4px}.form-intro{max-width:720px;color:#697188}.client-schedule-preview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.8fr);gap:18px;margin:22px 0}.find-time-panel,.client-hub-panel{border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:18px;background:#ffffffeb;box-shadow:0 18px 48px #4d428014}.schedule-panel-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}.schedule-panel-heading h3{margin:0;color:#11162d;letter-spacing:-.035em}.schedule-panel-heading>span{color:#6d6286;font-size:.86rem;font-weight:800}.date-chip-row,.time-chip-grid{display:flex;flex-wrap:wrap;gap:10px}.date-chip,.time-chip{border:1px solid rgba(109,78,232,.18);color:#4b3ab5;background:#fff;box-shadow:none}.date-chip{display:inline-grid;place-items:center;min-width:58px;min-height:66px;padding:8px 10px;border-radius:8px}.date-chip span{color:#7a6d9a;font-size:.72rem;font-weight:900;text-transform:uppercase}.date-chip strong{color:#15192f;font-size:1.08rem}.date-chip.is-selected,.time-chip.is-selected{color:#fff;border-color:transparent;background:linear-gradient(135deg,#6d4ee8,#4338ca);box-shadow:0 14px 28px #4f46e538}.date-chip.is-selected span,.date-chip.is-selected strong{color:#fff}.time-chip-grid{margin-top:16px}.time-chip{min-width:104px;padding:10px 12px;border-radius:8px;font-weight:900}.mini-note,.schedule-empty-copy{margin:14px 0 0;color:#7a6d9a;font-size:.9rem}.client-status-pill{border-radius:999px;padding:7px 10px;color:#0f766e!important;background:#ccfbf1}.appointment-preview-card{display:grid;grid-template-columns:74px 1fr;gap:14px;align-items:center;border:1px solid rgba(143,133,180,.16);border-radius:8px;padding:12px;background:linear-gradient(135deg,#fff,#faf7ff)}.appointment-date-block{display:grid;place-items:center;min-height:82px;border-radius:8px;color:#4b3ab5;background:#ede9fe}.appointment-date-block span,.appointment-date-block small{color:#6d6286;font-size:.72rem;font-weight:900;text-transform:uppercase}.appointment-date-block strong{color:#15192f;font-size:1.7rem}.appointment-preview-card p,.appointment-preview-card small{color:#697188}.appointment-preview-card p{margin:4px 0}.client-alert-list{display:grid;gap:8px;margin-top:14px}.client-alert-list span{position:relative;padding-left:24px;color:#586174;font-size:.9rem}.client-alert-list span:before{content:"";position:absolute;left:0;top:.42em;width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,#5eead4,#6d4ee8)}.client-gate-card{border:1px solid rgba(109,78,232,.16);border-radius:8px;padding:clamp(20px,4vw,34px);background:radial-gradient(circle at 92% 15%,rgba(94,234,212,.22),transparent 24%),linear-gradient(135deg,#fff,#f5f3ff);box-shadow:0 18px 50px #4d42801a}.client-gate-card h1,.client-gate-card h3{margin:6px 0 8px;color:#15192f;letter-spacing:-.04em}.client-gate-card p{max-width:680px;color:#687084;line-height:1.6}.gate-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.bio-page .booking-site-header,.client-auth-page .booking-site-header,.client-profile-page .booking-site-header{margin-bottom:16px}.bio-hero-page{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:clamp(22px,5vw,60px);align-items:center;overflow:hidden;border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:clamp(28px,6vw,72px);background:radial-gradient(circle at 78% 28%,rgba(237,233,254,.9),transparent 30%),linear-gradient(135deg,#fffffffa,#faf7ffe6);box-shadow:0 28px 80px #4d428021}.bio-hero-copy h1,.client-auth-story h1,.profile-hero h1{margin:14px 0 16px;color:#11162d;font-size:clamp(2.4rem,6vw,4.7rem);line-height:1;letter-spacing:-.07em}.bio-hero-copy h1 span,.client-auth-story h1 span{color:#5b45c4}.bio-hero-copy p,.client-auth-story p,.profile-hero p{color:#4f5870;font-size:1.05rem;line-height:1.65}.bio-hero-photo{position:relative;display:grid;place-items:center;min-height:430px;border-radius:999px 999px 8px;background:radial-gradient(circle at 45% 38%,#fff,#ede9fe 54%,#ccfbf1)}.groomer-avatar-large{display:grid;place-items:center;width:min(300px,64vw);aspect-ratio:1;border:16px solid rgba(255,255,255,.68);border-radius:999px;color:#fff;background:linear-gradient(135deg,#11162d,#6d4ee8);box-shadow:0 30px 70px #4d428038;font-size:clamp(3rem,9vw,6rem);font-weight:950}.bio-heart{position:absolute;left:12%;top:22%;color:#6d4ee8;font-weight:900}.bio-trust-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:-22px auto 22px;width:min(1020px,calc(100% - 42px));position:relative;z-index:2;border:1px solid rgba(143,133,180,.16);border-radius:8px;padding:14px;background:#ffffffeb;box-shadow:0 20px 50px #4d42801f}.bio-trust-strip article,.expect-card-grid article{display:grid;gap:4px;border-radius:8px;padding:14px;background:#fff}.bio-trust-strip strong,.expect-card-grid strong{color:#15192f}.bio-trust-strip span,.expect-card-grid span,.bio-list{color:#687084}.bio-content-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px}.bio-list{display:grid;gap:12px;margin:18px 0 0;padding:0;list-style:none;line-height:1.55}.bio-list li{border-radius:8px;padding:12px 14px;background:#f5f3ff}.expect-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.client-auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.8fr);gap:clamp(24px,5vw,72px);align-items:start;min-height:auto;border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:40px clamp(24px,6vw,72px) 56px;background:radial-gradient(circle at 10% 12%,rgba(237,233,254,.9),transparent 24%),linear-gradient(135deg,#fffffffa,#faf7ffe0);box-shadow:0 28px 80px #4d428021}.auth-paw{margin-bottom:18px}.auth-benefit-list{display:grid;gap:16px;margin-top:28px}.auth-benefit-list span{border:1px solid rgba(109,78,232,.12);border-radius:8px;padding:14px 16px;color:#25294a;background:#ffffffb8;box-shadow:0 14px 36px #4d428014;font-weight:800}.auth-dog-card{display:grid;place-items:center;width:min(360px,70vw);aspect-ratio:1;margin:30px auto 0;border-radius:999px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#f4b886,#6d4ee8);box-shadow:0 30px 70px #4d42802e;font-size:2.4rem;font-weight:950}.auth-dog-card img{width:100%;height:100%;object-fit:cover;display:block}.client-auth-card{border:1px solid rgba(143,133,180,.2);border-radius:8px;padding:clamp(22px,4vw,42px);background:#fffffff0;box-shadow:0 30px 70px #4d428029}.client-auth-card h2{margin:6px 0 8px;color:#15192f;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.05em}.auth-card-copy{color:#687084;line-height:1.55}.client-auth-form{display:grid;gap:14px;margin-top:22px}.client-auth-form label{display:grid;gap:7px;color:#15192f;font-weight:900}.client-auth-form input,.client-auth-form select,.client-auth-form textarea{width:100%;border:1px solid rgba(143,133,180,.28);border-radius:8px;padding:13px 14px;color:#15192f;background:#fff}.client-auth-form textarea{min-height:92px;resize:vertical}.client-auth-form button,.profile-panel button{border-radius:8px;background:linear-gradient(135deg,#6d4ee8,#4338ca);box-shadow:0 16px 35px #4f46e540}.auth-switcher{display:grid;gap:10px;margin-top:20px;color:#687084;text-align:center}.auth-switcher button,.back-link-button{border:1px solid rgba(109,78,232,.2);color:#5b45c4;background:transparent;box-shadow:none}.profile-hero{padding:26px 8px 12px}.back-link-button{padding-inline:0}.pet-profile-layout{display:grid;grid-template-columns:1.1fr .62fr;gap:18px}.pet-main-card,.profile-panel{border:1px solid rgba(143,133,180,.17);border-radius:8px;padding:clamp(18px,3vw,28px);background:#ffffffe6;box-shadow:0 20px 58px #4d42801a}.pet-main-card{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center}.pet-photo-orb{display:grid;place-items:center;width:min(220px,54vw);aspect-ratio:1;border-radius:999px;color:#fff;background:radial-gradient(circle at 34% 20%,#fff4,transparent 28%),linear-gradient(135deg,#f4b886,#6d4ee8);box-shadow:inset 0 0 0 14px #ffffff5c;font-size:5rem;font-weight:950}.pet-main-copy h2{margin:0;color:#15192f;font-size:clamp(2.2rem,5vw,3.5rem);letter-spacing:-.06em}.pet-main-copy>p{color:#687084;font-size:1.1rem}.pet-stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.pet-stat-row span{display:grid;gap:3px;border-right:1px solid rgba(143,133,180,.18);color:#7a6d9a;font-size:.85rem}.pet-stat-row strong{color:#15192f}.vaccine-profile-pill{width:fit-content;border-radius:999px;padding:10px 14px;color:#0f766e;background:#ccfbf1;font-weight:900}.profile-panel h3{margin:4px 0 8px;color:#15192f}.profile-panel p{color:#687084;line-height:1.55}.groom-summary-panel,.groom-photos-panel{grid-column:span 1}.photo-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-preview-grid span{display:grid;place-items:center;min-height:130px;border-radius:8px;color:#5b45c4;background:linear-gradient(135deg,#ede9fe,#ccfbf1);font-weight:900}.mobile-menu-button,.mobile-menu-panel{display:none}@media(max-width:980px){.booking-site-header{grid-template-columns:auto 1fr auto}.desktop-booking-nav,.booking-header-actions .signup-button,.booking-header-actions .client-chip{display:none}.mobile-menu-button{display:inline-grid;gap:4px;width:42px;height:42px;padding:10px;border:0;background:transparent;box-shadow:none}.mobile-menu-button span{display:block;height:2px;border-radius:999px;background:#1f2340}.booking-brand{justify-self:center}.signin-link{padding-inline:0}.mobile-menu-panel{position:fixed;top:92px;right:18px;z-index:30;display:grid;gap:14px;width:min(290px,calc(100vw - 36px));border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:52px 18px 18px;background:#fffffff5;box-shadow:0 24px 80px #342a5e38}.mobile-menu-panel button{display:flex;justify-content:flex-start;gap:12px;align-items:center;border:0;color:#15192f;background:transparent;box-shadow:none;font-weight:800}.mobile-menu-panel .mobile-signup-button{justify-content:center;color:#fff;background:linear-gradient(135deg,#6d4ee8,#4338ca)}.mobile-menu-close{position:absolute;right:10px;top:8px;justify-content:center!important;width:40px;font-size:1.7rem}.booking-hero{grid-template-columns:1fr}.hero-visual{min-height:360px}.service-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-schedule-preview{grid-template-columns:1fr}.groomer-bio{grid-template-columns:150px 1fr}.bio-hero-page,.client-auth-shell{grid-template-columns:1fr}.bio-hero-photo{min-height:320px}.bio-trust-strip,.bio-content-grid,.pet-profile-layout{grid-template-columns:1fr}.bio-trust-strip{margin-top:18px;width:100%}.pet-main-card{grid-template-columns:1fr;text-align:center}.pet-photo-orb,.vaccine-profile-pill{margin-inline:auto}.bio-checklist,.rating-card{grid-column:span 2}}@media(max-width:640px){.booking-landing{padding:14px}.booking-site-header{top:8px;padding:10px}.booking-brand strong{font-size:1rem}.brand-paw{width:34px;height:34px;font-size:1rem}.booking-hero{padding:22px 16px}.booking-hero h1{font-size:clamp(2.25rem,13vw,3.6rem)}.hero-actions,.primary-booking-button,.secondary-booking-button{width:100%}.hero-visual{min-height:270px}.dog-portrait{width:72%;left:auto;right:-4%}.dog-illustration{width:72%}.landing-section-heading{align-items:flex-start;flex-direction:column}.service-preview-grid,.groomer-bio,.bio-trust-strip,.expect-card-grid,.pet-stat-row,.photo-preview-grid{grid-template-columns:1fr}.bio-hero-page,.client-auth-shell{padding:22px 16px}.bio-hero-copy h1,.client-auth-story h1,.profile-hero h1{font-size:clamp(2.2rem,12vw,3.5rem)}.client-auth-card{padding:18px}.gate-actions,.gate-actions button{width:100%}.bio-checklist,.rating-card{grid-column:auto}.service-dog-bubble{min-height:112px;font-size:4rem}.find-time-panel,.client-hub-panel{padding:14px}.date-chip-row,.time-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.date-chip,.time-chip{width:100%}.booking-form-grid,.booking-selected-dog{grid-template-columns:1fr}.booking-selected-dog{align-items:flex-start;flex-direction:column}.appointment-preview-card{grid-template-columns:1fr}}:root{--admin-bg: #f9f9fc;--admin-sidebar-bg: #ffffff;--admin-card-bg: #ffffff;--admin-border: #eae8f0;--admin-text-main: #2b2636;--admin-text-muted: #6b637d;--admin-primary: #8a63d2;--admin-primary-hover: #7b52c6;--admin-primary-light: #f3effc;--admin-shadow: 0 4px 20px rgba(138, 99, 210, .05)}.admin-layout{display:flex;min-height:100vh;background-color:var(--admin-bg);color:var(--admin-text-main);font-family:inherit}.admin-sidebar{width:260px;background:var(--admin-sidebar-bg);border-right:1px solid var(--admin-border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform .3s ease}.sidebar-header{padding:24px;display:flex;justify-content:space-between;align-items:center}.sidebar-logo{display:flex;align-items:center;gap:12px}.logo-icon{font-size:1.8rem;color:var(--admin-primary)}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-text strong{font-size:1.2rem;font-family:Playfair Display,serif;color:var(--admin-text-main)}.logo-text span{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-text-muted)}.mobile-close-button{display:none;background:none;border:none;font-size:1.5rem;color:var(--admin-text-muted);cursor:pointer}.sidebar-nav{flex:1;padding:0 16px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;border:none;background:transparent;color:var(--admin-text-muted);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;text-align:left}.sidebar-nav-item:hover{background:var(--admin-primary-light);color:var(--admin-primary)}.sidebar-nav-item.is-active{background:var(--admin-primary);color:#fff}.nav-icon{font-size:1.2rem}.sidebar-footer{padding:24px;border-top:1px solid var(--admin-border);display:flex;flex-direction:column;gap:16px}.sidebar-profile{display:flex;align-items:center;gap:12px;padding:12px;background:var(--admin-bg);border-radius:12px;border:1px solid var(--admin-border)}.profile-avatar{width:40px;height:40px;border-radius:50%;background:var(--admin-primary-light);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-weight:700}.profile-info{display:flex;flex-direction:column}.profile-info strong{font-size:.9rem}.profile-info span{font-size:.8rem;color:var(--admin-text-muted)}.sidebar-logout{background:transparent;border:1px solid var(--admin-border);color:var(--admin-text-muted);border-radius:8px;padding:8px;font-weight:600;cursor:pointer;transition:all .2s}.sidebar-logout:hover{background:#fee2e2;color:#ef4444;border-color:#fca5a5}.admin-main-wrapper{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh}.admin-topbar{display:none;align-items:center;justify-content:space-between;padding:16px 24px;background:#fff;border-bottom:1px solid var(--admin-border);position:sticky;top:0;z-index:50}.mobile-menu-button{background:none;border:none;color:var(--admin-text-main);cursor:pointer;padding:4px}.topbar-title{font-weight:700;font-size:1.1rem}.notification-button{background:var(--admin-primary-light);border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.admin-main-content{flex:1;padding:32px 40px;max-width:1400px;margin:0 auto;width:100%}.admin-content-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px}.admin-content-title-area h1{font-size:2rem;margin:0 0 4px;color:var(--admin-text-main)}.admin-content-subtitle{color:var(--admin-text-muted);margin:0;font-size:1rem}.admin-sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:90;opacity:0;transition:opacity .3s;pointer-events:none}@media(max-width:1024px){.admin-sidebar{transform:translate(-100%)}.admin-sidebar.is-open{transform:translate(0);box-shadow:4px 0 24px #0000001a}.mobile-close-button{display:block}.admin-main-wrapper{margin-left:0}.admin-topbar{display:flex}.admin-sidebar-overlay.is-open{display:block;opacity:1;pointer-events:auto}.admin-main-content{padding:24px}.admin-content-header{flex-direction:column;align-items:flex-start;gap:16px}}.admin-card{background:var(--admin-card-bg);border-radius:16px;box-shadow:var(--admin-shadow);border:1px solid var(--admin-border);padding:24px;margin-bottom:24px}.admin-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:32px}.admin-stat-card{background:#fff;border-radius:16px;padding:24px;border:1px solid var(--admin-border);box-shadow:var(--admin-shadow);display:flex;flex-direction:column}.admin-stat-card .eyebrow{color:var(--admin-text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.admin-stat-card strong{font-size:2.5rem;line-height:1.1;color:var(--admin-text-main);margin-bottom:4px}.admin-stat-card span{color:var(--admin-text-muted);font-size:.9rem}.admin-review-rail{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(180px,.6fr) minmax(320px,1.4fr);gap:16px;align-items:stretch;margin-bottom:24px}.admin-review-rail .admin-stat-card,.admin-review-rail .admin-card{margin:0}.admin-review-card{padding:18px}.admin-review-card .section-heading{margin-bottom:12px}.admin-review-card h2{margin:0;color:var(--admin-text-main);font-size:1.2rem}.review-queue-list{display:grid;gap:10px}.review-queue-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid rgba(143,133,180,.14);border-radius:14px;padding:11px 12px;background:#fbfaff}.review-queue-item div{display:grid;gap:2px;min-width:0}.review-queue-item span{color:#6d4ee8;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.review-queue-item strong,.review-queue-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-queue-item strong{color:#15192f}.review-queue-item small,.review-clear-copy{color:#687084}.review-queue-item em{border-radius:999px;padding:6px 9px;color:#92400e;background:#fef3c7;font-size:.78rem;font-style:normal;font-weight:900}.review-clear-copy{margin:0}.admin-dashboard-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:24px;align-items:start}.admin-schedule-column{min-width:0}.admin-view-toggle{display:inline-flex;background:var(--admin-bg);border:1px solid var(--admin-border);border-radius:8px;padding:4px}.admin-view-toggle button{background:transparent;border:none;padding:6px 16px;border-radius:6px;color:var(--admin-text-muted);font-weight:600;cursor:pointer;transition:all .2s}.admin-view-toggle button:hover{color:var(--admin-text-main)}.admin-view-toggle button.is-active{background:#fff;color:var(--admin-text-main);box-shadow:0 2px 8px #0000000d}.admin-right-sidebar{display:flex;flex-direction:column;gap:24px;min-width:0}@media(max-width:1024px){.admin-review-rail,.admin-dashboard-workspace{grid-template-columns:1fr}.admin-right-sidebar{width:100%}}@media(min-width:1025px){.admin-right-sidebar .admin-card{max-height:min(620px,calc(100vh - 260px));overflow:auto}}@media(max-width:760px){.admin-review-rail{gap:12px}.review-queue-item{grid-template-columns:1fr}.review-queue-item strong,.review-queue-item small{white-space:normal}}.admin-detail-panel{background:var(--admin-card-bg);border-radius:16px;box-shadow:var(--admin-shadow);border:1px solid var(--admin-border);display:flex;flex-direction:column;overflow:hidden}.detail-panel-header{padding:24px;background:#fff;border-bottom:1px solid var(--admin-border)}.detail-panel-title-area{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.panel-pet-info{display:flex;align-items:center;gap:16px}.panel-pet-avatar{width:64px;height:64px;border-radius:50%;background:var(--admin-primary-light);color:var(--admin-primary);font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center}.panel-pet-info h2{margin:0 0 4px;font-size:1.5rem;display:flex;align-items:center;gap:8px}.panel-pet-info h2 span{font-size:1rem;color:var(--admin-text-muted);cursor:pointer}.panel-pet-sub{margin:0;color:var(--admin-text-muted);font-size:.9rem}.panel-close-mobile{display:none}.panel-close-desktop{background:transparent;border:none;font-size:1.5rem;color:var(--admin-text-muted);cursor:pointer}.detail-panel-quick-stats{display:grid;grid-template-columns:1fr;gap:16px}.quick-stat{display:flex;align-items:center;gap:12px}.stat-icon{font-size:1.2rem;opacity:.8}.stat-label{display:block;font-size:.8rem;color:var(--admin-text-muted);margin-bottom:2px}.quick-stat strong{font-size:.95rem;color:var(--admin-text-main);line-height:1.2}.detail-panel-content{padding:24px;background:var(--admin-bg);display:flex;flex-direction:column;gap:24px}.panel-section{background:#fff;border-radius:12px;padding:16px;border:1px solid var(--admin-border)}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header-row h3{margin:0;font-size:1rem;color:var(--admin-text-main)}.private-note-title{color:var(--admin-primary)!important}.client-note-title{color:#0ea5e9!important}.note-display{padding:12px;border-radius:8px;font-size:.9rem;line-height:1.4}.private-note-display{background:var(--admin-primary-light);color:var(--admin-primary)}.client-note-display{background:#f0f9ff;color:#0369a1}.note-display p{margin:0}.note-display .empty{font-style:italic;opacity:.7}.note-edit-area{width:100%;min-height:80px;padding:12px;border-radius:8px;border:1px solid var(--admin-border);font-family:inherit;font-size:.9rem;resize:vertical}.note-edit-area.private-area{border-color:var(--admin-primary);background:var(--admin-primary-light)}.note-edit-area.client-area{border-color:#38bdf8;background:#f0f9ff}.duration-label{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:16px;color:var(--admin-text-main)}.duration-label input{padding:6px 12px;border-radius:6px;border:1px solid var(--admin-border);width:80px}.history-preview-grid{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.history-thumb-placeholder{flex:0 0 100px;height:120px;background:#e2e8f0;border-radius:8px;display:flex;flex-direction:column;justify-content:flex-end;padding:8px;color:#475569;font-size:.75rem}.history-thumb-placeholder .date{font-weight:700}.upload-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto}.upload-tab{background:transparent;border:none;padding:6px 12px;color:var(--admin-text-muted);font-weight:600;cursor:pointer;white-space:nowrap}.upload-tab.active{color:var(--admin-primary);border-bottom:2px solid var(--admin-primary)}.upload-dropzone{border:2px dashed var(--admin-border);border-radius:12px;padding:32px 16px;text-align:center;color:var(--admin-text-muted);background:#fafafa;cursor:pointer;transition:all .2s}.upload-dropzone:hover{background:var(--admin-primary-light);border-color:var(--admin-primary);color:var(--admin-primary)}.upload-icon{font-size:2rem;margin-bottom:8px}@media(max-width:768px){.admin-detail-panel{position:fixed;inset:auto 0 0 0;max-height:90vh;z-index:100;border-radius:24px 24px 0 0;box-shadow:0 -10px 40px #00000026}.detail-panel-content{overflow-y:auto}.panel-close-desktop{display:none}.panel-close-mobile{display:block;background:transparent;border:none;font-size:1.5rem;color:var(--admin-text-muted);position:absolute;top:16px;right:16px}.detail-panel-quick-stats{grid-template-columns:1fr 1fr}}.day-schedule-view{display:flex;flex-direction:column;background:var(--admin-card-bg);border:1px solid var(--admin-border);border-radius:8px;overflow:hidden}.day-schedule-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--admin-border);background:var(--admin-bg)}.day-schedule-nav{display:flex;gap:8px}.day-schedule-nav .toolbar-button{background:#fff;color:var(--admin-text-main);border:1px solid var(--admin-border);border-radius:6px;padding:6px 12px;font-size:.9rem;font-weight:700;transition:all .2s}.day-schedule-nav .toolbar-button:hover:not(:disabled){background:var(--admin-primary-light);border-color:var(--admin-primary)}.day-schedule-nav .toolbar-button:disabled{opacity:.5;cursor:not-allowed}.day-schedule-title{text-align:right;color:var(--admin-text-main);font-weight:800;font-size:1.1rem}.day-schedule-title .short-date{display:none}@media(max-width:640px){.day-schedule-title .short-date{display:inline}.day-schedule-title .long-date{display:none}.day-schedule-toolbar{flex-direction:column-reverse;gap:12px;align-items:stretch;text-align:center}.day-schedule-title{text-align:center}.day-schedule-nav{justify-content:center}}.day-schedule-container{display:flex;height:600px;overflow-y:auto;overflow-x:auto;position:relative;background:#fff}.day-schedule-container::-webkit-scrollbar{width:8px;height:8px}.day-schedule-container::-webkit-scrollbar-track{background:#f1f1f1}.day-schedule-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.time-column{flex:0 0 70px;border-right:1px solid var(--admin-border);position:sticky;left:0;background:#fff;z-index:20}.time-slot-label{display:flex;justify-content:flex-end;padding-right:12px;position:relative}.time-slot-label span{position:absolute;top:-10px;color:var(--admin-text-muted);font-size:.8rem;font-weight:700}.schedule-grid{flex:1;position:relative;min-width:300px;display:flex}.grid-line{position:absolute;left:0;right:0;height:1px;background:var(--admin-border);opacity:.7;pointer-events:none;z-index:1}.half-line{border-top:1px dashed rgba(143,133,180,.15);background:transparent}.current-time-line{position:absolute;left:0;right:0;height:2px;background:#ef4444;z-index:15;pointer-events:none}.current-time-dot{position:absolute;left:-4px;top:-4px;width:10px;height:10px;border-radius:50%;background:#ef4444}.groomer-column{flex:1;display:flex;flex-direction:column;position:relative;min-width:250px;border-right:1px solid rgba(143,133,180,.1)}.groomer-column-header{position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:8px 12px;color:var(--admin-text-main);font-weight:800;font-size:.9rem;text-align:center;border-bottom:1px solid var(--admin-border);z-index:25}.groomer-column-content{position:relative;flex:1;padding:0 4px}.schedule-block{position:absolute;left:4px;right:4px;border-radius:6px;padding:6px 8px;border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;gap:2px;text-align:left;overflow:hidden;box-shadow:0 4px 12px #00000026;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;z-index:10;cursor:pointer}.schedule-block:hover{transform:translateY(-1px) scale(1.01);box-shadow:0 8px 16px #00000040;filter:brightness(1.1);z-index:11}.block-tone-default{background:linear-gradient(135deg,#0ea5e9d9,#38bdf8e6);border-left:3px solid #0284c7;color:#fff}.block-tone-pending{background:linear-gradient(135deg,#f59e0bd9,#fbbf24e6);border-left:3px solid #d97706;color:#fff}.block-tone-alert{background:linear-gradient(135deg,#ef4444d9,#f87171e6);border-left:3px solid #dc2626;color:#fff}.block-tone-completed{background:linear-gradient(135deg,#22c55ed9,#4ade80e6);border-left:3px solid #16a34a;color:#fff}.block-tone-cancelled,.block-tone-noshow{background:#0000000d;border-left:3px solid #94a3b8;color:#475569;opacity:.8}.schedule-block-header{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.schedule-block-time{font-weight:800;letter-spacing:.02em}.schedule-block-vax{font-size:.65rem;padding:2px 6px;border-radius:4px}.schedule-block-body{display:flex;flex-direction:column;line-height:1.2}.schedule-block-pet{font-weight:800;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-block-service,.schedule-block-client{font-size:.8rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-block-duration{font-size:.7rem;opacity:.7;margin-top:auto}.appointment-detail-modal{max-width:800px;width:95%;background:var(--admin-card-bg);border:1px solid var(--admin-border);box-shadow:0 24px 60px #0006;color:var(--admin-text-main);max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--admin-border);padding-bottom:16px;margin-bottom:20px}.modal-header .eyebrow{color:var(--admin-text-accent)}.modal-header h2{color:#fff;margin:4px 0 8px;font-size:1.8rem}.pill-status{background:#ffffff1a;color:#fff}.modal-body-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:768px){.modal-body-grid{grid-template-columns:1fr}}.detail-section{background:var(--admin-bg-dark);border:1px solid var(--admin-border);border-radius:8px;padding:16px;margin-bottom:16px}.detail-section h3{color:#fff;font-size:1.1rem;margin:0 0 12px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px}.detail-section p{color:var(--admin-text-muted);font-size:.9rem;margin:6px 0}.detail-section strong{color:#fff}.detail-section a{color:var(--admin-text-accent);text-decoration:none}.pet-detail-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed rgba(255,255,255,.05);padding:8px 0;font-size:.9rem}.pet-detail-row:last-child{border-bottom:none}.pet-detail-row span{color:var(--admin-text-muted)}.pet-detail-row p{text-align:right;max-width:60%;margin:0}.section-header-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px;margin-bottom:12px}.section-header-row h3{border:none;padding:0;margin:0}.text-button{background:transparent;border:none;color:var(--admin-text-accent);font-weight:800;font-size:.9rem;cursor:pointer}.text-button:hover{text-decoration:underline}.note-block{margin-bottom:16px;background:#0003;border-radius:6px;padding:12px;border-left:3px solid transparent}.private-note-block{border-left-color:#ef4444;background:linear-gradient(90deg,rgba(239,68,68,.05),transparent)}.client-note-block{border-left-color:#10b981;background:linear-gradient(90deg,rgba(16,185,129,.05),transparent)}.note-label{display:block;font-weight:800;color:var(--admin-text-main);margin-bottom:4px;font-size:.85rem}.note-text{color:#fff;white-space:pre-wrap;font-size:.9rem;margin:0}.note-empty{color:var(--admin-text-muted);font-style:italic;font-size:.85rem;margin:0}.notes-edit-form{display:flex;flex-direction:column;gap:16px}.notes-edit-form label{display:flex;flex-direction:column;gap:4px;color:var(--admin-text-main);font-weight:800;font-size:.9rem}.notes-edit-form .hint{font-size:.8rem;font-weight:400;color:var(--admin-text-muted);margin:0 0 4px}.notes-edit-form input,.notes-edit-form textarea{background:var(--admin-input-bg);border:1px solid var(--admin-border);color:#fff;border-radius:6px;padding:10px;font-family:inherit}.notes-edit-form textarea{min-height:100px;resize:vertical}.private-note-label textarea{border-color:#ef44444d}.private-note-label textarea:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.client-note-label textarea{border-color:#10b9814d}.client-note-label textarea:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-actions{display:flex;gap:12px;margin-top:8px}.form-actions button{flex:1}.secondary-button{background:transparent;border:1px solid var(--admin-border);color:var(--admin-text-main)}.secondary-button:hover{background:#ffffff0d}.profile-hero-section{margin-top:8px;border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:clamp(20px,4vw,36px);background:radial-gradient(circle at 82% 22%,rgba(94,234,212,.28),transparent 22%),linear-gradient(135deg,#fffffffa,#faf7ffeb);box-shadow:0 24px 60px #4d42801f}.profile-hero-top{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.profile-avatar-orb{display:grid;place-items:center;width:80px;height:80px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#6d4ee8,#14b8a6);box-shadow:0 14px 32px #6d4ee838;font-size:2.2rem;font-weight:950;flex-shrink:0}.profile-hero-info{flex:1;min-width:0}.profile-hero-info h1{margin:0 0 6px;color:#15192f;font-size:clamp(1.6rem,4vw,2.4rem);letter-spacing:-.04em;line-height:1.15}.profile-meta-row{display:flex;flex-wrap:wrap;gap:8px 18px;color:#6d6286;font-size:.9rem}.profile-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-edit-btn{border:1px solid rgba(109,78,232,.2)!important;color:#5b45c4!important;background:transparent!important;box-shadow:none!important;font-weight:800}.profile-book-btn{background:linear-gradient(135deg,#6d4ee8,#4338ca)!important;box-shadow:0 14px 28px #4f46e538!important;font-weight:800}.profile-success-toast{margin:12px 0;border-radius:8px;padding:12px 16px;color:#166534;background:#dcfce7;font-weight:700;text-align:center;animation:slideDown .28s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-edit-section{margin-top:14px}.profile-content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:18px}.profile-section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.profile-section-header h2{margin:0;color:#15192f;letter-spacing:-.03em}.add-dog-btn{border:1px solid rgba(109,78,232,.22)!important;border-radius:8px;padding:10px 18px!important;color:#5b45c4!important;background:#f5f3ffeb!important;box-shadow:0 8px 20px #4f46e51a!important;font-weight:900;transition:transform .16s,box-shadow .16s}.add-dog-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px #4f46e52e!important}.pet-profile-list{display:flex;flex-direction:column;gap:14px}.pet-profile-card{border:1px solid rgba(143,133,180,.18);border-radius:8px;padding:18px;background:#ffffffeb;box-shadow:0 14px 36px #4d428014;transition:border-color .2s,box-shadow .2s}.pet-profile-card:hover{border-color:#6d4ee842;box-shadow:0 18px 42px #4d42801f}.pet-profile-card.is-selected{border-color:#6d4ee87a;background:#f5f3fff5;box-shadow:0 18px 42px #4f46e524}.pet-profile-card-top{display:flex;gap:16px;align-items:flex-start}.pet-card-avatar{display:grid;place-items:center;width:56px;height:56px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#f4b886,#6d4ee8);box-shadow:inset 0 0 0 6px #ffffff47;font-size:1.5rem;font-weight:950;flex-shrink:0}.pet-card-info{flex:1;min-width:0}.pet-card-info h3{margin:0 0 2px;color:#15192f;font-size:1.3rem;letter-spacing:-.03em}.pet-card-info>p{margin:0;color:#6d6286;font-size:.92rem}.pet-card-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}.pet-card-meta>span:first-child{color:#586174;font-size:.88rem}.pet-rabies-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:.76rem;font-weight:800}.pet-rabies-approved{color:#166534;background:#dcfce7}.pet-rabies-pending{color:#92400e;background:#fef3c7}.pet-rabies-alert{color:#b91c1c;background:#fee2e2}.pet-rabies-none{color:#64748b;background:#f1f5f9}.pet-card-pricing{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(143,133,180,.12)}.pet-card-pricing span{color:#687084;font-size:.88rem}.pet-card-pricing strong{color:#15192f}.pet-card-notes{margin:8px 0 0;color:#687084;font-size:.9rem;line-height:1.5}.pet-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.pet-action-select,.pet-action-selected,.pet-action-edit,.pet-action-book{border-radius:8px;padding:8px 14px;font-size:.86rem;font-weight:800}.pet-action-select{border:1px solid rgba(109,78,232,.2)!important;color:#5b45c4!important;background:transparent!important;box-shadow:none!important}.pet-action-selected{color:#fff!important;background:linear-gradient(135deg,#6d4ee8,#4338ca)!important;box-shadow:0 8px 18px #4f46e533!important}.pet-action-edit{border:1px solid rgba(143,133,180,.2)!important;color:#586174!important;background:transparent!important;box-shadow:none!important}.pet-action-book{color:#fff!important;background:linear-gradient(135deg,#0f9f9a,#0d9488)!important;box-shadow:0 8px 18px #0d948833!important}.pet-form{border:1px solid rgba(143,133,180,.2);border-radius:8px;padding:20px;margin-bottom:16px;background:#faf7fff5;box-shadow:0 14px 32px #4d428014}.pet-form h3{margin:0 0 14px;color:#15192f;font-size:1.2rem}.pet-form-fields{display:grid;gap:12px}.pet-form-fields label{display:grid;gap:6px;color:#15192f;font-weight:800;font-size:.9rem}.pet-form-fields input,.pet-form-fields textarea{width:100%;border:1px solid rgba(143,133,180,.28);border-radius:8px;padding:11px 14px;color:#15192f;background:#fff}.pet-form-fields textarea{min-height:80px;resize:vertical}.pet-form-actions{display:flex;gap:10px;margin-top:14px}.pet-form-actions button[type=submit]{background:linear-gradient(135deg,#6d4ee8,#4338ca);box-shadow:0 12px 24px #4f46e533}.pet-form-cancel{border:1px solid rgba(143,133,180,.22)!important;color:#586174!important;background:transparent!important;box-shadow:none!important}.profile-panel-card{border:1px solid rgba(143,133,180,.17);border-radius:8px;padding:clamp(16px,2.5vw,22px);background:#ffffffeb;box-shadow:0 16px 40px #4d428014;margin-bottom:14px}.client-booking-preview{display:flex;flex-direction:column;gap:18px}.booking-preview-section{display:flex;flex-direction:column;gap:8px}.booking-preview-empty{color:#7a6d9a;font-size:.9rem;margin:0}.booking-preview-list{display:flex;flex-direction:column;gap:8px}.booking-preview-item{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;border:1px solid rgba(143,133,180,.14);border-radius:8px;padding:12px;background:linear-gradient(135deg,#fff,#faf7ff)}.booking-preview-appointment{border-left:3px solid #14b8a6}.booking-preview-date{display:grid;gap:2px;text-align:center;min-width:90px}.booking-preview-date strong{color:#15192f;font-size:.88rem}.booking-preview-date span{color:#7a6d9a;font-size:.78rem}.booking-preview-detail{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.booking-preview-detail strong{color:#15192f}.booking-preview-detail>span{color:#687084;font-size:.88rem}.booking-status-pill{display:inline-flex;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:800}.booking-status-approved{color:#166534;background:#dcfce7}.booking-status-denied{color:#b91c1c;background:#fee2e2}.booking-status-pending{color:#92400e;background:#fef3c7}.vaccine-overview-list{display:flex;flex-direction:column;gap:8px;margin:8px 0}.vaccine-overview-row{display:flex;justify-content:space-between;align-items:center;gap:8px;border-radius:8px;padding:10px 12px;background:#faf7ff}.vaccine-overview-row strong{color:#15192f}.vaccine-mini-pill{display:inline-flex;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:800}.vax-approved{color:#166534;background:#dcfce7}.vax-pending{color:#92400e;background:#fef3c7}.vax-alert{color:#b91c1c;background:#fee2e2}.vax-none{color:#64748b;background:#f1f5f9}.vaccine-overview-note{margin:6px 0 0;color:#7a6d9a;font-size:.84rem;line-height:1.5}.groom-photos-placeholder{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.groom-photos-placeholder span{display:grid;place-items:center;min-height:100px;border-radius:8px;color:#5b45c4;background:linear-gradient(135deg,#ede9fe,#ccfbf1);font-weight:900;font-size:.88rem}.groom-photos-note{margin:4px 0 0;color:#7a6d9a;font-size:.84rem}@media(max-width:980px){.profile-content-grid{grid-template-columns:1fr}.profile-hero-top{flex-direction:column;text-align:center}.profile-avatar-orb{margin:0 auto}.profile-meta-row{justify-content:center}.profile-hero-actions{justify-content:center;width:100%}}@media(max-width:640px){.profile-hero-section{padding:16px}.profile-hero-info h1{font-size:1.4rem}.profile-hero-actions{flex-direction:column}.profile-hero-actions button{width:100%}.profile-section-header{flex-direction:column;align-items:flex-start;gap:8px}.add-dog-btn{width:100%}.pet-profile-card-top{flex-direction:column;align-items:center;text-align:center}.pet-card-meta,.pet-card-actions{justify-content:center}.booking-preview-item,.groom-photos-placeholder{grid-template-columns:1fr}}.admin-count-pill{display:inline-flex;align-items:center;border:1px solid rgba(139,92,246,.18);border-radius:999px;padding:8px 12px;color:#6d4ee8;background:#f3efff;font-weight:900}.client-owner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.client-owner-card{display:flex;gap:14px;align-items:flex-start;border:1px solid rgba(143,133,180,.16);border-radius:18px;padding:18px;background:#fff;box-shadow:0 18px 45px #4d428014}.client-owner-avatar,.pet-avatar,.profile-pet-avatar-large,.pet-preview-portrait{display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 32% 22%,rgba(255,255,255,.35),transparent 28%),linear-gradient(135deg,#8b5cf6,#14b8a6);font-weight:950}.client-owner-avatar{width:52px;height:52px;flex:0 0 auto;border-radius:999px}.client-owner-card h3{margin:4px 0 8px;color:#15192f}.client-owner-card p{margin:4px 0;color:#687084}.client-owner-card span{display:inline-flex;margin-top:10px;border-radius:999px;padding:6px 10px;color:#6d4ee8;background:#f3efff;font-weight:900}.pet-directory-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:18px}.pet-directory-main,.pet-directory-preview,.pet-table-card,.admin-pet-profile-hero,.profile-panel-card{border:1px solid rgba(143,133,180,.16);border-radius:22px;background:#fffffff0;box-shadow:0 20px 55px #4d428017}.pet-directory-main{padding:18px}.pet-directory-toolbar{display:flex;justify-content:flex-end;margin-bottom:18px}.pet-search-field{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;width:min(560px,100%);border:1px solid rgba(139,92,246,.32);border-radius:16px;padding:10px 12px;background:#fff}.pet-search-field span{color:#6d4ee8;font-size:.82rem;font-weight:900}.pet-search-field input{border:0;outline:0;color:#15192f;background:transparent}.pet-search-field button,.pet-directory-tabs button,.secondary-admin-button{border:1px solid rgba(139,92,246,.18);color:#6d4ee8;background:#fff;box-shadow:none}.pet-directory-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.pet-directory-tabs button{border-radius:999px;padding:10px 14px;font-weight:900}.pet-directory-tabs button.is-active,.pet-profile-tabs button.is-active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#8b5cf6,#6d4ee8)}.pet-table-card{overflow:hidden}.pet-table-header,.pet-table-row{display:grid;grid-template-columns:1.35fr 1fr 1fr .9fr .8fr;gap:12px;align-items:center;padding:14px 16px}.pet-table-header{color:#6d6286;background:#faf8ff;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.pet-table-row{width:100%;border:0;border-top:1px solid rgba(143,133,180,.14);color:#4f5870;background:transparent;box-shadow:none;text-align:left}.pet-table-row:hover,.pet-table-row.is-selected{background:linear-gradient(90deg,#8b5cf61f,#ffffffe6)}.pet-table-name{display:flex;gap:12px;align-items:center;min-width:0}.pet-avatar{width:44px;height:44px;flex:0 0 auto;border-radius:999px}.pet-avatar.has-photo,.pet-preview-portrait.has-photo{overflow:hidden;background:#f8fafc}.pet-avatar img,.pet-preview-portrait img{width:100%;height:100%;object-fit:cover;display:block}.pet-table-name strong{color:#15192f}.pet-directory-preview{display:grid;gap:12px;align-content:start;padding:22px;text-align:center}.pet-preview-portrait{width:132px;height:132px;margin:0 auto 8px;border:8px solid #f3efff;border-radius:999px;font-size:2rem}.pet-directory-preview h2{margin:0;color:#15192f}.pet-directory-preview p{margin:0;color:#687084}.pet-preview-facts{display:grid;gap:10px;margin:10px 0;text-align:left}.pet-preview-facts div,.profile-record-list div,.profile-panel-card dl div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid rgba(143,133,180,.13);padding-top:10px}.pet-preview-facts dt,.profile-record-list dt,.profile-panel-card dt{color:#6d6286;font-weight:900}.pet-preview-facts dd,.profile-record-list dd,.profile-panel-card dd{margin:0;color:#15192f;text-align:right}.primary-profile-button,.profile-link-button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:14px;padding:12px 16px;color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d4ee8);box-shadow:0 16px 34px #6d4ee83d;font-weight:950;text-decoration:none}.admin-pet-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;margin-bottom:18px;padding:clamp(18px,3vw,28px)}.profile-pet-avatar-large{width:clamp(108px,15vw,170px);height:clamp(108px,15vw,170px);border:10px solid #f3efff;border-radius:999px;font-size:clamp(2rem,5vw,4rem)}.profile-pet-avatar-upload,.profile-photo-upload-target{position:relative;cursor:pointer}.profile-pet-avatar-upload input,.profile-photo-upload-target input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.profile-pet-avatar-image,.profile-photo-preview{display:grid;place-items:center;width:100%;height:100%;overflow:hidden;border-radius:inherit}.profile-avatar-upload-label,.profile-photo-upload-copy{position:absolute;left:50%;bottom:10px;border-radius:999px;padding:6px 10px;color:#fff;background:#11162dc7;font-size:.78rem;font-weight:900;transform:translate(-50%);opacity:0;transition:opacity .2s ease}.profile-pet-avatar-upload:hover .profile-avatar-upload-label,.profile-pet-avatar-upload:focus-within .profile-avatar-upload-label,.profile-pet-avatar-upload.is-uploading .profile-avatar-upload-label,.profile-photo-upload-target:hover .profile-photo-upload-copy,.profile-photo-upload-target:focus-within .profile-photo-upload-copy,.profile-photo-upload-target.is-uploading .profile-photo-upload-copy{opacity:1}.profile-pet-heading h2{margin:0 0 8px;color:#15192f;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.055em}.profile-pet-heading p{margin:0 0 14px;color:#687084}.profile-pet-badges,.profile-pet-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.profile-pet-badges>span:not(.vaccine-badge){border-radius:999px;padding:8px 10px;color:#6d4ee8;background:#f3efff;font-weight:900}.profile-pet-actions{justify-content:flex-end}.pet-profile-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.pet-profile-tabs button{border:1px solid rgba(139,92,246,.18);border-radius:999px;padding:10px 16px;color:#6d4ee8;background:#fff;box-shadow:none;font-weight:950}.pet-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-panel-card{padding:18px}.pet-photo-manager-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;margin-bottom:18px;border:1px solid rgba(143,133,180,.16);border-radius:22px;padding:clamp(18px,3vw,28px);background:#fffffff0;box-shadow:0 20px 55px #4d428017}.profile-photo-upload-target{display:grid;place-items:center;width:clamp(118px,16vw,180px);height:clamp(118px,16vw,180px);border:10px solid #f3efff;border-radius:999px;color:#fff;background:radial-gradient(circle at 35% 30%,#94a3ff,#1fb5c4);font-size:clamp(2rem,5vw,4rem);font-weight:950}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.pet-photo-manager-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.photo-library-grid,.client-photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.pet-card-shared-photos{margin-top:16px}.pet-card-shared-photos h4{margin:0 0 10px;color:#15192f}.client-rabies-upload,.vaccine-review-form{display:grid;gap:12px;margin-top:16px;border:1px solid rgba(143,133,180,.16);border-radius:12px;padding:14px;background:#f8fafc}.client-rabies-upload h4{margin:0;color:#15192f}.client-rabies-upload input[type=file],.vaccine-review-form input[type=file]{background:#fff}.vaccine-secure-note{margin:0 0 14px;border-radius:10px;padding:10px 12px;color:#475569;background:#eef6ff;font-size:.92rem}.availability-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.availability-editor-card{display:flex;flex-direction:column;gap:14px}.availability-editor-card h3{margin:0;color:var(--admin-text-main)}.availability-form{display:grid;gap:12px}.availability-list{display:grid;gap:10px}.availability-row-card{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--admin-border);border-radius:10px;padding:10px 12px;color:var(--admin-text-main);background:#f8fafc}.availability-simple-shell{display:grid;grid-template-columns:minmax(320px,1.15fr) minmax(260px,.85fr) minmax(260px,.85fr);gap:16px;align-items:start}.schedule-setup-card{display:grid;gap:16px}.weekly-card{grid-row:span 2}.client-phone-preview{grid-column:span 2}.card-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.card-title-row h3,.schedule-setup-card h3{margin:0;color:var(--admin-text-main);font-size:clamp(1.1rem,2vw,1.35rem)}.soft-status-pill,.available-pill,.closed-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:900}.soft-status-pill,.available-pill{color:#047857;background:#d1fae5}.closed-pill{color:#7f1d1d;background:#fee2e2}.plain-schedule-form{display:grid;grid-template-columns:1.1fr .8fr .8fr auto;gap:10px;align-items:end}.plain-schedule-form label{display:grid;gap:6px;color:#625a7c;font-size:.82rem;font-weight:800}.weekly-hours-list,.service-duration-list{display:grid;gap:8px}.weekly-hours-row{display:grid;grid-template-columns:90px minmax(120px,1fr) auto auto;gap:10px;align-items:center;min-height:46px;border:1px solid rgba(124,92,255,.12);border-radius:14px;padding:10px 12px;background:linear-gradient(135deg,#fff,#fbf8ff)}.weekly-hours-row strong{color:#17152d}.weekly-hours-row span{color:#625a7c;font-size:.9rem}.tiny-remove-button{min-height:28px;border:0;border-radius:999px;padding:0 10px;color:#6d4ee8;background:#f1ecff;font-size:.72rem;font-weight:900}.service-duration-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:10px;align-items:center;border:1px solid rgba(124,92,255,.14);border-radius:18px;padding:10px;background:#fff}.service-duration-row.is-selected{border-color:#14b8a68c;box-shadow:0 0 0 3px #14b8a61a}.service-duration-row>button{display:grid;gap:3px;min-height:auto;border:0;padding:0;text-align:left;background:transparent}.service-duration-row strong{color:#17152d}.service-duration-row span{color:#6f6688;font-size:.84rem}.phone-preview-frame{max-width:360px;border:1px solid rgba(20,184,166,.22);border-radius:28px;padding:16px;background:linear-gradient(180deg,#fffffff5,#f0fdfaeb),radial-gradient(circle at 15% 0%,rgba(20,184,166,.16),transparent 32%);box-shadow:0 18px 42px #1418361f}.phone-step-row,.phone-date-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.phone-step-row span{display:grid;place-items:center;min-height:34px;border-radius:999px;color:#776f8e;background:#f4f1fb;font-size:.7rem;font-weight:900}.phone-step-row .is-done{color:#fff;background:#0f766e}.phone-preview-frame>strong{display:block;margin:12px 0 8px;color:#17152d;font-size:.84rem}.phone-date-row span{display:grid;place-items:center;min-height:56px;border:1px solid #d8f3ef;border-radius:14px;color:#17152d;background:#fff;font-weight:900}.phone-date-row small{color:#7b738f;font-size:.66rem;text-transform:uppercase}.phone-date-row .is-active{color:#fff;background:#0f766e}.phone-date-row .is-active small{color:#ffffffc7}.phone-service-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;border:1px solid #d8f3ef;border-radius:18px;padding:12px;background:#fff}.dog-thumb{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#fdecc8;color:transparent;position:relative}.dog-thumb:after{content:"dog";color:#8b5e34;font-size:1.6rem;line-height:1}.phone-service-card b,.phone-service-card small{display:block}.phone-service-card small{color:#6f6688}.phone-time-list{display:grid;gap:8px}.phone-time-list button{min-height:36px;border:1px solid #99f6e4;border-radius:10px;color:#0f766e;background:#fff;font-weight:900}.admin-services-shell{display:grid;grid-template-columns:minmax(260px,.45fr) minmax(0,1fr);gap:16px;align-items:start}.admin-services-list,.admin-services-editor,.admin-service-form{display:grid;gap:14px}.admin-service-list-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--admin-border);border-radius:16px;padding:12px;text-align:left;color:var(--admin-text-main);background:#fff}.admin-service-list-item.is-selected{border-color:#7c5cff73;background:#f6f2ff}.admin-service-list-item span,.booking-addon-row span{display:grid;gap:3px}.admin-service-list-item small,.booking-addon-row small,.booking-addon-group small{color:var(--admin-text-muted)}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.checkbox-row{display:flex;gap:10px;align-items:center}.checkbox-row input{width:auto}.booking-addons-card{display:grid;gap:14px;border:1px solid rgba(20,184,166,.16);border-radius:18px;padding:16px;background:#f0fdfa}.booking-addons-card>div:first-child{display:grid;gap:4px}.booking-addons-card span,.booking-addons-card small{color:#4b5563}.booking-addons-list{display:grid;gap:12px}.booking-addon-group,.booking-addon-row{border:1px solid rgba(20,184,166,.18);border-radius:14px;padding:12px;background:#fff}.booking-addon-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.request-addon-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.request-addon-list strong{width:100%}.request-addon-list span{border-radius:999px;padding:5px 9px;color:#0f766e;background:#ccfbf1;font-size:.82rem;font-weight:800}.profile-panel-card h3{margin:6px 0 12px;color:#15192f}.profile-panel-card p{color:#687084;line-height:1.55}.profile-panel-card dl,.profile-record-list{display:grid;gap:10px;margin:0}.groom-photo-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}.groom-photo-strip span,.groom-photo-strip a{display:grid;place-items:center;min-height:130px;border-radius:16px;color:#6d4ee8;background:linear-gradient(135deg,#f3efff,#ccfbf1);font-weight:950;text-decoration:none}.profile-pet-list{display:grid;gap:10px}.profile-pet-list span{display:grid;gap:3px;border-radius:14px;padding:12px;color:#687084;background:#faf8ff}@media(max-width:1100px){.pet-directory-shell,.admin-pet-profile-hero,.pet-profile-grid,.pet-photo-manager-grid,.availability-admin-grid,.availability-simple-shell{grid-template-columns:1fr}.weekly-card,.client-phone-preview{grid-column:auto;grid-row:auto}.profile-pet-actions{justify-content:flex-start}}@media(max-width:760px){.pet-table-header{display:none}.pet-table-row{grid-template-columns:1fr;gap:8px;border-radius:16px;margin:8px;border:1px solid rgba(143,133,180,.14);background:#fff}.pet-directory-main,.pet-directory-preview,.admin-pet-profile-hero,.pet-photo-manager-hero,.profile-panel-card{border-radius:18px;padding:14px}.pet-photo-manager-hero{grid-template-columns:1fr}.pet-search-field{grid-template-columns:1fr auto}.pet-search-field span{display:none}.profile-pet-actions,.profile-pet-actions button,.primary-profile-button,.secondary-admin-button{width:100%}.availability-row-card{align-items:stretch;flex-direction:column}.plain-schedule-form,.weekly-hours-row,.service-duration-row,.admin-services-shell,.grid-three{grid-template-columns:1fr}.card-title-row{flex-direction:column}.phone-preview-frame{max-width:none}.phone-step-row{grid-template-columns:repeat(2,1fr)}}.happy-dogs-section{margin-top:3rem}.happy-dogs-heading{margin-bottom:1.5rem;text-align:center}.happy-dogs-heading h2{margin:.25rem 0}.happy-dogs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,360px));gap:1.5rem;justify-content:center;width:100%}.happy-dogs-grid img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:18px;display:block}@media(max-width:900px){.happy-dogs-grid{grid-template-columns:repeat(auto-fit,minmax(220px,320px))}}@media(max-width:560px){.happy-dogs-grid{grid-template-columns:minmax(220px,320px)}}.approval-settings>p{max-width:760px;line-height:1.6}.approval-switch{display:flex;flex-direction:row;align-items:center;gap:12px;font-weight:600}.approval-switch input{width:22px;min-height:22px;accent-color:#306b55}.approval-filter{display:flex;align-items:center;gap:16px}.approval-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 0;border-top:1px solid #e2e7e1}.approval-row span,.approval-row small{display:block;margin-top:6px;color:#697b73;overflow-wrap:anywhere}.approval-actions{display:flex;gap:8px;flex-wrap:wrap}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));overflow-x:auto;min-height:380px}.admin-dashboard-workspace.wide-calendar{grid-template-columns:minmax(0,1fr)}.wide-calendar .admin-right-sidebar{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.week-day{padding:8px;border-right:1px solid #e2e7e1}.week-day.selected{background:#f4f8f0}.admin-layout .week-day-heading{background:transparent;color:#42614d;width:100%;font-size:12px}.week-day-heading strong{display:block;font-size:22px;margin-top:6px}.week-day>p{color:#80917f;font-size:12px;text-align:center}.admin-layout .week-appointment{background:#e8f2e6;color:#2d583b;width:100%;text-align:left;margin-top:10px}.week-appointment>*{display:block;margin-bottom:5px;overflow-wrap:anywhere;font-size:12px}.client-calendar-page>.card{margin-top:24px}.client-calendar-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0}.client-calendar-controls label{margin:0}.calendar-view-options{display:flex;flex-wrap:wrap;gap:6px}.calendar-view-options button{background:#f0f4ee;color:#38634c}.calendar-view-options button[aria-pressed=true]{background:#306b55;color:#fff}.client-slot-days{display:grid;gap:12px}.client-slot-days.view-week,.client-slot-days.view-month{grid-template-columns:repeat(7,minmax(130px,1fr));overflow-x:auto}.client-weekday{font-size:12px;color:#71816e;text-align:center}.client-slot-day{padding:16px;border:1px solid #e2e7e1;border-radius:12px;background:#fff}.client-slot-day h3{font-size:14px;margin-top:0}.client-slot-day p{font-size:12px;color:#71816e}.slot-buttons{display:flex;flex-wrap:wrap;gap:6px;max-height:240px;overflow-y:auto}.slot-buttons button{background:#edf4e8;color:#315839;font-size:12px;border:1px solid #d9e5d1}@media(max-width:640px){.approval-row{align-items:flex-start;flex-direction:column}.client-calendar-page{padding:12px}}.admin-layout,.admin-login-page{color-scheme:light;--admin-bg: #f6f7f4;--admin-sidebar-bg: #fff;--admin-card-bg: #fff;--admin-border: #e2e7e1;--admin-text-main: #243c35;--admin-text-muted: #697b73;--admin-primary: #306b55;--admin-primary-hover: #245540;--admin-primary-light: #edf4ee;--admin-bg-dark: #f0f4ee;--admin-shadow: 0 3px 12px #243c3505;color:var(--admin-text-main);background:var(--admin-bg)}body:has(.admin-layout),body:has(.admin-login-page){background:#f6f7f4;color:#243c35}.admin-layout button,.admin-login-page button{background:var(--admin-primary);border-radius:9px;box-shadow:none}.admin-layout button:hover,.admin-login-page button:hover{filter:brightness(.97)}.admin-layout :is(input,select,textarea),.admin-login-page input{background:#fff;color:#243c35;border:1px solid #d5ded5;border-radius:9px;min-height:44px}.admin-layout :is(button,a,input,select,textarea):focus-visible,.admin-login-page :is(button,a,input):focus-visible{outline:3px solid #89ad96;outline-offset:3px}.admin-sidebar{width:232px}.admin-layout .sidebar-header{padding:32px 24px}.admin-layout .logo-icon{display:grid;place-items:center;width:40px;height:44px;background:#e9f1e8;color:#306b55;border-radius:12px}.admin-layout .logo-icon svg{width:25px;height:25px}.admin-layout .logo-text strong{font-family:Georgia,serif;font-size:23px;font-weight:500}.admin-layout .logo-text span{margin-top:6px;font-size:10px;letter-spacing:.18em}.sidebar-section-label{padding:12px 12px 6px;margin:0;color:#7b8881;font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:700}.admin-layout .sidebar-nav-item{background:transparent;font-size:14px;padding:13px 14px;font-weight:500;color:#607269}.admin-layout .sidebar-nav-item.is-active{background:#eaf2e9;color:#285c45;font-weight:700}.admin-layout .sidebar-nav-item:hover{background:#f1f5ef}.admin-layout .nav-icon{display:flex}.admin-layout .sidebar-footer{padding:18px}.admin-layout .sidebar-profile{background:#f7f8f4;border:0}.admin-layout .sidebar-logout{background:#fff;color:#64786c;font-size:12px}.admin-main-wrapper{margin-left:232px;min-width:0}.admin-layout .admin-topbar{display:flex;height:68px;padding:0 36px;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-title{font-size:12px;font-weight:600}.topbar-title>span{font-weight:400;color:#859187;margin-right:12px}.admin-layout .mobile-menu-button{display:none;background:transparent}.admin-layout .mobile-close-button{background:transparent;color:#526b56;padding:6px}.admin-public-link{color:#456651;text-decoration:none;font-size:12px;padding:9px 12px;border:1px solid #dce4da;border-radius:8px}.admin-public-link span{margin-left:14px}.admin-main-content{padding:34px 36px;max-width:1640px}.admin-content-header{margin-bottom:26px;gap:16px}.admin-content-title-area h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,3vw,38px);font-weight:500;letter-spacing:-.04em;margin-bottom:8px}.admin-content-subtitle{font-size:13px}.admin-layout .admin-view-toggle{padding:4px;background:#e9eee7;border:1px solid #e0e6dd;border-radius:10px;gap:3px}.admin-layout .admin-view-toggle button{background:transparent;color:#647568;border:0;padding:8px 17px;font-size:12px}.admin-layout .admin-view-toggle button.is-active{background:#fff;color:#285b42;box-shadow:0 1px 4px #1e352314}.admin-review-rail{grid-template-columns:1fr 1fr 2fr;gap:16px;margin-bottom:24px}.admin-layout .admin-stat-card{border-radius:14px;padding:22px;background:#fff;position:relative}.admin-layout .admin-stat-card:after{content:"";position:absolute;right:22px;top:25px;width:9px;height:9px;border-radius:50%;background:#89ac85;box-shadow:0 0 0 6px #f0f5ed}.admin-layout .admin-stat-card:nth-child(2):after{background:#c9a264;box-shadow:0 0 0 6px #faf5e9}.admin-layout .admin-stat-card .eyebrow{font-size:10px;letter-spacing:.12em}.admin-layout .admin-stat-card strong{font-size:36px;line-height:1.3;font-weight:500;color:#2b4f3b}.admin-layout .admin-stat-card span{font-size:12px;color:#748074}.admin-layout .admin-card{border-radius:14px;padding:22px}.admin-layout .admin-card h2{font-size:16px;font-weight:600;color:#304e3a}.admin-layout .eyebrow{color:#7a897b;font-size:10px;letter-spacing:.12em}.admin-layout .admin-review-card{background:#f0f4e9;border-color:#e0e7d6}.admin-layout .review-clear-copy{font-size:13px;line-height:1.7;color:#6a7a60}.admin-layout .admin-count-pill{background:#fff;color:#426b45}.admin-dashboard-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px}.admin-schedule-column,.admin-right-sidebar{min-width:0}.admin-layout .schedule-card{padding:0;overflow:hidden}.admin-layout .day-schedule-view{border:0}.admin-layout .day-schedule-toolbar{background:#fff;padding:19px 22px}.admin-layout .day-schedule-title{font-size:13px;font-weight:600}.admin-layout .toolbar-button{color:#45644f;background:#fff;border:1px solid #dde5da}.admin-layout .day-schedule-container{height:570px}.admin-layout .time-column{background:#fafbf8}.admin-layout .time-slot-label span{font-size:11px;color:#81907f;font-weight:400}.admin-layout .groomer-column-header{background:#f9fbf6;color:#5b7456;font-size:12px}.admin-layout .current-time-line,.admin-layout .current-time-dot{background:#c77e62}.admin-layout .calendar-shell,.admin-layout .calendar-day,.admin-layout .calendar-day-details,.admin-layout .appointment-detail-panel{background:#fff;color:#243c35;border-color:#e2e7e1}.admin-layout .calendar-day.is-selected{background:#eaf2e7}.admin-layout .empty-state{background:#f8faf5;color:#75846e;border:1px dashed #dce4d7;padding:24px 16px;border-radius:10px;font-size:13px}.admin-login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.admin-login-story{margin:24px;border-radius:24px;background:#e8eddf;padding:clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;min-height:620px;position:relative;overflow:hidden}.admin-login-story:after{content:"";width:340px;height:340px;border:1px solid #cbd5bb;border-radius:50%;position:absolute;right:-140px;bottom:-120px;box-shadow:0 0 0 36px #e8eddf,0 0 0 37px #d4ddc5;pointer-events:none}.login-brand{display:flex;gap:12px;align-items:center;font-family:Georgia,serif;font-size:22px}.admin-login-story h1{font-family:Georgia,serif;font-size:clamp(42px,5vw,74px);font-weight:400;letter-spacing:-.05em;line-height:1.1;margin:24px 0}.admin-login-story p:not(.eyebrow){max-width:290px;font-size:15px;line-height:1.8;color:#6c7e63}.admin-login-story .eyebrow{font-size:10px;color:#5c7650;letter-spacing:.16em}.login-story-footer{font-size:12px;color:#77876b}.admin-login-form-area{display:grid;place-items:center;padding:40px;background:#fff}.admin-login-form-area .login-card{width:100%;max-width:360px}.admin-login-form-area h2{font-family:Georgia,serif;font-size:36px;font-weight:400;margin:12px 0;letter-spacing:-.03em}.admin-login-form-area .eyebrow{font-size:10px;letter-spacing:.13em;color:#6c8266}.login-intro{color:#7a877d;font-size:13px;line-height:1.6;margin-bottom:28px}.admin-login-page label{font-size:12px;color:#465c4a;font-weight:600;margin-bottom:18px;gap:9px}.admin-login-page input{padding:13px}.admin-login-page button{min-height:46px}.admin-login-page .login-help{color:#7b877b;text-align:center;margin-top:22px;font-size:11px}.login-back-link{display:block;text-align:center;margin-top:36px;font-size:12px;color:#56744b;text-decoration:none}@media(max-width:1200px){.admin-dashboard-workspace{grid-template-columns:minmax(0,1fr) 270px}.admin-main-content{padding:28px 24px}}@media(max-width:1024px){.admin-main-wrapper{margin-left:0}.admin-layout .mobile-menu-button{display:flex}.admin-layout .admin-topbar{padding:0 20px}.admin-content-header{flex-direction:row;align-items:center}}@media(max-width:800px){.admin-dashboard-workspace{grid-template-columns:1fr}.admin-review-rail{grid-template-columns:1fr 1fr}.admin-review-card{grid-column:1 / -1}.admin-login-page{grid-template-columns:1fr}.admin-login-story{min-height:0;margin:12px;padding:26px;gap:24px}.admin-login-story h1{font-size:38px;margin:10px 0}.admin-login-story p:not(.eyebrow),.login-story-footer{display:none}.admin-login-form-area{padding:32px 24px}}@media(max-width:480px){.admin-main-content{padding:24px 14px}.admin-content-header{align-items:flex-start;flex-direction:column}.admin-layout .admin-card{padding:16px}.admin-layout .schedule-card{padding:0}.admin-layout .topbar-title>span{display:none}.admin-public-link{font-size:11px}.admin-layout .schedule-grid,.admin-layout .groomer-column{min-width:0}.admin-layout .time-column{flex-basis:52px}}.availability-calendar{--ac-ink: #24384b;--ac-muted: #64788a;--ac-accent: #365f84;--ac-selected: #e5eef6;--ac-border: #dce4ec;--ac-blocked: #f9eee8;color:var(--ac-ink);margin-bottom:28px}.availability-calendar .ac-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.availability-calendar .ac-kicker{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--ac-accent)}.availability-calendar h2{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:8px 0}.availability-calendar p{font-size:13px;line-height:1.6;color:var(--ac-muted)}.availability-calendar .ac-badge{border:1px solid var(--ac-border);border-radius:20px;padding:9px 14px;font-size:11px;white-space:nowrap}.availability-calendar .ac-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;background:#fff;border:1px solid var(--ac-border);border-radius:18px;overflow:hidden}.availability-calendar .ac-month{padding:24px;min-width:0}.availability-calendar .ac-toolbar,.availability-calendar .ac-selection{display:flex;align-items:center;justify-content:space-between;gap:10px}.availability-calendar h3{font-size:16px;margin:0}.availability-calendar .ac-toolbar{margin-bottom:24px}.availability-calendar .ac-toolbar>div{display:flex;gap:6px}.availability-calendar button{min-height:40px;background:#fff;color:var(--ac-accent);border:1px solid var(--ac-border);box-shadow:none;font-size:12px;border-radius:8px;cursor:pointer}.availability-calendar button:disabled{opacity:.55;cursor:wait}.availability-calendar button:focus-visible{outline:3px solid #739bbb;outline-offset:2px}.availability-calendar .ac-weekdays,.availability-calendar .ac-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.availability-calendar .ac-weekdays{text-align:center;padding-bottom:12px;font-size:11px;font-weight:600;color:var(--ac-muted)}.availability-calendar .ac-grid{gap:5px}.availability-calendar .ac-day{min-height:96px;padding:10px 7px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;border-radius:9px}.availability-calendar .ac-number{font-size:16px;font-weight:600;padding:2px}.availability-calendar .ac-day-status{font-size:10px;line-height:1.4;color:var(--ac-muted)}.availability-calendar .ac-outside .ac-number{color:#8999a9}.availability-calendar .ac-outside{background:#f8fafc}.availability-calendar .ac-blocked{background:var(--ac-blocked);border-color:#e9d5c9}.availability-calendar .ac-blocked .ac-day-status{color:#965a3c}.availability-calendar .ac-partial{color:#946520}.availability-calendar .ac-selected{background:var(--ac-selected);border:2px solid var(--ac-accent);padding:9px 6px}.availability-calendar [aria-current=date] .ac-number{background:var(--ac-accent);color:#fff;border-radius:50%;min-width:26px;text-align:center}.availability-calendar .ac-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;font-size:11px;color:var(--ac-muted)}.availability-calendar .ac-editor{padding:24px;background:#f6f9fc;border-left:1px solid var(--ac-border)}.availability-calendar .ac-selected-dates{max-height:100px;overflow:auto;margin:12px 0 24px}.availability-calendar fieldset{padding:0;margin:0;border:0;min-width:0}.availability-calendar legend{font-size:12px;font-weight:700;margin-bottom:12px}.availability-calendar .ac-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.availability-calendar .ac-mode label{display:flex;flex-direction:row;align-items:center;font-size:12px;gap:6px;margin:0}.availability-calendar input[type=radio]{min-height:0;width:16px;height:16px;padding:0;accent-color:var(--ac-accent)}.availability-calendar label{font-size:12px;gap:8px}.availability-calendar .ac-optional{color:var(--ac-muted);font-weight:400}.availability-calendar input:not([type=radio]){width:100%;min-width:0;font-size:13px}.availability-calendar .ac-time-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.availability-calendar .ac-save{width:100%;background:var(--ac-accent);color:#fff;padding:13px;margin-top:8px}.availability-calendar .ac-note{border-top:1px solid var(--ac-border);padding-top:16px;margin-top:22px;font-size:12px}.availability-calendar .ac-error{color:#a32f35}.availability-calendar .ac-success{color:#287044}.availability-calendar .ac-current{margin-top:18px;padding:22px;border:1px solid var(--ac-border);border-radius:14px;background:#fff}.availability-calendar .ac-block-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ac-border)}.availability-calendar .ac-block-row:last-child{border:0;padding-bottom:0}.availability-calendar .ac-block-row strong{font-size:13px}.availability-calendar .ac-block-row p{margin:5px 0 0;overflow-wrap:anywhere}@media(max-width:1150px){.availability-calendar .ac-workspace{grid-template-columns:minmax(0,1fr)}.availability-calendar .ac-editor{border-left:0;border-top:1px solid var(--ac-border)}}@media(max-width:600px){.availability-calendar .ac-intro{align-items:flex-start;flex-direction:column;gap:6px}.availability-calendar .ac-month{padding:12px}.availability-calendar .ac-day{min-height:78px;padding:6px 3px}.availability-calendar .ac-selected{padding:5px 2px}.availability-calendar .ac-day-status{font-size:9px}.availability-calendar .ac-grid{gap:3px}.availability-calendar .ac-toolbar{gap:5px}.availability-calendar .ac-toolbar h3{font-size:14px}.availability-calendar .ac-toolbar button{padding:8px}.availability-calendar .ac-block-row{align-items:flex-start;flex-direction:column}}.availability-calendar .ac-month-jump{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;font-size:.9rem}.availability-calendar .ac-month-jump input{width:auto;padding:8px;border:1px solid #bfd4ca;border-radius:8px;background:#fff;color:#203b36}.availability-calendar .ac-appointment-count{color:#174e82;font-size:.7rem;font-weight:700}
