:root{
    --max:620px;
    --line:#e8e8e5;
    --safe:env(safe-area-inset-bottom,0px);
}

*{
    box-sizing:border-box;
    -webkit-tap-highlight-color:transparent;
}

html,
body{
    margin:0;
    min-height:100%;
    background:#e5e5e3;
    color:#171717;
    font-family:-apple-system,BlinkMacSystemFont,"Pretendard","Noto Sans KR",sans-serif;
}

body.modal-open{
    overflow:hidden;
}

a{
    color:inherit;
    text-decoration:none;
}

button,
input,
select{
    font:inherit;
}

.v2live-shell{
    width:100%;
    max-width:var(--max);
    min-height:100vh;
    margin:0 auto;
    padding-bottom:calc(82px + var(--safe));
    background:#f7f7f5;
    box-shadow:0 0 40px rgba(0,0,0,.1);
}

.v2live-preview{
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:35px;
    padding:7px 14px;
    background:#111;
    color:#fff;
    font-size:10px;
}

.v2live-preview a{
    padding:4px 8px;
    border:1px solid rgba(255,255,255,.35);
    border-radius:999px;
}

.v2live-appbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:49px;
    padding:8px 14px;
    background:#1a1a1a;
    color:#fff;
}

.v2live-appbar > div{
    display:flex;
    align-items:center;
    gap:9px;
}

.v2live-appbar b{
    display:grid;
    place-items:center;
    width:31px;
    height:31px;
    border-radius:9px;
    background:#fff;
    color:#111;
}

.v2live-appbar span{
    font-size:10px;
}

.v2live-appbar strong{
    display:block;
    margin-top:2px;
    color:#d2af70;
    font-size:11px;
}

.v2live-appbar > a{
    padding:7px 11px;
    border-radius:9px;
    background:#fff;
    color:#111;
    font-size:10px;
    font-weight:800;
}

.v2live-header{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(255,255,255,.97);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(18px);
}

.v2live-head-tabs,
.v2live-top-category,
.v2live-filter-buttons{
    display:flex;
    gap:20px;
    overflow-x:auto;
    padding:11px 14px 7px;
    scrollbar-width:none;
}

.v2live-head-tabs::-webkit-scrollbar,
.v2live-top-category::-webkit-scrollbar,
.v2live-filter-buttons::-webkit-scrollbar{
    display:none;
}

.v2live-head-tabs a{
    position:relative;
    flex:none;
    padding:4px 0 8px;
    color:#777;
    font-size:12px;
    font-weight:700;
    white-space:nowrap;
}

.v2live-head-tabs a.active{
    color:#111;
}

.v2live-head-tabs a.active::after{
    content:"";
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:2px;
    background:#111;
}

.v2live-search{
    display:flex;
    align-items:center;
    gap:8px;
    margin:6px 14px 11px;
    height:46px;
    padding:0 10px 0 13px;
    border:1px solid #e4e4e1;
    border-radius:14px;
    background:#f4f4f2;
}

.v2live-search input{
    min-width:0;
    flex:1;
    border:0;
    outline:0;
    background:transparent;
    font-size:12px;
}

.v2live-search button{
    height:30px;
    padding:0 11px;
    border:0;
    border-radius:9px;
    background:#111;
    color:#fff;
    font-size:9px;
    font-weight:800;
}

.v2live-top-category{
    gap:0;
    padding:0 14px;
    background:#fff;
}

.v2live-top-category a{
    position:relative;
    flex:none;
    min-width:58px;
    padding:14px 8px 12px;
    text-align:center;
    color:#777;
    font-size:10px;
    font-weight:700;
}

.v2live-top-category a.active{
    color:#111;
    font-weight:900;
}

.v2live-top-category a.active::after{
    content:"";
    position:absolute;
    right:10px;
    bottom:0;
    left:10px;
    height:2px;
    background:#111;
}

.v2live-filter-buttons{
    gap:7px;
    padding-top:10px;
    padding-bottom:10px;
    background:#fff;
    border-bottom:1px solid var(--line);
}

