/* == review_keyword.css == */
/* 리뷰 키워드 (칩 / 뱃지 / 집계바)
   - 색상은 프론트 테마와 통일: primary #FF385C, tint #FFEDF1
   - 샵 상세·후기전체보기는 테마 v2 미적용 구역이라 이 파일을 따로 로드한다.
   - 클래스는 전부 .rk- 접두어. 기존 style.css 와 충돌 없음. */

/* 전역 오염 방지: 변수는 :root 가 아니라 우리 블록에만 선언한다 */
.rk-chips, .rk-badges, .rk-stat {
    --rk-primary: #FF385C;
    --rk-tint: #FFEDF1;
    --rk-tint-text: #D12A4C;
    --rk-tint-border: #FFC4D0;
    --rk-border: #e5e9ee;
    --rk-muted: #6b7480;
    --rk-track: #f2f4f7;
    --rk-neutral: #F2F4F7;
    --rk-neutral-text: #4B5563;
    --rk-neutral-border: #E3E7EC;
    --rk-bar-1: #FF385C;   /* 1위 = 메인 코랄 */
    --rk-bar-2: #FF7891;
    --rk-bar-3: #FFACBC;   /* 3위를 진하게 하면서 2위도 같이 내려 단계 간격을 고르게 유지 */
    /* 4위~ 회색. 트랙(#F2F4F7)보다는 진하되 3위보다 밝게 유지.
       알파 0.85 로 살짝 비쳐 보이게 — 더 낮추면 트랙과의 색차(ΔE)가 6 아래로 떨어져 묻힌다. */
    --rk-bar-4: rgba(203, 210, 218, .85);
}

/* ---------- 작성/수정 폼 칩 ---------- */

/* style.css 의 `.talk_write_search{height:60px}` 는 별점 한 줄에 맞춘 고정 높이다.
   칩 묶음은 여러 줄로 늘어나므로 60px 상자를 뚫고 나와 아래 안내문·본문 입력창을 덮는다.
   전역 규칙은 별점·샵검색이 함께 쓰므로 건드리지 않고, 키워드 블록만 스코프해서 높이를 푼다. */
#talk_keyword .talk_write_search {
    height: auto;
    padding-top: 16px;
    padding-bottom: 14px;
}

/* 가로 3개씩 고정 배치(그리드). flex 자동 줄바꿈은 칩 폭이 제각각이라
   줄 끝이 들쭉날쭉하고 11개가 6~8줄까지 늘어졌다. 3열 고정이면 항상 4행으로 떨어진다. */
.rk-chips {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    padding: 12px 0 4px;
}

.rk-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    /* 3열 그리드라 칩 폭이 화면폭/3 로 고정된다. 긴 라벨("가격이 합리적이에요")은
       한 줄에 못 들어가므로 줄바꿈을 허용하고 가운데 정렬한다.
       font-size 는 .79rem 이하여야 360px 에서도 2줄로 떨어진다(.80rem 이면 3줄) →
       기기 폰트 편차를 감안해 .78rem. */
    justify-content: center;
    text-align: center;
    white-space: normal;
    padding: 8px 5px;
    border: 1px solid var(--rk-border);
    border-radius: 999px;
    background: #fff;
    color: #6b7480;
    font-size: .78rem;
    line-height: 1.3;
    cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
    -webkit-tap-highlight-color: rgba(0,0,0,.06);
}

/* 선택 상태: 원래는 primary 단색(#FF385C)+흰 글씨였는데 파스텔 톤으로 변경.
   '필수' 배지와 같은 tint 조합(#FFEDF1 배경 / #D12A4C 글씨)이라 폼 안에서 색이 겉돌지 않는다.
   미선택(흰 배경·회색 글씨·연회색 테두리)과 배경·글씨·테두리 3개가 모두 달라 구분된다. */
.rk-chip.on {
    background: var(--rk-tint);
    border-color: var(--rk-tint-border);
    color: var(--rk-tint-text);
    font-weight: 600;
}

.rk-chip-guide {
    font-size: .8rem;
    color: var(--rk-muted);
    padding-top: 4px;
}

.rk-chip-guide em {
    color: inherit;
    font-style: normal;
    font-weight: inherit;
}

/* ---------- 작성폼 2스텝 (방문후기 전용) ---------- */
/* rk 변수는 원본이 .rk-chips/.rk-badges/.rk-stat 에만 선언돼 그 밖의 새 요소(다음버튼·필수배지·
   카운터·사진박스·이전버튼)엔 미도달 → var() 가 무효가 돼 색이 안 먹었다.
   폼 페이지 래퍼에 같은 변수를 선언해 이 요소들이 전부 상속받게 한다.
   (이 파일은 샵상세에서도 로드되지만 거긴 .mm-page-talk-* 가 없어 오염 없음) */
.mm-page-talk-write, .mm-page-talk-edit {
    --rk-primary: #FF385C;
    --rk-tint: #FFEDF1;
    --rk-tint-text: #D12A4C;
    --rk-tint-border: #FFC4D0;
    --rk-border: #e5e9ee;
    --rk-muted: #6b7480;
    --rk-neutral: #F2F4F7;
    --rk-neutral-text: #4B5563;
    --rk-neutral-border: #E3E7EC;
    --rk-bar-1: #FF385C;   /* 1위 = 메인 코랄 */
    --rk-bar-2: #FF7891;
    --rk-bar-3: #FFACBC;   /* 3위를 진하게 하면서 2위도 같이 내려 단계 간격을 고르게 유지 */
    /* 4위~ 회색. 트랙(#F2F4F7)보다는 진하되 3위보다 밝게 유지.
       알파 0.85 로 살짝 비쳐 보이게 — 더 낮추면 트랙과의 색차(ΔE)가 6 아래로 떨어져 묻힌다. */
    --rk-bar-4: rgba(203, 210, 218, .85);
}

