

/* 상단바 - 모바일 전용 */
.topbar {background: #fff;border-bottom: 1px solid #f0f0f0;padding: 10px 20px;display: flex;align-items: center;gap: 10px;position: sticky;top: 0;z-index: 100;}
.back {flex-shrink: 0;}
.back i {font-size: 22px;color: #333;cursor: pointer;}
.topbar-center {flex: 1;}
.topbar-region {font-size: 16px;font-weight: 800;color: var(--text-dark);display: flex;align-items: center;gap: 4px;cursor: pointer;}
.topbar-region i {font-size: 14px;color: var(--primary-red);}
.topbar-sub {font-size: 11px;color: var(--text-light);margin-top: 1px;display: flex;align-items: center;gap: 6px;flex-wrap: wrap;}
.topbar-icons {display: flex;gap: 10px;align-items: center;}
.topbar-icons i {font-size: 20px;color: var(--text-gray);cursor: pointer;}

/* 배지 공통 */
.premium-cnt {background: #FEF2F2;color: var(--primary-red);font-size: 10px;font-weight: 700;border-radius: 4px;padding: 1px 6px;}
.normal-cnt {background: #f3f4f6;color: var(--text-gray);font-size: 10px;font-weight: 700;border-radius: 4px;padding: 1px 6px;}
.consult-cnt {background: #EEF2FF;color: var(--primary-blue);font-size: 10px;font-weight: 700;border-radius: 4px;padding: 1px 6px;}

/* SEO 상단 */
.seo-top {background: #fff;padding: 8px 20px;border-bottom: 1px solid #f0f0f0;font-size: 12px;color: #888;line-height: 1.5;}
.seo-top .seo-top-inner {max-width: 100%;}
.seo-top .seo-top-title {display:inline;margin:0;padding:0;border:0;font:inherit;font-weight:700;color:var(--primary-red);}

/* 필터 영역 */
.filter-wrap {background: #fff;border-bottom: 1px solid #f0f0f0;padding: 10px 20px;display: flex;gap: 7px;align-items: center;overflow-x: auto;scrollbar-width: none;}
.filter-wrap::-webkit-scrollbar {display: none;}
.filter-all-btn {display: flex;align-items: center;gap: 4px;background: var(--primary-blue);color: #fff;border: none;border-radius: 20px;padding: 6px 12px;font-size: 12px;font-weight: 700;white-space: nowrap;flex-shrink: 0;cursor: pointer;position: relative;}
.filter-all-btn i {font-size: 13px;}
.filter-cnt-badge {position: absolute;top: -5px;right: -5px;width: 16px;height: 16px;background: #E53935;border-radius: 50%;font-size: 9px;font-weight: 700;color: #fff;display: flex;align-items: center;justify-content: center;}
.qf-tag {display: flex;align-items: center;gap: 4px;border: 1px solid var(--border-light);border-radius: 20px;padding: 5px 11px;font-size: 12px;color: var(--text-gray);white-space: nowrap;flex-shrink: 0;cursor: pointer;}
.qf-tag i {font-size: 12px;}
.qf-tag.on {background: #FEF2F2;border-color: var(--primary-red);color: var(--primary-red);font-weight: 600;}

/* 정렬 행 */
.sort-row {background: #fff;border-bottom: 1px solid #f0f0f0;padding: 8px 20px;display: flex;align-items: center;justify-content: space-between;gap: 10px;flex-wrap: wrap;}
.sort-left {font-size: 12px;color: #999;display: flex;align-items: center;gap: 5px;flex-wrap: wrap;}
.sort-left strong {color: var(--primary-red);}
.sort-right {display: flex;gap: 7px;align-items: center;flex-wrap: wrap;}
.sbtn {font-size: 12px;color: var(--text-light);padding: 3px 9px;border-radius: 6px;border-radius: 20px;cursor: pointer;border: 1px solid #eee;background: #fff;}
.sbtn.on {color: var(--primary-red);font-weight: 700;background: #FEF2F2;border-color: #7B1A1A;}

/* 구 단위 필터 - 모바일 전용 */
.gu-filter {background: #fff;border-bottom: 1px solid #f0f0f0;padding: 8px 20px;display: flex;gap: 7px;overflow-x: auto;scrollbar-width: none;}
.gu-filter::-webkit-scrollbar {display: none;}
.gu-tag {background: #fff;border: 1px solid #e0e0e0;border-radius: 20px;padding: 5px 13px;font-size: 13px;color: var(--text-gray);white-space: nowrap;flex-shrink: 0;cursor: pointer;}
.gu-tag.on {background: var(--primary-red);border-color: var(--primary-red);color: #fff;font-weight: 700;}
.compare-bar {position: fixed;bottom: 68px;left: 50%;transform: translateX(-50%);width: 335px;background: #0F1B3D;border-radius: 12px;padding: 11px 16px;display: flex;align-items: center;justify-content: space-between;z-index: 200;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);}
.compare-bar-left {display:flex;align-items:center;gap:10px;}
.compare-bar-left i {font-size:18px;color:#C9A84C;}
.compare-txt {font-size:13px;color:#fff;font-weight:600;}
.compare-sub {font-size:11px;color:rgba(255,255,255,0.6);}
.compare-items {display: none;}
.compare-item {background:rgba(255,255,255,0.15);border-radius:8px;padding:5px 10px;font-size:12px;color:#fff;display:flex;align-items:center;gap:5px;}
.compare-item i {font-size:12px;color:rgba(255,255,255,0.6);cursor:pointer;}
.compare-btn {background:#7B1A1A;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;}

/* 더보기 버튼 */
.loadmore-btn {background: #fff;border: 1px solid var(--border-medium);border-radius: 12px;padding: 13px;font-size: 14px;font-weight: 600;color: var(--text-gray);text-align: center;cursor: pointer;display: flex;align-items: center;justify-content: center;gap: 6px;}
.loadmore-btn i {font-size: 16px;color: var(--primary-red);}

/* 배너 */
.best-banner[hidden] {display:none !important;}
.best-banner {margin: 12px 20px 0;background: linear-gradient(135deg, var(--primary-red), #A0280A);border-radius: 12px;padding: 13px 15px;display: flex;align-items: center;justify-content: space-between;gap: 10px;}
.best-badge {background: rgba(255, 255, 255, 0.2);color: #fff;font-size: 10px;font-weight: 700;border-radius: 5px;padding: 2px 7px;display: inline-block;margin-bottom: 4px;}
.best-name {font-size: 14px;font-weight: 800;color: #fff;}
.best-sub {font-size: 11px;color: rgba(255, 255, 255, 0.7);margin-top: 2px;}
.best-btn {background: #fff;color: var(--primary-red);border: none;border-radius: 7px;padding: 7px 12px;font-size: 11px;font-weight: 700;white-space: nowrap;flex-shrink: 0;cursor: pointer;}

/* 지도 */
.map-area {background:#fff;border-radius:0 0 12px 12px;border:1px solid #eee;overflow:hidden;margin-bottom:12px;}
.map-placeholder {height:240px;background:linear-gradient(135deg,#f0f4f0,#e8f0e8);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;}
.map-placeholder i {font-size:36px;color:#16A34A;}
.map-placeholder p {font-size:13px;color:#888;}
.map-placeholder small {font-size:11px;color:#aaa;}
.map-close-bar {padding:10px 16px;border-top:1px solid #f0f0f0;display:flex;align-items:center;justify-content:space-between;background:#fff;}
.map-close-bar span {font-size:12px;color:#888;}
.map-close-btn {font-size:12px;color:#7B1A1A;cursor:pointer;font-weight:700;display:flex;align-items:center;gap:4px;border:1px solid #f5c0c0;border-radius:6px;padding:4px 10px;}
.map-btn-sm {display:flex;align-items:center;gap:4px;border:1px solid #eee;border-radius:7px;padding:5px 10px;font-size:12px;color:#16A34A;cursor:pointer;font-weight:600;}
.map-btn-sm i {font-size:13px;}


.kakaoMap {height:240px;background:linear-gradient(135deg,#f0f4f0,#e8f0e8);}
.map-label { position:relative; padding:7px 11px; border:1px solid #8b1e1e; border-radius:999px; background:#fff; box-shadow:0 4px 12px rgba(0,0,0,.12); font-size:12px; font-weight:700; color:#8b1e1e; white-space:nowrap; }
.map-label:after { content:""; position:absolute; left:50%; bottom:-6px; width:10px; height:10px; background:#fff; border-right:1px solid #8b1e1e; border-bottom:1px solid #8b1e1e; transform:translateX(-50%) rotate(45deg); }
.map-label-name { line-height:1; }
.map-label a {font-size:12px; font-weight:700; color:#8b1e1e;}

/* 리스트 */
.list {padding: 12px 20px;display: flex;flex-direction: column;gap: 10px;}
.section-label {font-size: 11px;font-weight: 700;padding: 2px 0 6px;display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;}
.section-label-left {display: flex;align-items: center;gap: 5px;flex-wrap: wrap;}
.ad-label {font-size: 10px;color: var(--text-light);border: 1px solid var(--border-medium);border-radius: 4px;padding: 1px 5px;font-weight: 400;}

/* card */
.card-item {position:relative;background:#fff;border-radius:14px;padding:14px;overflow:hidden;display:grid;grid-template-columns:66px 1fr auto;gap:11px;align-items:flex-start;}
.card-item.premium {border:2px solid var(--primary-red);}
.card-item.normal {border:1px solid var(--border-light);}

/* common */
.card-img {width:66px;height:66px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;position:relative;}
.card-img i {font-size:26px;}
.card-img img {width: 100%; height: 100%; object-fit: cover;border-radius: 10px;}
.card-badge {position:absolute;top:-7px;left:-7px;font-size:9px;font-weight:700;padding:2px 6px;border-radius:5px;color:#fff;}
.card-info {min-width:0;}
.card-name-row {display:flex;align-items:center;gap:5px;margin-bottom:2px;flex-wrap:wrap;}
.card-name {font-size:14px;font-weight:700;color:var(--text-dark);}
.open-badge {font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;display:flex;align-items:center;gap:2px;white-space:nowrap;}
.open-badge i {font-size:7px;}
.open-badge.open {background:#F0FDF4;color:var(--primary-green);}
.open-badge.closed {background:#f3f4f6;color:var(--text-light);}
.card-addr {font-size:12px;color:var(--text-light);margin-bottom:4px;display:flex;align-items:center;gap:3px;}
.card-addr i {font-size:12px;color:var(--primary-red);}
.stars-row {display:flex;align-items:center;gap:3px;margin-bottom:4px;}
.stars-row i {font-size:11px;color:var(--accent-yellow);}
.sc {font-size:12px;font-weight:700;color:var(--text-dark);}
.rc {font-size:11px;color:var(--text-light);}
.card-meta {display:flex;align-items:center;gap:6px;margin-bottom:5px;flex-wrap:wrap;}
.price-badge {background:#FFFBEB;color:var(--accent-orange);font-size:11px;font-weight:600;border-radius:4px;padding:2px 7px;display:flex;align-items:center;gap:3px;}
.response-badge {background:#EEF2FF;color:var(--primary-blue);font-size:11px;font-weight:600;border-radius:4px;padding:2px 7px;}
.card-tags {display:flex;gap:5px;flex-wrap:wrap;}
.ctag {border-radius:5px;padding:3px 8px;font-size:11px;}

/* right */
.card-right {display:contents;}
.card-right-icons {display:flex;flex-direction:column;gap:6px;margin-left:4px;}
.icon-btn {width:30px;height:30px;border-radius:50%;border:1px solid var(--border-light);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
.icon-btn.wish i {font-size:15px;color:var(--border-medium);}
.icon-btn.wish.on i {color:#E53935;}
.icon-btn.share i {font-size:14px;color:var(--primary-blue);}

/* bottom mobile */
.evt-strip {grid-column:1 / -1;background:#FEF2F2;color:var(--primary-red);border-radius:7px;padding:7px 10px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:5px;margin-top:10px;}
.evt-strip i {font-size:13px;color:var(--accent-orange);}
.num050 {grid-column:1 / -1;background:#F0FDF4;border-radius:7px;padding:7px 10px;font-size:11px;color:var(--primary-green);display:flex;align-items:center;gap:5px;}
.num050 i {font-size:13px;color:#16A34A;}
.card-actions {grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #f5f5f5;padding-top:11px;}
.btn-call {background:#fff;border:1.5px solid var(--primary-red);border-radius:9px;padding:10px 0;font-size:13px;font-weight:700;color:var(--primary-red);text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;}
.btn-detail {border:0;border-radius:9px;padding:10px 0;font-size:13px;font-weight:600;color:#fff;text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;}
.card-item.premium .btn-detail {background:var(--primary-red);}
.card-item.normal .btn-detail {background:#0F1B3D;}
.compare-add {grid-column:1 / -1;border:1px dashed var(--border-medium);border-radius:8px;padding:7px;font-size:12px;color:var(--text-light);text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;}
.compare-add.on {background: #0F1B3D;color: #fff}
.compare-add i {font-size:13px;}
.upgrade-hint {font-size: 11px;color: var(--text-light);text-align: right;cursor: pointer;text-decoration: underline;margin-top: 2px;}
.card-actions > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

.card-check {display:none;}

/*!* 카드 공통 *!*/
/*.card {background: #fff;border-radius: 14px;overflow: hidden;}*/
/*.card.premium {border: 2px solid var(--primary-red);}*/
/*.card.normal {border: 1px solid var(--border-light);}*/

/*!* 모바일: card-body > card-top 구조 *!*/
/*.card-body {padding: 14px;}*/
/*.card-top {display: flex;gap: 11px;align-items: flex-start;}*/

/*!* 데스크톱: card-inner 구조 (모바일에서는 숨김) *!*/
/*.card-inner {display: none;}*/
/*.card-img {width: 66px;height: 66px;border-radius: 10px;display: flex;align-items: center;justify-content: center;font-size: 26px;flex-shrink: 0;position: relative;}*/
/*.card-badge {position: absolute;top: -7px;left: -7px;font-size: 9px;font-weight: 700;padding: 2px 6px;border-radius: 5px;color: #fff;}*/
/*.card-info {flex: 1;min-width: 0;}*/
/*.card-name-row {display: flex;align-items: center;gap: 5px;margin-bottom: 2px;flex-wrap: wrap;}*/
/*.card-name {font-size: 14px;font-weight: 700;color: var(--text-dark);}*/
/*.open-badge {font-size: 10px;font-weight: 700;padding: 2px 6px;border-radius: 4px;display: flex;align-items: center;gap: 2px;white-space: nowrap;}*/
/*.open-badge.open {background: #F0FDF4;color: var(--primary-green);}*/
/*.open-badge.closed {background: #f3f4f6;color: var(--text-light);}*/
/*.card-addr {font-size: 12px;color: var(--text-light);margin-bottom: 4px;display: flex;align-items: center;gap: 3px;}*/
/*.card-addr i {font-size: 12px;color: var(--primary-red);}*/
/*.stars-row {display: flex;align-items: center;gap: 3px;margin-bottom: 4px;}*/
/*.stars-row i {font-size: 11px;color: var(--accent-yellow);}*/
/*.sc {font-size: 12px;font-weight: 700;color: var(--text-dark);}*/
/*.rc {font-size: 11px;color: var(--text-light);}*/
/*.card-meta {display: flex;align-items: center;gap: 6px;margin-bottom: 5px;flex-wrap: wrap;}*/
/*.price-badge {background: #FFFBEB;color: var(--accent-orange);font-size: 11px;font-weight: 600;border-radius: 4px;padding: 2px 7px;}*/
/*.response-badge {background: #EEF2FF;color: var(--primary-blue);font-size: 11px;font-weight: 600;border-radius: 4px;padding: 2px 7px;}*/
/*.card-tags {display: flex;gap: 5px;flex-wrap: wrap;}*/
/*.ctag {border-radius: 5px;padding: 3px 8px;font-size: 11px;}*/
/*.card-right-icons {display: flex;flex-direction: column;gap: 6px;margin-left: 4px;}*/
/*.icon-btn {width: 30px;height: 30px;border-radius: 50%;border: 1px solid var(--border-light);background: #fff;display: flex;align-items: center;justify-content: center;cursor: pointer;flex-shrink: 0;}*/
/*.icon-btn.wish i {font-size: 15px;color: var(--border-medium);}*/
/*.icon-btn.wish.on i {color: #E53935;}*/
/*.icon-btn.share i {font-size: 14px;color: var(--primary-blue);}*/
/*.evt-strip {background: #FEF2F2;color: var(--primary-red);border-radius: 7px;padding: 7px 10px;font-size: 11px;font-weight: 600;display: flex;align-items: center;gap: 5px;margin-top: 10px;}*/
/*.evt-strip i {font-size: 13px;color: var(--accent-orange);}*/
/*.num050 {background: #F0FDF4;border-radius: 7px;padding: 7px 10px;font-size: 11px;color: var(--primary-green);display: flex;align-items: center;gap: 5px;margin-top: 7px;}*/
/*.num050 i {font-size: 13px;color: #16A34A;}*/
/*.card-divider {border: none;border-top: 1px solid #f5f5f5;margin: 11px 0;}*/
/*.card-actions {display: grid;grid-template-columns: 1fr 1fr;gap: 8px;}*/
/*.btn-call {background: #fff;border: 1.5px solid var(--primary-red);border-radius: 9px;padding: 10px 0;font-size: 13px;font-weight: 700;color: var(--primary-red);text-align: center;cursor: pointer;display: flex;align-items: center;justify-content: center;gap: 5px;}*/
/*.btn-detail {border: none;border-radius: 9px;padding: 10px 0;font-size: 13px;font-weight: 600;color: #fff;text-align: center;cursor: pointer;display: flex;align-items: center;justify-content: center;gap: 5px;}*/
/*.compare-add {margin-top: 8px;border: 1px dashed var(--border-medium);border-radius: 8px;padding: 7px;font-size: 12px;color: var(--text-light);text-align: center;cursor: pointer;display: flex;align-items: center;justify-content: center;gap: 4px;}*/
/*.compare-add i {font-size: 13px;}*/
/*.upgrade-hint {font-size: 11px;color: var(--text-light);text-align: right;cursor: pointer;text-decoration: underline;margin-top: 2px;}*/

/* 최근 본 업체 */
.recent-section {background: #fff;border-radius: 12px;border: 1px solid var(--border-light);padding: 13px 14px;margin-bottom: 12px;}
.recent-title {font-size: 13px;font-weight: 700;color: var(--text-dark);margin-bottom: 10px;display: flex;align-items: center;gap: 5px;}
.recent-title i {font-size: 15px;color: var(--primary-blue);}
.recent-scroll {display: flex;gap: 8px;overflow-x: auto;scrollbar-width: none;}
.recent-scroll::-webkit-scrollbar {display: none;}
.recent-card {flex-shrink: 0;width: 100px;border-radius: 9px;overflow: hidden;cursor: pointer;border: 1px solid var(--border-light);}
.recent-card:hover {border-color: var(--primary-red);}
.recent-img {height: 52px;display: flex;align-items: center;justify-content: center;overflow: hidden;background: #f7f7f7;}
.recent-img img {width: 100%;height: 100%;object-fit: cover;display: block;}
.recent-info {padding: 6px 8px;}
.recent-name {font-size: 11px;font-weight: 700;color: var(--text-dark);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.recent-time {font-size: 10px;color: var(--text-light);}

/* SEO 하단 */
.seo-block {background: #fff;border-radius: 12px;border: 1px solid #f0f0f0;padding: 14px;}
.seo-title {margin-top:0;padding:0;font-size: 13px;font-weight: 700;color: var(--text-dark);margin-bottom: 5px;display: flex;align-items: center;gap: 6px;}
.seo-title i {font-size: 14px;color: var(--primary-red);}
.seo-txt {font-size: 12px;color: #888;line-height: 1.8;}
.seo-txt p {margin:0 0 0.6em;}
.seo-txt p:last-child {margin-bottom:0;}
.seo-txt ul, .seo-txt ol {padding-left:1.5em;list-style:revert;}
.seo-txt img {max-width:100%;height:auto;}
.seo-more {font-size: 12px;color: var(--primary-red);margin-top: 5px;font-weight: 600;cursor: pointer;}

/* 사이드바 - 데스크톱 전용 */
.sidebar {background: #fff;border-radius: 14px;border: 1px solid var(--border-light);overflow: hidden;position: sticky;top: 76px;display: none;}
.sb-head {padding: 14px 16px;border-bottom: 1px solid #f0f0f0;display: flex;align-items: center;justify-content: space-between;}
.sb-title {font-size: 14px;font-weight: 700;color: var(--text-dark);display: flex;align-items: center;gap: 6px;}
.sb-title i {font-size: 16px;color: var(--primary-red);}
.sb-reset {font-size: 12px;color: var(--primary-red);cursor: pointer;display: flex;align-items: center;gap: 3px;border: 1px solid #f5c0c0;border-radius: 6px;padding: 3px 8px;}
.sido-list {padding: 4px 0;}
.sido-item {padding: 10px 16px;font-size: 14px;color: var(--text-gray);cursor: pointer;display: flex;align-items: center;justify-content: space-between;}
.sido-item:hover {background: #f9f9f9;color: var(--primary-red);}
.sido-item.on {color: var(--primary-red);font-weight: 700;background: #FEF2F2;border-left: 3px solid var(--primary-red);}
.gugun-list {background: #f9f9f9;border-top: 1px solid #f0f0f0;padding: 4px 0;display: none}
.gugun-list.on {display: block}
.gugun-item {}
.gugun-item a {padding: 9px 16px 9px 28px;font-size: 13px;color: var(--text-gray);display: flex;align-items: center;justify-content: space-between;}
.gugun-item:hover {color: var(--primary-red);}
.gugun-item.on {color: var(--primary-red);font-weight: 700;}
.gugun-cnt {font-size: 11px;color: var(--text-light);}
.gugun-cnt.has {color: var(--primary-red);font-weight: 700;}

/* 알림 신청 배너 - 사이드바 내 */
.alert-banner {background: #EEF2FF;border-radius: 10px;margin: 10px 12px;padding: 10px 12px;display: flex;align-items: center;justify-content: space-between;gap: 8px;}
.alert-txt {font-size: 11px;color: var(--primary-blue);line-height: 1.5;}
.alert-btn {background: var(--primary-blue);color: #fff;border: none;border-radius: 6px;padding: 5px 10px;font-size: 11px;font-weight: 700;cursor: pointer;white-space: nowrap;}

/* 필터 저장 - 사이드바 내 */
.filter-save {margin: 8px 12px 10px;border: 1px dashed var(--border-medium);border-radius: 8px;padding: 8px 12px;display: flex;align-items: center;justify-content: space-between;cursor: pointer;}
.filter-save-txt {font-size: 11px;color: #888;display: flex;align-items: center;gap: 5px;}
.filter-save-txt i {font-size: 13px;color: var(--accent-orange);}
.filter-save-btn {font-size: 11px;color: var(--primary-red);font-weight: 600;}

/* 리스트 헤더 - 데스크톱 전용 */
.list-head {background: #fff;border-radius: 12px;border: 1px solid var(--border-light);padding: 16px 18px;margin-bottom: 12px;display: none;}
.list-head-top {display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 12px;}
.list-head-left .lt {font-size: 17px;font-weight: 800;color: var(--text-dark);}
.list-head-left .ls {font-size: 12px;color: var(--text-light);margin-top: 3px;display: flex;align-items: center;gap: 6px;flex-wrap: wrap;}
.list-head-actions {display: flex;gap: 8px;}
.action-btn {display: flex;align-items: center;gap: 5px;border: 1px solid var(--border-medium);border-radius: 8px;padding: 7px 12px;font-size: 12px;color: var(--text-gray);cursor: pointer;background: #fff;}
.action-btn i {font-size: 14px;}
.action-btn:hover {border-color: var(--primary-red);color: var(--primary-red);}

/* 빠른 필터 - 데스크톱 */
.quick-filters {display: flex;gap: 7px;flex-wrap: wrap;padding-bottom: 12px;border-bottom: 1px solid #f0f0f0;margin-bottom: 10px;align-items: center;}
.filter-badge {position: absolute;top: -6px;right: -6px;width: 16px;height: 16px;background: var(--primary-red);border-radius: 50%;color: #fff;font-size: 9px;font-weight: 700;display: flex;align-items: center;justify-content: center;}
.filter-reset {margin-left: auto;font-size: 12px;color: var(--text-light);cursor: pointer;display: flex;align-items: center;gap: 4px;border: 1px solid var(--border-light);border-radius: 20px;padding: 5px 12px;}
.filter-reset i {font-size: 13px;}

/* 레이아웃 컨테이너 */
.layout {max-width: 100%;margin: 0 auto;padding: 0;}


/* ============ 반응형 - 768px 이상 (태블릿+) ============ */
@media (min-width: 768px) {
    .topbar {padding: 12px 40px;}
    .filter-wrap, .sort-row, .seo-top {padding: 10px 40px;}
    .list {padding: 16px 40px;}
    .best-banner {margin: 16px 40px 0;}
    .card-img {width: 78px;height: 78px;font-size: 28px;}
    .card-body {padding: 16px;}
}

/* ============ 반응형 - 1024px 이상 (데스크톱) ============ */
@media (min-width: 1024px) {
    .topbar {display: none;}

    /* 2컬럼 레이아웃 */
    .layout {max-width: 1060px;margin: 0 auto;padding: 20px 40px;display: grid;grid-template-columns: 220px 1fr;gap: 20px;align-items: start;}

    /* 사이드바 표시 */
    .sidebar {display: block;}

    /* 리스트 헤더 표시 */
    .list-head {display: block;}
    .seo-top {padding: 10px 0;}
    .seo-top .seo-top-inner {max-width: 1060px;margin: 0 auto;}
    .filter-wrap, .sort-row {display: none;}
    .list-head .sort-row {display: flex;}
    .sbtn {padding: 5px 12px;}

    /* 모바일 전용 요소 숨김 */
    .gu-filter {display: none;}
    .loadmore-btn {display: none;}
    .best-banner {margin: 0 0 12px;padding: 14px 18px;}
    .list {padding: 0;}

    .card-item {display:flex;gap:14px;align-items:flex-start;padding:18px;}
    .card-check {display:flex;flex-direction:column;align-items:center;gap:3px;flex-shrink:0;}
    .check-box {width:20px;height:20px;border:2px solid var(--border-medium);border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;}
    .check-box.on {background:var(--primary-red);border-color:var(--primary-red);}
    .check-box.on i {font-size:12px;color:#fff;}
    .check-label {font-size:10px;color:var(--text-light);}

    .card-img {width:78px;height:78px;}
    .card-img i {font-size:28px;}
    .card-info {flex:1;}
    .card-name {font-size:15px;}
    .open-badge i {font-size:8px;}
    .card-addr {font-size:13px;}
    .stars-row i {font-size:13px;}
    .sc {font-size:13px;}
    .rc {font-size:12px;}
    .ctag {font-size: 12px}

    .card-right {display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;min-width:170px;}
    .card-right-icons {flex-direction:row;gap:7px;margin-left:0;}
    .icon-btn {width:34px;height:34px;}
    .icon-btn.wish i {font-size:17px;}
    .icon-btn.share i {font-size:15px;}
    .section-label {font-size: 12px}

    .evt-strip, .num050 {width:100%;margin-top:0;}
    .card-actions {width:100%;grid-template-columns:1fr;border-top:0;padding-top:0;}
    .compare-add {display:none;}
    /*!* 카드 레이아웃 조정 - 데스크톱 *!*/
    /*.card-body {display: none;}*/
    /*.card-inner {display: flex;gap: 14px;align-items: flex-start;padding: 18px;}*/
    /*.card-top {gap: 14px;}*/
    /*.card-check {display: flex;flex-direction: column;align-items: center;gap: 3px;flex-shrink: 0;}*/
    /*.check-box {width: 20px;height: 20px;border: 2px solid var(--border-medium);border-radius: 5px;display: flex;align-items: center;justify-content: center;cursor: pointer;}*/
    /*.check-box.on {background: var(--primary-red);border-color: var(--primary-red);}*/
    /*.check-box.on i {font-size: 12px;color: #fff;}*/
    /*.check-label {font-size: 10px;color: var(--text-light);}*/
    /*.card-right {display: flex;flex-direction: column;align-items: flex-end;gap: 8px;flex-shrink: 0;min-width: 170px;}*/
    /*.card-right-icons {display: flex;flex-direction: row;gap: 7px;}*/
    /*.card-img {width: 78px;height: 78px;}*/
    /*.card-name {font-size: 15px;}*/
    /*.card-addr {font-size: 13px;}*/
    /*.stars-row i {font-size: 13px;}*/
    /*.sc {font-size: 13px;}*/
    /*.rc {font-size: 12px;}*/
    /*.card-right-icons {flex-direction: row;margin-left: auto;}*/

    /*!* 카드 오른쪽 영역 - 데스크톱 *!*/
    /*.card-top {position: relative;}*/
    /*.card-right-full {display: flex;flex-direction: column;align-items: flex-end;gap: 8px;flex-shrink: 0;min-width: 170px;}*/
    /*.evt-strip, .num050 {margin-top: 0;width: 100%;}*/
    /*.card-actions {width: 100%;grid-template-columns: 1fr;}*/
    /*.icon-btn {width: 34px;height: 34px;}*/
    /*.icon-btn.wish i {font-size: 17px;}*/
    /*.icon-btn.share i {font-size: 15px;}*/
    /*.section-label {font-size: 12px;}*/
    /*.premium-cnt, .normal-cnt {font-size: 11px;}*/

    /* 비교 바 */
    .compare-bar {position: sticky;top:76px;bottom: unset;left: unset;transform: translateX(0);width: auto;z-index: 3;box-shadow: none;}
    .compare-bar {background:#0F1B3D;border-radius:12px;padding:12px 16px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;}
    .compare-bar-left {display:flex;align-items:center;gap:10px;}
    .compare-bar-left i {font-size:18px;color:#C9A84C;}
    .compare-txt {font-size:13px;color:#fff;font-weight:600;}
    .compare-sub {font-size:11px;color:rgba(255,255,255,0.6);}
    .compare-items {display:flex;gap:8px;}
    .compare-item {background:rgba(255,255,255,0.15);border-radius:8px;padding:5px 10px;font-size:12px;color:#fff;display:flex;align-items:center;gap:5px;}
    .compare-item i {font-size:12px;color:rgba(255,255,255,0.6);cursor:pointer;}
    .compare-btn {background:#7B1A1A;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;}

    /* 최근 본 업체 - 데스크톱 */
    .recent-section {padding: 14px 16px;}
    .recent-card {width: 120px;}
    .recent-img {height: 58px;}
    .map-area {border-radius: 12px;}

    /* SEO 하단 - 데스크톱 */ .seo-block {padding: 16px 18px;margin-top: 4px;}

}

/* 모바일 지역 선택 바텀시트 */
.region-sheet-backdrop {position:fixed;inset:0;background:rgba(15,23,42,.42);opacity:0;visibility:hidden;transition:.2s;z-index:10000;}
.region-sheet-backdrop.on {opacity:1;visibility:visible;}
.region-sheet {position:fixed;left:0;right:0;bottom:0;max-height:78vh;background:#fff;border-radius:20px 20px 0 0;box-shadow:none;transform:translateY(105%);transition:transform .25s ease;z-index:10001;padding:8px 0 max(18px, env(safe-area-inset-bottom));overflow:hidden;}
.region-sheet.on {transform:translateY(0);box-shadow:0 -10px 30px rgba(0,0,0,.16);}
.region-sheet-handle {width:38px;height:4px;border-radius:999px;background:#d1d5db;margin:2px auto 7px;}
.region-sheet-head {display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px;border-bottom:1px solid #f1f1f1;}
.region-sheet-head strong {font-size:17px;color:var(--text-dark);}
.region-sheet-close {width:32px;height:32px;border:0;border-radius:50%;background:#f5f5f5;color:var(--text-gray);display:flex;align-items:center;justify-content:center;}
.region-sheet-sido {display:flex;gap:7px;padding:13px 20px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid #f4f4f4;}
.region-sheet-sido::-webkit-scrollbar {display:none;}
.region-sheet-sido-btn {flex:0 0 auto;border:1px solid var(--border-medium);border-radius:20px;background:#fff;color:var(--text-gray);padding:7px 13px;font-size:13px;}
.region-sheet-sido-btn.on {border-color:var(--primary-red);background:var(--primary-red);color:#fff;font-weight:700;}
.region-sheet-gugun {display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px 20px 20px;max-height:48vh;overflow-y:auto;}
.region-sheet-gugun.on {display:grid;}
.region-sheet-gugun a {display:flex;align-items:center;justify-content:space-between;gap:6px;border:1px solid var(--border-light);border-radius:10px;padding:11px 12px;color:var(--text-gray);font-size:13px;}
.region-sheet-gugun a span {font-size:11px;color:var(--text-light);}
.region-sheet-gugun a.on {border-color:var(--primary-red);background:#FEF2F2;color:var(--primary-red);font-weight:700;}
body.region-sheet-open {overflow:hidden;}
.desktop-pagination {display:none;}
.loadmore-btn.loading {pointer-events:none;opacity:.65;}

@media (min-width:1024px) {
    .region-sheet, .region-sheet-backdrop {display:none;}
    .desktop-pagination {display:block;}
}


/* 실제 목록 필터 */
.topbar-filter-open {border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.topbar-filter-open i {font-size:20px;color:var(--text-gray);}
.filter-checkbox {width:16px;height:16px;border:1px solid var(--border-medium);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;background:#fff;}
.filter-checkbox i {font-size:11px;color:transparent !important;}
.qf-tag.on .filter-checkbox {background:var(--primary-red);border-color:var(--primary-red);}
.qf-tag.on .filter-checkbox i {color:#fff !important;}

.filter-sheet-backdrop {position:fixed;inset:0;background:rgba(15,23,42,.42);opacity:0;visibility:hidden;transition:.2s;z-index:10002;}
.filter-sheet-backdrop.on {opacity:1;visibility:visible;}
.filter-sheet {position:fixed;left:0;right:0;bottom:0;background:#fff;border-radius:20px 20px 0 0;box-shadow:none;transform:translateY(105%);transition:transform .25s ease;z-index:10003;padding:8px 0 max(18px, env(safe-area-inset-bottom));}
.filter-sheet.on {transform:translateY(0);box-shadow:0 -10px 30px rgba(0,0,0,.16);}
.filter-sheet-handle {width:38px;height:4px;border-radius:999px;background:#d1d5db;margin:2px auto 7px;}
.filter-sheet-head {display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px;border-bottom:1px solid #f1f1f1;}
.filter-sheet-head strong {font-size:17px;color:var(--text-dark);}
.filter-sheet-close {width:32px;height:32px;border:0;border-radius:50%;background:#f5f5f5;color:var(--text-gray);display:flex;align-items:center;justify-content:center;}
.filter-sheet-form {padding:8px 20px 0;}
.filter-sheet-options {display:flex;flex-direction:column;}
.filter-sheet-option {display:flex;align-items:center;justify-content:space-between;min-height:52px;border-bottom:1px solid #f3f4f6;cursor:pointer;}
.filter-sheet-option > span:first-child {display:flex;align-items:center;gap:9px;font-size:14px;color:var(--text-dark);}
.filter-sheet-option > span:first-child i {font-size:17px;color:var(--primary-red);}
.filter-sheet-option input {position:absolute;opacity:0;pointer-events:none;}
.filter-check {width:22px;height:22px;border:1px solid var(--border-medium);border-radius:6px;display:flex;align-items:center;justify-content:center;background:#fff;}
.filter-check i {font-size:14px;color:transparent;}
.filter-sheet-option input:checked + .filter-check {background:var(--primary-red);border-color:var(--primary-red);}
.filter-sheet-option input:checked + .filter-check i {color:#fff;}
.filter-sheet-actions {display:grid;grid-template-columns:90px 1fr;gap:8px;padding-top:14px;}
.filter-sheet-reset,.filter-sheet-apply {height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;}
.filter-sheet-reset {border:1px solid var(--border-medium);color:var(--text-gray);background:#fff;}
.filter-sheet-apply {border:0;background:var(--primary-red);color:#fff;}
body.filter-sheet-open {overflow:hidden;}

@media (min-width:1024px) {
    .filter-sheet,.filter-sheet-backdrop {display:none;}
}


/* 목록 정렬 및 지도 토글 */
.map-area {display:none;}
.map-toggle-btn {font-family:inherit;}
.map-toggle-btn.on {border-color:var(--primary-red);color:var(--primary-red);background:#FEF2F2;}
.mobile-sort {position:relative;}
.mobile-sort-toggle {display:flex;align-items:center;gap:3px;border:1px solid #eee;border-radius:20px;background:#fff;color:var(--text-gray);padding:5px 10px;font-size:12px;white-space:nowrap;}
.mobile-sort-toggle i {font-size:12px;transition:transform .2s;}
.mobile-sort.open .mobile-sort-toggle {border-color:var(--primary-red);color:var(--primary-red);}
.mobile-sort.open .mobile-sort-toggle i {transform:rotate(180deg);}
.mobile-sort-menu {position:absolute;top:calc(100% + 6px);right:0;width:112px;padding:5px;background:#fff;border:1px solid var(--border-light);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);display:none;z-index:120;}
.mobile-sort.open .mobile-sort-menu {display:block;}
.mobile-sort-menu a {display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border-radius:7px;color:var(--text-gray);font-size:12px;}
.mobile-sort-menu a.on {background:#FEF2F2;color:var(--primary-red);font-weight:700;}
.mobile-sort-menu a i {font-size:13px;}
.map-btn-sm {border:1px solid #eee;background:#fff;}

@media (min-width:1024px) {
    .mobile-sort {display:none;}
    .map-area {display:block;}
}


/* 카드 임시 숨김 및 공유 모달 */
.response-badge[hidden],.upgrade-hint[hidden] {display:none !important;}
.share-trigger {font-family:inherit;}
.share-modal-backdrop {position:fixed;inset:0;background:rgba(0,0,0,.58);opacity:0;visibility:hidden;transition:.2s;z-index:10004;}
.share-modal-backdrop.on {opacity:1;visibility:visible;}
.share-modal {position:fixed;left:50%;top:50%;width:min(480px,calc(100% - 36px));background:#fff;border-radius:12px;padding:22px 18px 24px;box-shadow:0 18px 50px rgba(0,0,0,.24);opacity:0;visibility:hidden;transform:translate(-50%,-46%);transition:.2s;z-index:10005;}
.share-modal.on {opacity:1;visibility:visible;transform:translate(-50%,-50%);}
.share-modal-head {display:flex;align-items:center;justify-content:space-between;padding:0 2px 18px;}
.share-modal-head strong {font-size:17px;color:var(--text-dark);}
.share-modal-close {width:32px;height:32px;border:0;border-radius:50%;background:#f5f5f5;color:var(--text-gray);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.share-modal-options {display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.share-option {border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:9px;padding:4px 0;color:var(--text-dark);font-size:12px;cursor:pointer;}
.share-option-icon {width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:19px;}
.share-option-icon img {display:block;width:23px;height:23px;object-fit:contain;}
.share-option-icon svg {display:block;width:22px;height:22px;}
.share-option-icon.kakao {background:#FEE500;color:#181600;}
.share-option-icon.facebook {background:#1877F2;color:#fff;}
.share-option-icon.x {background:#000;color:#fff;}
.share-option-icon.copy {background:#f3f4f6;color:#555;}
.share-option-icon.copy i {font-size:21px;}
.share-copy-message {min-height:18px;margin-top:14px;text-align:center;color:var(--primary-red);font-size:12px;}
body.share-modal-open {overflow:hidden;}

@media (max-width:420px) {
    .share-modal {padding:20px 14px 22px;}
    .share-modal-options {gap:4px;}
    .share-option-icon {width:44px;height:44px;}
}

.topbar-share {border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;}

.compare-item button {border:0;background:transparent;padding:0;color:inherit;display:flex;align-items:center;cursor:pointer;}
.compare-btn[aria-disabled="true"] {pointer-events:none;opacity:.5;}

.seo-more[hidden] {display:none !important;}
