/* ============================================================
   HOME - bo cuc trang chu, slider, section, sidebar, promo
   ============================================================ */

/* ===== HOMEPAGE LAYOUT (full-width, khong con menu trai) ===== */
.homepage-layout{width:100%}
.homepage-layout .right-sidebar{display:none}


/* ===== BANNER SLIDER ===== */
.banner-slider{border-radius:var(--radius);overflow:hidden;position:relative;height:440px;width:100%}
.slides-container{display:flex;height:100%;transition:transform .5s ease}
.slide{
    min-width:100%;height:100%;
    display:flex;align-items:center;
    padding:0 56px;gap:0;
    flex-shrink:0;
    position:relative;overflow:hidden;
}
.slide-1{background:linear-gradient(135deg,#1c0306 0%,#5e0d16 40%,#b81222 66%,#ec1330 100%)}
.slide-2{background:linear-gradient(135deg,#2a0608 0%,#7a0c18 42%,#c41024 72%,#fb2740 100%)}
.slide-3{background:linear-gradient(135deg,#160305 0%,#971020 44%,#e01228 72%,#ff576b 100%)}

/* Slide anh full (banner tu DB) */
.slide-db{padding:0;background:#0d0d0d;cursor:pointer}
.slide-full-img{width:100%;height:100%;object-fit:cover;display:block}
.slide-db-caption{
    position:absolute;left:0;right:0;bottom:0;
    background:linear-gradient(transparent,rgba(0,0,0,.65));
    color:#fff;font-size:18px;font-weight:700;
    padding:40px 32px 20px;
}

/* Phan anh ben trai - chiem 35% */
.slide-img-wrap{
    width:35%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    height:100%;
}
.slide-bg-icon{
    font-size:210px;line-height:1;
    filter:drop-shadow(0 0 40px rgba(255,255,255,.25));
    animation:floatSlide 3s ease-in-out infinite;
}
@keyframes floatSlide{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Phan text ben phai - chiem 65% */
.slide-content{
    flex:1;
    padding-left:40px;
}
.slide-badge{display:inline-block;background:var(--red);color:white;font-size:13px;font-weight:700;padding:5px 18px;border-radius:20px;margin-bottom:16px;letter-spacing:1px}
.slide-title{font-size:44px;font-weight:800;color:white;line-height:1.15;margin-bottom:14px}
.slide-sub{font-size:17px;color:rgba(255,255,255,.85);margin-bottom:20px;line-height:1.5}
.slide-price-box{background:rgba(0,0,0,.3);border-radius:10px;padding:12px 24px;display:inline-block;margin-bottom:22px}
.slide-old-price{font-size:16px;color:rgba(255,255,255,.5);text-decoration:line-through}
.slide-price{font-size:34px;font-weight:800;color:#ffd700}
.btn-buy-slide{background:var(--aurora);color:white;border:none;border-radius:50px;padding:14px 36px;font-size:17px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:var(--aurora-glow)}
.btn-buy-slide:hover{filter:brightness(1.08) saturate(1.1);transform:scale(1.04)}
.slider-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.4);color:white;border:none;width:44px;height:44px;border-radius:50%;font-size:22px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background .2s}
.slider-btn:hover{background:rgba(0,0,0,.7)}
.slider-prev{left:10px}.slider-next{right:10px}
.slider-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:10}
.dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer;transition:all .3s}
.dot.active{background:white;width:20px;border-radius:4px}

/* Banner responsive - thu nho tren tablet/mobile */
@media (max-width:900px){
    .banner-slider{height:320px}
    .slide{padding:0 28px}
    .slide-bg-icon{font-size:140px}
    .slide-title{font-size:30px}
    .slide-sub{font-size:14px}
    .slide-price{font-size:26px}
    .btn-buy-slide{padding:11px 26px;font-size:14px}
}
@media (max-width:560px){
    .banner-slider{height:240px}
    .slide{padding:0 18px}
    .slide-img-wrap{display:none}
    .slide-content{padding-left:0}
    .slide-bg-icon{font-size:90px}
    .slide-title{font-size:23px}
    .slide-sub{font-size:12px;margin-bottom:12px}
    .slide-price{font-size:22px}
}

/* ===== CENTER ===== */
.center-content{display:flex;flex-direction:column;gap:10px;min-width:0;overflow:hidden}

/* ===== SUB BANNERS ===== */
.sub-banners{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sub-banner{border-radius:var(--radius);overflow:hidden;height:130px;cursor:pointer;display:flex;align-items:center;padding:18px 22px;transition:transform .2s;gap:12px}
.sub-banner:hover{transform:translateY(-2px)}
.sub-banner-1{background:linear-gradient(135deg,#5e0d16,#ec1330)}
.sub-banner-2{background:linear-gradient(135deg,#971020,#fb2740)}
.sub-banner-3{background:linear-gradient(135deg,#b81222,#ff5e6c)}
.sub-banner .title{font-size:15px;font-weight:700;color:white;line-height:1.35}
.sub-banner .price{font-size:20px;font-weight:800;color:#ffd700;margin-top:6px}
.sub-banner .emoji{font-size:56px;margin-left:auto}
.sub-banner{position:relative}
.sub-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

@media (max-width:900px){
    .sub-banner{height:110px;padding:14px 16px}
    .sub-banner .title{font-size:13px}
    .sub-banner .price{font-size:17px}
    .sub-banner .emoji{font-size:44px}
}
@media (max-width:560px){
    .sub-banners{grid-template-columns:1fr;gap:8px}
    .sub-banner{height:90px}
}

/* ===== CAT STRIP ===== */
.cat-strip{background:white;border-radius:var(--radius);padding:10px 0;box-shadow:var(--shadow)}
.cat-strip-list{display:flex;overflow-x:auto;gap:0;scrollbar-width:none}
.cat-strip-list::-webkit-scrollbar{display:none}
.cat-strip-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 14px;cursor:pointer;transition:all .15s;flex-shrink:0;border-radius:8px;min-width:80px;border:2px solid transparent}
.cat-strip-item:hover,.cat-strip-item.active{background:#fff0f1;border-color:#ffccd1}
.cat-strip-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;background:var(--gray-100)}
.cat-strip-name{font-size:11px;font-weight:600;text-align:center;color:var(--dark)}
.cat-strip-cnt{font-size:10px;color:var(--gray-400)}

/* ===== SECTION ===== */
.section{background:white;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.section-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--gray-200)}
.section-title{font-size:15px;font-weight:700;display:flex;align-items:center;gap:7px}
.section-filters{display:flex;gap:6px}
.filter-chip{padding:5px 12px;border:1.5px solid var(--gray-200);border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;background:white;color:var(--gray-500)}
.filter-chip.active,.filter-chip:hover{background:var(--red);color:white;border-color:var(--red)}
.section-viewall{font-size:12px;font-weight:700;color:var(--red);display:flex;align-items:center;gap:4px}

/* ===== PROMO BANNER ===== */
.promo-banner{background:var(--aurora);border-radius:var(--radius);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;box-shadow:var(--shadow);cursor:pointer}
.promo-banner-text .pb-tag{font-size:10px;font-weight:800;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}
.promo-banner-text .pb-title{font-size:18px;font-weight:800;color:white}
.promo-banner-text .pb-sub{font-size:12px;color:rgba(255,255,255,.85);margin-top:3px}
.promo-banner-right{display:flex;align-items:center;gap:16px}
.promo-banner-emoji{font-size:48px}
.pb-btn{background:white;color:var(--red);border:none;border-radius:50px;padding:9px 20px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}
.pb-btn:hover{background:#f5f5f5;transform:scale(1.03)}

/* ===== RIGHT SIDEBAR ===== */
.right-sidebar{display:flex;flex-direction:column;gap:10px}
.member-card{background:white;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.member-card h3{font-size:14px;font-weight:700;margin-bottom:6px}
.member-card p{font-size:12px;color:var(--gray-500);margin-bottom:12px}
.member-btns{display:flex;gap:7px;flex-direction:column}
.btn-member-login{background:var(--red);color:white;border:none;border-radius:50px;padding:9px;font-size:13px;font-weight:700;cursor:pointer;width:100%;font-family:inherit}
.btn-member-reg{background:white;color:var(--red);border:2px solid var(--red);border-radius:50px;padding:8px;font-size:13px;font-weight:700;cursor:pointer;width:100%;font-family:inherit}
.sidebar-section{background:white;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}
.sidebar-section h3{font-size:13px;font-weight:700;margin-bottom:10px;color:var(--dark);border-bottom:2px solid var(--red);padding-bottom:7px}
.sidebar-product{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--gray-200);cursor:pointer;transition:background .15s}
.sidebar-product:last-child{border-bottom:none}
.sidebar-product:hover .sp-name{color:var(--red)}
.sp-img{width:48px;height:48px;border-radius:6px;background:var(--gray-100);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;overflow:hidden}
.sp-img img{width:100%;height:100%;object-fit:contain}
.sp-name{font-size:12px;font-weight:600;line-height:1.4;margin-bottom:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sp-price{font-size:13px;font-weight:800;color:var(--price)}

/* ===== FLASH SALE IN SIDEBAR ===== */
.flash-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--gray-200);cursor:pointer}
.flash-item:last-child{border-bottom:none}
.flash-progress{height:4px;background:#f0f0f0;border-radius:2px;margin-top:4px;overflow:hidden}
.flash-fill{height:100%;background:linear-gradient(90deg,var(--amber),var(--coral));border-radius:2px}

/* ===== CAT TABS (Brand strip trang chu) ===== */
.cat-strip{background:white;border-radius:var(--radius);padding:8px 0;box-shadow:var(--shadow);overflow:hidden}
.cat-strip-scroll{display:flex;overflow-x:auto;gap:0;scrollbar-width:none;padding:0 8px}
.cat-strip-scroll::-webkit-scrollbar{display:none}
.cat-tab{
    display:flex;flex-direction:column;align-items:center;gap:5px;
    padding:8px 14px;cursor:pointer;transition:all .15s;flex-shrink:0;
    border-radius:8px;min-width:70px;border:2px solid transparent;
}
.cat-tab:hover,.cat-tab.active{background:#fff0f1;border-color:#ffccd1}
.cat-tab .icon{font-size:22px}
.cat-tab .name{font-size:11px;font-weight:600;text-align:center;color:var(--dark)}
.cat-tab .count{font-size:10px;color:var(--gray-400)}
/* Logo danh muc (vd Apple): hoa nen sang cua anh JPG vao nen trang -> bo khung/vien */
.cat-tab .cat-icon-img,
.promo-item-icon .cat-icon-img{mix-blend-mode:multiply}

/* ===== SECTION TABS & BUTTONS ===== */
.section-tabs{display:flex;gap:6px}
.section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--gray-200);flex-wrap:wrap;gap:8px}
.section-title{font-size:15px;font-weight:700;display:flex;align-items:center;gap:7px}
.tab-btn{
    padding:5px 13px;border:1.5px solid var(--gray-200);
    border-radius:20px;font-size:12px;font-weight:600;
    cursor:pointer;transition:all .15s;background:white;
    color:var(--gray-500);font-family:inherit;
}
.tab-btn.active,.tab-btn:hover{
    background:#fb2740;color:white;border-color:#fb2740;
}
.view-all-link{font-size:12px;font-weight:700;color:#fb2740}
.view-all-link:hover{text-decoration:underline}

/* ===== SERVICES BAR ===== */
.services-bar{background:white;border-radius:var(--radius);padding:12px 16px;box-shadow:var(--shadow)}
.services-list{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.service-item{
    display:flex;flex-direction:column;align-items:center;gap:4px;
    flex:1;min-width:80px;text-align:center;padding:8px;
    border-radius:8px;transition:background .15s;cursor:default;
}
.service-item:hover{background:var(--gray-100)}
.service-item .icon{font-size:22px}
.service-item .name{font-size:11px;font-weight:700;color:var(--dark)}
.service-item .desc{font-size:10px;color:var(--gray-400)}

/* ===== PROMO BANNER (ban cap nhat) ===== */
.promo-banner{
    background:var(--aurora);
    border-radius:var(--radius);padding:14px 24px;
    display:flex;align-items:center;justify-content:space-between;
    overflow:hidden;position:relative;box-shadow:var(--shadow);cursor:pointer;
}
.promo-banner-text h3{font-size:17px;font-weight:800;color:white;margin-bottom:4px}
.promo-banner-text p{font-size:12px;color:rgba(255,255,255,.85)}
.promo-banner-right{display:flex;align-items:center;gap:16px}
.promo-banner-emoji{font-size:48px}
.btn-promo{
    background:white;color:var(--red);border:none;border-radius:50px;
    padding:9px 20px;font-size:13px;font-weight:700;cursor:pointer;
    transition:all .2s;font-family:inherit;
}
.btn-promo:hover{background:#f5f5f5;transform:scale(1.03)}

/* ===== PROMO CARD (right sidebar) ===== */
.promo-card{background:white;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.promo-card-header{background:var(--red);color:white;padding:11px 14px;font-size:13px;font-weight:700}
.promo-list{padding:8px 0}
.promo-section-title{font-size:10px;font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.5px;padding:8px 14px 4px}
.promo-item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;transition:background .15s}
.promo-item:hover{background:var(--gray-100)}
.promo-item-icon{font-size:20px;width:28px;text-align:center;flex-shrink:0}
.promo-item-info{flex:1;min-width:0}
.promo-item-title{font-size:12px;font-weight:600;color:var(--dark)}
.promo-item-sub{font-size:11px;color:var(--gray-400);margin-top:1px}
.promo-item-tag{background:var(--red);color:white;font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px;flex-shrink:0}

/* ============================================================
   ACCENT - diem nhan mau phu (teal van la chu dao)
   ============================================================ */

/* Thanh mau ben trai tieu de section - mac dinh teal,
   them class .acc-amber / .acc-indigo / .acc-coral de doi mau */
.section-title{position:relative;padding-left:13px}
.section-title::before{
    content:'';position:absolute;left:0;top:50%;
    transform:translateY(-50%);
    width:4px;height:18px;border-radius:3px;
    background:var(--red);
}
.section-title.acc-amber::before{background:var(--amber)}
.section-title.acc-indigo::before{background:var(--indigo)}
.section-title.acc-coral::before{background:var(--coral)}

/* Banner Flash Sale - gradient cam-vang noi bat */
.promo-flash{background:linear-gradient(135deg,var(--coral),var(--amber))!important}
.promo-flash .btn-promo{color:var(--coral-dark)}

/* ===== KHU FLASH SALE (deal chon loc) ===== */
.flash-section{overflow:hidden}
.flash-bar{
    display:flex;align-items:center;gap:14px;
    padding:11px 16px;
    background:linear-gradient(100deg,var(--coral) 0%,#ff8b3d 55%,var(--amber) 100%);
}
.flash-bar-title{font-size:16px;font-weight:800;color:#fff;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.15)}
.flash-countdown{
    display:flex;align-items:center;gap:6px;
    font-size:12px;font-weight:600;color:#fff;
}
.flash-countdown span{
    background:rgba(0,0,0,.28);color:#fff;font-weight:800;
    padding:3px 8px;border-radius:5px;font-variant-numeric:tabular-nums;
    letter-spacing:1px;min-width:74px;text-align:center;
}
.flash-viewall{margin-left:auto;font-size:12px;font-weight:700;color:#fff;white-space:nowrap}
.flash-viewall:hover{text-decoration:underline}
/* Dai cuon ngang + nut dieu huong */
.flash-scroller{position:relative}
.flash-track{
    display:flex;overflow-x:auto;scroll-behavior:smooth;
    scrollbar-width:none;-ms-overflow-style:none;
}
.flash-track::-webkit-scrollbar{display:none}
.flash-track .product-card{flex:0 0 20%;min-width:150px;border-bottom:none}
.flash-track .product-card:last-child{border-right:none}
/* Card trong flash sale noi bat hon mot chut */
.flash-track .pc-price{color:var(--coral-dark)}
.flash-track .flash-progress{margin-top:7px}
.flash-track .flash-sold{font-size:10px;font-weight:700;color:var(--coral-dark);margin-top:3px}
.flash-nav{
    position:absolute;top:50%;transform:translateY(-50%);z-index:5;
    width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;
    background:#fff;color:var(--coral-dark);font-size:22px;line-height:1;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 3px 12px rgba(0,0,0,.18);transition:all .2s;
}
.flash-nav:hover{background:var(--coral);color:#fff}
.flash-nav-prev{left:6px}
.flash-nav-next{right:6px}

/* Cat-tab trang chu - vien active xoay vong mau cho sinh dong */
.cat-strip-scroll .cat-tab:nth-child(4n+2):hover,
.cat-strip-scroll .cat-tab:nth-child(4n+2).active{background:var(--coral-tint);border-color:var(--coral)}
.cat-strip-scroll .cat-tab:nth-child(4n+3):hover,
.cat-strip-scroll .cat-tab:nth-child(4n+3).active{background:var(--amber-tint);border-color:var(--amber)}
.cat-strip-scroll .cat-tab:nth-child(4n+4):hover,
.cat-strip-scroll .cat-tab:nth-child(4n+4).active{background:var(--indigo-tint);border-color:var(--indigo)}