.v2live-filter-buttons button{
    display:flex;
    align-items:center;
    gap:7px;
    flex:none;
    min-height:34px;
    padding:0 12px;
    border:1px solid #ddd;
    border-radius:9px;
    background:#fff;
    font-size:9px;
    font-weight:750;
}

.v2live-active-filters{
    display:flex;
    gap:6px;
    overflow-x:auto;
    padding:8px 14px;
    scrollbar-width:none;
}

.v2live-active-filters:empty{
    display:none;
}

.v2live-active-filters button{
    flex:none;
    padding:7px 9px;
    border:0;
    border-radius:8px;
    background:#111;
    color:#fff;
    font-size:8px;
}

.v2live-summary{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:12px 14px;
    font-size:10px;
}

.v2live-summary select{
    height:34px;
    padding:0 8px;
    border:1px solid #ddd;
    border-radius:8px;
    background:#fff;
    font-size:9px;
}

.v2live-products{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    padding:0 8px;
}

.v2live-card{
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
}

.v2live-card-image{
    position:relative;
    aspect-ratio:1/1;
    overflow:hidden;
    background:#eee;
}

.v2live-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.v2live-card-badge{
    position:absolute;
    top:8px;
    left:8px;
    z-index:2;
    padding:4px 6px;
    border-radius:7px;
    background:rgba(0,0,0,.72);
    color:#fff;
    font-size:7px;
    font-weight:900;
}

.v2live-card-info{
    padding:9px 9px 11px;
}

.v2live-card-brand{
    display:block;
    overflow:hidden;
    color:#8f6d39;
    font-size:8px;
    font-weight:850;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.v2live-card-title{
    display:-webkit-box;
    min-height:35px;
    margin-top:5px;
    overflow:hidden;
    font-size:10px;
    line-height:1.5;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.v2live-card-price{
    display:block;
    margin-top:7px;
    font-size:11px;
    font-weight:900;
}

.v2live-card-sub{
    display:block;
    margin-top:4px;
    overflow:hidden;
    color:#999;
    font-size:8px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.v2live-loading,
.v2live-empty{
    padding:55px 20px;
    text-align:center;
    color:#888;
    font-size:11px;
}

.v2live-more{
    display:block;
    width:calc(100% - 28px);
    height:46px;
    margin:18px 14px 25px;
    border:1px solid #ddd;
    border-radius:12px;
    background:#fff;
    color:#111;
    font-size:11px;
    font-weight:850;
}

.v2live-more[hidden]{
    display:none;
}

.v2live-bottom{
    position:fixed;
    right:0;
    bottom:0;
    left:0;
    z-index:300;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    width:100%;
    max-width:var(--max);
    min-height:65px;
    margin:0 auto;
    padding:7px 5px calc(7px + var(--safe));
    background:rgba(255,255,255,.97);
    border-top:1px solid rgba(0,0,0,.07);
    box-shadow:0 -8px 25px rgba(0,0,0,.07);
}

.v2live-bottom a,
.v2live-bottom button{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:3px;
    border:0;
    background:transparent;
    color:#888;
    font-size:8px;
    font-weight:750;
}

.v2live-bottom span{
    font-size:17px;
}

.v2live-bottom .active{
    color:#111;
}

.v2live-modal{
    position:fixed;
    inset:0;
    z-index:1000;
    visibility:hidden;
    opacity:0;
    transition:opacity .2s ease,visibility .2s ease;
}

.v2live-modal.open{
    visibility:visible;
    opacity:1;
}

.v2live-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.52);
}

.v2live-modal-panel{
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:var(--max);
    height:min(78vh,720px);
    margin:0 auto;
    border-radius:19px 19px 0 0;
    background:#fff;
    transform:translateY(105%);
    transition:transform .28s cubic-bezier(.22,.61,.36,1);
}

.v2live-modal.open .v2live-modal-panel{
    transform:translateY(0);
}

.v2live-modal-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex:none;
    min-height:55px;
    padding:0 16px;
    border-bottom:1px solid var(--line);
}

.v2live-modal-head strong{
    font-size:14px;
}

