:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Outfit", sans-serif;--bg-app: #f4f6fc;--bg-sidebar: #ffffff;--bg-card: #ffffff;--bg-card-hover: #fffafc;--primary: #e88aab;--primary-hover: #d4719a;--primary-light: #fdeef4;--text-main: #1f2937;--text-muted: #6b7280;--text-light: #9ca3af;--border-color: #e5e7eb;--border-focus: #f6bfd3;--success: #10b981;--success-light: #ecfdf5;--warning: #f59e0b;--danger: #ef4444;--danger-light: #fef2f2;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--transition-fast: .15s ease;--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--gradient-app: linear-gradient(145deg, #fdeef4 0%, #f8fafc 40%, #fff1f6 100%);--gradient-primary: linear-gradient(135deg, #f4a6c2 0%, #e88aab 50%, #e07aa0 100%);--gradient-sidebar: linear-gradient(180deg, #ffffff 0%, #fffafc 100%);--gradient-card-shine: linear-gradient(135deg, rgba(255,255,255,.9) 0%, rgba(238,242,255,.4) 100%)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background:var(--gradient-app);background-attachment:fixed;color:var(--text-main);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,.brand h1,.calendar-title{font-family:var(--font-display);font-weight:700}.app-container{display:flex;min-height:100vh}.sidebar{width:280px;background:var(--gradient-sidebar);border-right:1px solid var(--border-color);padding:32px 24px;display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:sticky;top:0;z-index:10;box-shadow:4px 0 24px #e88aab0a}.brand{display:flex;align-items:center;gap:16px;margin-bottom:40px}.brand-logo{width:40px;height:40px;flex-shrink:0;border-radius:10px;animation:float 4s ease-in-out infinite}.brand-info h1{font-size:20px;line-height:1.2;color:var(--text-main)}.brand-info span{font-size:12px;color:var(--text-muted);font-weight:500;letter-spacing:.5px}.nav-menu{display:flex;flex-direction:column;gap:8px;margin-bottom:auto}.nav-btn{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;background:none;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;color:var(--text-muted);text-align:left;cursor:pointer;transition:var(--transition-normal);position:relative;overflow:hidden}.nav-btn:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--gradient-primary);border-radius:0 4px 4px 0;transition:height .2s ease}.nav-btn i,.nav-btn svg{width:20px;height:20px;stroke-width:2.2;flex-shrink:0}.nav-btn:hover{background-color:var(--primary-light);color:var(--primary);transform:translate(2px)}.nav-btn.active{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 20px #e88aab59}.nav-btn.active:before{height:0}.sidebar-pets-section{background:var(--primary-light);border-radius:var(--radius-lg);padding:18px;margin-top:24px}.sidebar-pets-section h3{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--primary);margin-bottom:12px;font-weight:800}.pets-mini-list{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.pet-mini-item{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--text-main);padding:8px 10px;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.pet-mini-item:hover,.pet-mini-item:focus-visible{background-color:#e88aab1f;outline:none}.pet-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 6px #00000026}.sidebar-footer{margin-top:24px;text-align:center;border-top:1px solid var(--border-color);padding-top:16px}.sidebar-footer .version{display:block;margin-top:10px;font-size:11.5px;color:var(--text-light);font-weight:600;letter-spacing:.5px}.main-content{flex-grow:1;padding:40px;max-width:1200px;margin:0 auto;width:calc(100% - 280px)}.mobile-navbar,.sidebar-backdrop,.sidebar-close-btn{display:none}.mobile-navbar{align-items:center;justify-content:space-between;gap:12px;width:100%}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-main);cursor:pointer;transition:var(--transition-normal);box-shadow:var(--shadow-sm)}.mobile-menu-btn:hover,.mobile-menu-btn:focus-visible{border-color:var(--primary);color:var(--primary);background:var(--primary-light);outline:none}.mobile-menu-btn.is-open{background:var(--gradient-primary);border-color:transparent;color:#fff;box-shadow:0 4px 14px #e88aab59}.mobile-menu-icon{display:flex;align-items:center;justify-content:center}.mobile-menu-icon i,.mobile-menu-icon svg{width:22px;height:22px}.mobile-navbar-brand{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.mobile-navbar-logo{width:32px;height:32px;border-radius:8px;flex-shrink:0}.mobile-navbar-title{display:flex;flex-direction:column;min-width:0}.mobile-navbar-name{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-main);line-height:1.2}.mobile-navbar-subtitle{font-size:11px;font-weight:600;color:var(--primary);letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-navbar-action{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:none;border-radius:var(--radius-md);background:var(--gradient-primary);color:#fff;cursor:pointer;transition:var(--transition-normal);box-shadow:0 4px 14px #e88aab59}.mobile-navbar-action:hover,.mobile-navbar-action:focus-visible{transform:translateY(-1px);box-shadow:0 6px 18px #e88aab73;outline:none}.mobile-navbar-action i,.mobile-navbar-action svg{width:20px;height:20px}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0f172a6b;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.sidebar-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}.sidebar-close-btn{position:absolute;top:20px;right:16px;z-index:2;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:var(--transition-fast)}.sidebar-close-btn:hover,.sidebar-close-btn:focus-visible{color:var(--danger);border-color:#ef44444d;background:var(--danger-light);outline:none}.sidebar-close-btn i,.sidebar-close-btn svg{width:20px;height:20px}body.mobile-nav-open{overflow:hidden}.top-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;gap:24px}.header-search{display:flex;align-items:center;gap:12px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:10px 20px;width:380px;box-shadow:var(--shadow-sm);transition:var(--transition-fast)}.header-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.header-search i{color:var(--text-muted);width:18px}.header-search input{border:none;background:none;outline:none;width:100%;font-size:14px;color:var(--text-main);font-weight:500}.header-actions{display:flex;align-items:center;gap:16px}.tab-content{display:none;animation:fadeIn .4s ease forwards}.tab-content.active{display:block}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:32px}.stat-card{background:var(--gradient-card-shine);background-color:var(--bg-card);border-radius:var(--radius-lg);padding:24px;display:flex;align-items:center;gap:20px;box-shadow:var(--shadow-md);transition:var(--transition-normal);border:1px solid var(--border-color);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:0;right:0;width:80px;height:80px;background:radial-gradient(circle,rgba(232,138,171,.06) 0%,transparent 70%);pointer-events:none}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.stat-icon i{width:24px;height:24px;stroke-width:2.2}.stat-icon.income{background-color:var(--primary-light);color:var(--primary)}.stat-icon.income-june{background-color:#ecfdf5;color:#10b981}.stat-icon.pets-count{background-color:#fef2f2;color:#ef4444}.stat-icon.bookings-count{background-color:#fffbeb;color:#f59e0b}.stat-info h3{font-size:13px;color:var(--text-muted);font-weight:600;margin-bottom:4px}.stat-value{font-size:24px;font-weight:800;font-family:var(--font-display);color:var(--text-main);line-height:1.1}.stat-label{font-size:11px;color:var(--text-light);font-weight:500}.dashboard-split{display:grid;grid-template-columns:1.4fr 1fr;gap:32px}.card{background-color:var(--bg-card);border-radius:var(--radius-xl);padding:28px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);position:relative}.card-header h2,.section-title{font-size:18px;color:var(--text-main);display:flex;align-items:center;gap:10px}.section-title-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.section-title-icon i,.section-title-icon svg{width:18px;height:18px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius-md);font-weight:700;font-size:14px;padding:12px 20px;border:none;cursor:pointer;transition:var(--transition-normal);font-family:var(--font-sans);line-height:1;white-space:nowrap}.btn i,.btn svg{width:16px;height:16px;stroke-width:2.2;flex-shrink:0}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 14px #e88aab59}.btn-primary:hover{box-shadow:0 8px 22px #e88aab73;transform:translateY(-2px)}.btn-secondary{background-color:#fff;color:var(--primary);border:1px solid rgba(232,138,171,.2);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background-color:var(--primary-light);border-color:var(--primary);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;box-shadow:0 4px 12px #ef44444d}.btn-danger:hover{box-shadow:0 6px 18px #ef444466;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid transparent}.btn-ghost:hover{background:#f3f4f6;color:var(--text-main)}.btn-outline{background:transparent;color:var(--primary);border:1.5px solid rgba(232,138,171,.35)}.btn-outline:hover{background:var(--primary-light)}.btn-sm{padding:9px 16px;font-size:12px;border-radius:var(--radius-sm);gap:6px}.btn-sm i,.btn-sm svg{width:14px;height:14px}.btn-xs{padding:7px 12px;font-size:11px;border-radius:var(--radius-sm);gap:5px}.btn-xs i,.btn-xs svg{width:13px;height:13px}.btn-block{width:100%}.icon-btn{background:#fff;border:1px solid var(--border-color);width:36px;height:36px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:var(--transition-normal);box-shadow:var(--shadow-sm);flex-shrink:0}.icon-btn i,.icon-btn svg{width:16px;height:16px;stroke-width:2.2}.icon-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.icon-btn-edit:hover{background-color:var(--primary-light);color:var(--primary);border-color:var(--primary)}.icon-btn-calendar:hover{background-color:#ecfdf5;color:#059669;border-color:#6ee7b7}.icon-btn-danger:hover{background-color:var(--danger-light);color:var(--danger);border-color:var(--danger)}.icon-btn-sm{width:32px;height:32px;border-radius:var(--radius-sm)}.icon-btn-sm i,.icon-btn-sm svg{width:14px;height:14px}.action-btn-group{display:inline-flex;gap:6px;align-items:center}.calendar-controls{display:flex;align-items:center;gap:12px}.calendar-title{font-size:15px;font-weight:700;color:var(--text-main);min-width:90px;text-align:center}.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.mini-day{aspect-ratio:1;border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;font-weight:700;position:relative;background-color:#f9fafb;border:1px solid var(--border-color);color:var(--text-muted);transition:var(--transition-fast)}.mini-day.current-month{color:var(--text-main);background-color:#fff}.mini-day.today{border:2px solid var(--primary);font-weight:800;color:var(--primary)}.mini-day-pets{display:flex;gap:2px;position:absolute;bottom:4px}.mini-pet-dot{width:5px;height:5px;border-radius:50%}.full-calendar-card{display:flex;flex-direction:column}.title-with-desc h2{font-size:22px;margin-bottom:4px}.title-with-desc p{font-size:13px;color:var(--text-muted);font-weight:500}.calendar-controls-wrapper{display:flex;align-items:center;gap:24px}.calendar-legends{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--text-muted);background-color:#f3f4f6;padding:4px 10px;border-radius:12px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;font-weight:700;font-size:12px;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.calendar-day-cell{position:relative;min-height:110px;min-width:0;border-radius:var(--radius-md);border:1px solid var(--border-color);padding:8px;display:flex;flex-direction:column;gap:6px;background-color:#fff;transition:var(--transition-fast);cursor:pointer}.calendar-day-cell:hover{box-shadow:var(--shadow-md);border-color:var(--border-focus)}.calendar-day-cell:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.calendar-day-cell:active{transform:scale(.98)}.cell-add-hint{position:absolute;top:6px;right:6px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background-color:var(--primary);color:#fff;opacity:0;transform:scale(.7);transition:var(--transition-fast);pointer-events:none}.cell-add-hint svg{width:12px;height:12px;stroke-width:3}.calendar-day-cell:hover .cell-add-hint,.calendar-day-cell:focus-visible .cell-add-hint{opacity:1;transform:scale(1)}.calendar-day-cell.other-month{background-color:#f9fafb;opacity:.5}.calendar-day-cell.today{border:2px solid var(--primary);background-color:var(--primary-light)}.cell-number{font-size:14px;font-weight:700;color:var(--text-main);align-self:flex-start}.calendar-day-cell.today .cell-number{color:var(--primary)}.cell-events{display:flex;flex-direction:column;gap:4px;flex-grow:1;overflow-y:auto;min-width:0}.event-bar{font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px;color:#fff;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;align-items:center;min-width:0}.event-bar span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}.event-time{font-size:9px;opacity:.9;flex-shrink:0;margin-left:4px}.agenda-container{max-height:320px;overflow-y:auto}.agenda-list{display:flex;flex-direction:column;gap:12px}.agenda-item{display:flex;align-items:flex-start;gap:14px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--border-color);transition:var(--transition-fast);background-color:#fff;cursor:pointer}.agenda-item:hover{border-color:var(--border-focus);background-color:var(--bg-card-hover)}.agenda-item.is-today{border-left:3px solid var(--primary)}.agenda-item.is-active{border-left:3px solid var(--success)}.agenda-pet-marker{margin-top:2px}.agenda-pet-marker .pet-dot{width:12px;height:12px}.agenda-content{flex-grow:1;min-width:0}.agenda-top-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.agenda-pet-name{font-size:14px;font-weight:700;color:var(--text-main)}.agenda-dates{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.agenda-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;color:var(--text-muted);font-weight:500}.agenda-meta-tag{display:inline-flex;align-items:center;gap:4px}.agenda-meta-tag.agenda-price{font-weight:700;color:var(--primary)}.agenda-status-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;flex-shrink:0}.agenda-status-badge.status-active{background-color:#10b9811f;color:var(--success)}.agenda-status-badge.status-today{background-color:var(--primary-light);color:var(--primary)}.agenda-status-badge.status-upcoming{background-color:#f3f4f6;color:var(--text-muted)}.agenda-edit-btn{background:none;border:none;color:var(--text-light);cursor:pointer;padding:2px;align-self:center;flex-shrink:0}.agenda-edit-btn:hover{color:var(--primary)}.agenda-empty{text-align:center;color:var(--text-muted);padding:24px 12px}.agenda-empty .empty-state{padding:16px 12px}.agenda-empty p{font-size:13px;font-weight:500}.reminders-container{max-height:320px;overflow-y:auto}.reminders-list{display:flex;flex-direction:column;gap:12px}.reminder-item{display:flex;align-items:flex-start;gap:14px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--border-color);transition:var(--transition-fast);background-color:#fff}.reminder-item:hover{border-color:var(--border-focus);background-color:var(--bg-card-hover)}.reminder-check{margin-top:3px;width:18px;height:18px;border-radius:4px;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-fast);color:#fff}.reminder-item.completed .reminder-check{background-color:var(--success);border-color:var(--success)}.reminder-content{flex-grow:1}.reminder-text{font-size:13.5px;font-weight:600;color:var(--text-main);margin-bottom:4px}.reminder-item.completed .reminder-text{text-decoration:line-through;color:var(--text-light)}.reminder-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted);font-weight:500}.reminder-pet-tag{font-weight:700;padding:2px 6px;border-radius:6px;font-size:10px}.reminder-date-tag{display:flex;align-items:center;gap:4px}.reminder-actions{display:flex;gap:6px;align-self:center}.pets-header-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.pets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pet-card{background-color:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-color);padding:28px;display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow-md);transition:var(--transition-normal);overflow:hidden}.pet-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:6px;background-color:var(--pet-color, var(--primary))}.pet-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.pet-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.pet-avatar-wrapper{display:flex;align-items:center;gap:16px}.pet-avatar{width:48px;height:48px;border-radius:50%;background-color:var(--pet-color-light, var(--primary-light));display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:var(--shadow-sm)}.pet-card-title h3{font-size:18px;color:var(--text-main)}.pet-card-title span{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.pet-rate-badge{display:inline-block;margin-top:2px;padding:2px 8px;border-radius:999px;background-color:var(--pet-color-light, var(--primary-light));color:var(--pet-color, var(--primary));font-size:11px!important;text-transform:none!important}.pet-card-highlight{box-shadow:0 0 0 3px var(--pet-color, var(--primary)),var(--shadow-lg)}.pet-card-clickable,.pet-card-clickable .pet-actions,.pet-card-clickable .view-bookings-btn{cursor:pointer}.pet-profile-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.pet-profile-actions{display:flex;align-items:center;gap:8px}.pet-profile-hero{margin-bottom:24px;overflow:hidden}.pet-profile-hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:6px;background-color:var(--pet-color, var(--primary))}.pet-profile-hero-main{display:flex;align-items:center;gap:20px;margin-bottom:24px}.pet-profile-avatar{width:72px;height:72px;font-size:32px}.pet-profile-identity h2{font-size:28px;color:var(--text-main);margin-bottom:8px}.pet-profile-tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pet-color-tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted)}.pet-profile-notes-block h3{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-main);margin-bottom:12px}.pet-profile-notes-block h3 i,.pet-profile-notes-block h3 svg{width:16px;height:16px;color:var(--primary)}.pet-profile-notes-block p,.pet-profile-advanced-notes p{font-size:14px;line-height:1.6;color:var(--text-muted);white-space:pre-wrap}.pet-profile-advanced-notes{margin-top:16px;padding-top:14px;border-top:1px dashed var(--border-color)}.pet-profile-advanced-notes h4{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.pet-profile-empty-care{font-size:14px;color:var(--text-light);font-style:italic}.pet-checklist-display{display:flex;flex-direction:column;gap:16px}.pet-checklist-section h4{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.pet-checklist-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.pet-checklist-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:#fafafa}.pet-checklist-mark{width:22px;height:22px;border-radius:50%;background:#00e09626;color:#059669;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.pet-checklist-mark i,.pet-checklist-mark svg{width:14px;height:14px}.pet-checklist-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.pet-checklist-copy span{font-size:14px;font-weight:600;color:var(--text-main)}.pet-checklist-copy small{font-size:13px;line-height:1.5;color:var(--text-muted)}.modal-card-pet{max-width:620px}.modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.modal-form.hidden,.booking-view-panel.hidden{display:none!important}.modal-body{flex:1;min-height:0;overflow-y:auto;overflow-x:visible;padding-right:4px}.modal-body:has(.multi-select-trigger[aria-expanded=true]),.modal-body:has(.color-select-trigger[aria-expanded=true]){overflow:visible}.modal-card .multi-select-panel,.modal-card .color-select-panel{z-index:120}.modal-footer{flex-shrink:0;margin-top:0;padding-top:20px;border-top:1px solid var(--border-color);background:var(--bg-card)}.pet-care-form{display:flex;flex-direction:column;gap:4px}.pet-care-form-header{margin:4px 0 12px}.pet-care-form-header h3{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text-main);margin-bottom:4px}.pet-care-form-header h3 i,.pet-care-form-header h3 svg{width:16px;height:16px;color:var(--primary)}.pet-care-form-header p{font-size:12px;color:var(--text-light);line-height:1.5}.care-form-section{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px 14px 6px;margin:0 0 12px}.care-form-section legend{font-size:12px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.4px;padding:0 6px}.care-section-hint{font-size:12px;color:var(--text-light);line-height:1.5;margin:-4px 0 10px}.care-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.care-checkbox{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fafafa;cursor:pointer;transition:var(--transition-fast);font-size:13px;font-weight:600;color:var(--text-main)}.care-checkbox:hover{border-color:#e88aab59;background:var(--primary-light)}.care-checkbox input{margin-top:2px;accent-color:var(--primary);flex-shrink:0}.care-conditional{margin-top:-2px}.pet-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.pet-profile-section{margin-bottom:24px}.pet-profile-agenda{gap:10px}.pet-history-table tbody tr{cursor:pointer}.pet-history-table tbody tr:hover{background-color:var(--bg-card-hover)}.history-past-label{font-size:10px;font-weight:700;color:var(--text-light);text-transform:uppercase;letter-spacing:.4px}.pet-stat-clickable{background:#f9fafb;border:1px solid var(--border-color);padding:10px 12px;text-align:left;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-normal);display:flex;flex-direction:column;gap:2px}.pet-stat-clickable:hover{background-color:var(--primary-light);border-color:#e88aab4d;transform:translateY(-1px)}.pet-stat-clickable .stat-link-hint{font-size:9px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:4px;margin-top:2px}.pet-stat-clickable .stat-link-hint i,.pet-stat-clickable .stat-link-hint svg{width:10px;height:10px}.pets-header-action h2{display:flex;align-items:center;gap:12px;font-size:24px;margin:0}.confirm-modal-card{max-width:420px;text-align:center;position:relative}.confirm-modal-card .modal-footer{margin-top:auto}.confirm-modal-card>.close-modal-btn{position:absolute;top:16px;right:16px}.confirm-modal-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--danger-light);color:var(--danger);display:flex;align-items:center;justify-content:center}.confirm-modal-icon i,.confirm-modal-icon svg{width:28px;height:28px}.auth-input-wrap{position:relative}.auth-input-wrap i,.auth-input-wrap svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--text-light)}.auth-input-wrap .form-input{padding-left:42px}.auth-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:8px;padding:10px;background:none;border:none;color:var(--primary);font-weight:600;font-size:13px;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-fast)}.auth-toggle:hover{background:var(--primary-light)}.auth-forgot{align-self:flex-start;margin:0 0 8px;padding:0;background:none;border:none;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer}.auth-forgot:hover{color:var(--primary)}.auth-error.is-notice{color:var(--text-muted)}.invite-caregiver-box{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.sidebar-footer .sign-out-btn{width:100%;margin-bottom:8px}.auth-user-label{font-size:12px;color:var(--text-muted);margin-bottom:10px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px}.auth-user-label:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-light)}.stat-card-clickable{cursor:pointer;transition:var(--transition-normal)}.stat-card-clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-card-clickable:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.pet-actions{display:flex;gap:6px}.pet-card-body{margin-bottom:20px;flex-grow:1}.pet-card-notes{font-size:13px;color:var(--text-muted);line-height:1.5;background-color:#f9fafb;padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-color)}.pet-card-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--border-color);padding-top:16px}.pet-stat-item{display:flex;flex-direction:column}.pet-stat-item span{font-size:10px;text-transform:uppercase;font-weight:700;color:var(--text-light)}.pet-stat-item p{font-size:15px;font-weight:800;color:var(--text-main);font-family:var(--font-display)}.bookings-summary-grid,.bookings-filters-card{margin-bottom:24px}.bookings-filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.bookings-filters-controls{flex:1;min-width:0}.bookings-charts-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}.bookings-charts-row .bookings-history-card,.bookings-charts-row .bookings-totals-card{margin-bottom:0}.bookings-history-card{margin-bottom:24px}.bookings-monthly-history,.bookings-pet-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bookings-pet-chip-header{display:flex;align-items:center;gap:8px}.bookings-month-chip{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-width:0;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer;transition:var(--transition-normal);font-family:var(--font-sans);text-align:left}.bookings-month-chip:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.bookings-month-chip.active{border-color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 2px #e88aab26}.bookings-month-chip-label{font-size:13px;font-weight:700;color:var(--text-main)}.bookings-month-chip-value{font-family:var(--font-display);font-size:18px;font-weight:800;color:#10b981}.bookings-month-chip-meta{font-size:11px;font-weight:600;color:var(--text-muted)}.bookings-history-empty{color:var(--text-muted);font-size:14px;padding:8px 0;grid-column:1 / -1}.bookings-table{width:100%;border-collapse:collapse;text-align:left}.bookings-table th{padding:16px 20px;border-bottom:2px solid var(--border-color);font-weight:700;font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.bookings-table td{padding:16px 20px;border-bottom:1px solid var(--border-color);font-size:14px;font-weight:500;color:var(--text-main)}.bookings-table tr:hover{background-color:var(--bg-card-hover)}.pet-name-cell{display:flex;align-items:center;gap:10px;font-weight:700}.duration-badge{background-color:var(--primary-light);color:var(--primary);font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px}.price-text{font-family:var(--font-display);font-weight:800;color:#10b981}.table-actions{display:flex;gap:12px;flex-wrap:wrap}.multi-select{position:relative;min-width:200px}.multi-select-trigger{display:flex;align-items:center;gap:10px;width:100%;min-width:200px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:#fff;color:var(--text-main);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm);font-family:var(--font-sans)}.multi-select-trigger:hover,.multi-select-trigger[aria-expanded=true]{border-color:var(--border-focus)}.multi-select-trigger:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.multi-select-icon,.multi-select-chevron{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted)}.multi-select-icon i,.multi-select-icon svg,.multi-select-chevron i,.multi-select-chevron svg{width:15px;height:15px}.multi-select-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-select-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:8px;max-height:260px;overflow-y:auto}.multi-select-options{display:flex;flex-direction:column;gap:4px}.multi-select-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;color:var(--text-main);transition:background-color .15s ease}.multi-select-option:hover{background:var(--bg-card-hover)}.multi-select-option input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.multi-select-option .color-select-option-swatch{width:18px;height:18px}.multi-select-icon--colors{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap;max-width:72px;overflow:hidden}.multi-select-trigger-swatch{width:16px;height:16px}.multi-select-option-all{border-bottom:1px solid var(--border-color);margin-bottom:4px;padding-bottom:10px}.select-with-icon{position:relative;display:inline-flex;align-items:center}.select-with-icon>i,.select-with-icon>svg{position:absolute;left:12px;width:15px;height:15px;color:var(--text-muted);pointer-events:none;z-index:1}.select-with-icon .form-select{padding-left:36px;min-width:180px}.form-select{padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);outline:none;font-size:13px;font-weight:600;background-color:#fff;color:var(--text-main);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.form-select:hover{border-color:var(--border-focus)}.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#1f293766;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.modal-backdrop.active{opacity:1;pointer-events:auto}.modal-card{background-color:var(--bg-card);width:100%;max-width:500px;max-height:calc(100vh - 48px);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:32px;border:1px solid var(--border-color);transform:scale(.9);transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column;overflow:visible}.modal-backdrop.active .modal-card{transform:scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-shrink:0}.modal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.calendar-export-wrap{position:relative}.calendar-export-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:120;min-width:220px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:6px}.calendar-export-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-main);font-size:13px;font-weight:600;cursor:pointer;text-align:left;font-family:var(--font-sans);transition:background-color .15s ease}.calendar-export-option:hover{background:var(--bg-card-hover)}.calendar-export-option-icon{width:18px;height:18px;border-radius:4px;flex-shrink:0;background-size:contain;background-repeat:no-repeat;background-position:center}.calendar-export-option-icon--apple{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111827'%3E%3Cpath d='M16.365 1.43c0 1.14-.45 2.23-1.24 3.04-.84.86-2.02 1.38-3.2 1.3-.14-1.1.42-2.26 1.18-3.01.83-.82 2.14-1.36 3.26-1.33zm3.2 17.05c-.57 1.28-.84 1.85-1.57 2.98-1.02 1.53-2.46 3.44-4.24 3.45-1.58.01-1.99-1.02-4.15-1.02-2.16 0-2.63 1.03-4.2 1.03-1.79.01-3.3-1.74-4.32-3.27C.98 17.66.25 14.9 1.66 12.5c.98-1.66 2.7-2.71 4.55-2.74 1.78-.03 2.9 1.14 4.17 1.14 1.24 0 3.55-1.41 5.99-1.2.51.02 2.35.25 3.46 1.88-2.9 1.77-2.43 6.4.74 7.9z'/%3E%3C/svg%3E")}.calendar-export-option-icon--google{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3C/svg%3E")}.calendar-export-option-icon--outlook{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%230078D4' d='M7 4h11a2 2 0 0 1 2 2v1h1.5A1.5 1.5 0 0 1 23 8.5v11A1.5 1.5 0 0 1 21.5 21H7a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%23fff' d='M7 6v13h14.5a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5H7z'/%3E%3Cpath fill='%230078D4' d='M12 8.5a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7z'/%3E%3Cpath fill='%2328A8EA' d='M1 5.5A2.5 2.5 0 0 1 3.5 3h5A2.5 2.5 0 0 1 11 5.5v13A2.5 2.5 0 0 1 8.5 21h-5A2.5 2.5 0 0 1 1 18.5v-13z'/%3E%3Cpath fill='%23fff' d='M6 7.2a3.8 3.8 0 1 0 0 7.6 3.8 3.8 0 0 0 0-7.6z'/%3E%3C/svg%3E")}.modal-header h2{font-size:20px;color:var(--text-main);display:flex;align-items:center;gap:12px}.modal-header-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.modal-header-icon i,.modal-header-icon svg{width:20px;height:20px}.close-modal-btn{background:#f3f4f6;border:none;width:36px;height:36px;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-normal);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.close-modal-btn i,.close-modal-btn svg{width:18px;height:18px}.close-modal-btn:hover{background:var(--danger-light);color:var(--danger);transform:rotate(90deg)}.form-group{margin-bottom:18px;display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:700;color:var(--text-muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-input{padding:10px 16px;border-radius:var(--radius-md);border:1px solid var(--border-color);outline:none;font-size:14px;font-weight:500;width:100%;font-family:var(--font-sans)}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.price-input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:16px;font-weight:700;color:var(--text-muted)}.price-input-wrapper .form-input{padding-left:32px}.color-select-field{width:100%}.color-select{position:relative;width:100%}.color-select-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:#fff;color:var(--text-main);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm);font-family:var(--font-sans)}.color-select-trigger:hover,.color-select-trigger[aria-expanded=true]{border-color:var(--border-focus)}.color-select-trigger:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.color-select-preview{width:22px;height:22px;border-radius:50%;border:2px solid rgba(0,0,0,.08);flex-shrink:0}.color-select-label{flex:1;text-align:left}.color-select-chevron{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.color-select-chevron i,.color-select-chevron svg{width:16px;height:16px}.color-select-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:6px;max-height:240px;overflow-y:auto}.color-select-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-main);font-size:13px;font-weight:600;cursor:pointer;text-align:left;font-family:var(--font-sans);transition:background-color .15s ease}.color-select-option:hover,.color-select-option.active{background:var(--bg-card-hover)}.color-select-option-swatch{width:20px;height:20px;border-radius:50%;border:2px solid rgba(0,0,0,.08);flex-shrink:0}.pet-select-field{width:100%;position:relative;z-index:2}.pet-select-field:has(.multi-select-trigger[aria-expanded=true]),.pet-select-field:has(.color-select-trigger[aria-expanded=true]){z-index:130}.pet-select .color-select-panel{z-index:80}.pet-select-preview[hidden]{display:none}.form-textarea{resize:vertical;min-height:80px;line-height:1.5;font-family:var(--font-sans)}.booking-view-panel .modal-body{display:flex;flex-direction:column;gap:20px}.booking-view-pet{display:flex;align-items:center;gap:12px}.booking-view-pet .pet-dot{width:16px;height:16px;flex-shrink:0}.booking-view-pet-name{font-size:18px;font-weight:700;color:var(--text-main);font-family:var(--font-display)}.booking-view-dates{display:flex;align-items:stretch;gap:10px}.booking-view-dates-arrow{display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0;padding-top:28px}.booking-view-dates-arrow i,.booking-view-dates-arrow svg{width:18px;height:18px}.booking-date-chip{flex:1;min-width:0;display:flex;flex-direction:column;border-radius:var(--radius-md);border:1px solid var(--border-color);background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.booking-date-chip-header{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.booking-date-chip-header i,.booking-date-chip-header svg{width:14px;height:14px}.booking-date-chip--start .booking-date-chip-header{background:#10b9811f;color:#059669}.booking-date-chip--end .booking-date-chip-header{background:#f59e0b24;color:#d97706}.booking-date-chip-calendar{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 12px 10px;text-align:center}.booking-date-chip-month{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.booking-date-chip-day-block{display:flex;flex-direction:column;align-items:center;gap:2px}.booking-date-chip-day{font-family:var(--font-display);font-size:36px;font-weight:800;line-height:1;color:var(--text-main)}.booking-date-chip-weekday{font-size:12px;font-weight:600;color:var(--text-muted)}.booking-date-chip-time{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-top:1px dashed var(--border-color);background:var(--bg-main);font-size:13px;font-weight:700;color:var(--text-main)}.booking-date-chip-time i,.booking-date-chip-time svg{width:14px;height:14px;color:var(--text-muted)}.booking-view-meta{display:flex;flex-wrap:wrap;gap:10px}.booking-view-meta-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:var(--bg-main);border:1px solid var(--border-color);font-size:13px;font-weight:600;color:var(--text-main)}.booking-view-meta-chip i,.booking-view-meta-chip svg{width:14px;height:14px;color:var(--text-muted)}.booking-view-meta-chip--price{color:var(--primary);background:var(--primary-light);border-color:transparent;font-weight:700}.booking-view-meta-chip--price i,.booking-view-meta-chip--price svg{color:var(--primary)}.booking-view-meta-chip--caregiver{color:#e07aa0;background:#e07aa01a;border-color:#e07aa033;font-weight:700}.booking-view-meta-chip--caregiver i,.booking-view-meta-chip--caregiver svg{color:#e07aa0}.booking-view-meta-chip--caregiver-pay{color:#c2410c;background:#ea580c17;border-color:#ea580c33;font-weight:700}.booking-view-meta-chip--caregiver-pay i,.booking-view-meta-chip--caregiver-pay svg{color:#c2410c}.caregiver-pay-input:disabled{opacity:.45;cursor:not-allowed;background:var(--bg-main)}.booking-view-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.booking-view-label i,.booking-view-label svg{width:14px;height:14px}.booking-view-description{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--border-color)}.booking-view-description-text{font-size:14px;color:var(--text-main);line-height:1.6;white-space:pre-wrap;margin:0}@media(max-width:480px){.booking-view-dates{flex-direction:column;align-items:stretch}.booking-view-dates-arrow{padding:0;transform:rotate(90deg)}}.form-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;width:100%}.form-actions-start,.form-actions-end{display:flex;flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;flex:0 0 auto}.form-actions-end{justify-content:flex-end;margin-left:auto}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;color:var(--text-muted);padding:32px 16px;display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state-block{grid-column:1 / -1;padding:48px 24px}.empty-state i,.empty-state svg{width:40px;height:40px;color:var(--primary);opacity:.7}.empty-state p{font-size:14px;font-weight:500;line-height:1.6}.empty-state-title{font-size:16px!important;font-weight:700!important;color:var(--text-main)}.empty-state-body{max-width:420px;color:var(--text-muted)}.empty-state-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-width:420px;text-align:left}.empty-state-steps li{position:relative;padding-left:22px;font-size:13px;line-height:1.5;color:var(--text-muted)}.empty-state-steps li:before{content:"•";position:absolute;left:0;color:var(--primary);font-weight:700}.welcome-banner{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface)) 0%,var(--surface) 100%)}.welcome-banner-icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.welcome-banner-icon i,.welcome-banner-icon svg{width:20px;height:20px}.welcome-banner-title{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--text-main)}.welcome-banner-body{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-muted)}.sidebar-pets-empty{font-size:12px;line-height:1.5;color:var(--text-muted);padding:4px 2px 10px}.bookings-table-empty{padding:12px 0 24px}.agenda-empty .empty-state-title,.agenda-empty .empty-state-body,.agenda-empty .empty-state-steps{margin-left:auto;margin-right:auto}.hidden{display:none!important}.table-responsive{width:100%;overflow-x:auto}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999}.toast{background-color:var(--bg-card);border-left:5px solid var(--primary);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:16px 20px;color:var(--text-main);font-size:14px;font-weight:600;display:flex;align-items:center;gap:12px;min-width:280px;max-width:400px;animation:slideIn .3s cubic-bezier(.34,1.56,.64,1),fadeOut .3s ease 2.7s forwards;border:1px solid var(--border-color)}.toast.success{border-left-color:var(--success)}.toast.danger{border-left-color:var(--danger)}.toast.info{border-left-color:var(--primary)}@keyframes slideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.home-page{min-height:100vh;display:flex;flex-direction:column;background:var(--gradient-app);background-attachment:fixed}.home-navbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px;background:#ffffffd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb,var(--border-color) 80%,transparent)}.home-navbar-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.home-navbar-name{font-family:var(--font-display);font-size:20px;font-weight:800;color:var(--text-main)}.home-navbar-actions{display:flex;align-items:center;gap:10px}.home-main{flex:1}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:1180px;margin:0 auto;padding:64px 32px 28px}.home-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,white);border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary);font-size:13px;font-weight:700;margin-bottom:20px}.home-badge i,.home-badge svg{width:16px;height:16px}.home-hero-title{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.25rem);line-height:1.12;letter-spacing:-.02em;color:var(--text-main);margin-bottom:18px}.home-hero-subtitle{font-size:17px;line-height:1.65;color:var(--text-muted);max-width:520px;margin-bottom:28px}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}.home-hero-perks{list-style:none;display:flex;flex-direction:column;gap:10px}.home-hero-perks li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--text-muted)}.home-hero-perks i,.home-hero-perks svg{width:18px;height:18px;color:var(--primary);flex-shrink:0}.home-hero-visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:420px}.home-visual-glow{position:absolute;top:10%;right:5%;bottom:10%;left:5%;background:radial-gradient(circle at 50% 50%,rgba(232,138,171,.18) 0%,transparent 70%);pointer-events:none}.home-preview-card{position:relative;z-index:1;width:100%;max-width:400px;background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-xl);padding:20px;animation:float 5s ease-in-out infinite}.home-preview-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text-main)}.home-preview-header img{border-radius:8px}.home-preview-body{display:flex;flex-direction:column;gap:14px}.home-preview-block{display:flex;flex-direction:column;gap:10px}.home-preview-block-head{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.home-preview-block-head i,.home-preview-block-head svg{width:14px;height:14px;color:var(--primary)}.home-preview-cal{padding:12px;border-radius:var(--radius-md);background:#fffafc;border:1px solid var(--border-color)}.home-preview-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:6px}.home-preview-cal-weekdays span{text-align:center;font-size:10px;font-weight:700;color:var(--text-light)}.home-preview-cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.home-preview-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-main);border-radius:6px}.home-preview-cal-day.muted{color:var(--text-light);opacity:.5}.home-preview-cal-day.event{background:color-mix(in srgb,var(--pet-color) 16%,white);color:color-mix(in srgb,var(--pet-color) 80%,black);font-weight:700;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pet-color) 28%,transparent)}.home-preview-cal-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-color)}.home-preview-cal-legend span{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;color:var(--text-muted)}.home-preview-cal-legend i{width:8px;height:8px;border-radius:50%;display:inline-block;font-style:normal}.home-preview-agenda-list{display:flex;flex-direction:column;gap:8px}.home-preview-agenda-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:#fff}.home-preview-dot{width:10px;height:10px;border-radius:50%;background:var(--pet-color);flex-shrink:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--pet-color) 18%,transparent)}.home-preview-dot--sm{width:8px;height:8px}.home-preview-agenda-info{flex:1;min-width:0}.home-preview-agenda-info strong{display:block;font-size:13px;color:var(--text-main);margin-bottom:1px}.home-preview-agenda-info span{font-size:11px;color:var(--text-muted)}.home-preview-price{font-size:13px;font-weight:800;color:var(--primary);flex-shrink:0}.home-preview-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-preview-pay{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:var(--radius-md);background:var(--success-light);border:1px solid color-mix(in srgb,var(--success) 20%,transparent)}.home-preview-pay i,.home-preview-pay svg{width:18px;height:18px;color:var(--success);flex-shrink:0;margin-top:2px}.home-preview-pay strong{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:2px}.home-preview-pay-amount{font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--success)}.home-preview-reminders{padding:12px;border-radius:var(--radius-md);background:var(--primary-light);border:1px solid color-mix(in srgb,var(--primary) 12%,transparent)}.home-preview-reminders .home-preview-block-head{margin-bottom:8px}.home-preview-reminder{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--text-main);line-height:1.4}.home-preview-reminder+.home-preview-reminder{margin-top:6px}.home-preview-cal--large{padding:16px}.home-preview-cal--large .home-preview-cal-day{font-size:12px}.home-preview-cal--large .home-preview-cal-weekdays span{font-size:11px}.home-preview-pay--block,.home-preview-reminders--block{width:100%}.home-floating-paws{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.home-paw{position:absolute;fill:color-mix(in srgb,var(--primary) 22%,transparent);opacity:.55}.home-paw-1{width:36px;top:8%;right:8%;transform:rotate(15deg);animation:float 4s ease-in-out infinite}.home-paw-2{width:28px;bottom:18%;left:4%;transform:rotate(-20deg);animation:float 5s ease-in-out infinite .5s}.home-paw-3{width:22px;top:42%;right:0;transform:rotate(8deg);animation:float 6s ease-in-out infinite 1s}.home-features{max-width:1180px;margin:0 auto;padding:0 32px 80px}.home-section-header{text-align:center;max-width:640px;margin:0 auto 40px}.home-section-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.home-section-eyebrow i,.home-section-eyebrow svg{width:16px;height:16px}.home-section-header h2{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);margin-bottom:12px;color:var(--text-main)}.home-section-header p{font-size:16px;line-height:1.6;color:var(--text-muted)}.home-features-layout{display:flex;flex-direction:column;gap:24px}.home-feature-visual{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:28px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:20px;transition:var(--transition-normal)}.home-feature-visual:hover{border-color:color-mix(in srgb,var(--primary) 18%,transparent);box-shadow:var(--shadow-lg)}.home-feature-visual--featured{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;align-items:center;padding:36px}.home-feature-visual-copy h3{font-family:var(--font-display);font-size:22px;margin-bottom:10px;color:var(--text-main)}.home-feature-visual-copy p{font-size:15px;line-height:1.65;color:var(--text-muted);max-width:420px}.home-feature-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px}.home-feature-tag i,.home-feature-tag svg{width:14px;height:14px}.home-feature-tag--calendar{background:color-mix(in srgb,#9E00FF 12%,white);color:#9e00ff}.home-feature-tag--agenda{background:color-mix(in srgb,#0085FF 12%,white);color:#0085ff}.home-feature-tag--finance{background:color-mix(in srgb,var(--success) 12%,white);color:var(--success)}.home-feature-tag--reminders{background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary)}.home-feature-visual-widget{background:#fffafc;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px}.home-feature-visual--featured .home-feature-visual-widget{padding:20px}.home-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.home-features-grid .home-feature-visual-copy h3{font-size:18px}.home-features-grid .home-feature-visual-copy p{font-size:14px}.home-feature-pay-stack{display:flex;flex-direction:column;gap:12px}.home-feature-pay-rows{display:flex;flex-direction:column;gap:8px}.home-feature-pay-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--radius-md);background:#fff;border:1px solid var(--border-color);font-size:13px;font-weight:600;color:var(--text-main)}.home-feature-pay-row span{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted)}.home-feature-pay-row span i{width:8px;height:8px;border-radius:50%;display:inline-block;font-style:normal}.home-feature-pay-row strong{color:var(--primary);font-size:14px}.home-cta-section{max-width:1180px;margin:0 auto;padding:0 32px 80px}.home-cta-card{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center;padding:48px;border-radius:var(--radius-xl);background:var(--gradient-primary);color:#fff;box-shadow:0 20px 40px #e88aab59;overflow:hidden;position:relative}.home-cta-content h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);margin-bottom:12px}.home-cta-content p{font-size:16px;line-height:1.6;opacity:.92;margin-bottom:24px;max-width:480px}.home-cta-content .btn-primary{background:#fff;color:var(--primary);box-shadow:0 8px 24px #0000001f}.home-cta-content .btn-primary:hover{background:#f8fafc;color:var(--primary-hover)}.home-cta-pet-bubbles{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.home-cta-bubble{display:inline-flex;align-items:center;padding:12px 20px;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-display);font-weight:700;font-size:15px;color:#fff;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--pet-color) 40%,transparent);animation:float 4s ease-in-out infinite}.home-cta-bubble:nth-child(2){animation-delay:.4s}.home-cta-bubble:nth-child(3){animation-delay:.8s}.home-cta-bubble:nth-child(4){animation-delay:1.2s}.home-footer{border-top:1px solid var(--border-color);background:#fff9;padding:32px}.home-footer-inner{max-width:1180px;margin:0 auto;text-align:center}.home-footer-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:16px;margin-bottom:8px}.home-footer-brand img{border-radius:8px}.home-footer-tagline{font-size:14px;color:var(--text-muted);margin-bottom:6px}.home-footer-copy{font-size:12px;color:var(--text-light)}.auth-modal-card{max-width:420px;padding:36px;position:relative}.auth-modal-card .close-modal-btn{position:absolute;top:16px;right:16px}.auth-brand{text-align:center;margin-bottom:28px}.auth-brand h1{font-size:28px;margin:8px 0}.auth-brand p{color:var(--text-muted);font-size:14px;line-height:1.5}.btn-google{width:100%;background:#fff;color:var(--text-main);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.btn-google:hover{background:#f9fafb;transform:translateY(-1px)}.auth-divider{display:flex;align-items:center;gap:12px;margin:24px 0;color:var(--text-light);font-size:12px;font-weight:600}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.auth-form{display:flex;flex-direction:column}.auth-submit{width:100%;margin-top:4px}.auth-error{color:var(--danger);font-size:13px;min-height:18px;margin:4px 0 8px}.sign-out-btn{width:100%;margin-bottom:12px}@media(max-width:1100px){.home-hero{grid-template-columns:1fr;gap:40px;padding-top:48px}.home-hero-visual{order:-1;min-height:320px}.home-preview-bottom,.home-feature-visual--featured,.home-features-grid{grid-template-columns:1fr}.home-cta-card{grid-template-columns:1fr;text-align:center;padding:36px 28px}.home-cta-content p{margin-left:auto;margin-right:auto}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-split{grid-template-columns:1fr}.pets-grid{grid-template-columns:repeat(2,1fr)}.pet-profile-stats,.care-checkbox-grid{grid-template-columns:1fr}}@media(max-width:768px){.home-navbar{padding:12px 16px}.home-navbar-actions .btn{padding:10px 14px;font-size:12px}.home-hero{padding:32px 20px 16px}.home-hero-subtitle{font-size:16px}.home-hero-actions{flex-direction:column}.home-hero-actions .btn{width:100%}.home-tutor-band{padding:0 20px 40px}.home-tutor-band-card{grid-template-columns:auto 1fr;padding:18px}.home-tutor-band-cta{grid-column:1 / -1;justify-content:center}.home-features{padding:0 20px 56px}.home-feature-visual,.home-feature-visual--featured{padding:22px 18px}.home-features-grid{grid-template-columns:1fr}.home-cta-section{padding:0 20px 56px}.home-cta-card{padding:28px 22px}.home-footer{padding:24px 20px}.auth-modal-card{margin:16px;padding:28px 24px}.mobile-navbar,.sidebar-close-btn{display:flex}.sidebar-backdrop{display:block}.app-container{flex-direction:column}.sidebar{position:fixed;top:0;left:0;width:min(300px,88vw);height:100vh;height:100dvh;padding:24px 20px 28px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(28px,env(safe-area-inset-bottom));transform:translate(-105%);transition:transform .32s cubic-bezier(.4,0,.2,1);z-index:50;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:none}.sidebar.is-open{transform:translate(0);box-shadow:8px 0 40px #e88aab2e}.sidebar .brand{margin-bottom:28px;padding-right:44px}.nav-menu{flex-direction:column;margin-bottom:20px;gap:6px}.nav-btn{padding:14px 16px;font-size:14px;justify-content:flex-start}.nav-btn:hover{transform:none}.sidebar-pets-section{display:block;margin-top:8px}.sidebar-footer{margin-top:auto;padding-top:20px}.main-content{width:100%;padding:0 16px 32px;padding-bottom:max(32px,env(safe-area-inset-bottom))}.top-header{position:sticky;top:0;z-index:30;flex-direction:column;align-items:stretch;gap:12px;margin:0 -16px 20px;padding:max(12px,env(safe-area-inset-top)) 16px 14px;background:#ffffffe0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(229,231,235,.9);box-shadow:0 4px 20px #e88aab0f}.header-search{width:100%;padding:10px 16px;border-radius:var(--radius-lg)}.header-actions{flex-wrap:wrap;gap:10px}.header-actions .btn-primary{display:none}.bookings-summary-grid{grid-template-columns:repeat(2,1fr)}.bookings-charts-row{grid-template-columns:1fr}.bookings-filters-bar{flex-direction:column;align-items:stretch}.bookings-filters-bar .btn{width:100%}.multi-select,.multi-select-trigger{min-width:0;width:100%}.stats-grid,.pets-grid,.form-row{grid-template-columns:1fr}.card{padding:16px}.full-calendar-card{padding:16px 12px}.calendar-controls-wrapper{width:100%;flex-direction:column-reverse;align-items:stretch;gap:12px}.calendar-controls{justify-content:space-between;width:100%}.calendar-legends{justify-content:center;gap:6px}.calendar-weekdays{font-size:10px;margin-bottom:4px}.calendar-days{gap:4px}.calendar-day-cell{min-height:55px;padding:4px;gap:2px;border-radius:var(--radius-sm)}.cell-add-hint{display:none}.cell-number{font-size:11px;align-self:center}.cell-events{flex-direction:row;flex-wrap:wrap;gap:2px;justify-content:center;align-items:center}.event-bar{width:6px;height:6px;min-width:6px;padding:0;border-radius:50%;box-shadow:none;cursor:pointer}.event-bar span{display:none}.modal-card{margin:16px;padding:24px 20px;max-height:calc(100vh - 32px);overflow:hidden}.modal-footer .form-actions-end{width:auto}.modal-footer .form-actions-start .btn,.modal-footer .form-actions-end .btn{flex:0 0 auto}}@media(max-width:420px){.modal-footer .form-actions-end{flex-direction:row;align-items:center}.modal-footer .form-actions-start .btn,.modal-footer .form-actions-end .btn{flex:0 0 auto;width:auto}}.loading-screen{--melbi-brown: #4a3530;--melbi-pink: #e88aab;--melbi-blush: #f9d9e0;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:var(--gradient-app);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s ease}.loading-screen.is-visible{opacity:1;visibility:visible;pointer-events:auto}.loading-screen-inner{display:flex;flex-direction:column;align-items:center;gap:18px;padding:32px;text-align:center}.loading-stage{position:relative;display:grid;place-items:center;width:120px;height:120px}.loading-halo{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:radial-gradient(circle,#e88aab59,#e88aab00 70%);animation:melbiHalo 2.2s ease-in-out infinite}.loading-screen-brand{position:relative;width:84px;height:84px;overflow:visible;animation:melbiBounce 1.6s cubic-bezier(.45,0,.55,1) infinite;filter:none}@keyframes melbiBounce{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-8px) scale(1.03)}60%{transform:translateY(0) scale(.98,1.02)}}@keyframes melbiHalo{0%,to{transform:scale(.85);opacity:.6}50%{transform:scale(1.15);opacity:1}}.paw-trail{display:flex;align-items:center;gap:8px;padding:4px 0}.paw-step{opacity:0;transform-origin:center;animation:pawWalk 2s ease-in-out infinite}.paw-step.paw-left{--paw-rotate: 78deg;--paw-y: 5px;fill:var(--melbi-brown)}.paw-step.paw-right{--paw-rotate: 102deg;--paw-y: -5px;fill:var(--melbi-pink)}.paw-step:nth-child(1){animation-delay:0s}.paw-step:nth-child(2){animation-delay:.2s}.paw-step:nth-child(3){animation-delay:.4s}.paw-step:nth-child(4){animation-delay:.6s}.paw-step:nth-child(5){animation-delay:.8s}@keyframes pawWalk{0%{opacity:0;transform:translateY(var(--paw-y)) rotate(var(--paw-rotate)) scale(.5)}20%,55%{opacity:1;transform:translateY(var(--paw-y)) rotate(var(--paw-rotate)) scale(1)}80%,to{opacity:0;transform:translateY(var(--paw-y)) rotate(var(--paw-rotate)) scale(.85)}}@media(prefers-reduced-motion:reduce){.loading-screen-brand,.loading-halo,.paw-step{animation:none;opacity:1}}.loading-screen-message{font-family:var(--font-display);font-size:15px;font-weight:600;color:#4a3530;letter-spacing:.02em;min-height:1.4em;animation:loadingMessagePulse 2s ease-in-out infinite}@keyframes loadingMessagePulse{0%,to{opacity:.65}50%{opacity:1}}.admin-dashboard{display:flex;flex-direction:column;gap:1.5rem}.admin-card-header{align-items:flex-start;gap:1rem}.admin-subtitle{margin:.35rem 0 0;color:var(--text-muted, #64748b);font-size:.92rem}.admin-card-body{padding:1.25rem 1.5rem 1.5rem}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.admin-stat-card{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;border-radius:14px;background:linear-gradient(180deg,#e88aab0f,#e88aab05);border:1px solid rgba(232,138,171,.12)}.admin-stat-label{font-size:.82rem;color:var(--text-muted, #64748b)}.admin-stat-value{font-size:1.45rem;line-height:1.1;color:var(--text-primary, #0f172a)}.admin-stat-hint{font-size:.78rem;color:var(--text-muted, #64748b)}.admin-updated-at,.admin-loading,.admin-empty,.admin-analytics-note p{color:var(--text-muted, #64748b)}.admin-updated-at{margin:1rem 0 0;font-size:.85rem}.admin-analytics-note p{margin:0 0 .75rem}.admin-analytics-note p:last-child{margin-bottom:0}@media(max-width:768px){.admin-card-header{flex-direction:column}}.diary-header{margin-bottom:24px}.diary-header-title h2{margin-bottom:6px}.diary-header-title p{color:var(--text-muted);font-size:14px}.diary-form-card{margin-bottom:24px}.diary-form-card .card-header h3{font-size:16px;font-weight:600;margin:0}.diary-form{padding:0 24px 20px}.diary-form-row{display:grid;grid-template-columns:200px 1fr auto auto;gap:16px;align-items:flex-end}.diary-submit-btn{white-space:nowrap;height:44px;align-self:flex-end}.diary-filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}.diary-filter-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--border-color);background:var(--surface);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.diary-filter-btn:hover{border-color:var(--primary);color:var(--primary);background:#e88aab0f}.diary-filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 14px #e88aab4d}.diary-filter-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.diary-filter-pets{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#diary-timeline{display:flex;flex-direction:column;gap:32px}.diary-day-group{display:flex;flex-direction:column}.diary-day-header{display:flex;align-items:center;justify-content:space-between;padding:8px 0 16px;border-bottom:1px solid var(--border-color);margin-bottom:16px}.diary-day-label{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-main);text-transform:capitalize}.diary-day-count{font-size:12px;color:var(--text-light);background:#f1f5f9;padding:3px 10px;border-radius:999px}.diary-entries{display:flex;flex-direction:column}.diary-entry{display:grid;grid-template-columns:32px 1fr;gap:16px;position:relative}.diary-entry-timeline{display:flex;flex-direction:column;align-items:center;padding-top:4px}.diary-entry-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px #ffffffe6,0 0 0 5px #0000000f;z-index:1}.diary-entry-line{flex:1;width:2px;background:var(--border-color);margin-top:6px;min-height:24px}.diary-entry:last-child .diary-entry-line{display:none}.diary-entry-body{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease;animation:diaryEntryIn .35s ease forwards}@keyframes diaryEntryIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.diary-entry-body:hover{box-shadow:0 4px 16px #e88aab1a;transform:translateY(-1px)}.diary-entry-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.diary-entry-pet{flex:1}.diary-entry-pet-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.01em}.diary-entry-time{font-size:12px;color:var(--text-light);font-weight:500}.diary-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-light);cursor:pointer;opacity:0;transition:all .2s ease}.diary-entry-body:hover .diary-delete-btn{opacity:1}.diary-delete-btn:hover{background:#ef44441a;color:var(--danger)}.diary-delete-btn svg{width:14px;height:14px}.diary-entry-status{display:flex;align-items:center;gap:10px}.diary-status-emoji{font-size:22px;line-height:1;flex-shrink:0}.diary-status-text{font-size:15px;font-weight:600;color:var(--text-main);line-height:1.4}.diary-entry-note{margin:8px 0 0;font-size:13px;color:var(--text-muted);font-style:italic}.diary-empty{text-align:center;padding:64px 24px;color:var(--text-muted)}.diary-empty-icon{font-size:52px;margin-bottom:16px;animation:float 3s ease-in-out infinite}.diary-empty p{font-size:16px;font-weight:500;margin-bottom:8px}.diary-empty-hint{font-size:14px!important;color:var(--text-light)!important;font-weight:400!important}@media(max-width:768px){.diary-form-row{grid-template-columns:1fr}.diary-submit-btn{width:100%;justify-content:center}.diary-entry{grid-template-columns:24px 1fr;gap:12px}.diary-entry-dot{width:12px;height:12px}}.nav-btn{position:relative}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px var(--danger-light);animation:navBadgePulse 2s ease-in-out infinite}.nav-badge[hidden]{display:none}@keyframes navBadgePulse{0%,to{box-shadow:0 0 0 3px var(--danger-light)}50%{box-shadow:0 0 0 6px #ef44441f}}.diary-today-card{margin-bottom:20px}.diary-today-card .card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.diary-today-summary{display:flex;gap:8px}.care-chip{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--primary-light);color:var(--primary)}.care-chip--overdue{background:var(--danger-light);color:var(--danger)}.diary-today-list{display:flex;flex-direction:column;gap:14px}.care-time-group{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:start}.care-time-label{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text-main);padding-top:12px}.care-time-tasks{display:flex;flex-direction:column;gap:8px}.care-task{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);border-left:4px solid var(--primary);transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-normal)}.care-task:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.care-task--overdue{border-left-color:var(--danger);background:linear-gradient(90deg,var(--danger-light),var(--bg-card) 60%)}.care-task--done{border-left-color:var(--success);opacity:.7}.care-task--done .care-task-title span:last-child{text-decoration:line-through;color:var(--text-muted)}.care-task-emoji{font-size:22px;line-height:1}.care-task-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.care-task-title{display:flex;align-items:center;gap:8px;font-weight:600;flex-wrap:wrap}.care-task-note{margin:0;font-size:13px;color:var(--text-muted)}.care-task-caregiver{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-light)}.care-task-caregiver svg{width:12px;height:12px}.care-task-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.care-task-status{font-size:12px;font-weight:600;color:var(--text-muted);white-space:nowrap}.care-task--overdue .care-task-status{color:var(--danger)}.care-task--done .care-task-status{color:var(--success)}.care-schedule-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.care-schedule-row{display:grid;grid-template-columns:150px 110px 1fr auto;gap:8px;align-items:center;animation:careRowIn .2s ease-out}@keyframes careRowIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.care-schedule-actions{display:flex;gap:8px}@media(max-width:600px){.care-schedule-row{grid-template-columns:1fr 1fr auto}.care-schedule-note{grid-column:1 / -1;grid-row:2}.care-time-group{grid-template-columns:1fr;gap:6px}.care-time-label{padding-top:0}.care-task{flex-wrap:wrap}.care-task-side{flex-direction:row;align-items:center;width:100%;justify-content:space-between}}.auth-role-fieldset{border:0;margin:0 0 20px;padding:0;min-inline-size:0}.auth-role-fieldset legend{font-family:var(--font-display);font-size:16px;font-weight:700;margin-bottom:10px}.auth-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-role-card{display:flex;flex-direction:column;gap:6px;padding:14px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;cursor:pointer}.auth-role-card:has(input:checked){border-color:var(--primary);background:var(--primary-light)}.auth-role-card input{position:absolute;opacity:0;pointer-events:none}.auth-role-title{font-family:var(--font-display);font-size:18px;font-weight:700}.auth-role-desc{font-size:12px;line-height:1.4;color:var(--text-muted)}.auth-gate-title{font-size:32px;margin:8px 0}.tutor-app{min-height:100vh}.cv-root{max-width:880px;margin:0 auto;padding:20px 16px 48px}.cv-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.cv-header-brand{display:flex;align-items:center;gap:10px}.cv-brand-name{display:block;font-family:var(--font-display);font-weight:700;font-size:20px}.cv-brand-sub{display:block;font-size:13px;color:var(--text-muted)}.cv-header-greeting{display:flex;align-items:center;gap:12px;font-size:14px}.cv-signout-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-color);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.cv-loading{min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.cv-loading-paw{font-size:40px}.cv-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.cv-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.cv-section-title{font-size:22px;display:flex;align-items:center;gap:8px}.cv-live-badge{font-size:12px;font-weight:600;color:var(--success);display:inline-flex;align-items:center;gap:6px}.cv-live-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}.cv-pets-row{display:grid;gap:12px;margin-bottom:16px}.cv-pet-card{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px}.cv-pet-avatar{width:64px;height:64px;border-radius:50%;border:2px solid;overflow:hidden;display:grid;place-items:center;flex-shrink:0}.cv-pet-avatar img{width:100%;height:100%;object-fit:cover}.cv-pet-initial{font-family:var(--font-display);font-size:28px;font-weight:700}.cv-pet-name{font-size:22px}.cv-pet-last-status,.cv-pet-no-status{font-size:14px;color:var(--text-muted);margin-top:4px}.cv-pet-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.cv-pet-chip{border:1px solid var(--border-color);background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer}.cv-pet-chip.active{border-color:var(--primary);background:var(--primary-light)}.cv-onboard-copy,.cv-empty-hint{color:var(--text-muted);font-size:14px;margin-bottom:16px}.cv-pet-form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.cv-photo-picker{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);cursor:pointer}.cv-photo-preview{width:88px;height:88px;border-radius:50%;border:2px dashed var(--border-color);display:grid;place-items:center;overflow:hidden;background:var(--primary-light);font-size:28px}.cv-photo-preview img{width:100%;height:100%;object-fit:cover}.cv-pet-form-fields{flex:1;min-width:200px;display:flex;flex-direction:column;gap:8px}.cv-onboard-error{width:100%;color:var(--danger);font-size:13px}.cv-empty-state{text-align:center;padding:24px 8px;color:var(--text-muted)}.cv-empty-icon{font-size:32px;margin-bottom:8px}.cv-diary-day{margin-bottom:18px}.cv-diary-day-header{display:flex;justify-content:space-between;margin-bottom:10px;font-size:13px;color:var(--text-muted)}.cv-diary-entry{display:grid;grid-template-columns:16px 1fr;gap:12px;margin-bottom:12px}.cv-diary-dot{width:12px;height:12px;border-radius:50%;margin-top:6px}.cv-diary-entry-header{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}.cv-diary-pet-badge{font-size:12px;font-weight:600;border-radius:999px;padding:2px 8px}.cv-diary-status{display:flex;gap:8px;font-size:16px}.cv-booking-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px;margin-bottom:10px}.cv-booking-card--active{border-color:var(--success)}.cv-footer{text-align:center;color:var(--text-muted);font-size:13px;margin-top:24px}.cv-add-pet-wrap{margin:8px 0 16px}.form-hint{font-size:12px;color:var(--text-muted);margin-top:6px}.booking-tutor-box{padding:14px;border:1px dashed var(--border-focus);border-radius:var(--radius-md);background:var(--primary-light)}.booking-tutor-toggle{display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer}.booking-tutor-fields{margin-top:12px}.booking-tutor-row{display:flex;gap:8px}.booking-tutor-row .form-input{flex:1}@media(max-width:640px){.auth-role-grid{grid-template-columns:1fr}.cv-header{flex-direction:column;align-items:flex-start}}.home-tutor-band{max-width:1180px;margin:0 auto;padding:0 32px 56px}.home-tutor-band-card{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;padding:22px 24px;text-decoration:none;color:#86198f;background:radial-gradient(120% 140% at 0% 0%,#fdf2f8,#fae8ff 48%,#f3e8ff);border:1px solid #f0abfc;border-radius:24px;box-shadow:0 16px 32px #a855f724}.home-tutor-band-card:hover{transform:translateY(-2px);box-shadow:0 20px 36px #a855f733}.home-tutor-band-mark{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#fff;color:#c026d3;box-shadow:inset 0 0 0 1px #f5d0fe}.home-tutor-band-mark svg{width:28px;height:28px}.home-tutor-band-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.home-tutor-band-kicker{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a21caf}.home-tutor-band-copy strong{font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15;color:#86198f}.home-tutor-band-copy span:last-child{font-size:15px;line-height:1.45;color:#9d174d}.home-tutor-band-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:linear-gradient(135deg,#d946ef,#c026d3 40%,#e07aa0);color:#fff;font-weight:700;white-space:nowrap}.home-tutor-band-cta svg{width:18px;height:18px}.home-care-request{max-width:1180px;margin:0 auto;padding:0 32px 48px}.home-care-request-card{padding:32px;border-radius:var(--radius-xl);background:radial-gradient(120% 80% at 100% 0%,#fdf2f8,#fff 55%);border:1px solid #f5d0fe}.home-care-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pet-tutor-copy,.leads-intro{color:var(--text-muted);margin:0 0 12px}.pet-tutor-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0 0 12px;padding:0}.pet-tutor-list li{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pet-tutor-form{display:flex;gap:8px}.pet-tutor-form .form-input{flex:1}.shared-pets-heading{grid-column:1 / -1;margin:8px 0 0}.pet-shared-log{margin:0 0 8px}.leads-card{margin-bottom:16px}.lead-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px;margin-bottom:12px}.lead-card--new{border-color:var(--primary)}.lead-card-head,.lead-card-foot{display:flex;justify-content:space-between;gap:12px;align-items:center}.lead-card-head h3{margin:0}.lead-card-head p,.lead-message,.leads-empty{color:var(--text-muted)}.lead-status{font-size:12px;font-weight:700;text-transform:uppercase}.lead-actions{display:flex;gap:6px;flex-wrap:wrap}.cv-shared-edit{display:flex;flex-direction:column;gap:8px;margin-top:12px}@media(max-width:640px){.home-care-form .form-row,.pet-tutor-form,.lead-card-head,.lead-card-foot{display:flex;flex-direction:column;align-items:stretch}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}img,svg,video,canvas{max-width:100%}@media(max-width:768px){body{background-attachment:scroll;min-height:100dvh}.app-container{min-height:100dvh}input,select,textarea,.header-search input{font-size:16px!important}.btn,.nav-btn,.mobile-menu-btn,.mobile-navbar-action{min-height:44px}.btn:active,.nav-btn:active,.card:active{transform:scale(.98);transition:transform .08s ease}.top-header{background:#fffafce6;border-bottom:1px solid rgba(246,191,211,.45);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.main-content{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:calc(24px + env(safe-area-inset-bottom))}.card{border-radius:var(--radius-lg);box-shadow:0 2px 12px #e88aab14}.main-content h1{font-size:22px;line-height:1.2}.main-content h2{font-size:18px}.main-content h3{font-size:16px}.bookings-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.modal-backdrop{width:100%;height:100dvh;align-items:flex-end}.modal-card,.auth-modal-card{margin:0;max-width:100%;max-height:92dvh;border-radius:24px 24px 0 0;border-bottom:none;padding:28px 20px calc(20px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1)}.modal-card:before{content:"";position:absolute;top:10px;left:50%;width:40px;height:5px;margin-left:-20px;border-radius:999px;background:#4a35302e}.modal-card{position:relative}.modal-backdrop.active .modal-card{transform:translateY(0)}.modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.toast-container{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}.home-navbar{padding-top:max(12px,env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.home-hero-title{font-size:clamp(30px,8.5vw,40px);line-height:1.12}}@media(max-width:380px){.home-navbar-actions .home-nav-login{display:none}.bookings-summary-grid{grid-template-columns:1fr}}@media(display-mode:standalone){body{user-select:none;-webkit-user-select:none}input,textarea,[contenteditable]{user-select:text;-webkit-user-select:text}}
