.search-dropdown-pane{position:absolute;top:100%;left:0;right:0;background:#fff;border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:0 10px 30px #00000026;border:1px solid var(--border);border-top:none;z-index:999;padding:16px;max-height:80vh;overflow-y:auto;animation:slideDown .2s ease-out forwards}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sd-banner{background:#d32f2f;color:#fff;padding:12px 16px;border-radius:var(--radius-md);font-weight:700;font-size:16px;margin-bottom:20px;text-align:left}.sd-section{margin-bottom:24px}.sd-section:last-child{margin-bottom:0}.sd-section-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.sd-refresh{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:transform .2s;display:flex;align-items:center;justify-content:center;padding:4px}.sd-refresh:hover{color:var(--primary);transform:rotate(180deg)}.sd-hot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sd-hot-item{display:flex;align-items:center;gap:12px;padding:6px;border-radius:var(--radius-md);text-decoration:none;color:var(--text-secondary);font-size:13px;transition:var(--transition)}.sd-hot-item:hover{background:var(--bg-light);color:var(--primary)}.sd-hot-item img{width:48px;height:48px;object-fit:cover;border-radius:4px}.sd-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sd-cat-box{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;text-decoration:none;color:var(--text-secondary);transition:var(--transition)}.sd-cat-box:hover{color:var(--primary);transform:translateY(-2px)}.sd-cat-box img{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid transparent;transition:var(--transition)}.sd-cat-box:hover img{border-color:var(--primary)}.sd-cat-box span{font-size:12px;line-height:1.3}.sd-tag-list{display:flex;flex-wrap:wrap;gap:8px}.sd-tag{background:var(--bg-light);color:var(--text-secondary);padding:6px 12px;border-radius:6px;font-size:13px;text-decoration:none;transition:var(--transition);font-weight:500}.sd-tag:hover{background:#ffe3e3;color:var(--primary)}.sd-tag-placeholder,.sd-empty{font-size:13px;color:var(--text-muted)}.sd-prod-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sd-prod-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--radius-md);text-decoration:none;transition:var(--transition);border:1px solid transparent}.sd-prod-item:hover{background:#fdfdfd;border-color:var(--border);box-shadow:var(--shadow-sm)}.sd-prod-item img{width:50px;height:66px;object-fit:cover;border-radius:4px}.sd-prod-info{display:flex;flex-direction:column;gap:4px}.sd-prod-name{font-size:13px;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600}.sd-prod-item:hover .sd-prod-name{color:var(--primary)}.sd-prod-price{font-size:13px;color:var(--primary);font-weight:700}.sd-loading-spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin:10px}.header{position:sticky;top:0;z-index:900;background:#fff;box-shadow:0 2px 12px #00000014}.header-topbar{background:var(--primary);color:#fff;font-size:12px;padding:6px 0}.topbar-inner{display:flex;align-items:center;justify-content:space-between}.topbar-left{display:flex;gap:20px;align-items:center}.topbar-left span{display:flex;align-items:center;gap:4px}.topbar-right{display:flex;align-items:center;gap:0}.topbar-right a,.topbar-link{color:#ffffffe0;font-size:12px;transition:color .2s;background:none;cursor:pointer;font-family:var(--font);padding:0 10px;border-right:1px solid rgba(255,255,255,.25);line-height:1}.topbar-right a:first-child{border-left:1px solid rgba(255,255,255,.25)}.topbar-right a:hover,.topbar-link:hover{color:#fff}.topbar-user{font-size:12px;padding:0 10px;color:#ffffffe0}.header-main{background:#fff;padding:14px 0;border-bottom:1px solid var(--border-light)}.main-bar-inner{display:flex;align-items:center;gap:16px}.logo{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none;min-width:160px}.logo-icon{font-size:36px;line-height:1}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-name{font-size:22px;font-weight:900;color:var(--primary);letter-spacing:-.5px}.logo-slogan{font-size:12px;color:var(--text-muted);font-weight:600;letter-spacing:4px;text-transform:uppercase}.search-wrap{position:relative;flex:1;max-width:680px}.search-form{display:flex;border:2px solid var(--primary);border-radius:6px;overflow:hidden;transition:box-shadow .2s;background:#fff}.search-form:focus-within{box-shadow:0 0 0 3px #d32f2f1f}.search-categories{display:flex;align-items:center;flex-shrink:0}.search-cat-select{border:none;outline:none;padding:0 10px;font-size:12px;font-family:var(--font);color:var(--text-secondary);background:#fafafa;cursor:pointer;height:100%;max-width:120px}.search-divider{width:1px;height:22px;background:var(--border);flex-shrink:0}.search-input{flex:1;padding:10px 14px;border:none;font-size:14px;color:var(--text-primary);background:transparent}.search-input::placeholder{color:#bbb}.search-btn{background:var(--primary);color:#fff;padding:0 20px;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;border:none;font-size:13px;font-weight:600;font-family:var(--font);white-space:nowrap;transition:background .2s}.search-btn:hover{background:var(--primary-dark)}.header-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.action-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;border-radius:var(--radius-md);color:var(--text-primary);background:none;cursor:pointer;border:none;transition:var(--transition);font-family:var(--font);text-decoration:none;position:relative}.action-btn-account{-webkit-appearance:none;-moz-appearance:none;appearance:none}.action-btn:hover{background:var(--bg-light);color:var(--primary)}.action-label{font-size:11px;font-weight:600;white-space:nowrap}.account-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid var(--border)}.account-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;font-size:11px;font-weight:700;border:none}.cart-icon-wrap{position:relative}.cart-count{position:absolute;top:-8px;right:-8px;background:var(--primary);color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;animation:popBounce .3s ease}.wish-count{background:#e91e63!important}@keyframes popBounce{0%{transform:scale(0)}60%{transform:scale(1.3)}to{transform:scale(1)}}.action-dropdown{position:relative}.user-dropdown{position:absolute;top:calc(100% + 2px);right:0;width:200px;background:#fff;border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-lg);z-index:800;animation:slideDown .15s ease;padding:8px 0}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-drop-link{display:flex;align-items:center;gap:8px;padding:9px 16px;font-size:13px;color:var(--text-secondary);text-decoration:none;transition:var(--transition);border:none;background:none;width:100%;cursor:pointer;font-family:var(--font);text-align:left}.user-drop-link:hover{background:var(--bg-light);color:var(--primary)}.user-drop-name{padding:10px 16px;font-size:13px;font-weight:700;color:var(--text-primary)}.user-drop-divider{height:1px;background:var(--border-light);margin:4px 0}.user-drop-logout{color:var(--primary)!important}.mobile-menu-btn{display:none;flex-direction:column;gap:5px;padding:8px;cursor:pointer;background:none;border:none;margin-left:auto}.mobile-menu-btn span{display:block;width:22px;height:2.5px;background:var(--text-primary);border-radius:2px;transition:var(--transition);transform-origin:center}.mobile-menu-btn.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}.mobile-menu-btn.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.header-nav{background:#fff;border-top:1px solid var(--border-light)}.nav-inner{display:flex;align-items:center;gap:0}.nav-categories{position:relative;flex-shrink:0}.nav-cat-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;border:none;font-family:var(--font);transition:background .2s;white-space:nowrap;height:100%}.nav-cat-btn:hover{background:var(--primary-dark)}.mega-menu{position:absolute;top:100%;left:0;z-index:800;animation:slideDown .15s ease;min-width:280px}.mega-menu-inner{background:#fff;border:1px solid var(--border);border-top:3px solid var(--primary);box-shadow:var(--shadow-lg);border-radius:0 0 var(--radius-md) var(--radius-md);padding:8px 0}.mega-menu-item{display:flex;align-items:center;gap:12px;padding:10px 20px;transition:var(--transition);color:var(--text-primary);text-decoration:none}.mega-menu-item:hover{background:#fff5f5;color:var(--primary);padding-left:26px}.cat-icon{font-size:20px;flex-shrink:0}.cat-name{font-size:13px;font-weight:600}.cat-count{font-size:11px;color:var(--text-muted)}.cat-arrow{margin-left:auto;opacity:0;transition:opacity .2s;color:var(--primary)}.mega-menu-item:hover .cat-arrow{opacity:1}.mega-menu-toys{border-top:1px solid var(--border-light);background:#fffbf0;padding:8px 12px;display:flex;flex-wrap:wrap;gap:6px}.mega-menu-toy-item{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#fff;border:1.5px solid #fdd95c;border-radius:20px;font-size:12px;font-weight:600;color:#856404;text-decoration:none;transition:var(--transition)}.mega-menu-toy-item:hover{background:#fdd95c;color:#5c4400}.nav-links{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-link{padding:13px 14px;font-size:13px;font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:var(--transition);text-decoration:none;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:14px;right:14px;height:2px;background:var(--primary);transform:scaleX(0);transition:transform .2s ease}.nav-link:hover{color:var(--primary)}.nav-link:hover:after{transform:scaleX(1)}.nav-link-hot{color:var(--primary)!important;font-weight:700}.nav-link-sale{color:var(--accent)!important;font-weight:700}.nav-link-sale:after{background:var(--accent)}.mobile-menu{position:fixed;top:0;left:0;width:300px;height:100vh;background:#fff;z-index:850;box-shadow:var(--shadow-lg);animation:slideInLeft .3s ease;overflow-y:auto;padding:16px;display:none}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.mobile-search{display:flex;border:1.5px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:16px}.mobile-search input{flex:1;padding:10px 14px;border:none;font-size:14px;font-family:var(--font)}.mobile-search button{padding:0 14px;background:var(--primary);color:#fff;border:none;cursor:pointer;font-size:16px}.mobile-quick-links{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.mobile-quick-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:12px;font-weight:600;color:var(--text-secondary);text-decoration:none;background:none;cursor:pointer;font-family:var(--font);transition:var(--transition);white-space:nowrap}.mobile-quick-btn:hover{border-color:var(--primary);color:var(--primary)}.mobile-nav-label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:8px 12px;margin-bottom:4px}.mobile-nav-links{display:flex;flex-direction:column;gap:2px}.mobile-nav-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);transition:var(--transition);text-decoration:none}.mobile-nav-link:hover{background:#fff5f5;color:var(--primary)}.mobile-cat-count{margin-left:auto;font-size:11px;background:var(--border);color:var(--text-muted);padding:1px 7px;border-radius:10px}@media (max-width: 1100px){.search-categories{display:none}.nav-link{padding:13px 10px;font-size:12px}}@media (max-width: 900px){.topbar-left{gap:12px;font-size:11px}.logo-name{font-size:18px}}@media (max-width: 768px){.header-topbar{display:none}.search-form{max-width:none}.action-label,.header-nav{display:none}.mobile-menu-btn{display:flex}.mobile-menu{display:block}.header-actions{gap:0}.action-btn{padding:8px}.user-dropdown{right:0}}@media (max-width: 480px){.search-btn span{display:none}.search-btn{padding:0 14px}.logo{min-width:auto}.logo-slogan{display:none}}.footer{background:#1a1a2e;color:#ccc}.footer-services{background:#fff;border-top:3px solid var(--primary);padding:20px 0}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-item{display:flex;align-items:center;gap:14px}.service-icon{font-size:32px;flex-shrink:0}.service-title{font-size:13px;font-weight:700;color:var(--text-primary)}.service-desc{font-size:12px;color:var(--text-muted)}.footer-main{padding:40px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:14px}.footer-logo-icon{font-size:32px}.footer-logo-name{font-size:18px;font-weight:800;color:#fff}.footer-logo-slogan{font-size:11px;color:var(--text-muted);letter-spacing:2px}.footer-desc{font-size:12px;color:#999;margin-bottom:12px;line-height:1.6}.footer-address{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.addr-item{display:flex;gap:8px;font-size:12px;color:#999;line-height:1.5}.addr-item span:first-child{flex-shrink:0}.addr-item a{color:#aaa}.addr-item a:hover{color:var(--primary-light)}.social-links{display:flex;gap:8px}.social-btn{width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#aaa;transition:var(--transition);text-decoration:none}.social-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff;transform:translateY(-2px)}.footer-heading{font-size:14px;font-weight:700;color:#fff;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{font-size:13px;color:#999;transition:var(--transition);text-decoration:none;display:flex;align-items:center;gap:6px}.footer-links a:before{content:"›";color:var(--primary-light);opacity:0;transition:var(--transition)}.footer-links a:hover{color:#fff;padding-left:4px}.footer-links a:hover:before{opacity:1}.cert-badge{display:flex;align-items:center;gap:10px;margin-top:20px;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff0d}.cert-badge>span{font-size:24px}.cert-badge div{font-size:10px;color:#888}.cert-badge strong{font-size:12px;color:#ccc}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;background:#0003}.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.footer-bottom p{font-size:12px;color:#777}.footer-bottom strong{color:#999}.payment-methods{display:flex;gap:6px;flex-wrap:wrap}.pm-badge{background:#ffffff14;padding:4px 10px;border-radius:4px;font-size:11px;color:#ccc}@media (max-width: 1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.services-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 576px){.footer-grid,.services-grid{grid-template-columns:1fr}.footer-bottom-inner{flex-direction:column;text-align:center}}.cart-drawer{position:fixed;top:0;right:0;width:420px;height:100vh;background:#fff;z-index:900;display:flex;flex-direction:column;box-shadow:-4px 0 24px #00000026;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.cart-drawer-header h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700}.cart-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-muted);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition)}.cart-close:hover{background:var(--bg-light);color:var(--primary)}.freeship-bar{padding:12px 20px;background:#f9f3f0;border-bottom:1px solid var(--border);flex-shrink:0}.freeship-bar p{font-size:12px;color:var(--text-secondary);margin-bottom:6px}.freeship-bar strong{color:var(--primary)}.freeship-tag{background:#43a047;color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.freeship-done{color:#43a047!important;font-weight:600!important}.freeship-progress{height:6px;background:#ddd;border-radius:3px;overflow:hidden}.freeship-fill{height:100%;background:linear-gradient(to right,var(--primary),var(--accent));border-radius:3px;transition:width .5s ease}.cart-items{flex:1;overflow-y:auto;padding:12px 20px}.cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--text-muted)}.cart-empty-icon{font-size:60px}.cart-empty p{font-size:16px}.cart-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-light);align-items:flex-start}.cart-item:last-child{border-bottom:none}.cart-item-img{width:70px;height:90px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-size:13px;font-weight:500;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none;margin-bottom:4px}.cart-item-name:hover{color:var(--primary)}.cart-item-price{font-size:13px;color:var(--primary);font-weight:600;margin-bottom:8px}.cart-item-controls{display:flex;align-items:center;gap:8px}.qty-btn{width:26px;height:26px;border:1.5px solid var(--border);border-radius:4px;background:#fff;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:var(--transition);font-family:var(--font)}.qty-btn:hover{border-color:var(--primary);color:var(--primary)}.qty-val{min-width:24px;text-align:center;font-size:14px;font-weight:600}.cart-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:var(--transition);display:flex}.cart-remove:hover{color:var(--primary);background:#fff0f0}.cart-item-subtotal{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;flex-shrink:0;padding-top:2px}.cart-drawer-footer{border-top:1px solid var(--border);padding:16px 20px;flex-shrink:0;display:flex;flex-direction:column;gap:10px;background:#fff}.cart-summary{margin-bottom:4px}.summary-row{display:flex;justify-content:space-between;font-size:14px;padding:4px 0;color:var(--text-secondary)}.total-row{padding-top:10px;border-top:1px solid var(--border);margin-top:4px}.free-color{color:#43a047;font-weight:600}.grand-total{color:var(--primary);font-size:16px}.w-full{width:100%}@media (max-width: 480px){.cart-drawer{width:100vw}}.toast-wrap{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-item{display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:10px;font-size:14px;font-weight:500;color:#fff;box-shadow:0 8px 24px #0003;animation:toastIn .35s cubic-bezier(.34,1.56,.64,1),toastOut .3s ease 2.7s forwards;min-width:260px;max-width:360px}.toast-success{background:linear-gradient(135deg,#2e7d32,#43a047)}.toast-error{background:linear-gradient(135deg,#b71c1c,#e53935)}.toast-info{background:linear-gradient(135deg,#1565c0,#1976d2)}.toast-icon{width:22px;height:22px;background:#ffffff40;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}@keyframes toastIn{0%{opacity:0;transform:translate(60px) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(60px)}}.hero-section{display:grid;grid-template-columns:1fr 260px;gap:12px;padding:12px 0}.hero-slider{position:relative;border-radius:var(--radius-lg);overflow:hidden;height:340px}.slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .6s ease}.slide.active{opacity:1;z-index:1}.slide-content{display:flex;height:100%;align-items:center;padding:0 60px;position:relative;z-index:2}.slide-text{z-index:2;color:#fff;max-width:50%}.slide-tag{display:inline-block;background:#fffffff2;color:#d32f2f;padding:6px 14px;border-radius:30px;font-size:13px;font-weight:800;margin-bottom:16px;box-shadow:0 4px 15px #0000001a;text-transform:uppercase;letter-spacing:.5px}.slide-title{font-size:34px;font-weight:800;line-height:1.25;margin-bottom:12px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.slide-subtitle{font-size:15px;opacity:.95;margin-bottom:28px;line-height:1.6;text-shadow:0 1px 4px rgba(0,0,0,.2)}.slide-cta{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#333;padding:12px 28px;border-radius:30px;font-weight:700;font-size:15px;box-shadow:0 8px 20px #00000026;transition:all .3s cubic-bezier(.25,.8,.25,1);text-decoration:none}.slide-cta:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000040;color:var(--primary-color, #C92127)}.slide-img-wrap{position:absolute;right:0;top:0;bottom:0;width:55%;display:flex;align-items:center;justify-content:center;z-index:1}.slide-img{height:100%;width:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0;opacity:1;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 25%);mask-image:linear-gradient(to right,transparent 0%,black 25%)}.slide-img-overlay{display:none}.slider-prev,.slider-next{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:#fff;color:#333;border:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 15px #00000026;transition:all .3s ease;opacity:0}.hero-slider:hover .slider-prev,.hero-slider:hover .slider-next{opacity:1}.slider-prev{left:16px;transform:translateY(-50%) translate(-10px)}.slider-next{right:16px;transform:translateY(-50%) translate(10px)}.hero-slider:hover .slider-prev,.hero-slider:hover .slider-next{transform:translateY(-50%) translate(0)}.slider-prev:hover,.slider-next:hover{background:var(--primary-color, #C92127);color:#fff;transform:translateY(-50%) scale(1.1)}.slider-dots{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:5;display:flex;gap:6px}.dot{width:8px;height:8px;border-radius:50%;background:#ffffff80;border:none;cursor:pointer;transition:var(--transition);padding:0}.dot.active{background:#fff;width:24px;border-radius:4px}.hero-side-banners{display:flex;flex-direction:column;gap:12px}.side-banner{flex:1;border-radius:var(--radius-lg);overflow:hidden;position:relative}.side-banner a{display:block;position:relative;height:100%}.side-banner img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.side-banner:hover img{transform:scale(1.05)}.side-banner-text{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:16px;color:#fff}.side-banner-text span{font-size:13px;opacity:.85;margin-bottom:2px}.side-banner-text strong{font-size:15px;font-weight:700}@media (max-width: 900px){.hero-section{grid-template-columns:1fr}.hero-side-banners{flex-direction:row;height:140px}.hero-slider{height:280px}}@media (max-width: 576px){.hero-slider{height:220px}.slide-title{font-size:20px}.slide-content{padding:0 20px}.hero-side-banners{display:none}}.product-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column;position:relative;height:100%}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.product-card-img-wrap{position:relative;overflow:hidden;aspect-ratio:3/4;display:block;background:var(--bg-light)}.product-img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.product-card:hover .product-img{transform:scale(1.06)}.product-badge-sale,.product-badge-new,.product-badge-hot{position:absolute;top:8px;left:8px;z-index:2;font-size:11px;font-weight:700;padding:3px 8px;border-radius:12px}.product-badge-sale{background:var(--primary);color:#fff}.product-badge-new{background:#43a047;color:#fff}.product-badge-hot{background:var(--accent);color:#fff;top:8px;right:8px;left:auto}.wishlist-btn{position:absolute;top:8px;right:8px;z-index:3;background:#ffffffe6;border:none;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;box-shadow:var(--shadow-sm);opacity:0;transition:opacity .2s ease,transform .2s ease;transform:scale(.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.product-card:hover .wishlist-btn{opacity:1;transform:scale(1)}.wishlist-btn.wishlisted{opacity:1;transform:scale(1);background:#fff}.wishlist-btn:hover{transform:scale(1.15)!important;background:#fff0f0}.product-badge-hot~.wishlist-btn{top:40px}.product-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:flex-end;justify-content:center;padding-bottom:16px;opacity:0;transition:opacity .25s ease}.product-card:hover .product-card-overlay{opacity:1}.quick-add-btn{display:flex;align-items:center;gap:6px;background:#fff;color:var(--primary);padding:8px 16px;border-radius:20px;font-size:12px;font-weight:700;border:none;cursor:pointer;box-shadow:var(--shadow-md);transform:translateY(10px);transition:transform .25s ease;font-family:var(--font)}.product-card:hover .quick-add-btn{transform:translateY(0)}.quick-add-btn:hover{background:var(--primary);color:#fff}.product-card-info{padding:12px;display:flex;flex-direction:column;gap:4px;flex:1}.product-publisher{font-size:10px;color:var(--text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.product-name{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4;min-height:36px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none}.product-name:hover{color:var(--primary)}.product-author{font-size:11px;color:var(--text-muted)}.product-rating{display:flex;align-items:center;gap:4px;margin-top:auto;margin-bottom:2px}.stars{font-size:12px}.review-count{font-size:11px;color:var(--text-muted)}.product-price-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:2px}.price-sale{color:var(--primary);font-size:16px;font-weight:700}.price-original-card{color:var(--text-muted);font-size:12px;text-decoration:line-through}.add-to-cart-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;background:transparent;border:1.5px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;transition:var(--transition);margin-top:6px;font-family:var(--font)}.add-to-cart-btn:hover{background:var(--primary);color:#fff}.product-card-h{flex-direction:row}.product-card-h .product-card-img-wrap{width:100px;aspect-ratio:unset;flex-shrink:0}.product-card-h .add-to-cart-btn{display:none}.flash-sale{background:linear-gradient(135deg,#fff5f5,#fff);border-radius:var(--radius-xl);padding:24px 0}.flash-sale-header{display:flex;align-items:center;gap:20px;margin-bottom:20px;flex-wrap:wrap}.flash-title{display:flex;align-items:center;gap:8px}.flash-icon{font-size:28px;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.flash-title h2{font-size:24px;font-weight:800;color:var(--primary);text-transform:uppercase}.flash-countdown{display:flex;align-items:center;gap:10px;background:var(--primary);padding:8px 16px;border-radius:30px}.countdown-label{color:#ffffffd9;font-size:12px;white-space:nowrap}.countdown-blocks{display:flex;align-items:center;gap:6px}.time-block{background:#fff3;border-radius:6px;padding:4px 8px;display:flex;flex-direction:column;align-items:center;min-width:40px}.time-num{color:#fff;font-size:18px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.time-label{color:#ffffffbf;font-size:9px}.time-dot{color:#fff;font-size:18px;font-weight:800;animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.flash-view-all{margin-left:auto;color:var(--primary);font-size:13px;font-weight:600;border:1.5px solid var(--primary);padding:6px 16px;border-radius:20px;transition:var(--transition);text-decoration:none}.flash-view-all:hover{background:var(--primary);color:#fff}.flash-products{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.flash-product-wrap{display:flex;flex-direction:column}.flash-product-wrap .product-card{flex:1}.flash-progress{padding:8px 10px 10px;background:#fff;border-radius:0 0 var(--radius-lg) var(--radius-lg);border:1px solid var(--border);border-top:none}.flash-sold-text{font-size:11px;color:var(--text-muted);margin-bottom:4px}.flash-sold-text strong{color:var(--primary)}.flash-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.flash-bar-fill{height:100%;background:linear-gradient(to right,var(--primary),var(--accent));border-radius:3px;transition:width .6s ease}@media (max-width: 1024px){.flash-products{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.flash-products{grid-template-columns:repeat(2,1fr)}.flash-sale-header{flex-direction:column;align-items:flex-start}}.bg-light-section{background:var(--bg-light)}.categories-bar{background:#fff;border-bottom:1px solid var(--border-light)}.cat-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px}.cat-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:var(--radius-lg);text-decoration:none;color:var(--text-secondary);transition:var(--transition);border:1.5px solid transparent}.cat-card:hover{background:#fff5f5;border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}.cat-card-icon{margin-bottom:2px}.cat-card-name{font-size:11px;font-weight:600;text-align:center;line-height:1.3}.blog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.blog-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:var(--transition)}.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.blog-img-wrap{display:block;position:relative;overflow:hidden;aspect-ratio:16/9}.blog-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.blog-card:hover .blog-img-wrap img{transform:scale(1.06)}.blog-cat-tag{position:absolute;top:10px;left:10px;background:var(--primary);color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px}.blog-card-body{padding:14px}.blog-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);margin-bottom:8px}.blog-title{display:block;font-size:13px;font-weight:700;color:var(--text-primary);line-height:1.4;margin-bottom:8px;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-title:hover{color:var(--primary)}.blog-excerpt{font-size:12px;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}.blog-read-more{font-size:12px;font-weight:600;color:var(--primary);text-decoration:none}.blog-read-more:hover{text-decoration:underline}.newsletter-section{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);padding:36px 0}.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.newsletter-text h3{font-size:22px;font-weight:800;color:#fff;margin-bottom:6px}.newsletter-text p{font-size:14px;color:#ffffffd9}.newsletter-form{display:flex;gap:8px;flex:1;max-width:460px}.newsletter-input{flex:1;padding:12px 18px;border:none;border-radius:25px;font-size:14px;background:#ffffff26;color:#fff;outline:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.newsletter-input::placeholder{color:#fff9}.newsletter-input:focus{background:#ffffff40}.newsletter-form .btn-primary{background:#fff;color:var(--primary);border-radius:25px;white-space:nowrap}.newsletter-form .btn-primary:hover{background:#ffffffe6}@media (max-width: 1200px){.cat-grid{grid-template-columns:repeat(5,1fr)}}@media (max-width: 900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.cat-grid{grid-template-columns:repeat(5,1fr)}.newsletter-inner{flex-direction:column;text-align:center}.newsletter-form{max-width:100%;width:100%}}@media (max-width: 480px){.cat-grid{grid-template-columns:repeat(4,1fr)}.blog-grid{grid-template-columns:1fr}}.category-page{padding:16px 0 40px;background:var(--bg-light);min-height:60vh}.sidebar{position:sticky;top:140px}.sidebar-widget{background:#fff;border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.sidebar-title{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid var(--primary);display:flex;align-items:center;gap:6px}.sidebar-cats{display:flex;flex-direction:column;gap:2px}.sidebar-cat-link{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;color:var(--text-secondary);text-decoration:none;transition:var(--transition)}.sidebar-cat-link:hover{background:var(--bg-light);color:var(--primary)}.sidebar-cat-link.active{background:#fff5f5;color:var(--primary);font-weight:600}.cat-count-badge{font-size:11px;background:var(--border);color:var(--text-muted);padding:1px 6px;border-radius:10px;margin-left:auto;flex-shrink:0}.price-filter{display:flex;flex-direction:column;gap:6px}.radio-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;color:var(--text-secondary);padding:4px}.radio-label input{accent-color:var(--primary)}.radio-label:hover{color:var(--primary)}.category-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;background:#fff;padding:12px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.result-count{font-size:14px;color:var(--text-secondary)}.result-count strong{color:var(--text-primary)}.result-count em{color:var(--primary);font-style:normal;font-weight:600}.sort-dropdown-wrap{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.sort-select{padding:6px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary);background:#fff;cursor:pointer;font-family:var(--font)}.sort-select:focus{border-color:var(--primary)}.product-detail-page{padding:16px 0 48px;background:var(--bg-light)}.product-detail-grid{display:grid;grid-template-columns:400px 1fr;gap:32px;background:#fff;border-radius:var(--radius-xl);padding:28px;box-shadow:var(--shadow-card);margin-bottom:24px}.product-detail-images{position:relative}.read-preview-btn{position:absolute;top:0;right:0;z-index:10;display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#00b96b,#00913e);color:#fff;border:none;border-radius:0 var(--radius-lg) 0 var(--radius-lg);padding:8px 16px;font-size:15px;font-weight:800;font-family:var(--font);cursor:pointer;letter-spacing:.5px;box-shadow:0 2px 12px #00b96b59;transition:all .2s}.read-preview-btn:hover{background:linear-gradient(135deg,#00d97e,#00b96b);transform:translateY(-1px);box-shadow:0 4px 18px #00b96b73}.read-preview-icon{font-size:18px}.main-image-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4;background:var(--bg-light);cursor:zoom-in;margin-bottom:12px}.main-image{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.main-image-wrap:hover .main-image{transform:scale(1.04)}.detail-badge-sale{position:absolute;top:12px;left:12px;background:var(--primary);color:#fff;font-size:14px;font-weight:700;padding:4px 12px;border-radius:20px;z-index:2}.img-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#00000073;color:#fff;border:none;border-radius:50%;width:36px;height:36px;font-size:22px;line-height:1;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;transition:background .2s}.img-nav-btn:hover{background:#000000b8}.img-nav-prev{left:8px}.img-nav-next{right:8px}.img-counter{position:absolute;bottom:10px;right:12px;background:#00000080;color:#fff;font-size:12px;padding:2px 8px;border-radius:12px;z-index:3}.thumbnail-strip{display:flex;gap:8px;flex-wrap:wrap;padding-top:4px}.thumb-item{position:relative;width:68px;height:84px;border:2px solid var(--border);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:none;padding:0;transition:all .2s;flex-shrink:0}.thumb-item:hover{border-color:var(--primary);transform:translateY(-2px)}.thumb-item.active{border-color:var(--primary);box-shadow:0 0 0 2px #c1001b33}.thumb-item img{width:100%;height:100%;object-fit:cover}.thumb-label{position:absolute;bottom:0;left:0;right:0;background:#0000008c;color:#fff;font-size:10px;text-align:center;padding:2px 0;font-weight:600}.detail-publisher{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.detail-title{font-size:24px;font-weight:800;color:var(--text-primary);line-height:1.3;margin-bottom:14px}.detail-rating-row{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.detail-rating-val{font-size:14px;font-weight:700;color:#f9a825}.detail-reviews{font-size:13px;color:var(--text-muted)}.stock-badge{font-size:12px;font-weight:600;padding:2px 10px;border-radius:12px}.in-stock{background:#e8f5e9;color:#2e7d32}.out-stock{background:#fff3e0;color:#e65100}.detail-prices{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.detail-price-current{font-size:32px;font-weight:800;color:var(--primary)}.detail-price-original{font-size:18px;color:var(--text-muted);text-decoration:line-through}.detail-discount-tag{background:#fff5f5;color:var(--primary);font-size:12px;font-weight:700;padding:4px 10px;border-radius:12px;border:1px solid #ffcdd2}.detail-meta{background:var(--bg-light);border-radius:var(--radius-md);padding:14px;margin-bottom:20px}.meta-row{display:flex;gap:12px;padding:4px 0;font-size:13px}.meta-label{color:var(--text-muted);min-width:80px;flex-shrink:0}.meta-value{color:var(--text-primary);font-weight:500}.detail-actions{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.qty-control{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.qty-control .qty-btn{width:36px;height:42px;border:none;background:var(--bg-light);font-size:20px;cursor:pointer;transition:var(--transition);font-family:var(--font)}.qty-control .qty-btn:hover{background:var(--primary);color:#fff}.qty-display{width:44px;text-align:center;font-size:16px;font-weight:700;border:none;background:#fff}.add-main-btn{flex:1;min-width:180px}.add-main-btn.added{background:#2e7d32}.detail-guarantees{display:grid;grid-template-columns:1fr 1fr;gap:8px}.guarantee-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);background:var(--bg-light);padding:8px 12px;border-radius:var(--radius-sm)}.detail-tabs-section{background:#fff;border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-card);margin-bottom:24px}.tab-content{padding:20px 0}.desc-content p{font-size:14px;color:var(--text-secondary);line-height:1.8}.specs-table{width:100%;border-collapse:collapse}.specs-table td{padding:10px 14px;font-size:13px;border-bottom:1px solid var(--border-light)}.specs-table td:first-child{color:var(--text-muted);width:160px;font-weight:500}.specs-table tr:nth-child(2n) td{background:var(--bg-light)}.review-summary{display:flex;align-items:center;gap:16px;margin-bottom:20px}.review-avg{font-size:48px;font-weight:800;color:var(--gold)}.read-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.read-preview-title-row{display:flex;align-items:center;gap:14px}.read-book-icon{font-size:36px}.read-preview-title-row h3{font-size:18px;font-weight:700;margin-bottom:4px}.read-preview-title-row p{font-size:13px;color:var(--text-muted)}.btn-read-fullscreen{padding:8px 18px;background:var(--bg-light);color:var(--text-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:var(--font)}.btn-read-fullscreen:hover{border-color:var(--primary);color:var(--primary);background:#fff5f5}.read-preview-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:24px}.read-preview-card{cursor:pointer;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .2s,box-shadow .2s}.read-preview-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.read-preview-img-wrap{position:relative;aspect-ratio:3/4;overflow:hidden}.read-preview-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.read-preview-card:hover .read-preview-img-wrap img{transform:scale(1.06)}.read-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;transition:background .25s}.read-preview-card:hover .read-preview-overlay{background:#00000061}.read-preview-caption{padding:8px 12px;font-size:12px;font-weight:600;color:var(--text-muted);background:#fff;text-align:center}.read-preview-cta{background:linear-gradient(135deg,#fff5f5,#ffe0e0);border:1px solid #ffcdd2;border-radius:var(--radius-lg);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.read-preview-cta p{font-size:13px;color:var(--text-muted);flex:1}.zoom-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;z-index:1100;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s}.zoom-modal{position:relative;display:flex;flex-direction:column;align-items:center;max-width:90vw;max-height:95vh}.zoom-main-img{max-height:75vh;max-width:70vw;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 8px 40px #00000080}.zoom-modal-close{position:absolute;top:-40px;right:0;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:50%;width:34px;height:34px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.zoom-modal-close:hover{background:#ffffff4d}.zoom-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:50%;width:44px;height:44px;font-size:26px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.zoom-nav-btn:hover{background:#ffffff4d}.zoom-prev{left:-56px}.zoom-next{right:-56px}.zoom-thumbnails{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap;justify-content:center}.zoom-thumb{width:56px;height:72px;border:2px solid rgba(255,255,255,.25);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;background:none;padding:0;transition:border-color .2s}.zoom-thumb img{width:100%;height:100%;object-fit:cover}.zoom-thumb.active{border-color:#fff}.preview-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .25s}.preview-modal{background:#fff;border-radius:var(--radius-xl);width:100%;max-width:860px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;overflow:hidden}.preview-modal-large{max-width:1000px;max-height:95vh}.preview-modal-pdf-body{flex:1;overflow:hidden;padding:0!important;display:flex;flex-direction:column}.preview-pdf-frame{width:100%;flex:1;min-height:600px;border:none}.preview-no-pdf{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;gap:12px}.preview-no-pdf-icon{font-size:56px}.preview-no-pdf h3{font-size:20px;font-weight:700;color:var(--text-primary)}.preview-no-pdf p{font-size:14px;color:var(--text-muted);max-width:400px}.pdf-embed-wrap{width:100%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);margin-bottom:20px;background:#f5f5f5}.pdf-embed-frame{width:100%;height:700px;border:none;display:block}.no-preview-notice{display:flex;align-items:flex-start;gap:16px;background:#fff9e6;border:1px solid #fdd95c;border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:20px}.no-preview-icon{font-size:36px;flex-shrink:0}.no-preview-text h3{font-size:16px;font-weight:700;color:#856404;margin-bottom:4px}.no-preview-text p{font-size:13px;color:#7c5c00}.preview-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,#00b96b08,#00913e05)}.preview-modal-title{font-size:18px;font-weight:800;color:#00913e}.preview-modal-subtitle{font-size:13px;color:var(--text-muted);margin-top:2px}.preview-modal-close{background:var(--bg-light);border:1px solid var(--border);border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.preview-modal-close:hover{background:#fee;border-color:var(--primary);color:var(--primary)}.preview-modal-body{flex:1;overflow-y:auto;padding:24px}.preview-pages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.preview-page-item{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-card)}.preview-page-item img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.preview-page-label{padding:8px;font-size:12px;text-align:center;color:var(--text-muted);background:#fafafa;font-weight:600}.preview-empty{text-align:center;padding:48px;color:var(--text-muted)}.preview-modal-footer{padding:16px 24px;border-top:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--bg-light);flex-wrap:wrap}.preview-modal-footer p{font-size:12px;color:var(--text-muted);flex:1}.related-section{padding-bottom:20px}@media (max-width: 1024px){.product-detail-grid{grid-template-columns:340px 1fr}}@media (max-width: 900px){.product-detail-grid{grid-template-columns:1fr}.main-image-wrap{max-width:360px;margin:0 auto}.thumbnail-strip{justify-content:center}.read-preview-btn{top:0;right:0;border-radius:0 var(--radius-lg) 0 var(--radius-lg)}.zoom-prev{left:-44px}.zoom-next{right:-44px}}@media (max-width: 576px){.detail-title{font-size:18px}.detail-price-current{font-size:24px}.detail-actions{flex-direction:column;align-items:stretch}.add-main-btn{min-width:unset}.read-preview-images,.preview-pages-grid{grid-template-columns:repeat(2,1fr)}.zoom-prev{left:-8px}.zoom-next{right:-8px}.read-preview-cta{flex-direction:column}}.cart-page{padding:16px 0 48px;background:var(--bg-light);min-height:60vh}.cart-empty-page{padding:60px 0}.page-title{font-size:24px;font-weight:800;margin-bottom:16px}.page-title span{font-size:16px;font-weight:400;color:var(--text-muted)}.cart-freeship-notice{background:#e8f5e9;border:1px solid #a5d6a7;color:#2e7d32;padding:10px 16px;border-radius:var(--radius-md);font-size:13px;margin-bottom:16px}.cart-freeship-notice strong{font-weight:700}.cart-layout{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}.cart-items-table{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden}.cart-table-head{display:grid;grid-template-columns:minmax(200px,1fr) 110px 130px 120px 40px;gap:16px;padding:14px 20px;background:var(--bg-light);font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.cart-row{display:grid;grid-template-columns:minmax(200px,1fr) 110px 130px 120px 40px;gap:16px;padding:16px 20px;align-items:center;border-bottom:1px solid var(--border-light);transition:background .15s}.cart-row:last-child{border-bottom:none}.cart-row:hover{background:var(--bg-light)}.cart-product-col{display:flex;gap:14px;align-items:center}.cart-product-col img{width:70px;height:90px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.cart-product-name{font-size:14px;font-weight:600;color:var(--text-primary);text-decoration:none}.cart-product-name:hover{color:var(--primary)}.cart-product-pub{font-size:12px;color:var(--text-muted);margin-top:4px}.cart-price-col{font-size:14px;color:var(--primary);font-weight:600;white-space:nowrap}.cart-qty-col{white-space:nowrap}.cart-qty-col .qty-control{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--radius-sm)}.cart-qty-col .qty-btn{width:30px;height:34px;border:none;background:var(--bg-light);font-size:16px;cursor:pointer;transition:var(--transition);font-family:var(--font)}.cart-qty-col .qty-btn:hover{background:var(--primary);color:#fff}.cart-qty-col .qty-display{width:36px;text-align:center;font-size:14px;font-weight:600}.cart-subtotal-col{font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap}.cart-remove-btn{background:none;border:none;font-size:14px;color:var(--text-muted);cursor:pointer;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.cart-remove-btn:hover{background:#ffebee;color:var(--primary)}.cart-summary-box{background:#fff;border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-card);position:sticky;top:140px}.cart-summary-box h3{font-size:16px;font-weight:700;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border)}.summary-lines{margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.summary-line{display:flex;justify-content:space-between;font-size:14px;color:var(--text-secondary)}.summary-line .free{color:#2e7d32;font-weight:600}.summary-line.total{padding-top:12px;border-top:2px solid var(--border);font-size:15px}.grand{color:var(--primary);font-size:20px}.cart-summary-box .btn{display:flex}.payment-icons{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:12px;font-size:20px}@media (max-width: 900px){.cart-layout{grid-template-columns:1fr}}@media (max-width: 576px){.cart-table-head{display:none}.cart-row{grid-template-columns:1fr auto;grid-template-rows:auto auto auto;gap:8px}.cart-product-col{grid-column:1 / -1}.cart-subtotal-col{font-size:14px}}.checkout-page{background-color:#f5f5f5;min-height:100vh;padding:32px 0 64px;font-family:Inter,sans-serif}.checkout-container{max-width:1024px;margin:0 auto;padding:0 16px}.checkout-logo{font-size:16px;font-weight:800;text-transform:uppercase;margin-bottom:24px;letter-spacing:.5px;text-align:center;display:flex;align-items:center;justify-content:center;gap:16px}.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}.checkout-block{background:#fff;border-radius:8px;padding:20px;margin-bottom:16px;box-shadow:0 1px 3px #0000000d}.checkout-block h3{font-size:14px;font-weight:700;margin-bottom:16px;color:#111}.checkout-login-prompt{background:#fff;border-radius:8px;padding:16px 20px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;font-size:13px;box-shadow:0 1px 3px #0000000d}.btn-login-prompt{background:#f0f0f0;border:none;padding:8px 16px;border-radius:4px;font-weight:600;font-size:13px;cursor:pointer;text-decoration:none;color:#111}.form-group{margin-bottom:14px}.form-control{width:100%;padding:12px 14px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s}.form-control:focus{border-color:#c92127}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.radio-group{display:flex;flex-direction:column}.radio-option{display:flex;align-items:center;padding:14px 0;border-bottom:1px solid #f0f0f0;cursor:pointer}.radio-option:last-child{border-bottom:none;padding-bottom:0}.radio-option:first-child{padding-top:0}.radio-option input[type=radio]{margin-right:12px;width:18px;height:18px;accent-color:#c92127}.radio-label{display:flex;align-items:center;gap:10px;font-size:14px;flex:1}.radio-desc{font-size:12px;color:#777;display:block;margin-top:4px}.address-item{border:1px solid #e0e0e0;border-radius:6px;padding:12px;margin-bottom:12px;cursor:pointer;position:relative}.address-item.selected{border-color:#c92127;background:#fff9f9}.address-item-name{font-weight:700;font-size:14px;margin-bottom:4px}.address-item-phone{font-size:13px;color:#555;margin-bottom:4px}.address-item-desc{font-size:13px;color:#777}.invoice-block{display:flex;justify-content:space-between;align-items:center;padding:16px 20px}.invoice-block h3{margin:0}.btn-invoice{background:none;border:none;color:#888;font-size:13px;cursor:pointer}.checkout-items{display:flex;flex-direction:column;gap:16px}.checkout-item{display:flex;gap:12px}.checkout-item-img{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid #eee}.checkout-item-info{flex:1;display:flex;flex-direction:column;justify-content:center}.checkout-item-name{font-size:13px;font-weight:600;line-height:1.4;margin-bottom:4px}.checkout-item-variant{font-size:12px;color:#888}.checkout-item-action{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}.checkout-item-delete{background:none;border:none;color:#aaa;cursor:pointer}.checkout-item-price{font-size:14px;font-weight:700}.qty-control{display:flex;align-items:center;border:1px solid #e0e0e0;border-radius:4px;width:fit-content;margin-top:8px}.qty-btn{background:none;border:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#555}.qty-input{width:30px;text-align:center;border:none;border-left:1px solid #e0e0e0;border-right:1px solid #e0e0e0;font-size:13px;height:24px}.voucher-input-group{display:flex;gap:8px}.btn-apply{background:#c92127;color:#fff;border:none;padding:0 20px;border-radius:6px;font-weight:700;cursor:pointer;white-space:nowrap;transition:opacity .2s}.btn-apply:hover{opacity:.9}.summary-lines{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.summary-line{display:flex;justify-content:space-between;font-size:13px;color:#555}.summary-line.total{font-weight:800;color:#111;font-size:15px;border-top:1px solid #eee;padding-top:12px}.btn-place-order{width:100%;background:#111;color:#fff;border:none;padding:16px;border-radius:8px;font-weight:700;font-size:15px;cursor:pointer;transition:background .2s}.btn-place-order:hover{background:#333}.btn-place-order:disabled{background:#aaa;cursor:not-allowed}.error-msg{color:#c92127;font-size:13px;margin-top:12px}.voucher-success{color:#2e7d32;font-size:12px;margin-top:8px}.voucher-error{color:#c92127;font-size:12px;margin-top:8px}.status-badge{display:inline-block;background:#fff8e1;color:#f57c00;font-size:12px;font-weight:700;padding:4px 10px;border-radius:4px;margin-bottom:8px}.status-badge.paid{background:#e8f5e9;color:#2e7d32}.success-header-block{margin-bottom:16px}.success-header-block h2{font-size:15px;font-weight:700;margin:0 0 8px}.success-header-notice{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#111;margin-top:16px}.payment-details-table{width:100%;font-size:13px}.payment-details-table td{padding:6px 0}.payment-details-table td:first-child{color:#777;width:120px}.payment-details-table td:last-child{text-align:right;font-weight:600}.qr-code-box{display:flex;flex-direction:column;align-items:center;background:#fafafa;padding:16px;border-radius:8px;margin-top:16px;border:1px dashed #ccc}.qr-code-box img{width:160px;height:160px;margin-bottom:12px}.upload-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.upload-desc{color:#777;font-size:11px;max-width:60%}.btn-upload{background:#f0f0f0;border:none;padding:8px 16px;border-radius:4px;font-weight:600;cursor:pointer}.address-summary{font-size:13px;line-height:1.5;color:#333}.address-summary strong{display:block;margin-bottom:4px}@media (max-width: 768px){.checkout-layout{grid-template-columns:1fr}}.address-dropdown-container{position:relative;width:100%}.address-dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;border:1px solid #eee;z-index:1000;overflow:hidden;max-height:350px;display:flex;flex-direction:column}.address-tabs{display:flex;border-bottom:1px solid #eee;background:#fafafa}.address-tab{flex:1;text-align:center;padding:12px 8px;font-size:13px;color:#777;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.address-tab:hover{color:#333}.address-tab.active{color:#c92127;font-weight:600;border-bottom-color:#c92127}.address-list{flex:1;overflow-y:auto;padding:8px 0}.address-list-item{padding:10px 16px;font-size:14px;color:#333;cursor:pointer;transition:background .2s}.address-list-item:hover{background:#f5f5f5}.address-list-item.selected{font-weight:600;color:#c92127}.address-list-empty{padding:20px;text-align:center;color:#999;font-size:13px}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#fff5f5,#f3e5f5);padding:24px}.login-card{background:#fff;border-radius:var(--radius-xl);padding:40px 36px;width:100%;max-width:440px;box-shadow:0 20px 60px #0000001f}.login-logo{display:flex;align-items:center;gap:12px;margin-bottom:28px;justify-content:center}.login-logo span{font-size:40px}.login-logo-name{font-size:20px;font-weight:800;color:var(--primary)}.login-logo-slogan{font-size:11px;color:var(--text-muted);letter-spacing:2px}.login-tabs{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:24px}.login-tab{padding:11px;font-size:14px;font-weight:600;color:var(--text-muted);background:none;border:none;cursor:pointer;transition:var(--transition);font-family:var(--font)}.login-tab.active{background:var(--primary);color:#fff}.auth-error{background:#ffebee;color:var(--primary);padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:12px}.forgot-link{text-align:right;margin-bottom:12px}.forgot-link a{font-size:12px;color:var(--primary)}.forgot-link a:hover{text-decoration:underline}.login-divider{text-align:center;position:relative;margin:20px 0}.login-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--border)}.login-divider span{background:#fff;padding:0 12px;font-size:12px;color:var(--text-muted);position:relative}.social-auth{display:flex;flex-direction:column;gap:10px}.social-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:11px;border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);background:#fff;font-family:var(--font)}.social-auth-btn:hover{border-color:var(--primary);background:var(--bg-light);box-shadow:0 2px 8px #d32f2f26}.social-auth-btn.fb{border-color:#1877f2;color:#1877f2}.social-auth-btn.fb:hover{background:#e7f0fd}.login-back{text-align:center;margin-top:20px;font-size:13px}.login-back a{color:var(--text-muted)}.login-back a:hover{color:var(--primary)}.form-group.has-error .form-control,.form-control.error{border-color:#e53935!important;background:#fff8f8}.form-control.error:focus{box-shadow:0 0 0 3px #e5393526}.field-error{color:#e53935;font-size:12px;margin-top:4px;display:flex;align-items:center;gap:4px}.field-hint{color:#9e9e9e;font-size:11px;margin-top:3px}.verify-actions{display:flex;flex-direction:column;gap:10px}.verify-actions .btn{justify-content:center}.social-auth-btn:hover,button[id=google-login]:hover{box-shadow:0 2px 12px #4285f433;border-color:#4285f4!important;transform:translateY(-1px)}.payment-return-page{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:40px 20px;background:var(--bg-light)}.return-card{background:#fff;border-radius:20px;padding:48px 40px;text-align:center;box-shadow:0 20px 60px #0000001f;max-width:480px;width:100%}.return-card.success{border-top:4px solid #2e7d32}.return-card.failed{border-top:4px solid #c62828}.return-card.loading{border-top:4px solid #1565c0}.return-icon{font-size:64px;margin-bottom:16px}.return-card h2{font-size:24px;font-weight:800;margin-bottom:12px}.return-card.success h2{color:#2e7d32}.return-card.failed h2{color:#c62828}.return-card.loading h2{color:#1565c0}.return-order-code{display:inline-block;background:#f5f5f5;border:2px dashed #ddd;padding:8px 20px;border-radius:8px;font-size:15px;margin-bottom:16px}.return-order-code strong{color:var(--primary);letter-spacing:1px}.return-message{font-size:14px;color:#555;margin-bottom:12px;line-height:1.6}.return-provider{font-size:13px;font-weight:600;color:#777;margin-bottom:24px}.return-error-code{font-size:12px;color:#999;margin-bottom:20px}.return-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px}.return-actions .btn{justify-content:center}.spinner{font-size:48px;animation:spin 1.5s linear infinite;display:inline-block;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.blog-page{padding:24px 0 64px;background:var(--bg-light);min-height:70vh}.blog-hero{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#fff5f5,#fce4ec);border-radius:var(--radius-xl);margin-bottom:28px}.blog-hero h1{font-size:32px;font-weight:800;color:var(--primary);margin-bottom:10px}.blog-hero p{font-size:15px;color:var(--text-secondary)}.blog-cats{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.blog-cat-pill{padding:6px 18px;border:1.5px solid var(--border);border-radius:20px;font-size:13px;font-weight:500;background:#fff;color:var(--text-secondary);cursor:pointer;transition:var(--transition);font-family:var(--font)}.blog-cat-pill:hover,.blog-cat-pill.active{background:var(--primary);border-color:var(--primary);color:#fff}.blog-featured{display:grid;grid-template-columns:1fr 1fr;gap:32px;background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card);margin-bottom:40px}.featured-img-wrap{position:relative;overflow:hidden;aspect-ratio:16/10;display:block}.featured-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.blog-featured:hover .featured-img-wrap img{transform:scale(1.04)}.featured-tag{position:absolute;top:16px;left:16px;background:var(--primary);color:#fff;font-size:12px;font-weight:700;padding:4px 12px;border-radius:20px}.featured-content{padding:32px;display:flex;flex-direction:column;justify-content:center;gap:14px}.blog-cat-tag{display:inline-block;background:#fff5f5;color:var(--primary);font-size:11px;font-weight:700;padding:3px 10px;border-radius:12px;border:1px solid #ffcdd2}.featured-title{font-size:22px;font-weight:800;color:var(--text-primary);line-height:1.35;text-decoration:none}.featured-title:hover{color:var(--primary)}.featured-excerpt{font-size:14px;color:var(--text-secondary);line-height:1.7}.blog-meta-row{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--text-muted)}.blog-grid-page{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card-lg{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}.blog-card-lg:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.blog-card-img{display:block;position:relative;overflow:hidden;aspect-ratio:16/9}.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.blog-card-lg:hover .blog-card-img img{transform:scale(1.06)}.blog-card-body-lg{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.blog-card-title{font-size:15px;font-weight:700;color:var(--text-primary);text-decoration:none;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card-title:hover{color:var(--primary)}.blog-card-excerpt{font-size:13px;color:var(--text-muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.read-more-link{font-size:13px;font-weight:600;color:var(--primary);text-decoration:none}.read-more-link span{transition:transform .2s;display:inline-block}.read-more-link:hover span{transform:translate(4px)}@media (max-width: 900px){.blog-featured{grid-template-columns:1fr}}@media (max-width: 768px){.blog-grid-page{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.blog-grid-page{grid-template-columns:1fr}}.blog-detail-page{padding:20px 0 60px;background:var(--bg-light)}.blog-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}.blog-detail-main{background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card)}.blog-detail-hero{width:100%;aspect-ratio:16/7;overflow:hidden}.blog-detail-hero img{width:100%;height:100%;object-fit:cover}.blog-detail-content{padding:32px}.blog-detail-title{font-size:28px;font-weight:800;color:var(--text-primary);line-height:1.3;margin:12px 0 16px}.blog-detail-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--text-muted);padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:24px}.blog-detail-body{line-height:1.85;color:var(--text-secondary);font-size:15px}.blog-detail-body h2{font-size:20px;font-weight:700;color:var(--text-primary);margin:24px 0 12px}.blog-detail-body p{margin-bottom:16px}.lead-paragraph{font-size:16px;font-weight:500;color:var(--text-primary);border-left:4px solid var(--primary);padding-left:16px;margin-bottom:24px}blockquote{background:var(--bg-light);border-left:4px solid var(--primary);padding:16px 20px;border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;font-size:15px;color:var(--text-secondary);margin:24px 0;line-height:1.7}.blog-tags{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 20px}.blog-tag{background:var(--bg-light);color:var(--primary);padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid var(--border)}.blog-share{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--border)}.blog-share span{font-size:13px;color:var(--text-muted);font-weight:500}.share-btn{padding:7px 16px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:#fff;transition:var(--transition);font-family:var(--font);color:var(--text-primary)}.share-btn:hover{border-color:var(--primary);color:var(--primary);background:#fff5f5}.share-btn.fb:hover{border-color:#1877f2;color:#1877f2;background:#e7f0fd}.blog-sidebar{position:sticky;top:140px;display:flex;flex-direction:column;gap:20px}.sidebar-widget{background:#fff;border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-card)}.sidebar-newsletter h3{font-size:15px;font-weight:700;margin-bottom:8px}.sidebar-newsletter p{font-size:12px;color:var(--text-muted);margin-bottom:12px;line-height:1.5}.related-posts{display:flex;flex-direction:column;gap:14px}.related-post{display:flex;gap:10px;text-decoration:none;color:var(--text-primary);transition:var(--transition)}.related-post:hover .related-title{color:var(--primary)}.related-post img{width:70px;height:52px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.related-title{font-size:12px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}.related-date{font-size:11px;color:var(--text-muted)}.featured-book-banner{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff5f5,#fce4ec);border:1.5px solid #ffcdd2;border-radius:var(--radius-md);padding:16px;text-decoration:none;color:var(--text-primary);font-size:14px;transition:var(--transition)}.featured-book-banner:hover{border-color:var(--primary);background:#ffebee}.featured-book-banner strong{color:var(--primary);font-size:16px}@media (max-width: 900px){.blog-detail-layout{grid-template-columns:1fr}.blog-sidebar{position:static}}@media (max-width: 576px){.blog-detail-content{padding:20px}.blog-detail-title{font-size:20px}}.wishlist-page{padding:20px 0 60px;background:var(--bg-light);min-height:60vh}.wishlist-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px}.wishlist-header h1{font-size:24px;font-weight:800}.wishlist-header h1 span{font-size:15px;font-weight:400;color:var(--text-muted);margin-left:8px}.wishlist-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.wishlist-item{position:relative}.wishlist-remove{position:absolute;top:8px;right:8px;z-index:10;background:#fff;border:none;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;box-shadow:var(--shadow-sm);color:var(--text-muted);transition:var(--transition)}.wishlist-remove:hover{background:var(--primary);color:#fff}@media (max-width: 1024px){.wishlist-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.wishlist-grid{grid-template-columns:repeat(2,1fr)}}.not-found-page{padding:48px 0 72px;background:var(--bg-light);min-height:60vh}.not-found-content{text-align:center;padding:48px 20px;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-card);margin-bottom:40px}.not-found-number{font-size:120px;font-weight:900;color:var(--border);line-height:1;background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.not-found-content h1{font-size:28px;font-weight:800;margin-bottom:12px}.not-found-content p{font-size:15px;color:var(--text-muted);margin-bottom:28px}.not-found-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.account-page{max-width:1200px;margin:0 auto;padding:40px 20px;display:flex;gap:30px;align-items:flex-start}.account-sidebar{width:250px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:20px 0;flex-shrink:0}.account-user-info{text-align:center;padding:0 20px 20px;border-bottom:1px solid #eee;margin-bottom:10px}.account-avatar{width:60px;height:60px;border-radius:50%;background:#f0f0f0;color:#c92127;font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}.account-user-name{font-weight:600;color:#333;margin-bottom:4px}.account-user-email{font-size:13px;color:#777}.account-menu{list-style:none;padding:0;margin:0}.account-menu li{padding:12px 20px;cursor:pointer;color:#555;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:10px}.account-menu li:hover{background:#f9f9f9;color:#c92127}.account-menu li.active{color:#c92127;background:#fff5f5;border-right:3px solid #c92127}.account-content{flex-grow:1;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:30px;min-height:500px}.account-content h2{font-size:20px;color:#333;margin-top:0;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.profile-form{max-width:500px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#c92127}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-primary{background:#c92127;color:#fff;border:none;padding:10px 24px;border-radius:4px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#a81c21}.btn-outline{background:transparent;color:#c92127;border:1px solid #c92127;padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s}.btn-outline:hover{background:#fff5f5}.address-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.address-list{display:flex;flex-direction:column;gap:15px}.address-item{border:1px solid #eee;border-radius:6px;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.address-item.is-default{border-color:#c92127;background:snow}.address-info{flex-grow:1}.address-name{font-weight:600;font-size:15px;margin-bottom:4px;display:flex;align-items:center;gap:10px}.default-badge{background:#c92127;color:#fff;font-size:11px;padding:2px 6px;border-radius:3px;font-weight:500}.address-phone{color:#666;font-size:14px;margin-bottom:4px}.address-detail{color:#555;font-size:14px}.address-actions{display:flex;gap:10px}.btn-edit,.btn-delete{background:none;border:none;font-size:14px;cursor:pointer}.btn-edit{color:#06c}.btn-edit:hover{text-decoration:underline}.btn-delete{color:#c92127}.btn-delete:hover{text-decoration:underline}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:100%;max-width:500px;padding:24px}.modal-content h3{margin-top:0;margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.order-tabs{display:flex;border-bottom:1px solid #eee;margin-bottom:20px}.order-tab{padding:12px 20px;cursor:pointer;color:#666;font-weight:500;border-bottom:2px solid transparent;transition:all .2s}.order-tab:hover{color:#c92127}.order-tab.active{color:#c92127;border-bottom-color:#c92127}.order-list{display:flex;flex-direction:column;gap:20px}.order-item{border:1px solid #eee;border-radius:8px;padding:20px}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px dashed #eee}.order-code{font-weight:600;color:#333}.order-date{font-size:13px;color:#777;margin-left:10px}.order-status{font-weight:500;font-size:14px}.status-pending{color:#f57c00}.status-confirmed{color:#1976d2}.status-shipping{color:#0288d1}.status-delivered{color:#388e3c}.status-cancelled{color:#d32f2f}.order-products{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.order-product{display:flex;align-items:center;gap:15px}.order-product img{width:60px;height:60px;object-fit:contain;border:1px solid #eee;border-radius:4px}.order-product-info{flex-grow:1}.order-product-name{font-size:14px;color:#333;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.order-product-qty{font-size:13px;color:#777}.order-product-price{font-weight:600;color:#c92127;white-space:nowrap}.order-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px dashed #eee}.order-total-label{color:#555;margin-right:10px}.order-total-price{font-size:18px;font-weight:700;color:#c92127}.no-data{text-align:center;padding:40px 0;color:#777}@media (max-width: 768px){.account-page{flex-direction:column;padding:20px 15px}.account-sidebar{width:100%}.order-tabs{overflow-x:auto;white-space:nowrap}}:root{--a-primary: #d32f2f;--a-primary-dark: #b71c1c;--a-accent: #ff6f00;--a-sidebar-bg: #1a1f2e;--a-sidebar-text: rgba(255,255,255,.7);--a-sidebar-active: #d32f2f;--a-topbar-bg: #fff;--a-content-bg: #f0f2f5;--a-card-bg: #fff;--a-border: #e8ecf0;--a-text: #1a1a2e;--a-text-muted: #8c9099;--a-success: #2e7d32;--a-warning: #e65100;--a-info: #1565c0;--a-danger: #c62828;--a-radius: 10px;--a-shadow: 0 2px 12px rgba(0,0,0,.08);--a-transition: all .2s ease;--a-sidebar-width: 240px;--a-topbar-height: 60px;--a-font: "Be Vietnam Pro", -apple-system, BlinkMacSystemFont, sans-serif}.admin-app,.admin-login-page{font-family:var(--a-font);font-size:14px;color:var(--a-text)}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1f2e,#2d3561,#1a1f2e);padding:20px}.al-card{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:400px;box-shadow:0 24px 64px #0000004d}.al-header{text-align:center;margin-bottom:28px}.al-logo{font-size:52px;margin-bottom:12px}.al-header h1{font-size:22px;font-weight:800;color:var(--a-primary);margin-bottom:4px}.al-header p{font-size:13px;color:var(--a-text-muted)}.al-error{background:#ffebee;color:var(--a-danger);padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;border:1px solid #ffcdd2}.al-form{display:flex;flex-direction:column;gap:16px}.al-input-group{display:flex;flex-direction:column;gap:6px}.al-input-group label{font-size:13px;font-weight:600;color:var(--a-text)}.al-input-group input{padding:11px 14px;border:1.5px solid var(--a-border);border-radius:8px;font-size:14px;font-family:var(--a-font);transition:var(--a-transition)}.al-input-group input:focus{border-color:var(--a-primary);box-shadow:0 0 0 3px #d32f2f1a;outline:none}.al-submit{padding:13px;background:var(--a-primary);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--a-font);transition:var(--a-transition);margin-top:4px}.al-submit:hover:not(:disabled){background:var(--a-primary-dark);transform:translateY(-1px);box-shadow:0 4px 16px #d32f2f4d}.al-submit:disabled{opacity:.7;cursor:not-allowed}.al-hint{margin-top:20px;text-align:center;font-size:12px;color:var(--a-text-muted);background:#f8f9fa;padding:10px;border-radius:8px}.admin-app{display:flex;min-height:100vh;background:var(--a-content-bg)}.admin-sidebar{width:var(--a-sidebar-width);background:var(--a-sidebar-bg);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform .3s ease,width .3s ease;overflow:hidden}.admin-app.sidebar-collapsed .admin-sidebar{width:64px}.admin-app.sidebar-collapsed .sidebar-label,.admin-app.sidebar-collapsed .sidebar-logo-text{display:none}.sidebar-logo{display:flex;align-items:center;gap:12px;padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.08);min-height:var(--a-topbar-height)}.sidebar-logo-icon{font-size:28px;flex-shrink:0}.sidebar-logo-text{font-size:18px;font-weight:800;color:#fff;white-space:nowrap}.sidebar-nav{flex:1;padding:12px 0;overflow-y:auto;overflow-x:hidden}.sidebar-link{display:flex;align-items:center;gap:12px;padding:11px 18px;color:var(--a-sidebar-text);text-decoration:none;transition:var(--a-transition);border-radius:0;white-space:nowrap;border:none;background:none;width:100%;cursor:pointer;font-family:var(--a-font);font-size:13.5px;font-weight:500;position:relative}.sidebar-link:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--a-primary);opacity:0;transition:opacity .2s}.sidebar-link:hover{background:#ffffff0f;color:#fff}.sidebar-link.active{background:#d32f2f26;color:#fff;font-weight:600}.sidebar-link.active:before{opacity:1}.sidebar-icon{font-size:18px;flex-shrink:0;width:28px;text-align:center}.sidebar-bottom{padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}.sidebar-link-sm{font-size:13px;padding:9px 18px}.logout-btn{color:#ef9a9a!important}.logout-btn:hover{background:#d32f2f26!important;color:#ef5350!important}.admin-main{flex:1;margin-left:var(--a-sidebar-width);min-height:100vh;display:flex;flex-direction:column;transition:margin-left .3s ease}.admin-app.sidebar-collapsed .admin-main{margin-left:64px}.admin-topbar{height:var(--a-topbar-height);background:var(--a-topbar-bg);border-bottom:1px solid var(--a-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:50;box-shadow:var(--a-shadow)}.sidebar-toggle{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:8px;color:var(--a-text);transition:var(--a-transition)}.sidebar-toggle:hover{background:var(--a-content-bg)}.admin-topbar-right{display:flex;align-items:center;gap:16px}.admin-user-info{display:flex;align-items:center;gap:10px}.admin-avatar{width:36px;height:36px;border-radius:50%;background:var(--a-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.admin-name{font-size:13px;font-weight:600;color:var(--a-text)}.admin-role{font-size:11px;color:var(--a-text-muted)}.admin-content{flex:1;padding:24px}.admin-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--a-content-bg)}.admin-spinner{width:48px;height:48px;border:4px solid var(--a-border);border-top:4px solid var(--a-primary);border-radius:50%;animation:adminSpin .8s linear infinite}@keyframes adminSpin{to{transform:rotate(360deg)}}.a-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.a-page-title{font-size:22px;font-weight:800;color:var(--a-text)}.a-page-subtitle{font-size:13px;color:var(--a-text-muted);margin-top:2px}.a-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.a-stat-card{background:var(--a-card-bg);border-radius:var(--a-radius);padding:20px;box-shadow:var(--a-shadow);display:flex;align-items:center;gap:16px;transition:var(--a-transition)}.a-stat-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.a-stat-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.a-stat-info{flex:1;min-width:0}.a-stat-value{font-size:22px;font-weight:800;color:var(--a-text);line-height:1}.a-stat-label{font-size:12px;color:var(--a-text-muted);margin-top:4px}.a-stat-change{font-size:11px;margin-top:4px;font-weight:600}.a-stat-change.up{color:var(--a-success)}.a-stat-change.down{color:var(--a-danger)}.a-card{background:var(--a-card-bg);border-radius:var(--a-radius);box-shadow:var(--a-shadow);overflow:hidden}.a-card-header{padding:16px 20px;border-bottom:1px solid var(--a-border);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.a-card-title{font-size:15px;font-weight:700}.a-card-body{padding:20px}.a-filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.a-search-wrap{display:flex;align-items:center;gap:8px;background:var(--a-content-bg);border:1.5px solid var(--a-border);border-radius:8px;padding:0 12px;flex:1;min-width:200px;max-width:320px;transition:var(--a-transition)}.a-search-wrap:focus-within{border-color:var(--a-primary);background:#fff}.a-search-wrap input{flex:1;border:none;background:none;padding:9px 0;font-size:13px;font-family:var(--a-font)}.a-select{padding:9px 12px;border:1.5px solid var(--a-border);border-radius:8px;font-size:13px;font-family:var(--a-font);background:#fff;cursor:pointer;color:var(--a-text)}.a-select:focus{border-color:var(--a-primary);outline:none}.a-table-wrap{overflow-x:auto}.a-table{width:100%;border-collapse:collapse;font-size:13px}.a-table th{background:#f8f9fb;padding:11px 14px;text-align:left;font-size:12px;font-weight:700;color:var(--a-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--a-border);white-space:nowrap}.a-table td{padding:12px 14px;border-bottom:1px solid #f0f2f5;vertical-align:middle}.a-table tr:last-child td{border-bottom:none}.a-table tr:hover td{background:#fafbfc}.a-table .prod-img{width:44px;height:52px;object-fit:cover;border-radius:6px}.a-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}.a-badge-green{background:#e8f5e9;color:#2e7d32}.a-badge-red{background:#ffebee;color:#c62828}.a-badge-orange{background:#fff3e0;color:#e65100}.a-badge-blue{background:#e3f2fd;color:#1565c0}.a-badge-gray{background:#f5f5f5;color:#616161}.a-badge-purple{background:#f3e5f5;color:#6a1b9a}.a-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;font-family:var(--a-font);transition:var(--a-transition);white-space:nowrap}.a-btn:hover{transform:translateY(-1px)}.a-btn-primary{background:var(--a-primary);color:#fff}.a-btn-primary:hover{background:var(--a-primary-dark);box-shadow:0 4px 12px #d32f2f4d}.a-btn-success{background:var(--a-success);color:#fff}.a-btn-danger{background:#fff;color:var(--a-danger);border:1.5px solid #ffcdd2}.a-btn-danger:hover{background:var(--a-danger);color:#fff}.a-btn-outline{background:#fff;color:var(--a-text);border:1.5px solid var(--a-border)}.a-btn-outline:hover{border-color:var(--a-primary);color:var(--a-primary)}.a-btn-icon{padding:7px;border-radius:7px;line-height:1}.a-btn-sm{padding:5px 12px;font-size:12px}.a-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.a-actions{display:flex;gap:6px;align-items:center}.a-pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--a-border);font-size:13px;flex-wrap:wrap;gap:10px}.a-pager{display:flex;gap:6px;align-items:center}.a-page-btn{min-width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:7px;font-size:13px;font-weight:500;cursor:pointer;transition:var(--a-transition);padding:0 8px;background:#fff;border:1.5px solid var(--a-border);color:var(--a-text);font-family:var(--a-font)}.a-page-btn:hover:not(:disabled){border-color:var(--a-primary);color:var(--a-primary)}.a-page-btn.active{background:var(--a-primary);border-color:var(--a-primary);color:#fff}.a-page-btn:disabled{opacity:.4;cursor:not-allowed}.a-pagination-info{color:var(--a-text-muted)}.a-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:aFadeIn .15s ease}@keyframes aFadeIn{0%{opacity:0}to{opacity:1}}.a-modal{background:#fff;border-radius:14px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;animation:aSlideUp .2s ease;box-shadow:0 24px 64px #00000040}.a-modal-lg{max-width:800px}@keyframes aSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.a-modal-header{padding:18px 22px;border-bottom:1px solid var(--a-border);display:flex;align-items:center;justify-content:space-between}.a-modal-title{font-size:16px;font-weight:700}.a-modal-close{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--a-content-bg);border:none;font-size:18px;cursor:pointer;color:var(--a-text-muted);transition:var(--a-transition);font-family:var(--a-font)}.a-modal-close:hover{background:#ffebee;color:var(--a-danger)}.a-modal-body{padding:22px;overflow-y:auto;flex:1}.a-modal-footer{padding:14px 22px;border-top:1px solid var(--a-border);display:flex;gap:10px;justify-content:flex-end}.a-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.a-form-full{grid-column:1/-1}.a-field{display:flex;flex-direction:column;gap:6px}.a-label{font-size:12px;font-weight:700;color:var(--a-text-muted);text-transform:uppercase;letter-spacing:.4px}.a-input,.a-textarea,.a-select-full{padding:10px 13px;border:1.5px solid var(--a-border);border-radius:8px;font-size:13px;font-family:var(--a-font);color:var(--a-text);background:#fff;transition:var(--a-transition);width:100%}.a-input:focus,.a-textarea:focus,.a-select-full:focus{border-color:var(--a-primary);outline:none;box-shadow:0 0 0 3px #d32f2f14}.a-textarea{resize:vertical;min-height:80px}.a-empty{text-align:center;padding:60px 20px;color:var(--a-text-muted)}.a-empty-icon{font-size:52px;margin-bottom:12px}.a-empty h3{font-size:16px;color:var(--a-text);margin-bottom:6px}.a-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.a-grid-3{display:grid;grid-template-columns:2fr 1fr;gap:16px}.a-chart-placeholder{height:200px;display:flex;align-items:flex-end;gap:8px;padding:16px}.a-chart-bar{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--a-primary),#ef9a9a);opacity:.8;transition:opacity .2s;position:relative;min-height:4px}.a-chart-bar:hover{opacity:1}.a-chart-bar:after{content:attr(data-val);position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:10px;color:var(--a-text-muted);white-space:nowrap}@media (max-width: 1024px){.a-stats-grid{grid-template-columns:repeat(2,1fr)}.a-grid-3{grid-template-columns:1fr}}@media (max-width: 768px){.admin-sidebar{transform:translate(-100%)}.admin-app.sidebar-open .admin-sidebar{transform:none}.admin-main{margin-left:0}.a-stats-grid,.a-form-grid,.a-grid-2{grid-template-columns:1fr}}.menu-list-container{display:flex;flex-direction:column;gap:12px}.menu-item-card{display:flex;align-items:center;gap:16px;background:#fff;padding:16px 20px;border-radius:12px;border:1px solid var(--a-border);box-shadow:0 2px 8px #00000005;transition:all .2s ease;position:relative;overflow:hidden}.menu-item-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-2px);border-color:#d0d7e0}.menu-item-drag{display:flex;flex-direction:column;gap:4px}.menu-item-drag button{background:#f0f2f5;border:none;border-radius:6px;width:28px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--a-text-muted);transition:all .2s}.menu-item-drag button:hover:not(:disabled){background:var(--a-primary);color:#fff}.menu-item-drag button:disabled{opacity:.3;cursor:not-allowed}.menu-item-content{flex:1;display:grid;grid-template-columns:60px 1.5fr 2fr 1fr;gap:16px;align-items:center}.menu-input-wrapper{position:relative;display:flex;flex-direction:column}.menu-input-label{font-size:11px;font-weight:700;color:var(--a-text-muted);text-transform:uppercase;margin-bottom:6px;letter-spacing:.5px}.menu-input{width:100%;padding:10px 14px;border:1.5px solid var(--a-border);border-radius:8px;font-size:14px;font-family:var(--a-font);transition:all .2s;background:#fdfdfd}.menu-input:focus{border-color:var(--a-primary);background:#fff;box-shadow:0 0 0 3px #d32f2f1a;outline:none}.menu-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 14px top 50%;background-size:10px auto;padding-right:30px}.menu-item-actions{display:flex;align-items:center;justify-content:center;padding-top:18px}.menu-del-btn{background:#ffebee;color:var(--a-danger);border:none;width:36px;height:36px;border-radius:8px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.menu-del-btn:hover{background:var(--a-danger);color:#fff;transform:rotate(9deg) scale(1.05)}.menu-add-zone{display:flex;gap:16px;margin-top:24px;padding:24px;background:#f8f9fa;border:2px dashed #d0d7e0;border-radius:12px;align-items:center;justify-content:center}.menu-add-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;transition:all .2s;background:#fff;border:1px solid var(--a-border);box-shadow:0 2px 8px #0000000d}.menu-add-btn:hover{border-color:var(--a-primary);color:var(--a-primary);transform:translateY(-2px);box-shadow:0 6px 16px #d32f2f26}.menu-add-select{padding:12px 24px;border-radius:8px;font-weight:700;font-size:14px;border:1px solid var(--a-border);background:#fff;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000000d;color:var(--a-primary)}.menu-add-select:hover{border-color:var(--a-primary);box-shadow:0 6px 16px #d32f2f26}.menu-add-select:focus{outline:none}.campaign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:16px}.camp-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #0000000f;border:1px solid var(--a-border);transition:all .3s ease;position:relative;display:flex;flex-direction:column}.camp-card:hover{box-shadow:0 12px 32px #0000001f;transform:translateY(-4px)}.camp-card-banner{height:140px;background-size:cover;background-position:center;position:relative}.camp-card-banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}.camp-card-status{position:absolute;top:12px;right:12px;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;z-index:2;box-shadow:0 2px 8px #0003}.camp-card-status.active{background:#4caf50;color:#fff}.camp-card-status.inactive{background:#9e9e9e;color:#fff}.camp-card-content{padding:20px;flex:1;display:flex;flex-direction:column}.camp-card-title{font-size:18px;font-weight:800;color:var(--a-text);margin-bottom:8px}.camp-card-slug{font-size:13px;color:var(--a-text-muted);margin-bottom:16px;display:flex;align-items:center;gap:6px}.camp-card-slug i{font-size:14px}.camp-card-dates{display:flex;align-items:center;gap:12px;font-size:13px;color:#555;background:#f8f9fa;padding:10px 14px;border-radius:8px;margin-bottom:16px}.camp-card-dates span{font-weight:600}.camp-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--a-border);padding-top:16px}.camp-card-stats{font-size:13px;font-weight:700;color:var(--a-primary);display:flex;align-items:center;gap:6px}.camp-card-actions button{padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.camp-btn-edit{background:#e3f2fd;color:#1565c0}.camp-btn-edit:hover{background:#1565c0;color:#fff}.camp-btn-del{background:#ffebee;color:#c62828;margin-left:8px}.camp-btn-del:hover{background:#c62828;color:#fff}.camp-modal{max-width:900px!important;width:90%!important;height:90vh}.camp-modal-body{padding:0;display:flex;background:#f4f6f8}.camp-modal-sidebar{width:320px;background:#fff;padding:24px;border-right:1px solid var(--a-border);overflow-y:auto}.camp-modal-main{flex:1;padding:24px;overflow-y:auto}.camp-section-title{font-size:15px;font-weight:800;color:var(--a-text);margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--a-border)}.product-picker-container{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #0000000a}.product-picker-search{display:flex;align-items:center;background:#f8f9fa;border:1.5px solid var(--a-border);border-radius:8px;padding:0 16px;margin-bottom:16px;transition:all .2s}.product-picker-search:focus-within{border-color:var(--a-primary);background:#fff;box-shadow:0 0 0 3px #d32f2f1a}.product-picker-search input{width:100%;padding:14px 0;border:none;background:transparent;font-size:15px;font-family:var(--a-font);outline:none}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;max-height:250px;overflow-y:auto;padding:4px}.picker-item{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--a-border);border-radius:8px;cursor:pointer;transition:all .2s}.picker-item:hover{border-color:var(--a-primary);background:#fff5f5}.picker-item img{width:40px;height:40px;object-fit:cover;border-radius:6px}.picker-item-info{flex:1;overflow:hidden}.picker-item-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-item-price{font-size:12px;color:var(--a-primary);font-weight:700;margin-top:2px}.selected-products-list{margin-top:24px}.sp-row{display:flex;align-items:center;padding:16px;background:#fff;border:1px solid var(--a-border);border-radius:12px;margin-bottom:12px;box-shadow:0 2px 6px #00000005;transition:all .2s}.sp-row:hover{border-color:#d0d7e0;box-shadow:0 6px 16px #0000000f}.sp-image{width:50px;height:50px;object-fit:cover;border-radius:8px;margin-right:16px}.sp-info{flex:2;min-width:0}.sp-name{font-size:14px;font-weight:700;color:var(--a-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.sp-original-price{font-size:12px;color:var(--a-text-muted);text-decoration:line-through}.sp-inputs{flex:3;display:flex;gap:16px;align-items:center}.sp-input-group{display:flex;flex-direction:column;gap:4px}.sp-input-group label{font-size:11px;font-weight:700;color:var(--a-text-muted);text-transform:uppercase}.sp-input-group input{width:100px;padding:8px 12px;border:1.5px solid var(--a-border);border-radius:6px;font-family:var(--a-font);font-weight:700;font-size:14px}.sp-input-group input:focus{border-color:var(--a-primary);outline:none}.sp-input-group input.sp-price{color:var(--a-primary);width:130px}.sp-actions{flex:0 0 40px;display:flex;justify-content:flex-end}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #d32f2f;--primary-dark: #b71c1c;--primary-light: #ef5350;--accent: #ff6f00;--accent-light: #ffa726;--gold: #f9a825;--text-primary: #1a1a2e;--text-secondary: #555;--text-muted: #999;--bg-light: #f8f6f3;--bg-white: #ffffff;--bg-card: #fff;--border: #e8e0d8;--border-light: #f0ebe4;--shadow-sm: 0 1px 4px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.12);--shadow-lg: 0 8px 32px rgba(0,0,0,.16);--shadow-card: 0 2px 12px rgba(0,0,0,.08);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--font: "Be Vietnam Pro", sans-serif;--header-height: 130px;--transition: all .25s ease;--container-max: 1280px}html{scroll-behavior:smooth}body{font-family:var(--font);font-size:14px;color:var(--text-primary);background:var(--bg-light);line-height:1.6;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit;transition:var(--transition)}img{max-width:100%;display:block}ul{list-style:none}button{cursor:pointer;font-family:var(--font);border:none;outline:none;background:none}input,textarea,select{font-family:var(--font);outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.container{max-width:var(--container-max);margin:0 auto;padding:0 16px}.section{padding:32px 0}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-title h2{font-size:20px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.5px;position:relative;padding-left:14px}.section-title h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:24px;background:var(--primary);border-radius:2px}.section-title a{font-size:13px;color:var(--primary);font-weight:500;display:flex;align-items:center;gap:4px;padding:6px 14px;border:1px solid var(--primary);border-radius:20px;transition:var(--transition)}.section-title a:hover{background:var(--primary);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.product-grid-4{grid-template-columns:repeat(4,1fr)}.product-grid-6{grid-template-columns:repeat(6,1fr)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;transition:var(--transition);cursor:pointer;border:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover{background:var(--primary);color:#fff}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:#e65100;transform:translateY(-1px)}.btn-lg{padding:14px 28px;font-size:16px;border-radius:var(--radius-lg)}.btn-sm{padding:6px 14px;font-size:12px;border-radius:var(--radius-sm)}.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:700}.badge-sale{background:var(--primary);color:#fff}.badge-new{background:#43a047;color:#fff}.badge-hot{background:var(--accent);color:#fff}.stars{display:flex;gap:2px;color:var(--gold);font-size:12px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.form-control{width:100%;padding:10px 14px;border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:14px;color:var(--text-primary);background:#fff;transition:var(--transition)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #d32f2f1a}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);padding:12px 0}.breadcrumb a:hover{color:var(--primary)}.breadcrumb span{color:var(--text-muted)}.page-layout{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:start}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin:40px auto}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state svg{margin:0 auto 16px;opacity:.4}.empty-state h3{font-size:18px;margin-bottom:8px;color:var(--text-secondary)}.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 20px;background:#333;color:#fff;border-radius:var(--radius-md);font-size:14px;font-weight:500;box-shadow:var(--shadow-lg);animation:slideInRight .3s ease,fadeOut .3s ease 2.7s forwards;min-width:260px;display:flex;align-items:center;gap:10px}.toast.success{background:#2e7d32}.toast.error{background:var(--primary-dark)}.toast.info{background:#1565c0}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0;pointer-events:none}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:800;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.price-current{color:var(--primary);font-size:18px;font-weight:700}.price-original{color:var(--text-muted);font-size:13px;text-decoration:line-through}.price-discount{color:#fff;background:var(--primary);font-size:11px;font-weight:700;padding:2px 6px;border-radius:3px}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;padding:24px 0}.page-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:#fff}.page-btn:hover,.page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:20px;gap:0}.tab-btn{padding:10px 24px;font-size:14px;font-weight:600;color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:var(--transition);cursor:pointer}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-btn:hover{color:var(--primary)}@media (max-width: 1024px){.product-grid{grid-template-columns:repeat(4,1fr)}.product-grid-6{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.product-grid,.product-grid-4,.product-grid-6{grid-template-columns:repeat(2,1fr)}.page-layout{grid-template-columns:1fr}.section-title h2{font-size:16px}}@media (max-width: 480px){.container{padding:0 12px}}