.v2live-modal-head button{
    width:35px;
    height:35px;
    border:0;
    background:transparent;
    font-size:23px;
}

.v2live-modal-tabs{
    display:flex;
    flex:none;
    gap:4px;
    overflow-x:auto;
    padding:10px 16px;
    border-bottom:1px solid var(--line);
}

.v2live-modal-tabs button{
    flex:none;
    min-height:38px;
    padding:0 14px;
    border:0;
    border-radius:999px;
    background:#fff;
    color:#888;
    font-size:10px;
    font-weight:750;
}

.v2live-modal-tabs button.active{
    background:#111;
    color:#fff;
}

.v2live-modal-body{
    min-height:0;
    flex:1;
    overflow-y:auto;
    padding:18px 16px 105px;
}

.v2live-panel{
    display:none;
}

.v2live-panel.active{
    display:block;
}

.v2live-panel h3{
    margin:0 0 14px;
    font-size:13px;
}

.v2live-option-search{
    margin-bottom:12px;
}

.v2live-option-search input{
    width:100%;
    height:42px;
    padding:0 12px;
    border:1px solid #ddd;
    border-radius:10px;
    outline:0;
    font-size:10px;
}

.v2live-chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.v2live-chips button{
    min-height:36px;
    padding:0 12px;
    border:1px solid #e0e0dd;
    border-radius:999px;
    background:#fff;
    color:#333;
    font-size:9px;
}

.v2live-chips button.active{
    border-color:#111;
    background:#111;
    color:#fff;
}

.v2live-chips small{
    margin-left:4px;
    opacity:.55;
    font-size:8px;
}

.v2live-modal-footer{
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    display:grid;
    grid-template-columns:1fr 1.35fr;
    gap:10px;
    padding:11px 16px calc(11px + var(--safe));
    border-top:1px solid var(--line);
    background:#fff;
}

.v2live-modal-footer button{
    min-height:46px;
    border-radius:10px;
    font-size:10px;
    font-weight:900;
}

#v2FilterReset{
    border:1px solid #ddd;
    background:#fff;
}

#v2FilterApply{
    border:0;
    background:#050505;
    color:#fff;
}

@media (min-width:621px){
    .v2live-shell{
        margin-top:20px;
        margin-bottom:20px;
        border-radius:24px;
        overflow:hidden;
    }
}

/* V2 FIXED BOTTOM NAV START */
.bottom-nav {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 9999 !important;

    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

    width: 100% !important;
    max-width: var(--max) !important;
    min-height: 66px !important;
    margin: 0 auto !important;

    padding:
        6px
        5px
        calc(6px + env(safe-area-inset-bottom, 0px)) !important;

    border-top: 1px solid rgba(0,0,0,.08) !important;
    background: rgba(255,255,255,.98) !important;

    box-shadow:
        0 -8px 26px rgba(0,0,0,.08) !important;

    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
}

.bottom-nav__item {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 3px !important;

    min-width: 0 !important;
    min-height: 54px !important;

    padding: 5px 2px !important;

    border: 0 !important;
    background: transparent !important;

    color: #8a8a8a !important;

    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    cursor: pointer !important;
    pointer-events: auto !important;
}

.bottom-nav__item svg {
    width: 23px !important;
    height: 23px !important;
    flex: none !important;
}

