.xy-icon[data-v-8b1033b3]{display:block;flex-shrink:0;color:inherit;vertical-align:middle}.xy-icon--subtle[data-v-8b1033b3]{opacity:.72}.auth-modal-mask[data-v-56080bc6]{position:fixed;inset:0;background:#0006;z-index:300;display:flex;align-items:center;justify-content:center;padding:16px}.auth-pop-enter-active[data-v-56080bc6],.auth-pop-leave-active[data-v-56080bc6]{transition:opacity .22s ease}.auth-pop-enter-active .auth-modal[data-v-56080bc6],.auth-pop-leave-active .auth-modal[data-v-56080bc6]{transition:transform .32s cubic-bezier(.34,1.45,.64,1),opacity .24s ease}.auth-pop-enter-from[data-v-56080bc6],.auth-pop-leave-to[data-v-56080bc6]{opacity:0}.auth-pop-enter-from .auth-modal[data-v-56080bc6],.auth-pop-leave-to .auth-modal[data-v-56080bc6]{transform:scale(.88);opacity:0}.auth-modal[data-v-56080bc6]{width:100%;max-width:420px;padding:20px 20px 18px;position:relative;border-radius:14px;background:#fff;border:1px solid #e9edf2;box-shadow:0 20px 48px #00000029}.auth-close[data-v-56080bc6]{position:absolute;top:10px;right:12px;border:none;background:transparent;font-size:24px;color:#9aa0a6}.auth-tabs[data-v-56080bc6]{display:flex;justify-content:center;gap:24px;margin-bottom:10px}.auth-tabs button[data-v-56080bc6]{border:none;background:transparent;height:34px;padding:0 4px;color:#7a8088;border-bottom:2px solid transparent;font-size:16px;transition:color .2s ease}.auth-tabs button.active[data-v-56080bc6]{color:#111;font-weight:600;border-color:var(--color-primary)}.auth-form[data-v-56080bc6]{display:flex;flex-direction:column;gap:8px;background:#fff}.field-label[data-v-56080bc6]{font-size:12px;color:#6f7680;line-height:1}.form-row[data-v-56080bc6]{display:flex;align-items:center;height:42px;border:1px solid #dde3e9;border-radius:8px;padding:0 10px;gap:8px;background:#f3f5f7;transition:border-color .2s ease}.form-row[data-v-56080bc6]:focus-within{background:#fff;border-color:var(--color-primary)}.form-row.invalid[data-v-56080bc6]{border-color:#ff4d4f}.row-ico[data-v-56080bc6]{color:#9aa0a6}.form-input[data-v-56080bc6]{border:none;outline:none;flex:1;min-width:0;height:100%;background:transparent}.pwd-toggle[data-v-56080bc6]{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:#9aa0a6;padding:0}.pwd-toggle[data-v-56080bc6]:hover{background:#f4f6f8}.pwd-toggle[data-v-56080bc6]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.field-error[data-v-56080bc6]{margin:0 0 2px;color:#e5484d;font-size:12px;line-height:1.2}.submit-btn[data-v-56080bc6]{margin-top:4px;height:42px;border-radius:8px;background:var(--color-primary);color:#fff;box-shadow:none}.submit-btn[data-v-56080bc6]:hover{background:var(--color-primary-deep)}@media(prefers-reduced-motion:reduce){.form-row[data-v-56080bc6],.auth-tabs button[data-v-56080bc6],.auth-pop-enter-active[data-v-56080bc6],.auth-pop-leave-active[data-v-56080bc6],.auth-pop-enter-active .auth-modal[data-v-56080bc6],.auth-pop-leave-active .auth-modal[data-v-56080bc6]{transition:none}.auth-pop-enter-from .auth-modal[data-v-56080bc6],.auth-pop-leave-to .auth-modal[data-v-56080bc6]{transform:none}}:root{--xy-primary: #0ca066;--xy-primary-deep: #098b58;--xy-primary-soft: #e8f7f0;--xy-yellow: var(--xy-primary);--xy-yellow-deep: var(--xy-primary-deep);--xy-yellow-soft: var(--xy-primary-soft);--xy-orange: #ff5000;--xy-orange-soft: #fff1e8;--xy-red: #ff1a1a;--color-primary: var(--xy-primary);--color-primary-deep: var(--xy-primary-deep);--color-primary-soft: var(--xy-primary-soft);--color-accent: var(--xy-orange);--color-price: #ff5000;--bg-page: #f4f4f4;--bg-card: #ffffff;--bg-elevated: #ffffff;--bg-overlay: rgba(0, 0, 0, .45);--bg-tag: #fff7d6;--text-primary: #111111;--text-regular: #303030;--text-secondary: #666666;--text-placeholder: #999999;--text-inverse: #ffffff;--border-color: #ebebeb;--border-strong: #d8d8d8;--divider: #f0f0f0;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 6px 18px rgba(0, 0, 0, .06);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .1);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-size-3xl: 28px;--header-height: 56px;--header-height-lg: 60px;--tabbar-height: 52px;--tabbar-safe-bottom: env(safe-area-inset-bottom, 0px);--tabbar-pad-total: calc(var(--tabbar-height) + var(--tabbar-safe-bottom));--touch-min: 44px;--max-width: 1200px}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Helvetica Neue,Helvetica,Microsoft YaHei,Arial,sans-serif;font-size:var(--font-size-md);color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#app{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}input.search-input{color:var(--text-primary)}input.search-input::placeholder{color:var(--text-placeholder)}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}::selection{background:var(--color-primary);color:#111}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 20px;border-radius:var(--radius-pill);border:none;background:#f0f0f0;color:var(--text-primary);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:opacity .15s ease,transform .05s ease,background .15s ease;outline:none;white-space:nowrap}.btn:hover{opacity:.92}.btn:active{transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-deep));color:#fff;font-weight:600;box-shadow:0 2px 6px #0ca06659}.btn-accent{background:var(--xy-orange);color:#fff;font-weight:600}.btn-outline{background:#fff;border:1px solid var(--border-strong);color:var(--text-regular)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-block{width:100%}.btn-sm{height:32px;padding:0 14px;font-size:var(--font-size-sm)}.btn-lg{height:48px;padding:0 28px;font-size:var(--font-size-lg)}.card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--divider)}.card-padded{padding:var(--space-5)}.tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-sm);background:var(--bg-tag);color:#b85600;font-size:var(--font-size-xs)}.tag-orange{background:var(--xy-orange-soft);color:var(--xy-orange)}.tag-hot{background:linear-gradient(135deg,#ff6b00,#ff3d00);color:#fff;font-weight:600}.tag-gray{background:#f0f0f0;color:var(--text-secondary)}.price{color:var(--color-price);font-weight:700}.price .price-symbol{font-size:.7em;margin-right:1px}.price .price-int{font-size:1em}.price .price-dot{font-size:.7em;opacity:.8}.form-input,.form-textarea{width:100%;height:44px;padding:0 14px;background:#f6f6f6;border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--text-primary);outline:none;transition:border-color .15s,background .15s}.form-textarea{height:auto;min-height:110px;padding:12px 14px;resize:vertical;line-height:1.6}.form-input:focus,.form-textarea:focus{background:#fff;border-color:var(--color-primary)}.form-input:disabled,.form-textarea:disabled,select:disabled{opacity:.55;cursor:not-allowed}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-placeholder)}.form-input--compact{height:36px;padding:0 12px}.form-input--flex{width:auto;flex:1;min-width:0}.form-label{display:block;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:8px}.form-row{margin-bottom:var(--space-5)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}@media(min-width:768px){.container{padding-left:20px;padding-right:20px}}a:focus-visible,button:focus-visible,.tab:focus-visible{outline:2px solid var(--xy-orange);outline-offset:2px}.form-input:focus-visible,.form-textarea:focus-visible,select:focus-visible{outline:none}input.search-input:focus-visible{outline:none}.search-wrap{transition:border-color .15s ease}.search-wrap:focus-within{border-color:var(--color-primary)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00000040}.text-center{text-align:center}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.text-secondary{color:var(--text-secondary)}.text-placeholder{color:var(--text-placeholder)}.text-price{color:var(--color-price)}.text-orange{color:var(--xy-orange)}.font-bold{font-weight:600}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.line-clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.spinner{width:28px;height:28px;border:3px solid rgba(0,0,0,.08);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toast-pop-in{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes toast-pop-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.92)}}.toast-pop-msg{animation:toast-pop-in .28s cubic-bezier(.34,1.45,.64,1) both}.toast-pop-msg--out{animation:toast-pop-out .26s ease-in forwards}@media(prefers-reduced-motion:reduce){.toast-pop-msg,.toast-pop-msg--out{animation:none}}
