.checkout-page{background:#f8f9fa;min-height:100vh;padding:60px 0}.checkout-container{max-width:1200px;margin:0 auto;padding:0 20px}.checkout-title{font-size:32px;font-weight:700;color:var(--color-primary, #2d5a3d);margin-bottom:40px;font-family:"Noto Serif TC",serif}.checkout-grid{display:grid;grid-template-columns:1fr 400px;gap:40px}.checkout-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #00000014}.section-title{font-size:20px;font-weight:600;color:var(--color-primary, #2d5a3d);margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--color-border)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-label.required:after{content:" *";color:#dc2626}.form-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;transition:all .2s}.form-input:focus{outline:none;border-color:var(--color-primary, #2d5a3d);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.order-item{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--color-border)}.order-item:last-child{border-bottom:none}.order-item-image{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0}.order-item-image img{width:100%;height:100%;object-fit:cover}.order-item-details{flex:1}.order-item-name{font-size:15px;font-weight:500;color:#111827;margin-bottom:5px}.order-item-pricing{font-size:14px;margin-bottom:5px;display:flex;align-items:center;gap:8px}.order-item-pricing .original-price{color:#9ca3af;text-decoration:line-through;font-size:13px}.order-item-pricing .current-price{color:#dc2626;font-weight:500}.order-item-quantity{font-size:14px;color:#6b7280;display:flex;align-items:center;gap:8px;margin-top:8px}.quantity-control{display:flex;align-items:center;gap:8px}.quantity-btn{width:24px;height:24px;border:1px solid #d1d5db;background:#fff;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:#374151;transition:all .2s}.quantity-btn:hover{border-color:var(--color-primary, #2d5a3d);color:var(--color-primary, #2d5a3d)}.quantity-btn:disabled{opacity:.5;cursor:not-allowed}.quantity-value{min-width:30px;text-align:center;font-weight:500}.order-item-price{font-size:16px;font-weight:600;color:var(--color-primary, #2d5a3d);text-align:right}.order-summary-row{display:flex;justify-content:space-between;padding:12px 0;font-size:15px}.order-summary-row.total{font-size:18px;font-weight:600;color:var(--color-primary, #2d5a3d);padding-top:15px;border-top:2px solid var(--color-border);margin-top:15px}.checkout-btn{width:100%;background:var(--color-primary, #2d5a3d);color:#fff;padding:16px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:20px}.checkout-btn:hover{background:#1e3d28;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.apply-coupon-btn{background:var(--color-primary, #2d5a3d);color:#fff;padding:12px 24px;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .3s;white-space:nowrap}.apply-coupon-btn:hover{background:#1e3d28}.sticky-sidebar{position:sticky;top:100px;align-self:flex-start}.shipping-options{display:flex;gap:15px}.shipping-option{flex:1;display:flex;align-items:center;padding:16px;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s}.shipping-option:hover{border-color:var(--color-primary, #2d5a3d);background:rgba(var(--primary-rgb),.02)}.shipping-option:has(input:checked){border-color:var(--color-primary, #2d5a3d);background:rgba(var(--primary-rgb),.05)}.shipping-option input[type=radio]{margin-right:12px;accent-color:var(--color-primary, #2d5a3d);width:18px;height:18px}.shipping-option-content{display:flex;flex-direction:column;gap:2px}.shipping-option-title{font-size:16px;font-weight:600;color:#111827}.shipping-option-desc{font-size:13px;color:#6b7280}.payment-options,.payment-group{display:flex;flex-direction:column;gap:12px}.payment-option{display:flex;align-items:flex-start;padding:16px;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s}.payment-option:hover{border-color:var(--color-primary, #2d5a3d);background:rgba(var(--primary-rgb),.02)}.payment-option:has(input:checked){border-color:var(--color-primary, #2d5a3d);background:rgba(var(--primary-rgb),.05)}.payment-option input[type=radio]{margin-top:3px;margin-right:12px;accent-color:var(--color-primary, #2d5a3d);width:18px;height:18px}.payment-option-content{display:flex;flex-direction:column;gap:4px}.payment-option-title{font-size:16px;font-weight:600;color:#111827}.payment-option-desc{font-size:13px;color:#6b7280}.coupon-input-group{display:flex;gap:10px}.coupon-input-group .form-input{flex:1}.applied-coupon{display:flex;justify-content:space-between;align-items:center;padding:12px;background:rgba(var(--primary-rgb),.05);border:1px solid var(--color-primary, #2d5a3d);border-radius:8px}.coupon-info{display:flex;flex-direction:column;gap:4px}.coupon-code{font-weight:600;color:var(--color-primary, #2d5a3d);font-size:15px}.coupon-name{font-size:13px;color:#6b7280}.remove-coupon-btn{background:transparent;border:1px solid #dc2626;color:#dc2626;padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.remove-coupon-btn:hover{background:#dc2626;color:#fff}.coupon-message{margin-top:10px;padding:10px;border-radius:6px;font-size:14px}.coupon-message.success{background:#dcfce7;color:#166534;border:1px solid #86efac}.coupon-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.order-summary-row.discount{color:#dc2626}.order-summary-row.addon{color:#059669}.addon-products{display:flex;flex-direction:column;gap:15px}.addon-item{display:flex;gap:15px;padding:15px;background:#f8faf9;border:1px solid #e5e7eb;border-radius:10px;transition:all .2s}.addon-item:hover{border-color:var(--color-primary, #2d5a3d);box-shadow:0 2px 8px #0000000f}.addon-image{width:70px;height:70px;border-radius:8px;overflow:hidden;flex-shrink:0}.addon-image img{width:100%;height:100%;object-fit:cover}.addon-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f5f5f0;color:#9ca3af}.addon-details{flex:1}.addon-name{font-size:15px;font-weight:600;color:#111827;margin-bottom:4px}.addon-description{font-size:13px;color:#6b7280;margin-bottom:6px}.addon-pricing{display:flex;align-items:center;gap:8px;margin-bottom:4px}.addon-original-price{color:#9ca3af;text-decoration:line-through;font-size:13px}.addon-price{color:#dc2626;font-weight:600;font-size:15px}.addon-condition{font-size:12px;color:#059669;background:#dcfce7;padding:3px 8px;border-radius:4px;display:inline-block}.addon-promotion{font-size:13px;color:#d97706;background:#fef3c7;padding:6px 10px;border-radius:6px;font-weight:500;margin-top:4px}.addon-next-promotion{font-size:12px;color:#7c3aed;background:#ede9fe;padding:4px 8px;border-radius:4px;margin-top:4px;display:inline-block}.addon-warning{font-size:12px;color:#dc2626;background:#fef2f2;padding:4px 8px;border-radius:4px;margin-top:4px}.addon-trigger-hint{font-size:11px;color:#9ca3af}.addon-item.addon-disabled{opacity:.7;background:#f3f4f6}.addon-item.addon-disabled:hover{border-color:#e5e7eb;box-shadow:none}.addon-locked{display:flex;flex-direction:column;align-items:center;gap:4px;color:#9ca3af;font-size:12px}.addon-actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.addon-quantity-control{display:flex;align-items:center;gap:6px}.addon-qty-btn{width:28px;height:28px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:500;color:#374151;transition:all .2s}.addon-qty-btn:hover{border-color:var(--color-primary, #2d5a3d);color:var(--color-primary, #2d5a3d);background:rgba(var(--primary-rgb),.05)}.addon-qty-input{width:45px;height:28px;text-align:center;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;background:#fff}.addon-qty-input:focus{outline:none;border-color:var(--color-primary, #2d5a3d)}.addon-max-hint{font-size:11px;color:#9ca3af}.empty-cart{text-align:center;padding:60px 20px}.empty-cart-icon{font-size:64px;color:#d1d5db;margin-bottom:20px}.empty-cart-title{font-size:24px;font-weight:600;color:#374151;margin-bottom:10px}.empty-cart-text{font-size:16px;color:#6b7280;margin-bottom:30px}.empty-cart-btn{display:inline-block;background:var(--color-primary, #2d5a3d);color:#fff;padding:12px 32px;border-radius:8px;text-decoration:none;font-weight:500;transition:all .3s}.empty-cart-btn:hover{background:#1e3d28;transform:translateY(-2px)}@media(max-width:768px){.checkout-page{padding:30px 0}.checkout-grid{grid-template-columns:1fr}.checkout-section{padding:20px}.form-row{grid-template-columns:1fr}.sticky-sidebar{position:static}}