.bottom-nav__item > span {
    font-size: 9px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.bottom-nav__item.active {
    color: #111 !important;
}

.bottom-nav__item.active::before {
    content: "";
    position: absolute;
    top: -6px;
    left: 50%;

    width: 32px;
    height: 3px;

    border-radius: 0 0 4px 4px;
    background: #111;

    transform: translateX(-50%);
}

.nav-special-item {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.nav-special-bar {
    position: absolute;
    top: -6px;
    left: 50%;

    width: 28px;
    height: 3px;

    overflow: hidden;

    border-radius: 0 0 4px 4px;
    background: linear-gradient(90deg, #6366f1, #8b5cf6);

    transform: translateX(-50%);
}

.nav-special-bar::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;

    width: 40%;
    height: 100%;

    background: rgba(255,255,255,.65);

    animation: v2-nav-shine 2.5s ease-in-out infinite;
}

.nav-special-dot {
    position: absolute;
    top: 6px;
    right: calc(50% - 17px);

    width: 6px;
    height: 6px;

    border: 1.5px solid #fff;
    border-radius: 50%;

    background: #fbbf24;

    animation: v2-nav-dot 1.8s ease-in-out infinite;
}

.nav-special-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 24px;
    height: 24px;

    margin-bottom: 3px;

    color: #6366f1;
}

.nav-special-icon svg {
    width: 24px !important;
    height: 24px !important;
}

.nav-special-label {
    color: #6f57d9 !important;
    font-weight: 800 !important;
}

@keyframes v2-nav-shine {
    0% {
        transform: translateX(-100%);
    }

    60%,
    100% {
        transform: translateX(220%);
    }
}

@keyframes v2-nav-dot {
    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: .45;
        transform: scale(.72);
    }
}

/* 상품이 하단 메뉴에 가리지 않게 */
.v2live-shell {
    padding-bottom:
        calc(92px + env(safe-area-inset-bottom, 0px)) !important;
}
/* V2 FIXED BOTTOM NAV END */


/* ========================================================
   V2 SHOP SEARCH + BOTTOM NAV FINAL RESET START
   ======================================================== */

/* 기존 검색 CSS의 영향을 받지 않도록 새 클래스만 사용 */
.v2shop-search-row {
    display: grid !important;
    grid-template-columns:
        minmax(0, 1fr)
        42px
        34px !important;
    align-items: center !important;
    gap: 7px !important;

    width: 100% !important;
    padding: 7px 14px 11px !important;
    margin: 0 !important;

    background: #fff !important;
}

.v2shop-search-form {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 8px 0 12px !important;

    border: 0 !important;
    border-radius: 10px !important;

    background: #f3f3f3 !important;
}

.v2shop-search-icon {
    display: block !important;
    flex: 0 0 18px !important;

    width: 18px !important;
    height: 18px !important;

    margin: 0 8px 0 0 !important;

    color: #999 !important;
}

.v2shop-search-form input {
    display: block !important;
    min-width: 0 !important;
    width: auto !important;
    height: 40px !important;
    flex: 1 1 auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    background: transparent !important;
    color: #222 !important;

    font-size: 12px !important;
    line-height: 40px !important;
}

.v2shop-search-form input::placeholder {
    color: #999 !important;
}

.v2shop-text-search {
    display: none !important;
}

/* 텍스트 검색창 옆 사진검색 버튼 */
.v2shop-image-search {
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 42px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 12px !important;

    background: #44b87b !important;
    color: #fff !important;

    box-shadow: 0 3px 9px rgba(68,184,123,.24) !important;

    cursor: pointer !important;
    pointer-events: auto !important;
}

.v2shop-image-search svg {
    display: block !important;

    width: 21px !important;
    height: 21px !important;

    margin: 0 !important;

    overflow: visible !important;
}

.v2shop-ai-label {
    position: absolute !important;
    top: -5px !important;
    right: -4px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 17px !important;
    height: 14px !important;

    padding: 0 4px !important;

    border: 1.5px solid #fff !important;
    border-radius: 5px !important;

    background: #111 !important;
    color: #fff !important;

    font-size: 7px !important;
    font-weight: 900 !important;
    line-height: 12px !important;
}

/* 검색창 오른쪽 햄버거 */
.v2shop-head-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 34px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;
    color: #222 !important;

    cursor: pointer !important;
    pointer-events: auto !important;
}

.v2shop-head-menu svg {
    display: block !important;

    width: 22px !important;
    height: 22px !important;

    margin: 0 !important;
}

/* --------------------------------------------------------
   하단 내비: 이전 v2live-bottom CSS와 완전히 분리
   -------------------------------------------------------- */
