.toast-container[data-v-df28dc5c]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast[data-v-df28dc5c]{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;width:320px;box-shadow:0 4px 20px #00000026;color:#fff;font-size:14px;animation:slideIn .3s ease}.toast--success[data-v-df28dc5c]{background:#22c55e}.toast--error[data-v-df28dc5c]{background:#ef4444}.toast--info[data-v-df28dc5c]{background:#3b82f6}.toast--warning[data-v-df28dc5c]{background:#f59e0b}.toast-icon[data-v-df28dc5c]{font-weight:700;font-size:16px;flex-shrink:0}.toast-message[data-v-df28dc5c]{flex:1;word-break:break-word}.toast-close[data-v-df28dc5c]{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;margin-left:8px;flex-shrink:0;line-height:1;transition:opacity .2s}.toast-close[data-v-df28dc5c]:hover{opacity:.7}.toast-enter-active[data-v-df28dc5c],.toast-leave-active[data-v-df28dc5c]{transition:all .3s ease}.toast-enter-from[data-v-df28dc5c],.toast-leave-to[data-v-df28dc5c]{opacity:0;transform:translate(100%)}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .3s ease}.slide-enter-from{opacity:0;transform:translate(20px)}.slide-leave-to{opacity:0;transform:translate(-20px)}.site-header[data-v-ecdc9c85]{position:relative}.hero-banner[data-v-ecdc9c85]{position:relative;width:100%;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 20% 80%,rgba(255,182,142,.5) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(255,138,99,.4) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(255,107,53,.3) 0%,transparent 60%),linear-gradient(135deg,#ff8a63,#ff6b35,#e85520 60%,#ff9a76)}.hero-banner[data-v-ecdc9c85]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(to bottom,transparent,var(--surface-strong, #fff));pointer-events:none;z-index:3}.hero-decor[data-v-ecdc9c85]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.hero-banner .paw[data-v-ecdc9c85]{position:absolute}.hero-banner .paw-1[data-v-ecdc9c85]{width:50px;top:10%;left:5%;transform:rotate(-20deg)}.hero-banner .paw-2[data-v-ecdc9c85]{width:32px;top:55%;left:10%;transform:rotate(15deg)}.hero-banner .paw-3[data-v-ecdc9c85]{width:40px;top:12%;right:8%;transform:rotate(25deg)}.hero-banner .paw-4[data-v-ecdc9c85]{width:30px;bottom:20%;right:6%;transform:rotate(-10deg)}.hero-banner .pet-face[data-v-ecdc9c85]{position:absolute}.hero-banner .cat-face[data-v-ecdc9c85]{width:60px;bottom:14%;left:3%;opacity:.7}.hero-banner .dog-face[data-v-ecdc9c85]{width:55px;bottom:12%;right:4%;opacity:.6}.hero-banner .heart[data-v-ecdc9c85]{position:absolute}.hero-banner .heart-1[data-v-ecdc9c85]{width:20px;top:28%;left:18%}.hero-banner .heart-2[data-v-ecdc9c85]{width:16px;top:38%;right:14%}.hero-banner .star[data-v-ecdc9c85]{position:absolute}.hero-banner .star-1[data-v-ecdc9c85]{width:14px;top:6%;left:40%}.hero-banner .star-2[data-v-ecdc9c85]{width:12px;bottom:28%;right:30%}.hero-banner .bone[data-v-ecdc9c85]{position:absolute}.hero-banner .bone-1[data-v-ecdc9c85]{width:36px;top:22%;right:20%;transform:rotate(12deg)}.hero-banner .fish[data-v-ecdc9c85]{position:absolute}.hero-banner .fish-1[data-v-ecdc9c85]{width:28px;bottom:30%;left:22%;transform:rotate(-8deg)}.hero-content[data-v-ecdc9c85]{position:relative;z-index:2;text-align:center;padding:20px 20px 16px}.hero-title[data-v-ecdc9c85]{font-size:clamp(24px,3.5vw,38px);font-weight:900;color:#fff;letter-spacing:.18em;margin:0 0 6px;text-shadow:0 2px 12px rgba(0,0,0,.15),0 0 40px rgba(255,255,255,.2)}.hero-subtitle[data-v-ecdc9c85]{font-size:clamp(12px,1.5vw,14px);color:#ffffffeb;font-weight:500;margin:0 0 6px;letter-spacing:.05em;text-shadow:0 1px 6px rgba(0,0,0,.12)}.hero-tagline[data-v-ecdc9c85]{font-size:clamp(11px,1.3vw,13px);color:#ffffffbf;font-weight:400;margin:0;text-shadow:0 1px 4px rgba(0,0,0,.1)}@media(max-width:768px){.hero-banner[data-v-ecdc9c85]{min-height:100px}.hero-content[data-v-ecdc9c85]{padding:14px 16px 12px}.hero-banner .cat-face[data-v-ecdc9c85],.hero-banner .dog-face[data-v-ecdc9c85],.hero-banner .bone[data-v-ecdc9c85],.hero-banner .fish[data-v-ecdc9c85]{display:none}.hero-banner .paw[data-v-ecdc9c85]{width:25px!important}}.bottom-tab-bar[data-v-044329b9]{display:none;position:fixed;bottom:0;left:0;right:0;height:calc(56px + env(safe-area-inset-bottom,0));background:var(--surface-strong);border-top:1px solid var(--border-color, #e8e0d8);padding:0 8px;padding-bottom:env(safe-area-inset-bottom,0);z-index:50;box-shadow:0 -1px 8px #0000000f;align-items:stretch;justify-content:space-around}@media(max-width:1100px){.bottom-tab-bar[data-v-044329b9]{display:flex}}@media(max-width:420px){.bottom-tab-bar[data-v-044329b9]{height:calc(54px + env(safe-area-inset-bottom,0));padding:0 4px}.tab-icon[data-v-044329b9]{width:20px;height:20px}.tab-label[data-v-044329b9]{font-size:10px}}.tab-item[data-v-044329b9]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;min-height:44px;text-decoration:none;color:var(--text-3, #999);cursor:pointer;transition:color .2s ease;-webkit-tap-highlight-color:transparent}.tab-item[data-v-044329b9]:hover,.tab-item--active[data-v-044329b9]{color:var(--primary-500, #ff6b35)}.tab-icon[data-v-044329b9]{width:22px;height:22px;flex-shrink:0}.tab-label[data-v-044329b9]{font-size:11px;font-weight:500;line-height:1}@media(prefers-reduced-motion:reduce){.tab-item[data-v-044329b9]{transition:none}}.sidenav[data-v-dd7ac4c1]{display:flex;flex-direction:column;gap:4px;padding-top:12px;height:100%}.user-mini[data-v-dd7ac4c1]{display:flex;align-items:center;gap:10px;padding:10px 12px 14px;border-bottom:1px solid var(--border-light);margin-bottom:4px}.user-avatar[data-v-dd7ac4c1]{width:38px;height:38px;border-radius:50%;background:var(--primary-100);color:var(--primary-700, #9a3610);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-info[data-v-dd7ac4c1]{min-width:0;flex:1}.user-name[data-v-dd7ac4c1]{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-link[data-v-dd7ac4c1]{font-size:12px;color:var(--text-tertiary);text-decoration:none;transition:color .18s}.user-link[data-v-dd7ac4c1]:hover{color:var(--primary-500)}.login-prompt[data-v-dd7ac4c1]{display:flex;gap:8px;padding:10px 12px 14px;border-bottom:1px solid var(--border-light);margin-bottom:4px}.login-btn[data-v-dd7ac4c1]{flex:1;padding:7px;background:var(--primary-500);color:#fff;border-radius:7px;text-decoration:none;font-size:13px;font-weight:600;text-align:center;transition:background .18s;cursor:pointer}.login-btn[data-v-dd7ac4c1]:hover{background:var(--primary-600)}.register-btn[data-v-dd7ac4c1]{flex:1;padding:7px;background:transparent;color:var(--text-primary);border:1px solid var(--border-light);border-radius:7px;text-decoration:none;font-size:13px;font-weight:600;text-align:center;transition:border-color .18s,color .18s;cursor:pointer}.register-btn[data-v-dd7ac4c1]:hover{border-color:var(--primary-300);color:var(--primary-600)}.search-entry[data-v-dd7ac4c1]{display:flex;align-items:center;gap:10px;padding:9px 12px;margin-bottom:4px;border-radius:8px;background:var(--bg-subtle);border:1px solid var(--border-light);text-decoration:none;color:var(--text-tertiary);font-size:13px;font-weight:400;transition:background .18s,border-color .18s,color .18s;cursor:pointer}.search-entry[data-v-dd7ac4c1]:hover{background:#fff;border-color:var(--border-medium, var(--border-light));color:var(--text-secondary)}.search-entry-text[data-v-dd7ac4c1]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-section[data-v-dd7ac4c1]{display:flex;flex-direction:column;gap:1px}.nav-item[data-v-dd7ac4c1]{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background .18s,color .18s;position:relative}.nav-item[data-v-dd7ac4c1]:hover{background:var(--bg-subtle);color:var(--text-primary)}.nav-item--active[data-v-dd7ac4c1]{background:var(--primary-50, #fff5f0);color:var(--primary-600);font-weight:700}.nav-icon[data-v-dd7ac4c1]{width:18px;height:18px;flex-shrink:0}.nav-label[data-v-dd7ac4c1]{flex:1}.nav-badge[data-v-dd7ac4c1]{background:var(--primary-500);color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:8px;min-width:16px;text-align:center}.pet-mini-card[data-v-dd7ac4c1]{margin-top:8px;padding:10px 12px;background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:10px}.pet-mini-head[data-v-dd7ac4c1]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.pet-mini-avatar[data-v-dd7ac4c1]{width:30px;height:30px;border-radius:50%;background:var(--primary-100);color:var(--primary-700);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pet-mini-info[data-v-dd7ac4c1]{min-width:0;flex:1}.pet-mini-name[data-v-dd7ac4c1]{font-size:13px;font-weight:600;color:var(--text-primary);margin:0 0 1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pet-mini-sub[data-v-dd7ac4c1]{font-size:11px;color:var(--text-tertiary);margin:0}.pet-mini-actions[data-v-dd7ac4c1]{display:flex;gap:6px}.pet-mini-btn[data-v-dd7ac4c1]{flex:1;padding:5px;background:var(--primary-500);color:#fff;border-radius:6px;text-decoration:none;font-size:12px;font-weight:600;text-align:center;transition:background .18s;cursor:pointer}.pet-mini-btn[data-v-dd7ac4c1]:hover{background:var(--primary-600)}.pet-mini-btn--outline[data-v-dd7ac4c1]{background:transparent;color:var(--text-primary);border:1px solid var(--border-light)}.pet-mini-btn--outline[data-v-dd7ac4c1]:hover{background:#fff;border-color:var(--border-medium, var(--border-light))}.add-pet-prompt[data-v-dd7ac4c1]{margin-top:8px}.add-pet-btn[data-v-dd7ac4c1]{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border:1px dashed var(--border-light);border-radius:8px;font-size:13px;color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:border-color .18s,color .18s,background .18s;background:transparent}.add-pet-btn[data-v-dd7ac4c1]:hover{border-color:var(--primary-300);color:var(--primary-600);background:var(--primary-50, #fff5f0)}.sidenav-footer[data-v-dd7ac4c1]{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:1px}.footer-item[data-v-dd7ac4c1]{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background .18s,color .18s;border:none;background:none;width:100%;text-align:left}.footer-item[data-v-dd7ac4c1]:hover{background:var(--bg-subtle);color:var(--text-primary)}.footer-item--danger[data-v-dd7ac4c1]{color:#dc2626}.footer-item--danger[data-v-dd7ac4c1]:hover{background:#fef2f2;color:#b91c1c}.footer-item--primary[data-v-dd7ac4c1]{color:var(--primary-600);font-weight:600}.footer-item--primary[data-v-dd7ac4c1]:hover{background:var(--primary-50, #fff5f0);color:var(--primary-700)}@media(max-width:768px){.sidenav[data-v-dd7ac4c1]{display:none!important}}.shell--fullscreen[data-v-496ae0d4],.shell--fullscreen .shell-body[data-v-496ae0d4],.shell--fullscreen .shell-main[data-v-496ae0d4]{padding:0!important}.shell--fullscreen .main-area[data-v-496ae0d4]{max-width:100vw!important;padding:0!important}.mobile-auth-gate[data-v-496ae0d4]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(170deg,#fffbf7,#fff7f0 40%,#fff);padding:var(--space-6) var(--space-4);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0))}.auth-gate-content[data-v-496ae0d4]{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:var(--space-6)}.auth-gate-brand[data-v-496ae0d4]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.brand-logo[data-v-496ae0d4]{width:88px;height:88px;border-radius:24px;background:linear-gradient(135deg,var(--primary-500),var(--primary-600));display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #ff6b3559;margin-bottom:var(--space-2)}.brand-icon[data-v-496ae0d4]{width:48px;height:48px;color:#fff}.brand-title[data-v-496ae0d4]{font-size:clamp(26px,6vw,32px);font-weight:900;color:var(--text-primary);margin:0;letter-spacing:-.02em}.brand-subtitle[data-v-496ae0d4]{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.5}.auth-gate-features[data-v-496ae0d4]{width:100%;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border-radius:16px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.feature-item[data-v-496ae0d4]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-subtle);border-radius:12px;transition:transform .2s ease}.feature-item[data-v-496ae0d4]:hover{transform:translate(4px)}.feature-icon[data-v-496ae0d4]{font-size:24px;line-height:1;flex-shrink:0}.feature-text[data-v-496ae0d4]{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.auth-gate-actions[data-v-496ae0d4]{width:100%;display:flex;flex-direction:column;gap:var(--space-3)}.btn-auth[data-v-496ae0d4]{display:flex;align-items:center;justify-content:center;width:100%;padding:14px 24px;border-radius:14px;font-size:var(--text-base);font-weight:700;text-decoration:none;text-align:center;transition:all .25s cubic-bezier(.34,1.56,.64,1);cursor:pointer;border:none;position:relative;overflow:hidden}.btn-auth--primary[data-v-496ae0d4]{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:#fff;box-shadow:0 4px 16px #ff6b3559}.btn-auth--primary[data-v-496ae0d4]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #ff6b3573}.btn-auth--primary[data-v-496ae0d4]:active{transform:translateY(0);box-shadow:0 4px 16px #ff6b3559}.btn-auth--secondary[data-v-496ae0d4]{background:var(--surface);color:var(--text-primary);border:2px solid var(--border);box-shadow:var(--shadow-sm)}.btn-auth--secondary[data-v-496ae0d4]:hover{border-color:var(--primary-300);background:var(--primary-50);transform:translateY(-2px)}.btn-auth--secondary[data-v-496ae0d4]:active{transform:translateY(0)}.auth-gate-hint[data-v-496ae0d4]{font-size:var(--text-xs);color:var(--text-muted);text-align:center;margin:0;line-height:1.5}@media(max-width:900px){.shell-main[data-v-496ae0d4]{padding-bottom:calc(64px + env(safe-area-inset-bottom,0))!important;max-width:100vw!important;width:100%!important;margin-inline:0!important;overflow-x:hidden!important}.shell-main.with-left-sidebar[data-v-496ae0d4]{display:block!important;grid-template-columns:1fr!important;gap:0!important}.app-left-sidebar[data-v-496ae0d4]{display:none!important}.main-area[data-v-496ae0d4]{max-width:100vw!important;width:100%!important;overflow-x:hidden!important;padding:0!important}}@media(max-width:420px){.mobile-auth-gate[data-v-496ae0d4]{padding:var(--space-5) var(--space-3)}.brand-logo[data-v-496ae0d4]{width:76px;height:76px;border-radius:20px}.brand-icon[data-v-496ae0d4]{width:40px;height:40px}.brand-title[data-v-496ae0d4]{font-size:24px}.btn-auth[data-v-496ae0d4]{padding:13px 20px;font-size:15px;border-radius:12px}}.admin-layout[data-v-40f55ac0]{min-height:100vh;background:#f5f5f5}.admin-unauthorized[data-v-40f55ac0]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.unauthorized-card[data-v-40f55ac0]{background:#fff;padding:48px;border-radius:16px;text-align:center;box-shadow:0 20px 60px #0000004d}.unauthorized-card svg[data-v-40f55ac0]{width:64px;height:64px;color:var(--primary-500);margin-bottom:16px}.unauthorized-card h2[data-v-40f55ac0]{font-size:24px;margin-bottom:8px}.unauthorized-card p[data-v-40f55ac0]{color:var(--text-2);margin-bottom:24px}.admin-container[data-v-40f55ac0]{display:flex;min-height:100vh}.admin-sidebar[data-v-40f55ac0]{width:260px;background:#1a1a2e;color:#fff;display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100}.sidebar-header[data-v-40f55ac0]{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-logo[data-v-40f55ac0]{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700}.admin-logo svg[data-v-40f55ac0]{width:32px;height:32px;color:#7c3aed}.sidebar-nav[data-v-40f55ac0]{flex:1;padding:16px;overflow-y:auto}.nav-item[data-v-40f55ac0]{display:flex;align-items:center;gap:12px;padding:12px 16px;color:#ffffffb3;text-decoration:none;border-radius:8px;margin-bottom:4px;transition:all .2s}.nav-item[data-v-40f55ac0]:hover{background:#ffffff1a;color:#fff}.nav-item.active[data-v-40f55ac0]{background:#7c3aed;color:#fff}.nav-icon[data-v-40f55ac0]{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.nav-icon svg[data-v-40f55ac0]{width:20px;height:20px}.nav-label[data-v-40f55ac0]{flex:1;font-size:14px}.nav-badge[data-v-40f55ac0]{background:#ef4444;color:#fff;font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600}.sidebar-footer[data-v-40f55ac0]{padding:16px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between}.admin-info[data-v-40f55ac0]{display:flex;align-items:center;gap:12px}.admin-avatar[data-v-40f55ac0]{width:36px;height:36px;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.admin-details[data-v-40f55ac0]{display:flex;flex-direction:column}.admin-details strong[data-v-40f55ac0]{font-size:14px}.admin-details span[data-v-40f55ac0]{font-size:11px;color:#ffffff80}.logout-btn[data-v-40f55ac0]{width:36px;height:36px;border:none;background:#ffffff1a;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.logout-btn[data-v-40f55ac0]:hover{background:#ef4444;color:#fff}.logout-btn svg[data-v-40f55ac0]{width:18px;height:18px}.admin-main[data-v-40f55ac0]{flex:1;margin-left:260px;background:#f5f5f5;min-height:100vh}.admin-topbar[data-v-40f55ac0]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:1px solid #e5e7eb}.admin-topbar h1[data-v-40f55ac0]{font-size:20px;font-weight:700}.refresh-btn[data-v-40f55ac0]{width:40px;height:40px;border:1px solid #e5e7eb;background:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.refresh-btn[data-v-40f55ac0]:hover{background:#f5f5f5}.refresh-btn svg[data-v-40f55ac0]{width:18px;height:18px}.admin-content[data-v-40f55ac0]{padding:24px}:root{font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,Helvetica Neue,sans-serif;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: clamp(22px, 2.5vw, 30px);--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-tight: 1.35;--leading-normal: 1.6;--leading-relaxed: 1.75;color:#1a1a2e;--primary-50: #fff8f5;--primary-100: #ffede6;--primary-200: #ffd5c4;--primary-300: #ffb199;--primary-400: #ff8a63;--primary-500: #ff6b35;--primary-600: #e85520;--primary-700: #c44418;--neumorph-bg: #faf6f1;--neumorph-surface: #f3ece3;--neumorph-shadow-light: #fffcf8;--neumorph-shadow-dark: #ddd3c6;--neumorph-accent: #5c4d3c;--neumorph-accent-soft: #7d6e5e;--success-50: #f0fdf4;--success-100: #dcfce7;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--info-500: #3b82f6;--warning-500: #f59e0b;--warning-50: #fffbeb;--warning-300: #fcd34d;--warning-400: #fbbf24;--error-500: #ef4444;--error-50: #fef2f2;--gray-50: #fafaf9;--gray-100: #f5f5f4;--gray-200: #e7e5e4;--gray-300: #d6d3d1;--gray-400: #a8a29e;--gray-500: #78716c;--gray-600: #57534e;--gray-700: #44403c;--gray-800: #292524;--gray-900: #1c1917;--bg-base: #f5f3f0;--bg-soft: #f9f8f6;--bg-cool: #f0eeeb;--bg-subtle: #f9f8f6;--surface: rgba(255, 255, 255, .97);--surface-strong: rgba(255, 255, 255, .99);--surface-soft: rgba(253, 250, 246, .96);--surface-muted: #f8f6f3;--surface-hover: #fdf5ee;--surface-subtle: #faf6f1;--border: rgba(120, 100, 80, .12);--border-light: rgba(120, 100, 80, .07);--border-color: #e8e0d8;--border-focus: rgba(255, 107, 53, .4);--text-primary: #1a1a2e;--text-main: #1a1a2e;--text-1: #1a1a2e;--text-soft: #57534e;--text-2: #57534e;--text-muted: #a8a29e;--text-3: #a8a29e;--text-secondary: #57534e;--text-tertiary: #a8a29e;--text-inverse: #ffffff;--danger-50: #fef2f2;--danger-100: #fee2e2;--danger-200: #fecaca;--danger-400: #f87171;--danger-600: #dc2626;--danger-700: #b91c1c;--accent: var(--primary-500);--accent-strong: var(--primary-600);--accent-soft: rgba(255, 107, 53, .1);--mint: var(--success-500);--mint-soft: rgba(34, 197, 94, .1);--blue-soft: rgba(59, 130, 246, .1);--space-1: 6px;--space-2: 10px;--space-3: 16px;--space-4: 20px;--space-5: 24px;--space-6: 32px;--space-8: 40px;--space-10: 48px;--space-12: 56px;--space-16: 72px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-2xl: 0 24px 64px rgba(0, 0, 0, .16);--neumorph-shadow-out: 3px 3px 6px var(--neumorph-shadow-dark), -3px -3px 6px var(--neumorph-shadow-light);--neumorph-shadow-in: inset 2px 2px 4px var(--neumorph-shadow-dark), inset -2px -2px 4px var(--neumorph-shadow-light);--neumorph-shadow-soft: 2px 2px 4px var(--neumorph-shadow-dark), -2px -2px 4px var(--neumorph-shadow-light);--duration-fast: .12s;--duration-normal: .2s;--duration-slow: .35s;--easing-default: cubic-bezier(.4, 0, .2, 1);--easing-bounce: cubic-bezier(.34, 1.56, .64, 1);--easing-smooth: cubic-bezier(.25, .1, .25, 1);--transition-base: all var(--duration-normal) var(--easing-default);--transition-fast: all var(--duration-fast) var(--easing-default);--transition-slow: all var(--duration-slow) var(--easing-smooth);--transition-bounce: all var(--duration-normal) var(--easing-bounce);--z-dropdown: 10;--z-sticky: 20;--z-modal: 30;--z-tooltip: 40;--page-width-narrow: 920px;--page-width-standard: 1320px;--page-width-wide: 1520px;--sidebar-left-width: 220px;--topbar-height: 0px;--nav-sticky-top: 16px}*{box-sizing:border-box}.icon{width:1em;height:1em;display:inline-block;vertical-align:middle}button .icon,.primary-button .icon,.secondary-button .icon,.nav-icon .icon{width:18px;height:18px}*:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px;box-shadow:0 0 0 4px var(--accent-soft)}.skip-link{position:absolute;top:-40px;left:0;background:var(--primary-500);color:#fff;padding:var(--space-2) var(--space-4);z-index:100;transition:top var(--duration-fast)}.skip-link:focus{top:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html,body,#app{height:auto;min-height:100vh}body{margin:0;color:var(--text-main);background:var(--bg-base);height:auto;min-height:100vh}body,button,input,textarea,select{font:inherit;font-size:var(--text-base);line-height:var(--leading-normal)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-extrabold);line-height:var(--leading-tight);letter-spacing:-.02em;margin:0}h1{font-size:var(--text-3xl)}h2{font-size:clamp(22px,2.2vw,var(--text-2xl))}h3{font-size:var(--text-xl)}p{font-size:var(--text-base);line-height:var(--leading-normal)}.prose,.feed-copy,.article-content{font-size:var(--text-base);line-height:var(--leading-normal);max-width:65ch}.card p,.sidebar-card p{line-height:1.6;margin-bottom:.75em}small,.support-copy,.feed-meta,.stat-note{font-size:var(--text-sm);line-height:var(--leading-normal)}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}button{border:0;cursor:pointer;transition:var(--transition-fast)}.shell,.landing-shell{height:auto;min-height:100vh}.lead,.meta-row,.feed-meta,.field span,.detail-card span,.stat-note,.support-copy,.auth-subtitle,.search-bar{color:var(--text-soft)}.pet-avatar,.profile-avatar,.author-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#ffb28e,#ff6b35);color:#fff;font-weight:900}.search-bar{display:flex;align-items:center;gap:var(--space-2);min-height:32px;max-width:280px;padding:6px 12px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--border-light);white-space:nowrap;transition:var(--transition-fast);text-decoration:none;cursor:pointer}.search-bar:hover{background:var(--surface);border-color:var(--primary-300);box-shadow:var(--shadow-sm)}.search-bar:focus-within{background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--accent-soft)}.search-bar input,.search-bar .search-placeholder{border:none;outline:none;background:transparent;font-size:var(--text-sm);width:100%;color:var(--text-soft)}.search-bar input::placeholder{color:var(--text-muted)}.search-bar .el-icon{color:var(--text-muted);flex-shrink:0}.button-row,.meta-row,.tag-row,.feed-actions,.hero-actions,.compact-actions,.stats-row,.section-actions,.chip-row{display:flex;flex-wrap:wrap;gap:10px}.topbar-nav{justify-content:center}.topbar-actions{justify-content:flex-end;flex-wrap:nowrap}.nav-pill,.ghost-link,.chip,.tag,.mini-pill,.feed-actions span,.quick-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:32px;min-width:32px;padding:0 12px;border-radius:8px;background:var(--surface-soft);font-weight:var(--font-medium);font-size:var(--text-sm);transition:var(--transition-fast);cursor:pointer;border:1px solid var(--border-light);color:var(--text-soft)}.nav-pill:hover,.ghost-link:hover,.chip:hover,.tag:hover,.mini-pill:hover{background:var(--primary-50);color:var(--primary-600);border-color:var(--primary-200);transform:translateY(-1px)}.nav-pill.router-link-exact-active.router-link-exact-active:hover{background:var(--primary-50);color:var(--primary-600);transform:none}.nav-pill.active.active,.nav-pill.router-link-exact-active.router-link-exact-active,.tag.is-hot.is-hot{background:var(--primary-50);color:var(--primary-600);border:1px solid var(--primary-200);font-weight:var(--font-semibold)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-4);border-radius:10px;font-weight:var(--font-semibold);font-size:var(--text-sm);transition:var(--transition-bounce);position:relative;overflow:hidden;cursor:pointer;letter-spacing:.01em}.primary-button{background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);color:#fff;box-shadow:0 2px 8px #ff6b3540}.primary-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff6b3559}.primary-button:active{transform:translateY(0);box-shadow:0 2px 8px #ff6b3540}.primary-button:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .4s,height .4s}.primary-button:active:after{width:200px;height:200px}.secondary-button{background:var(--surface);color:var(--text-main);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.secondary-button:hover{background:var(--surface-strong);border-color:var(--primary-300);transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-type-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border-radius:12px;font-weight:var(--font-semibold);font-size:var(--text-sm);transition:var(--transition-fast);color:var(--text-main);border:1px solid transparent;cursor:pointer;flex:1;box-shadow:var(--neumorph-shadow-soft)}.login-type-btn:hover{background:#1922301a}.login-type-btn.active{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:#fff;font-weight:var(--font-extrabold);border-color:var(--primary-500);box-shadow:0 4px 12px #ff6b354d}.login-type-btn .icon{width:18px;height:18px}.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed;transform:none;pointer-events:none}.button-loading{pointer-events:none}.button-loading .el-icon{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.user-pill{display:flex;align-items:center;gap:var(--space-2);padding:6px 12px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--border-light);white-space:nowrap;cursor:pointer;transition:var(--transition-fast)}.user-pill:hover{background:var(--surface);border-color:var(--primary-300);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--surface-strong);border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--border-light);padding:6px;z-index:1000;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.user-menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;color:var(--text-main);text-decoration:none;transition:var(--transition-fast);font-size:var(--text-sm);border:none;background:none;width:100%;cursor:pointer;text-align:left}.user-menu-item:hover{background:var(--primary-50);color:var(--primary-600)}.user-menu-item .icon{width:16px;height:16px;flex-shrink:0;color:var(--text-soft)}.user-menu-item:hover .icon{color:var(--primary-600)}.user-menu-divider{height:1px;background:var(--border-light);margin:6px 0}.logout-btn{color:var(--error-500)}.logout-btn:hover{background:var(--error-50);color:var(--error-600)}.avatar-chip{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(135deg,#ffb28e,#ff6b35);color:#fff;font-weight:900}.sidebar{gap:16px;position:sticky;top:var(--nav-sticky-top);align-self:start;display:grid}.shell-main,.landing-main{min-width:0;display:block}.sidebar-card,.card,.sidebar-section,.auth-card,.detail-card{border-radius:10px;border:1px solid rgba(107,90,74,.08);box-shadow:var(--shadow-sm);background:var(--surface);padding:20px;transition:var(--transition-base);position:relative;overflow:hidden}.card:hover,.sidebar-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:#e85d2a33}.card:after,.sidebar-card:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary-500),var(--success-500));opacity:0;transition:var(--transition-base)}.card:hover:after,.sidebar-card:hover:after{opacity:1}.sidebar-title,.section-label,.eyebrow,.card-kicker{margin:0;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--accent)}.sidebar-nav{display:grid;gap:var(--space-2)}.nav-link{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:12px;background:transparent;transition:var(--transition-fast);position:relative;overflow:hidden}.nav-link:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary-500);transform:scaleY(0);transition:var(--transition-fast)}.nav-link:hover{background:#d9531e14}.nav-link:hover:before{transform:scaleY(1)}.nav-link.router-link-active{background:linear-gradient(135deg,#d9531e1f,#2f8f791a);font-weight:var(--font-semibold)}.nav-link.router-link-active:before{transform:scaleY(1)}.nav-link span{font-weight:var(--font-bold)}.nav-icon{display:grid;place-items:center;color:var(--text-soft);transition:var(--transition-fast)}.nav-link:hover .nav-icon,.nav-link.router-link-active .nav-icon{color:var(--primary-500)}.nav-content{display:grid;gap:2px}.nav-content small{font-size:var(--text-xs);opacity:.7}.sidebar-footer{padding:var(--space-4);border-radius:16px;box-shadow:var(--neumorph-shadow-soft);border:1px solid rgba(255,255,255,.4)}.page,.landing-page,.page-hero,.landing-hero{display:grid;gap:16px}.page-hero,.landing-hero{grid-template-columns:minmax(0,1fr) 280px;align-items:start;padding:var(--space-4);border-radius:16px;border:1px solid rgba(255,255,255,.4);box-shadow:var(--neumorph-shadow-soft)}.page-hero h1,.landing-page h1,.auth-card h1{margin:0;font-size:clamp(22px,3vw,36px);line-height:1.2;letter-spacing:-.02em}.page h2,.landing-page h2,.card h2,.editorial-card h2{font-size:clamp(22px,2.2vw,32px)}.lead{font-size:15px;line-height:1.7}.section-head,.article-meta,.profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.profile-avatar,.pet-avatar,.author-avatar{width:28px;height:28px;border-radius:10px;font-size:13px}.pet-avatar{width:36px;height:36px;border-radius:10px;font-size:14px}.prose-card p,.field-helper{line-height:1.85}.prose-card p{margin:12px 0 0}.feed-actions{justify-content:space-between;margin-top:16px}.timeline-list,.list-grid{display:grid;gap:12px;margin:0;padding:0;list-style:none}.timeline-list li,.list-item{display:grid;gap:var(--space-2);padding:12px;border-radius:10px;box-shadow:var(--neumorph-shadow-soft);border:1px solid rgba(255,255,255,.4);transition:var(--transition-fast)}.list-item:hover{background:#d9531e0f;transform:translate(4px)}.timeline-list li{border-left:4px solid var(--primary-500);position:relative}.timeline-list li:before{content:"";position:absolute;left:-6px;top:50%;width:8px;height:8px;border-radius:50%;background:var(--primary-500);transform:translateY(-50%)}.detail-grid,.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.detail-card{background:#1922300a}.detail-card strong{display:block;margin-top:4px;font-size:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field,.field-block{display:grid;gap:6px}.field input,.field select,.field textarea{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-main);font-size:13px;transition:var(--transition-fast);line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary-500);outline:none;box-shadow:0 0 0 3px var(--accent-soft);background:#fff}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted);font-size:13px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--primary-300)}.full-span{grid-column:1 / -1}.auth-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:linear-gradient(135deg,var(--neumorph-bg) 0%,#f9f2e8 100%)}.auth-card{width:min(620px,100%);padding:20px}.auth-subtitle{margin-top:12px;line-height:1.8}.auth-layout{display:grid;gap:18px;margin-top:24px}.editorial-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.section-head h2,.card h2,.card h3,.sidebar-card h2,.sidebar-card h3{margin:0}.section-head{margin-bottom:12px}.prose-card p:last-child{margin-bottom:0}@media(max-width:768px){.sidebar,aside.sidebar{display:none!important}.main-content,.page-content,.app-body{padding-bottom:70px}.search-bar{display:none}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;padding:var(--space-2) 0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);z-index:var(--z-sticky);box-shadow:0 -2px 10px #0000000d}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) var(--space-3);color:var(--text-soft);font-size:var(--text-xs);transition:var(--transition-fast)}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--primary-500)}.bottom-nav-item .el-icon{font-size:20px}.landing-grid{grid-template-columns:1fr;gap:var(--space-4);padding:var(--space-3)}.sidebar{position:static}.hero-metrics{grid-template-columns:1fr}.card,.sidebar-card{padding:var(--space-4)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}.primary-button,.secondary-button,.hero-actions{width:100%;justify-content:center}.hero-actions{display:grid;gap:var(--space-2)}.form-grid,.content-grid,.support-grid,.feature-grid{grid-template-columns:1fr}}@media(min-width:769px)and (max-width:1180px){.landing-grid{grid-template-columns:240px 1fr}.right-rail{display:none}}@media(max-width:1100px){.app-left-sidebar{display:none!important}.shell-main.with-left-sidebar{grid-template-columns:1fr;padding-inline:16px}}.optimized-register{max-width:520px;padding:var(--space-8);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl)}.auth-header{text-align:center;margin-bottom:var(--space-6)}.auth-header h1{margin-top:var(--space-2);margin-bottom:var(--space-3)}.auth-subtitle{color:var(--text-soft);font-size:var(--text-sm);line-height:1.6}.auth-subtitle .link{color:var(--primary-600);font-weight:var(--font-semibold);text-decoration:underline}.auth-subtitle .link:hover{color:var(--primary-500)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-6)}.auth-tab{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);background:#fff9;border:1px solid var(--border);font-weight:var(--font-semibold);font-size:var(--text-base);color:var(--text-main);cursor:pointer;transition:var(--transition-fast)}.auth-tab .icon{width:18px;height:18px}.auth-tab.active{background:var(--primary-50);border-color:var(--primary-500);color:var(--primary-600);font-weight:var(--font-extrabold)}.auth-tab:hover:not(.active){background:#fffc;border-color:#d9531e33}.form-group{display:flex;flex-direction:column;margin-bottom:var(--space-5, 20px)}.required{color:var(--danger-600);margin-left:2px}.error-message{color:var(--error-500);font-size:var(--text-xs);margin-top:4px;display:block}.field input.error{border-color:var(--error-500)}.field input.error:focus{border-color:var(--error-500);box-shadow:0 0 0 3px #e74c3c26}.code-input-group{display:grid;grid-template-columns:1fr auto;gap:var(--space-2)}.send-code-btn{padding:0 var(--space-5);min-height:46px;background:var(--primary-50);color:var(--primary-600);border:1px solid var(--primary-500);border-radius:var(--radius-lg);font-weight:var(--font-semibold);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:var(--transition-fast)}.send-code-btn:hover:not(:disabled){background:var(--primary-100)}.send-code-btn:disabled{opacity:.6;cursor:not-allowed}.password-strength{position:relative}.strength-bars{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.strength-bar{flex:1;height:4px;border-radius:2px;background:var(--gray-200);transition:var(--transition-fast)}.strength-bar.weak{background:var(--error-500)}.strength-bar.medium{background:var(--warning-500)}.strength-bar.strong{background:var(--success-600)}.strength-text{font-size:var(--text-xs);color:var(--text-soft);margin-top:var(--space-2);display:block}.checkbox-field{display:flex;align-items:flex-start;gap:var(--space-3);margin:var(--space-5) 0;font-size:var(--text-sm);color:var(--text-soft)}.checkbox-field input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--primary-500);cursor:pointer}.checkbox-field span{line-height:1.6}.checkbox-field a{color:var(--primary-600);text-decoration:underline}.checkbox-field a:hover{color:var(--primary-500)}.spin{animation:spin 1s linear infinite}.success-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;padding:var(--space-5);border-radius:16px;box-shadow:var(--neumorph-shadow-out);border:1px solid rgba(255,255,255,.6);z-index:var(--z-modal);min-width:300px}.success-icon{width:64px;height:64px;color:var(--success-600);margin-bottom:var(--space-4)}.success-message h3{margin:var(--space-3) 0 var(--space-2);color:var(--text-main);font-size:var(--text-xl)}.success-message p{color:var(--text-soft);font-size:var(--text-sm)}.mini-note{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3);border-radius:16px;font-size:var(--text-xs);color:var(--neumorph-accent-soft);box-shadow:var(--neumorph-shadow-soft);border:1px solid rgba(255,255,255,.4)}.mini-note .icon{width:16px;height:16px;color:var(--primary-500);flex-shrink:0}@media(max-width:768px){.optimized-register{padding:var(--space-6)}.auth-tabs,.code-input-group{grid-template-columns:1fr}.send-code-btn{width:100%}.success-message{min-width:auto;width:90%}}.logo-wrapper{display:flex;justify-content:center;margin-bottom:var(--space-6)}.logo-3d{width:64px;height:64px;background:linear-gradient(135deg,var(--primary-500),var(--primary-400));border-radius:16px;display:flex;align-items:center;justify-content:center;transform:rotate(-10deg);box-shadow:0 8px 20px #d9531e59;transition:var(--transition-base)}.logo-3d:hover{transform:rotate(0) scale(1.05);box-shadow:0 12px 28px #d9531e66}.logo-icon{width:36px;height:36px;color:#fff}.shell-body{display:block;width:100%;padding:24px 0;background:var(--bg-base)}.shell-main{background:transparent;border:none;padding-top:12px;padding-bottom:40px;border-radius:0;min-height:calc(100vh - 120px);max-width:var(--page-width-wide);margin-inline:auto}.main-area--narrow{max-width:var(--page-width-narrow)}.main-area--standard{max-width:var(--page-width-standard)}.main-area--wide{max-width:var(--page-width-wide)}.main-area--full{max-width:100%}.shell-main.with-left-sidebar{display:grid;grid-template-columns:var(--sidebar-left-width) 1fr;gap:0 28px;align-items:start;padding-inline:var(--space-5);max-width:var(--page-width-wide);width:100%}.app-left-sidebar{position:sticky!important;top:var(--nav-sticky-top)!important;align-self:start!important;max-height:calc(100vh - var(--topbar-height) - 32px);overflow-y:auto}.main-area{min-width:0}.shell-main,.shell-main>*{min-width:0}.sidebar{gap:12px;position:sticky;top:var(--nav-sticky-top, 16px)}.app-page{width:100%;box-sizing:border-box}.metric-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:18px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.stat-card{padding:12px;border-radius:10px;box-shadow:var(--neumorph-shadow-soft);border:1px solid rgba(255,255,255,.4);transition:var(--transition-fast)}.stat-card:hover{background:#fffc;transform:scale(1.02);box-shadow:var(--shadow-md)}.stat-value{display:block;font-size:20px;margin-top:4px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}@media(max-width:900px){.shell-body{padding:16px}.shell-main{max-width:100%;padding-inline:12px}.shell-main.with-left-sidebar{grid-template-columns:1fr;gap:0}.main-area--narrow,.main-area--standard,.main-area--wide{max-width:100%}.section-head{flex-direction:column;align-items:flex-start}}@media(max-width:768px){.story-card,.support-panel{padding:18px}}.feed-list{display:flex;flex-direction:column;gap:20px;padding:0 20px 20px;width:100%;max-width:100%}.feed-list .feed-card{border-radius:16px;padding:28px;box-shadow:var(--neumorph-shadow-soft);border:1px solid rgba(255,255,255,.4);transition:var(--transition-base);width:100%}.feed-list .feed-card:hover{transform:translateY(-4px);box-shadow:8px 8px 16px var(--neumorph-shadow-dark),-8px -8px 16px var(--neumorph-shadow-light)}@media(max-width:1100px){.shell-main{padding-bottom:calc(64px + env(safe-area-inset-bottom,0))!important}.shell-body{padding:16px 0}}@media(max-width:768px){.shell-main,[class*=-page]:not(.auth-page):not(.admin-login-page):not(.not-found-page){padding-bottom:calc(64px + env(safe-area-inset-bottom,0))}.shell-body{padding:0;background:transparent}.sidebar{display:none}.shell-main{width:100%;max-width:100vw;overflow-x:hidden;border:none;min-height:auto;padding-inline:0!important}.shell-main.with-left-sidebar{padding-inline:0!important;gap:0;grid-template-columns:1fr}.main-area{max-width:100vw!important;width:100%;overflow-x:hidden}.main-area--narrow,.main-area--standard,.main-area--wide{max-width:100vw!important}.feed-list{gap:10px;padding:0 12px 12px;max-width:100%}.feed-list .feed-card{border-radius:12px;padding:14px}.feed-list .feed-card:hover{transform:none;box-shadow:var(--neumorph-shadow-soft)}.page-header,.forums-header,.articles-header,.search-hero,.notif-header{margin-bottom:14px!important}.merchant-card,.pet-card{padding:12px!important}.primary-button,.secondary-button{min-height:36px;font-size:14px}h1{font-size:20px}h2{font-size:17px}}@media(max-width:420px){.feed-list{gap:8px;padding:0 8px 8px}.feed-list .feed-card{border-radius:10px;padding:12px}.page-hero{padding:16px 14px!important}.auth-card{padding:14px;border-radius:14px}.field input,.field select,.field textarea{padding:9px 12px;font-size:14px}.post-btn{padding:6px 12px;font-size:13px}.compose-btn{padding:5px 10px;font-size:12px}}@media(max-width:900px){html,body{overflow-x:hidden!important;max-width:100vw!important;width:100%!important}#app,.shell,.landing-shell{width:100%!important;max-width:100vw!important;overflow-x:hidden!important;box-sizing:border-box!important}.shell-body{width:100%!important;max-width:100vw!important;padding:0!important;box-sizing:border-box!important;overflow-x:hidden!important}.shell-main,.landing-main{width:100%!important;max-width:100vw!important;margin-inline:0!important;padding-inline:var(--space-3)!important;box-sizing:border-box!important;overflow-x:hidden!important}.shell-main.with-left-sidebar{display:block!important;grid-template-columns:1fr!important;gap:0!important;width:100%!important;max-width:100vw!important;padding-inline:var(--space-3)!important}.app-left-sidebar{display:none!important}.main-area{width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:hidden!important;padding:0!important}.main-area--narrow,.main-area--standard,.main-area--wide,.main-area--full{max-width:100vw!important;width:100%!important}.page,.app-page,[class*=-page]:not(.auth-page):not(.admin-login-page){width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow-x:hidden!important;padding:0!important}.shell-main{padding-bottom:calc(64px + env(safe-area-inset-bottom,0))!important}.page-hero{padding:var(--space-4) var(--space-3)!important;border-radius:12px!important}}.page-hero{display:flex;justify-content:space-between;align-items:center;padding:20px 24px!important;margin-bottom:0!important;gap:24px;height:auto;min-height:140px;width:100%;box-sizing:border-box}.page-hero .eyebrow{margin-bottom:10px;display:block;font-size:14px;font-weight:600;opacity:.8}.page-hero>div:first-child{flex:1;max-width:700px}.page-hero>div:last-child,.page-hero>aside{display:flex;gap:14px;flex-shrink:0;align-items:center}@media(max-width:768px){.page-hero{flex-direction:column;align-items:flex-start!important;gap:18px;padding:24px!important;min-height:auto}.page-hero>div:first-child{max-width:100%}.page-hero .eyebrow{font-size:13px}.page-hero .primary-button,.page-hero .secondary-button{font-size:14px;padding:10px 20px}.page-hero>div:last-child,.page-hero>aside{width:100%;justify-content:flex-start}.feed-card .author-avatar{width:32px;height:32px;font-size:14px}.feed-card .feed-meta{font-size:12px}.feed-card .feed-copy{font-size:13px;line-height:1.5}.feed-card .feed-card-image{margin:12px 0}.feed-card .feed-card-image>div{gap:8px!important}.feed-card .feed-card-image>div>div{height:140px!important;border-radius:8px!important}.feed-card .tag-row{margin-top:12px!important}.feed-card .feed-actions{margin-top:12px!important;padding-top:12px!important;font-size:12px}}@media(max-width:480px){.page-hero{padding:18px!important}.page-hero>div:last-child{width:100%;display:flex;flex-direction:column;gap:10px}.page-hero .primary-button,.page-hero .secondary-button{width:100%;justify-content:center;font-size:13px;padding:12px 16px}.feed-card .author-avatar{width:28px;height:28px;font-size:13px}.feed-card .feed-meta{font-size:11px}.feed-card .feed-copy{font-size:12px;line-height:1.4}.feed-card .feed-card-image>div>div{height:120px!important}.feed-card .feed-actions{font-size:11px;gap:10px}.feed-card .mini-pill{font-size:11px;padding:4px 10px}}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);color:#fff;border:none;border-radius:10px;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-bounce);text-decoration:none;white-space:nowrap;box-shadow:0 2px 8px #ff6b3540;min-height:36px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #ff6b3559}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--surface);color:var(--text-main);border:1px solid var(--border);border-radius:10px;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-bounce);text-decoration:none;white-space:nowrap;min-height:36px;box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--primary-300);color:var(--primary-600);transform:translateY(-1px)}.page-title{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:16px}.section-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0}.card{background:var(--surface);border:1px solid var(--border-light);border-radius:12px;padding:var(--space-4);transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.form-input{padding:10px 14px;border:1px solid var(--border-light);border-radius:10px;background:#fff;color:var(--text-primary);font-size:var(--text-sm);transition:border-color .15s,box-shadow .15s;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.form-label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2, 8px)}.badge{display:inline-flex;align-items:center;gap:4px;padding:var(--space-1) var(--space-3);border-radius:999px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.badge--user{background:#dbeafe;color:#2563eb}.badge--admin{background:#fecaca;color:#dc2626}.badge--success{background:#dcfce7;color:#16a34a}.badge--warning{background:#fed7aa;color:#ea580c}
