/* Quy tắc chỉ dành cho trang cửa hàng công khai. */
.shop-menu-toggle,.shop-sidebar-header{display:none}
.shop-sidebar-overlay{display:none}
.shop-login-link{display:inline-flex;margin-top:1rem;color:var(--primary);font-weight:700;text-decoration:none}
.shop-login-link:hover{text-decoration:underline}
/* Keep the storefront search in the header and let it use the available space. */
.header-container{flex-wrap:nowrap}
.header-container>.logo{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden}
.header-container>.search-box{flex:1 1 0;min-width:0;width:auto}
.header-container>.header-actions{flex:0 0 auto}
@media(max-width:760px){
  .header-container{display:grid;grid-template-columns:36px minmax(0,1fr) 38px;grid-template-areas:"menu search actions";flex-wrap:nowrap;gap:.6rem;min-height:58px;padding:.55rem .7rem}
  .logo{display:none}
  .shop-menu-toggle{grid-area:menu;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;color:var(--gray-800);cursor:pointer}
  .shop-menu-toggle svg{width:19px;height:19px}
  .header-container>.search-box{grid-area:search;display:flex;flex:1 1 0;width:100%;min-width:0;max-width:none;margin:0;order:initial}
  .header-container>.search-box .search-input{height:38px;padding:.45rem 2.1rem .45rem 1.85rem;font-size:.82rem}
  .header-container>.search-box .search-input::placeholder{color:transparent}
  .header-container>.search-box .search-icon{left:.55rem}
  .header-container>.search-box .search-icon svg{width:15px;height:15px}
  .header-container>.search-box .search-camera-btn{right:.3rem;padding:.2rem}
  .header-container>.search-box .search-camera-btn svg{width:15px;height:15px}
  .header-container>.header-actions{grid-area:actions;display:flex;justify-content:flex-end;gap:0}
  .header-actions .cart-btn{width:38px;height:38px;padding:0;display:grid;place-items:center;border-radius:10px}
  .header-actions .cart-btn>span:first-of-type{display:none}
  .header-actions .cart-btn>svg{width:19px;height:19px}
  .header-actions .cart-count{position:absolute;right:-5px;top:-6px;min-width:17px;padding:.08rem .28rem;font-size:.65rem}
  .mobile-sidebar-actions{display:none}
  .shop-layout{grid-template-columns:minmax(0,1fr)!important}
  .shop-sidebar{position:fixed!important;z-index:1002;inset:0 auto 0 0;width:min(330px,88vw);max-width:none;height:100dvh;max-height:none;overflow:auto;margin:0;padding:1rem;border-radius:0;transform:translate3d(-100%,0,0);transition:transform .2s cubic-bezier(.2,.75,.25,1);box-shadow:0 12px 28px #0f172a24;background:#fff;backface-visibility:hidden;will-change:transform}
  .shop-sidebar.mobile-open{transform:translate3d(0,0,0)}
  .shop-sidebar-overlay{display:block;position:fixed;z-index:1001;inset:0;background:rgb(15 23 42 / .48);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
  .shop-sidebar-overlay.open{opacity:1;visibility:visible}
  .shop-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:.25rem 0 1rem;border-bottom:1px solid var(--gray-200);margin-bottom:1rem;color:var(--gray-900)}
  .shop-sidebar-close{border:0;background:transparent;font-size:1.8rem;line-height:1;color:var(--gray-600);cursor:pointer}
  body.shop-sidebar-open{overflow:hidden;overscroll-behavior:none}
}
@media(max-width:640px){
  .header-container{display:grid!important;grid-template-columns:36px minmax(0,1fr) 38px!important;grid-template-areas:"menu search actions"!important;flex-wrap:nowrap!important}
  .header-container>.search-box{grid-area:search!important;width:auto!important;min-width:0!important;max-width:none!important;order:initial!important}
}
@media(prefers-reduced-motion:reduce){.shop-sidebar,.shop-sidebar-overlay{transition:none}}