.v2shop-bottom-nav {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 9999 !important;

    display: grid !important;
    grid-template-columns:
        repeat(5, minmax(0, 1fr)) !important;

    width: 100% !important;
    max-width: 620px !important;
    min-height: 62px !important;

    margin: 0 auto !important;

    padding:
        4px
        4px
        calc(4px + env(safe-area-inset-bottom, 0px)) !important;

    border: 0 !important;
    border-top: 1px solid #e7e7e7 !important;

    background: rgba(255,255,255,.98) !important;

    box-shadow: 0 -3px 13px rgba(0,0,0,.055) !important;

    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;

    overflow: visible !important;
}

/* a와 button을 완전히 같은 크기로 */
.v2shop-bottom-item {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 3px !important;

    min-width: 0 !important;
    width: 100% !important;
    min-height: 52px !important;
    height: 52px !important;

    margin: 0 !important;
    padding: 4px 2px !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;
    color: #999 !important;

    text-decoration: none !important;

    font-family: inherit !important;
    font-size: 8px !important;
    font-weight: 500 !important;
    line-height: 1 !important;

    cursor: pointer !important;
    pointer-events: auto !important;

    overflow: visible !important;
}

/* 기존 span 규칙 완전 차단 */
.v2shop-bottom-item > span {
    display: block !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    color: inherit !important;

    font-size: 8px !important;
    font-weight: 500 !important;
    line-height: 10px !important;

    white-space: nowrap !important;
}

/* 아이콘 크기를 정확히 22px로 고정 */
.v2shop-bottom-item > svg {
    display: block !important;
    flex: 0 0 22px !important;

    width: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;

    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;

    margin: 0 !important;
    padding: 0 !important;

    color: inherit !important;

    overflow: visible !important;

    transform: none !important;
}

/* 현재 SHOP */
.v2shop-bottom-item.active {
    color: #111 !important;
    font-weight: 800 !important;
}

.v2shop-bottom-item.active > span {
    font-weight: 800 !important;
}

/* 활성 탭 위의 짧은 검은 바 */
.v2shop-bottom-item.active::before {
    content: "" !important;

    position: absolute !important;
    top: -5px !important;
    left: 50% !important;

    display: block !important;

    width: 28px !important;
    height: 2px !important;

    border-radius: 0 0 3px 3px !important;

    background: #111 !important;

    transform: translateX(-50%) !important;
}

/* 포인트 탭 */
.v2shop-point-item {
    color: #6366f1 !important;
}

.v2shop-point-item > span {
    color: #6366f1 !important;
    font-weight: 700 !important;
}

.v2shop-point-bar {
    position: absolute !important;
    top: -5px !important;
    left: 50% !important;

    display: block !important;

    width: 28px !important;
    height: 2.5px !important;

    margin: 0 !important;
    padding: 0 !important;

    border-radius: 0 0 3px 3px !important;

    background: linear-gradient(
        90deg,
        #6366f1,
        #8b5cf6
    ) !important;

    transform: translateX(-50%) !important;
}

.v2shop-point-dot {
    position: absolute !important;
    top: 3px !important;
    right: calc(50% - 16px) !important;

    display: block !important;

    width: 5px !important;
    height: 5px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1.5px solid #fff !important;
    border-radius: 50% !important;

    background: #fbbf24 !important;

    animation: v2shop-point-blink 1.8s ease-in-out infinite !important;
}

@keyframes v2shop-point-blink {
    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: .45;
        transform: scale(.75);
    }
}

/* 이전 하단 내비가 혹시 남아 있어도 숨김 */
.v2live-bottom,
.bottom-nav {
    display: none !important;
}

/* 마지막 상품이 하단 내비에 가리지 않도록 */
.v2live-shell {
    padding-bottom:
        calc(78px + env(safe-area-inset-bottom, 0px)) !important;
}

/* PC 중앙 프레임 기준 */
@media (min-width: 621px) {
    .v2shop-bottom-nav {
        max-width: 620px !important;
    }
}

/* V2 SHOP SEARCH + BOTTOM NAV FINAL RESET END */

/* V2 SHOP LIVE RESPONSIVE START */