/* 필수 배지 */
.rk-req {
    display: inline-block;
    margin-left: 3px;
    padding: 2px 6px;   /* 별점 카드에서 라벨+별이 390px 화면에 한 줄로 들어가도록 3px 절약 */
    border-radius: 999px;
    background: var(--rk-tint);
    color: var(--rk-tint-text);
    font-size: .68rem;
    font-weight: 700;
    vertical-align: middle;
    line-height: 1.4;
}

/* 키워드 선택 카운터 */
.rk-counter {
    margin-top: 10px;
    font-size: .8rem;
    color: var(--rk-muted);
}
.rk-counter-n {
    color: var(--rk-primary);
    font-weight: 700;
}

/* STEP1 다음 버튼 — li 를 카드로 감싸지 않고 CTA 버튼만 노출.
   테마의 `... > ul > li` 카드 규칙(margin12/padding14/배경/그림자)을 명시도로 덮어쓴다.
   좌우 margin 12px 은 유지해 위 카드들과 폭을 맞춘다. */
.mm-theme-v2.mm-page-talk-write .talk_contents_area > ul > li.rk-nav-step1,
.mm-theme-v2.mm-page-talk-edit .talk_contents_area > ul > li.rk-nav-step1 {
    margin: 12px;
    padding: 0;
    background: none;
    box-shadow: none;
    border-radius: 0;
    border-top: none;
}
.rk-next-btn {
    display: block;
    width: 100%;
    padding: 14px 0;
    border: 0;
    border-radius: 8px;
    background: var(--rk-primary);
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}
.rk-next-btn:disabled {
    background: #f4b8c4;
    cursor: default;
}

/* STEP2 요약 카드 */
.rk-summary {
    padding: 14px 0 2px;
}
.rk-summary-shop {
    font-size: .95rem;
    font-weight: 700;
    color: #1f1f1f;
}
.rk-summary-shop b {
    margin-left: 6px;
    color: var(--rk-primary);
}
.rk-summary-chips {
    margin-top: 10px;
}

/* STEP2 사진 업로드 박스 */
.rk-photo-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 26px 0;
    border: 1.5px dashed var(--rk-border);
    border-radius: 14px;
    background: #fafbfc;
    color: var(--rk-muted);
    cursor: pointer;
    text-align: center;
}
.rk-photo-box i {
    font-size: 1.4rem;
    color: var(--rk-primary);
}
.rk-photo-box p {
    margin: 0;
    font-size: .86rem;
}
.rk-photo-cnt {
    font-size: .78rem;
}

/* 선택한 사진 미리보기 (작성·수정 공용).
   기존엔 'N / 5' 숫자만 보여서 무슨 사진을 골랐는지 확인할 방법이 없었다. */
.rk-photo-preview {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
    margin-top: 10px;
}

.rk-photo-preview:empty {
    display: none;   /* 고른 사진이 없으면 여백도 만들지 않는다 */
}

/* style.css 의 `.talk_img_edit ul li{padding:5px 0}` 는 파일명 텍스트 목록 시절 규칙이라
   썸네일 아래에 10px 이 남는다. 그 선택자가 (0,1,2) 라 `.rk-photo-preview li`(0,1,1) 로는
   못 이겨서 수정 페이지용 선택자를 따로 얹는다. */
.rk-photo-preview li,
.talk_img_edit ul.rk-photo-preview li {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 0;
}

/* 정사각 썸네일. aspect-ratio 로 비율을 고정해 사진 크기가 달라도 줄이 흐트러지지 않는다. */
.rk-photo-preview img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--rk-border);
    background: #f2f4f7;
}

/* 수정 페이지의 기존 첨부 목록(#img_list)도 같은 썸네일 격자로 재사용한다.
   li 클릭 → 삭제 확인 동작은 그대로라 JS 는 손대지 않는다. */
.rk-photo-preview .rk-photo-del {
    position: absolute;
    top: 3px;
    right: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: rgba(0,0,0,.55);
    color: #fff;
    font-size: .62rem;
    line-height: 18px;
    text-align: center;
}

/* STEP2 하단 '이전' + '등록' 나란히 배치
   (기존 `.talk_write_submit_area div.talk_write_submit input` 의 코랄·풀와이드 규칙을
   명시도로 이겨야 해서 같은 체인에 .rk-step2-bar 스코프를 이어붙인다) */
.talk_write_submit_area.rk-step2-bar div.talk_write_submit input.rk-prev-btn {
    float: left;
    width: 90px;
    margin-right: 8px;
    background: #fff;
    color: #333;
    border: 1px solid var(--rk-border);
    font-weight: 600;
    cursor: pointer;
}
.talk_write_submit_area.rk-step2-bar div.talk_write_submit input.talk_save {
    width: calc(100% - 98px);
}

/* ---------- 개별 리뷰 뱃지 ---------- */
.rk-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 4px;
}

