*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#333}.app{min-height:100vh}.navbar{background:#f60;color:#fff;padding:0 20px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.navbar-brand{font-size:20px;font-weight:700;color:#fff;text-decoration:none}.navbar-links{display:flex;align-items:center;gap:20px}.navbar-links a,.navbar-links button{color:#fff;text-decoration:none;font-size:14px;background:none;border:none;cursor:pointer;padding:4px 8px}.navbar-links a:hover,.navbar-links button:hover{background:#fff3;border-radius:4px}.cart-badge{background:#fff;color:#f60;border-radius:50%;padding:1px 6px;font-size:12px;margin-left:4px;font-weight:700}.main-content{max-width:1200px;margin:0 auto;padding:20px}.home-page h2{margin-bottom:16px}.page-container{padding:0 16px;max-width:960px;margin:0 auto}.page-header-static{font-size:20px;font-weight:700;margin:16px 0}.page-message{text-align:center;padding:60px 20px;font-size:14px}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-bottom:32px}.category-item{background:#fff;border-radius:8px;padding:16px 8px;text-align:center;cursor:pointer;text-decoration:none;color:#333;transition:transform .2s}.category-item:hover{transform:translateY(-2px)}.category-icon{font-size:32px;display:block;margin-bottom:8px}.category-name{font-size:14px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.product-card{background:#fff;border-radius:8px;overflow:hidden;text-decoration:none;color:#333;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.product-card img{width:100%;height:200px;object-fit:cover}.product-card-info{padding:12px}.product-card-name{font-size:14px;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card-price{color:#f60;font-size:18px;font-weight:700}.product-card-price .unit{font-size:14px}.search-bar{display:flex;gap:10px;margin-bottom:20px}.search-bar input{flex:1;padding:10px 16px;border:2px solid #ddd;border-radius:8px;font-size:14px;outline:none}.search-bar input:focus{border-color:#f60}.search-bar button{padding:10px 24px;background:#f60;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px}.search-bar button:hover{background:#e55d00}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:32px;background:#fff;border-radius:8px;padding:24px}.product-detail img{width:100%;border-radius:8px}.product-detail-info h1{margin-bottom:16px}.product-detail-price{color:#f60;font-size:28px;font-weight:700;margin-bottom:16px}.product-detail-desc{color:#666;line-height:1.8;margin-bottom:16px}.product-detail-stock{margin-bottom:16px;color:#999}.btn{display:inline-block;padding:12px 32px;border:none;border-radius:8px;font-size:16px;cursor:pointer;text-decoration:none;text-align:center}.btn-primary{background:#f60;color:#fff}.btn-primary:hover{background:#e55d00}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.btn-small{padding:6px 16px;font-size:13px}.cart-page h2,.orders-page h2{margin-bottom:16px}.cart-list{background:#fff;border-radius:8px;overflow:hidden}.cart-item{display:flex;align-items:center;padding:16px;border-bottom:1px solid #eee;gap:16px}.cart-item:last-child{border-bottom:none}.cart-item img{width:80px;height:80px;object-fit:cover;border-radius:8px}.cart-item-info{flex:1}.cart-item-name{font-size:14px;margin-bottom:4px}.cart-item-price{color:#f60;font-weight:700}.cart-item-qty{display:flex;align-items:center;gap:8px}.cart-item-qty button{width:28px;height:28px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:16px;line-height:1}.cart-item-qty span{min-width:24px;text-align:center}.cart-summary{background:#fff;border-radius:8px;padding:20px;margin-top:16px;display:flex;justify-content:space-between;align-items:center}.cart-total{font-size:20px}.cart-total .price{color:#f60;font-size:24px;font-weight:700}.auth-page{max-width:400px;margin:60px auto;background:#fff;border-radius:8px;padding:32px}.auth-page h2{text-align:center;margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;color:#666}.form-group input{width:100%;padding:10px 14px;border:2px solid #ddd;border-radius:8px;font-size:14px;outline:none}.form-group input:focus{border-color:#f60}.form-error{color:#e74c3c;font-size:14px;margin-bottom:12px}.form-error:empty{display:none}.form-hint{color:#e74c3c;font-size:12px;margin-top:4px;display:block}.pwd-wrap{position:relative}.pwd-wrap input{padding-right:60px}.pwd-toggle{position:absolute;right:2px;top:2px;bottom:2px;padding:0 12px;background:none;border:none;color:#999;font-size:13px;cursor:pointer;border-radius:6px}.pwd-toggle:hover{background:#f0f0f0;color:#333}.btn-block{width:100%}.auth-switch{text-align:center;margin-top:16px;font-size:14px;color:#666}.auth-switch a{color:#f60;text-decoration:none}.order-list{background:#fff;border-radius:8px}.order-card{padding:16px;border-bottom:1px solid #eee;cursor:pointer;text-decoration:none;color:#333;display:block}.order-card:hover{background:#fafafa}.order-card-header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.order-card-no{color:#999}.order-card-total{color:#f60;font-size:18px;font-weight:700}.order-status{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px}.status-paid{background:#fff3e0;color:#f60}.status-shipped{background:#e3f2fd;color:#1976d2}.status-done{background:#e8f5e9;color:#388e3c}.order-detail{background:#fff;border-radius:8px;padding:24px}.order-detail h2{margin-bottom:16px}.order-info{margin-bottom:20px;color:#666;font-size:14px}.order-info span{margin-right:24px}.order-items table{width:100%;border-collapse:collapse}.order-items th,.order-items td{padding:12px 8px;text-align:left;border-bottom:1px solid #eee}.order-items th{background:#fafafa;font-weight:400;color:#666}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state p{font-size:16px;margin-bottom:16px}.loading{text-align:center;padding:40px;color:#999}@media (max-width: 768px){.product-detail{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.auth-divider{display:flex;align-items:center;margin:20px 0;color:#ccc;font-size:13px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#eee}.auth-divider span{padding:0 16px}.btn-wechat{background:#07c160;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px}.btn-wechat:hover{background:#06ad56}.wechat-icon{font-size:18px;font-weight:700}.nav-verified{font-size:10px;padding:1px 5px;border-radius:8px;background:#ffffff59}.nav-verified.unverified{background:#fff3;opacity:.8}.user-center h2{margin-bottom:20px}.uc-card{display:flex;align-items:center;gap:16px;background:#fff;border-radius:8px;padding:24px;margin-bottom:16px}.uc-avatar{width:56px;height:56px;border-radius:50%;background:#f60;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;flex-shrink:0}.uc-info{flex:1}.uc-name{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;margin-bottom:6px}.uc-detail{font-size:13px;color:#999;margin-top:2px}.verified-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:#e8f5e9;color:#388e3c;font-weight:400}.verified-badge.unverified{background:#fff3e0;color:#f60}.uc-section{background:#fff;border-radius:8px;padding:16px 24px;margin-bottom:16px}.uc-section h3{font-size:15px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.uc-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f8f8f8;font-size:14px;text-decoration:none;color:#333}.uc-row:last-child{border-bottom:none}.uc-row.uc-link:hover{color:#f60}.uc-label{color:#666}.uc-value{color:#999}.uc-link{color:#f60;text-decoration:none;font-size:14px}.uc-link:hover{text-decoration:underline}.share-wrapper{position:relative;display:inline-block}.btn-share{background:#f0f0f0;color:#666;border:2px solid #ddd}.btn-share:hover{background:#e0e0e0;border-color:#ccc}.share-panel{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;padding:16px;min-width:200px;z-index:200}.share-panel-header{font-size:13px;color:#999;margin-bottom:12px;text-align:center}.share-options{display:flex;justify-content:center;gap:16px}.share-option{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s;font-size:12px;color:#666;-webkit-user-select:none;user-select:none}.share-option:hover{background:#f5f5f5}.share-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.copy-icon{background:#e3f2fd}.wx-icon{background:#e8f5e9}.wb-icon{background:#fff3e0}.more-icon{background:#f3e5f5}.share-toast{position:fixed;top:80px;left:50%;transform:translate(-50%);background:#000000bf;color:#fff;padding:10px 24px;border-radius:20px;font-size:14px;z-index:999;animation:toastIn .3s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.product-card-wrap{position:relative}.card-share-btn{position:absolute;top:8px;right:8px;background:#00000073;color:#fff;border:none;padding:4px 10px;border-radius:12px;font-size:12px;cursor:pointer;opacity:0;transition:opacity .2s}.product-card-wrap:hover .card-share-btn{opacity:1}.card-share-btn:hover{background:#000000a6}.my-product-row{display:flex;align-items:center;padding:16px;border-bottom:1px solid #eee;gap:16px;background:#fff}.my-product-row:first-child{border-radius:8px 8px 0 0}.my-product-row:last-child{border-radius:0 0 8px 8px;border-bottom:none}.my-product-img{width:60px;height:60px;object-fit:cover;border-radius:8px;flex-shrink:0}.logistics-card{background:#f0f7ff;border:1px solid #d0e3f7;border-radius:8px;padding:16px 20px;margin-bottom:20px}.logistics-title{font-weight:700;font-size:14px;margin-bottom:8px;color:#1976d2}.logistics-row{font-size:13px;color:#666;margin-top:4px}.logistics-row strong{color:#333;margin-right:16px}.chat-container{max-width:600px;margin:0 auto;height:calc(100vh - 120px);display:flex;flex-direction:column;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #00000014}.chat-header{padding:16px 20px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;background:#fff}.chat-header h3{margin:0;font-size:16px}.chat-messages{flex:1;overflow-y:auto;padding:16px;background:#f7f8fa}.chat-empty{text-align:center;padding:60px 20px}.chat-empty-icon{font-size:48px;margin-bottom:12px}.chat-bubble{display:flex;gap:10px;margin-bottom:16px}.chat-bubble.chat-support{flex-direction:row}.chat-bubble.chat-user{flex-direction:row-reverse}.chat-bubble-avatar{width:36px;height:36px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.chat-bubble-content{max-width:70%}.chat-bubble-name{font-size:12px;color:#999;margin-bottom:4px}.chat-user .chat-bubble-name{text-align:right}.chat-bubble-text{padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.6;word-break:break-word}.chat-support .chat-bubble-text{background:#fff;color:#333;border-top-left-radius:4px}.chat-user .chat-bubble-text{background:#1677ff;color:#fff;border-top-right-radius:4px}.chat-bubble-time{font-size:11px;color:#bbb;margin-top:4px}.chat-user .chat-bubble-time{text-align:right}.chat-input-area{display:flex;gap:10px;padding:12px 16px;border-top:1px solid #f0f0f0;background:#fff}.chat-input-area input{flex:1;padding:10px 14px;border:2px solid #e8e8e8;border-radius:20px;font-size:14px;outline:none;transition:border-color .2s}.chat-input-area input:focus{border-color:#1677ff}.chat-input-area button{padding:10px 20px;background:#1677ff;color:#fff;border:none;border-radius:20px;font-size:14px;cursor:pointer;transition:background .2s}.chat-input-area button:disabled{background:#bbb;cursor:not-allowed}.chat-input-area button:not(:disabled):hover{background:#4096ff}.distance-badge{display:inline-block;background:#e6f7ff;color:#1677ff;font-size:12px;padding:2px 8px;border-radius:10px;font-weight:500}.detail-location{margin-bottom:12px;color:#666;font-size:13px;display:flex;align-items:center}.product-intro{margin-top:16px;padding:16px;background:#f9fafb;border-radius:10px;border:1px solid #eee}.product-intro-title{font-size:15px;font-weight:600;color:#333;margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid #1677ff}.product-intro-text{margin:0;font-size:14px;line-height:1.8;color:#555;white-space:pre-wrap}.review-summary{display:flex;align-items:center;padding:8px 0;margin-bottom:12px;border-bottom:1px solid #f0f0f0}.review-section{margin-top:20px}.review-item{padding:12px 0;border-bottom:1px solid #f5f5f5}.review-item:last-child{border-bottom:none}.review-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.review-user{font-size:13px;font-weight:500;color:#333}.review-content{margin:0 0 6px;font-size:14px;color:#555;line-height:1.6}.review-date{font-size:12px;color:#bbb}.inline-review{display:flex;flex-direction:column;align-items:center;gap:2px}
