*{box-sizing:border-box;margin:0;padding:0}:root{--tm-red: #ff0036;--tm-red-dark: #d6002f;--tm-orange: #ff6a00;--tm-text: #333;--tm-text-2: #666;--tm-text-3: #999;--tm-bg: #f5f5f5;--tm-border: #e5e5e5;--tm-gold: #ffaa00}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--tm-text);background:var(--tm-bg);font-size:13px;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:var(--tm-red)}img{display:block;max-width:100%}button{cursor:pointer;font-family:inherit}ul,li{list-style:none}.top-bar{height:32px;line-height:32px;background:#f2f2f2;border-bottom:1px solid #e5e5e5;font-size:12px;color:var(--tm-text-2)}.top-bar-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;padding:0 12px}.top-bar-inner .left,.top-bar-inner .right{display:flex;gap:14px}.top-bar-inner a:hover{color:var(--tm-red)}.top-bar .user-name{color:var(--tm-red);font-weight:600}.main-nav{background:#fff;border-bottom:2px solid var(--tm-red)}.main-nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:32px;padding:18px 12px}.logo{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:800;color:var(--tm-red);flex-shrink:0}.logo .logo-sub{font-size:11px;color:var(--tm-text-3);font-weight:400;line-height:1.3}.search-box{flex:1;display:flex;height:40px;border:2px solid var(--tm-red);border-radius:2px;overflow:hidden}.search-box input{flex:1;border:0;outline:0;padding:0 14px;font-size:14px;background:#fff}.search-box button{width:90px;border:0;background:var(--tm-red);color:#fff;font-size:16px;font-weight:600;letter-spacing:2px}.search-box button:hover{background:var(--tm-red-dark)}.nav-cart{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--tm-border);background:#fafafa;color:var(--tm-text-2);white-space:nowrap}.nav-cart .cart-icon{color:var(--tm-red);font-size:18px}.cat-bar{background:#fff;border-bottom:1px solid var(--tm-border)}.cat-bar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:stretch;height:40px;padding:0 12px}.cat-bar .all-cats{width:210px;background:var(--tm-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;letter-spacing:1px}.cat-bar .cat-links{display:flex;align-items:center;gap:28px;padding-left:28px}.cat-bar .cat-links a{font-size:15px;font-weight:600;color:var(--tm-text)}.cat-bar .cat-links a:hover{color:var(--tm-red)}.page-wrap{max-width:1200px;margin:0 auto;padding:16px 12px 40px}.hero-banner{height:340px;border-radius:6px;background:linear-gradient(135deg,#ff0036,#ff6a00);display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;margin-bottom:18px;position:relative;overflow:hidden}.hero-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.25),transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.18),transparent 50%)}.hero-banner .hero-text{position:relative;z-index:1}.hero-banner h1{font-size:44px;font-weight:800;margin-bottom:12px}.hero-banner p{font-size:18px;opacity:.9}.section-title{font-size:20px;font-weight:700;margin:22px 0 14px;padding-left:10px;border-left:4px solid var(--tm-red)}.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.product-card{background:#fff;border:1px solid #eee;border-radius:4px;overflow:hidden;transition:box-shadow .2s,transform .2s;cursor:pointer;display:flex;flex-direction:column}.product-card:hover{box-shadow:0 6px 20px #ff003626;transform:translateY(-2px);border-color:var(--tm-red)}.product-card .thumb{width:100%;aspect-ratio:1 / 1;background:#f5f5f5;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:13px;overflow:hidden}.product-card .thumb img{width:100%;height:100%;object-fit:cover}.product-card .info{padding:10px 12px 14px;flex:1;display:flex;flex-direction:column}.product-card .title{font-size:13px;color:var(--tm-text);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:39px}.product-card .price{margin-top:8px;color:var(--tm-red);font-size:18px;font-weight:700}.product-card .price small{font-size:12px;font-weight:500}.product-card .meta{margin-top:6px;display:flex;justify-content:space-between;font-size:12px;color:var(--tm-text-3)}.product-card .shop{color:var(--tm-text-2)}.empty-state{padding:80px 0;text-align:center;color:var(--tm-text-3);font-size:15px}.load-more{text-align:center;margin-top:24px}.load-more button{padding:10px 48px;background:#fff;border:1px solid var(--tm-border);color:var(--tm-text-2);border-radius:2px;font-size:14px}.load-more button:hover{color:var(--tm-red);border-color:var(--tm-red)}.load-more .done{color:var(--tm-text-3);font-size:13px;padding:10px}.login-page{min-height:100vh;display:flex;background:linear-gradient(135deg,#ff0036,#ff4d6d 60%,#ff8a00)}.login-left{flex:1;display:flex;flex-direction:column;justify-content:center;padding:60px 80px;color:#fff}.login-left .brand{font-size:48px;font-weight:800;letter-spacing:2px}.login-left .slogan{font-size:20px;margin-top:16px;opacity:.9}.login-left .features{margin-top:40px;display:flex;flex-direction:column;gap:16px}.login-left .features li{display:flex;align-items:center;gap:12px;font-size:16px;opacity:.95}.login-left .features .dot{width:8px;height:8px;border-radius:50%;background:#fff}.login-right{width:440px;display:flex;align-items:center;padding-right:80px}.login-card{width:100%;background:#fff;border-radius:8px;padding:40px 36px;box-shadow:0 20px 60px #0003}.login-card h2{font-size:22px;font-weight:700;margin-bottom:6px;color:var(--tm-text)}.login-card .sub{color:var(--tm-text-3);font-size:13px;margin-bottom:28px}.form-item{margin-bottom:18px}.form-item label{display:block;font-size:13px;color:var(--tm-text-2);margin-bottom:8px}.form-item .input-row{display:flex;border:1px solid var(--tm-border);border-radius:4px;overflow:hidden;transition:border-color .2s}.form-item .input-row:focus-within{border-color:var(--tm-red)}.form-item input{flex:1;border:0;outline:0;padding:12px 14px;font-size:14px}.form-item .code-btn{width:118px;border:0;border-left:1px solid var(--tm-border);background:#fafafa;color:var(--tm-red);font-size:13px}.form-item .code-btn:disabled{color:var(--tm-text-3);cursor:not-allowed}.login-btn{width:100%;height:44px;border:0;border-radius:4px;background:var(--tm-red);color:#fff;font-size:16px;font-weight:600;letter-spacing:4px;margin-top:6px}.login-btn:hover{background:var(--tm-red-dark)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-agree{margin-top:16px;font-size:12px;color:var(--tm-text-3);text-align:center}.login-agree a{color:var(--tm-red)}.login-tip{margin-top:14px;padding:10px 12px;background:#fff6f7;border:1px solid #ffd1d9;color:var(--tm-red);font-size:12px;border-radius:4px}.detail-layout{display:grid;grid-template-columns:420px 1fr 240px;gap:24px;background:#fff;padding:24px;border-radius:6px}.detail-gallery .main-img{width:100%;aspect-ratio:1 / 1;background:#f5f5f5;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#ccc;overflow:hidden}.detail-gallery .main-img img{width:100%;height:100%;object-fit:cover}.detail-gallery .thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.detail-gallery .thumb{width:64px;height:64px;border:2px solid transparent;border-radius:4px;overflow:hidden;cursor:pointer;background:#f5f5f5}.detail-gallery .thumb.active{border-color:var(--tm-red)}.detail-gallery .thumb img{width:100%;height:100%;object-fit:cover}.detail-info h1{font-size:22px;font-weight:700;line-height:1.4;margin-bottom:10px}.detail-info .sub-title{color:var(--tm-red);font-size:14px;margin-bottom:18px}.detail-info .price-box{background:#fff3f4;padding:18px 20px;border-radius:4px;margin-bottom:18px}.detail-info .price-box .label{color:var(--tm-text-2);font-size:13px}.detail-info .price-box .price{color:var(--tm-red);font-size:34px;font-weight:800;margin-top:4px}.detail-info .price-box .price small{font-size:16px}.detail-info .attrs{display:flex;flex-direction:column;gap:12px}.detail-info .attr-row{display:flex;gap:12px;align-items:flex-start}.detail-info .attr-row .k{width:70px;color:var(--tm-text-3);font-size:13px;flex-shrink:0}.detail-info .attr-row .v{flex:1;color:var(--tm-text);font-size:14px}.detail-info .shop-row{margin-top:18px;padding:14px;border:1px solid var(--tm-border);border-radius:4px;display:flex;align-items:center;gap:12px}.detail-info .shop-logo{width:44px;height:44px;border-radius:4px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;color:var(--tm-text-3);font-size:12px;flex-shrink:0}.detail-info .shop-name{font-weight:600;font-size:15px}.detail-info .shop-rating{font-size:12px;color:var(--tm-text-3);margin-top:2px}.detail-side .actions{background:#fafafa;border:1px solid var(--tm-border);border-radius:4px;padding:18px;display:flex;flex-direction:column;gap:12px}.detail-side .qty-row{display:flex;align-items:center;gap:8px}.detail-side .qty-row input{width:60px;height:32px;text-align:center;border:1px solid var(--tm-border);border-radius:2px}.detail-side .btn-cart,.detail-side .btn-buy{height:42px;border:0;border-radius:4px;font-size:15px;font-weight:600}.detail-side .btn-cart{background:#ffeded;color:var(--tm-red);border:1px solid var(--tm-red)}.detail-side .btn-buy{background:var(--tm-red);color:#fff}.detail-side .btn-buy:hover{background:var(--tm-red-dark)}.detail-side .notices{margin-top:12px;font-size:12px;color:var(--tm-text-3);line-height:1.8}.breadcrumb{font-size:13px;color:var(--tm-text-3);margin-bottom:14px}.breadcrumb a:hover{color:var(--tm-red)}.footer{background:#fff;border-top:1px solid var(--tm-border);padding:30px 0;text-align:center;color:var(--tm-text-3);font-size:12px;line-height:2;margin-top:40px}@media (max-width: 1024px){.product-grid{grid-template-columns:repeat(3,1fr)}.detail-layout{grid-template-columns:1fr}.login-left{display:none}.login-right{width:100%;padding:40px 20px;justify-content:center}}
