﻿@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500;700;900&display=swap");:root{--brand-dark: #3575A4;--brand-light: #51A0D7;--brand-dark-rgb: 53, 117, 164;--brand-light-rgb: 81, 160, 215}.bg-brand-dark{background-color:#3575A4}.bg-brand-light{background-color:#51A0D7}.text-brand-dark{color:#3575A4}.text-brand-light{color:#51A0D7}.border-brand-dark{border-color:#3575A4}.border-brand-light{border-color:#51A0D7}.hover\:bg-brand-dark:hover{background-color:#3575A4}.hover\:bg-brand-light:hover{background-color:#51A0D7}.hover\:text-brand-dark:hover{color:#3575A4}.hover\:text-brand-light:hover{color:#51A0D7}.bg-brand-dark-10{background-color:rgba(53,117,164,0.1)}.bg-brand-dark-20{background-color:rgba(53,117,164,0.2)}.bg-brand-dark-50{background-color:rgba(53,117,164,0.5)}.bg-brand-light-10{background-color:rgba(81,160,215,0.1)}.bg-brand-light-20{background-color:rgba(81,160,215,0.2)}.bg-brand-light-50{background-color:rgba(81,160,215,0.5)}.btn-brand-dark{background-color:#3575A4;color:white;border:1px solid #3575A4}.btn-brand-dark:hover{background-color:#2a5a85;border-color:#2a5a85}.btn-brand-light{background-color:#51A0D7;color:white;border:1px solid #51A0D7}.btn-brand-light:hover{background-color:#3a8bc2;border-color:#3a8bc2}.btn-outline-brand-dark{color:#3575A4;border:1px solid #3575A4;background-color:transparent}.btn-outline-brand-dark:hover{background-color:#3575A4;color:white}.btn-outline-brand-light{color:#51A0D7;border:1px solid #51A0D7;background-color:transparent}.btn-outline-brand-light:hover{background-color:#51A0D7;color:white}.cart-notification{position:fixed;top:20px;right:20px;background:linear-gradient(135deg, #3575A4 0%, #2b5f85 100%);color:white;border-radius:12px;padding:16px 20px;box-shadow:0 8px 32px rgba(53,117,164,0.3);z-index:6000;transform:translateX(400px);opacity:0;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);max-width:320px}.cart-notification.show{transform:translateX(0);opacity:1}.cart-notification .cart-notification-content{display:flex;align-items:center;gap:12px}.cart-notification .cart-notification-icon{font-size:1.5rem;animation:bounce 0.6s ease-out}.cart-notification .cart-notification-text{line-height:1.4}.cart-notification .cart-notification-text strong{font-weight:700;font-size:1rem}@keyframes bounce{0%,20%,53%,80%,100%{transform:translateY(0)}40%,43%{transform:translateY(-8px)}70%{transform:translateY(-4px)}90%{transform:translateY(-2px)}}.cart-badge{position:absolute;top:-8px;right:-8px;background:#e74c3c;color:white;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;min-width:20px;box-shadow:0 2px 8px rgba(231,76,60,0.4);border:2px solid white}.cart-icon{position:relative;display:inline-block;cursor:pointer;transition:all 0.3s ease}.cart-icon:hover{transform:scale(1.1)}.cart-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2}.cart-sidebar{position:fixed;top:0;right:0;width:400px;height:100vh;background:white;box-shadow:-4px 0 20px rgba(0,0,0,0.15);transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);z-index:5000;display:flex;flex-direction:column}.cart-sidebar.open{transform:translateX(0)}.cart-sidebar .cart-header{padding:20px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%)}.cart-sidebar .cart-header h3{font-size:1.25rem;font-weight:700;color:#2c3e50;margin:0}.cart-sidebar .cart-header .close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:4px;border-radius:4px;transition:all 0.2s ease}.cart-sidebar .cart-header .close-btn:hover{background:rgba(108,117,125,0.1);color:#495057}.cart-sidebar .cart-content{flex:1;overflow-y:auto;padding:0}.cart-sidebar .cart-empty{text-align:center;padding:60px 20px;color:#6c757d}.cart-sidebar .cart-empty .empty-icon{font-size:3rem;margin-bottom:16px;opacity:0.5}.cart-sidebar .cart-empty h4{font-size:1.125rem;font-weight:600;margin-bottom:8px;color:#495057}.cart-sidebar .cart-empty p{margin:0;line-height:1.5}.cart-sidebar .cart-items{padding:0}.cart-sidebar .cart-footer{border-top:1px solid #e9ecef;padding:20px;background:#f8f9fa}.cart-sidebar .cart-footer .cart-total{font-size:1.25rem;font-weight:700;color:#2c3e50;margin-bottom:16px;text-align:center}.cart-sidebar .cart-footer .checkout-btn{width:100%;background:linear-gradient(135deg, #3575A4 0%, #2b5f85 100%);color:white;border:none;border-radius:8px;padding:14px;font-size:1rem;font-weight:600;cursor:pointer;transition:all 0.3s ease}.cart-sidebar .cart-footer .checkout-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(53,117,164,0.3)}.cart-item{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid #f1f3f4;transition:background-color 0.2s ease}.cart-item:hover{background-color:#f8f9fa}.cart-item .cart-item-image{width:60px;height:60px;flex-shrink:0;margin-right:12px;border-radius:6px;overflow:hidden;background:#f8f9fa}.cart-item .cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item .cart-item-image .no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;color:#6c757d;background:#e9ecef}.cart-item .cart-item-info{flex:1;min-width:0}.cart-item .cart-item-info .cart-item-name{font-size:0.9rem;font-weight:600;color:#2c3e50;margin:0 0 4px 0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item .cart-item-info .cart-item-variant{font-size:0.8rem;color:#6c757d;margin:0 0 4px 0}.cart-item .cart-item-info .cart-item-price{font-size:0.85rem;font-weight:600;color:#3575A4;margin:0}.cart-item .cart-item-controls{display:flex;flex-direction:column;align-items:center;gap:8px}.cart-item .cart-item-controls .quantity-controls{display:flex;align-items:center;background:#f8f9fa;border-radius:6px;padding:2px}.cart-item .cart-item-controls .quantity-controls .qty-btn{width:28px;height:28px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:600;color:#495057;border-radius:4px;transition:all 0.2s ease}.cart-item .cart-item-controls .quantity-controls .qty-btn:hover{background:#e9ecef;color:#3575A4}.cart-item .cart-item-controls .quantity-controls .quantity{min-width:30px;text-align:center;font-weight:600;font-size:16px;color:#2c3e50}.cart-item .cart-item-controls .remove-btn{background:none;border:none;cursor:pointer;font-size:1rem;color:#dc3545;padding:4px;border-radius:4px;transition:all 0.2s ease}.cart-item .cart-item-controls .remove-btn:hover{background:rgba(220,53,69,0.1);transform:scale(1.1)}.cart-item .cart-item-subtotal{font-size:0.85rem;font-weight:600;color:#2c3e50;margin-left:8px;min-width:70px;text-align:right}.cart-page{max-width:1200px;margin:40px auto;padding:0 20px}.cart-page .cart-header{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e9ecef}.cart-page .cart-header h1{font-size:2rem;font-weight:700;color:#2c3e50;margin:0 0 10px 0}.cart-page .cart-header .cart-breadcrumb{font-size:0.9rem;color:#6c757d}.cart-page .cart-header .cart-breadcrumb a{color:#3575A4;text-decoration:none}.cart-page .cart-header .cart-breadcrumb a:hover{text-decoration:underline}.cart-page .cart-header .cart-breadcrumb span{color:#2c3e50;font-weight:500}.cart-page .cart-content{display:grid;grid-template-columns:1fr 350px;gap:30px;align-items:start}@media (max-width: 768px){.cart-page .cart-content{grid-template-columns:1fr;gap:20px}}.cart-page .cart-items-section .cart-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:20px;background:#f8f9fa;border-radius:8px}.cart-page .cart-items-section .cart-items-header h2{font-size:1.3rem;font-weight:600;color:#2c3e50;margin:0}.cart-page .cart-items-section .cart-items-header .items-count{color:#6c757d;font-size:0.9rem}.cart-page .cart-items-section .cart-items-header .items-count span{font-weight:600;color:#3575A4}.cart-page .cart-items-section .cart-items-container{background:white;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,0.05);overflow:hidden}.cart-page .cart-items-section .cart-actions{margin-top:20px;text-align:center}.cart-page .empty-cart-state{text-align:center;padding:60px 40px;background:white;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,0.05)}.cart-page .empty-cart-state .empty-cart-icon{font-size:4rem;margin-bottom:20px;opacity:0.3}.cart-page .empty-cart-state h3{font-size:1.5rem;font-weight:600;color:#495057;margin-bottom:12px}.cart-page .empty-cart-state p{color:#6c757d;margin-bottom:30px;line-height:1.5}.cart-page .cart-summary-section .order-summary{background:white;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,0.05);padding:24px;position:sticky;top:100px}.cart-page .cart-summary-section .order-summary h3{font-size:1.2rem;font-weight:600;color:#2c3e50;margin:0 0 20px 0;padding-bottom:15px;border-bottom:1px solid #e9ecef}.cart-page .cart-summary-section .order-summary .summary-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:0.95rem}.cart-page .cart-summary-section .order-summary .summary-row.total{font-size:1.1rem;font-weight:700;color:#2c3e50;margin-top:15px;padding-top:15px;border-top:1px solid #e9ecef}.cart-page .cart-summary-section .order-summary .summary-row .shipping-free{color:#27ae60;font-weight:600}.cart-page .cart-summary-section .order-summary .shipping-hint-row{background:rgba(53,117,164,0.1);padding:10px 12px;border-radius:6px;margin-bottom:12px}.cart-page .cart-summary-section .order-summary .shipping-hint-row span{color:#3575A4;font-size:0.85rem;font-weight:500}.cart-page .cart-summary-section .order-summary .summary-divider{height:1px;background:#e9ecef;margin:15px 0}.cart-page .cart-summary-section .order-summary .checkout-actions{margin-top:25px;display:flex;flex-direction:column;gap:12px}.cart-page .cart-summary-section .order-summary .security-notice{margin-top:20px;padding:15px;background:rgba(39,174,96,0.1);border-radius:6px;display:flex;align-items:center;gap:10px}.cart-page .cart-summary-section .order-summary .security-notice .security-icons svg{width:18px;height:18px;color:#27ae60}.cart-page .cart-summary-section .order-summary .security-notice .security-text{font-size:0.85rem;color:#27ae60;font-weight:500}.cart-page .cart-item,.cart-items-container .cart-item{display:grid;grid-template-columns:80px 1fr auto auto auto;gap:15px;align-items:center;padding:20px;border-bottom:1px solid #f1f3f4;transition:background-color 0.2s ease}.cart-page .cart-item:last-child,.cart-items-container .cart-item:last-child{border-bottom:none}.cart-page .cart-item:hover,.cart-items-container .cart-item:hover{background-color:#f8f9fa}.cart-page .cart-item .item-image,.cart-items-container .cart-item .item-image{width:80px;height:80px;border-radius:8px;overflow:hidden;background:#f8f9fa}.cart-page .cart-item .item-image img,.cart-items-container .cart-item .item-image img{width:100%;height:100%;object-fit:cover}.cart-page .cart-item .item-details,.cart-items-container .cart-item .item-details{min-width:0}.cart-page .cart-item .item-details .item-name,.cart-items-container .cart-item .item-details .item-name{font-size:1rem;font-weight:600;color:#2c3e50;margin:0 0 6px 0;line-height:1.3}.cart-page .cart-item .item-details .item-variant,.cart-items-container .cart-item .item-details .item-variant{font-size:0.85rem;color:#6c757d;margin:0 0 4px 0}.cart-page .cart-item .item-details .item-price,.cart-items-container .cart-item .item-details .item-price{font-size:0.9rem;color:#3575A4;font-weight:600;margin:0}.cart-page .cart-item .item-quantity,.cart-items-container .cart-item .item-quantity{display:flex;align-items:center;background:#f8f9fa;border-radius:6px;padding:2px}.cart-page .cart-item .item-quantity .qty-btn,.cart-items-container .cart-item .item-quantity .qty-btn{width:32px;height:32px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:600;color:#495057;border-radius:4px;transition:all 0.2s ease}.cart-page .cart-item .item-quantity .qty-btn:hover,.cart-items-container .cart-item .item-quantity .qty-btn:hover{background:#e9ecef;color:#3575A4}.cart-page .cart-item .item-quantity .quantity,.cart-items-container .cart-item .item-quantity .quantity{min-width:40px;text-align:center;font-weight:600;font-size:16px;color:#2c3e50}.cart-page .cart-item .item-total,.cart-items-container .cart-item .item-total{font-size:1rem;font-weight:700;color:#2c3e50;text-align:right;min-width:80px}.cart-page .cart-item .remove-btn,.cart-items-container .cart-item .remove-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:4px;transition:all 0.2s ease;color:#dc3545}.cart-page .cart-item .remove-btn:hover,.cart-items-container .cart-item .remove-btn:hover{background:rgba(220,53,69,0.1);transform:scale(1.1)}.cart-page .cart-item .remove-btn svg,.cart-items-container .cart-item .remove-btn svg{width:18px;height:18px;stroke-width:2}@media (max-width: 768px){.cart-page .cart-item,.cart-items-container .cart-item{grid-template-columns:60px 1fr auto;gap:12px;padding:15px}.cart-page .cart-item .item-image,.cart-items-container .cart-item .item-image{width:60px;height:60px}.cart-page .cart-item .item-quantity,.cart-page .cart-item .item-total,.cart-page .cart-item .remove-btn,.cart-items-container .cart-item .item-quantity,.cart-items-container .cart-item .item-total,.cart-items-container .cart-item .remove-btn{grid-column:1 / -1;justify-self:start;margin-top:10px}.cart-page .cart-item .item-total,.cart-items-container .cart-item .item-total{text-align:left}}.cart-sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:4999;opacity:0;visibility:hidden;transition:all 0.3s ease}.cart-sidebar-overlay.active{opacity:1;visibility:visible}.cart-toast{position:fixed;top:20px;right:20px;background:linear-gradient(135deg, #27ae60 0%, #2ecc71 100%);color:white;border-radius:12px;padding:16px 20px;box-shadow:0 8px 32px rgba(39,174,96,0.3);z-index:6100;transform:translateX(400px);opacity:0;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);max-width:320px;display:flex;align-items:center;gap:12px}.cart-toast.show{transform:translateX(0);opacity:1}.cart-toast .toast-icon{width:20px;height:20px;flex-shrink:0;stroke-width:2.5}.cart-toast .toast-content{flex:1}.cart-toast .toast-content .toast-title{font-weight:700;font-size:1rem;margin-bottom:2px}.cart-toast .toast-content .toast-message{font-size:0.9rem;opacity:0.9;line-height:1.3}.cart-toast .toast-close{background:none;border:none;color:white;font-size:1.2rem;cursor:pointer;padding:4px;border-radius:4px;transition:all 0.2s ease;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.cart-toast .toast-close:hover{background:rgba(255,255,255,0.2)}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:6px;font-size:0.95rem;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;transition:all 0.3s ease;text-shadow:none}.btn.btn-primary{background:linear-gradient(135deg, #3575A4 0%, #2b5f85 100%);color:white}.btn.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(53,117,164,0.3)}.btn.btn-secondary{background:#f8f9fa;color:#6c757d;border:1px solid #e9ecef}.btn.btn-secondary:hover{background:#e9ecef;color:#495057}.btn.btn-outline{background:transparent;color:#dc3545;border:1px solid #dc3545;text-shadow:none;box-sizing:border-box;transition:background-color 0.3s ease, color 0.3s ease}.btn.btn-outline:hover{background:#dc3545;color:white;text-shadow:none}.cart-page .btn,#clear-cart,#clean-cart,.clear-cart-btn,.clean-cart-btn{text-shadow:none !important}@media (max-width: 768px){.cart-notification{top:10px;right:10px;left:10px;max-width:none;transform:translateY(-100px)}.cart-notification.show{transform:translateY(0)}.cart-toast{top:10px;right:10px;left:10px;max-width:none;transform:translateY(-100px)}.cart-toast.show{transform:translateY(0)}.cart-sidebar{width:100%;max-width:400px}.cart-page-item{grid-template-columns:80px 1fr;gap:15px;padding:20px 16px}.cart-page-item .item-image{width:80px;height:80px}.cart-page-item .item-quantity,.cart-page-item .item-subtotal,.cart-page-item .remove-item-btn{grid-column:1 / -1;justify-self:start;margin-top:12px}.cart-page-item .item-subtotal{font-size:1rem;text-align:left}.cart-page{margin:20px auto;padding:0 15px}.cart-page h1{font-size:1.5rem}}@media (max-width: 480px){.cart-item{padding:12px 15px}.cart-item .cart-item-image{width:50px;height:50px}.cart-item .cart-item-info .cart-item-name{font-size:0.85rem}.cart-item .cart-item-controls .quantity-controls .qty-btn{width:24px;height:24px}.cart-sidebar .cart-footer{padding:15px}}.image-carousel{display:flex;flex-direction:column;gap:15px;min-width:0;width:100%}.image-carousel .carousel-container{position:relative;aspect-ratio:5/4;border-radius:8px;overflow:hidden;border:1px solid #e9ecef;background:#f8f9fa;width:100% !important;height:auto !important}.image-carousel .carousel-container .carousel-wrapper{position:relative;width:100%;height:100%}.image-carousel .carousel-container .carousel-track{display:flex;width:100% !important;height:100% !important;transition:transform 0.3s ease-in-out;position:relative}.image-carousel .carousel-container .carousel-track .carousel-slide{min-width:100% !important;height:100% !important;width:100%;opacity:0;transition:opacity 0.3s ease-in-out;flex-shrink:0}.image-carousel .carousel-container .carousel-track .carousel-slide.active{opacity:1}.image-carousel .carousel-container .carousel-track .carousel-slide .carousel-image{width:100% !important;height:100% !important;object-fit:cover !important;user-select:none;-webkit-user-drag:none;display:block !important;max-width:none !important;max-height:none !important}.image-carousel .carousel-container .carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:rgba(255,255,255,0.9);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,0,0,0.15)}.image-carousel .carousel-container .carousel-nav:hover{background:white;transform:translateY(-50%) scale(1.1)}.image-carousel .carousel-container .carousel-nav.prev{left:15px}.image-carousel .carousel-container .carousel-nav.next{right:15px}.image-carousel .carousel-container .carousel-nav svg{color:#2c3e50;transition:color 0.3s ease;width:24px;height:24px}.image-carousel .carousel-container .carousel-nav:hover svg{color:#51A0D7}.image-carousel .carousel-container .featured-badge{position:absolute;top:15px;left:15px;background-color:#f39c12;color:white;padding:6px 12px;border-radius:15px;font-size:0.8rem;font-weight:600;z-index:2}.image-carousel .thumbnail-images{display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;scroll-behavior:smooth;min-width:0}.image-carousel .thumbnail-images .thumbnail{flex:0 0 auto;width:80px;height:60px;border-radius:4px;overflow:hidden;border:2px solid transparent;cursor:pointer;transition:all 0.3s ease}.image-carousel .thumbnail-images .thumbnail.active{border-color:#3575A4;transform:scale(1.05)}.image-carousel .thumbnail-images .thumbnail:hover{border-color:#6fa7d0}.image-carousel .thumbnail-images .thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.image-carousel .thumbnail-images .thumbnail:hover img{transform:scale(1.1)}.image-carousel .thumbnail-images::-webkit-scrollbar{height:4px}.image-carousel .thumbnail-images::-webkit-scrollbar-track{background:#f8f9fa;border-radius:4px}.image-carousel .thumbnail-images::-webkit-scrollbar-thumb{background:#95bedd;border-radius:4px}.image-carousel .thumbnail-images::-webkit-scrollbar-thumb:hover{background:#6fa7d0}.image-carousel.carousel-sm .carousel-container .carousel-nav{width:36px;height:36px}.image-carousel.carousel-sm .carousel-container .carousel-nav svg{width:18px;height:18px}.image-carousel.carousel-sm .thumbnail-images .thumbnail{width:60px;height:45px}.image-carousel.carousel-lg .carousel-container .carousel-nav{width:52px;height:52px}.image-carousel.carousel-lg .carousel-container .carousel-nav svg{width:28px;height:28px}.image-carousel.carousel-lg .thumbnail-images .thumbnail{width:100px;height:75px}.image-carousel.carousel-rounded .carousel-container{border-radius:20px}.image-carousel.carousel-rounded .thumbnail-images .thumbnail{border-radius:8px}.image-carousel.carousel-no-thumbnails .thumbnail-images{display:none}.image-carousel.carousel-no-nav .carousel-nav{display:none}@media (max-width: 768px){.image-carousel .carousel-container .carousel-nav{width:36px;height:36px}.image-carousel .carousel-container .carousel-nav.prev{left:10px}.image-carousel .carousel-container .carousel-nav.next{right:10px}.image-carousel .carousel-container .carousel-nav svg{width:20px;height:20px}.image-carousel .thumbnail-images{justify-content:center}.image-carousel .thumbnail-images .thumbnail{width:60px;height:45px}}@media (max-width: 768px) and (pointer: coarse){.image-carousel .carousel-container .carousel-nav{width:44px;height:44px}.image-carousel .carousel-container .carousel-nav::before{content:'';position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px}.image-carousel .thumbnail-images .thumbnail{min-width:60px;min-height:45px}}.auth-container{min-height:calc(100vh - 160px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg, #bcd6e9 0%, #e2eff8 100%)}.auth-wrapper{width:100%;max-width:400px}.auth-card{background:white;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,0.1);overflow:hidden;animation:fadeInUp 0.6s ease-out}.auth-header{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;padding:2rem;text-align:center}.auth-header h1{margin:0 0 0.5rem 0;font-size:1.5rem;font-weight:600;color:#ffffff}.auth-header p{margin:0;font-size:0.9rem;color:rgba(255,255,255,0.9);opacity:0.9}.auth-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group.form-checkbox{display:flex;align-items:center;margin-bottom:1rem;gap:0.5rem}.form-group.form-checkbox .form-check-input{margin:0;accent-color:#3575A4;width:16px;height:16px;flex-shrink:0}.form-group.form-checkbox .form-check-label{font-size:0.9rem;color:#2c3e50;cursor:pointer;user-select:none;margin:0;flex:1;line-height:1.4;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.form-group.form-checkbox .form-check-label:hover{color:#3575A4}.form-label{display:block;margin-bottom:0.5rem;font-weight:500;color:#2c3e50;font-size:0.9rem}.form-hint{display:block;font-size:0.8rem;color:#7f8c8d;margin-top:0.25rem}.auth-form .form-input{width:100%;padding:0.75rem 1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);background:#ffffff;color:#2c3e50}.auth-form .form-input:focus{outline:none;border-color:#3575A4;box-shadow:0 0 0 3px rgba(53,117,164,0.15)}.auth-form .form-input:hover{border-color:#5b9bca;background:#f6f9fc}.auth-form .form-input::placeholder{color:#7f8c8d;font-size:0.9rem}.auth-form .form-input.error{border-color:#e74c3c}.auth-form .form-input.error:focus{border-color:#e74c3c;box-shadow:0 0 0 3px rgba(231,76,60,0.15)}.form-actions{margin-top:2rem}.auth-form .btn{display:inline-block;padding:0.75rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;text-decoration:none;text-align:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);user-select:none}.auth-form .btn.btn-primary{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%) !important;color:#ffffff;width:100%}.auth-form .btn.btn-primary:hover{background:linear-gradient(135deg, #2b5f85 0%, #308ecf 100%) !important;transform:translateY(-2px);box-shadow:0 8px 25px rgba(53,117,164,0.3)}.auth-form .btn.btn-primary:active{transform:translateY(0)}.auth-form .btn.btn-primary:disabled{opacity:0.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-footer{padding:1.5rem 2rem 2rem;text-align:center;border-top:1px solid #f0f0f0}.auth-link{color:#3575A4;text-decoration:none;font-size:0.9rem;font-weight:500;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);display:inline-block;margin:0.25rem 0.5rem}.auth-link:hover{color:#51A0D7;text-decoration:underline;transform:translateY(-1px);background:white;padding:0.25rem 0.5rem;border-radius:8px}.auth-link.forgot-password{color:#7f8c8d;font-size:0.85rem}.auth-link.forgot-password:hover{color:#3575A4;transform:translateY(-1px);background:#fdfefe;padding:0.25rem 0.5rem;border-radius:8px}#error_explanation{background:#fdf3f2;border:1px solid #e74c3c;border-radius:8px;padding:1rem;margin-bottom:1.5rem}#error_explanation h2{color:#e74c3c;font-size:1rem;margin:0 0 0.5rem 0}#error_explanation ul{margin:0;padding-left:1.2rem}#error_explanation ul li{color:#d62c1a;font-size:0.9rem;margin-bottom:0.25rem}.notice,.alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:0.9rem}.notice{background:#b3eecc;color:#145b32;border:1px solid #60db94}.alert{background:#fdf3f2;color:#a82315;border:1px solid #f29f97}.password-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #e9ecef}.password-section .section-title{font-size:1.1rem;font-weight:600;color:#2c3e50;margin-bottom:0.5rem}.password-section .section-hint{font-size:0.9rem;color:#7f8c8d;margin-bottom:1.5rem;font-style:italic}.current-password-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f8f9fa}.form-notice{background:#f7fbfd;border:1px solid #a4cdea;border-radius:8px;padding:0.75rem 1rem;margin-bottom:1.5rem;font-size:0.9rem;color:#246c9e}.auth-danger-zone{margin-top:1rem;padding-top:1rem;border-top:1px solid #f8f9fa}.auth-danger-zone .danger{color:#e74c3c !important;background:none !important;border:none !important;font-size:0.85rem !important;font-family:inherit;font-weight:normal !important;text-decoration:underline;text-shadow:none !important;padding:0 !important;margin:0 !important;outline:none !important;box-shadow:none !important;cursor:pointer}.auth-danger-zone .danger:hover{color:#d62c1a !important;background:white !important;text-decoration:none;padding:0.25rem 0.5rem !important;border-radius:8px;box-shadow:none !important}.auth-danger-zone .danger:focus{outline:none !important;box-shadow:none !important}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.auth-container{padding:1rem 0.5rem}.auth-card{border-radius:12px}.auth-header,.auth-form{padding:1.5rem}.auth-footer{padding:1rem 1.5rem 1.5rem}.form-group.form-checkbox{align-items:flex-start;gap:0.75rem}.form-group.form-checkbox .form-check-input{margin-top:2px}.form-group.form-checkbox .form-check-label{font-size:0.85rem;line-height:1.5}}.orders-container{max-width:1200px;margin:0 auto;padding:2rem 1rem;background:#f8f9fa;min-height:calc(100vh - 160px)}.orders-header{margin-bottom:2rem}.orders-header .orders-breadcrumb{display:flex;align-items:center;gap:0.5rem;margin-bottom:1.5rem;font-size:0.9rem;color:#7f8c8d}.orders-header .orders-breadcrumb .breadcrumb-link{color:#3575A4;text-decoration:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.orders-header .orders-breadcrumb .breadcrumb-link:hover{color:#51A0D7;text-decoration:underline}.orders-header .orders-breadcrumb .breadcrumb-separator{color:#7f8c8d;font-weight:300}.orders-header .orders-breadcrumb .breadcrumb-current{color:#2c3e50;font-weight:500}.orders-header .orders-title-section{text-align:center}.orders-header .orders-title-section .orders-title{font-size:2.5rem;font-weight:700;color:#2c3e50;margin:0 0 0.5rem 0;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.orders-header .orders-title-section .orders-subtitle{font-size:1.1rem;color:#7f8c8d;margin:0}.orders-stats{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;background:white;border-radius:20px;box-shadow:0 8px 25px rgba(0,0,0,0.1)}.orders-stats .stat-item{text-align:center}.orders-stats .stat-item .stat-number{display:block;font-size:1.5rem;font-weight:700;color:#3575A4;margin-bottom:0.25rem}.orders-stats .stat-item .stat-label{font-size:0.8rem;color:#7f8c8d;font-weight:500}.orders-list{display:flex;flex-direction:column;gap:1.5rem}.order-card{background:white;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,0.1);overflow:hidden;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);border:1px solid rgba(53,117,164,0.1)}.order-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(0,0,0,0.1);border-color:rgba(53,117,164,0.2)}.order-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:linear-gradient(135deg, #cfe2ef 0%, #f7fbfd 100%);border-bottom:1px solid rgba(53,117,164,0.1)}.order-header .order-number .order-label{display:block;font-size:0.8rem;color:#7f8c8d;margin-bottom:0.25rem;text-transform:uppercase;letter-spacing:0.5px}.order-header .order-number .order-value{font-size:1.2rem;font-weight:700;color:#2c3e50;font-family:'Monaco', 'Courier New', monospace}.order-info{padding:1rem 2rem;display:flex;flex-direction:column;gap:0.75rem}.order-info .order-date,.order-info .order-store,.order-info .order-tracking{display:flex;align-items:center;gap:0.5rem;font-size:0.9rem;color:#2c3e50}.order-info .order-date .icon-calendar,.order-info .order-date .icon-location,.order-info .order-date .icon-package,.order-info .order-store .icon-calendar,.order-info .order-store .icon-location,.order-info .order-store .icon-package,.order-info .order-tracking .icon-calendar,.order-info .order-tracking .icon-location,.order-info .order-tracking .icon-package{width:16px;height:16px;color:#3575A4}.order-info .order-date .icon-calendar::before,.order-info .order-date .icon-location::before,.order-info .order-date .icon-package::before,.order-info .order-store .icon-calendar::before,.order-info .order-store .icon-location::before,.order-info .order-store .icon-package::before,.order-info .order-tracking .icon-calendar::before,.order-info .order-tracking .icon-location::before,.order-info .order-tracking .icon-package::before{content:"📅"}.order-info .order-date .icon-location::before,.order-info .order-store .icon-location::before,.order-info .order-tracking .icon-location::before{content:"📍"}.order-info .order-date .icon-package::before,.order-info .order-store .icon-package::before,.order-info .order-tracking .icon-package::before{content:"📦"}.order-info .order-tracking .tracking-link{color:#3575A4;text-decoration:none;font-weight:500;transition:color 0.2s ease}.order-info .order-tracking .tracking-link:hover{color:#51A0D7;text-decoration:underline}.order-items{padding:1rem 2rem;border-top:1px solid #f0f0f0}.order-items .items-summary{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.order-items .items-summary .items-count{background:#e2edf6;color:#3575A4;padding:0.25rem 0.75rem;border-radius:20px;font-size:0.8rem;font-weight:600}.order-items .items-summary .item-name{font-size:0.9rem;color:#2c3e50}.order-items .items-summary .item-name:not(:last-child)::after{content:"、";margin-left:0.25rem;color:#7f8c8d}.order-items .items-summary .more-items{font-size:0.8rem;color:#7f8c8d;font-style:italic}.order-footer{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#fafafa;border-top:1px solid #f0f0f0}.order-footer .order-total .total-label{display:block;font-size:0.8rem;color:#7f8c8d;margin-bottom:0.25rem}.order-footer .order-total .total-amount{font-size:1.3rem;font-weight:700;color:#3575A4}.order-footer .order-actions{display:flex;gap:1rem;align-items:center}.status-badge{padding:0.5rem 1rem;border-radius:20px;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px}.status-badge.status-pending{background:#fce3bc;color:#c87f0a}.status-badge.status-confirmed{background:#e2eff8;color:#2e88c7}.status-badge.status-shipped{background:#e2eff8;color:#2e88c7}.status-badge.status-delivered{background:#9ee9be;color:#1e8449}.status-badge.status-cancelled{background:#fbdedb;color:#d62c1a}.orders-empty{text-align:center;padding:4rem 2rem;background:white;border-radius:20px;box-shadow:0 8px 25px rgba(0,0,0,0.1)}.orders-empty .empty-icon{width:80px;height:80px;margin:0 auto 2rem;color:#7f8c8d;opacity:0.5}.orders-empty .empty-icon svg{width:100%;height:100%}.orders-empty .empty-title{font-size:1.5rem;font-weight:600;color:#2c3e50;margin:0 0 1rem 0}.orders-empty .empty-description{font-size:1rem;color:#7f8c8d;margin:0 0 2rem 0;line-height:1.6}.order-detail-container{max-width:1000px;margin:0 auto;padding:2rem 1rem;background:#f8f9fa;min-height:calc(100vh - 160px)}.order-detail-header{margin-bottom:2rem}.order-detail-header .order-breadcrumb{display:flex;align-items:center;gap:0.5rem;margin-bottom:1.5rem;font-size:0.9rem;color:#7f8c8d}.order-detail-header .order-breadcrumb .breadcrumb-link{color:#3575A4;text-decoration:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.order-detail-header .order-breadcrumb .breadcrumb-link:hover{color:#51A0D7;text-decoration:underline}.order-detail-header .order-breadcrumb .breadcrumb-separator{color:#7f8c8d;font-weight:300}.order-detail-header .order-breadcrumb .breadcrumb-current{color:#2c3e50;font-weight:500}.order-detail-header .order-title-section{text-align:center}.order-detail-header .order-title-section .order-title{font-size:2.2rem;font-weight:700;color:#2c3e50;margin:0 0 1rem 0;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.order-detail-header .order-title-section .order-number-large .order-label{display:block;font-size:0.9rem;color:#7f8c8d;margin-bottom:0.5rem;text-transform:uppercase;letter-spacing:0.5px}.order-detail-header .order-title-section .order-number-large .order-value{font-size:1.5rem;font-weight:700;color:#3575A4;font-family:'Monaco', 'Courier New', monospace}.order-detail-content{display:flex;flex-direction:column;gap:2rem}.order-status-card,.delivery-info-card,.order-items-card,.order-summary-card,.customer-info-card,.order-actions-card{background:white;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,0.1);overflow:hidden;border:1px solid rgba(53,117,164,0.1)}.order-status-card .card-title,.delivery-info-card .card-title,.order-items-card .card-title,.order-summary-card .card-title,.customer-info-card .card-title,.order-actions-card .card-title{font-size:1.3rem;font-weight:600;color:#2c3e50;margin:0;padding:1.5rem 2rem;background:linear-gradient(135deg, #cfe2ef 0%, #f7fbfd 100%);border-bottom:1px solid rgba(53,117,164,0.1)}.order-status-card .status-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:linear-gradient(135deg, #cfe2ef 0%, #f7fbfd 100%);border-bottom:1px solid rgba(53,117,164,0.1)}.order-status-card .status-header .status-title{font-size:1.3rem;font-weight:600;color:#2c3e50;margin:0}.order-status-card .status-header .status-badge-large{padding:0.75rem 1.5rem;border-radius:25px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px}.order-status-card .status-header .status-badge-large.status-pending{background:#f39c12;color:white}.order-status-card .status-header .status-badge-large.status-confirmed{background:#51A0D7;color:white}.order-status-card .status-header .status-badge-large.status-shipped{background:#51A0D7;color:white}.order-status-card .status-header .status-badge-large.status-delivered{background:#27ae60;color:white}.order-status-card .status-header .status-badge-large.status-cancelled{background:#e74c3c;color:white}.order-status-card .order-timeline{padding:2rem;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;flex-wrap:wrap}.timeline-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;padding:1rem 0.75rem;border-radius:8px;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);opacity:0.4;flex:1;min-width:120px;text-align:center}.timeline-item.active{opacity:1;background:#eaf2f8}.timeline-item .timeline-icon{width:36px;height:36px;border-radius:50%;background:#3575A4;color:white;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:0.25rem}.timeline-item .timeline-icon svg{width:18px;height:18px}.timeline-item .timeline-content{flex:1}.timeline-item .timeline-content h4{margin:0 0 0.25rem 0;font-size:0.9rem;font-weight:600;color:#2c3e50;line-height:1.2}.timeline-item .timeline-content p{margin:0;font-size:0.75rem;color:#7f8c8d;line-height:1.3}.timeline-item:not(.active) .timeline-icon{background:#7f8c8d}.delivery-details{padding:2rem;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;flex-wrap:wrap}.delivery-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;flex:1;min-width:140px;text-align:center;padding:1rem 0.75rem}.delivery-item .item-icon{width:36px;height:36px;border-radius:50%;background:#cfe2ef;color:#3575A4;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:0.25rem}.delivery-item .item-icon svg{width:18px;height:18px}.delivery-item .item-content{flex:1}.delivery-item .item-content label{display:block;font-size:0.75rem;color:#7f8c8d;margin-bottom:0.25rem;text-transform:uppercase;letter-spacing:0.5px}.delivery-item .item-content span{font-size:0.9rem;color:#2c3e50;font-weight:500;line-height:1.3}.delivery-item .item-content span .tracking-link{color:#3575A4;text-decoration:none;font-weight:500;transition:color 0.2s ease}.delivery-item .item-content span .tracking-link:hover{color:#51A0D7;text-decoration:underline}.items-list{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.order-item{display:flex;gap:1rem;align-items:center;padding:1.5rem;background:#fafafa;border-radius:8px;border:1px solid #f0f0f0}.order-item .item-image{width:80px;height:80px;flex-shrink:0;border-radius:8px;overflow:hidden;background:white;border:2px solid #f0f0f0;display:flex;align-items:center;justify-content:center}.order-item .item-image .order-item-image{display:block;width:100%;height:100%;object-fit:cover}.order-item .item-image .image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#7f8c8d}.order-item .item-image .image-placeholder svg{width:40px;height:40px}.order-item .item-details{flex:1}.order-item .item-details .product-name{font-size:1.1rem;font-weight:600;color:#2c3e50;margin:0 0 0.5rem 0}.order-item .item-details .variant-name{font-size:0.9rem;color:#7f8c8d;margin:0 0 0.75rem 0}.order-item .item-details .item-meta{display:flex;gap:1rem;font-size:0.9rem}.order-item .item-details .item-meta .unit-price,.order-item .item-details .item-meta .quantity{color:#2c3e50}.order-item .item-total .total-price{font-size:1.2rem;font-weight:700;color:#3575A4}.summary-details{padding:2rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0;font-size:1rem}.summary-item:not(:last-child){border-bottom:1px solid #f0f0f0}.summary-item .item-label{color:#2c3e50;font-weight:500}.summary-item .item-value{color:#2c3e50;font-weight:600}.summary-item.total{font-size:1.2rem;font-weight:700;color:#3575A4;border-top:2px solid #3575A4;margin-top:1rem;padding-top:1rem}.summary-divider{height:1px;background:#f0f0f0;margin:1rem 0}.customer-details{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.customer-item{display:flex;flex-direction:column;gap:0.5rem}.customer-item label{font-size:0.8rem;color:#7f8c8d;text-transform:uppercase;letter-spacing:0.5px}.customer-item span{font-size:1rem;color:#2c3e50;font-weight:500}.order-actions-card .action-buttons{padding:2rem;display:flex;gap:1rem;justify-content:center}.btn{display:inline-block;padding:0.75rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;text-decoration:none;text-align:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);user-select:none}.btn.btn-primary{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:white}.btn.btn-primary:hover{background:linear-gradient(135deg, #2b5f85 0%, #308ecf 100%);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.1)}.btn.btn-outline{background:transparent;color:#3575A4;border:2px solid #3575A4}.btn.btn-outline:hover{background:#3575A4;color:white}.btn.btn-secondary{background:#7f8c8d;color:white}.btn.btn-secondary:hover{background:#667273}.btn.btn-secondary:disabled{opacity:0.6;cursor:not-allowed}.btn.btn-danger{background:#e74c3c;color:white}.btn.btn-danger:hover{background:#d62c1a;transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.1)}@media (max-width: 768px){.orders-container,.order-detail-container{padding:1rem 0.5rem}.orders-header .orders-title-section .orders-title,.order-detail-header .order-title-section .order-title{font-size:2rem}.orders-stats{flex-direction:row;gap:0.75rem;padding:1rem}.orders-stats .stat-item{flex:1}.orders-stats .stat-item .stat-number{font-size:1.25rem}.orders-stats .stat-item .stat-label{font-size:0.75rem}.order-header,.order-info,.order-items,.order-footer{padding-left:1rem;padding-right:1rem}.order-footer{flex-direction:column;gap:1rem;align-items:stretch}.order-footer .order-actions{justify-content:center}.order-item{flex-direction:column;text-align:center}.order-item .item-details .item-meta{justify-content:center}.action-buttons{flex-direction:column;gap:0.75rem}.order-timeline{padding:1.5rem 1rem;gap:0.75rem}.timeline-item{min-width:80px;padding:0.75rem 0.5rem}.timeline-item .timeline-icon{width:32px;height:32px}.timeline-item .timeline-icon svg{width:16px;height:16px}.timeline-item .timeline-content h4{font-size:0.8rem}.timeline-item .timeline-content p{font-size:0.7rem}}@media (max-width: 480px){.orders-container,.order-detail-container{padding:0.75rem 0.25rem}.card-title{padding:1rem 1.5rem;font-size:1.1rem}.delivery-details,.items-list,.summary-details,.customer-details{padding:1.5rem}.delivery-details{padding:1.5rem 1rem;gap:0.75rem}.delivery-item{min-width:100px;padding:0.75rem 0.5rem}.delivery-item .item-icon{width:32px;height:32px}.delivery-item .item-icon svg{width:16px;height:16px}.delivery-item .item-content label{font-size:0.7rem}.delivery-item .item-content span{font-size:0.8rem}}.line-add-friend-button{position:fixed;bottom:30px;right:30px;z-index:1000}.line-add-friend-button .line-button{display:flex;align-items:center;justify-content:center;background:#00C300;color:white;text-decoration:none;width:60px;height:60px;border-radius:50%;box-shadow:0 4px 12px rgba(0,195,0,0.4);transition:all 0.3s ease}.line-add-friend-button .line-button:hover{background:#00B300;box-shadow:0 6px 16px rgba(0,195,0,0.6);transform:translateY(-2px);color:white;text-decoration:none}.line-add-friend-button .line-button:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,195,0,0.4)}.line-add-friend-button .line-button .line-icon{width:28px;height:28px;fill:currentColor}@media (max-width: 768px){.line-add-friend-button{bottom:20px;right:20px}.line-add-friend-button .line-button{width:50px;height:50px}.line-add-friend-button .line-button .line-icon{width:24px;height:24px}}@media (max-width: 480px){.line-add-friend-button{bottom:15px;right:15px}.line-add-friend-button .line-button{width:45px;height:45px}.line-add-friend-button .line-button .line-icon{width:20px;height:20px}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.line-add-friend-button .line-button{animation:pulse 2s infinite ease-in-out}.line-add-friend-button .line-button:hover{animation:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Noto Sans TC", "Source Han Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #3575A4;outline-offset:2px}.main-navigation{position:fixed;top:0;left:0;right:0;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px rgba(0,0,0,0.1);border-bottom:1px solid rgba(255,255,255,0.2);z-index:1000;height:80px;transition:all 0.3s ease}.main-navigation.scrolled{background:rgba(255,255,255,0.98);box-shadow:0 4px 20px rgba(0,0,0,0.15)}.main-navigation .nav-container{max-width:1200px;margin:0 auto;padding:0 20px;height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}@media (max-width: 768px){.main-navigation .nav-container{padding:0 20px;gap:15px}}.nav-logo{flex-shrink:0}.nav-logo .logo-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:#2c3e50;transition:all 0.3s ease;padding:8px 12px;border-radius:8px}.nav-logo .logo-link:hover{transform:translateY(-2px);color:#3575A4}.nav-logo .logo-link .logo-image{height:50px;width:auto;object-fit:contain;border-radius:6px;transition:all 0.3s ease}.nav-logo .logo-link .logo-image:hover{transform:scale(1.05)}.nav-logo .logo-link .logo-text{font-size:1.4rem;font-weight:700;line-height:1.2;letter-spacing:-0.3px;background:linear-gradient(135deg, #2c3e50 0%, #3575A4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:all 0.3s ease;white-space:nowrap}@media (max-width: 768px){.nav-logo .logo-link{gap:8px;padding:6px 8px}.nav-logo .logo-link .logo-image{height:40px}.nav-logo .logo-link .logo-text{font-size:1.1rem}}@media (max-width: 480px){.nav-logo .logo-link .logo-image{height:35px}.nav-logo .logo-link .logo-text{font-size:1rem}}.nav-menu{flex:1;max-width:600px}.nav-menu .nav-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:8px;justify-content:center}.nav-menu .nav-item{position:relative}.nav-menu .nav-item .nav-link{display:flex;align-items:center;gap:8px;padding:12px 18px;text-decoration:none;color:#2c3e50;font-weight:600;font-size:0.95rem;border-radius:12px;transition:all 0.3s ease;position:relative}.nav-menu .nav-item .nav-link:hover{transform:translateY(-2px);color:#ffffff;background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);box-shadow:0 8px 25px rgba(0,0,0,0.15)}.nav-menu .nav-item .nav-link.active{background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);color:#ffffff;box-shadow:0 4px 15px rgba(0,0,0,0.2);transform:translateY(-1px)}.nav-menu .nav-item .nav-link .nav-badge{background:linear-gradient(135deg, #51A0D7 0%, #7ab7e1 100%);color:#ffffff;font-size:0.65rem;padding:4px 8px;border-radius:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;box-shadow:0 2px 8px rgba(0,0,0,0.2);animation:pulse 2s infinite}.nav-menu .nav-item .nav-link .dropdown-arrow{display:inline-block;width:0;height:0;margin-left:6px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;vertical-align:middle}@media (max-width: 1024px){.nav-menu .nav-item .nav-link{padding:10px 14px;font-size:0.9rem}}.dropdown-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,0.15);padding:20px;min-width:400px;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(-10px);transition:all 0.3s ease;z-index:1010;border:1px solid rgba(255,255,255,0.2)}.dropdown-menu.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.dropdown-menu .dropdown-section .dropdown-link{display:block;padding:10px 0;color:#7f8c8d;text-decoration:none;font-size:0.9rem;font-weight:500;transition:all 0.3s ease;border-radius:6px;padding-left:0}.dropdown-menu .dropdown-section .dropdown-link:hover{color:#3575A4;padding-left:10px}.dropdown-menu .dropdown-section .dropdown-link.logout{background:none;border:none;width:100%;text-align:left;cursor:pointer;font-family:inherit}.dropdown-menu .dropdown-section .dropdown-link.logout:hover{color:#dc3545;padding-left:10px}.dropdown-menu .dropdown-section .dropdown-link.subcategory{font-size:0.85rem;padding-left:15px;opacity:0.8}.dropdown-menu .dropdown-section .dropdown-link.subcategory:hover{padding-left:20px}.nav-search{flex-shrink:0}.nav-search .search-form{display:flex;align-items:center;position:relative}.nav-search .search-form .search-input{width:280px;padding:12px 18px;border:2px solid rgba(255,255,255,0.3);border-radius:20px;font-size:0.9rem;background:rgba(255,255,255,0.8);backdrop-filter:blur(10px);transition:all 0.3s ease;color:#2c3e50}.nav-search .search-form .search-input:focus{outline:none;border-color:#3575A4;box-shadow:0 0 0 3px rgba(53,117,164,0.1);background:rgba(255,255,255,0.95);width:300px}.nav-search .search-form .search-input::placeholder{color:#7f8c8d;font-weight:500}.nav-search .search-form .search-button{position:absolute;right:4px;background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);color:#ffffff;border:none;padding:8px 16px;border-radius:16px;font-size:0.85rem;font-weight:600;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 15px rgba(0,0,0,0.1)}.nav-search .search-form .search-button:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,0.2)}@media (max-width: 1024px){.nav-search .search-form .search-input{width:200px}.nav-search .search-form .search-input:focus{width:220px}}.nav-actions{display:flex;align-items:center;flex-shrink:0}.nav-actions .nav-item-group{display:flex;align-items:center;gap:15px}.nav-actions .nav-action-link{display:flex;align-items:center;flex-direction:column;gap:4px;text-decoration:none;color:#2c3e50;padding:10px 14px;border-radius:12px;transition:all 0.3s ease;position:relative;background:rgba(255,255,255,0.6);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.3)}.nav-actions .nav-action-link:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.15);color:#ffffff;background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%)}.nav-actions .nav-action-link .action-icon{position:relative;display:flex;align-items:center}.nav-actions .nav-action-link .action-icon svg{width:20px;height:20px;transition:transform 0.3s ease}.nav-actions .nav-action-link .action-icon .cart-badge{position:absolute;top:-6px;right:-10px;background:#e74c3c;color:white;border-radius:50%;min-width:18px;height:18px;padding:0 4px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;font-family:-apple-system, BlinkMacSystemFont, sans-serif;box-shadow:0 2px 6px rgba(0,0,0,0.2);border:2px solid white;z-index:10}.nav-actions .nav-action-link .action-text{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;white-space:nowrap;text-align:center}.nav-actions .nav-action-link:hover .action-icon svg{transform:scale(1.1)}.nav-actions .nav-action-link.cart-link{flex-direction:row;gap:8px;padding:8px 12px}.nav-actions .nav-action-link.cart-link .cart-total-price{font-size:0.9rem;font-weight:700;white-space:nowrap}.mobile-menu-btn{display:none;flex-direction:column;justify-content:center;width:44px;height:44px;background:rgba(255,255,255,0.8);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.3);border-radius:12px;cursor:pointer;padding:8px;transition:all 0.3s ease;z-index:1020}.mobile-menu-btn:hover{background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.15)}.mobile-menu-btn:hover .hamburger-line{background:#ffffff}.mobile-menu-btn .hamburger-line{width:22px;height:3px;background:#2c3e50;margin:2px 0;border-radius:2px;transition:all 0.3s ease;transform-origin:center}.mobile-menu-btn.active .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px, 5px)}.mobile-menu-btn.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(7px, -6px)}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,0.6);backdrop-filter:blur(5px);z-index:5000;opacity:0;visibility:hidden;transition:all 0.4s ease}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-menu-overlay.active .mobile-menu{transform:translateX(0);border:0}.mobile-menu-overlay .mobile-menu{position:absolute;top:0;right:0;width:350px;height:100vh;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);transform:translateX(100%);transition:transform 0.4s ease;display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,0.3);pointer-events:auto;min-height:100vh}@media (max-width: 480px){.mobile-menu-overlay .mobile-menu{width:100%}}.mobile-menu-overlay .mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid rgba(0,0,0,0.1);background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);color:#ffffff}.mobile-menu-overlay .mobile-menu-header .mobile-menu-title{font-size:1.3rem;font-weight:700}.mobile-menu-overlay .mobile-menu-header .mobile-menu-close{background:none;border:none;font-size:1.8rem;color:#ffffff;cursor:pointer;padding:8px;border-radius:8px;transition:all 0.3s ease}.mobile-menu-overlay .mobile-menu-header .mobile-menu-close:hover{background:rgba(255,255,255,0.2);transform:rotate(90deg)}.mobile-menu-overlay .mobile-menu-content{flex:1;overflow-y:auto;padding:20px;min-height:0}.mobile-menu-overlay .mobile-menu-content .mobile-search{margin-bottom:25px}.mobile-menu-overlay .mobile-menu-content .mobile-search .mobile-search-form{display:flex;gap:10px}.mobile-menu-overlay .mobile-menu-content .mobile-search .mobile-search-form .mobile-search-input{flex:1;padding:12px 16px;border:2px solid rgba(0,0,0,0.1);border-radius:10px;font-size:1rem;background:rgba(255,255,255,0.8);backdrop-filter:blur(10px)}.mobile-menu-overlay .mobile-menu-content .mobile-search .mobile-search-form .mobile-search-input:focus{outline:none;border-color:#3575A4;box-shadow:0 0 0 3px rgba(53,117,164,0.1)}.mobile-menu-overlay .mobile-menu-content .mobile-search .mobile-search-form .mobile-search-button{background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);color:#ffffff;border:none;padding:12px 20px;border-radius:10px;font-weight:600;cursor:pointer;transition:all 0.3s ease}.mobile-menu-overlay .mobile-menu-content .mobile-search .mobile-search-form .mobile-search-button:hover{transform:translateY(-1px);box-shadow:0 4px 15px rgba(0,0,0,0.2)}.mobile-menu-overlay .mobile-menu-content .mobile-nav-list{list-style:none;margin:0;padding:0}.mobile-menu-overlay .mobile-menu-content .mobile-nav-list .mobile-nav-item{margin-bottom:15px}.mobile-menu-overlay .mobile-menu-content .mobile-nav-list .mobile-nav-item .mobile-nav-link{display:block;padding:14px 18px;color:#2c3e50;text-decoration:none;font-weight:600;font-size:1rem;background:rgba(255,255,255,0.6);border-radius:10px;transition:all 0.3s ease;border:1px solid rgba(0,0,0,0.05)}.mobile-menu-overlay .mobile-menu-content .mobile-nav-list .mobile-nav-item .mobile-nav-link:hover{background:linear-gradient(135deg, #3575A4 0%, #488fc4 100%);color:#ffffff;transform:translateX(8px);box-shadow:0 4px 15px rgba(0,0,0,0.1)}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-2px)}}body{padding-top:80px;transition:padding-top 0.3s ease}.main-content{min-height:calc(100vh - $nav-height)}@media (max-width: 1024px){.main-navigation{height:70px}body{padding-top:70px}.main-content{min-height:calc(100vh - 70px)}.nav-menu .nav-list{gap:4px}.nav-search .search-form .search-input{width:180px}.nav-actions .nav-item-group{gap:10px}.nav-action-link .action-text{font-size:0.7rem}}@media (max-width: 900px){.nav-container{padding:0 15px;gap:15px}.nav-menu .nav-list{gap:2px}.nav-actions .nav-item-group{gap:8px}}.nav-user-dropdown{position:relative}.nav-user-dropdown .user-link{display:flex;align-items:center;flex-direction:column;gap:4px;padding:8px 12px;color:#2c3e50;text-decoration:none;border-radius:8px;transition:all 0.3s ease;cursor:pointer;background:none;border:none;font-family:inherit;position:relative;min-width:60px}.nav-user-dropdown .user-link:hover{background:rgba(53,117,164,0.1);transform:translateY(-1px);color:#2c3e50}.nav-user-dropdown .user-link:hover .action-icon svg{stroke:#2c3e50}.nav-user-dropdown .user-link .action-text{max-width:50px;overflow:hidden;text-overflow:ellipsis}.nav-user-dropdown .user-link .dropdown-arrow{display:inline-block;width:0;height:0;position:absolute;top:10px;right:2px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #7f8c8d}.user-dropdown-menu{position:absolute;top:100%;right:0;background:white;border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,0.15);padding:0.5rem 0;min-width:180px;display:none;z-index:1000;margin-top:0.5rem;border:1px solid rgba(0,0,0,0.1)}.user-dropdown-menu .dropdown-link{display:block;padding:0.75rem 1rem;color:#2c3e50;text-decoration:none;font-size:0.9rem;transition:all 0.3s ease}.user-dropdown-menu .dropdown-link:hover{background:#e2edf6;color:#3575A4}.user-dropdown-menu .dropdown-link.logout{color:#2c3e50 !important;background:none !important;border:none !important;width:100%;text-align:left;cursor:pointer;font-family:inherit;font-size:0.9rem !important;font-weight:normal !important;text-shadow:none !important;padding:0.75rem 1rem !important;margin:0;outline:none;box-shadow:none !important;border-radius:0}.user-dropdown-menu .dropdown-link.logout:hover{background:#e2edf6 !important;color:#3575A4 !important;box-shadow:none !important}.user-dropdown-menu .dropdown-link.logout:focus{outline:none;box-shadow:none !important}.user-dropdown-menu .dropdown-divider{height:1px;background:#f0f0f0;margin:0.5rem 0}.mobile-auth-section{padding:1rem 0;border-bottom:1px solid #f0f0f0;display:flex;gap:0.5rem}.mobile-auth-section .mobile-auth-btn{flex:1;padding:0.75rem 1rem;border-radius:8px;text-align:center;text-decoration:none;font-size:0.9rem;font-weight:500;transition:all 0.3s ease}.mobile-auth-section .mobile-auth-btn.login{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:white}.mobile-auth-section .mobile-auth-btn.login:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(53,117,164,0.3)}.mobile-auth-section .mobile-auth-btn.register{background:transparent;color:#3575A4;border:2px solid #3575A4}.mobile-auth-section .mobile-auth-btn.register:hover{background:#3575A4;color:white}.mobile-user-section{padding:1rem 0;border-bottom:1px solid #f0f0f0}.mobile-user-section .mobile-user-info{margin-bottom:1rem}.mobile-user-section .mobile-user-info .mobile-user-name{font-size:1rem;font-weight:600;color:#2c3e50}.mobile-user-section .mobile-user-actions{display:flex;flex-direction:column;gap:0.25rem}.mobile-user-section .mobile-user-actions .mobile-user-link{padding:0.75rem 1rem;color:#2c3e50;text-decoration:none;font-size:0.9rem;border-radius:6px;transition:all 0.3s ease}.mobile-user-section .mobile-user-actions .mobile-user-link:hover{background:#e2edf6;color:#3575A4}.mobile-user-section .mobile-user-actions .mobile-user-link.logout{color:#2c3e50 !important;background:none !important;border:none !important;width:100%;text-align:left;cursor:pointer;font-family:inherit;font-size:0.9rem !important;font-weight:normal !important;text-shadow:none !important;padding:0.75rem 1rem !important;margin:0;outline:none;box-shadow:none !important;border-radius:6px}.mobile-user-section .mobile-user-actions .mobile-user-link.logout:hover{background:#e2edf6 !important;color:#3575A4 !important;box-shadow:none !important}.mobile-user-section .mobile-user-actions .mobile-user-link.logout:focus{outline:none;box-shadow:none !important}@media (max-width: 768px){.main-navigation{height:60px}body{padding-top:60px}.main-content{min-height:calc(100vh - 60px)}.nav-menu,.nav-search,.nav-actions{display:none}.mobile-menu-btn{display:flex}.nav-container{padding:0 15px}}.checkout-page{max-width:1200px;margin:0 auto;padding:20px}.checkout-steps{display:flex;justify-content:center;margin-bottom:40px;padding:0 20px}.checkout-steps .step{display:flex;flex-direction:column;align-items:center;flex:1;max-width:150px;position:relative}.checkout-steps .step:not(:last-child)::after{content:'';position:absolute;top:20px;right:-50%;width:100%;height:2px;background:#dee2e6;z-index:1}.checkout-steps .step.active .step-number{background:#3575A4;color:white}.checkout-steps .step.active .step-title{color:#3575A4;font-weight:600}.checkout-steps .step.active::after{background:#3575A4}.checkout-steps .step .step-number{width:40px;height:40px;border-radius:50%;background:#dee2e6;color:#6c757d;display:flex;align-items:center;justify-content:center;font-weight:600;margin-bottom:8px;position:relative;z-index:2;transition:all 0.3s ease}.checkout-steps .step .step-title{font-size:0.9rem;color:#6c757d;text-align:center;transition:all 0.3s ease}.checkout-container{max-width:800px;margin:0 auto}.checkout-title{font-size:2.5rem;font-weight:700;color:#2c3e50;margin-bottom:30px;text-align:center}@media (min-width: 768px){.checkout-title{text-align:left;grid-column:1 / -1}}.checkout-section{background:white;border-radius:12px;padding:24px;box-shadow:0 2px 10px rgba(0,0,0,0.1);margin-bottom:24px}.checkout-section h2{font-size:1.5rem;font-weight:600;color:#2c3e50;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #f8f9fa}.user-info-notice{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg, #e3f2fd 0%, #f3e5f5 100%);border:1px solid #bbdefb;border-radius:8px;padding:16px;margin-bottom:24px}.user-info-notice .notice-icon{font-size:1.5rem;line-height:1}.user-info-notice .notice-text{flex:1}.user-info-notice .notice-text strong{font-weight:600;color:#1976d2;font-size:1rem}.user-info-notice .notice-text span{font-size:0.9rem;color:#424242;line-height:1.4}.checkout-item{display:flex;align-items:center;padding:16px 0;border-bottom:1px solid #eee}.checkout-item:last-child{border-bottom:none}.checkout-item-image{width:80px;height:80px;margin-right:16px}.checkout-item-image img{width:100%;height:100%;object-fit:cover;border-radius:8px}.checkout-item-details{flex:1}.checkout-item-details .checkout-item-name{font-weight:600;color:#2c3e50;margin-bottom:4px}.checkout-item-details .checkout-item-variant{color:#666;font-size:0.9rem;margin-bottom:4px}.checkout-item-details .checkout-item-price{color:#e74c3c;font-weight:600}.checkout-item-quantity{margin:0 16px;color:#666}.checkout-item-total{font-weight:600;color:#2c3e50;min-width:100px;text-align:right}.checkout-total-breakdown .checkout-total-line{display:flex;justify-content:space-between;padding:8px 0}.checkout-total-breakdown .checkout-total-line .free-shipping{color:#27ae60;font-weight:600}.checkout-total-breakdown .checkout-total-line.checkout-total-final{font-size:1.2rem;font-weight:700;color:#e74c3c;border-top:2px solid #eee;margin-top:8px;padding-top:16px}.checkout-total-breakdown .shipping-hint{background:rgba(53,117,164,0.1);padding:10px 12px;border-radius:6px;margin:4px 0 8px}.checkout-total-breakdown .shipping-hint span{color:#3575A4;font-size:0.85rem;font-weight:500}.delivery-options{display:flex;flex-direction:column;gap:12px}.delivery-option{display:flex;align-items:center;padding:16px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all 0.3s ease}.delivery-option:hover{border-color:#3575A4;background-color:rgba(53,117,164,0.03)}.delivery-option input[type="radio"]{margin-right:12px;transform:scale(1.2)}.delivery-option input[type="radio"]:checked+.delivery-option-content{color:#3575A4}.delivery-option:has(input[type="radio"]:checked),.delivery-option.selected{border-color:#3575A4;background-color:rgba(53,117,164,0.03)}.delivery-option:has(input[type="radio"]:checked) .delivery-option-content,.delivery-option.selected .delivery-option-content{color:#3575A4}.delivery-option-content{flex:1}.delivery-option-content .delivery-option-title{font-weight:600;font-size:1.1rem;margin-bottom:4px}.delivery-option-content .delivery-option-description{color:#666;font-size:0.9rem;margin-bottom:4px}.delivery-option-content .delivery-option-price{font-weight:600;color:#27ae60}.payment-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:16px;margin-top:20px;display:flex;align-items:center}.payment-notice .payment-notice-icon{font-size:1.5rem;margin-right:12px}.payment-notice .payment-notice-text{flex:1}.payment-notice .payment-notice-text strong{color:#856404;font-size:1.1rem}.payment-notice .payment-notice-text span{color:#856404;font-size:0.9rem}.store-selection .store-selection-prompt{display:flex;align-items:center;padding:20px;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;text-align:center}.store-selection .store-selection-prompt .store-selection-icon{font-size:2rem;margin-right:16px}.store-selection .store-selection-prompt .store-selection-text{flex:1}.store-selection .store-selection-prompt .store-selection-text p{margin-bottom:12px;color:#666;font-size:1.1rem}.preferred-store-notice{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);border:2px solid #ffb74d;border-radius:12px;padding:20px;margin-bottom:20px}.preferred-store-notice .preferred-store-icon{font-size:1.8rem;line-height:1}.preferred-store-notice .preferred-store-text{flex:1}.preferred-store-notice .preferred-store-text strong{font-weight:600;color:#f57c00;font-size:1.1rem;display:block;margin-bottom:8px}.preferred-store-notice .preferred-store-text .preferred-store-name{font-weight:600;color:#2c3e50;font-size:1rem;display:block;margin-bottom:4px}.preferred-store-notice .preferred-store-text .preferred-store-address{color:#666;font-size:0.9rem;line-height:1.4}.preferred-store-actions{display:flex;gap:12px;justify-content:center;margin-bottom:20px}@media (max-width: 768px){.preferred-store-actions{flex-direction:column}}.preferred-store-actions .btn{flex:1;max-width:200px;padding:12px 24px;font-weight:600}@media (max-width: 768px){.preferred-store-actions .btn{max-width:none}}.selected-store{background:rgba(53,117,164,0.03);border:1px solid #3575A4;border-radius:8px;padding:16px;margin-bottom:16px}.selected-store .selected-store-info .store-header{display:flex;align-items:flex-start;gap:12px}.selected-store .selected-store-info .store-header .store-icon{font-size:1.5rem;margin-top:4px}.selected-store .selected-store-info .store-header .store-details{flex:1}.selected-store .selected-store-info .store-header .store-details h4{color:#3575A4;margin-bottom:8px;font-size:1.2rem;font-weight:600}.selected-store .selected-store-info .store-header .store-details .store-address{color:#2c3e50;margin-bottom:4px;font-weight:500}.selected-store .selected-store-info .store-header .store-details .store-phone{color:#666;font-size:0.9rem}.selected-store .selected-store-info .store-header .store-details .preferred-badge{display:inline-block;background:linear-gradient(135deg, #4CAF50, #45a049);color:white;font-size:0.75rem;padding:4px 8px;border-radius:12px;margin-left:8px;font-weight:500;box-shadow:0 2px 4px rgba(76,175,80,0.3)}.selected-store .selected-store-info .store-header .store-details .preferred-note{color:#4CAF50;font-size:0.85rem;font-weight:500;margin-top:8px;font-style:italic}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;color:#2c3e50;margin-bottom:8px}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color 0.3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3575A4;box-shadow:0 0 0 3px rgba(53,117,164,0.1)}.form-group input:required:invalid,.form-group textarea:required:invalid{border-color:#e74c3c}.form-group textarea{resize:vertical;min-height:80px}.checkout-actions{display:flex;gap:16px;margin-top:30px}@media (max-width: 768px){.checkout-actions{flex-direction:column}}.checkout-actions .btn{flex:1;padding:14px 24px;font-size:1.1rem;font-weight:600;border-radius:8px;transition:all 0.3s ease}.checkout-actions .btn:disabled{opacity:0.6;cursor:not-allowed}.store-selector-page{max-width:800px;margin:0 auto;padding:20px}.store-selector-container{background:white;border-radius:12px;padding:30px;box-shadow:0 4px 20px rgba(0,0,0,0.1)}.store-selector-title{font-size:2rem;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:30px}.store-selector-content{text-align:center}.store-selector-info{margin-bottom:30px}.store-selector-info p{font-size:1.1rem;color:#666;line-height:1.6}.store-selector-actions{display:flex;flex-direction:column;gap:16px;margin-bottom:30px}@media (min-width: 768px){.store-selector-actions{flex-direction:row;justify-content:center}}.store-selector-actions .btn-large{padding:16px 32px;font-size:1.2rem;font-weight:600}.selected-store-preview{background:rgba(53,117,164,0.03);border:2px solid #3575A4;border-radius:12px;padding:24px;text-align:left}.selected-store-preview h3{color:#3575A4;margin-bottom:16px;text-align:center}.selected-store-info{margin-bottom:20px}.selected-store-info .store-details h4{font-size:1.3rem;color:#2c3e50;margin-bottom:8px}.selected-store-info .store-details p{color:#666;margin-bottom:4px}.selected-store-info .store-details p.store-address{font-weight:500}.selected-store-actions{display:flex;gap:12px;justify-content:center}@media (max-width: 768px){.selected-store-actions{flex-direction:column}}.loading-indicator{text-align:center;padding:40px}.loading-indicator .loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3575A4;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (max-width: 768px){.checkout-page{padding:16px}.checkout-container{grid-template-columns:1fr}.checkout-item{flex-wrap:wrap;gap:12px}.checkout-item .checkout-item-image{width:60px;height:60px}.delivery-options{gap:8px}.delivery-option{padding:12px}.store-selector-container{padding:20px}.store-selector-title{font-size:1.5rem}}.empty-cart{text-align:center;padding:40px;color:#666;font-style:italic}.checkout-content .step-content{display:none;animation:fadeIn 0.3s ease-in-out}.checkout-content .step-content.active{display:block}.step-actions{display:flex;gap:16px;margin-top:30px;justify-content:space-between}@media (max-width: 768px){.step-actions{flex-direction:column}}.step-actions .btn{flex:1;padding:14px 24px;font-size:1.1rem;font-weight:600;border-radius:8px;transition:all 0.3s ease}.step-actions .btn:disabled{opacity:0.6;cursor:not-allowed}.order-summary,.contact-summary,.store-summary,.total-summary{margin-bottom:24px;padding:20px;background:#f8f9fa;border-radius:8px}.order-summary h3,.contact-summary h3,.store-summary h3,.total-summary h3{font-size:1.2rem;font-weight:600;color:#2c3e50;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #dee2e6}.final-order-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #eee}.final-order-item:last-child{border-bottom:none}.final-order-item .item-name{flex:1;font-weight:500}.final-order-item .item-quantity{margin:0 16px;color:#666}.final-order-item .item-total{font-weight:600;color:#e74c3c}.final-contact-item,.final-store-item{padding:4px 0}.final-contact-item strong,.final-store-item strong{color:#2c3e50;margin-right:8px}.final-total-breakdown .final-total-line{display:flex;justify-content:space-between;padding:8px 0}.final-total-breakdown .final-total-line.final-total-main{font-size:1.3rem;font-weight:700;color:#e74c3c;border-top:2px solid #dee2e6;margin-top:12px;padding-top:16px}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}#flash-messages{position:fixed;top:20px;right:20px;z-index:6000;max-width:400px}.flash-message{margin-bottom:12px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:translateX(120%);opacity:0;transition:all 0.3s ease}.flash-message.show{transform:translateX(0);opacity:1}.flash-message.hide{transform:translateX(120%);opacity:0}.flash-content{display:flex;align-items:center;padding:12px 16px;background:white;border-left:4px solid}.flash-content .flash-icon{margin-right:12px;font-size:1.2rem}.flash-content .flash-text{flex:1;font-weight:500;line-height:1.4}.flash-content .flash-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0;margin-left:12px;opacity:0.6;transition:opacity 0.2s ease}.flash-content .flash-close:hover{opacity:1}.flash-success .flash-content{border-left-color:#28a745;background:#f8fff9;color:#155724}.flash-error .flash-content{border-left-color:#dc3545;background:#fff8f8;color:#721c24}.flash-warning .flash-content{border-left-color:#ffc107;background:#fffef7;color:#856404}.flash-info .flash-content{border-left-color:#17a2b8;background:#f7feff;color:#0c5460}@media (max-width: 768px){#flash-messages{left:20px;right:20px;max-width:none}.flash-message{margin-bottom:8px}.flash-content{padding:10px 12px}.flash-content .flash-text{font-size:0.9rem}}.products-container{max-width:1200px;margin:0 auto;padding:20px;background:var(--gradient-background);min-height:100vh}@media (max-width: 768px){.products-container{padding:15px}}.products-header{text-align:center;margin-bottom:30px}.products-header h1{font-size:2rem;font-weight:700;background:linear-gradient(135deg, #2c3e50 0%, #3575A4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}@media (max-width: 768px){.products-header h1{font-size:1.5rem}}.category-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px;padding:20px;background:rgba(255,255,255,0.9);backdrop-filter:blur(20px);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);justify-content:center}@media (max-width: 768px){.category-nav{padding:15px;gap:8px}}.category-link{display:inline-flex;align-items:center;padding:10px 20px;background:rgba(255,255,255,0.8);color:#2c3e50;text-decoration:none;border-radius:var(--border-radius-xl);font-weight:600;font-size:0.9rem;transition:var(--transition-normal);border:2px solid transparent}.category-link:hover{background:var(--brand-dark);color:#fff;border-color:var(--brand-dark)}.category-link.active{background:var(--brand-dark);color:#fff;border-color:var(--brand-dark);box-shadow:0 8px 25px rgba(53,117,164,0.3)}.category-link.subcategory{font-size:0.85rem;padding:8px 16px;background:rgba(81,160,215,0.1);color:var(--brand-light)}.category-link.subcategory.active{background:var(--brand-light);color:#fff}@media (max-width: 768px){.category-link{padding:8px 14px;font-size:0.8rem}}.products-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:20px}@media (max-width: 992px){.products-grid{grid-template-columns:repeat(2, 1fr);gap:15px}}@media (max-width: 576px){.products-grid{grid-template-columns:1fr;gap:15px}}.product-card{background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);border-radius:var(--border-radius-sm);overflow:hidden;box-shadow:var(--shadow-md);display:flex;flex-direction:column;border:1px solid rgba(255,255,255,0.2);transition:transform 0.3s ease, box-shadow 0.3s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,0.12)}.product-card:hover .product-img{transform:scale(1.05)}.product-link{text-decoration:none;color:inherit;display:flex;flex-direction:column}.product-image{position:relative;width:100%;padding-top:100%;overflow:hidden;background:linear-gradient(135deg, rgba(248,249,250,0.8) 0%, rgba(233,236,239,0.8) 100%)}.product-image .product-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.product-image .placeholder-image{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f0f0f0;color:#999;font-size:0.9rem}.sale-badge{position:absolute;top:12px;left:12px;background:var(--gradient-secondary);color:#fff;padding:6px 14px;border-radius:var(--border-radius-sm);font-size:0.8rem;font-weight:700;z-index:2;box-shadow:0 4px 15px rgba(255,45,146,0.4)}.stock-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:3}.stock-overlay .out-of-stock-badge{background:rgba(255,255,255,0.95);color:var(--color-secondary);padding:12px 24px;border-radius:var(--border-radius-xl);font-weight:700;font-size:1rem;box-shadow:0 8px 25px rgba(0,0,0,0.2)}.product-info{padding:15px 15px 10px;text-align:center}.product-info .product-name{font-size:1rem;font-weight:600;color:#2c3e50;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em;transition:color 0.3s ease}.product-card:hover .product-info .product-name{color:var(--brand-dark)}.product-bottom{display:flex;align-items:center;justify-content:space-between;padding:10px 15px 15px;gap:10px;margin-top:auto}.price-tag{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--brand-dark);color:#fff;padding:12px 16px;border-radius:var(--border-radius-xl);flex:1;box-shadow:0 4px 15px rgba(53,117,164,0.3)}.price-tag .current-price{font-size:0.9rem;font-weight:700;white-space:nowrap}.price-tag .original-price{font-size:0.8rem;text-decoration:line-through;opacity:0.7;white-space:nowrap}.select-variant-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--brand-dark);color:#fff;padding:12px 20px;border-radius:var(--border-radius-xl);font-size:0.9rem;font-weight:600;text-decoration:none;transition:var(--transition-normal);white-space:nowrap;flex:1;box-shadow:0 4px 15px rgba(53,117,164,0.3)}.select-variant-btn:hover{background:#2a5a85;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(53,117,164,0.4)}.no-products{grid-column:1 / -1;text-align:center;padding:60px 20px}.no-products .no-products-content{background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);padding:40px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);max-width:400px;margin:0 auto}.no-products .no-products-content h3{font-size:1.3rem;color:#2c3e50;margin:0 0 10px 0}.no-products .no-products-content p{color:#555;font-size:0.95rem;margin:0 0 20px 0}.no-products .no-products-content .btn-primary{display:inline-block;padding:12px 24px;background:var(--brand-dark);color:#fff;text-decoration:none;border-radius:var(--border-radius-xl);font-weight:600;transition:var(--transition-normal);box-shadow:0 8px 25px rgba(53,117,164,0.3)}.no-products .no-products-content .btn-primary:hover{background:#2a5a85;transform:translateY(-2px)}@media (max-width: 768px){.product-info .product-name{font-size:0.9rem}.price-tag{padding:8px 12px}.price-tag .current-price{font-size:0.8rem}.price-tag .original-price{font-size:0.7rem}.select-variant-btn{padding:8px 14px;font-size:0.8rem}}@media (max-width: 576px){.product-bottom{flex-direction:row;justify-content:space-between}.price-tag,.select-variant-btn{flex:1;justify-content:center;text-align:center}}.product-detail-container{max-width:1200px;margin:0 auto;padding:20px;background:white;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,0.1)}.product-detail-content{display:flex;gap:40px;margin-bottom:30px}@media (max-width: 768px){.product-detail-content{flex-direction:column;gap:30px}}.product-gallery{flex:1;max-width:500px;min-width:0}@media (max-width: 1200px){.product-gallery{max-width:450px}}@media (max-width: 768px){.product-gallery{max-width:100%}}.product-details{flex:1;display:flex;padding:20px 0}@media (max-width: 768px){.product-details{flex-direction:column}}.product-info-section{flex:1;padding-right:30px}@media (max-width: 768px){.product-info-section{padding-right:0;padding-bottom:30px}}.product-actions-section{width:280px;flex-shrink:0;padding:25px;background:rgba(248,249,250,0.5);border-radius:12px;border:1px solid rgba(255,255,255,0.2)}@media (max-width: 1200px){.product-actions-section{width:250px;padding:20px}}@media (max-width: 768px){.product-actions-section{width:100%;padding:20px}}.product-info-section .product-header{margin-bottom:20px}.product-info-section .product-header .product-title{font-size:2rem;font-weight:600;color:#2c3e50;margin-bottom:10px}.product-info-section .product-header .product-category-tag{display:inline-block;background-color:#ecf0f1;color:#7f8c8d;padding:4px 16px;border-radius:16px;font-size:0.9rem}.product-info-section .product-price-section{margin-bottom:25px}.product-info-section .product-price-section .current-price{font-size:2.2rem;font-weight:700;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}.product-info-section .product-description{margin-bottom:25px}.product-info-section .product-description h3{font-size:16px;margin-bottom:10px;color:#2c3e50}.product-info-section .product-description p{color:#555;line-height:1.6}.product-options{margin-bottom:25px}.product-options .quantity-selector{display:flex;align-items:center;justify-content:center;gap:15px;font-size:16px}.product-options .quantity-selector label{font-weight:600;color:#2c3e50}.product-options .quantity-selector .quantity-controls{display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;overflow:hidden}.product-options .quantity-selector .quantity-controls .quantity-btn{width:40px;height:40px;border:none;background-color:#f8f9fa;cursor:pointer;font-size:18px;font-weight:600;transition:background-color 0.3s ease;display:flex;align-items:center;justify-content:center;padding:0;margin:0}.product-options .quantity-selector .quantity-controls .quantity-btn:hover{background-color:#e9ecef}.product-options .quantity-selector .quantity-controls input{width:60px;height:40px;border:none;text-align:center;font-size:1rem;font-weight:600;-webkit-appearance:none;-moz-appearance:textfield}.product-options .quantity-selector .quantity-controls input::-webkit-outer-spin-button,.product-options .quantity-selector .quantity-controls input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.product-actions-section .product-actions{display:flex;flex-direction:column;gap:15px;margin:25px 0;width:100%;clear:both;position:relative;z-index:10}.product-actions-section .product-actions button,.product-actions-section .product-actions .add-to-cart-btn,.product-actions-section .product-actions .buy-now-btn,.product-actions-section .product-actions .notify-btn{width:100%;padding:16px 20px;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all 0.3s ease;text-decoration:none;display:flex;align-items:center;justify-content:center;min-height:50px;white-space:nowrap;visibility:visible;position:relative;z-index:11;border:none;outline:none;box-sizing:border-box}.product-actions-section .product-actions .add-to-cart-btn.primary{background:#3575A4;background-color:#3575A4;background-image:linear-gradient(135deg, #3575A4 0%, #295a7d 100%);color:#ffffff;border:2px solid #3575A4;box-shadow:0 4px 15px rgba(53,117,164,0.3)}.product-actions-section .product-actions .add-to-cart-btn.primary:hover,.product-actions-section .product-actions .add-to-cart-btn.primary:focus,.product-actions-section .product-actions .add-to-cart-btn.primary:active{background:#295a7d;background-color:#295a7d;background-image:linear-gradient(135deg, #295a7d 0%, #1f445f 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(53,117,164,0.4);color:#ffffff}.product-actions-section .product-actions .add-to-cart-btn.primary span{color:#ffffff;font-weight:600}.product-actions-section .product-actions .buy-now-btn.secondary{background:#51A0D7;background-color:#51A0D7;background-image:linear-gradient(135deg, #51A0D7 0%, #2e88c7 100%);color:#ffffff;border:2px solid #51A0D7;box-shadow:0 4px 15px rgba(81,160,215,0.3)}.product-actions-section .product-actions .buy-now-btn.secondary:hover,.product-actions-section .product-actions .buy-now-btn.secondary:focus,.product-actions-section .product-actions .buy-now-btn.secondary:active{background:#2e88c7;background-color:#2e88c7;background-image:linear-gradient(135deg, #2e88c7 0%, #2672a6 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(81,160,215,0.4);color:#ffffff}.product-actions-section .product-actions .buy-now-btn.secondary span{color:#ffffff;font-weight:600}.product-actions-section .product-actions .notify-btn{background:#95a5a6;background-color:#95a5a6;color:#ffffff;border:2px solid #95a5a6;cursor:not-allowed;opacity:0.6;width:100%}.product-actions-section .product-actions .notify-btn:disabled{cursor:not-allowed;background:#95a5a6;color:#ffffff}.product-actions-section .product-actions .notify-btn span{color:#ffffff;font-weight:600}.product-features{border-top:1px solid #e9ecef;padding-top:20px}.product-features ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.product-features ul li{padding:5px 0;color:#3575A4;font-weight:500}.back-to-products{text-align:center;margin-top:30px}.back-to-products .back-link{display:flex;align-items:center;justify-content:center;justify-content:center;color:#3575A4;text-decoration:none;font-weight:500;padding:10px 20px;border:1px solid #3575A4;border-radius:6px;transition:all 0.3s ease;display:inline-flex}.back-to-products .back-link:hover{background-color:#3575A4;color:white}.breadcrumb{margin-bottom:20px;padding:10px 0;font-size:0.9rem}.breadcrumb a{color:#3575A4;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb .separator{margin:0 8px;color:#7f8c8d}.breadcrumb .current{color:#2c3e50;font-weight:500}.product-details .product-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.product-details .product-meta .product-category-tag,.product-details .product-meta .product-brand{padding:4px 12px;border-radius:16px;font-size:12px}.product-details .product-meta .product-category-tag{background-color:#ecf0f1;color:#7f8c8d}.product-details .product-meta .product-brand{background-color:#cfe2ef;color:#3575A4;font-weight:500}.product-details .price-display{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.product-details .price-display .original-price{font-size:14px;color:#7f8c8d;text-decoration:line-through}.product-details .price-display .sale-price{color:#51A0D7}.product-details .price-display .discount-badge{background-color:#51A0D7;color:white;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.product-variants{margin-bottom:24px}.product-variants h3{font-size:16px;margin-bottom:16px;color:#2c3e50}.product-variants .variants-grid{display:block;width:100%}.product-variants .variants-grid .variant-option{display:inline-block;width:auto;margin:0 8px 8px 0;padding:4px 8px;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all 0.3s ease;text-align:center;vertical-align:top;color:#51A0D7}.product-variants .variants-grid .variant-option:hover{border-color:#51A0D7;background:rgba(81,160,215,0.1)}.product-variants .variants-grid .variant-option.active{display:inline-block;border-color:#51A0D7;background:#51A0D7;color:white}.product-variants .variants-grid .variant-option.active .variant-info .variant-name{color:white}.product-variants .variants-grid .variant-option.active .variant-info .variant-price{color:white}.product-variants .variants-grid .variant-option .variant-image{width:40px;height:40px;object-fit:cover;border-radius:4px}.product-variants .variants-grid .variant-option .variant-info .variant-name{display:block;font-weight:600;color:#51A0D7;margin-bottom:2px}.product-variants .variants-grid .variant-option .variant-info .variant-price{display:block;color:#51A0D7;font-weight:600;margin-bottom:2px}.product-variants .variants-grid .variant-option .variant-info .variant-stock{display:block;font-size:0.8rem;color:#7f8c8d}.stock-information{margin-bottom:20px}.stock-information .stock-status{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;font-weight:500}.stock-information .stock-status .stock-icon{font-size:0.8rem}.stock-information .stock-status.in-stock{background-color:rgba(81,160,215,0.1);color:#3575A4;border-color:rgba(81,160,215,0.2)}.stock-information .stock-status.in-stock .stock-icon{color:#3575A4}.stock-information .stock-status.out-of-stock{background-color:white;color:#51A0D7}.stock-information .stock-status.out-of-stock .stock-icon{color:#51A0D7}.related-products{margin-top:50px;padding-top:30px;border-top:1px solid #e9ecef}.related-products h2{font-size:1.8rem;color:#2c3e50;margin-bottom:25px;text-align:center}.related-products .related-products-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:20px}.related-products .related-products-grid .related-product-card{background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.1);transition:transform 0.3s ease, box-shadow 0.3s ease}.related-products .related-products-grid .related-product-card:hover{transform:translateY(-3px);box-shadow:0 4px 15px rgba(0,0,0,0.15)}.related-products .related-products-grid .related-product-card .related-product-link{text-decoration:none;color:inherit}.related-products .related-products-grid .related-product-card .related-product-image{position:relative;width:100%;padding-top:100%;overflow:hidden}.related-products .related-products-grid .related-product-card .related-product-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.related-products .related-products-grid .related-product-card .related-product-image:hover img{transform:scale(1.05)}.related-products .related-products-grid .related-product-card .related-product-info{padding:15px}.related-products .related-products-grid .related-product-card .related-product-info h4{font-size:1rem;color:#2c3e50;margin-bottom:8px;line-height:1.3}.related-products .related-products-grid .related-product-card .related-product-info .related-product-price{color:#51A0D7;font-weight:600;font-size:1.1rem}.product-navigation{margin-top:30px;padding:20px 0;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.product-navigation .back-link,.product-navigation .category-link{display:flex;align-items:center;justify-content:center;color:#3575A4;text-decoration:none;font-weight:500;padding:10px 20px;border:1px solid #3575A4;border-radius:6px;transition:all 0.3s ease}.product-navigation .back-link:hover,.product-navigation .category-link:hover{background-color:#3575A4;color:white}@media (max-width: 768px){.product-detail-content{grid-template-columns:1fr;gap:20px}.product-detail-container .product-details .product-actions{flex-direction:column}.product-detail-container .product-details .product-actions .add-to-cart-btn,.product-detail-container .product-details .product-actions .buy-now-btn{width:100%;margin-bottom:10px}.product-title{font-size:1.5rem}.current-price{font-size:1.8rem}.breadcrumb{font-size:0.8rem}.breadcrumb .separator{margin:0 4px}.product-meta{flex-direction:column;align-items:flex-start}.variants-grid{flex-direction:column}.variants-grid .variant-option{flex:none}.related-products-grid{grid-template-columns:repeat(auto-fill, minmax(150px, 1fr))}.product-navigation{flex-direction:column;gap:10px}.product-navigation .back-link,.product-navigation .category-link{width:100%;text-align:center;justify-content:center}.product-gallery .carousel-container .carousel-nav{width:36px;height:36px}.product-gallery .carousel-container .carousel-nav.prev{left:10px}.product-gallery .carousel-container .carousel-nav.next{right:10px}.product-gallery .carousel-container .carousel-nav svg{width:20px;height:20px}.product-gallery .carousel-container .carousel-dots{bottom:10px}.product-gallery .carousel-container .carousel-dots .carousel-dot{width:8px;height:8px}.product-gallery .thumbnail-images{justify-content:center}.product-gallery .thumbnail-images .thumbnail{width:60px;height:45px}}@media (max-width: 768px) and (pointer: coarse){.product-gallery .carousel-container .carousel-nav{width:44px;height:44px}.product-gallery .carousel-container .carousel-nav::before{content:'';position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px}.product-gallery .carousel-container .carousel-dots .carousel-dot{width:12px;height:12px}.product-gallery .carousel-container .carousel-dots .carousel-dot::before{content:'';position:absolute;top:-8px;left:-8px;right:-8px;bottom:-8px}}.shopping-guide .guide-hero{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;padding:60px 20px;text-align:center}.shopping-guide .guide-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:12px}.shopping-guide .guide-hero .hero-subtitle{font-size:1.2rem;opacity:0.9}.shopping-guide .guide-container{max-width:1000px;margin:0 auto;padding:0 20px}.shopping-guide .guide-nav{background:#ffffff;padding:20px;border-bottom:1px solid #e9ecef;position:sticky;top:80px;z-index:100}.shopping-guide .guide-nav .nav-items{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.shopping-guide .guide-nav .nav-item{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#f8f9fa;border-radius:12px;text-decoration:none;color:#2c3e50;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .guide-nav .nav-item:hover{background:rgba(53,117,164,0.1);color:#3575A4}.shopping-guide .guide-nav .nav-item:hover .nav-number{background:#3575A4;color:#ffffff}.shopping-guide .guide-nav .nav-item .nav-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#e9ecef;border-radius:50%;font-weight:600;font-size:0.9rem;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .guide-nav .nav-item .nav-text{font-weight:500}.shopping-guide .guide-step{padding:60px 20px}.shopping-guide .guide-step.guide-step-alt{background:#f8f9fa}.shopping-guide .guide-step .step-header{display:flex;align-items:center;gap:20px;margin-bottom:40px}.shopping-guide .guide-step .step-header .step-number{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;font-size:1.8rem;font-weight:700;border-radius:50%;flex-shrink:0}.shopping-guide .guide-step .step-header .step-title h2{font-size:1.8rem;font-weight:700;color:#2c3e50;margin-bottom:4px}.shopping-guide .guide-step .step-header .step-title p{color:#7f8c8d;font-size:1rem}.shopping-guide .step-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:24px}.shopping-guide .step-card{background:#ffffff;padding:30px;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,0.1);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .step-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(0,0,0,0.1)}.shopping-guide .step-card .card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.shopping-guide .step-card .card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(53,117,164,0.1);color:#3575A4;border-radius:50%;flex-shrink:0}.shopping-guide .step-card h3{font-size:1.2rem;font-weight:600;color:#2c3e50;margin:0}.shopping-guide .step-card p{color:#7f8c8d;line-height:1.6}.shopping-guide .step-flow{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:30px}@media (max-width: 768px){.shopping-guide .step-flow{flex-direction:column;gap:0}}.shopping-guide .flow-item{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:160px}@media (max-width: 768px){.shopping-guide .flow-item{flex-direction:row;max-width:100%;width:100%;text-align:left;gap:16px;padding:16px 0}}.shopping-guide .flow-item .flow-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#ffffff;color:#3575A4;border-radius:50%;box-shadow:0 8px 25px rgba(0,0,0,0.1);margin-bottom:12px;flex-shrink:0}@media (max-width: 768px){.shopping-guide .flow-item .flow-icon{margin-bottom:0}}.shopping-guide .flow-item .flow-content h4{font-size:1rem;font-weight:600;color:#2c3e50;margin-bottom:4px}.shopping-guide .flow-item .flow-content p{font-size:0.9rem;color:#7f8c8d;line-height:1.5}@media (max-width: 768px){.shopping-guide .flow-item .flow-content{text-align:left}}.shopping-guide .flow-arrow{color:#51A0D7;flex-shrink:0}@media (max-width: 768px){.shopping-guide .flow-arrow{transform:rotate(90deg);margin:4px 0}}.shopping-guide .step-tip{display:flex;align-items:flex-start;gap:12px;background:rgba(81,160,215,0.1);padding:16px 20px;border-radius:8px;border-left:4px solid #51A0D7}.shopping-guide .step-tip .tip-icon{color:#51A0D7;flex-shrink:0;margin-top:2px}.shopping-guide .step-tip p{color:#2c3e50;font-size:0.95rem;line-height:1.6;margin:0}.shopping-guide .step-tip p strong{color:#3575A4}.shopping-guide .checkout-steps{display:grid;gap:20px;margin-bottom:30px}.shopping-guide .checkout-step{background:#ffffff;padding:24px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.06);border-left:4px solid #3575A4}.shopping-guide .checkout-step .checkout-step-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.shopping-guide .checkout-step .checkout-step-header .checkout-step-num{background:#3575A4;color:#ffffff;padding:4px 12px;border-radius:20px;font-size:0.8rem;font-weight:600}.shopping-guide .checkout-step .checkout-step-header h4{font-size:1.1rem;font-weight:600;color:#2c3e50;margin:0}.shopping-guide .checkout-step>p{color:#7f8c8d;line-height:1.6;margin-bottom:12px}.shopping-guide .checkout-step .checkout-list{list-style:none;padding:0;margin:0}.shopping-guide .checkout-step .checkout-list li{position:relative;padding-left:20px;color:#555;margin-bottom:6px}.shopping-guide .checkout-step .checkout-list li::before{content:'•';position:absolute;left:0;color:#3575A4;font-weight:bold}.shopping-guide .checkout-step .store-select-demo{display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:12px 16px;border-radius:8px;border:1px dashed #e9ecef;margin-top:12px}.shopping-guide .checkout-step .store-select-demo .demo-icon{color:#3575A4}.shopping-guide .checkout-step .store-select-demo span{color:#7f8c8d;font-size:0.9rem}.shopping-guide .pickup-info{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:24px;margin-bottom:30px}.shopping-guide .pickup-card{background:#ffffff;padding:30px;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,0.1)}.shopping-guide .pickup-card .card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.shopping-guide .pickup-card .pickup-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(53,117,164,0.1);color:#3575A4;border-radius:50%;flex-shrink:0}.shopping-guide .pickup-card h3{font-size:1.2rem;font-weight:600;color:#2c3e50;margin:0}.shopping-guide .pickup-card p{color:#7f8c8d;line-height:1.6}.shopping-guide .payment-note{background:#ffffff;padding:24px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}.shopping-guide .payment-note h4{font-size:1.1rem;font-weight:600;color:#2c3e50;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.shopping-guide .payment-note .payment-details{display:grid;gap:12px}.shopping-guide .payment-note .payment-item{display:flex;justify-content:space-between;align-items:center}.shopping-guide .payment-note .payment-item .payment-label{color:#7f8c8d}.shopping-guide .payment-note .payment-item .payment-value{font-weight:500;color:#2c3e50}.shopping-guide .payment-note .payment-item .payment-value.highlight{color:#27ae60;font-weight:600}.shopping-guide .guide-section{padding:60px 20px}.shopping-guide .guide-section.guide-section-alt{background:#f8f9fa}.shopping-guide .guide-section .section-title{font-size:1.8rem;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:40px}.shopping-guide .guide-section .section-title::after{content:'';display:block;width:60px;height:4px;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);margin:16px auto 0;border-radius:2px}.shopping-guide .management-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:24px}.shopping-guide .management-card{background:#ffffff;padding:30px;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,0.1)}.shopping-guide .management-card .card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.shopping-guide .management-card .management-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(53,117,164,0.1);color:#3575A4;border-radius:50%;flex-shrink:0}.shopping-guide .management-card h3{font-size:1.2rem;font-weight:600;color:#2c3e50;margin:0}.shopping-guide .management-card p{color:#7f8c8d;line-height:1.6;margin-bottom:16px}.shopping-guide .management-card .management-link{display:inline-block;color:#3575A4;font-weight:500;text-decoration:none;transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .management-card .management-link:hover{color:#295a7d;text-decoration:underline}.shopping-guide .management-card .management-note{display:block;font-size:0.85rem;color:#7f8c8d;font-style:italic}.shopping-guide .faq-list{max-width:800px;margin:0 auto}.shopping-guide .faq-item{background:#ffffff;border-radius:8px;margin-bottom:12px;box-shadow:0 2px 4px rgba(0,0,0,0.04);overflow:hidden}.shopping-guide .faq-item[open] .faq-arrow{transform:rotate(180deg)}.shopping-guide .faq-item[open] .faq-question{border-bottom:1px solid #e9ecef}.shopping-guide .faq-item .faq-question{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;cursor:pointer;list-style:none;font-weight:500;color:#2c3e50;transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .faq-item .faq-question::-webkit-details-marker{display:none}.shopping-guide .faq-item .faq-question:hover{background:#f8f9fa}.shopping-guide .faq-item .faq-question span{flex:1}.shopping-guide .faq-item .faq-question .faq-arrow{color:#7f8c8d;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);flex-shrink:0}.shopping-guide .faq-item .faq-answer{padding:18px 20px}.shopping-guide .faq-item .faq-answer p{color:#7f8c8d;line-height:1.7;margin:0}.shopping-guide .info-card{background:#ffffff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.06);padding:24px}.shopping-guide .info-card.notice-card{border-left:4px solid #f39c12}.shopping-guide .info-list{list-style:none;padding:0;margin:0}.shopping-guide .info-list li{position:relative;padding-left:20px;color:#7f8c8d;line-height:1.8;margin-bottom:12px}.shopping-guide .info-list li::before{content:'•';position:absolute;left:0;color:#3575A4;font-weight:bold}.shopping-guide .info-list li:last-child{margin-bottom:0}.shopping-guide .info-list li strong{color:#2c3e50}.shopping-guide .info-list.notice-list li::before{color:#f39c12}.shopping-guide .guide-cta{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;padding:60px 20px;text-align:center}.shopping-guide .guide-cta h2{font-size:1.8rem;font-weight:700;margin-bottom:8px}.shopping-guide .guide-cta p{font-size:1.1rem;opacity:0.9;margin-bottom:24px}.shopping-guide .guide-cta .cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.shopping-guide .guide-cta .cta-button{display:inline-block;background:#ffffff;color:#3575A4;padding:14px 40px;border-radius:25px;font-weight:600;font-size:1.1rem;text-decoration:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.shopping-guide .guide-cta .cta-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.2)}.shopping-guide .guide-cta .cta-button.cta-button-outline{background:transparent;color:#ffffff;border:2px solid #ffffff}.shopping-guide .guide-cta .cta-button.cta-button-outline:hover{background:#ffffff;color:#3575A4}@media (max-width: 768px){.shopping-guide .guide-hero{padding:40px 20px}.shopping-guide .guide-hero h1{font-size:2rem}.shopping-guide .guide-nav .nav-items{gap:10px}.shopping-guide .guide-nav .nav-item{padding:8px 14px;font-size:0.9rem}.shopping-guide .guide-nav .nav-item .nav-number{width:24px;height:24px;font-size:0.8rem}.shopping-guide .guide-step{padding:40px 20px}.shopping-guide .guide-step .step-header .step-number{width:50px;height:50px;font-size:1.5rem}.shopping-guide .guide-step .step-header .step-title h2{font-size:1.5rem}.shopping-guide .guide-section .section-title{font-size:1.5rem}.shopping-guide .guide-cta{padding:40px 20px}.shopping-guide .guide-cta h2{font-size:1.5rem}}@media (max-width: 480px){.shopping-guide .guide-nav{position:static}.shopping-guide .guide-nav .nav-item .nav-text{display:none}.shopping-guide .step-card,.shopping-guide .pickup-card,.shopping-guide .management-card{padding:20px}.shopping-guide .checkout-step{padding:18px}}.faq-page .faq-container{max-width:900px;margin:0 auto;padding:0 20px}.faq-page .faq-hero{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;padding:60px 20px;text-align:center}.faq-page .faq-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:12px}.faq-page .faq-hero .hero-subtitle{font-size:1.1rem;opacity:0.9}.faq-page .faq-nav{background:#ffffff;padding:20px;border-bottom:1px solid #e9ecef;position:sticky;top:80px;z-index:100}.faq-page .faq-nav .nav-items{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.faq-page .faq-nav .nav-item{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f8f9fa;border-radius:12px;text-decoration:none;color:#2c3e50;font-size:0.95rem;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.faq-page .faq-nav .nav-item svg{flex-shrink:0}.faq-page .faq-nav .nav-item:hover,.faq-page .faq-nav .nav-item.active{background:rgba(53,117,164,0.1);color:#3575A4}.faq-page .faq-content{padding:40px 20px 60px}.faq-page .faq-category{margin-bottom:48px}.faq-page .faq-category:last-child{margin-bottom:0}.faq-page .faq-category .category-header{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.faq-page .faq-category .category-header .category-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(53,117,164,0.1);color:#3575A4;border-radius:50%;flex-shrink:0}.faq-page .faq-category .category-header h2{font-size:1.5rem;font-weight:700;color:#2c3e50;margin:0}.faq-page .faq-list{display:grid;gap:12px}.faq-page .faq-item{background:#ffffff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.04);border:1px solid #e9ecef;overflow:hidden}.faq-page .faq-item[open] .faq-arrow{transform:rotate(180deg)}.faq-page .faq-item[open] .faq-question{border-bottom:1px solid #e9ecef;background:#f8f9fa}.faq-page .faq-item .faq-question{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;cursor:pointer;list-style:none;font-weight:500;color:#2c3e50;transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1)}.faq-page .faq-item .faq-question::-webkit-details-marker{display:none}.faq-page .faq-item .faq-question:hover{background:#f8f9fa}.faq-page .faq-item .faq-question span{flex:1;padding-right:16px}.faq-page .faq-item .faq-question .faq-arrow{color:#7f8c8d;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);flex-shrink:0}.faq-page .faq-item .faq-answer{padding:20px}.faq-page .faq-item .faq-answer p{color:#7f8c8d;line-height:1.7;margin:0 0 12px}.faq-page .faq-item .faq-answer p:last-child{margin-bottom:0}.faq-page .faq-item .faq-answer p strong{color:#2c3e50}.faq-page .faq-item .faq-answer ul{list-style:none;padding:0;margin:0}.faq-page .faq-item .faq-answer ul li{position:relative;padding-left:16px;color:#7f8c8d;line-height:1.7;margin-bottom:8px}.faq-page .faq-item .faq-answer ul li::before{content:'•';position:absolute;left:0;color:#3575A4}.faq-page .faq-item .faq-answer ul li:last-child{margin-bottom:0}.faq-page .faq-item .faq-answer ul li strong{color:#2c3e50}.faq-page .faq-cta{background:#f8f9fa;padding:60px 20px}.faq-page .faq-cta .cta-content{text-align:center}.faq-page .faq-cta .cta-content .cta-icon{color:#3575A4;margin-bottom:20px}.faq-page .faq-cta .cta-content h2{font-size:1.8rem;font-weight:700;color:#2c3e50;margin-bottom:12px}.faq-page .faq-cta .cta-content p{color:#7f8c8d;font-size:1.1rem;margin-bottom:20px}.faq-page .faq-cta .cta-content .cta-info span{display:inline-block;background:#ffffff;color:#7f8c8d;padding:10px 20px;border-radius:8px;font-size:0.95rem}@media (max-width: 768px){.faq-page .faq-hero{padding:40px 20px}.faq-page .faq-hero h1{font-size:2rem}.faq-page .faq-nav .nav-items{gap:8px}.faq-page .faq-nav .nav-item{padding:8px 12px;font-size:0.85rem}.faq-page .faq-nav .nav-item span{display:none}.faq-page .faq-category .category-header h2{font-size:1.3rem}.faq-page .faq-cta{padding:40px 20px}.faq-page .faq-cta .cta-content h2{font-size:1.5rem}}@media (max-width: 480px){.faq-page .faq-nav{position:static}.faq-page .faq-item .faq-question{padding:14px 16px;font-size:0.95rem}.faq-page .faq-item .faq-answer{padding:16px}}.privacy-policy-page .privacy-container{max-width:900px;margin:0 auto;padding:0 20px}.privacy-policy-page .privacy-hero{background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;padding:60px 20px;text-align:center}.privacy-policy-page .privacy-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:12px}.privacy-policy-page .privacy-hero .hero-subtitle{font-size:1.1rem;opacity:0.9}.privacy-policy-page .privacy-content{padding:40px 20px 60px}.privacy-policy-page .policy-intro{margin-bottom:40px;padding:24px;background:#f8f9fa;border-radius:12px;border-left:4px solid #3575A4}.privacy-policy-page .policy-intro p{color:#7f8c8d;line-height:1.8;margin:0}.privacy-policy-page .policy-section{margin-bottom:36px}.privacy-policy-page .policy-section:last-child{margin-bottom:0}.privacy-policy-page .policy-section .section-header{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e9ecef}.privacy-policy-page .policy-section .section-header .section-number{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, #3575A4 0%, #51A0D7 100%);color:#ffffff;font-size:1rem;font-weight:700;border-radius:50%;flex-shrink:0}.privacy-policy-page .policy-section .section-header h2{font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0}.privacy-policy-page .policy-section .section-body{padding-left:50px}.privacy-policy-page .policy-section .section-body p{color:#7f8c8d;line-height:1.8;margin-bottom:14px}.privacy-policy-page .policy-section .section-body p:last-child{margin-bottom:0}.privacy-policy-page .policy-section .section-body p strong{color:#2c3e50}.privacy-policy-page .policy-section .section-body ul{list-style:none;padding:0;margin:0 0 14px}.privacy-policy-page .policy-section .section-body ul:last-child{margin-bottom:0}.privacy-policy-page .policy-section .section-body ul li{position:relative;padding-left:20px;color:#7f8c8d;line-height:1.8;margin-bottom:8px}.privacy-policy-page .policy-section .section-body ul li::before{content:'•';position:absolute;left:0;color:#3575A4;font-weight:bold}.privacy-policy-page .policy-section .section-body ul li:last-child{margin-bottom:0}.privacy-policy-page .policy-section .section-body ul li strong{color:#2c3e50}.privacy-policy-page .contact-block{background:#f8f9fa;border-radius:8px;padding:20px;margin-top:14px}.privacy-policy-page .contact-block .contact-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.privacy-policy-page .contact-block .contact-item:not(:last-child){border-bottom:1px solid #e9ecef}.privacy-policy-page .contact-block .contact-item .contact-label{color:#7f8c8d;font-weight:500}.privacy-policy-page .contact-block .contact-item .contact-value{color:#2c3e50;font-weight:500}@media (max-width: 768px){.privacy-policy-page .privacy-hero{padding:40px 20px}.privacy-policy-page .privacy-hero h1{font-size:2rem}.privacy-policy-page .policy-section .section-body{padding-left:0}.privacy-policy-page .policy-section .section-header h2{font-size:1.2rem}}@media (max-width: 480px){.privacy-policy-page .contact-block .contact-item{flex-direction:column;align-items:flex-start;gap:4px}}.main-footer{background:linear-gradient(135deg, #2c3e50 0%, #34495e 100%);color:#ffffff;margin-top:60px}.main-footer .footer-container{max-width:1200px;margin:0 auto;padding:40px 20px 20px}.main-footer .footer-content{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:40px;margin-bottom:40px}.main-footer .footer-section h4{color:#ecf0f1;font-size:1.2rem;margin-bottom:20px;font-weight:600;position:relative}.main-footer .footer-section h4::after{content:'';position:absolute;left:0;bottom:-8px;width:40px;height:3px;background:var(--brand-dark);border-radius:2px}.main-footer .footer-section p{color:#bdc3c7;line-height:1.7;margin-bottom:15px}.main-footer .footer-section ul{list-style:none}.main-footer .footer-section ul li{margin-bottom:12px}.main-footer .footer-section ul li a{color:#bdc3c7;text-decoration:none;transition:all 0.3s ease;display:inline-block}.main-footer .footer-section ul li a:hover{color:var(--brand-light);transform:translateX(5px)}.main-footer .footer-section .contact-info p{margin-bottom:10px}.main-footer .footer-section .contact-info p strong{color:#ecf0f1}.main-footer .footer-bottom{border-top:1px solid #34495e;padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.main-footer .footer-bottom p{color:#95a5a6;margin:0}.main-footer .footer-bottom .footer-links{display:flex;gap:20px}.main-footer .footer-bottom .footer-links a{color:#95a5a6;text-decoration:none;font-size:0.9rem;transition:color 0.3s ease}.main-footer .footer-bottom .footer-links a:hover{color:var(--brand-light)}@media (max-width: 768px){.main-footer .footer-content{grid-template-columns:1fr;gap:30px}.main-footer .footer-bottom{flex-direction:column;text-align:center}.main-footer .footer-bottom .footer-links{justify-content:center}}body{display:flex;flex-direction:column;min-height:100vh}@keyframes pageEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.main-content{flex:1;padding:20px 0;animation:pageEnter 0.3s ease-out}