/* 모바일은 기존 모습 유지 */
@media (max-width: 600px) {
    :root {
        --max: 100%;
    }

    .v2live-shell {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        border-radius: 0 !important;
    }

    .v2live-products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .v2shop-bottom-nav {
        width: 100% !important;
        max-width: none !important;
    }
}

/* 태블릿 */
@media (min-width: 601px) and (max-width: 1023px) {
    :root {
        --max: calc(100vw - 24px);
    }

    .v2live-shell {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin: 12px auto !important;
        border-radius: 24px !important;
        overflow: hidden !important;
    }

    .v2live-products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding-right: 14px !important;
        padding-left: 14px !important;
    }

    .v2live-card-info {
        min-height: 118px !important;
    }

    .v2live-card-title {
        font-size: 12px !important;
        line-height: 18px !important;
    }

    .v2live-card-price {
        font-size: 13px !important;
    }

    .v2shop-bottom-nav {
        right: 12px !important;
        left: 12px !important;
        width: calc(100% - 24px) !important;
        max-width: none !important;
    }
}

/* PC */
@media (min-width: 1024px) {
    :root {
        --max: 1440px;
    }

    .v2live-shell {
        width: calc(100% - 48px) !important;
        max-width: 1440px !important;
        margin: 24px auto !important;
        border-radius: 28px !important;
        overflow: hidden !important;
    }

    .v2live-header {
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    .v2shop-search-row {
        max-width: 900px !important;
        margin: 0 auto !important;
        padding-top: 12px !important;
        padding-bottom: 14px !important;
    }

    .v2live-head-tabs,
    .v2live-top-category {
        justify-content: center !important;
    }

    .v2live-filter-buttons,
    .v2live-summary {
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    .v2live-products {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 16px !important;
        padding: 0 24px 32px !important;
    }

    .v2live-card {
        border-radius: 16px !important;
    }

    .v2live-card-info {
        min-height: 130px !important;
        padding: 13px 12px 14px !important;
    }

    .v2live-card-brand {
        font-size: 10px !important;
    }

    .v2live-card-title {
        min-height: 40px !important;
        font-size: 13px !important;
        line-height: 19px !important;
    }

    .v2live-card-price {
        font-size: 14px !important;
    }

    .v2live-card-sub {
        font-size: 9px !important;
    }

    .v2shop-bottom-nav {
        right: 24px !important;
        left: 24px !important;
        width: calc(100% - 48px) !important;
        max-width: 1440px !important;
    }

    .v2live-modal-panel {
        max-width: 760px !important;
    }
}

/* 큰 모니터 */
@media (min-width: 1500px) {
    .v2live-products {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }
}

/* V2 SHOP LIVE RESPONSIVE END */

/* =========================================================
   V2 SHOP FILTER ABOVE BOTTOM NAV
========================================================= */

/* 하단 네비보다 필터 모달을 위에 표시 */
.v2live-modal,
.v2live-filter-modal,
.v2shop-filter-modal,
.v2-filter-modal{
    z-index:30000 !important;
}

/* 배경은 화면 전체 덮기 */
.v2live-modal-backdrop,
.v2live-filter-backdrop,
.v2shop-filter-backdrop,
.v2-filter-backdrop{
    position:fixed !important;
    inset:0 !important;
    z-index:30000 !important;
}

/* 필터 본체는 하단 네비 위에서 끝나게 */
.v2live-modal-panel,
.v2live-filter-panel,
.v2shop-filter-panel,
.v2-filter-panel{
    z-index:30001 !important;
    bottom:calc(70px + env(safe-area-inset-bottom, 0px)) !important;
    max-height:calc(
        100dvh - 110px - env(safe-area-inset-bottom, 0px)
    ) !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
}

/* 필터 내부 마지막 항목도 네비에 가리지 않게 */
.v2live-modal-content,
.v2live-filter-content,
.v2shop-filter-content,
.v2-filter-content{
    padding-bottom:90px !important;
}

/* 하단 네비는 필터보다 아래 */
.v2shop-bottom-nav{
    z-index:1000 !important;
}

/* =========================================================
   END V2 SHOP FILTER ABOVE BOTTOM NAV
========================================================= */

