.tab-bar[data-v-f8e7855e]{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:var(--shell-max);z-index:70;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg-card);border-top:1px solid var(--line);box-shadow:0 -1px 2px #171a2b0d;display:flex}@media(min-width:1200px){.tab-bar[data-v-f8e7855e]{display:none}}.tab-item[data-v-f8e7855e]{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative;color:var(--text-3)}.tab-icon[data-v-f8e7855e]{position:relative;display:flex;transition:transform var(--dur-base) var(--ease-spring)}.tab-item.active .tab-icon[data-v-f8e7855e]{transform:translateY(-1px)}.tab-label[data-v-f8e7855e]{font-size:var(--font-micro);line-height:var(--lh-micro);letter-spacing:.02em}.tab-item.active .tab-label[data-v-f8e7855e]{font-weight:600}.tab-indicator[data-v-f8e7855e]{position:absolute;bottom:5px;left:50%;width:16px;height:4px;margin-left:-8px;border-radius:var(--radius-tag);background:currentColor;opacity:0;transform:scaleX(0)}.tab-item.active .tab-indicator[data-v-f8e7855e]{opacity:1;transform:scaleX(1);transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.dot-badge[data-v-f8e7855e]{position:absolute;top:-1px;right:-4px;width:6px;height:6px;border-radius:50%;background:var(--color-danger)}.desk-nav[data-v-b086d9e0]{display:none}@media(min-width:1200px){.desk-nav[data-v-b086d9e0]{display:flex;flex-direction:column;gap:4px;width:var(--desknav-w);flex-shrink:0;position:sticky;top:0;height:100vh;padding:14px 12px;background:var(--bg-card);border-right:1px solid var(--line);box-sizing:border-box}.brand[data-v-b086d9e0]{font-family:var(--font-family-display);font-size:var(--font-h2);font-weight:700;padding:6px 10px 14px}.d-item[data-v-b086d9e0]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:11px 12px;border-radius:var(--radius-btn);font-size:var(--font-body);color:var(--text-2);text-align:left;position:relative}.d-item[data-v-b086d9e0]:hover{background:var(--bg-page)}.d-item.active[data-v-b086d9e0]{background:var(--color-primary-light);color:var(--color-primary-strong);font-weight:600}.d-item.active[data-v-b086d9e0]:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 var(--radius-tag) var(--radius-tag) 0;background:var(--color-primary)}.divider[data-v-b086d9e0]{height:1px;background:var(--line);margin:8px 6px}}.toast[data-v-be4a7031]{position:fixed;top:18%;left:50%;transform:translate(-50%);z-index:99;max-width:78%;background:#000000bf;color:#fff;border-radius:var(--radius-full);padding:9px 18px;display:flex;align-items:center;gap:6px;font-size:var(--font-sm);white-space:nowrap}.toast-text[data-v-be4a7031]{overflow:hidden;text-overflow:ellipsis}.toast-icon[data-v-be4a7031]{font-size:14px}.toast-action[data-v-be4a7031]{color:var(--accent-line);font-size:var(--font-sm);font-weight:600;flex-shrink:0}:root{--shell-max: 480px}@media(min-width:768px)and (max-width:1199.98px){:root{--shell-max: 860px}}@media(min-width:1200px){:root{--shell-max: 1072px;--desknav-w: 208px}}:root{--color-primary: #3733EB;--color-primary-strong: #2723C4;--color-primary-strong-hover: #1F1CA6;--color-primary-light: #ECEBFF;--color-primary-gradient: linear-gradient(135deg, #3733EB, #625EFF);--accent-line: #FF8F1F;--shell-deep: #12172E;--bg-page: #F2F4FB;--bg-card: #FFFFFF;--bg-input: #EEF0F7;--bg-input-hover: #E9EBF4;--text-1: #171A2B;--text-2: #4A4E63;--text-3: #8B90A6;--text-4: #C6CADB;--line: #EAECF5;--mask: rgba(0, 0, 0, .45);--color-forum: var(--color-primary);--color-forum-light: var(--color-primary-light);--color-errand: #FF8F1F;--color-errand-light: #FFF3E6;--color-mall: #FA5151;--color-mall-light: #FFECEC;--color-schedule: #8A5CF6;--color-schedule-light: #F1EBFE;--color-message: #00B578;--color-message-light: #E6F7EF;--color-success: #00B578;--color-warning: #FFA300;--color-danger: #FA3534;--color-price: #FF4D1F;--color-disabled-bg: #DFE2EC;--color-disabled-fg: #9095A8;--primary-soft: var(--color-primary-light);--success-soft: #E6F7EF;--warning-soft: #FFF3E6;--danger-soft: #FFECEC;--muted-soft: var(--bg-input);--success-text: #00795B;--warning-text: #8A5800;--danger-text: #D93025;--gradient-primary: var(--color-primary-gradient);--gradient-warm: linear-gradient(90deg, #FF8F1F, #FFB25C);--font-family: "Noto Sans SC", "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Microsoft YaHei", sans-serif;--font-family-display: "Sora", "Noto Sans SC", "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", sans-serif;--font-micro: 12px;--font-caption: 12px;--font-sm: 13px;--font-body: 14px;--font-h3: 14px;--font-lg: 16px;--font-h2: 16px;--font-xl: 18px;--font-h1: 22px;--font-display: 28px;--lh-display: 36px;--lh-h1: 29px;--lh-h2: 21px;--lh-h3: 20px;--lh-body: 22px;--lh-caption: 19px;--lh-micro: 19px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px;--space-section: var(--space-6);--page-pad-x: 16px;--card-pad: 16px;--card-gap: 12px;--radius-xs: 4px;--radius-s: 8px;--radius-m: 14px;--radius-l: 16px;--radius-xl: 24px;--radius-card: 14px;--radius-btn: 10px;--radius-input: 10px;--radius-tag: 999px;--radius-full: 999px;--shadow-rest: 0 1px 2px rgba(23, 26, 43, .05);--shadow-hover: 0 6px 16px rgba(23, 26, 43, .1);--shadow-floating: 0 12px 32px rgba(23, 26, 43, .16);--shadow-1: var(--shadow-rest);--shadow-2: var(--shadow-hover);--shadow-3: var(--shadow-floating);--z-header: 10;--z-sticky: 20;--z-nav: 30;--z-drawer-mask: 40;--z-drawer: 41;--z-modal: 60;--z-toast: 99;--z-sheet-mask: 90;--z-sheet: 91;--z-dialog: 92;--z-tabbar: 70;--dur-fast: .12s;--dur-base: .24s;--dur-slow: .36s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-inout: cubic-bezier(.45, 0, .55, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--tap-min: 44px;--touch-min: var(--tap-min);--focus-ring: 0 0 0 2px var(--bg-card), 0 0 0 4px var(--color-primary);--focus-outline: 2px solid var(--color-primary);--icon-inline: 20px;--icon-nav: 24px;--icon-gap: 8px;--tnum: tabular-nums}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{font-family:var(--font-family);color:var(--text-1);background:#e9ebf2}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit}input,textarea,select{font-family:inherit;border:none;outline:none;background:none;color:var(--text-1)}input::placeholder,textarea::placeholder{color:var(--text-4)}a{color:inherit;text-decoration:none}ul,ol,li{list-style:none}img{display:block;max-width:100%}#app{min-height:100vh}.app-frame{display:flex;min-height:100vh}.phone-shell{position:relative;width:100%;max-width:var(--shell-max);margin:0 auto;min-height:100vh;background:var(--bg-page)}@media(min-width:768px){.phone-shell{box-shadow:var(--shadow-floating);min-height:100vh}}.page{min-height:100vh;padding-bottom:calc(56px + env(safe-area-inset-bottom))}.page--no-tabbar{padding-bottom:0}@media(min-width:1200px){.page{padding-bottom:24px}}.page-enter-active{transition:opacity var(--dur-slow) var(--ease-spring),transform var(--dur-slow) var(--ease-spring)}.page-leave-active{transition:opacity var(--dur-fast) var(--ease-out)}.page-enter-from{opacity:0;transform:translateY(8px) scale(.995)}.page-leave-to{opacity:0}@media(min-width:1200px){.page-enter-active{transition-duration:var(--dur-base)}.page-enter-from{transform:none}}.page-body{padding:12px 16px 24px}.t-display{font-size:var(--font-display);line-height:var(--lh-display);font-weight:700}.t-h1{font-size:var(--font-h1);line-height:var(--lh-h1);font-weight:600}.t-h2{font-size:var(--font-h2);line-height:var(--lh-h2);font-weight:600}.t-h3{font-size:var(--font-h3);line-height:var(--lh-h3);font-weight:600}.t-body{font-size:var(--font-body);line-height:var(--lh-body);font-weight:400}.t-caption{font-size:var(--font-caption);line-height:var(--lh-caption);font-weight:400}.t-micro{font-size:var(--font-micro);line-height:var(--lh-micro);font-weight:400}.num,.tnum{font-variant-numeric:tabular-nums}.num-display{font-family:var(--font-family-display);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ellipsis-2{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ico-text{display:inline-flex;align-items:center;gap:var(--icon-gap)}.ico-text svg{flex-shrink:0}.card{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-rest);padding:var(--card-pad)}.card-inner{border-radius:calc(var(--radius-card) - 6px);background:var(--bg-input)}@media(hover:hover){.card-hover{will-change:transform}.card-hover:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}}.card-hover{transition:box-shadow var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:48px;padding:0 20px;border-radius:var(--radius-btn);font-size:16px;font-weight:600;line-height:1;position:relative;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none}.btn:active{transform:scale(.97);box-shadow:none}@media(hover:hover){.btn--ghost:hover,.btn--danger-ghost:hover{background:#171a2b0a}}.btn--primary{background:var(--color-primary-strong);color:#fff;box-shadow:var(--shadow-rest)}@media(hover:hover){.btn--primary:hover{background:var(--color-primary-strong-hover)}}.btn--errand{background:var(--color-errand);color:#fff;box-shadow:var(--shadow-rest)}.btn--mall{background:var(--color-mall);color:#fff;box-shadow:var(--shadow-rest)}.btn--danger{background:var(--color-danger);color:#fff;box-shadow:var(--shadow-rest)}.btn--secondary{background:var(--color-primary-light);color:var(--color-primary-strong)}.btn--ghost{background:transparent;color:var(--color-primary-strong);border:1px solid var(--line)}.btn--danger-ghost{background:transparent;color:var(--color-danger);border:1px solid currentColor}.btn--disabled,.btn:disabled:not(.is-loading):not(.btn--loading),.btn[disabled]:not(.is-loading):not(.btn--loading){background:var(--color-disabled-bg)!important;color:var(--text-2)!important;pointer-events:auto;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn--loading,.btn.is-loading{pointer-events:none;color:transparent!important}.btn--loading:before,.btn.is-loading:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:btn-spin .8s linear infinite}.btn--loading.btn--secondary:before,.btn--loading.btn--ghost:before,.btn--loading.btn--danger-ghost:before{border-color:#2723c440;border-top-color:var(--color-primary)}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn--sm{height:36px;padding:0 14px;font-size:var(--font-sm)}.btn--block{width:100%}.pressable{transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),background-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),color var(--dur-fast) var(--ease-out)}.pressable:active{opacity:.85;transform:scale(.98)}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:var(--font-sm);font-weight:500;color:var(--text-2)}.field-input{width:100%;min-height:44px;padding:10px 12px;border-radius:var(--radius-input);background:var(--bg-input);border:1px solid transparent;font-size:var(--font-body);line-height:var(--lh-body);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field-input:hover{background:var(--bg-input-hover)}.field-input:focus{background:var(--bg-card);border-color:var(--color-primary);box-shadow:0 0 0 3px #3733eb24}.field-error .field-input,.field-input.is-error{border-color:var(--color-danger);background:var(--bg-card)}.field-error-msg{font-size:var(--font-caption);color:var(--danger-text)}.field-input:disabled,.field-input[disabled]{background:var(--color-disabled-bg);color:var(--color-disabled-fg);cursor:not-allowed}.field-input[readonly]{cursor:default;opacity:.85}textarea.field-input{resize:vertical;min-height:96px}.bottom-bar{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:var(--shell-max);z-index:60;background:var(--bg-card);border-top:1px solid var(--line);box-shadow:0 -1px 2px #171a2b0d;padding:8px 16px calc(8px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px}@media(min-width:1200px){.bottom-bar{left:var(--desknav-w);right:0;width:auto;transform:none;margin:0 auto}}.skeleton-block{position:relative;overflow:hidden;background:var(--line);border-radius:var(--radius-s)}.skeleton-block:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:shimmer 1.2s infinite}@keyframes shimmer{to{transform:translate(100%)}}.list-in,.sticker-in{animation:list-in var(--dur-slow) var(--ease-spring) both;animation-delay:calc(var(--stagger-i, 0) * 40ms)}@keyframes list-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sticker-in{animation-name:sticker-in}@keyframes sticker-in{0%{opacity:0;transform:translateY(8px) scale(.98) rotate(-1.2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes breathe{0%,to{box-shadow:0 0 0 2px #fffffff2,0 0 10px 2px #8a5cf68c}50%{box-shadow:0 0 0 3px #fffffff2,0 0 18px 6px #8a5cf6bf}}@keyframes float-heart{0%{opacity:1;transform:translate(-50%) scale(.6)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-90px) scale(1.6)}}.toast-enter-active{transition:opacity var(--dur-base) var(--ease-spring),transform var(--dur-base) var(--ease-spring)}.toast-leave-active{transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.toast-enter-from{opacity:0;transform:translate(-50%,-10px)}.toast-leave-to{opacity:0;transform:translate(-50%,-6px)}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur-fast) var(--ease-out)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active{transition:transform var(--dur-base) var(--ease-spring)}.slide-up-leave-active{transition:transform var(--dur-fast) var(--ease-inout)}.slide-up-enter-from,.slide-up-leave-to{transform:translateY(100%)}.pop-enter-active{transition:opacity var(--dur-base) var(--ease-spring),transform var(--dur-base) var(--ease-spring)}.pop-leave-active{transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.pop-enter-from{opacity:0;transform:scale(.92)}.pop-leave-to{opacity:0;transform:scale(.95)}:focus-visible{outline:var(--focus-outline);outline-offset:2px}input:focus-visible,textarea:focus-visible{outline:none}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{text-wrap:balance}p,li,dd,dt{text-wrap:pretty}.word-break{word-break:break-word}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
