.sw-directory { max-width: 900px; margin: 0 auto; }
.sw-brand { display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px solid #eee; }
.sw-suggest { margin-top: 30px; padding:10px; background:#f9f9f9; }

.sw-product-brands {
    list-style: none;
    padding: 0;
   
}

.sw-product-brands li {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

/* .sw-product-brands li img.sw-brand-thumb {
    max-width: 80px;
    height: auto;
    margin-right: 10px;
    border: 1px solid #ddd;
    padding: 2px;
    border-radius: 4px;
} */

.sw-login-overlay {
    position: fixed;
    top:0; left:0; width:100%; height:100%;
    background: rgba(0,0,0,0.5);
    z-index: 999;
}
.sw-login-content {
    position: fixed;
    top:50%; left:50%;
    transform: translate(-50%, -50%);
    background:#fff;
    padding:20px;
    z-index:1000;
    border-radius:8px;
}
.sw-login-close, .sw-login-cancel {
    margin-top:10px;
}

canvas#confetti-canvas { width: 100%; height: 100%; }
.confetti_wrap { position: absolute; top: 0; left: 0; pointer-events: none; width: 100%; height: 100%; overflow: hidden; }
.common_notification_box { position: relative; }



        .sw-product-item { cursor: pointer; padding:5px; }
        /* .sw-product-item.selected { font-weight:bold; background:#f0f0f0; } */
        .sw-product-brands li { list-style:none; margin-bottom:10px; display:flex; align-items:center; }
        /* .sw-product-brands li img { max-width:80px; margin-right:10px; border:1px solid #ddd; border-radius:4px; } */

.sw_home_catalog {}
.sw_product_tab { display: flex; justify-content: center;}
.sw_product_tab > ul {list-style: none; margin: 0; padding: 0; display: flex;gap: 0 1rem; justify-content: center;}
.sw_product_tab > ul li { transition: 0.5s; background-color: #fff; border: solid 1px #000; padding: 0.8rem 3rem; font-size: 1.5rem; font-weight: 700; border-radius: 100px; color: #000;}
.sw_product_tab > ul .sw-product-item.selected {background-color: #000; color: var(--white); }
.sw_product_tab > ul .sw-product-item:hover {background-color: #000; color: var(--white); }

.home_product_list {display: grid ; grid-template-columns: repeat(4, 1fr); grid-gap:2rem; }


.product_box { box-shadow: 0 12px 16px -4px rgba(10, 13, 18, 0.08), 0 4px 6px -2px rgba(10, 13, 18, 0.03);border-radius: 30px;
background: #FFF;     overflow: hidden;     width: 100%;
    height: 100%;     display: flex
;
    flex-direction: column;}
    .product_box_inner {    padding: 1.5rem 1.5rem 1rem 1.5rem;    flex-grow: 1;}
.product_img img { aspect-ratio: 234 / 201; object-fit: scale-down; width: 100%;}
.product_title a { text-align: center; display: block; text-decoration: none;     font-family: "Encode Sans Condensed", sans-serif;
    font-weight: 600; color: #000; font-size: 1.25rem; pointer-events: none;}
.product_bottom_share {background-color: #007335; padding: 1rem; display: flex; color: #fff; justify-content: space-between;}
.product_bottom_share span {font-weight: 500; margin-left: 0.5rem;}

.sw-thumb, .voted {all: unset;}
.visionSwiper  .swiper-slide { background-color: var(--white);}
.product_bottom_info {display: flex ; justify-content: space-between; border-top: solid 2px #b3b3b3; padding-top: 0.5rem; margin-top: 1rem;}
.product_bottom_info .sw-voter-more { background-color: #E9FAF1;border-radius: 8px; padding: 4px; display: flex;
flex-direction: column;
justify-content: center;
align-items: center; }
.product_bottom_info .remain_number { font-weight: 600; color: var(--theme-color-green); font-size: 1.25rem;}
.product_bottom_info span:not(.remain_number ) { font-size: 0.875rem; font-weight: 300; font-style: italic;}
.product_img {
    margin-bottom: 0.5rem;
}
.sw-voters {
  display: flex;
  align-items: center;
}
.sw-product-brands {margin-top: 2.5rem; margin-left: 0;}
.sw-voter-thumb {
  width: 28px;       
  height: 28px;
  border-radius: 50%;  
  object-fit: cover;
  border: 2px solid #fff;  
  margin-left: -10px; 
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}

.sw-voter-thumb:first-child {
  margin-left: 0;  
}

.sw-voter-thumb:hover {
  transform: scale(1.1);  
  z-index: 2;
}


.login_model_design .sw-login-content { min-width: 28rem; text-align: center;}
.login_model_design .sw-login-content h2 {    font-size: 1.5rem;
    border-bottom: solid 1px #ccc;
    padding-bottom: 1rem;}
.login_model_design  .sw-login-close {all: unset; position: absolute; right: -9px; top: -12px;     background-color: var(--theme-color-orange); height: 2rem; width: 2rem; border-radius: 999px; display: inline-flex ; align-items: center; justify-content: center; cursor: pointer;}
.login_model_design  .sw-login-close  svg { height: 1rem;}
.login_model_design  .sw-login-close  svg path {    fill: #fff;}
.sw-login-cancel { all: unset; }
.login_model_design div.nsl-container[data-align="left"] { text-align: center;}