/* 뱃지는 목록·상세·샵상세에서 반복 노출돼 핑크(tint)로 두면 화면이 알록달록해진다.
   → 무채색 뮤트톤. 색은 이모지가 담당하고 뱃지는 배경 역할만 한다.
   (명암비 6.86 : 기존 핑크 4.49 보다 오히려 가독성이 좋아진다) */
.rk-badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--rk-neutral);
    color: var(--rk-neutral-text);
    border: 1px solid var(--rk-neutral-border);
    font-size: .78rem;
    line-height: 1.2;
    white-space: nowrap;
}

/* ---------- 샵 집계바 "이런 점이 좋았어요" ---------- */
.rk-stat {
    margin: 0 0 16px;
    padding: 16px;
    border: 1px solid var(--rk-border);
    border-radius: 14px;
    background: #fff;
    box-sizing: border-box;
}

.rk-stat-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 12px;
}

.rk-stat-title {
    font-size: 1rem;
    font-weight: 700;
    color: #1f1f1f;
}

.rk-stat-part {
    font-size: .8rem;
    color: var(--rk-muted);
}

.rk-stat-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rk-stat-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 0;
    float: none;
    width: auto;
}

.rk-stat-name {
    flex: 0 0 42%;
    font-size: .86rem;
    color: #353535;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rk-stat-track {
    flex: 1 1 auto;
    /* 8px 에서는 인접 단계의 색차가 눈에 잘 안 들어와 12px 로 키웠다 */
    height: 12px;
    border-radius: 999px;
    background: var(--rk-track);
    overflow: hidden;
}

/* 순위별 농도: 1위가 가장 진하고 2·3위로 갈수록 옅어진다. 4위부터는 전부 같은 최연색.
   (상위 키워드가 한눈에 들어오게 하는 목적 — primary 계열 4단계) */
.rk-stat-bar {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: var(--rk-bar-4);   /* 4위 이하 기본값 */
}
.rk-stat-bar.rk-b1 { background: var(--rk-bar-1); }
.rk-stat-bar.rk-b2 { background: var(--rk-bar-2); }
.rk-stat-bar.rk-b3 { background: var(--rk-bar-3); }

.rk-stat-cnt {
    flex: 0 0 auto;
    min-width: 28px;
    text-align: right;
    font-size: .82rem;
    font-weight: 600;
    color: var(--rk-tint-text);
}

/* 접힘 상태: 4행(28px×4=112) + 5행째 절반(14px) 까지만 보이고 나머지는 잘린다.
   '더보기' 는 네모 버튼 대신 아래쪽이 흰색으로 페이드아웃되는 띠 위에 얹는다
   (잘린 행이 그라데이션 뒤로 비쳐 더 있다는 게 시각적으로 드러난다). */
.rk-stat.rk-fold {
    position: relative;
    padding-bottom: 40px;
}
.rk-stat.rk-fold .rk-stat-list {
    max-height: 126px;
    overflow: hidden;
}
.rk-stat-more {
    display: block;
    width: 100%;
    margin-top: 10px;
    padding: 8px 0;
    border: 1px solid var(--rk-border);
    border-radius: 10px;
    background: #fff;
    color: var(--rk-muted);
    font-size: .82rem;
    cursor: pointer;
}
/* 접힘 상태일 때만 페이드 띠로 변신 */
.rk-stat.rk-fold .rk-stat-more {
    position: absolute;
    left: 1px;
    right: 1px;
    bottom: 1px;
    width: auto;
    height: 72px;
    margin: 0;
    padding: 0 0 14px;
    border: 0;
    border-radius: 0 0 13px 13px;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.92) 45%, #fff 75%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
/* 아래 방향 꺾쇠 */
/* 문구 없이 화살표만 노출 → 단독으로 보이므로 조금 키우고 색도 진하게 */
.rk-stat-more-ico {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-bottom: 4px;
    border-right: 2px solid #8b929c;
    border-bottom: 2px solid #8b929c;
    transform: rotate(45deg);
}
.rk-stat-list li.rk-hide {
    display: none;
}

/* 후기 전체보기: '후기 N건' 줄(.all_nreview_info_area)의 border-bottom 이 바로 아래
   키워드 집계바(.rk-stat)의 위쪽 테두리와 같은 y 에 겹쳐 이중선처럼 보인다(실측 간격 0px).
   집계바가 있을 때만 구분선을 없앤다 — 집계바가 없는 샵(참여 3명 미만)에서는
   목록과 헤더를 나누는 선이 여전히 필요하다.
   :has() 는 구형 웹뷰에서 무시되므로 blade 에서 rk-no-line 클래스를 붙여 분기한다. */
.all_nreview_info_area.rk-no-line {
    border-bottom: none;
}

/* 펼친 상태: 접기 버튼으로 남고 화살표는 위를 향한다 */
.rk-stat:not(.rk-fold) .rk-stat-more-ico {
    transform: rotate(-135deg);
    margin-bottom: -2px;
}

