@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{min-height:100vh;width:100%}body{font-family:PingFang TC,Microsoft JhengHei,Helvetica Neue,sans-serif;line-height:1.6;color:#333;background-color:#fffaf5}h1{text-align:center;padding:20px}a{text-decoration:none;color:inherit}.container{padding:30px}.cart-flex{display:flex;flex-direction:column;gap:24px;width:80%;list-style:none;margin:20px auto;padding-bottom:120px;max-width:900px}.cart-card{display:grid;grid-template-columns:150px 1fr auto;gap:10px;height:100%;background:#f5f5f5;transition:transform .3s,box-shadow .3s;border:1px solid #bebebe;border-radius:8px;overflow:hidden;padding:20px;align-items:center}.cart-card .cart-img{width:100%;aspect-ratio:1/1;overflow:hidden;background-color:#fff;padding:10px;box-sizing:border-box}.cart-card .cart-img a{display:flex;width:100%;height:100%;align-items:center;justify-content:center;text-decoration:none}.cart-card .cart-img img{max-width:100%;max-height:100%;object-fit:contain;transition:opacity .3s ease-in-out}.cart-card .cart-img:hover img{transform:scale(1.05)}.cart-card .item-info{display:flex;flex-direction:column;justify-content:center;padding:15px;position:relative}.cart-card .item-info .item-delete{position:absolute;top:2px;right:2px;color:#7c7c7c;background-color:#f5f5f5;border:none;cursor:pointer;font-size:24px;align-items:center;justify-content:center}.cart-card .item-info .item-delete:hover{color:#333}.cart-card .item-info .item-title{font-weight:600;padding-right:35px}.cart-card .item-info .item-title:hover{opacity:.7;text-decoration:underline}.cart-card .item-info .item-category{color:#7c7c7c}.cart-card .item-info .item-qty{align-self:flex-end;margin-top:auto;overflow:hidden}.cart-card .item-info .item-qty .qty-btn{width:32px;height:32px;background-color:#f5f5f5;border:none;cursor:pointer;font-size:20px;align-items:center;justify-content:center}.cart-card .item-info .item-qty .qty-btn:hover{background-color:#f5f5f5}.cart-card .item-info .item-qty .qty-input{width:32px;height:32px;text-align:center;border:none;outline:none;font-weight:500}.cart-card .item-info .item-qty .qty-input::-webkit-outer-spin-button,.cart-card .item-info .item-qty .qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cart-card .item-info .item-qty .qty-input{-moz-appearance:textfield;appearance:textfield}.cart-card .item-info .item-subtotal{color:#e67e22}.cart-footer{display:flex;position:sticky;background-color:#fff;justify-content:flex-end;align-items:center;gap:30px;padding:20px 5%;box-sizing:border-box;position:fixed;left:0;right:0;bottom:0;box-shadow:0 -4px 12px #bebebe;z-index:999}.cart-footer .total-price{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;font-weight:700}.cart-footer .total-price .price-highlight{color:#e67e22}.cart-footer .total-price .pending-shipping{color:#bebebe;font-size:.9rem;margin-left:6px}.cart-footer .checkout-btn{background-color:#e67e22;color:#fff;border:none;padding:12px 32px;font-size:18px;font-weight:600;border-radius:6px;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:all .2s ease}.cart-footer .checkout-btn:hover:not(:disabled){background-color:#e67e22;color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #e67e224d}.cart-footer .checkout-btn:active:not(:disabled){transform:translateY(0)}.cart-footer .checkout-btn:disabled{background-color:#bebebe;color:#7c7c7c;cursor:not-allowed;transform:none;box-shadow:none;opacity:.8}@media(max-width:768px){.cart-flex{width:95%;padding-top:12px;padding-bottom:80px;gap:12px}.cart-card{grid-template-columns:100px 1fr;padding:12px;min-height:auto;position:relative;align-items:center;gap:12px}.cart-card .item-info{display:flex;flex-direction:column;gap:4px;padding:0}.cart-card .item-info .item-delete{top:0;right:0;font-size:20px;opacity:.5}.cart-card .item-info .item-title{padding-top:5px;font-size:15px;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.cart-card .item-info .item-category{font-size:12px}.cart-card .item-info .item-subtotal{font-size:16px;font-weight:600;margin-bottom:0}.cart-card .item-info .item-qty{border-radius:6px;border:none;height:30px;margin-top:0}.cart-card .item-info .item-qty .qty-btn{width:30px;height:30px;color:#7c7c7c}.cart-card .item-info .item-qty .qty-input{width:30px;font-size:14px}.cart-footer{padding:12px 20px;height:auto;display:flex;justify-content:space-between;align-items:center;background-color:#fffffffa;box-shadow:0 -1px #bebebe}.cart-footer .total-amount-section{display:flex;flex-direction:column;gap:2px}.cart-footer .total-amount-section .label{font-size:12px;color:#7c7c7c}.cart-footer .total-amount-section .price{font-size:20px;font-weight:700;color:#e67e22}.cart-footer .checkout-btn{width:auto;min-width:120px;padding:10px 20px;background-color:#e67e22;color:#fff;border:none;border-radius:50px;font-size:16px;font-weight:600;box-shadow:0 4px 10px #e67e2233}}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:1200px;margin:0 auto;list-style:none;padding:0}@media(min-width:768px){.product-grid{grid-template-columns:repeat(4,1fr);gap:30px 20px}}.card{display:flex;flex-direction:column;height:100%;background:#f5f5f5;transition:transform .3s,box-shadow .3s;border:1px solid #f5f5f5;border-radius:8px;overflow:hidden}@media(hover:hover){.card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #bebebe}.card:hover img{transform:scale(1.08)}}.card:active{transform:scale(.98)}.card a{display:flex;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;text-decoration:none}.card a .card-img-placeholder{width:100%;aspect-ratio:1/1;overflow:hidden;background-color:#fff;padding:10px;box-sizing:border-box;border-bottom:1px solid #f5f5f5;display:flex;align-items:center;justify-content:center}.card a .card-img-placeholder img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .4s ease}.card a .card-info{text-align:left;display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;padding:15px}.card a .card-info .title{font-size:16px;font-weight:600;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;text-overflow:ellipsis;height:1.8em;padding:6px 0}.card a .card-info .price{font-size:17px;letter-spacing:.5px;color:#e67e22}.global-toast{position:fixed;top:120px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 4px 20px #7c7c7c;z-index:10000;max-width:350px;line-height:1.5;text-align:center;word-break:break-all;white-space:pre-line}.toast-fade-enter-active,.toast-fade-leave-active{transition:all .4s ease}.toast-fade-enter-from,.toast-fade-leave-to{opacity:0;transform:translate(-50%,-20px)}.navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;flex-wrap:wrap;background-color:#fff;border-bottom:1px solid #bebebe;box-shadow:0 3px 10px #bebebe;padding:15px 30px;gap:8px}@media(max-width:480px){.navbar{justify-content:center;padding:10px;gap:5px;box-shadow:none}}.navbar #nav-search-target{margin-left:auto;display:flex;align-items:stretch;padding:10px}.navbar #nav-search-target input{background-color:#fffaf5;border-radius:4px 0 0 4px;border:1px solid;border-right:none;padding:6px 12px;color:#333}.navbar #nav-search-target input:focus{background-color:#fff}@media(max-width:480px){.navbar #nav-search-target{flex-basis:100%;margin-left:0;order:3}.navbar #nav-search-target input{flex:1;font-size:16px;height:40px}.navbar #nav-search-target .select{width:80px;height:40px;padding-left:5px}}.navbar #nav-search-target .select{border-radius:0 4px 4px 0;border:1px solid #333;background-color:#fffaf5;cursor:pointer}.navbar .nav-img img{width:60px;margin-right:5px}@media(max-width:480px){.navbar .nav-img img{width:50px;margin-top:5px}}.navbar .nav-button{position:relative;color:#e67e22;font-weight:500;transition:all .3s ease;padding:8px 10px;border-radius:4px}.navbar .nav-button:hover{background-color:#ffe6ba;color:#d35400}.navbar .nav-button.router-link-active{color:#d35400;font-weight:700}.navbar .nav-button.router-link-active:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:15px;height:2px;background-color:#d35400}.navbar .nav-button .cart-badge{position:absolute;top:2px;right:2px;background-color:#e67e22;color:#fff;font-size:10px;min-width:16px;height:16px;border-radius:50%;border:1.5px solid #fff;display:inline-flex;align-items:center;justify-content:center}.navbar .user-menu{display:flex;align-items:center;gap:6px}.navbar .user-menu button{height:32px;line-height:1;padding:4px 12px;margin-top:2px;background-color:#e67e221a;color:#e67e22;border-radius:50px;border:none;font-size:14px;cursor:pointer;transition:.2s}.navbar .user-menu button:hover{background-color:#e67e22;color:#fff}.empty{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);text-align:center;padding:20px}.empty .emoji{font-size:40px;margin-bottom:10px}.empty .empty-word{color:#bebebe;font-size:1.2rem;margin:0}.skeleton .skeleton-img,.skeleton .skeleton-text,.skeleton .skeleton-btn{background:linear-gradient(90deg,#f2f2f2 25%,#e9e9e9,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 2s infinite linear}.card-content-enter{animation:fadeIn .4s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-img{width:100%;aspect-ratio:1/1}.skeleton-text{height:1rem;border-radius:4px}.skeleton-text.title{width:80%;margin-bottom:10px}.skeleton-text.price{width:40%}.skeleton-btn{height:40px;border-radius:6px;margin-top:auto}.detail-container{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1200px;margin:60px auto;padding:40px;background-color:#f5f5f5;border-radius:12px}.detail-container .detail-image{background:#fff;border-radius:12px;padding:40px;display:flex;align-items:center;justify-content:center}.detail-container .detail-image img{max-width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}.detail-container .detail-info{display:flex;flex-direction:column}.detail-container .detail-info .breadcrumb{color:#7c7c7c;font-size:14px;margin-bottom:10px}.detail-container .detail-info .title{font-size:28px;font-weight:700;margin-bottom:10px}.detail-container .detail-info .variant-options{display:flex;gap:10px;margin-bottom:12px}.detail-container .detail-info .variant-options button{font-size:14px;padding:5px 16px;background-color:#ffe6ba;border:2px solid transparent;border:none;cursor:pointer;border-radius:10px;transition:all .2s ease}.detail-container .detail-info .variant-options button:hover{background-color:#e67e2280}.detail-container .detail-info .variant-options button.active{background-color:#e67e22;color:#fff;border-color:#e67e22;box-shadow:0 2px 8px #e67e2266}.detail-container .detail-info .price-tag{background:transparent;color:#d35400;font-size:1.5rem;font-weight:700;margin-bottom:30px}.detail-container .detail-info .price-tag .label{font-size:14px;color:#7c7c7c}.detail-container .detail-info .price-tag .amount{margin-left:10px;font-size:28px;font-weight:700;color:#e67e22}.detail-container .detail-info .description{margin-bottom:40px}.detail-container .detail-info .description h3{font-size:18px;margin-bottom:10px;border-bottom:1px solid #bebebe;padding-bottom:10px}.detail-container .detail-info .description p{line-height:1.8;color:#555}.detail-container .detail-info .purchase-section{display:flex;gap:20px;margin-top:auto}.detail-container .detail-info .purchase-section .qty-selector{display:flex;border:1px solid #bebebe;border-radius:8px;overflow:hidden}.detail-container .detail-info .purchase-section .qty-selector .qty-btn{font-size:24px;width:45px;height:50px;border:none;background:#fff;cursor:pointer}.detail-container .detail-info .purchase-section .qty-selector .qty-btn:hover{background:#f5f5f5}.detail-container .detail-info .purchase-section .qty-selector .qty-input{width:60px;border:none;border-left:1px solid #bebebe;border-right:1px solid #bebebe;text-align:center;font-size:18px}.detail-container .detail-info .purchase-section .qty-selector .qty-input::-webkit-outer-spin-button,.detail-container .detail-info .purchase-section .qty-selector .qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.detail-container .detail-info .purchase-section .qty-selector .qty-input{-moz-appearance:textfield;appearance:textfield}.detail-container .detail-info .purchase-section .add-to-cart-btn{flex:1;background:#e67e22;color:#fff;border:none;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer}.detail-container .detail-info .purchase-section .add-to-cart-btn:hover{transform:translateY(-2px)}.detail-container .detail-info .purchase-section .add-to-cart-btn:active{transform:translateY(0)}@media(max-width:768px){.detail-container{grid-template-columns:1fr;gap:30px;margin:20px auto;width:95%}.detail-container .detail-info .title{font-size:24px;text-align:left;padding:10px 0}.detail-container .detail-info .purchase-section .qty-selector .qty-input{width:50px}}.login-container{display:flex;flex-direction:column;align-items:center;padding:20px}.orange-divider{width:30px;border:2px solid #e67e22;margin-bottom:20px}form{display:flex;flex-direction:column;width:100%;max-width:300px;gap:10px}form input{width:100%;padding:8px;border:1px solid #bebebe;box-sizing:border-box;border-radius:6px;margin-bottom:6px}.button-group{display:flex;justify-content:center;gap:10px;margin-top:10px}.button-group button{padding:5px 16px;background-color:#ffe6ba;border:none;cursor:pointer;border-radius:10px}.error-text{color:#ff4d4f;font-size:14px;margin-top:8px}.member-container{display:flex;flex-direction:column;align-items:center;padding:20px}.loading{color:#bebebe}.order-card{border:1px solid #f5f5f5;margin-bottom:12px;border-radius:12px;background:#fff;transition:all .3s ease;overflow:hidden;box-shadow:0 2px 8px #0000000d;min-width:600px}@media(max-width:480px){.order-card{min-width:300px}}.order-header{padding:16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none}.order-header:hover{background:#f5f5f5}.order-header.is-active{border-bottom:1px solid #f5f5f5}.header-main .order-num{font-weight:700;color:#333;margin-right:12px}.header-main .order-date{color:#bebebe;font-size:.9em}.header-side{display:flex;align-items:center;gap:12px}.arrow-icon{font-size:12px;color:#bebebe;transition:transform .3s}.arrow-icon.rotate{transform:rotate(180deg)}.order-row{display:flex;padding:12px 16px;border-bottom:1px solid #f5f5f5;align-items:center}.order-pic{width:60px;height:60px;margin:0 6px;display:flex;align-items:center;justify-content:center}@media(max-width:480px){.order-pic{width:100px;height:100px}}.order-pic .order-img{width:100%;border-radius:6px;object-fit:cover}.shipping-detail-box{margin-top:15px;padding:12px;background-color:#f9f9f9;border-radius:6px;font-size:.9rem;line-height:1.6}.section-label{font-weight:700;color:#e67e22;margin-bottom:5px;border-bottom:1px dashed #ddd}.detail-content p{margin:4px 0}.order-info{margin:10px;padding:2px;width:100%;display:flex;align-items:center}@media(max-width:480px){.order-info{display:grid;margin-left:20px}}.order-info .order-title{flex:0 0 200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-info .order-variant{margin-left:20px;color:#bebebe;flex:1}@media(max-width:480px){.order-info .order-variant{margin-left:0}}.order-info .order-price{margin-left:auto;font-weight:700}@media(max-width:480px){.order-info .order-price{margin-left:0}}.order-footer{padding:16px;text-align:right;background:#f5f5f5;color:#7c7c7c}.grand-total{font-size:1.2em;color:#e67e22}.status-tag{background:#e6f7ff;color:#36688d;padding:2px 8px;border-radius:4px;font-size:.85em}.promo-bar{background-color:#ffe6ba;color:#333;height:40px;overflow:hidden}.promo-container{display:flex;justify-content:center;align-items:center;height:100%}.promo-text{margin:0;font-size:14px}.slide-vertical-enter-active,.slide-vertical-leave-active{transition:all .5s ease}.slide-vertical-enter-from{transform:translateY(20px);opacity:0}.slide-vertical-leave-to{transform:translateY(-20px);opacity:0}.checkout-container{display:flex;flex-direction:column;align-items:center}.checkout-container h2{margin-top:10px}.shipping-info{background:#ffe6ba;padding:10px 16px;border-radius:8px;margin-bottom:30px;text-align:center;font-size:14px;min-width:500px}.shipping-info.is-free{background:#e6f7ff;color:#36688d}@media(max-width:480px){.shipping-info{min-width:300px}}.shipping-info .progress-bar{height:6px;background:#e6f7ff;border-radius:3px;margin-top:8px;margin-bottom:4px}.shipping-info .progress-bar .progress-fill{height:100%;background:#e67e22;transition:width .3s ease}.checkout-list{display:flex;flex-direction:column;align-items:center;justify-items:center;border:1px solid #f5f5f5;margin-bottom:12px;border-radius:12px;background:#fff;transition:all .3s ease;overflow:hidden;box-shadow:0 2px 8px #f5f5f5;min-width:400px;gap:10px}@media(max-width:480px){.checkout-list{min-width:340px}}.checkout-item{display:flex;align-items:center;justify-items:center;width:100%;padding:0 8px;border-bottom:1px solid #f5f5f5}.checkout-item:last-child{border-bottom:none}.checkout-item .checkout-img{width:80px;margin:10px}.checkout-item .checkout-img img{width:100%}.checkout-item .checkout-info{display:grid;grid-template-columns:200px 100px 80px;width:100%;gap:2px}@media(max-width:480px){.checkout-item .checkout-info{display:flex;flex-direction:column;padding:10px 0}}.checkout-item .checkout-info .checkout-title{color:#333;margin-left:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkout-item .checkout-info .checkout-variant{color:#bebebe}@media(max-width:480px){.checkout-item .checkout-info .checkout-variant{margin-left:6px}}.checkout-item .checkout-info .checkout-price{color:#e67e22;justify-self:end;font-weight:700}@media(max-width:480px){.checkout-item .checkout-info .checkout-price{margin-left:6px}}.checkout-item .checkout-info .checkout-qty{grid-column:1/-1;text-align:right;font-size:.9rem;color:#7c7c7c}@media(max-width:480px){.checkout-item .checkout-info .checkout-qty{margin-right:6px}}.radio-group{display:flex;gap:20px;margin:15px 0}@media(max-width:480px){.radio-group{gap:10px}}.radio-label input[type=radio]{display:none}.radio-label{cursor:pointer;padding:10px 15px;border:1px solid #bebebe;border-radius:8px;transition:all .3s}@media(max-width:480px){.radio-label{padding:6px 8px}}.radio-label:has(input:checked){border-color:#e67e22;background-color:#ffe6ba;color:#d35400}.form-group{display:flex;flex-direction:column;gap:10px;margin-top:15px;font-weight:600}.form-group input{padding:8px;border:1px solid #bebebe;border-radius:4px}@media(max-width:480px){.form-group input{text-align:center}}.shipping-options{padding:0 20px;width:100%;max-width:480px;margin:0 auto}.shipping-options .section-title{font-weight:600}.shipping-options .radio-group{justify-content:space-around}@media(max-width:480px){.shipping-options{text-align:center}}.shipping-details-form{padding:0 30px;width:100%;max-width:500px;margin:0 auto}@media(max-width:480px){.shipping-details-form{text-align:center}}.full-divider{border:0;border-top:1px solid #bebebe;margin:30px 0;width:100%}.time-picker-group .date{padding:10px;border:1px solid #bebebe;border-radius:8px;font-family:sans-serif;text-align:center;color:#333}.coupon-section{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 0;margin-bottom:120px}@media(max-width:480px){.coupon-section{flex-direction:column;align-items:center;gap:20px;padding:0;margin-bottom:100px}}.coupon-section .coupon-input-group{display:flex;gap:8px}.coupon-section .coupon-input-group input{padding:8px 12px;border:1px solid #bebebe;border-radius:6px;width:150px}.coupon-section .coupon-input-group .apply-btn{padding:8px 16px;background-color:#7c7c7c;color:#fff;border:none;border-radius:6px;cursor:pointer}.coupon-section .coupon-input-group .apply-btn:hover{opacity:.9}.coupon-section .price-details{display:flex;flex-direction:column;align-items:flex-end;gap:8px}@media(max-width:480px){.coupon-section .price-details{align-items:center}}.coupon-section .price-details .price-row{display:flex;justify-content:flex-end;width:200px}.coupon-section .price-details .price-row span:first-child{color:#bebebe}.coupon-section .price-details .price-row .amount{display:inline-block;width:80px;text-align:right;font-weight:600}.coupon-section .price-details .price-row.discount{color:#e67e22}.checkout-footer{display:flex;position:sticky;background-color:#fff;justify-content:flex-end;align-items:center;gap:30px;padding:20px 5%;box-sizing:border-box;position:fixed;left:0;right:0;bottom:0;box-shadow:0 -4px 12px #bebebe;z-index:999}.checkout-footer .checkout-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700}.checkout-footer .checkout-total .price-highlight{color:#e67e22}.checkout-footer .confirm-btn{background-color:#e67e22;color:#fff;border:none;padding:12px 32px;font-size:18px;font-weight:600;border-radius:6px;cursor:pointer;box-shadow:0 4px 6px #bebebe;transition:all .2s ease}.checkout-footer .confirm-btn:hover:not(:disabled){background-color:#e67e22;color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #e67e224d}.checkout-footer .confirm-btn:active:not(:disabled){transform:translateY(0)}.checkout-footer .confirm-btn:disabled{background-color:#bebebe;color:#7c7c7c;cursor:not-allowed;transform:none;box-shadow:none;opacity:.8}@media(max-width:768px){.checkout-footer{padding:12px 20px;height:auto;display:flex;justify-content:space-between;align-items:center;background-color:#fff;box-shadow:0 -1px #bebebe}.checkout-footer .confirm-btn{width:auto;min-width:120px;padding:10px 20px;background-color:#e67e22;color:#fff;border:none;border-radius:50px;font-size:16px;font-weight:600;box-shadow:0 4px 10px #e67e2233}}
