:root{color-scheme:light;font-family:Avenir Next,Avenir,Candara,Trebuchet MS,sans-serif;background:#f7fafb;color:#1f2a2e;--bg: #f7fafb;--surface: #ffffff;--ink: #2d3436;--muted: #6b7280;--primary: #4ecdc4;--primary-strong: #44b8ac;--danger: #ff6b6b;--accent: #ffb347;--violet: #a78bfa;--blue: #60a5fa;--shadow-soft: 0 18px 35px rgba(45, 52, 54, .08);--shadow-card: 0 10px 22px rgba(45, 52, 54, .08);--radius-xl: 24px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,rgba(78,205,196,.18),transparent 45%),radial-gradient(circle at 30% 20%,rgba(255,179,71,.16),transparent 40%),#f7fafb}html[dir=rtl] body{direction:rtl}html[dir=rtl] .page{text-align:right}html[dir=rtl] .hero-top,html[dir=rtl] .profile-hero,html[dir=rtl] .provider-item,html[dir=rtl] .schedule-item,html[dir=rtl] .appointment-header,html[dir=rtl] .chat-item,html[dir=rtl] .provider-hero{flex-direction:row-reverse}html[dir=rtl] .schedule-time{text-align:right}html[dir=rtl] .appointment-meta,html[dir=rtl] .provider-meta,html[dir=rtl] .provider-top,html[dir=rtl] .hero-actions,html[dir=rtl] .modal-actions{justify-content:flex-end}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:transparent;padding-bottom:96px}.app-header{position:sticky;top:0;z-index:10;padding:18px 20px 10px;background:#f7fafbeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 18px #2d34360f}.header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.header-actions{display:flex;align-items:center;gap:10px}.icon-btn{width:42px;height:42px;border-radius:999px;border:none;background:#fff;box-shadow:0 6px 16px #2d34361f;display:grid;place-items:center;font-weight:700;color:var(--ink);position:relative;font-size:18px}.icon-dot{position:absolute;top:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:var(--danger);border:2px solid #f7fafb}.brand-stack{text-align:center}.brand{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:.2px}.brand-sub{font-size:12px;color:var(--muted)}.avatar{width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,#4ecdc4,#a78bfa);color:#fff;display:grid;place-items:center;font-weight:700}.nav-strip{display:flex;gap:10px;overflow-x:auto;padding:6px 20px 14px}.main-nav{display:flex;gap:10px;align-items:center}.nav-link{padding:8px 14px;border-radius:999px;background:#fff;border:1px solid rgba(45,52,54,.08);font-size:13px;color:#4b5563;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.nav-label{display:inline-flex;align-items:center;gap:6px}.nav-badge{min-width:18px;height:18px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 4px}.nav-link-active{background:#4ecdc429;border-color:#4ecdc466;color:#0f766e;font-weight:600}.app-content{flex:1;padding:12px 20px 0}.page{max-width:1024px;margin:0 auto;display:flex;flex-direction:column;gap:18px;animation:page-in .6s ease both}.home-page{max-width:880px}.home-page .page-header,.home-page .section-header{flex-direction:column;align-items:center;text-align:center}.home-page .service-grid{grid-template-columns:repeat(3,180px);justify-content:center;justify-items:center}.home-page .service-button{width:180px}@keyframes page-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-header h1{margin:0 0 6px;font-size:30px;color:var(--ink)}.page-header p,.section-header h2{margin:0}.page-header.compact{display:flex;align-items:center;justify-content:space-between;gap:12px}.muted{color:var(--muted)}.section{display:flex;flex-direction:column;gap:12px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{background:var(--surface);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05);display:flex;flex-direction:column;gap:12px}.stat{font-size:28px;margin:0}.list{display:flex;flex-direction:column;gap:12px;list-style:none;padding:0;margin:0}.list-item{background:#fff;border-radius:var(--radius-md);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 8px 18px #2d34360f}.field{display:flex;flex-direction:column;gap:6px}.label{font-weight:600;font-size:14px;color:#334155}.input{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:14px;background:#f9fafb}.input[type=file]{background:#fff;padding:8px}.input:focus{outline:2px solid rgba(78,205,196,.3);border-color:#4ecdc466}.primary{background:linear-gradient(135deg,#4ecdc4,#3fb7ac);color:#fff;border:none;border-radius:12px;padding:10px 18px;font-weight:600;cursor:pointer;box-shadow:0 10px 16px #4ecdc44d;display:inline-flex;align-items:center;justify-content:center;gap:6px}.secondary{background:#f1f5f9;color:#1f2a2e;border:none;border-radius:12px;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.ghost-link{color:#0f766e;font-weight:600}.success{color:#157f3d;font-weight:600}.tab-nav{position:fixed;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:12px;padding:10px 14px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;width:min(520px,92vw);margin:0 auto;box-shadow:0 14px 30px #2d34361f;border:1px solid rgba(45,52,54,.06)}.tab-link{padding:8px 16px;border-radius:999px;font-size:13px;color:#64748b}.tab-link-active{background:#4ecdc429;color:#0f766e;font-weight:600}.hero-card{background:radial-gradient(circle at top left,rgba(255,255,255,.25),transparent 45%),linear-gradient(135deg,#4ecdc4,#3fb7ac);color:#fff;padding:24px;border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2);text-align:center}.hero-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 70% 30%,rgba(255,255,255,.2),transparent 55%);opacity:.8;pointer-events:none}.hero-card:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:#ffffff29;top:-60px;right:-70px}.hero-top{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;z-index:1}.hero-info h2{margin:0;font-size:24px;letter-spacing:.2px}.hero-info p{margin:6px 0 0;color:#ffffffd1}.hero-stats{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;padding:12px;border-radius:18px;position:relative;z-index:1;width:min(560px,100%);margin-left:auto;margin-right:auto}.hero-stats>div{background:#ffffff29;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:10px 12px;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-alert{margin-top:14px;background:#ffffff2e;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:12px 14px;display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;color:#fff;position:relative;z-index:1;width:min(520px,100%);margin-left:auto;margin-right:auto;text-align:center}.hero-stats strong{display:block;font-size:17px}.hero-label{font-size:12px;color:#ffffffd1;text-transform:uppercase;letter-spacing:.6px}.avatar-lg{width:min(260px,70vw);aspect-ratio:16 / 10;height:auto;border-radius:24px;border:4px solid rgba(255,255,255,.45);object-fit:cover;display:block;box-shadow:0 8px 18px #0f172a26}.avatar-sm{width:42px;height:42px;border-radius:50%;object-fit:cover}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.service-button{border-radius:18px;border:1px solid transparent;padding:14px;background:#fff;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.service-button:hover{transform:translateY(-2px);box-shadow:0 12px 22px #2d34361f}.service-icon{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:#fff;overflow:hidden;border:3px solid rgba(255,255,255,.95);box-shadow:0 8px 18px #2d34361f}.service-icon-img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.12)}.service-label{font-weight:600;color:var(--ink)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:16px}.shop-card{background:#fff;border-radius:20px;padding:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.shop-image{width:100%;aspect-ratio:1 / 1;border-radius:16px;object-fit:cover;background:#f7f0e6}.shop-card-body{display:flex;flex-direction:column;gap:6px}.shop-price{font-weight:700;color:#0f766e}.shop-actions{display:flex;gap:8px;flex-wrap:wrap}.shop-manager-card{margin-bottom:20px}.shop-manager-header{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.shop-form{display:flex;flex-direction:column;gap:12px}.shop-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.shop-image-field{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center}.shop-image-preview{width:120px;height:120px;border-radius:16px;object-fit:cover;border:1px solid #e2e8f0}.shop-image-placeholder{width:120px;height:120px;border-radius:16px;border:1px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;padding:8px;font-size:12px;color:#94a3b8;text-align:center}.explore-grid{align-items:stretch}.explore-card{gap:10px}.explore-image{width:100%;aspect-ratio:16 / 9;border-radius:16px;object-fit:cover;background:#f7f0e6}.explore-admin-grid{margin-top:12px}.explore-admin-card{gap:12px}.explore-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.explore-admin-meta h3{margin:6px 0 0}.explore-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.explore-image-field{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:center}.explore-image-preview{width:140px;height:110px;border-radius:16px;object-fit:cover;border:1px solid #e2e8f0}.explore-image-placeholder{width:140px;height:110px;border-radius:16px;border:1px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;padding:8px;font-size:12px;color:#94a3b8;text-align:center}.explore-image-controls{display:flex;flex-direction:column;gap:8px}.explore-inactive{opacity:.7}.shop-orders{margin-top:20px}.shop-order-item{gap:12px}.shop-order-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.shop-order-buttons{display:flex;gap:8px;flex-wrap:wrap}.dog-feed{margin-top:20px}.dog-feed-header{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.view-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:#fff;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.08)}.view-toggle-btn{border:none;background:transparent;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;color:#64748b;cursor:pointer}.view-toggle-btn.active{background:#4ecdc433;color:#0f766e}.dog-post-form-grid{display:grid;grid-template-columns:minmax(200px,280px) 1fr;gap:16px}.dog-post-image-input{display:flex;flex-direction:column;gap:10px}.dog-post-image-input img,.dog-post-image-input video{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:16px;border:1px solid #e2e8f0}.dog-post-media-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:#fff;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.08)}.dog-post-media-actions{display:flex;gap:8px;flex-wrap:wrap}.dog-post-placeholder{width:100%;aspect-ratio:1 / 1;border-radius:16px;border:1px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;text-align:center;color:#94a3b8;padding:12px}.dog-post-list{display:grid;gap:16px;margin-top:16px}.dog-post-list.view-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.dog-post-list.view-grid .dog-post-card{height:100%}.dog-post-list.view-grid .dog-post-image{max-height:240px}.dog-post-list.view-compact .dog-post-card{padding:12px;gap:10px}.dog-post-list.view-compact .dog-post-image{max-height:220px}.dog-post-list.view-compact .dog-post-comments{display:none}.dog-post-list.view-compact .dog-post-actions{flex-wrap:wrap}.dog-post-card{background:#fff;border-radius:20px;padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.dog-post-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dog-post-image{width:100%;max-height:420px;object-fit:cover;border-radius:18px;display:block}.dog-post-caption{margin:0;color:#1f2a2e;font-weight:500}.dog-post-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.dog-post-comments{display:grid;gap:8px}.dog-comment{display:flex;gap:8px;align-items:baseline;font-size:13px}.dog-comment strong{font-weight:600}.dog-comment-form{display:grid;grid-template-columns:1fr auto;gap:8px}@media (max-width: 720px){.dog-post-form-grid,.explore-image-field{grid-template-columns:1fr}.explore-image-preview,.explore-image-placeholder{width:100%;height:160px}}.follow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:12px}.follow-card{background:#fff;border-radius:18px;padding:12px;box-shadow:var(--shadow-card);display:flex;align-items:center;gap:12px;justify-content:space-between}.follow-card strong{display:block}.follow-owner{display:flex;align-items:center;gap:12px;justify-content:space-between}.follow-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.paw-icon{width:28px;height:28px}.walk-cta{display:flex;align-items:center;gap:16px;padding:16px;border-radius:20px;background:linear-gradient(135deg,#4ecdc42e,#ffb34729);border:1px solid rgba(78,205,196,.35);box-shadow:var(--shadow-soft)}.walk-cta-icon{width:56px;height:56px;border-radius:18px;background:#fff;box-shadow:var(--shadow-card);display:grid;place-items:center;color:#0f766e}.walk-cta-img{width:34px;height:34px;object-fit:contain}.walk-cta-body h3{margin:0 0 4px}.walk-cta-body p{margin:0}.walk-cta-actions{margin-left:auto}.walk-hero{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:18px;background:#fff;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05)}.walk-hero-icon{width:44px;height:44px;border-radius:14px;background:#4ecdc429;color:#0f766e;display:grid;place-items:center}.walk-card{background:#fff;border-radius:20px;padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.walk-camera{width:100%;min-height:240px;border-radius:18px;overflow:hidden;border:1px dashed #cbd5e1;background:#f8fafc;display:grid;place-items:center}.walk-camera video,.walk-camera img{width:100%;height:100%;object-fit:cover}.walk-camera-placeholder{text-align:center;padding:24px}.walk-permission-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.walk-status-row{display:flex;gap:8px;flex-wrap:wrap}.walk-location{display:flex;flex-direction:column;gap:4px}.walk-nav{display:flex;justify-content:flex-end;gap:10px}.walk-progress{height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.walk-progress-bar{height:100%;background:linear-gradient(90deg,#4ecdc4,#ffb347);transition:width .2s ease}.walk-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.walk-metric{background:#f8fafc;border-radius:16px;padding:12px;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:4px}.walk-metric strong{font-size:20px}.walk-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.walk-summary-photo{width:min(260px,100%);border-radius:18px;border:1px solid #e2e8f0;object-fit:cover}.walk-summary-actions{display:flex;gap:10px;flex-wrap:wrap}.walk-note{background:#fff5eb;border-radius:16px;padding:12px;border:1px solid rgba(255,179,71,.4)}@media (max-width: 720px){.walk-cta{flex-direction:column;align-items:flex-start}.walk-cta-actions,.walk-cta-actions .primary{width:100%}}.scroll-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px}.appointment-card{min-width:240px;background:#fff;border-radius:18px;padding:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:10px}.appointment-card.dashed{border:2px dashed rgba(78,205,196,.4);background:#f0f9f8;align-items:center;justify-content:center}.appointment-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.appointment-meta{display:flex;justify-content:space-between;color:#64748b;font-size:12px}.add-card{display:flex;flex-direction:column;align-items:center;gap:8px;color:#0f766e;font-weight:600}.add-icon{width:44px;height:44px;border-radius:14px;background:#4ecdc433;display:grid;place-items:center;font-size:20px}.provider-card{min-width:160px;background:#fff;border-radius:18px;padding:12px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:8px}.provider-image{width:100%;height:110px;border-radius:14px;object-fit:cover}.provider-footer{display:flex;align-items:center;justify-content:space-between;font-size:12px}.price{color:#0f766e;font-weight:600}.rating{color:#ffb347;font-weight:600}.premium-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#a78bfa2e,#60a5fa2e);border:1px solid rgba(167,139,250,.4)}.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#4ecdc433;color:#0f766e;font-size:12px;font-weight:600}.search-card{background:#fff;border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.search-input{border:none;background:#f1f5f9;border-radius:14px;padding:12px 14px;font-size:15px}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:6px 12px;border-radius:999px;background:#f1f5f9;border:1px solid transparent;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.chip.active{background:#4ecdc429;border-color:#4ecdc480;color:#0f766e;font-weight:600}.provider-list{display:flex;flex-direction:column;gap:14px}.provider-item{background:#fff;border-radius:var(--radius-lg);padding:14px;box-shadow:var(--shadow-card);display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.provider-avatar{width:72px;height:72px;border-radius:18px;object-fit:cover}.provider-content h3{margin:4px 0;font-size:16px}.provider-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.status-badge{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600}.status-badge.available{background:#22c55e2e;color:#166534}.status-badge.busy{background:#f8717129;color:#b91c1c}.provider-meta{display:flex;gap:10px;font-size:12px;color:#64748b}.provider-actions{display:flex;gap:8px;margin-top:10px}.detail-hero{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:18px;background:#fff;border-radius:var(--radius-xl);padding:18px;box-shadow:var(--shadow-soft)}.detail-media{border-radius:18px;overflow:hidden;height:220px}.detail-media img{width:100%;height:100%;object-fit:cover}.detail-body h1{margin:0 0 6px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.detail-stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.stat-pill{background:#f1f5f9;padding:6px 12px;border-radius:999px;font-size:12px;color:#475569}.profile-hero{display:flex;gap:16px;align-items:center;background:#fff;padding:18px;border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.profile-hero img{width:88px;height:88px;border-radius:20px;object-fit:cover}.review-form{display:grid;gap:12px}.rating-input{display:flex;gap:8px;flex-wrap:wrap}.rating-star{width:36px;height:36px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;color:#f59e0b;font-size:18px;display:grid;place-items:center;cursor:pointer}.rating-star.active{background:#ffb34733;border-color:#ffb34780}.review-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-list{display:grid;gap:12px}.review-card{background:#fff;border-radius:18px;padding:14px 16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:10px}.review-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.review-user{display:flex;align-items:center;gap:10px}.review-rating{display:inline-flex;gap:2px;font-size:14px;color:#f59e0b}.review-rating .star{opacity:.35}.review-rating .star.active{opacity:1}.profile-dogs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.dog-card{background:#fff;border-radius:18px;padding:12px;box-shadow:var(--shadow-card);display:flex;gap:12px;align-items:center}.dog-card img{width:64px;height:64px;border-radius:16px;object-fit:cover}.tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#4ecdc429;color:#0f766e;font-size:11px;font-weight:600}.chat-list{display:flex;flex-direction:column;gap:12px}.chat-item{background:#fff;border-radius:18px;padding:14px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-card);border:none;width:100%;text-align:left;cursor:pointer;gap:12px}.chat-item.active{outline:2px solid rgba(78,205,196,.35)}.chat-item-main{display:flex;align-items:center;gap:12px}.chat-avatar{width:44px;height:44px;border-radius:14px;object-fit:cover}.chat-meta{display:flex;align-items:center;gap:12px}.chat-unread{width:22px;height:22px;border-radius:50%;background:var(--danger);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:700}.chat-compose{display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow-card)}.chat-compose-inline{margin-top:10px}.chat-layout{display:grid;gap:16px}@media (min-width: 960px){.chat-layout{grid-template-columns:320px 1fr;align-items:start}}.chat-panel{background:#fff;border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.chat-panel-header,.chat-thread-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-peer{display:flex;align-items:center;gap:12px}.chat-peer img{width:44px;height:44px;border-radius:14px;object-fit:cover}.chat-thread{display:flex;flex-direction:column;gap:12px;max-height:420px;overflow-y:auto;padding-right:4px}.chat-message{display:flex;flex-direction:column;gap:4px;max-width:72%}.chat-message.own{align-self:flex-end;text-align:right}.chat-bubble{background:#f1f5f9;padding:10px 12px;border-radius:16px}.chat-message.own .chat-bubble{background:var(--primary);color:#fff}.chat-time{font-size:11px;color:var(--muted)}.chat-input-row{display:flex;align-items:flex-end;gap:10px}.chat-input-row textarea{flex:1;resize:vertical;min-height:44px}.chat-empty{text-align:center;padding:24px}.form-grid{display:grid;gap:12px}.auth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.auth-card{background:#fff;padding:18px;border-radius:18px;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05)}.step-info{margin-bottom:12px}.step-info h2{margin:0 0 4px;font-size:22px}.step-info p{margin:0}.signup-steps{display:flex;gap:8px;justify-content:center;margin-bottom:12px}.signup-step{width:34px;height:34px;border-radius:999px;background:#e2e8f0;color:#64748b;display:grid;place-items:center;font-weight:700}.signup-step.active{background:#4ecdc433;color:#0f766e;border:2px solid rgba(78,205,196,.6)}.signup-step.done{background:#4ecdc4;color:#fff}.photo-picker{display:flex;flex-direction:column;align-items:center;gap:8px}.photo-circle{width:110px;height:110px;border-radius:999px;border:2px dashed #cbd5e1;background:#f8fafc;display:grid;place-items:center;cursor:pointer;overflow:hidden;padding:0}.photo-circle img{width:100%;height:100%;object-fit:cover}.photo-plus{font-size:38px;line-height:1;color:#94a3b8}.auth-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.suggestion-list{margin-top:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.suggestion-item{padding:8px 12px;border:none;background:transparent;text-align:left;cursor:pointer}.suggestion-item:hover{background:#f1f5f9}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:14px;color:#475569}.checkbox-text{display:flex;flex-direction:column;gap:2px}.toggle-row{align-items:flex-start}.checkbox-row input{width:16px;height:16px}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.provider-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.provider-type-card{padding:14px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer}.provider-type-card.active{border-color:#4ecdc499;box-shadow:0 8px 18px #4ecdc433}.chip-stack{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.chip-sub{font-size:10px;color:#64748b}.info-card,.success-card{background:#fff5eb;border-radius:16px;padding:14px;border:1px solid rgba(255,179,71,.4);display:flex;flex-direction:column;gap:6px}.success-card{background:linear-gradient(135deg,#e8f5e9e6,#c8e6c9e6);border-color:#4caf5066}.provider-section{display:flex;flex-direction:column;gap:8px}.lead-card{background:#fff;border-radius:18px;padding:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:10px}.lead-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.lead-meta{display:flex;flex-wrap:wrap;gap:8px 12px;color:#64748b;font-size:12px}.lead-actions{display:flex;gap:8px;justify-content:flex-end}.lead-session-note{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:#4ecdc41f;border:1px solid rgba(78,205,196,.24);flex-wrap:wrap}.lead-payment-card,.lead-recommendation-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:10px}.lead-payment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.lead-payment-head p{margin:4px 0 0}.lead-payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.lead-payment-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.status-pill{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize}.status-new,.status-pending{background:#ffb34733;color:#b45309}.status-accepted{background:#4ecdc433;color:#0f766e}.status-rejected{background:#ff6b6b33;color:#b91c1c}.status-cancelled{background:#94a3b840;color:#475569}.status-closed{background:#94a3b833;color:#475569}.feature-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.feature-item{background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:8px}.pricing-card{background:linear-gradient(135deg,#4ecdc433,#60a5fa33);border-radius:20px;padding:18px;border:1px solid rgba(78,205,196,.3);display:flex;flex-direction:column;gap:12px}.pricing-amount{font-size:32px;font-weight:800;color:var(--ink)}.notification-list{display:flex;flex-direction:column;gap:10px}.notification-item{background:#fff;border-radius:16px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-card)}.notification-dot{width:10px;height:10px;border-radius:50%;background:var(--primary)}.form-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.provider-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.hero-actions .secondary{padding:6px 10px;font-size:12px;border-radius:999px}.hero-card .hero-actions{justify-content:center;width:100%;margin-top:16px}.hero-card .hero-actions .secondary{background:#ffffffeb;color:#0f766e;border:1px solid rgba(255,255,255,.65);font-weight:600;box-shadow:0 8px 16px #0f172a1f;transition:transform .2s ease,box-shadow .2s ease}.hero-card .hero-actions .secondary:hover{transform:translateY(-1px)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.metric-card{background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05)}.metric-value{display:block;font-size:26px;font-weight:700;margin-top:6px;color:var(--ink)}.calendar-section .section-header{align-items:baseline}.calendar-header span{background:#4ecdc42e;color:#0f766e;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.calendar-panel{background:linear-gradient(135deg,#4ecdc429,#60a5fa1f);border-radius:24px;padding:16px;border:1px solid rgba(78,205,196,.18);box-shadow:var(--shadow-soft)}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{background:#fff;border-radius:20px;padding:14px 16px;display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05);position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.schedule-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(78,205,196,.08),transparent 45%);opacity:0;transition:opacity .2s ease;pointer-events:none}.schedule-item:hover{transform:translateY(-2px);box-shadow:0 14px 26px #2d34361f}.schedule-item:hover:after{opacity:1}.schedule-time{background:linear-gradient(135deg,#4ecdc433,#ffb34733);border-radius:16px;padding:10px;display:flex;flex-direction:column;gap:4px;text-align:left;color:#0f766e;font-weight:700;font-size:13px}.schedule-date{font-size:15px}.schedule-clock{font-size:12px;font-weight:600;color:#1f7a72}.schedule-body{display:flex;flex-direction:column;gap:4px}.schedule-body strong{font-size:16px;color:var(--ink)}.schedule-status{display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:8px}.schedule-meta{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:12px;color:#64748b}.schedule-actions{display:flex;flex-direction:column;gap:6px;width:100%}.schedule-edit-btn{font-size:12px;padding:6px 10px}.schedule-edit{grid-column:1 / -1;margin-top:8px;padding-top:12px;border-top:1px dashed rgba(148,163,184,.5);display:grid;gap:10px}.schedule-session-panel,.schedule-review-panel,.schedule-review-summary{grid-column:1 / -1;border-radius:16px;padding:12px;border:1px solid #e2e8f0;background:#f8fafc;display:grid;gap:10px}.schedule-session-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.schedule-payment-card{display:grid;gap:10px}.schedule-payment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.schedule-payment-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.schedule-review-panel .rating-input{margin-top:2px}.schedule-edit-actions{display:flex;gap:10px;justify-content:flex-end}.reminder-pill{background:#ffb34733;color:#b45309;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600}.calendar-page .page-header,.calendar-metrics{margin-bottom:12px}.calendar-alert{background:#4ecdc42e;border-radius:18px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(78,205,196,.28);margin-bottom:12px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.calendar-view-toggle{display:inline-flex;align-items:center;gap:6px;background:#fff;padding:6px;border-radius:999px;box-shadow:var(--shadow-card)}.calendar-toggle{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-weight:600;cursor:pointer;color:#334155}.calendar-toggle.active{background:linear-gradient(135deg,#4ecdc4e6,#3fb7ace6);color:#fff}.calendar-nav{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.calendar-nav-label{font-weight:600;color:var(--ink)}.calendar-provider{display:flex;flex-direction:column;gap:6px}.calendar-search{min-width:min(360px,100%)}.calendar-board{display:flex;flex-direction:column;gap:20px}.calendar-grid-wrapper{display:flex;flex-direction:column;gap:16px}.calendar-grid-panel{background:#fff;border-radius:24px;padding:12px;border:1px solid rgba(45,52,54,.05);box-shadow:var(--shadow-soft);overflow-x:auto}.calendar-requests{background:#fff;border-radius:20px;padding:14px;box-shadow:var(--shadow-card);border:1px solid rgba(45,52,54,.05)}.calendar-requests-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow-y:auto}.calendar-event{background:#f1f5f9;border-radius:12px;padding:8px 10px;border:1px solid rgba(78,205,196,.2);cursor:grab;display:flex;flex-direction:column;gap:4px}.calendar-event:active{cursor:grabbing}.event-title{font-weight:600;color:var(--ink);font-size:13px}.event-time{font-size:12px;color:var(--muted)}.calendar-drop-zone{margin-top:12px;border:2px dashed #cbd5e1;border-radius:16px;padding:12px;text-align:center;color:#64748b;font-weight:600;background:#f8fafc}.week-grid{display:grid;grid-template-columns:72px repeat(7,minmax(120px,1fr));gap:0;overflow-x:auto;min-width:900px}.week-corner{background:#f8fafc;border-bottom:1px solid #e2e8f0}.week-day-head{background:#f8fafc;padding:10px 8px;text-align:center;font-weight:600;border-bottom:1px solid #e2e8f0;border-left:1px solid #e2e8f0}.week-time{padding:10px 8px;font-size:12px;color:var(--muted);border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff}.week-slot{min-height:80px;padding:8px;border-bottom:1px solid #e2e8f0;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;gap:6px;background:#fff}.week-slot.is-hover{background:#4ecdc414}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;min-width:900px}.month-cell{background:#fff;border-radius:16px;padding:10px;min-height:120px;border:1px solid rgba(45,52,54,.06);display:flex;flex-direction:column;gap:8px}.month-cell.is-outside{opacity:.55}.month-cell.is-today{border-color:#4ecdc480;box-shadow:0 8px 18px #4ecdc42e}.month-cell.is-hover{background:#4ecdc414}.month-day{font-weight:700;color:var(--ink);font-size:14px}.month-events{display:flex;flex-direction:column;gap:6px}.month-event{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:10px;background:#f8fafc;border:1px solid rgba(148,163,184,.25);font-size:12px;cursor:grab}.month-more{font-size:12px;color:#64748b}.calendar-edit-card{margin-top:4px}@media (max-width: 720px){.schedule-item{grid-template-columns:1fr;align-items:flex-start}.schedule-status{justify-content:flex-start;align-items:flex-start}.schedule-edit-actions{justify-content:flex-start}.schedule-actions{flex-direction:row;flex-wrap:wrap}}.empty-state{background:#fff;border-radius:24px;padding:32px;box-shadow:var(--shadow-soft);text-align:center}.empty-title{font-size:40px;margin:0 0 6px;color:var(--ink)}.empty-subtitle{margin:0 0 18px;color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:30}.modal{background:#fff;border-radius:20px;padding:22px;width:min(420px,90vw);max-height:88vh;overflow-y:auto;box-shadow:0 30px 60px #0f172a40}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.profile-image-preview{margin-top:10px;width:120px;height:120px;border-radius:16px;object-fit:cover;box-shadow:var(--shadow-card)}.dog-photo-picker{display:flex;flex-direction:column;align-items:center;gap:8px}.dog-photo-circle{width:124px;height:124px;border-radius:999px;border:2px dashed #cbd5e1;background:#f8fafc;display:grid;place-items:center;cursor:pointer;overflow:hidden;padding:0}.dog-photo-circle img{width:100%;height:100%;object-fit:cover}.dog-photo-plus{font-size:44px;line-height:1;color:#94a3b8}.dog-photo-action{padding:6px 14px}.hidden-file-input{display:none}@media (max-width: 900px){.detail-hero{grid-template-columns:1fr}}@media (max-width: 720px){.nav-strip{padding-bottom:8px}.page-header h1{font-size:24px}.hero-card:after{width:120px;height:120px}.app-shell{padding-bottom:110px}}@media (max-width: 600px){.provider-item{grid-template-columns:1fr}.provider-avatar{width:100%;height:180px}}.danger{background:#ff6b6b26;color:#b91c1c;border:none;border-radius:12px;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.admin-user-row{align-items:flex-start;gap:12px}.admin-edit-grid{display:grid;gap:10px;width:100%}.admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.theme-toggle{font-size:11px;letter-spacing:.5px}.theme-toggle-active{background:#4ecdc433;color:#0f766e;border:1px solid rgba(78,205,196,.35)}:root[data-theme=dark]{color-scheme:dark;--bg: #091115;--surface: #121c21;--ink: #e5f1f3;--muted: #96a9b1;--primary: #59d6ce;--primary-strong: #43bfb5;--shadow-soft: 0 18px 35px rgba(0, 0, 0, .34);--shadow-card: 0 10px 22px rgba(0, 0, 0, .28)}:root[data-theme=dark] body{background:radial-gradient(circle at top left,rgba(78,205,196,.12),transparent 45%),radial-gradient(circle at 30% 20%,rgba(255,179,71,.08),transparent 40%),#091115;color:var(--ink)}:root[data-theme=dark] .app-header{background:#091115e6;box-shadow:0 8px 18px #00000038}:root[data-theme=dark] .brand{color:var(--ink)}:root[data-theme=dark] .brand-sub,:root[data-theme=dark] .muted{color:var(--muted)}:root[data-theme=dark] .avatar{box-shadow:0 8px 16px #00000040}:root[data-theme=dark] .icon-btn{background:#142027;color:#e7f2f4;box-shadow:0 6px 16px #00000047;border:1px solid rgba(148,163,184,.14)}:root[data-theme=dark] .theme-toggle-active{background:#4ecdc438;color:#87f3eb;border-color:#4ecdc466}:root[data-theme=dark] .icon-dot{border-color:#091115}:root[data-theme=dark] .nav-link,:root[data-theme=dark] .tab-nav,:root[data-theme=dark] .calendar-view-toggle,:root[data-theme=dark] .view-toggle,:root[data-theme=dark] .dog-post-media-toggle,:root[data-theme=dark] .chat-item,:root[data-theme=dark] .chat-panel,:root[data-theme=dark] .chat-compose{background:#121c21;border-color:#94a3b824;color:var(--ink)}:root[data-theme=dark] .tab-nav{background:#121c21e0;box-shadow:0 14px 30px #0000004d}:root[data-theme=dark] .nav-link{color:#b8c7cc}:root[data-theme=dark] .nav-link-active,:root[data-theme=dark] .tab-link-active,:root[data-theme=dark] .view-toggle-btn.active,:root[data-theme=dark] .calendar-toggle.active{background:#4ecdc433;border-color:#4ecdc45c;color:#8ef3ec}:root[data-theme=dark] .tab-link,:root[data-theme=dark] .view-toggle-btn,:root[data-theme=dark] .calendar-toggle{color:#a6b7bd}:root[data-theme=dark] .secondary{background:#18242b;color:var(--ink);border:1px solid rgba(148,163,184,.14)}:root[data-theme=dark] .secondary:hover{background:#1c2a31}:root[data-theme=dark] .ghost-link{color:#7debe2}:root[data-theme=dark] .input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#0f171b;color:var(--ink);border-color:#25343b}:root[data-theme=dark] .input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#7c8e95}:root[data-theme=dark] .label,:root[data-theme=dark] .checkbox-row{color:#c8d6db}:root[data-theme=dark] .card,:root[data-theme=dark] .list-item,:root[data-theme=dark] .service-button,:root[data-theme=dark] .shop-card,:root[data-theme=dark] .appointment-card,:root[data-theme=dark] .provider-card,:root[data-theme=dark] .follow-card,:root[data-theme=dark] .walk-hero,:root[data-theme=dark] .walk-card,:root[data-theme=dark] .walk-metric,:root[data-theme=dark] .dog-post-card,:root[data-theme=dark] .review-card,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .lead-card,:root[data-theme=dark] .metric-card,:root[data-theme=dark] .notification-item,:root[data-theme=dark] .dog-card,:root[data-theme=dark] .provider-type-card,:root[data-theme=dark] .calendar-grid-panel,:root[data-theme=dark] .calendar-requests,:root[data-theme=dark] .empty-state,:root[data-theme=dark] .modal,:root[data-theme=dark] .lead-payment-card,:root[data-theme=dark] .lead-recommendation-card,:root[data-theme=dark] .schedule-session-panel,:root[data-theme=dark] .schedule-review-panel,:root[data-theme=dark] .schedule-review-summary,:root[data-theme=dark] .chat-item,:root[data-theme=dark] .chat-panel,:root[data-theme=dark] .chat-compose,:root[data-theme=dark] .chat-compose-inline,:root[data-theme=dark] .week-time,:root[data-theme=dark] .week-day-head,:root[data-theme=dark] .week-corner,:root[data-theme=dark] .week-slot,:root[data-theme=dark] .month-cell,:root[data-theme=dark] .month-event,:root[data-theme=dark] .calendar-event,:root[data-theme=dark] .calendar-drop-zone{background:#121c21;color:var(--ink);border-color:#94a3b824;box-shadow:0 10px 22px #00000038}:root[data-theme=dark] .lead-session-note{background:#4ecdc41a;border-color:#4ecdc433}:root[data-theme=dark] .appointment-card.dashed{background:#4ecdc414;border-color:#4ecdc440}:root[data-theme=dark] .walk-camera,:root[data-theme=dark] .dog-post-placeholder,:root[data-theme=dark] .photo-circle,:root[data-theme=dark] .dog-photo-circle,:root[data-theme=dark] .shop-image-placeholder,:root[data-theme=dark] .explore-image-placeholder{background:#0f171b;border-color:#2a3b43;color:#8ca0a8}:root[data-theme=dark] .service-icon{border-color:#ffffff2e;box-shadow:0 8px 18px #0000003d}:root[data-theme=dark] .chat-bubble{background:#1b2830;color:#d9e8eb}:root[data-theme=dark] .chat-message.own .chat-bubble{background:linear-gradient(135deg,#35b5aa,#2f8fa9);color:#fff}:root[data-theme=dark] .chat-time{color:#8ea0a8}:root[data-theme=dark] .calendar-panel,:root[data-theme=dark] .calendar-alert{border-color:#4ecdc433;box-shadow:0 10px 24px #00000038}:root[data-theme=dark] .week-slot.is-hover,:root[data-theme=dark] .month-cell.is-hover{background:#4ecdc41f}:root[data-theme=dark] .month-cell.is-today{border-color:#4ecdc466;box-shadow:0 8px 18px #4ecdc41f}:root[data-theme=dark] .schedule-time,:root[data-theme=dark] .tag{color:#9cf6ef}:root[data-theme=dark] .schedule-meta,:root[data-theme=dark] .month-more,:root[data-theme=dark] .chip-sub{color:#8fa2aa}:root[data-theme=dark] .suggestion-list{background:#121c21;border-color:#25343b}:root[data-theme=dark] .suggestion-item{color:var(--ink)}:root[data-theme=dark] .suggestion-item:hover{background:#1a262d}:root[data-theme=dark] .rating-star{background:#18242b;border-color:#94a3b824}