/* 접기(펼친 상태) 버튼 — 더보기 페이드 띠와 통일: 배경·보더 없이 화살표만 */
.rk-stat:not(.rk-fold) .rk-stat-more {
    border: 0;
    background: transparent;
    padding: 6px 0 2px;
    margin-top: 4px;
}
/* == shop_benefit_v2.css == */
/* 샵 상세 이벤트 띠배너 v2 — main/detail.blade.php 전용 (구 p_event_coupon1~6 대체) */
:root {
  /* 서피스 */
  --sf-1:#FAFBFC;   /* 그룹 컨테이너 */
  --sf-2:#F7F8FA;   /* 카드 · 보조 버튼 */
  --sf-chip:#F2F4F7;/* 흰 배경 위 칩 */
  --dv:#F1F3F5;     /* 디바이더 */

  /* 혜택 틴트 (3%) */
  --t-live:#FFF5F5;   --i-live:#FF5862;   /* 브랜드 코랄로 통일 */
  --t-time:#F2F8FD;   --i-time:#3E93D8;
  --t-coupon:#F4F1FD; --i-coupon:#7B61D6;
  --t-review:#FDF8EF; --i-review:#D9A03C;
  --t-welcome:#F0F9F6;--i-welcome:#2FB093;
  --t-etc:#F7F8FA;    --i-etc:#8A9099;

  /* 텍스트 */
  --tx-strong:#16181B; --tx-body:#3C4043;
  --tx-sub:#5B6068;    --tx-mute:#8A9099;

  /* 반경 */
  --r-container:14px; --r-row:12px; --r-btn:10px; --r-chip:999px;
}

.benefit-list {
  display:flex; flex-direction:column; gap:8px;
  margin:14px 0 0; padding:0; list-style:none;
}
.benefit-list::after { display:none; }   /* 전역 ul::after clearfix 무력화 */

.benefit-row {
  float:none; width:auto;
  display:flex; align-items:center; gap:10px;
  padding:12px 14px; border:0; border-radius:var(--r-row);
  font-size:0.8rem; font-weight:500; color:var(--tx-body);
  letter-spacing:-.02em; text-align:left; line-height:1.35;
}
.benefit-row b   { font-weight:500; color:var(--tx-strong); }   /* 볼드는 금액(.bf-amt)과 할인 단어(.bf-dc)만 */
.benefit-row .bf-dc { font-weight:700; }
.benefit-row .ico{
  width:17px; height:17px; flex:none;
  fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round;
}

.is-live    { background:var(--t-live); }    .is-live    .ico { stroke:var(--i-live); }
.is-time    { background:var(--t-time); }    .is-time    .ico { stroke:var(--i-time); }
.is-coupon  { background:var(--t-coupon); }  .is-coupon  .ico { stroke:var(--i-coupon); }
.is-review  { background:var(--t-review); }  .is-review  .ico { stroke:var(--i-review); }
.is-welcome { background:var(--t-welcome); } .is-welcome .ico { stroke:var(--i-welcome); }
.is-etc     { background:var(--t-etc); }     .is-etc     .ico { stroke:var(--i-etc); }

/* 금액 강조 — 띠배너는 볼드+코랄, 쿠폰명은 색상만(볼드 없음, 행별 배지색은 말풍선 섹션에서 덮음) */
.benefit-row .bf-amt { font-style:normal; font-weight:800; color:var(--i-live); }
.coupon_bubble .coupon_nm_text .bf-amt { font-style:normal; font-weight:inherit; color:var(--i-live); }

/* BEST 배지 — 테두리 없이 보라 틴트 (선착순 쿠폰 이벤트 띠배너 행에 표시) */
.benefit-row .badge {
  margin-left:auto; padding:2.5px 7px; border-radius:5px; border:0;
  font-size:9.5px; font-weight:800; font-style:normal; line-height:1;
  color:var(--i-coupon); background:#EAE3FA; flex:none;
}

