@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(./inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(./inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(./inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(./inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(./inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(./inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(./inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(./inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(./inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(./inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(./inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(./inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(./poppins-devanagari-400-normal-CJDn6rn8.woff2) format("woff2"),url(./poppins-devanagari-400-normal-CqVvlrh5.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(./poppins-latin-ext-400-normal-by3JarPu.woff2) format("woff2"),url(./poppins-latin-ext-400-normal-DaBSavcJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(./poppins-latin-400-normal-cpxAROuN.woff2) format("woff2"),url(./poppins-latin-400-normal-BOb3E3N0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(./poppins-devanagari-500-normal-BIdkeU1p.woff2) format("woff2"),url(./poppins-devanagari-500-normal-DMPDjHtT.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(./poppins-latin-ext-500-normal-CK-6C4Hw.woff2) format("woff2"),url(./poppins-latin-ext-500-normal-CgAe2rWW.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(./poppins-latin-500-normal-C8OXljZJ.woff2) format("woff2"),url(./poppins-latin-500-normal-DGXqpDMm.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(./poppins-devanagari-600-normal-STEjXBNN.woff2) format("woff2"),url(./poppins-devanagari-600-normal-ClASKHrr.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(./poppins-latin-ext-600-normal-CAhIAdZj.woff2) format("woff2"),url(./poppins-latin-ext-600-normal-Df5ffKXP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(./poppins-latin-600-normal-zEkxB9Mr.woff2) format("woff2"),url(./poppins-latin-600-normal-BJdTmd5m.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(./poppins-devanagari-700-normal-O-jipLrW.woff2) format("woff2"),url(./poppins-devanagari-700-normal-fHs-vx92.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(./poppins-latin-ext-700-normal-cby-RkWa.woff2) format("woff2"),url(./poppins-latin-ext-700-normal-DctTR6Tg.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(./poppins-latin-700-normal-Qrb0O0WB.woff2) format("woff2"),url(./poppins-latin-700-normal-BVuQR_eA.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #f0a83c;--color-primary-strong: #e29327;--color-primary-soft: #fdf1dc;--color-teal: #0f3d3e;--color-teal-soft: #e3efee;--color-mask-pink: #f9c5d5;--color-mask-purple: #ccd1ff;--color-mask-orange: #ffe3cb;--color-mask-green: #a5f2ab;--color-mask-blue: #c9cefe;--color-chip-sex-bg: #ccd5fb;--color-chip-sex-fg: #3452b4;--color-chip-age-bg: #fbe9c3;--color-chip-age-fg: #c98a1d;--color-chip-female-fg: #b04a6e;--color-chip-type-fg: #2e7d3f;--color-danger: #f26d6d;--color-danger-soft: #fde8e8;--color-success: #34a853;--color-warning: #f0a83c;--color-bg: #fdf8f2;--color-bg-gradient: linear-gradient(160deg, #fefbf7 0%, #fbf3ec 45%, #f7e9e6 100%);--color-surface: #ffffff;--color-surface-hover: #fffdfa;--color-text: #0f3d3e;--color-text-secondary: #7d8a8a;--color-text-tertiary: #aab5b4;--color-border: #eef0ee;--color-skeleton: #efe9e2;--color-skeleton-shine: #f7f1ea;--font-display: "Poppins", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Poppins", "PingFang SC", "Microsoft YaHei", sans-serif;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 21px;--text-2xl: 24px;--text-3xl: 26px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 12px;--radius-md: 15px;--radius-lg: 20px;--radius-xl: 24px;--radius-pill: 999px;--shadow-card: 0 6px 24px rgba(15, 61, 62, .05);--shadow-float: 0 10px 30px rgba(240, 168, 60, .35);--shell-max: 414px;--bottom-nav-h: 72px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--color-text);background:#f2ece4;-webkit-font-smoothing:antialiased;line-height:1.5}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit}input,textarea,select{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-inline-size:100%}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.app-shell{max-width:var(--shell-max);min-height:100dvh;margin:0 auto;background:var(--color-bg-gradient);position:relative;overflow-x:hidden;box-shadow:0 0 60px #0f3d3e14;display:flex;flex-direction:column}.app-main{flex:1;display:flex;flex-direction:column}.h-page{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-teal);line-height:1.25}.h-section{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--color-teal)}.text-secondary{color:var(--color-text-secondary);font-size:var(--text-sm)}.text-price{font-family:var(--font-display);font-weight:500;color:var(--color-primary);font-size:var(--text-lg)}.page-with-nav{padding-bottom:calc(var(--bottom-nav-h) + var(--space-4))}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.anim-page{animation:fade-slide-up .28s ease-out}.drawer .input,.drawer .select,.drawer .textarea,.drawer .region-picker__col,.modal .input,.modal .select,.modal .textarea,.modal .region-picker__col{background:var(--color-bg);border-color:var(--color-border)}:root{--color-page-bg: #f2ece4}html,body,#root{height:auto;min-height:100%}#root{align-items:flex-start}.shell,.app-shell{min-height:100vh;min-height:100dvh}body{background:var(--color-page-bg, #f2ece4)}.toast-stack{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:120;display:flex;flex-direction:column;gap:var(--space-2);width:min(calc(var(--shell-max) - 40px),calc(100vw - 40px));pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-2);background:#0f3d3eeb;color:#fff;font-size:var(--text-sm);padding:11px 16px;border-radius:var(--radius-md);box-shadow:0 8px 24px #0f3d3e4d;animation:toast-in .24s cubic-bezier(.2,.9,.3,1.1)}.toast--success .toast__icon{color:var(--color-mask-green)}.toast--error .toast__icon{color:var(--color-danger)}.toast--warning .toast__icon{color:var(--color-primary)}.toast--info .toast__icon{color:var(--color-mask-blue)}.toast__icon{display:inline-flex;flex-shrink:0}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--color-danger);color:#fff;font-size:var(--text-xs);font-weight:600;display:inline-flex;align-items:center;justify-content:center;line-height:1}.badge--dot{min-width:8px;width:8px;height:8px;padding:0}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:0 -8px 30px #0f3d3e12;display:flex;align-items:center;justify-content:space-around;z-index:50}.bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--color-text-tertiary);font-size:11px;padding:6px 10px;border-radius:var(--radius-md);transition:color .15s ease}.bottom-nav__item--active{color:var(--color-primary)}.bottom-nav__item--active .bottom-nav__label{color:var(--color-primary);font-weight:500}.bottom-nav__icon{position:relative;display:flex;align-items:center;justify-content:center}.bottom-nav__item--publish{margin-top:-26px}.bottom-nav__fab{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-strong));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #f0a83c66;transition:transform .15s ease}.bottom-nav__item--publish:active .bottom-nav__fab{transform:scale(.92)}.bottom-nav__item--publish .bottom-nav__label{color:var(--color-primary);font-weight:500}.bottom-nav__home{fill:var(--color-mask-orange);stroke:var(--color-text-tertiary)}.bottom-nav__item--active .bottom-nav__home{fill:var(--color-primary);stroke:var(--color-primary)}.bottom-nav__badge{position:absolute;top:-6px;right:-10px}.bottom-nav__label{color:var(--color-text-secondary)}.logo{display:inline-flex;align-items:center;gap:10px}.logo--sm .logo__mark{width:34px;height:34px}.logo--md .logo__mark{width:44px;height:44px}.logo--lg .logo__mark{width:84px;height:84px}.logo--lg .logo__word{font-size:34px}.logo__word{font-family:var(--font-display);font-weight:700;font-size:var(--text-2xl);color:var(--color-teal);letter-spacing:.5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-display);font-weight:600;border-radius:var(--radius-pill);transition:transform .15s ease,box-shadow .15s ease,background .15s ease;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}.btn--sm{font-size:var(--text-sm);padding:6px 16px}.btn--md{font-size:var(--text-md);padding:10px 24px}.btn--lg{font-size:var(--text-md);padding:15px 28px}.btn--block{width:100%}.btn--primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-float)}.btn--primary:hover:not(:disabled){background:var(--color-primary-strong)}.btn--primary:active:not(:disabled){transform:scale(.97)}.btn--secondary{background:var(--color-surface);color:var(--color-teal);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.btn--secondary:hover:not(:disabled){background:var(--color-primary-soft)}.btn--ghost{background:transparent;color:var(--color-primary);padding-left:var(--space-2);padding-right:var(--space-2)}.btn--ghost:hover:not(:disabled){color:var(--color-primary-strong)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn__icon{display:inline-flex;align-items:center}.btn__spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8) var(--space-5);gap:var(--space-2)}.empty__icon{width:72px;height:72px;border-radius:var(--radius-lg);background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2)}.empty__title{font-size:var(--text-lg);font-weight:600;color:var(--color-teal)}.empty__desc{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:260px}.empty__action{margin-top:var(--space-3)}.welcome{min-height:100dvh;display:flex;flex-direction:column}.welcome__hero{position:relative;flex:1 1 auto;min-height:46vh;overflow:hidden}.welcome__hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.welcome__cut{position:absolute;right:-60px;top:-80px;width:240px;height:240px;background:var(--color-bg);border-radius:0 0 0 100%}.welcome__logo{position:absolute;left:var(--space-5);bottom:var(--space-5);background:#ffffffd9;border-radius:var(--radius-md);padding:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.welcome__panel{background:var(--color-bg-gradient);border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin-top:-28px;padding:var(--space-6) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-5)}.welcome__text{font-size:var(--text-md);color:var(--color-text-secondary);line-height:1.7;min-height:3.2em}.welcome__dots{display:flex;gap:var(--space-2)}.welcome__dot{width:10px;height:10px;border-radius:50%;background:var(--color-mask-orange);transition:background .15s ease,width .15s ease}.welcome__dot--active{background:var(--color-primary);width:22px}.welcome__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.welcome__skip{color:var(--color-text-tertiary);font-size:var(--text-sm);padding:6px 14px}.input-wrap{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.input__label{font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.input{min-width:0;display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid transparent;border-radius:var(--radius-xl);transition:border .15s ease,box-shadow .15s ease}.input--md{padding:14px 18px}.input--sm{padding:9px 14px}.input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.input--error{border-color:var(--color-danger)}.input--error:focus-within{box-shadow:0 0 0 3px var(--color-danger-soft)}.input input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:var(--text-md);color:var(--color-text)}.input input::placeholder{color:var(--color-text-tertiary)}.input__prefix{display:inline-flex;color:var(--color-text-tertiary)}.input__suffix,.input__suffix-btn{display:inline-flex;align-items:center;color:var(--color-text-tertiary)}.input__suffix-btn{cursor:pointer;padding:2px}.input__error{font-size:var(--text-xs);color:var(--color-danger)}.checkbox{display:inline-flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5}.checkbox--disabled{opacity:.5;cursor:not-allowed}.checkbox__input{position:absolute;opacity:0;width:1px;height:1px}.checkbox__box{flex-shrink:0;width:20px;height:20px;border-radius:7px;border:1.5px solid var(--color-text-tertiary);background:var(--color-surface);display:inline-flex;align-items:center;justify-content:center;color:#fff;margin-top:1px;transition:background .15s ease,border .15s ease}.checkbox__box svg{opacity:0;transition:opacity .1s ease}.checkbox__input:checked+.checkbox__box,.checkbox__input:indeterminate+.checkbox__box{background:var(--color-primary);border-color:var(--color-primary)}.checkbox__input:checked+.checkbox__box svg,.checkbox__input:indeterminate+.checkbox__box svg{opacity:1}.checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-primary);outline-offset:2px}.checkbox__label a{color:var(--color-primary);font-weight:500}.auth{min-height:100dvh;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-8) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom));overflow-y:auto}.auth__brand{margin-bottom:var(--space-8)}.auth__subtitle{color:var(--color-text-secondary);font-size:var(--text-sm);padding-left:var(--space-2)}.auth__form{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.auth__code-row{display:flex;gap:var(--space-3)}.auth__code-btn{flex-shrink:0;min-width:128px}.auth__agreement{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1)}.auth__error{font-size:var(--text-xs);color:var(--color-danger);padding-left:28px}.auth__footer{margin-top:auto;padding-top:var(--space-8);display:flex;flex-direction:column;gap:var(--space-4)}.auth__alt{text-align:center;font-size:var(--text-sm);color:var(--color-text-secondary)}.auth__alt a,.auth__alt button{color:var(--color-primary);font-weight:500}.auth__divider{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-tertiary);font-size:var(--text-xs);margin-top:var(--space-6)}.auth__divider:before,.auth__divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth__wechat-icon{display:inline-flex;color:#22b358}.auth__link-row{display:flex;justify-content:flex-end}.auth__link-row a{font-size:var(--text-sm);color:var(--color-text-secondary)}.auth__inline-code{font-size:var(--text-sm);color:var(--color-primary);font-weight:500;padding:4px 2px}.auth__inline-code:disabled{color:var(--color-text-tertiary)}.auth__captcha{font-size:var(--text-md);letter-spacing:3px;color:var(--color-teal);background:var(--color-teal-soft);border-radius:var(--radius-sm);padding:3px 10px;font-weight:600;-webkit-user-select:none;user-select:none}.auth__hint{font-size:var(--text-xs);color:var(--color-text-tertiary);background:var(--color-primary-soft);border-radius:var(--radius-sm);padding:8px 12px}.auth__submit-inner{display:block;width:100%}.search-bar{display:flex;align-items:center;background:var(--color-surface);border-radius:var(--radius-xl);padding:6px 6px 6px 20px;box-shadow:var(--shadow-card)}.search-bar__input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:var(--text-md);color:var(--color-text)}.search-bar__input::placeholder{color:var(--color-text-tertiary)}.search-bar__btn{width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #f0a83c73;transition:transform .15s ease,background .15s ease}.search-bar__btn:hover{background:var(--color-primary-strong)}.search-bar__btn:active{transform:scale(.93)}.card{background:var(--color-surface);border-radius:var(--radius-lg)}.card--flat{box-shadow:none}.card--raised{box-shadow:var(--shadow-card)}.card--interactive{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;text-align:left;width:100%}.card--interactive:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0f3d3e17}.card--interactive:active{transform:scale(.99)}.pet-card{display:flex;gap:var(--space-4);padding:var(--space-3);align-items:center}.pet-card__media{position:relative;width:112px;height:112px;flex-shrink:0;border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.pet-card__mask{position:absolute;bottom:-46px;left:-10px;width:132px;height:92px;border-radius:50%;background:#ffffff73}.pet-card__media img{position:relative;width:86%;height:88%;object-fit:contain;border-radius:var(--radius-md);filter:drop-shadow(0 6px 10px rgba(15,61,62,.18))}.pet-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;padding:var(--space-1) 0}.pet-card__breed{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--color-teal)}.pet-card__chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.pet-chip{font-size:var(--text-xs);font-weight:500;padding:3px 12px;border-radius:var(--radius-pill)}.pet-chip--sex-male{background:var(--color-chip-sex-bg);color:var(--color-chip-sex-fg)}.pet-chip--sex-female{background:var(--color-mask-pink);color:var(--color-chip-female-fg)}.pet-chip--age{background:var(--color-chip-age-bg);color:var(--color-chip-age-fg)}.pet-chip--type{background:var(--color-mask-green);color:var(--color-chip-type-fg)}.pet-card__loc{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--color-text-tertiary)}.sk{background:linear-gradient(90deg,var(--color-skeleton) 25%,var(--color-skeleton-shine) 45%,var(--color-skeleton) 65%);background-size:200% 100%;animation:sk-wave 1.3s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes sk-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.sk-text{height:14px;width:60%;margin-bottom:var(--space-2)}.sk-card{display:flex;gap:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card)}.sk-card__img{width:110px;height:110px;flex-shrink:0;border-radius:var(--radius-lg)}.sk-card__thumb{width:84px;height:84px;flex-shrink:0;border-radius:var(--radius-lg)}.sk-card__lines{flex:1;display:flex;flex-direction:column;justify-content:center;gap:var(--space-3)}.sk-card__line{height:15px;width:80%}.sk-card__line--short{width:45%}.sk-list{display:flex;flex-direction:column;gap:var(--space-4)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background .15s ease,transform .15s ease}.icon-btn--sm{width:36px;height:36px}.icon-btn--md{width:44px;height:44px}.icon-btn--plain{background:transparent;color:var(--color-teal)}.icon-btn--plain:hover{background:var(--color-primary-soft)}.icon-btn--filled{background:var(--color-surface);color:var(--color-teal);box-shadow:var(--shadow-card)}.icon-btn--filled:hover{background:var(--color-primary-soft)}.icon-btn:active{transform:scale(.92)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--color-teal-soft);color:var(--color-teal);font-weight:600}.avatar--sm{width:36px;height:36px;font-size:var(--text-sm)}.avatar--md{width:48px;height:48px;font-size:var(--text-lg)}.avatar--lg{width:88px;height:88px;font-size:32px}.avatar--initials{background:linear-gradient(135deg,var(--color-primary-soft),var(--color-mask-orange))}.avatar img{width:100%;height:100%;object-fit:cover}.home{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-5)}.home__top{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-5)}.home__cart{position:relative;display:flex}.home__cart-badge{position:absolute;top:-7px;right:-9px}.home__greet{padding:0 var(--space-5);display:flex;flex-direction:column;gap:2px}.home__search{padding:0 var(--space-5)}.home__species{display:flex;gap:var(--space-3);padding:0 var(--space-5);overflow-x:auto;scrollbar-width:none}.home__species::-webkit-scrollbar{display:none}.home__species-item{flex-shrink:0;padding:14px 26px;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);font-size:var(--text-md);font-weight:500;color:var(--color-teal);transition:transform .15s ease,background .2s ease}.home__species-item:active{transform:scale(.96)}.home__species-item--active{color:var(--color-teal);font-weight:600}.home__section{display:flex;flex-direction:column;gap:var(--space-3)}.home__section-head{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-5)}.home__view-all{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-sm);color:var(--color-text-secondary);padding:11px 0;margin:-11px 0}.home__view-all:hover{color:var(--color-primary)}.home__list{display:flex;flex-direction:column;gap:var(--space-4);padding:0 var(--space-5)}.home__empty-btn{color:var(--color-primary);font-size:var(--text-sm);font-weight:500;padding:8px 20px;border-radius:var(--radius-pill);border:1px solid var(--color-primary)}.home__order{margin:0 var(--space-5);display:flex;align-items:center;gap:var(--space-2);background:var(--color-primary-soft);border-radius:var(--radius-md);padding:11px var(--space-4);color:var(--color-teal);font-size:var(--text-sm)}.home__order-icon{display:flex;color:var(--color-primary-strong)}.home__order-text{flex:1;text-align:left;font-weight:500}.home__order-amount{font-family:var(--font-display);color:var(--color-primary-strong);font-weight:600}.page-header{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-5) var(--space-5) var(--space-2)}.page-header__bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);min-height:44px}.page-header__back{color:var(--color-teal);width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);margin-left:-10px;transition:background .15s ease}.page-header__back:hover{background:var(--color-primary-soft)}.page-header__actions{display:flex;align-items:center;gap:var(--space-2)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f3d3e66;z-index:80;display:flex;animation:drawer-fade .18s ease-out}.drawer{background:var(--color-surface);display:flex;flex-direction:column;overflow-y:auto;max-height:100%}.drawer--bottom{margin-top:auto;width:100%;max-width:var(--shell-max);margin-left:auto;margin-right:auto;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:86vh;animation:drawer-up .26s cubic-bezier(.2,.8,.3,1)}.drawer--left{margin-right:auto;width:min(320px,85vw);height:100%;animation:drawer-left .24s ease-out}.drawer--right{margin-left:auto;width:min(320px,85vw);height:100%;animation:drawer-right .24s ease-out}.drawer__grab{flex-shrink:0;width:44px;height:4px;border-radius:var(--radius-pill);background:var(--color-mask-blue);margin:var(--space-3) auto 0}.drawer__title{font-size:var(--text-xl);font-weight:600;color:var(--color-teal);padding:var(--space-3) var(--space-5) 0}.drawer__body{flex:1;padding:var(--space-4) var(--space-5)}.drawer__footer{flex-shrink:0;padding:var(--space-4) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom))}@keyframes drawer-fade{0%{opacity:0}to{opacity:1}}@keyframes drawer-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes drawer-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes drawer-right{0%{transform:translate(100%)}to{transform:translate(0)}}.select-wrap{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.select__label{font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.select{position:relative;display:flex;align-items:center;background:var(--color-surface);border:1px solid transparent;border-radius:var(--radius-xl);transition:border .15s ease,box-shadow .15s ease}.select--md{padding:14px 18px}.select--sm{padding:9px 14px}.select:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.select--error{border-color:var(--color-danger)}.select select{flex:1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;background:transparent;font-size:var(--text-md);color:var(--color-text);cursor:pointer}.select select:invalid,.select select option[value=""]{color:var(--color-text-tertiary)}.select__chevron{color:var(--color-text-tertiary);pointer-events:none}.select__error{font-size:var(--text-xs);color:var(--color-danger)}.explore{display:flex;flex-direction:column;min-height:100dvh}.explore__chips{display:flex;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-5) var(--space-4)}.explore__chips-hint{font-size:var(--text-xs);color:var(--color-text-tertiary)}.explore__chip{display:inline-flex;align-items:center;gap:6px;background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:var(--radius-md);padding:8px 10px 8px 16px;font-size:var(--text-sm);color:var(--color-teal);animation:chip-in .2s ease-out}@keyframes chip-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.explore__chip-x{width:22px;height:22px;border-radius:7px;background:var(--color-primary);color:#fff;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .12s ease;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.explore__chip-x:active{transform:scale(.88)}.explore__list{display:flex;flex-direction:column;gap:var(--space-4);padding:0 var(--space-5) var(--space-6)}.explore__footer{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;align-items:stretch;z-index:40;padding-bottom:env(safe-area-inset-bottom)}.explore__footer-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:16px 0;font-size:var(--text-md);color:var(--color-text-secondary);font-weight:500;transition:color .15s ease}.explore__footer-btn:hover{color:var(--color-teal)}.explore__footer-sep{width:1px;background:var(--color-border);margin:12px 0}.explore__sort-list{list-style:none;display:flex;flex-direction:column}.explore__sort-item{width:100%;text-align:left;padding:15px 18px;font-size:var(--text-md);color:var(--color-text-secondary);border-radius:var(--radius-sm)}.explore__sort-item--active{background:var(--color-primary-soft);color:var(--color-teal);font-weight:600}.explore__filter-form{display:flex;flex-direction:column;gap:var(--space-4);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.explore__price-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3)}.explore__filter-actions{display:flex;gap:var(--space-3);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.explore__filter-actions .btn{flex:1}.detail{--detail-footer-h: 106px}.detail__sk-nav{padding:var(--space-4) var(--space-4) 0}.detail__media-skeleton{height:320px;border-radius:0 0 var(--radius-xl) var(--radius-xl);margin:var(--space-4)}.detail__sk-title{height:26px;width:55%;margin:var(--space-4) var(--space-5) var(--space-2)}.detail__hero{position:relative;padding:var(--space-4) var(--space-4) 0;border-radius:0 0 var(--radius-xl) var(--radius-xl)}.detail__navbar{display:flex;justify-content:space-between;margin-bottom:var(--space-2)}.detail__media{position:relative;height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden}.detail__media-mask{position:absolute;bottom:-110px;left:50%;transform:translate(-50%);width:420px;height:260px;border-radius:50%;background:#fff6}.detail__media img{position:relative;max-width:86%;max-height:96%;object-fit:contain;border-radius:var(--radius-lg);filter:drop-shadow(0 14px 22px rgba(15,61,62,.2));animation:detail-photo-in .3s ease-out}@keyframes detail-photo-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.detail__nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:#ffffffbf;color:var(--color-teal);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.detail__nav--prev{left:var(--space-5)}.detail__nav--next{right:var(--space-5)}.detail__dots{display:flex;justify-content:center;gap:6px;padding:var(--space-3) 0 var(--space-4)}.detail__dot{width:7px;height:7px;border-radius:50%;background:#ffffffb3}.detail__dot--active{background:var(--color-primary);width:18px;border-radius:var(--radius-pill)}.detail__panel{background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin-top:calc(-1 * var(--space-4));position:relative;padding:var(--space-5) var(--space-5) calc(var(--space-6) + var(--detail-footer-h));display:flex;flex-direction:column;gap:var(--space-3)}.detail__owner-trigger{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;text-align:left}.detail__owner{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.detail__owner-info{flex:1;min-width:0}.detail__owner-name{font-weight:600;color:var(--color-teal);display:flex;align-items:center;gap:5px}.detail__verified{color:var(--color-primary)}.detail__owner-actions{display:flex;gap:var(--space-2)}.detail__owner-actions .icon-btn{background:var(--color-primary-soft);color:var(--color-primary-strong)}.detail__owner-actions .icon-btn:last-child{background:var(--color-mask-blue);color:#3452b4}.detail__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-teal)}.detail__price{font-size:var(--text-2xl)}.detail__loc{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--color-text-tertiary)}.detail__section{margin-top:var(--space-3)}.detail__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.detail__grid dt{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:3px}.detail__grid dd{font-size:var(--text-md);font-weight:600;color:var(--color-teal)}.detail__desc{font-size:var(--text-sm);line-height:1.9;color:var(--color-text-secondary)}.detail__footer{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5) calc(var(--space-4) + env(safe-area-inset-bottom));background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:0 -8px 30px #0f3d3e12;z-index:45}.detail__footer .btn{flex:1}.cart{display:flex;flex-direction:column;min-height:100dvh}.cart__list{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) var(--space-5) var(--space-4)}.cart__row{position:relative}.cart__delete{position:absolute;right:var(--space-4);bottom:var(--space-4);display:inline-flex;align-items:center;gap:4px;background:var(--color-danger);color:#fff;font-size:var(--text-xs);padding:5px 12px;border-radius:var(--radius-pill);transition:transform .12s ease,background .15s ease}.cart__delete:hover{background:#e05555}.cart__delete:active{transform:scale(.94)}.cart__summary{margin:0 var(--space-5) var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-2)}.cart__total-row{display:flex;align-items:baseline;justify-content:space-between;font-size:var(--text-md);color:var(--color-teal)}.cart__total-row strong{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary)}.cart__note{font-size:var(--text-xs);color:var(--color-text-tertiary)}.cart__footer{margin-top:auto;padding:var(--space-4) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom))}.region-picker{display:flex;flex-direction:column;gap:var(--space-2)}.region-picker__label{font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.region-picker__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.region-picker__col{background:var(--color-surface);border-radius:var(--radius-md);padding:11px 8px;font-size:var(--text-sm);color:var(--color-teal);border:1px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:border .15s ease,background .15s ease}.region-picker__col--empty{color:var(--color-text-tertiary)}.region-picker__col--open{border-color:var(--color-primary);background:var(--color-primary-soft)}.region-picker__col:disabled{opacity:.45;cursor:not-allowed}.region-picker__list{list-style:none;background:var(--color-bg);border-radius:var(--radius-md);max-height:200px;overflow-y:auto;display:flex;flex-direction:column}.region-picker__opt{width:100%;text-align:left;padding:10px 14px;font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);transition:background .12s ease}.region-picker__opt:hover{background:var(--color-primary-soft)}.region-picker__opt--active{color:var(--color-primary-strong);font-weight:600;background:var(--color-primary-soft)}.region-picker__summary{font-size:var(--text-xs);color:var(--color-text-secondary)}.addr-editor{display:flex;flex-direction:column;gap:var(--space-4)}.addr-editor__labels{display:flex;gap:var(--space-2)}.addr-editor__label{padding:7px 18px;border-radius:var(--radius-pill);background:var(--color-bg);font-size:var(--text-sm);color:var(--color-text-secondary);border:1px solid transparent}.addr-editor__label--active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong);font-weight:500}.addr-editor__error{font-size:var(--text-xs);color:var(--color-danger);margin-top:-8px}.addr-editor__actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:var(--space-2)}.checkout{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:110px}.checkout__section{padding:0 var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.checkout__section-head{display:flex;align-items:center;justify-content:space-between}.checkout__change{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-sm);color:var(--color-text-secondary);padding:11px 0;margin:-11px 0}.checkout__address,.checkout__add-address{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);text-align:left;width:100%}.checkout__add-address{justify-content:center;color:var(--color-primary);font-weight:500;font-size:var(--text-sm);border:1px dashed var(--color-primary);background:var(--color-primary-soft);box-shadow:none}.checkout__address-icon{width:38px;height:38px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-strong);display:flex;align-items:center;justify-content:center;flex-shrink:0}.checkout__address-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.checkout__address-title{font-size:var(--text-sm);font-weight:600;color:var(--color-teal);display:flex;align-items:center;gap:6px}.checkout__tag{font-style:normal;font-size:10px;background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);padding:1px 7px}.checkout__address-text{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.checkout__address-label{font-size:var(--text-xs);color:var(--color-text-tertiary);background:var(--color-bg);padding:2px 8px;border-radius:var(--radius-pill)}.checkout__pay-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.checkout__pay{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface);border-radius:var(--radius-md);padding:14px;border:1.5px solid transparent;box-shadow:var(--shadow-card);transition:border .15s ease,background .15s ease}.checkout__pay--active{border-color:var(--color-primary);background:var(--color-primary-soft)}.checkout__pay-icon{display:flex;color:var(--color-text-secondary)}.checkout__pay-icon--wechat{color:#22b358}.checkout__pay-icon--alipay{color:#1677ff}.checkout__pay-name{flex:1;font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.checkout__pay-check{width:20px;height:20px;border-radius:7px;border:1.5px solid var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;color:#fff}.checkout__pay--active .checkout__pay-check{background:var(--color-primary);border-color:var(--color-primary)}.checkout__items{display:flex;flex-direction:column;gap:var(--space-2)}.checkout__item{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-card)}.checkout__item-thumb{width:58px;height:58px;border-radius:var(--radius-md);overflow:hidden;background:var(--color-mask-pink);flex-shrink:0}.checkout__item-thumb img{width:100%;height:100%;object-fit:cover}.checkout__item-body{flex:1;min-width:0}.checkout__item-name{font-size:var(--text-sm);font-weight:600;color:var(--color-teal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkout__summary{margin:var(--space-2) var(--space-5) 0;background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-2)}.checkout__sum-row{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--color-text-secondary)}.checkout__sum-row--total{border-top:1px solid var(--color-border);padding-top:var(--space-2);color:var(--color-teal);font-weight:600}.checkout__sum-row--total strong{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary)}.checkout__footer{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);padding:var(--space-4) var(--space-5) calc(var(--space-4) + env(safe-area-inset-bottom));background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:0 -8px 30px #0f3d3e12;z-index:45}.checkout__addr-list{display:flex;flex-direction:column;gap:var(--space-2)}.checkout__addr-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);text-align:left;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg);border:1.5px solid transparent}.checkout__addr-item--active{background:var(--color-primary-soft);border-color:var(--color-primary)}.checkout__addr-name{font-size:var(--text-sm);font-weight:600;color:var(--color-teal)}.checkout__addr-text{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:2px}.checkout__addr-checkout{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.checkout__addr-item--active .checkout__addr-checkout{background:var(--color-primary);border-color:var(--color-primary)}.payment{display:flex;flex-direction:column;gap:var(--space-4)}.payment__card{margin:0 var(--space-5);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.payment__method-row{display:flex;gap:var(--space-2)}.payment__method{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:var(--radius-pill);background:var(--color-bg);font-size:var(--text-sm);color:var(--color-text-secondary);border:1.5px solid transparent}.payment__method--active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-teal);font-weight:600}.payment__method-dot{width:8px;height:8px;border-radius:50%}.payment__method-dot--wechat{background:#22b358}.payment__method-dot--alipay{background:#1677ff}.payment__amount{text-align:center;display:flex;flex-direction:column;gap:4px}.payment__amount-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.payment__amount strong{font-family:var(--font-display);font-size:34px;font-weight:600;color:var(--color-teal)}.payment__qr-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-2) 0}.payment__qr{width:190px;height:190px;border-radius:var(--radius-lg);border:8px solid var(--color-surface);box-shadow:var(--shadow-card);background:var(--color-surface)}.payment__qr-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);text-align:center}.payment__meta{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--color-text-tertiary);border-top:1px dashed var(--color-border);padding-top:var(--space-3)}.payment__safe{display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--text-xs);color:var(--color-text-secondary)}.payment__safe svg{color:var(--color-success)}.payment__actions{padding:0 var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.payment__actions-row{display:flex;gap:var(--space-3)}.payment__actions-row .btn{flex:1}.result{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:14vh var(--space-5) var(--space-6);gap:var(--space-4);text-align:center}.result__icon{width:108px;height:108px;border-radius:50%;display:flex;align-items:center;justify-content:center;animation:result-pop .4s cubic-bezier(.2,1.2,.4,1.2)}.result__icon--success{background:var(--color-mask-green);color:#2e7d3f}.result__icon--fail{background:var(--color-danger-soft);color:var(--color-danger)}@keyframes result-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.result__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-teal)}.result__desc{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:300px;line-height:1.7}.result__summary{width:100%;background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.result__row{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--color-text-secondary)}.result__row strong{color:var(--color-teal);font-weight:600;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result__row--amount{border-top:1px solid var(--color-border);padding-top:var(--space-2)}.result__row--amount strong{color:var(--color-primary);font-family:var(--font-display);font-size:var(--text-lg)}.result__actions{width:100%;display:flex;flex-direction:column;gap:var(--space-3);margin-top:auto;padding-top:var(--space-8)}.tabs{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs__item{position:relative;flex-shrink:0;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);transition:background .15s ease,color .15s ease;display:inline-flex;align-items:center;gap:6px}.tabs--pill .tabs__item{padding:9px 18px;background:var(--color-surface);box-shadow:var(--shadow-card)}.tabs--pill .tabs__item--active{background:var(--color-primary);color:#fff}.tabs--underline .tabs__item{padding:10px 4px;background:none;border-bottom:2px solid transparent;border-radius:0}.tabs--underline .tabs__item--active{color:var(--color-teal);border-bottom-color:var(--color-primary)}.tabs--sm .tabs__item{font-size:var(--text-xs);padding:6px 14px}.tabs__badge{background:var(--color-danger);color:#fff;border-radius:var(--radius-pill);font-size:10px;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f3d3e66;display:flex;align-items:center;justify-content:center;z-index:90;animation:modal-fade .18s ease-out}.modal{width:calc(100vw - 48px);max-width:calc(var(--shell-max) - 48px);max-height:82vh;display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;animation:modal-pop .22s cubic-bezier(.2,.9,.3,1.2)}.modal--sm{max-width:320px}.modal--lg{max-width:460px}.modal__head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-5) 0}.modal__title{font-size:var(--text-lg);font-weight:600;color:var(--color-teal)}.modal__close{color:var(--color-text-tertiary);padding:4px;border-radius:var(--radius-sm)}.modal__close:hover{color:var(--color-teal);background:var(--color-bg)}.modal__body{padding:var(--space-4) var(--space-5);overflow-y:auto}.modal__footer{padding:var(--space-4) var(--space-5);display:flex;gap:var(--space-3);justify-content:flex-end}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.orders{display:flex;flex-direction:column;gap:var(--space-3)}.orders__link{font-size:var(--text-sm);color:var(--color-primary);font-weight:500;padding:11px 0;margin:-11px 0}.orders__tabs{padding:0 var(--space-5)}.orders__count{font-size:10px;background:var(--color-primary-soft);color:var(--color-primary-strong);border-radius:var(--radius-pill);padding:0 5px;min-width:16px;text-align:center}.orders__list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) var(--space-5) var(--space-6)}.orders__card{display:flex;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-card);text-align:left;transition:transform .15s ease}.orders__card:active{transform:scale(.99)}.orders__thumb{width:84px;height:84px;border-radius:var(--radius-md);background:var(--color-mask-pink);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-teal)}.orders__thumb img{width:100%;height:100%;object-fit:cover}.orders__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;justify-content:center}.orders__card-top{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.orders__breed{font-size:var(--text-sm);font-weight:600;color:var(--color-teal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders__status{font-size:11px;padding:2px 9px;border-radius:var(--radius-pill);flex-shrink:0;font-weight:500}.orders__status--pending{background:var(--color-danger-soft);color:var(--color-danger)}.orders__status--paid{background:var(--color-primary-soft);color:var(--color-primary-strong)}.orders__status--accepted{background:var(--color-mask-blue);color:#3452b4}.orders__status--done{background:var(--color-mask-green);color:#2e7d3f}.orders__status--cancelled{background:var(--color-bg);color:var(--color-text-tertiary)}.orders__meta{font-size:11px;color:var(--color-text-tertiary)}.orders__detail{display:flex;flex-direction:column;gap:var(--space-4)}.orders__detail-head{display:flex;align-items:center;justify-content:space-between}.orders__timeline{list-style:none;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-4)}.orders__step{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-tertiary)}.orders__step em{margin-left:auto;font-style:normal;font-size:var(--text-xs)}.orders__dot{width:10px;height:10px;border-radius:50%;background:var(--color-border);flex-shrink:0}.orders__step--done{color:var(--color-teal);font-weight:500}.orders__step--done .orders__dot{background:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-soft)}.orders__block{display:flex;flex-direction:column;gap:6px}.orders__block h4{font-size:var(--text-sm);color:var(--color-teal);display:flex;align-items:center;gap:5px}.orders__item{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg);border-radius:var(--radius-md);padding:8px;text-align:left}.orders__item img{width:40px;height:40px;border-radius:var(--radius-sm);object-fit:cover}.orders__item span:nth-child(2){flex:1;font-size:var(--text-sm);color:var(--color-teal)}.orders__total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--color-border);padding-top:var(--space-3);font-size:var(--text-sm);color:var(--color-teal);font-weight:600}.orders__total strong{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary)}.orders__refund{background:var(--color-danger-soft);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm)}.orders__refund>p:first-child{font-weight:600;color:var(--color-danger)}.orders__actions{display:flex;gap:var(--space-3)}.orders__actions .btn{flex:1}.orders__cancel{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.orders__cancel p:first-child{font-weight:600;color:var(--color-teal)}.textarea-wrap{display:flex;flex-direction:column;gap:var(--space-2)}.textarea__label{font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.textarea{background:var(--color-surface);border:1px solid transparent;border-radius:var(--radius-lg);padding:14px 18px;font-size:var(--text-md);color:var(--color-text);resize:vertical;outline:none;transition:border .15s ease,box-shadow .15s ease}.textarea::placeholder{color:var(--color-text-tertiary)}.textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.textarea--error{border-color:var(--color-danger)}.textarea__error{font-size:var(--text-xs);color:var(--color-danger)}.publish{display:flex;flex-direction:column;gap:var(--space-4)}.publish__form{padding:0 var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.publish__photos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.publish__photo{position:relative;aspect-ratio:1;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-card)}.publish__photo img{width:100%;height:100%;object-fit:cover}.publish__photo-x{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:#0f3d3ea6;color:#fff;display:flex;align-items:center;justify-content:center}.publish__photo-add{aspect-ratio:1;border-radius:var(--radius-lg);border:1.5px dashed var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-strong);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:var(--text-xs)}.publish__error{font-size:var(--text-xs);color:var(--color-danger);margin-top:-8px}.publish__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3)}.publish__unit{font-size:var(--text-sm);color:var(--color-text-tertiary)}.publish__note{font-size:var(--text-xs);color:var(--color-text-tertiary);text-align:center;line-height:1.6}.publish__picker{display:flex;flex-direction:column;gap:var(--space-3)}.publish__upload-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:14px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:500;font-size:var(--text-sm)}.publish__picker-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);text-align:center}.publish__preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.publish__preset{aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg)}.publish__preset img{width:100%;height:100%;object-fit:cover;transition:transform .15s ease}.publish__preset:hover img{transform:scale(1.05)}.chat-list{display:flex;flex-direction:column;gap:var(--space-3)}.chat-list__items{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) var(--space-5) var(--space-6)}.chat-list__item{display:flex;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);text-align:left;transition:transform .15s ease}.chat-list__item:active{transform:scale(.99)}.chat-list__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.chat-list__top{display:flex;justify-content:space-between;align-items:center}.chat-list__name{font-size:var(--text-md);font-weight:600;color:var(--color-teal)}.chat-list__time{font-size:var(--text-xs);color:var(--color-text-tertiary)}.chat-list__bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.chat-list__last{font-size:var(--text-sm);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-list__pet{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--color-text-tertiary);margin-top:2px}.chat-list__pet img{width:20px;height:20px;border-radius:6px;object-fit:cover}.chat-room{display:flex;flex-direction:column;height:100dvh;position:relative}.chat-room__head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4);background:var(--color-bg);position:sticky;top:0;z-index:10}.chat-room__back{color:var(--color-teal);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.chat-room__back:hover{background:var(--color-primary-soft)}.chat-room__who{flex:1;min-width:0;display:flex;flex-direction:column}.chat-room__name{font-size:var(--text-md);font-weight:600;color:var(--color-teal)}.chat-room__city{font-size:var(--text-xs);color:var(--color-text-tertiary)}.chat-room__call{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-strong);display:flex;align-items:center;justify-content:center}.chat-room__pet{margin:0 var(--space-5) var(--space-2);display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-card);text-align:left}.chat-room__pet img{width:42px;height:42px;border-radius:var(--radius-sm);object-fit:cover;background:var(--color-mask-pink)}.chat-room__pet-body{flex:1;display:flex;flex-direction:column}.chat-room__pet-name{font-size:var(--text-sm);font-weight:600;color:var(--color-teal)}.chat-room__pet-meta{font-size:var(--text-xs);color:var(--color-text-tertiary)}.chat-room__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 100px}.chat-room__empty-hint{text-align:center;font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:var(--space-6)}.chat-room__msg{display:flex;gap:var(--space-2);align-items:flex-end;max-inline-size:100%}.chat-room__msg--me{justify-content:flex-end}.chat-room__bubble-wrap{display:flex;flex-direction:column;gap:2px;max-width:76%}.chat-room__msg--me .chat-room__bubble-wrap{align-items:flex-end}.chat-room__bubble{background:var(--color-surface);color:var(--color-text-secondary);padding:11px 15px;border-radius:var(--radius-lg);border-bottom-left-radius:6px;font-size:var(--text-sm);line-height:1.6;box-shadow:var(--shadow-card);word-break:break-word}.chat-room__msg--me .chat-room__bubble{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);border-bottom-right-radius:6px;box-shadow:0 6px 16px #f0a83c4d}.chat-room__bubble-wrap .chat-room__time{font-size:10px;color:var(--color-text-tertiary);padding:0 4px}.chat-room__inputbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--color-bg)}.chat-room__input{flex:1;border:none;outline:none;background:var(--color-surface);border-radius:var(--radius-pill);padding:13px 20px;font-size:var(--text-sm);box-shadow:var(--shadow-card)}.chat-room__input::placeholder{color:var(--color-text-tertiary)}.chat-room__send{width:46px;height:46px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-float);flex-shrink:0;transition:transform .12s ease}.chat-room__send:active{transform:scale(.92)}.chat-room__send:disabled{opacity:.4;box-shadow:none;cursor:not-allowed}.switch{position:relative;width:46px;height:26px;border-radius:var(--radius-pill);background:var(--color-text-tertiary);transition:background .2s ease;flex-shrink:0}.switch--on{background:var(--color-primary)}.switch:disabled{opacity:.4;cursor:not-allowed}.switch__thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0f3d3e40;transition:transform .2s ease}.switch--on .switch__thumb{transform:translate(20px)}.list-item{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);text-align:left}.list-item--clickable{cursor:pointer;transition:transform .15s ease,background .15s ease}.list-item--clickable:hover{background:var(--color-surface-hover)}.list-item--clickable:active{transform:scale(.99)}.list-item--selected{background:var(--color-primary-soft)}.list-item__leading{flex-shrink:0;display:flex;align-items:center}.list-item__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.list-item__title{font-size:var(--text-md);font-weight:600;color:var(--color-teal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item__subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item__meta{display:flex;gap:var(--space-2);flex-wrap:wrap}.list-item__trailing{flex-shrink:0;display:flex;align-items:center;gap:var(--space-2)}.profile{display:flex;flex-direction:column;gap:var(--space-4)}.profile__card{margin:0 var(--space-5);background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-card);display:flex;align-items:center;gap:var(--space-4)}.profile__me{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile__name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--color-teal)}.profile__phone{font-size:var(--text-xs);color:var(--color-text-tertiary)}.profile__bio{font-size:var(--text-xs);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile__edit{width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-strong);display:flex;align-items:center;justify-content:center}.profile__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);margin:0 var(--space-5)}.profile__stat{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-3) 0;box-shadow:var(--shadow-card);display:flex;flex-direction:column;align-items:center;gap:2px}.profile__stat strong{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-teal)}.profile__stat span{font-size:var(--text-xs);color:var(--color-text-tertiary)}.profile__section,.profile__group{margin:0 var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.profile__section-head{display:flex;align-items:center;justify-content:space-between}.profile__section-link{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-sm);color:var(--color-primary);font-weight:500;padding:11px 0;margin:-11px 0}.profile__listings{display:flex;flex-direction:column;gap:var(--space-2)}.profile__listing{display:flex;align-items:center;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2);gap:var(--space-2)}.profile__listing-main{flex:1;display:flex;align-items:center;gap:var(--space-3);text-align:left;min-width:0}.profile__listing-main img{width:58px;height:58px;border-radius:var(--radius-md);object-fit:cover;background:var(--color-mask-pink)}.profile__listing-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.profile__listing-name{font-size:var(--text-sm);font-weight:600;color:var(--color-teal)}.profile__listing-meta{font-size:11px;color:var(--color-text-tertiary)}.profile__listing-del{width:34px;height:34px;border-radius:var(--radius-md);color:var(--color-danger);background:var(--color-danger-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile__group .list-item{box-shadow:var(--shadow-card);padding:14px var(--space-4)}.profile__group .list-item__leading{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-strong);display:flex;align-items:center;justify-content:center}.profile__group .list-item__title{font-size:var(--text-sm)}.profile__group .list-item__subtitle{font-size:var(--text-xs)}.profile__group .list-item__trailing{color:var(--color-text-tertiary)}.profile__footnote{text-align:center;font-size:var(--text-xs);color:var(--color-text-tertiary);padding:var(--space-4) 0 var(--space-6)}.profile__form{display:flex;flex-direction:column;gap:var(--space-3)}.profile__avatar-row{display:flex;align-items:center;gap:var(--space-3)}.profile__switches{display:flex;flex-direction:column;gap:var(--space-4)}.profile__switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.profile__switch-row p{font-size:var(--text-sm);font-weight:500;color:var(--color-teal)}.profile__switch-row span{font-size:var(--text-xs);color:var(--color-text-tertiary)}.profile__addr-list{display:flex;flex-direction:column;gap:var(--space-3)}.profile__addr{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);border:1.5px solid transparent}.profile__addr--default{border-color:var(--color-primary);background:var(--color-primary-soft)}.profile__addr-name{font-size:var(--text-sm);font-weight:600;color:var(--color-teal);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.profile__addr-tag{font-size:10px;background:var(--color-primary);color:#fff;padding:1px 7px;border-radius:var(--radius-pill);font-weight:500}.profile__addr-label{font-size:10px;color:var(--color-text-tertiary);background:var(--color-surface);padding:1px 7px;border-radius:var(--radius-pill)}.profile__addr-text{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:2px}.profile__addr-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.profile__addr-btn{font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface);padding:4px 12px;border-radius:var(--radius-pill)}.profile__addr-btn--danger{color:var(--color-danger)}.profile__addr-confirm{display:inline-flex;gap:var(--space-2)}.profile__support{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.profile__support-title{color:var(--color-text-tertiary);font-size:var(--text-xs)}.profile__support-phone{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--color-teal)}.profile__support-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.profile__faq{margin-top:var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-xs);color:var(--color-text-secondary)}.profile__faq p{font-weight:600;color:var(--color-teal);margin-bottom:4px}.profile__faq ul{padding-left:16px;display:flex;flex-direction:column;gap:4px;line-height:1.6}.profile__about{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.profile__about-logo{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:var(--color-teal)}.profile__about-desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.7}.profile__about-update{display:flex;align-items:center;gap:5px;color:var(--color-success);font-size:var(--text-sm)}.profile__about-link{font-size:var(--text-xs);color:var(--color-primary);margin-top:var(--space-2)}.owner{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-4)}.owner__hero{display:flex;flex-direction:column;align-items:center;gap:calc(-1 * var(--space-6));padding:var(--space-6) var(--space-5) 0;background:linear-gradient(180deg,var(--color-primary-soft),transparent);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.owner__hero .owner__avatar{box-shadow:0 8px 22px #0f3d3e1f;border:4px solid var(--color-surface)}.owner__card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:100%;padding:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:var(--space-4)}.owner__name{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-teal);font-weight:600}.owner__loc{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);color:var(--color-text-tertiary)}.owner__actions{display:flex;justify-content:center;gap:var(--space-5);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin:0 var(--space-5);padding:var(--space-4)}.owner__action{width:54px;height:54px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.owner__action:active{transform:scale(.92)}.owner__action--mail{background:var(--color-mask-blue);color:#3452b4}.owner__action--phone{background:var(--color-primary-soft);color:var(--color-primary-strong)}.owner__action--video{background:var(--color-mask-blue);color:#3452b4}.owner__about{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin:0 var(--space-5);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.owner__about-head{display:flex;align-items:center;justify-content:space-between}.owner__about-title{font-size:var(--text-md);font-weight:600;color:var(--color-teal)}.owner__about-edit{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-md);background:var(--color-primary);color:#fff}.owner__about-text{font-size:var(--text-sm);line-height:1.8;color:var(--color-text-secondary)}.owner__pets{display:flex;flex-direction:column;gap:var(--space-3);padding:0 var(--space-5) var(--space-4)}.owner__list{display:flex;flex-direction:column;gap:var(--space-4)}.payments{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-4)}.payments__list{display:flex;flex-direction:column;gap:var(--space-3);padding:0 var(--space-5)}.payments__row{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}.payments__row--default{background:var(--color-primary-soft);border-color:transparent}.payments__main{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;text-align:left}.payments__logo{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.payments__logo--add{opacity:.55}.payments__body{display:flex;flex-direction:column;gap:2px;min-width:0}.payments__name{font-weight:600;color:var(--color-teal)}.payments__account{font-size:var(--text-xs);color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payments__default-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);font-weight:600;color:var(--color-primary-strong);background:var(--color-surface);border-radius:var(--radius-pill);padding:4px 10px;flex-shrink:0}.payments__set-default{font-size:var(--text-xs);color:var(--color-text-tertiary);flex-shrink:0}.payments__remove{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-danger);background:var(--color-danger-soft);flex-shrink:0}.payments__add-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-md);background:var(--color-primary);color:#fff}.payments__safe{display:flex;align-items:center;gap:6px;margin:0 var(--space-5);font-size:var(--text-xs);color:var(--color-text-tertiary)}.payments__bind{display:flex;flex-direction:column;gap:var(--space-4)}.payments__bind-note{font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:1.7}.agreement__body{padding:var(--space-3) var(--space-5) var(--space-8);display:flex;flex-direction:column;gap:var(--space-4)}.agreement__meta{font-size:var(--text-xs);color:var(--color-text-tertiary)}.agreement__body h2{font-size:var(--text-md);color:var(--color-teal);margin-bottom:var(--space-1)}.agreement__body p{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.8}.page-with-nav-gap{padding-bottom:var(--space-6)}.splash{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-gradient);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);z-index:200;pointer-events:none;animation:splash-in .3s ease-out}.splash__dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary);margin-top:var(--space-4);animation:splash-pulse .9s ease-in-out infinite}.splash__text{font-size:var(--text-xs);color:var(--color-text-tertiary)}@keyframes splash-in{0%{opacity:0}to{opacity:1}}@keyframes splash-pulse{0%,to{transform:scale(.7);opacity:.5}50%{transform:scale(1.1);opacity:1}}.app-notfound{padding-top:18vh}.app-main::-webkit-scrollbar{width:0}
