/* ═══════════════════════════════════════════════════════════════
   공통 스타일
   ═══════════════════════════════════════════════════════════════ */
/* 공통 변수 */
:root {
    --primary-red: #7B1A1A;
    --primary-blue: #0F1B3D;
    --primary-purple: #3B1A6B;
    --primary-green: #15803D;
    --accent-orange: #D97706;
    --accent-yellow: #F59E0B;
    --bg-gray: #f7f7f7;
    --text-dark: #1a1a1a;
    --text-gray: #555;
    --text-light: #aaa;
    --border-light: #eee;
    --border-medium: #ddd;
}

*{box-sizing:border-box;margin:0;padding:0;font-family:sans-serif;}
a {text-decoration: none}
body{background:#f7f7f7;}
#scrollTop {display: none}

/* ═══════════════════════════════════════════════════════════════
   PC 스타일 (기본)
   ═══════════════════════════════════════════════════════════════ */
.mobile-only{display:none;}
.container.index{width:100%;background:#f7f7f7;padding: 0;}

.header {position:sticky;top:0;z-index:100;}
/* GNB */
.gnb{background:#fff;border-bottom:1px solid #eee;padding:0 40px;display:flex;align-items:center;justify-content:space-between;height:60px;gap:16px;}
.gnb-logo-wrap{display:flex;flex-direction:column;}
.gnb-logo{font-size:20px;font-weight:800;flex-shrink:0;letter-spacing:-0.3px;}
.gnb-logo .j{color:#7B1A1A;}.gnb-logo .jj{color:#0F1B3D;}.gnb-logo .n{color:#3B1A6B;}.gnb-logo .r{color:#1A4A2C;}
.gnb-sub{font-size:9px;color:#aaa;}
.gnb-nav{display:flex;gap:22px;}
.gnb-nav a{font-size:14px;color:#444;text-decoration:none;font-weight:500;}
.gnb-nav a:hover{color:#7B1A1A;}
.gnb-nav a.active{color:#7B1A1A;font-weight:700;border-bottom:2px solid #7B1A1A;padding-bottom:2px;}
.gnb-search{display:flex;align-items:center;background:#f3f4f6;border-radius:9px;padding:0 12px;height:36px;gap:8px;width:200px;}
.gnb-search i{font-size:15px;color:#888;}
.gnb-search input{border:none;background:transparent;font-size:13px;outline:none;color:#333;width:100%;}
.gnb-search input::placeholder{color:#aaa;}
.gnb-right{display:flex;gap:8px;align-items:center;flex-shrink:0;}
.gnb-btn{border:1px solid #ddd;border-radius:7px;padding:6px 14px;font-size:13px;color:#444;cursor:pointer;background:#fff;}
.gnb-btn.primary{background:#7B1A1A;color:#fff;border-color:#7B1A1A;font-weight:600;}
.gnb-btn.admin{background:#e53935;color:#fff;border-color:#e53935;font-weight:700;}
.gnb-btn.notification{position:relative;}
.gnb-btn.notification .bell-badge{position:absolute;top:-7px;right:-7px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#e53935;color:#fff;font-size:9px;line-height:16px;text-align:center;}

/* Hero */
.hero{background:#fff;padding:32px 40px 24px;border-bottom:1px solid #f0f0f0;/*8px solid #f7f7f7;*/}
.hero-inner{max-width:860px;margin:0 auto;text-align:center;}
.hero-title{font-size:26px;font-weight:800;color:#1a1a1a;margin-bottom:6px;}
.hero-title span{color:#7B1A1A;}
.hero-sub{font-size:14px;color:#888;margin-bottom:18px;}
.hero-search-wrap{max-width:560px;margin:0 auto;}
.hero-search{display:flex;align-items:center;background:#f3f4f6;border-radius:12px;padding:0 16px;height:52px;gap:10px;}
.hero-search i{font-size:20px;color:#888;}
.hero-search input{flex:1;border:none;background:transparent;font-size:15px;outline:none;color:#333;}
.hero-search input::placeholder{color:#aaa;}
.hero-search .sk{background:#7B1A1A;color:#fff;border:none;border-radius:9px;padding:8px 22px;font-size:14px;font-weight:700;cursor:pointer;}
.popular-tags{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap;justify-content:center;}
.popular-label{font-size:12px;color:#aaa;white-space:nowrap;}
.pop-tag{background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:5px 12px;font-size:12px;color:#555;cursor:pointer;}
.pop-tag:hover{border-color:#7B1A1A;color:#7B1A1A;}

/* Trust */
.trust{background:#fff;padding:16px 40px;border-bottom:8px solid #f7f7f7;}
.trust-inner{max-width:860px;margin:0 auto;display:flex;justify-content:center;gap:12px;}
.trust-item{flex:1;max-width:200px;background:#f9f9f9;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px;}
.trust-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.trust-num{font-size:17px;font-weight:800;line-height:1.1;}
.trust-label{font-size:11px;color:#888;margin-top:2px;}

/* Banner */
.banner-wrap{background:#fff;}
.banner{background:#7B1A1A;padding:22px 40px;}
.banner-inner{max-width:860px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;}
.banner-tag{background:rgba(255,255,255,0.2);color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:3px 9px;display:inline-block;margin-bottom:7px;}
.banner-title{font-size:20px;font-weight:800;color:#fff;margin-bottom:4px;}
.banner-sub{font-size:12px;color:rgba(255,255,255,0.7);}
.banner-right{display:flex;align-items:center;gap:14px;}
.banner-indicator{font-size:13px;color:rgba(255,255,255,0.6);font-weight:600;}
.banner-btn{background:#fff;color:#7B1A1A;border:none;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:700;cursor:pointer;}
.banner-dots{display:flex;justify-content:center;gap:5px;padding:8px 0;background:#fff;}
.bdot{width:6px;height:6px;border-radius:3px;background:#D1D5DB;}
.bdot.on{width:18px;background:#7B1A1A;}

.bannerSwiper .swiper-pagination-bullet {margin: 0 !important; width: 6px !important;height: 6px !important;transition: all 0.3s ease;}
.bannerSwiper .swiper-pagination-bullet-active {width: 18px !important; background: #7B1A1A !important;border-radius: 3px !important;}
.bannerSwiper .banner-indicator span {color: rgba(255,255,255,0.6)}

/* Notice */
/*.notice{background:#fff;border-bottom:1px solid #f0f0f0;padding:8px 40px;}*/
/*.notice-inner{max-width:860px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;}*/
/*.notice-left{display:flex;align-items:center;gap:8px;}*/
/*.notice-badge{background:#FEF2F2;color:#7B1A1A;font-size:11px;font-weight:700;border-radius:5px;padding:2px 8px;}*/
/*.notice-txt{font-size:13px;color:#444;}*/
/*.notice-more{font-size:12px;color:#aaa;cursor:pointer;}*/
.notice{
    background:#fff;
    border-bottom:1px solid #f0f0f0;
    padding:8px 40px;
}

.notice-inner{
    max-width:860px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.notice-left{
    display:flex;
    align-items:center;
    gap:8px;
    flex:1;
    min-width:0;
}

.notice-badge{
    background:#FEF2F2;
    color:#7B1A1A;
    font-size:11px;
    font-weight:700;
    border-radius:5px;
    padding:2px 8px;
    flex-shrink:0;
}

.notice-slider{
    height:18px;
    overflow:hidden;
    position:relative;
    flex:1;
}

.notice-list{
    position:relative;
}

.notice-txt{
    height:18px;
    line-height:18px;
    font-size:13px;
    color:#444;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    display: block;
}

.notice-more{
    font-size:12px;
    color:#aaa !important;
    cursor:pointer;
    flex-shrink:0;
}

/* Section */
.section{background:#fff;padding:24px 40px;border-bottom:8px solid #f7f7f7;}
.section-inner{max-width:860px;margin:0 auto;}
.sec-title{font-size:15px;font-weight:700;color:#1a1a1a;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;}
.sec-more{font-size:13px;color:#aaa !important;font-weight:400;cursor:pointer;display:flex;align-items:center;gap:3px;}

/* 카테고리 */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.cat-big{border-radius:14px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;}
.cat-name{font-size:16px;font-weight:800;color:#fff;}
.cat-cnt{font-size:11px;color:rgba(255,255,255,0.75);}

/* 신규 업체 */
.shop-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.shop-card{background:#fff;border:1px solid #eee;border-radius:12px;overflow:hidden;cursor:pointer;position:relative;}
.shop-card:hover{border-color:#7B1A1A;}
.shop-share{position:absolute;top:7px;right:7px;width:24px;height:24px;background:rgba(255,255,255,0.9);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.shop-share i{font-size:13px;color:#555;}
.shop-img{height:76px;display:flex;align-items:center;justify-content:center;font-size:28px;position:relative;aspect-ratio: 1 / 1;height: auto;}
.shop-img img {width: 100%; height: 100%; object-fit: cover}
.shop-nbadge{position:absolute;top:7px;left:7px;font-size:9px;font-weight:700;padding:2px 7px;border-radius:5px;color:#fff;}
.shop-info{padding:9px 11px;}
.shop-name{font-size:12px;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.shop-region{font-size:11px;color:#aaa;margin-top:1px;}
.shop-stars{display:flex;align-items:center;gap:2px;margin-top:3px;}
.shop-stars i{font-size:10px;color:#F59E0B;}
.shop-stars span{font-size:10px;color:#aaa;}

.new-store-slider{
    overflow:hidden;
}

.new-store-slider .swiper-slide{
    height:auto;
}

.shop-card{
    background:#fff;
    border:1px solid #eee;
    border-radius:12px;
    overflow:hidden;
    cursor:pointer;
    position:relative;
    height:100%;
    display: block;
}

.shop-card:hover{
    border-color:#7B1A1A;
}

/* 이벤트 */
.evt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.evt-card{border-radius:12px;overflow:hidden;border:1px solid #eee;cursor:pointer;}
.evt-img{height:68px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;text-align:center;padding:10px;line-height:1.5;}
.evt-body{padding:9px 11px;background:#fff;}
.evt-name{font-size:12px;font-weight:700;color:#1a1a1a;}
.evt-sub{font-size:11px;color:#aaa;margin-top:1px;}

/* 운세 */
.fortune-tabs{display:flex;gap:8px;margin-bottom:14px;}
.ftab{padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid #eee;color:#555;background:#fff;}
.ftab.on{background:#7B1A1A;border-color:#7B1A1A;color:#fff;}
.fortune-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.fortune-card{background:#f9f9f9;border-radius:12px;padding:14px;text-align:center;cursor:pointer;}
.fortune-card:hover{background:#FEF2F2;}
.fortune-icon{font-size:22px;margin-bottom:6px;}
.fortune-name{font-size:12px;font-weight:700;color:#1a1a1a;margin-bottom:4px;}
.fortune-txt{font-size:11px;color:#888;line-height:1.6;}
.fortune-score{display:inline-block;background:#7B1A1A;color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:2px 8px;margin-top:6px;}
.fortune-cta{background:#FEF2F2;border-radius:10px;padding:12px 16px;margin-top:12px;display:flex;align-items:center;justify-content:space-between;}
.fortune-cta-txt{font-size:13px;color:#7B1A1A;font-weight:600;}
.fortune-cta-btn{background:#7B1A1A;color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:700;cursor:pointer;}

/* TOP3 */
.top3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.top3-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px;cursor:pointer;}
.top3-card:hover{border-color:#7B1A1A;}
.top3-rank{font-size:22px;font-weight:800;color:#7B1A1A;flex-shrink:0;width:28px;}
.top3-rank.r2{color:#0F1B3D;}
.top3-rank.r3{color:#3B1A6B;}
.top3-img{width:46px;height:46px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.top3-img img{width:100%;height:100%;object-fit:cover;display:block;}
.top3-name{font-size:13px;font-weight:700;color:#1a1a1a;}
.top3-region{font-size:11px;color:#aaa;margin-top:2px;}
.top3-stars{display:flex;align-items:center;gap:2px;margin-top:3px;}
.top3-stars i{font-size:10px;color:#F59E0B;}
.top3-stars span{font-size:10px;color:#aaa;}
.region-tabs{display:flex;gap:8px;margin-bottom:14px;overflow-x:auto;scrollbar-width:none;}
.region-tabs::-webkit-scrollbar{display:none;}
.rtab{padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid #eee;color:#555;background:#fff;white-space:nowrap;}
.rtab.on{background:#7B1A1A;border-color:#7B1A1A;color:#fff;}

/* 베스트 후기 */
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.rv-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:13px;}
.rv-shop{font-size:12px;font-weight:700;color:#1a1a1a;margin-bottom:4px;}
.rv-stars{display:flex;gap:2px;margin-bottom:5px;}
.rv-stars i{font-size:11px;color:#F59E0B;}
.rv-txt{font-size:12px;color:#555;line-height:1.7;}
.rv-tag{display:inline-block;font-size:10px;border-radius:5px;padding:2px 7px;margin-top:5px;}
.rv-who{font-size:11px;color:#bbb;margin-top:4px;}

.rv-swiper{
    overflow: visible;
}

.rv-swiper .swiper-slide{
    height:auto;
}

.rv-card{
    background:#fff;
    border:1px solid #eee;
    border-radius:12px;
    padding:13px;
    height:100%;
    display: block;
}

.rv-shop{
    font-size:12px;
    font-weight:700;
    color:#1a1a1a;
    margin-bottom:4px;
}

.rv-stars{
    display:flex;
    gap:2px;
    margin-bottom:5px;
}

.rv-stars i{
    font-size:11px;
    color:#F59E0B;
}

.rv-txt{
    font-size:12px;
    color:#555;
    line-height:1.7;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;

    height: calc(1.7em * 2);
}

.rv-tag{
    display:inline-block;
    font-size:10px;
    border-radius:5px;
    padding:2px 7px;
    margin-top:5px;
}

.rv-who{
    font-size:11px;
    color:#bbb;
    margin-top:4px;
}

.rv-tag.tag1 {background: #FEF2F2;color: #7B1A1A;}
.rv-tag.tag2 {background: #FFFBEB;color: #D97706;}
.rv-tag.tag3 {background: #EEF2FF;color: #0F1B3D;}
.rv-tag.tag4 {background: #F5F3FF;color: #3B1A6B;}
.rv-tag.tag5 {background: #F0FDF4;color: #1A4A2C;}
.rv-tag.tag6 {background: #FEF9EC;color: #D97706;}

/* 고민 + 지역 */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.worry-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.worry-btn{background:#fff;border:1px solid #eee;border-radius:10px;padding:10px;display:flex;align-items:center;gap:8px;cursor:pointer;}
.worry-btn:hover{border-color:#7B1A1A;}
.worry-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.worry-name{font-size:12px;font-weight:700;color:#1a1a1a;}
.worry-sub{font-size:10px;color:#aaa;}
.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;}
.rtag{background:#fff;border:1px solid #e0e0e0;border-radius:9px;padding:9px;font-size:13px;color:#555;text-align:center;cursor:pointer;}
.rtag:hover{border-color:#7B1A1A;color:#7B1A1A;}
.rtag.on{background:#7B1A1A;border-color:#7B1A1A;color:#fff;font-weight:700;}

/* 찜+최근본 */
.personal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.personal-grid > div{min-width:0;}
.personal-scroll{display:flex;gap:10px;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;}
.personal-scroll::-webkit-scrollbar{display:none;}
.ps-card{flex-shrink:0;width:120px;background:#fff;border:1px solid #eee;border-radius:10px;overflow:hidden;cursor:pointer;}
.ps-img{height:60px;display:flex;align-items:center;justify-content:center;font-size:22px;}
.ps-img img{display:block;width:100%;height:100%;object-fit:cover;}
.ps-info{padding:7px 9px;}
.ps-name{font-size:11px;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ps-region{font-size:10px;color:#aaa;}

/* 이용가이드 */
.guide-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.guide-item{text-align:center;padding:16px;}
.guide-num{width:32px;height:32px;border-radius:50%;background:#7B1A1A;color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;}
.guide-icon{font-size:28px;margin-bottom:8px;}
.guide-title{font-size:13px;font-weight:700;color:#1a1a1a;margin-bottom:4px;}
.guide-desc{font-size:12px;color:#888;line-height:1.6;}

/* 매칭 */
.matching-banner{background:#0F1B3D;border-radius:14px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;}
.matching-banner.pc-only {display: flex !important;}
.matching-banner.mobile-only {display: none !important;}
.matching-txt{color:#fff;}
.matching-title{font-size:16px;font-weight:800;margin-bottom:4px;}
.matching-sub{font-size:13px;color:rgba(255,255,255,0.7);}
.matching-btn{background:#7B1A1A;color:#fff;border:none;border-radius:9px;padding:11px 22px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;}

/*.join-wrap{display: none}*/

/* 입점+고객센터 */
.bottom-banners{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.enter-banner{background:#FEF2F2;border-radius:13px;padding:16px;display:flex;align-items:center;justify-content:space-between;}
.eb-txt{font-size:13px;color:#7B1A1A;line-height:1.6;}
.eb-txt strong{color:#0F1B3D;font-weight:700;}
.eb-btn{background:#7B1A1A;color:#fff !important;border:none;border-radius:8px;padding:10px 16px;font-size:12px;font-weight:700;cursor:pointer;}
.kakao-banner{background:#FEE500;border-radius:13px;padding:16px;display:flex;align-items:center;justify-content:space-between;}
.kb-txt{font-size:13px;color:#1a1a1a;line-height:1.6;}
.kb-txt strong{font-weight:700;}
.kb-btn{background:#1a1a1a;color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:12px;font-weight:700;cursor:pointer;}

/* 푸터 */
.footer{background:#1a1a1a;padding:24px 40px;}
.footer-inner{max-width:860px;margin:0 auto;}
.footer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.footer-logo{font-size:16px;font-weight:700;color:#fff;}
.footer-links{display:flex;gap:18px;}
.footer-links a{font-size:12px;color:#888;text-decoration:none;}
.footer-bottom{font-size:12px;color:#555;line-height:1.8;border-top:1px solid #333;padding-top:14px;}

.bottom-nav {display: none}

/* 모달 공통 */
.modal-dim{position:fixed;inset:0;background:rgba(15,27,61,.45);display:none;align-items:center;justify-content:center;padding:20px;z-index:9999;}
.modal-dim.on{display:flex;}
.common-modal{width:100%;max-width:420px;background:#fff;border-radius:18px;border:1px solid #eee;padding:28px 24px 22px;position:relative;box-shadow:0 18px 45px rgba(0,0,0,.16);animation:modalUp .18s ease-out;}
.modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;border-radius:50%;background:#f9f9f9;color:#aaa;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.modal-close i{font-size:18px;}
.modal-close:hover{background:#FEF2F2;color:#7B1A1A;}
.modal-icon{width:58px;height:58px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;}
.modal-icon i{font-size:30px;}
.modal-icon.success{background:#F0FDF4;color:#15803D;}
.modal-icon.warning{background:#FFFBEB;color:#D97706;}
.modal-icon.error{background:#FEF2F2;color:#7B1A1A;}
.modal-icon.info{background:#EEF2FF;color:#0F1B3D;}
.modal-title{font-size:19px;font-weight:800;color:#1a1a1a;text-align:center;letter-spacing:-.4px;margin-bottom:8px;}
.modal-desc{font-size:13px;color:#777;line-height:1.7;text-align:center;margin-bottom:18px;}
.modal-info-box{background:#f9f9f9;border-radius:12px;padding:13px 15px;margin-bottom:16px;}
.modal-info-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;border-bottom:1px solid #eee;}
.modal-info-row:last-child{border-bottom:none;}
.modal-info-row span{color:#aaa;}
.modal-info-row strong{color:#1a1a1a;font-weight:700;text-align:right;}
.modal-form{margin-bottom:18px;}
.modal-form label{display:block;font-size:13px;font-weight:700;color:#1a1a1a;margin-bottom:7px;}
.modal-form input,.modal-form textarea,.modal-form select{width:100%;border:1px solid #eee;border-radius:10px;padding:11px 13px;font-size:13px;color:#333;outline:none;background:#fff;}
.modal-form textarea{height:90px;resize:none;line-height:1.6;}
.modal-form input:focus,.modal-form textarea:focus,.modal-form select:focus{border-color:#7B1A1A;}
.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
.modal-btn{height:44px;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;}
.modal-btn.line{background:#fff;border:1px solid #ddd;color:#555;}
.modal-btn.primary{background:#7B1A1A;border:1px solid #7B1A1A;color:#fff;}
.modal-btn.danger{background:#E53935;border:1px solid #E53935;color:#fff;}
.modal-btn.full{grid-column:1 / -1;}
@keyframes modalUp{from{opacity:0;transform:translateY(10px) scale(.98);}to{opacity:1;transform:translateY(0) scale(1);}}


/* ═══════════════════════════════════════════════════════════════
   모바일 스타일 (기존 768px 이하)
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 1023px) {
    .pc-only{display:none !important;}
    .mobile-only{display:block;}

    /* 모바일 컨테이너 */
    .container{}

    /* 상태바 */
    .statusbar{height:44px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-size:12px;color:#222;}

    /* 상단바 */
    .topbar{position:relative;background:#fff;border-bottom:1px solid #f0f0f0;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;}
    .logo-wrap{position:absolute;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;}
    .logo{font-size:18px;font-weight:800;letter-spacing:-0.3px;}
    .logo .j{color:#7B1A1A;}.logo .jj{color:#0F1B3D;}.logo .n{color:#3B1A6B;}.logo .r{color:#1A4A2C;}
    .logo-sub{font-size:9px;color:#aaa;margin-top:1px;}
    .topbar-menu-toggle{width:36px;height:36px;padding:0;border:0;background:transparent;color:#555;display:flex;align-items:center;justify-content:center;cursor:pointer;}
    .topbar-menu-toggle i{font-size:22px;}
    .topbar-right{display:flex;gap:4px;align-items:center;}
    .mobile-topbar-action{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#555;text-decoration:none;border-radius:8px;cursor:pointer;}
    .mobile-topbar-action:hover,.mobile-topbar-action:focus-visible{background:#f7f7f7;color:#7B1A1A;outline:none;}
    .mobile-topbar-action i{font-size:22px;}
    .bell-wrap{position:relative;}
    .bell-badge{position:absolute;top:-4px;right:-4px;min-width:16px;width:auto;height:16px;padding:0 4px;background:#E53935;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;border:1.5px solid #fff;box-sizing:border-box;}
    .mobile-topbar-action .bell-badge{pointer-events:none;}

    /* 로그인바 */
    .login-bar{background:#FEF2F2;padding:7px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f5c0c0;}
    .login-bar-left{font-size:12px;color:#7B1A1A;font-weight:600;display:flex;align-items:center;gap:5px;}
    .login-bar-right{font-size:11px;color:#7B1A1A;font-weight:700;display:flex;align-items:center;gap:4px;}
    .point-badge{background:#7B1A1A;color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:2px 7px;}

    /* 모바일 메뉴 */
    body.mobile-menu-open{overflow:hidden;}
    body.mobile-menu-open .header{z-index:1200;}
    .mobile-menu-backdrop{position:fixed;inset:0;z-index:1090;background:rgba(18,20,26,.5);}
    .mobile-menu{position:fixed;top:0;left:0;z-index:1100;width:min(88vw,360px);height:100vh;height:100dvh;background:#fff;box-shadow:none;transform:translateX(-102%);transition:transform .24s ease,box-shadow .24s ease;display:flex;flex-direction:column;overscroll-behavior:contain;}
    .mobile-menu.is-open{transform:translateX(0);box-shadow:12px 0 30px rgba(26,26,26,.14);}
    .mobile-menu-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:26px 22px 24px;background:#7B1A1A;color:#fff;}
    .mobile-menu-brand strong{display:block;font-size:21px;font-weight:800;letter-spacing:-.6px;}
    .mobile-menu-brand span{display:block;margin-top:4px;font-size:11px;color:rgba(255,255,255,.75);}
    .mobile-menu-close{width:34px;height:34px;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;}
    .mobile-menu-close i{font-size:19px;}
    .mobile-menu-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;}
    .mobile-menu-account{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 18px 22px;padding:16px;border:1px solid #f1e8e5;border-radius:14px;background:#fcf8f6;}
    .mobile-menu-greeting{min-width:0;display:flex;flex-direction:column;gap:3px;}
    .mobile-menu-greeting span{color:#8e7770;font-size:11px;}
    .mobile-menu-greeting strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#33221e;font-size:13px;font-weight:700;}
    .mobile-menu-account-primary{flex-shrink:0;display:inline-flex;align-items:center;gap:3px;padding:9px 10px;border-radius:8px;background:#7B1A1A;color:#fff;font-size:11px;font-weight:700;}
    .mobile-menu-account-primary i{font-size:14px;}
    .mobile-menu-section{padding:0 18px 22px;}
    .mobile-menu-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin:0 2px 13px;color:#222;font-size:15px;font-weight:800;}
    .mobile-menu-section-title small{color:#999;font-size:10px;font-weight:400;}
    .mobile-menu-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
    .mobile-menu-category{position:relative;isolation:isolate;overflow:hidden;min-height:104px;padding:12px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background-size:cover;background-position:center;color:#fff;font-size:15px;font-weight:800;text-align:center;box-shadow:0 3px 10px rgba(15,23,42,.06);transition:box-shadow .3s ease;}
    .mobile-menu-category::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(145deg,rgba(var(--cat-tint),.28),rgba(var(--cat-tint),.42));}
    .mobile-menu-category::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:#000;opacity:.01;transition:opacity .3s ease;}
    .mobile-menu-category-icon{display:block;width:50px;height:50px;object-fit:contain;filter:url(#jj-mobile-category-line-strengthen);mix-blend-mode:screen;}
    .mobile-menu-category.sinjeom{--cat-tint:155,38,52;background-color:#9B2634;background-image:url("../img/categories/sinjeom-bg.webp");}
    .mobile-menu-category.saju{--cat-tint:41,78,155;background-color:#294E9B;background-image:url("../img/categories/saju-bg.webp");color:#fff;}
    .mobile-menu-category.taro{--cat-tint:119,52,162;background-color:#7734A2;background-image:url("../img/categories/taro-bg.webp");color:#fff;}
    .mobile-menu-category.jakm{--cat-tint:8,122,96;background-color:#087A60;background-image:url("../img/categories/jakm-bg.webp");color:#fff;}
    @media(hover:hover) and (pointer:fine){.mobile-menu-category:hover{box-shadow:0 5px 16px rgba(15,23,42,.2);}.mobile-menu-category:hover::after{opacity:0;}}
    .mobile-menu-links-section{padding-bottom:12px;}
    .mobile-menu-list{list-style:none;margin:0;padding:0;border:1px solid #eee;border-radius:13px;overflow:hidden;}
    .mobile-menu-item{position:relative;background:#fff;}
    .mobile-menu-item+.mobile-menu-item{border-top:1px solid #f1f1f1;}
    .mobile-menu-item>a{min-height:52px;display:flex;align-items:center;gap:13px;padding:12px 39px 12px 14px;color:#333;font-size:13px;font-weight:700;}
    .mobile-menu-item>a>i:first-child{width:20px;color:#7B1A1A;font-size:19px;text-align:center;}
    .mobile-menu-item>a:hover{background:#fcf8f6;color:#7B1A1A;}
    .mobile-menu-link-arrow{position:absolute;right:13px;color:#bbb;font-size:16px;}
    .mobile-menu-sub-toggle{position:absolute;top:7px;right:7px;width:38px;height:38px;padding:0;border:0;background:transparent;color:#888;display:flex;align-items:center;justify-content:center;cursor:pointer;}
    .mobile-menu-sub-toggle i{font-size:16px;transition:transform .2s ease;}
    .mobile-menu-sub-list{display:none;list-style:none;padding:2px 14px 10px 47px;background:#faf8f7;}
    .mobile-menu-item.is-expanded .mobile-menu-sub-list{display:block;}
    .mobile-menu-item.is-expanded .mobile-menu-sub-toggle i{transform:rotate(180deg);}
    .mobile-menu-sub-list a{display:block;padding:9px 0;color:#666;font-size:12px;}
    .mobile-menu-sub-list a:hover{color:#7B1A1A;}
    .mobile-menu-footer{padding:4px 20px 28px;color:#888;font-size:12px;}
    .mobile-menu-footer a{color:#777;}
    .mobile-menu-footer strong{color:#7B1A1A;}
    .mobile-menu-footer i{font-size:13px;vertical-align:middle;}
    .mobile-menu a:focus-visible,.mobile-menu button:focus-visible{outline:2px solid #c9a84c;outline-offset:2px;}

    /* 검색 */
    .search-wrap{background:#fff;padding:10px 20px 12px;border-bottom:8px solid #f7f7f7;}
    .search-box{background:#F3F4F6;border-radius:12px;display:flex;align-items:center;padding:0 14px;height:46px;gap:10px;}
    .search-box i{color:#888;font-size:19px;}
    .search-box span{font-size:14px;color:#aaa;flex:1;}
    .sk{background:#7B1A1A;color:#fff;border:none;border-radius:8px;padding:5px 13px;font-size:13px;font-weight:700;}

    /* 인기태그 */
    .popular-wrap{background:#fff;padding:8px 20px 12px;border-bottom:8px solid #f7f7f7;}
    .popular-inner{display:flex;align-items:center;gap:7px;overflow-x:auto;scrollbar-width:none;}
    .popular-inner::-webkit-scrollbar{display:none;}
    .pop-tag{background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:4px 11px;font-size:12px;color:#555;white-space:nowrap;flex-shrink:0;}
    .pop-tag.hot{border-color:#7B1A1A;color:#7B1A1A;}

    /* Trust 모바일 */
    .trust-section{background:#fff;padding:12px 20px;border-bottom:8px solid #f7f7f7;}
    .trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
    .trust-item{border-radius:10px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;}
    .trust-num{font-size:16px;}
    .trust-label{font-size:10px;text-align:center;}

    /* 배너 모바일 */
    .banner-section{background:#fff;}
    .banner{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;min-height:96px;}
    .b-tag{color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:3px 8px;display:inline-block;margin-bottom:6px;background:rgba(255,255,255,0.2);}
    .b-title{font-size:16px;font-weight:800;color:#fff;line-height:1.3;margin-bottom:3px;}
    .b-sub{font-size:11px;color:rgba(255,255,255,0.7);}
    .b-btn{background:#fff;border:none;border-radius:7px;padding:6px 12px;font-size:11px;font-weight:700;margin-top:8px;cursor:pointer;display:inline-block;color:#7B1A1A;}
    .b-icon{font-size:46px;flex-shrink:0;margin-left:10px;color:rgba(255,255,255,0.3);}
    .banner-indicator{display:flex;align-items:center;justify-content:space-between;padding:6px 20px 0;background:#fff;}
    .b-dots{display:flex;gap:4px;}
    .b-count{font-size:11px;color:#aaa;}

    /* 공지 모바일 */
    .notice-bar{background:#fff;border-bottom:1px solid #f0f0f0;padding:8px 20px;display:flex;align-items:center;justify-content:space-between;}
    .notice-badge{background:#FEF2F2;color:#7B1A1A;font-size:10px;font-weight:700;border-radius:5px;padding:2px 7px;white-space:nowrap;}
    .notice-left{display:flex;align-items:center;gap:7px;flex:1;min-width:0;}
    .notice-txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .notice-more{font-size:11px;flex-shrink:0;margin-left:8px;}

    /* 섹션 모바일 */
    .section{padding:16px 20px;}
    .sec-title{font-size:14px;margin-bottom:12px;}
    .sec-more-btn{font-size:12px;}

    /* 카테고리 모바일 */
    .cat-grid-big{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
    .cat-big{height:100px;}
    .cat-name{font-size:15px;}

    /* 신규업체 모바일 */
    .new-section{background:#fff;padding:16px 0;border-bottom:8px solid #f7f7f7;}
    .new-head{display:flex;align-items:center;justify-content:space-between;padding:0 20px;margin-bottom:12px;}
    .new-badge{background:#7B1A1A;color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:2px 7px;}
    .new-title{font-size:14px;font-weight:700;color:#1a1a1a;}
    .new-more{font-size:12px;color:#aaa;}
    .hscroll{display:flex;gap:10px;overflow-x:auto;padding:0 20px 4px;scrollbar-width:none;}
    .hscroll::-webkit-scrollbar{display:none;}
    .shop-card{flex-shrink:0;width:128px;}
    .shop-img{height:70px;aspect-ratio: 1 / 1;height: auto;}
    .shop-info{padding:8px 10px;}

    /* 이벤트 모바일 */
    .evt-grid{grid-template-columns:1fr 1fr;}
    .evt-img{height:64px;font-size:11px;padding:8px;}
    .evt-body{padding:9px 10px;}

    /* 운세 모바일 */
    .fortune-section{background:#fff;padding:16px 20px;border-bottom:8px solid #f7f7f7;}
    .fortune-tabs{gap:7px;overflow-x:auto;scrollbar-width:none;}
    .fortune-tabs::-webkit-scrollbar{display:none;}
    .ftab{padding:5px 14px;font-size:12px;white-space:nowrap;flex-shrink:0;}
    .fortune-grid{grid-template-columns:1fr 1fr;gap:8px;}
    .fortune-card{border-radius:11px;padding:12px;display:flex;align-items:center;gap:10px;text-align:left;}
    .fortune-icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:17px;margin-bottom:0;}
    .fortune-name{font-size:12px;margin-bottom:2px;}
    .fortune-score{font-size:10px;color:#F59E0B;margin-top:0;display:block;background: transparent;padding: 0}
    .fortune-txt{display:none;}
    .fortune-cta{padding:11px 14px;margin-top:8px;}
    .fortune-cta-txt{font-size:12px;line-height:1.5;}
    .fortune-cta-btn{padding:7px 12px;font-size:11px;white-space:nowrap;flex-shrink:0;}

    /* TOP3 모바일 */
    .top3-section{background:#fff;padding:16px 20px;border-bottom:8px solid #f7f7f7;}
    .region-scroll-tab{display:flex;gap:7px;overflow-x:auto;margin-bottom:12px;scrollbar-width:none;}
    .region-scroll-tab::-webkit-scrollbar{display:none;}
    .top3-list{display:flex;flex-direction:column;gap:8px;}
    .top3-item{background:#fff;border:1px solid #eee;border-radius:11px;padding:12px;display:flex;align-items:center;gap:10px;}
    .top3-rank{font-size:20px;width:24px;}
    .top3-img{width:42px;height:42px;border-radius:8px;font-size:20px;}
    .top3-name{font-size:13px;}

    /* 후기 모바일 */
    .rv-section{background:#fff;padding:16px 20px;border-bottom:8px solid #f7f7f7;}
    .rv-scroll{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;}
    .rv-scroll::-webkit-scrollbar{display:none;}
    .rv-card-s{flex-shrink:0;width:218px;background:#fff;border:1px solid #eee;border-radius:12px;padding:13px;}
    .rv-shop{font-size:12px;margin-bottom:4px;}
    .rv-stars-r{display:flex;gap:2px;margin-bottom:5px;}
    .rv-stars-r i{font-size:11px;}
    .rv-txt{font-size:12px;line-height:1.6;}
    .rv-tag-s{display:inline-block;font-size:10px;border-radius:5px;padding:2px 7px;margin-top:5px;}
    .rv-who{font-size:11px;margin-top:4px;}

    /* 고민 모바일 */
    .worry-grid{grid-template-columns:1fr 1fr;}
    .worry-btn{border-radius:11px;padding:11px 10px;gap:9px;}
    .worry-icon{width:34px;height:34px;border-radius:9px;font-size:17px;}
    .worry-name{font-size:13px;line-height:1.2;}
    .worry-sub{font-size:10px;margin-top:1px;}

    /* 지역 모바일 */
    .region-section{background:#fff;padding:14px 20px;border-bottom:8px solid #f7f7f7;}
    .region-scroll{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;}
    .region-scroll::-webkit-scrollbar{display:none;}
    .reg-tag{background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:6px 14px;font-size:13px;color:#555;white-space:nowrap;flex-shrink:0;}
    .reg-tag.on{background:#7B1A1A;border-color:#7B1A1A;color:#fff;font-weight:700;}

    /* 찜+최근본 모바일 */
    .personal-section{background:#fff;padding:16px 20px;border-bottom:8px solid #f7f7f7;}
    .personal-row{margin-bottom:14px;}
    .personal-row:last-child{margin-bottom:0;}
    .personal-title{font-size:13px;font-weight:700;color:#1a1a1a;margin-bottom:9px;}
    .ps-scroll{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;}
    .ps-scroll::-webkit-scrollbar{display:none;}
    .ps-card{width:100px;border-radius:10px;}
    .ps-img{height:55px;font-size:20px;}
    .ps-info{padding:6px 8px;}
    .ps-name{font-size:11px;}
    .ps-sub{font-size:10px;}

    /* 가이드 모바일 */
    .guide-section{background:#fff;padding:16px 20px;border-bottom:8px solid #f7f7f7;}
    .guide-list{display:flex;flex-direction:column;gap:10px;}
    .guide-item{display:flex;align-items:center;gap:14px;padding:12px;background:#f9f9f9;border-radius:11px;text-align:left;}
    .guide-num{width:28px;height:28px;font-size:12px;margin:0;}
    .guide-icon{font-size:22px;flex-shrink:0;margin-bottom:0;}
    .guide-title{font-size:13px;margin-bottom:2px;}
    .guide-desc{font-size:11px;line-height:1.5;}

    /* 매칭 모바일 */
    .matching-banner{border-radius:13px;padding:14px 16px;}
    .matching-banner.pc-only {display: none !important;}
    .matching-banner.mobile-only {display: flex !important;}
    .matching-title{font-size:13px;margin-bottom:3px;}
    .matching-sub{font-size:11px;}
    .matching-btn{padding:9px 13px;font-size:11px;margin-left:10px;}

    /* 회원가입 */
    .join-wrap{padding:20px 0 0;display: block}
    .join-banner{background:#0F1B3D;border-radius:14px;padding:16px;}
    .join-title{font-size:14px;font-weight:800;color:#fff;margin-bottom:4px;}
    .join-sub{font-size:12px;color:rgba(255,255,255,0.7);line-height:1.6;margin-bottom:10px;}
    .join-points{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px;}
    .join-point{background:rgba(255,255,255,0.15);color:#fff;font-size:11px;border-radius:6px;padding:3px 9px;}
    .join-btn{background:#7B1A1A;color:#fff;border:none;border-radius:9px;padding:11px 0;font-size:13px;font-weight:700;text-align:center;width:100%;cursor:pointer;}

    /* 하단배너 */
    .bottom-wrap{padding:12px 20px 16px;display:flex;flex-direction:column;gap:10px;}
    .enter-banner{border-radius:12px;padding:13px 15px;}
    .eb-txt{font-size:12px;line-height:1.6;}
    .eb-btn{border-radius:8px;padding:8px 12px;font-size:11px;white-space:nowrap;flex-shrink:0;}
    .kakao-banner{border-radius:12px;padding:13px 15px;}
    .kb-txt{font-size:12px;line-height:1.6;}
    .kb-btn{border-radius:8px;padding:8px 12px;font-size:11px;white-space:nowrap;flex-shrink:0;}

    /* 하단 네비 */
    .bottom-nav{border-top:1px solid #f0f0f0;background:#fff;display:grid;grid-template-columns:repeat(5,1fr);padding:10px 0 0;}
    .nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;color:#bbb;position:relative;}
    .nav-item.on{color:#7B1A1A;}
    .nav-item i{font-size:20px;}
    .nav-badge{position:absolute;top:0;right:22px;width:14px;height:14px;background:#E53935;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;}

    /* PC 전용 숨김 */
    .gnb,.footer{display:none;}
    .section{padding:16px 20px;}
    .two-col{grid-template-columns:1fr;}
    .personal-grid{grid-template-columns:1fr;}
    .guide-wrap{grid-template-columns:1fr;}
    .bottom-banners{grid-template-columns:1fr;}
    .shop-grid{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}
    .shop-grid::-webkit-scrollbar{display:none;}
    .shop-card{flex-shrink:0;width:128px;}
    .evt-grid{grid-template-columns:1fr 1fr;}
    .fortune-grid{grid-template-columns:1fr 1fr;}
    .top3-grid{grid-template-columns:1fr;}
    .rv-grid{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;}
    .rv-grid::-webkit-scrollbar{display:none;}
    .rv-card{flex-shrink:0;width:218px;}
    .cat-grid{grid-template-columns:1fr 1fr;}


    /* 추가 */
    .hero {background:#fff;padding:10px 20px 12px;border-bottom:1px solid #f0f0f0;/*8px solid #f7f7f7;*/}
    .hero-title,.hero-sub {display: none}
    .hero-search {background:#F3F4F6;border-radius:12px;display:flex;align-items:center;padding:0 14px;height:46px;gap:10px;}
    .hero-search .sk {background:#7B1A1A;color:#fff;border:none;border-radius:8px;padding:5px 13px;font-size:13px;font-weight:700;}
    .popular-tags{display:flex;align-items:center;gap:7px;overflow-x:auto;scrollbar-width:none;flex-wrap: nowrap;justify-content: start}
    .popular-tags::-webkit-scrollbar{display:none;}
    .trust{background:#fff;padding:12px 20px;border-bottom:8px solid #f7f7f7;}
    .trust-icon {display: none}
    .trust-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
    .trust-item{border-radius:10px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;}
    .trust-item:nth-child(1) {background:#FEF2F2;}
    .trust-item:nth-child(2) {background:#EEF2FF;}
    .trust-item:nth-child(3) {background:#F5F3FF;}
    .trust-num{font-size:16px;font-weight:800;line-height:1;margin-top: 3px}
    .trust-label{font-size:10px;color:#888;text-align:center;margin-top: 3px}
    .banner-wrap {position: relative}
    .banner{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;min-height:96px;background:#7B1A1A;}
    .banner-inner {flex-direction: column;margin: 0;justify-content: start;align-items: start;}
    .banner-tag{color:#fff;font-size:10px;font-weight:700;border-radius:5px;padding:3px 8px;display:inline-block;margin-bottom:6px;background:rgba(255,255,255,0.2);}
    .banner-title{font-size:16px;font-weight:800;color:#fff;line-height:1.3;margin-bottom:3px;}
    .banner-sub{font-size:11px;color:rgba(255,255,255,0.7);}
    .banner-btn{background:#fff;border:none;border-radius:7px;padding:6px 12px;font-size:11px;font-weight:700;margin-top:8px;cursor:pointer;display:inline-block;color:#7B1A1A;}
    .banner-indicator {font-size: 11px; color: #aaa;padding: 0; background: transparent; position: absolute;right: 20px; bottom: 6px; font-weight: 500;}
    .banner-dots {padding: 6px 20px; justify-content: start; min-height: 28px; align-items: center;}
    .bdot{width:5px;height:5px;border-radius:3px;background:#D1D5DB;}
    .bdot.on{width:14px;background:#7B1A1A;}
    .notice{padding: 8px 20px}
    .notice-left{display:flex;align-items:center;gap:7px;flex:1;min-width:0;}
    .notice-badge{background:#FEF2F2;color:#7B1A1A;font-size:10px;font-weight:700;border-radius:5px;padding:2px 7px;white-space:nowrap;}
    .notice-txt{color:#444;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .notice-more{font-size:11px;color:#aaa;flex-shrink:0;margin-left:8px;}
    .section-inner {max-width: 100%}
    .fortune-card:nth-child(1) .fortune-icon{background:#FEF2F2;}
    .fortune-card:nth-child(2) .fortune-icon{background:#FFFBEB;}
    .fortune-card:nth-child(3) .fortune-icon{background:#EEF2FF;}
    .fortune-card:nth-child(4) .fortune-icon{background:#F5F3FF;}
    .two-col {display: flex; flex-direction: column}
    .region-grid {display: flex;gap: 7px;overflow-x: auto;scrollbar-width: none;}
    .rtag{background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:6px 14px;font-size:13px;color:#555;white-space:nowrap;flex-shrink:0;}
    .rtag.on{background:#7B1A1A;border-color:#7B1A1A;color:#fff;font-weight:700;}
    .guide-icon i{font-size: 22px !important;}
    .bottom-nav {position: fixed;width: 100%;bottom: 0; padding: 10px 0;z-index: 999}
    #container-wrap {padding-bottom:60px !important;}

    .new-store-slider .swiper-slide {width: 128px}
    .rv-swiper .swiper-slide{
        width: 218px;
    }
    .bannerSwiper .banner-indicator{
        gap:4px;bottom: -20px;
    }
    .bannerSwiper .banner-indicator span {color: #aaa}
}

@media(max-width:480px){
    .common-modal{max-width:none;padding:26px 20px 20px;border-radius:16px;}
    .modal-title{font-size:18px;}
    .modal-actions{grid-template-columns:1fr;}

    .hero-search input {min-width: 0;}
    .hero-search .sk {white-space: nowrap;flex-shrink: 0;}
}

#side-panel {display: none}
.renewal-2024 .fixed .body-inner {margin-left: 0 !important;}
.renewal-2024 .body-inner {padding: 0 !important;margin-left: 0 !important;}


/* 메인 끝 */

/* 오늘의 운세 실제 데이터 */
.fortune-tabs button{font-family:inherit}
.fortune-targets{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin:-4px 0 12px;padding-bottom:2px}
.fortune-targets[hidden]{display:none}
.fortune-targets::-webkit-scrollbar{display:none}
.fortune-target-btn{flex:0 0 auto;border:1px solid #e5e5e5;border-radius:18px;background:#fff;color:#666;padding:5px 11px;font-size:12px;cursor:pointer}
.fortune-target-btn.on{border-color:#0F1B3D;background:#0F1B3D;color:#fff;font-weight:700}
.fortune-overview{margin-bottom:12px;padding:14px 16px;border:1px solid #f0e2e2;border-radius:12px;background:#fffafa}
.fortune-overview strong{display:block;color:#7B1A1A;font-size:14px;margin-bottom:5px}
.fortune-overview p{margin:0;color:#555;font-size:13px;line-height:1.65}
.fortune-lucky{display:flex;gap:14px;margin-top:8px;color:#888;font-size:11px}
.fortune-lucky b{color:#333;margin-left:3px}
@media(max-width:1023px){.fortune-section-main .fortune-overview{padding:12px 13px}.fortune-section-main .fortune-overview p{font-size:12px}.fortune-section-main .fortune-targets{margin-bottom:10px}.fortune-section-main .fortune-card{min-width:0}.fortune-section-main .fortune-card>div:last-child{min-width:0}}

/* 메인 가로 탭 마우스 드래그 */
.horizontal-tab-nav{position:relative;display:block;min-width:0}
.horizontal-tab-nav[hidden]{display:none}
.horizontal-tab-nav .fortune-targets,
.horizontal-tab-nav .region-tabs{min-width:0;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:pan-y}
.horizontal-tab-nav.is-dragging .fortune-targets,
.horizontal-tab-nav.is-dragging .region-tabs{cursor:grabbing}


/* 메인 베스트 후기 빈 화면 */
.rv-empty-slide{width:100% !important}
.rv-empty{width:100%;padding:28px 20px;border:1px dashed #e5e5e5;border-radius:12px;background:#fafafa;text-align:center}
.rv-empty-icon{width:42px;height:42px;margin:0 auto 10px;border-radius:50%;background:#FEF2F2;color:#7B1A1A;display:flex;align-items:center;justify-content:center}
.rv-empty-icon i{font-size:21px}
.rv-empty-title{font-size:13px;font-weight:700;color:#444}
.rv-empty-desc{margin-top:4px;font-size:11px;color:#aaa}
.rv-empty-btn{display:inline-block;margin-top:12px;padding:7px 14px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#555 !important;font-size:11px;font-weight:700}
.rv-empty-btn:hover{border-color:#7B1A1A;color:#7B1A1A !important}
@media(max-width:1023px){
    .rv-empty{padding:24px 16px}
}

/* 하단 앱바의 브라우저 기본 터치 하이라이트 제거 */
.bottom-nav,
.bottom-nav .nav-item,
.bottom-nav .nav-item * {
    -webkit-tap-highlight-color: transparent;
}