/* 만료 · 비활성 */
.benefit-row.is-off { background:#FAFAFB; color:#B0B5BB; }
.benefit-row.is-off b    { color:#B0B5BB; }
.benefit-row.is-off .ico { stroke:#C7CBD1; }

/* ================================================================
   보더 제거 — 샵 상세 전용 (style.css·review_keyword.css 이후 로드로 덮음)
   ================================================================ */

/* NOTICE · EVENT 알림 박스 — 회색이면 묻혀서 의미 색 틴트로 구분 */
.alarm_item, .more_alarm_item {
  border:0; box-shadow:none; height:auto; min-height:0;
  background:var(--sf-2); border-radius:var(--r-row); padding:12px 13px;
}
/* cf 시안: 흰 배경 + 연회색 보더 카드, 칩 색만으로 NOTICE/EVENT 구분 */
.notice .alarm_item, .event .alarm_item {
  background:#fff; border:1px solid #E7EAEE;
}
/* 더보기 모달 — 동일 스타일 + 소프트 섀도로 층 분리 */
#notice_detail, #event_detail {
  background:#fff; border:1px solid #E7EAEE;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
}
#notice_detail .closeBtn, #event_detail .closeBtn {
  height:auto; padding:9px; border-radius:var(--r-btn);
}
.alarm_item div.notice_icon, .more_alarm_item div.notice_icon {
  display:inline-block; width:auto;
  background:#16181B; color:#fff;
  font-size:9px; font-weight:800; letter-spacing:.04em;
  padding:3px 7px; border-radius:5px; line-height:1.4;
}
.alarm_item div.event_icon, .more_alarm_item div.event_icon {
  display:inline-block; width:auto;
  background:var(--i-live); color:#fff;
  font-size:9px; font-weight:800; letter-spacing:.04em;
  padding:3px 7px; border-radius:5px; line-height:1.4;
}

/* 마맵혜택 쿠폰 — 08-06 C시안(말풍선) 하늘색 어댑트.
   행들을 .coupon_bubble 한 장의 틴트 카드로 묶고 행 사이는 구분선. 배지·버튼·텍스트 색은 기존 유지 */
.coupon_bubble {
  position:relative;
  margin:15px 0 16px;
  padding:4px 12px;
  background:#F8FBFE;   /* --t-time(#F2F8FD)의 절반 틴트 — 반투명 대신 솔리드(꼬리와 알파 겹침 방지) */
  border:1px solid rgba(46,130,222,.30);
  border-radius:var(--r-row);
}
.coupon_bubble::before {          /* 위쪽 꼬리 — 코스정보 타이틀을 가리킴.
                                     꼬리가 말풍선 상단 보더를 덮고, 자기 상·좌 보더로 윤곽선을 이어감 */
  content:'';
  position:absolute; top:-5px; left:20px;
  width:9px; height:9px;
  background:#F8FBFE;   /* 말풍선 배경과 동일 */
  border-top:1px solid rgba(46,130,222,.30);
  border-left:1px solid rgba(46,130,222,.30);
  transform:rotate(45deg);
}
.coupon_bubble.is_empty { display:none; }   /* 쿠폰 0장이면 말풍선째 숨김(JS refreshCouponBubble) */

.coupon_bubble .coupon_row_container {
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 0; margin:0; min-height:0;
  background:none; border:0; border-top:1px solid #D8E6F5; border-radius:0;
  box-shadow:none;
}
.coupon_bubble .coupon_row_container.is_first { border-top:0; }
.coupon_bubble .coupon_left  { min-width:0; }
.coupon_bubble .coupon_right { flex:none; margin-left:10px; }
.coupon_bubble .coupon_nm_text    { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:500; }   /* 볼드는 금액(.bf-amt)만 */
/* 배지 색 구분 — 5종 전부 상이: 마맵혜택 보라(기존) / 방문후기 앰버(띠배너 후기 행 계열) /
   첫방문 그린(기존) / 선착순 코랄(BEST 배지 계열) / 이벤트 오렌지(기존) */
.coupon_bubble .coupon_badge_sale  { background:#FDF3E0; color:#D9A03C; }
.coupon_bubble .coupon_badge_hurry { background:#FFECED; color:var(--i-live); }
/* 금액·할인율 색 = 각 행의 배지 색 (배지가 쿠폰명 앞 형제라 ~ 로 명중, 기본 코랄을 덮음) */
.coupon_bubble .coupon_badge_zero  ~ .coupon_nm_text .bf-amt { color:#6c5ce7; }
.coupon_bubble .coupon_badge_sale  ~ .coupon_nm_text .bf-amt { color:#D9A03C; }
.coupon_bubble .coupon_badge_first ~ .coupon_nm_text .bf-amt { color:#2d9a6e; }
.coupon_bubble .coupon_badge_hurry ~ .coupon_nm_text .bf-amt { color:var(--i-live); }
.coupon_bubble .coupon_badge_etc   ~ .coupon_nm_text .bf-amt { color:#e05a33; }
.coupon_bubble .coupon_remain_cnt { flex:none; }
.btn_coupon_get span {
  border:0; background:#2E82DE; color:#fff;
  border-radius:8px; padding:6px 12px;
  font-size:11px; font-weight:700;
}
/* 받기완료 — 버튼 필 없이 체크+텍스트만 (C시안 is_done을 기존 .ok 체계로 어댑트) */
.btn_coupon_get.ok { pointer-events:none; }
.btn_coupon_get.ok span {
  border:0; background:none; color:#9AA0A8;
  padding:6px 2px;
}
.btn_coupon_get.ok span::before {
  content:'\2713'; margin-right:3px; font-weight:800;
}

/* 코스 테이블 — 흰 카드 + 연회색 보더(공지·이벤트 카드와 동일 문법), 그림자 제거 */
.n_course_table { border:1px solid #E7EAEE; box-shadow:none; background:#fff; border-radius:var(--r-row); overflow:hidden; }
.n_course_table tr, .n_course_table td, .n_course_table th { border-color:var(--dv); }
/* 시간(본문)=흰 배경, 가격 칩=회색 — 반전 배치 */
.n_course_table td.n_course_title { background:var(--dv); }
.n_course_table .n_course_left, .n_course_table .n_course_right { background:transparent; }
.n_course_table .dayNight li.c_day, .n_course_table .dayNight li.c_night { background:var(--sf-2); }

/* 매장정보 칩 — 뉴트럴 그레이(후기 키워드 칩과 동일 계열, 블루→회색으로 가라앉힘). 롤백 대비 유지 */
.Nshop_d_item_list_item2 { background:var(--sf-chip); color:#5B6068; }

/* 시설정보 섹션 — 샵 소개 아래 독립 섹션, 아이콘 랩핑(가로 스크롤 없음) */
#tab2, #tab5, #tab6 { scroll-margin-top:90px; }   /* 상단 고정 탭바에 안 가리게 (#tab3과 동일) — 섹션 타이틀부터 보이도록 */
/* 탭 5개(시설정보 추가)가 좁은 화면에서 줄바꿈되지 않게 간격·크기 보정 */
.detail_menu_f ul li, .detail_menu_b ul li { margin-right:14px; }
@media (max-width: 389px) {
  .detail_menu_f ul li, .detail_menu_b ul li { margin-right:9px; font-size:0.95rem; }
}
.amen-grid {
  display:flex; flex-wrap:wrap; gap:14px 18px;
  margin:14px 0 0; padding:0; list-style:none;
}
.amen-grid::after { display:none; }   /* 전역 ul::after clearfix 무력화 */
.amen-tile {
  display:flex; flex-direction:column; align-items:center; gap:5px;
  color:#5B6068; font-size:0.72rem; white-space:nowrap;
}
.amen-tile svg {
  width:22px; height:22px;
  fill:none; stroke:#2E82DE; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round;
}

/* 관리사 진입 행 — 검정 보더 제거 */
.shopView_manager { border:0; background:var(--sf-2); border-radius:var(--r-row); padding:12px 13px; }

/* 후기 더 보기 — 보조 버튼 통일 (길찾기·주소복사는 블레이드 인라인 수정) */
.d_map_more, .d_map_more2 {
  border:0; background:var(--sf-2); border-radius:var(--r-btn);
  padding:12px 0; color:var(--tx-body); font-weight:600; font-size:0.8rem;
}
.d_map_more2 { background:#EEF0F3; }  /* 후기 모두 보기 — 한 단계 진한 회색 */
.d_map_more label, .d_map_more2 label { color:var(--tx-mute); }
li.r_more, .d_comment_sub_area .tab_con li.r_more { border:0; }

/* 방문후기 작성 — 코랄 틴트. 후기 모두 보기와 지오메트리 동일(색만 역할 구분) */
.review_w {
  border:0; background:var(--t-live); border-radius:var(--r-btn);
  color:var(--i-live); font-weight:600; padding:12px 0; font-size:0.8rem;
}

/* 후기 통계 카드 */
.rk-stat { border:0; background:var(--sf-2); border-radius:var(--r-container); }
/* 접힘 페이드 띠 — 카드 배경(sf-2)에 맞춰 그라데이션 재정의 */
.rk-stat.rk-fold .rk-stat-more {
  padding:0 0 14px;
  background:linear-gradient(180deg, rgba(247,248,250,0) 0%, rgba(247,248,250,.92) 45%, #F7F8FA 75%);
}

/* 키워드 칩 — 배경 대비 한 단계 반전 */
.rk-badge {
  border:0; background:var(--sf-chip); color:#4A4F55;
  border-radius:var(--r-chip); padding:5px 11px; font-weight:500;
}
.rk-stat .rk-badge { background:#fff; }
/* == shop_detail.css == */
/* 샵 상세(main.detail) 전용 스타일 — detail.blade.php 인라인 <style> 2개 블록을 분리 (2026-09-22) */
.dt-reserve-badge{display:flex;align-items:center;gap:8px;margin:5px 0 22px;font-size:13px;letter-spacing:-.2px;}
.dt-reserve-badge__pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px 3px 8px;border-radius:6px;background:#E1F5EE;color:#0F6E56;font-size:12px;font-weight:800;white-space:nowrap;}
.dt-reserve-badge__pill svg{flex-shrink:0;}
.dt-reserve-badge__desc{color:#6B7280;font-weight:400;font-size:13px;}
#container { padding-bottom : 0px; }
.hshop_viewer{width:100%;max-width:480px; height:26px; position:fixed;top:220px;z-index:99;transition:opacity .6s;}
.hshop_viewer p{width:215px; padding:3px; background:#ff385c; font-size:0.8rem; font-weight:400;margin-left:15px;text-align:center;border-radius:4px;color:#fff; opacity: .80;}
.map_copy_n{position:absolute; font-size:0.7rem;right:10px;text-align:center;color:#888;}
.map_copy_n i{font-size:1.3rem;}

.d_reserve_call_area li div.reserve_live{padding:13px; background:#282f33;border-radius:4px;color:#fff;font-weight:700;text-align:center;cursor:pointer;margin-right:10px;}
.d_reserve_call_area li div.reserve_live.off{background:#cccccc;color:#f3f3f3;}

.shop_plan{width:100%; margin-top:10px; font-size:0.8rem}
.shop_plan li{width:50%;float:left;padding:7px 0 7px 0;}

.pay_version_chek{width:100%; max-width:480px; height:180px;border-top-left-radius:15px; border-top-right-radius:15px; background:#fff;z-index:1210;position:fixed;bottom:0;border:1px solid #ff5035;}
.pay_version_chek li{padding:15px;}
.pay_app_update{font-weight:600; font-size:1.1rem; color:#474747;text-align:center;margin-top:10px; position:relative;}
.pay_app_update i{position:absolute;right:10px; top:0;font-size:1.7rem;}
.pay_app_update em{color:#ff5035;}
.pay_app_update p{margin-top:8px;}
.pay_app_update_btn{background:#ff5035;font-size:1.0rem; text-align:center;float:left;border-radius:8px; width:100%;padding:10px;color:#fff;font-weight:600; cursor:pointer;}

.online_bubble {	position:absolute;top:-20px;left:10%;font-size:0.75rem;background:#fff;border :1px solid #282f33; border-radius: .4em;padding:5px 10px 5px 10px;color:#282f33; }
.online_bubble:after {	content: '';	position: absolute;	bottom: 0;	left: 50%;	width: 0;	height: 0;	border: 8px solid transparent;	border-top-color: #282f33;	border-bottom: 0;	border-left:0;	margin-left: -5px;	margin-bottom: -8px;}

.shop_sub_title em {float:right;font-size:0.9rem;color:#a5a5a5;font-weight:400;padding-top:2px;}
.shop_sub_title em a{color:#a5a5a5;}
.detail_photo{margin-top:15px;}
.detail_photo li img{border-radius:8px; margin-right:5px; overflow: hidden;  object-fit: cover;width:110px; height:110px;}
.detail_photo1{margin-top:15px;max-width:480px;}
.detail_photo1 div img{border-radius:8px; margin-right:5px; overflow: hidden;  object-fit: cover;width:110px; height:110px;}
.detail_photo1 div{float:left;}

.detail_photo_area{width:100%; max-width:450px;overflow:hidden;}
.n_photo_area_t {
    width: 100%;
    height: 120px;
    padding: 0px 0px 0px 0px;
    background: #fff;
    margin-bottom: 0px;
    font-weight: 500;
    color: #2a3e49;
    margin-top: 10px;
}
.n_photo_area {
    width: 100%;
    height: 115px;
    padding: 0px 0px 0px 0px;
    background: #fff;
    margin-bottom: 0px;
    font-weight: 500;
    color: #2a3e49;
    margin-top: 20px;
}
.n_photo_area_t ul li{width:110px;padding:5px 0 5px 0;}
.n_photo_area_t ul li img{width:110px; height:110px; border-radius:8px;overflow: hidden;  object-fit: cover;}
.n_photo_area ul li{width:110px;padding:5px 0 5px 0;}
.n_photo_area ul li img{width:110px; height:110px; border-radius:8px;overflow: hidden;  object-fit: cover;}
.pic_share_btn{ background:#fff; border-radius:50%; padding:4px 5px 5px 2px;text-align:center;width:30px; height:30px;color:#000;float:right;position:absolute;right:50px; cursor:pointer;}

.d_reserve_call_area li div.call.closed {
    padding: 13px;
    background: #E2E8F0;
    border-radius: 4px;
    color: #98a0ac;
    text-align: center;
    cursor: pointer;
}

/* 말풍선 */
.mmh-tooltip{
  position:absolute; left:calc(50% - 5px); bottom:86px; transform:translateX(-50%) translateY(6px);
  min-width: 295px; max-width: 400px;
  background:#FFF7ED;        /* 안내 배경 */
  color:#9A3412;             /* 텍스트 */
  border:1px solid #FED7AA;  /* 보더 */
  border-radius:10px; padding:10px 12px; font-size:13px; line-height:1.35;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  z-index: 9999;
  text-align:center;

}
.mmh-tip-arrow{
  position:absolute; left:50%; bottom:-10px; transform:translateX(-50%);
  width:10px; height:10px; background:#FFF7ED; border:1px solid #FED7AA; border-top:none; border-left:none;
  transform-origin:center; rotate:45deg;
}
#tab3 {
  scroll-margin-top: 90px;
}

.map_adr_copy{
width:100%;border-radius:10px; border:0;font-size:0.8rem; padding:11px 0;margin-top:10px;text-align:center;background:#EEF0F3;color:#3C4043;font-weight:600;
}
.map_ard_mypoint { position: absolute;font-size: 0.8rem;right: 10px; top: 20px; text-align: center; color: #888; float: left; width: 170px; font-weight: 400;}
.map_navi_area{width:100%;
position:relative;
	display:flex;
	justify-content:space-between;
	margin-top:10px;
}
.map_navi_kakao{width:calc(50% - 5px);border:0; border-radius:10px; background-color:#EEF0F3; color:#3C4043; font-weight:600; font-size:0.8rem;padding:11px 0; background-image:url(data:image/png;base64,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); background-size:20px; background-repeat:no-repeat; background-position:7px center; text-align:center; cursor:pointer; }
.map_navi_naver{width:calc(50% - 5px);border:0; border-radius:10px; background-color:#EEF0F3; color:#3C4043; font-weight:600; font-size:0.8rem;padding:11px 0;
background-image:url('/images/ico/naver_map.png');background-repeat:no-repeat;background-size:20px; background-position:7px center; text-align:center;cursor:pointer;
}
.nn_frame{max-width:480px; width:100%; min-height:300px; height:auto;}
.shop_plan{width:100%; margin-top:10px; font-size:0.8rem}
.shop_plan li{width:50%;float:left;padding:7px 0 7px 0;}

.ct-price-zeromargin-label-detail {
    display: inline-flex;
    align-items: center;
    font-size: 0.85rem;
    font-weight: 700;
    color: #c41e3a;
    background: linear-gradient(135deg, #fff5f3 0%, #ffe8e5 100%);
    padding: 3px 8px;
    border-radius: 6px;
    border: 1px solid rgba(255, 80, 56, 0.25);
}

/* 예약/전화 영역 3분할(triple_menu) 폰트 축소 */
            /* 메뉴가 3개일 때(triple_menu)만 폰트를 줄이고 줄바꿈 정렬 */
            .d_reserve_call_area ul li .other_shop.triple_menu {
                font-size: 0.80rem !important; 
                line-height: 1.3 !important;
                letter-spacing: -0.5px;
                display: flex;
                align-items: center;
                justify-content: center;
                text-align: center;
		height: 100%;
		padding:14px 0;
            }
            /* 메뉴가 2개일 때는 기존 .other_shop 스타일이 그대로 적용됩니다 */

/* 2026-09-22 마크업 정리: 섹션 제목 div → h2 (UA 기본 여백 제거), <td align> → CSS */
h2.shop_sub_title{margin-bottom:0;line-height:inherit;}
/* 구 <td align="center"> 대체: 안쪽 표만 가운데, 글자는 좌측 */
.n_course_table td.n_course_item{text-align:left;}
.n_course_table td.n_course_item > table{margin:0 auto;}

/* 슬라이더 초기화 전 레이아웃 고정: slick 이 붙기 전에는 첫 장만 보이게 해 세로로 쌓였다가 가로로 재배치되는 레이아웃 이탈(CLS)을 막는다 (2026-09-28) */
.visual_img:not(.slick-initialized) > div:not(:first-child){display:none}
.visual_img:not(.slick-initialized) > div:first-child img{width:100%;height:300px;object-fit:cover}
/* == layout_main.css == */
/* layout.main 공통 스타일 — 글로벌 검색 팝업(.gl_search2_*) + 필터 레이어(.fk-*). main.blade.php 인라인 <style> 2개 블록을 분리 (2026-09-22) */
.gl_search2_top{width:100%; /* max-width:480px; */  min-height:57px;background:#fff;margin:0 auto;top:0px;position:relative;}

.gl_search2_cate{width:100%; display:flex;flex-direction: row; flex-wrap: wrap;}
.gl_cate_item{font-size:1.0rem; font-weight:bold; width:50%;text-align:center;border-bottom:1px solid #ddd;padding:15px;color:#a7a7a7; cursor:pointer;}
.gl_cate_item.on{border-bottom:2px solid #ff385c;color:#000;}
.gl_search_area{width:100%; padding:10px; background:#fff;}
.gl_search{width:100%; padding:10px; height:50px;display:flex;}
.gl_search_put{
    width: calc(100% - 50px);
    background: #f5f5f5;
    border-radius: 8px;
    position: relative;
	height: 50px;
}
#search_addr input{
    width: calc(100% - 30px);
    float: right;
    background: none;
    border: none;
    height: 50px;
    color: #000;
    font-weight: 400;
}
.gl_search_btn{width:50px; height:50px;line-height:50px; font-size:1.5rem;text-align:center;}
.gl_search_btn i{line-height:50px;}
.gl_research {
    font-size: 0.8rem;
    font-weight: bold;
    padding: 20px 20px 0px 0;
    text-align: right;
}

.search_p_city_all{width:100%; padding:10px 10px 0px 15px;border-bottom:10px solid #f9fafc;}
.search_p_city_title{font-size:1.0rem; font-weight:600;margin-bottom:5px;}
.search_p_city_aream{width:100%; padding:10px 0 10px 0; display:flex;flex-direction: row; flex-wrap: wrap; cursor:pointer;}
.search_p_city_areas{width:100%; padding:10px 0 10px 0; display:flex;flex-direction: row; flex-wrap: wrap; cursor:pointer;}
.search_p_citym{ padding:8px 14px 8px 14px;background:#eff6ff;color:#498de7;font-size:0.85rem;text-align:center;border-radius:20px;margin-right:5px;margin-bottom:10px;font-weight:600;}
.search_p_citym.on{border:1px solid #000;color:#000;font-weight:bold;}
.search_p_citys{padding:8px 14px 8px 14px; border:1px solid #bbc4cc;background:#fff;color:#000;font-size:0.85rem;text-align:center;border-radius:20px;margin-right:5px;margin-bottom:10px;font-weight:600;}

.recent_shop_scroll{display:flex;overflow-x:auto;gap:12px;padding:10px 0 15px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.recent_shop_scroll::-webkit-scrollbar{display:none;}
.recent_shop_item{flex:0 0 auto;width:100px;text-align:center;cursor:pointer;}
.recent_shop_item img{width:100px;height:68px;border-radius:10px;object-fit:cover;background:#f5f5f5;}
.recent_shop_item .rs_label{font-size:0.78rem;font-weight:600;color:#333;margin-top:6px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

	.fk-sec-hd { display:flex; align-items:center; gap:8px; padding:16px 16px 10px; }
	.fk-sec-title { font-weight:700; font-size:15px; margin:0; }
	.fk-count { min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:#1d8aff; color:#fff; font-size:11px; font-weight:700; display:none; align-items:center; justify-content:center; line-height:1; }
	.fk-count.on { display:inline-flex; }
	.fk-sec-clear { margin-left:auto; border:0; background:none; color:#9AA1AE; font-family:inherit; font-size:13px; cursor:pointer; padding:4px 2px; display:none; }
	.fk-sec-clear.on { display:block; }
	.fk-toggle-row { display:flex; align-items:center; gap:12px; padding:13px 16px; cursor:pointer; border-bottom:1px solid #f1f3f6; }
	.fk-toggle-row:last-child { border-bottom:0; }
	.fk-toggle-txt { flex:1; font-weight:500; font-size:14.5px; color:#16181D; }
	.fk-row-sub { display:block; font-size:12px; color:#9AA1AE; font-weight:400; margin-top:2px; }
	.fk-toggle-row input[type="checkbox"] { position:absolute; opacity:0; width:0; height:0; }
	.fk-sw { width:46px; height:27px; border-radius:999px; background:#dbe0e7; position:relative; flex:0 0 auto; transition:background .16s; display:inline-block; }
	.fk-sw::after { content:""; position:absolute; top:3px; left:3px; width:21px; height:21px; border-radius:50%; background:#fff; transition:transform .16s; box-shadow:0 1px 3px rgba(0,0,0,.2); }
	.fk-toggle-row input:checked ~ .fk-sw { background:#1d8aff; }
	.fk-toggle-row input:checked ~ .fk-sw::after { transform:translateX(19px); }
	.fk-apply-count { margin-left:4px; }
