@charset "UTF-8";
/* 실시간 AI분석 리포트(cms/js/rw3/place_report.js) — 신규 디자인(rw3) 색·카드 그대로, 구성은 프로모아 플레이스 진단 */
.rw3 .pr { display: flex; flex-direction: column; gap: 16px; min-width: 0; --pr-fair: #f59f00; --pr-fair-bg: #fff6e0; --pr-fair-text: #c77700; }
@media (min-width: 1024px) { .rw3 .pr { gap: 24px; } }
.rw3 .pr .card { padding: 0; overflow: hidden; }
.rw3 .pr-grid { display: grid; gap: 16px; min-width: 0; }
.rw3 .pr-grid > * { min-width: 0; }
@media (min-width: 1024px) { .rw3 .pr-grid { gap: 24px; } .rw3 .pr-grid--a { grid-template-columns: 1.15fr 1fr; } .rw3 .pr-grid--b { grid-template-columns: 1fr 1fr; } }

.rw3 .pr-eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .08em; color: var(--c-primary); margin: 0 0 2px; }
.rw3 .pr-desc { margin: 4px 0 0; font-size: 13px; line-height: 1.55; color: var(--c-text-3); }
.rw3 .pr-muted { color: var(--c-text-3); }
.rw3 .pr-empty { padding: 24px 0; text-align: center; font-size: 14px; color: var(--c-text-4); margin: 0; }
.rw3 .pr-empty-s { margin: 8px 0 0; font-size: 13px; color: var(--c-text-4); }
.rw3 .pr-panel__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px; padding: 20px 20px 16px; border-bottom: 1px solid var(--c-gray-100); }
.rw3 .pr-panel__head > div:first-child { min-width: 0; }
.rw3 .pr-panel__body { padding: 20px; }
@media (min-width: 768px) { .rw3 .pr-panel__head { padding: 22px 28px 18px; } .rw3 .pr-panel__body { padding: 22px 28px 26px; } }

/* 상태 색 */
.rw3 .pr-c--good { color: var(--c-success-text); }
.rw3 .pr-c--fair { color: var(--pr-fair-text); }
.rw3 .pr-c--weak { color: var(--c-warning); }
.rw3 .pr-c--unknown { color: var(--c-text-3); }
.rw3 .pr-st { display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: var(--r-xs); font-size: 11px; font-weight: 700; white-space: nowrap; flex: none; }
.rw3 .pr-st--good { background: var(--c-success-bg); color: var(--c-success-text); }
.rw3 .pr-st--fair { background: var(--pr-fair-bg); color: var(--pr-fair-text); }
.rw3 .pr-st--weak { background: var(--c-warning-bg); color: var(--c-warning); }
.rw3 .pr-st--unknown { background: var(--c-gray-100); color: var(--c-text-3); }
.rw3 .pr-meter { display: block; height: 6px; border-radius: 3px; background: var(--c-gray-100); overflow: hidden; min-width: 40px; }
.rw3 .pr-meter i { display: block; height: 100%; width: 0; border-radius: inherit; transition: width .7s ease; background: var(--c-primary); }
.rw3 .pr-meter__muted { background: var(--c-gray-300) !important; }
.rw3 .pr-meter__good { background: var(--c-success) !important; }
.rw3 .pr-meter__fair { background: var(--pr-fair) !important; }
.rw3 .pr-meter__weak { background: var(--c-warning) !important; }
.rw3 .pr-meter__unknown { background: var(--c-gray-300) !important; }
.rw3 .pr-mark { margin-left: 6px; font-size: 11px; font-weight: 700; color: var(--c-primary); white-space: nowrap; }
.rw3 .pr-mark--opp { color: var(--pr-fair-text); }

/* 1. 지수 */
.rw3 .pr-index { display: grid; }
@media (min-width: 1024px) { .rw3 .pr-index { grid-template-columns: 340px 1fr; } }
.rw3 .pr-index > * { min-width: 0; }
.rw3 .pr-index__score { position: relative; padding: 26px 24px; color: #fff; background: linear-gradient(160deg, #3182f6 0%, #1b64da 100%); }
.rw3 .pr-index__score::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .08; background-image: linear-gradient(#fff 1px, transparent 1px), linear-gradient(90deg, #fff 1px, transparent 1px); background-size: 28px 28px; }
.rw3 .pr-index__score > * { position: relative; }
.rw3 .pr-eyebrow--on { color: rgba(255, 255, 255, .78); }
.rw3 .pr-index__name { margin: 2px 0 0; font-size: 14px; color: rgba(255, 255, 255, .85); }
.rw3 .pr-index__big { display: flex; align-items: flex-end; gap: 16px; margin-top: 18px; }
.rw3 .pr-index__big > b { font-size: 64px; font-weight: 800; line-height: 1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.rw3 .pr-index__big div { padding-bottom: 6px; }
.rw3 .pr-grade { display: block; font-style: normal; font-size: 30px; font-weight: 800; line-height: 1; }
.rw3 .pr-index__big span { display: block; margin-top: 4px; font-size: 13px; color: rgba(255, 255, 255, .85); }
.rw3 .pr-scale { display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; margin: 22px 0 0; padding: 0; list-style: none; }
.rw3 .pr-scale li { font-size: 11px; color: rgba(255, 255, 255, .6); font-variant-numeric: tabular-nums; white-space: nowrap; }
.rw3 .pr-scale li i { display: block; height: 4px; margin-bottom: 6px; border-radius: 2px; background: rgba(255, 255, 255, .22); }
.rw3 .pr-scale li small { font-size: 10px; }
.rw3 .pr-scale li.is-on { color: #fff; font-weight: 800; }
.rw3 .pr-scale li.is-on i { background: #fff; }
.rw3 .pr-index__head { margin: 22px 0 0; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .2); font-size: 15px; font-weight: 700; line-height: 1.6; }
.rw3 .pr-index__pillars { padding: 20px; }
@media (min-width: 768px) { .rw3 .pr-index__pillars { padding: 24px 28px; } }
.rw3 .pr-index__ph { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.rw3 .pr-index__ph span { font-size: 12px; color: var(--c-text-3); }
.rw3 .pr-index__pillars ul { list-style: none; margin: 8px 0 0; padding: 0; }
.rw3 .pr-index__pillars li { padding: 14px 0; border-bottom: 1px solid var(--c-gray-100); }
.rw3 .pr-index__pillars li:last-child { border-bottom: 0; padding-bottom: 0; }
.rw3 .pr-pillar { display: flex; align-items: center; gap: 12px; }
.rw3 .pr-pillar > b { width: 84px; flex: none; font-size: 14px; font-weight: 700; color: var(--c-text); }
.rw3 .pr-pillar > small { width: 46px; flex: none; font-size: 12px; color: var(--c-text-4); font-variant-numeric: tabular-nums; }
.rw3 .pr-pillar .pr-meter { flex: 1; }
.rw3 .pr-pillar > strong { width: 32px; flex: none; text-align: right; font-size: 15px; font-weight: 800; font-variant-numeric: tabular-nums; }
.rw3 .pr-facts { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 8px 0 0; }
.rw3 .pr-facts div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; font-size: 13px; }
.rw3 .pr-facts dt { color: var(--c-text-3); }
.rw3 .pr-facts dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rw3 .pr-facts .pr-hint { font-weight: 400; font-size: 12px; color: var(--c-text-4); white-space: normal; }
.rw3 .pr-note { margin: 4px 0 0; font-size: 12px; color: var(--c-text-4); }
@media (min-width: 768px) { .rw3 .pr-facts, .rw3 .pr-note { padding-left: 154px; } }
@media (max-width: 767px) { .rw3 .pr-pillar > small { display: none; } .rw3 .pr-pillar > b { width: 76px; } }

/* 2. 진단 요약 */
.rw3 .pr-ins-grid { display: grid; gap: 24px; }
@media (min-width: 1024px) { .rw3 .pr-ins-grid { grid-template-columns: 1fr 1.1fr; } }
.rw3 .pr-ins + .pr-ins { margin-top: 20px; }
.rw3 .pr-ins h4, .rw3 .pr-todo h4, .rw3 .pr-voice h4 { margin: 0; font-size: 14px; font-weight: 700; color: var(--c-text); }
.rw3 .pr-ins ul { list-style: none; margin: 8px 0 0; padding: 0; }
.rw3 .pr-ins li { position: relative; padding-left: 22px; font-size: 14px; line-height: 1.7; color: var(--c-text-2); }
.rw3 .pr-ins li + li { margin-top: 4px; }
.rw3 .pr-ins li::before { content: ""; position: absolute; left: 2px; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: var(--c-success-bg) no-repeat center / 10px; }
.rw3 .pr-ins li.is-good::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%2303a586' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rw3 .pr-ins li.is-weak::before { background-color: var(--c-warning-bg); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 3v3.6' stroke='%23f04452' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='6' cy='9' r='1' fill='%23f04452'/%3E%3C/svg%3E"); }
.rw3 .pr-todo { padding: 18px 20px; border-radius: var(--r-lg); background: var(--c-primary-sub); }
.rw3 .pr-todo ol { list-style: none; margin: 12px 0 0; padding: 0; }
.rw3 .pr-todo li { display: flex; gap: 12px; }
.rw3 .pr-todo li + li { margin-top: 16px; }
.rw3 .pr-todo__no { display: grid; place-items: center; flex: none; width: 24px; height: 24px; border-radius: 7px; background: var(--c-primary); color: #fff; font-size: 12px; font-weight: 800; }
.rw3 .pr-todo li p { margin: 0; font-size: 15px; font-weight: 700; color: var(--c-text); line-height: 1.5; }
.rw3 .pr-todo li p small { margin-left: 8px; font-size: 11px; font-weight: 600; color: var(--c-text-3); }
.rw3 .pr-todo li > div > span { display: block; margin-top: 4px; font-size: 13px; line-height: 1.6; color: var(--c-text-2); }

/* 표 공통 */
.rw3 .pr-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.rw3 .pr-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.rw3 .pr-table th { height: 40px; padding: 0 8px; border-bottom: 1px solid var(--c-gray-200); text-align: left; font-size: 12px; font-weight: 600; color: var(--c-text-3); white-space: nowrap; }
.rw3 .pr-table td { height: 48px; padding: 8px; border-bottom: 1px solid var(--c-gray-100); color: var(--c-text-2); vertical-align: middle; }
.rw3 .pr-table th:first-child, .rw3 .pr-table td:first-child { padding-left: 0; }
.rw3 .pr-table th:last-child, .rw3 .pr-table td:last-child { padding-right: 0; }
.rw3 .pr-table tr:last-child td { border-bottom: 0; }
.rw3 .pr-table .r { text-align: right; }
.rw3 .pr-table td b { color: var(--c-text); font-weight: 700; }
.rw3 .pr-table small.mo { display: none; font-size: 11px; color: var(--c-text-4); }
@media (max-width: 767px) { .rw3 .pr-table .pc { display: none; } .rw3 .pr-table small.mo { display: block; margin-top: 2px; } }

/* 3. 키워드 */
.rw3 .pr-stats { display: flex; gap: 20px; margin: 0; text-align: right; }
.rw3 .pr-stats dt { font-size: 11px; color: var(--c-text-3); }
.rw3 .pr-stats dd { margin: 0; font-size: 15px; font-weight: 800; color: var(--c-text); font-variant-numeric: tabular-nums; }
.rw3 .pr-opp { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-bottom: 16px; padding: 12px 16px; border-radius: var(--r-md); background: var(--c-primary-sub); box-shadow: inset 0 0 0 1px var(--c-primary-line); font-size: 13px; color: var(--c-text-2); }
.rw3 .pr-opp > b { color: var(--c-primary); font-weight: 800; }
.rw3 .pr-opp em { font-style: normal; font-weight: 700; color: var(--c-text); }
.rw3 .pr-kw tr.is-main td { background: var(--c-bg); }
.rw3 .pr-kw__track { width: 34%; padding-left: 24px !important; }
.rw3 .pr-kw td:nth-child(4) { padding-left: 24px; }
.rw3 .pr-vol { color: var(--c-text); font-variant-numeric: tabular-nums; }
.rw3 .pr-tier { margin-left: 6px; font-size: 11px; }
.rw3 .pr-tier--accent { color: var(--c-primary); font-weight: 700; }
.rw3 .pr-tier--strong { color: var(--c-text); }
.rw3 .pr-tier--mid { color: var(--c-text-2); }
.rw3 .pr-tier--dim { color: var(--c-text-4); }
.rw3 .pr-track { position: relative; display: block; height: 8px; border-radius: 4px; background: var(--c-gray-100); }
.rw3 .pr-track__first { position: absolute; inset: 0 auto 0 0; width: 10%; border-radius: 4px 0 0 4px; background: var(--c-success-bg); }
.rw3 .pr-track__dot { position: absolute; top: 50%; width: 12px; height: 12px; border: 2px solid #fff; border-radius: 50%; transform: translate(-50%, -50%); box-shadow: 0 0 0 1px rgba(0, 0, 0, .04); }
.rw3 .pr-track__dot.is-good { background: var(--c-success); }
.rw3 .pr-track__dot.is-fair { background: var(--pr-fair); }
.rw3 .pr-track__dot.is-weak { background: var(--c-warning); }
.rw3 .pr-rank { font-size: 15px; font-weight: 800; color: var(--c-text); font-variant-numeric: tabular-nums; white-space: nowrap; }
.rw3 .pr-rank--top { color: var(--c-success-text); }
.rw3 .pr-rank--low { color: var(--c-text-3); }
.rw3 .pr-rank--out { font-size: 13px; font-weight: 500; color: var(--c-text-4); }
.rw3 .pr-more { margin-top: 12px; padding: 0; border: 0; background: none; font-size: 13px; font-weight: 700; color: var(--c-text-2); cursor: pointer; }
.rw3 .pr-more:hover { color: var(--c-primary); }

/* 4. 경쟁 */
.rw3 .pr-comp tr.is-mine td { background: var(--c-primary-sub); }
.rw3 .pr-comp tr.is-mine td, .rw3 .pr-comp tr.is-mine b { color: var(--c-primary); font-weight: 700; }
.rw3 .pr-comp__rk { width: 44px; font-weight: 800; color: var(--c-text-3); font-variant-numeric: tabular-nums; }
.rw3 .pr-comp__nm { max-width: 200px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--c-text); }
.rw3 .pr-comp__v { display: flex; align-items: center; justify-content: flex-end; gap: 8px; max-width: 160px; margin-left: auto; }
.rw3 .pr-comp__v .pr-meter { flex: 1; }
.rw3 .pr-comp__v span { width: 48px; text-align: right; font-variant-numeric: tabular-nums; }
.rw3 .pr-comp td:last-child { width: 72px; font-variant-numeric: tabular-nums; }
@media (max-width: 767px) { .rw3 .pr-comp__nm { max-width: 120px; } .rw3 .pr-comp__v .pr-meter { display: none; } }
.rw3 .pr-bench + .pr-bench { margin-top: 14px; }
.rw3 .pr-bench__h { display: flex; justify-content: space-between; align-items: baseline; font-size: 13px; }
.rw3 .pr-bench__h b { color: var(--c-text-2); }
.rw3 .pr-bench__h span { font-size: 12px; font-weight: 700; }
.rw3 .pr-bench__r { display: flex; align-items: center; gap: 8px; margin-top: 6px; font-size: 12px; }
.rw3 .pr-bench__r > span { width: 52px; flex: none; color: var(--c-text-3); }
.rw3 .pr-bench__r .pr-meter { flex: 1; }
.rw3 .pr-bench__r > b, .rw3 .pr-bench__r > em { width: 52px; text-align: right; font-style: normal; font-variant-numeric: tabular-nums; }
.rw3 .pr-bench__r > b { color: var(--c-text); }
.rw3 .pr-bench__r > em { color: var(--c-text-2); }
.rw3 .pr-leaders { list-style: none; margin: 20px 0 0; padding: 0; border-top: 1px solid var(--c-gray-100); }
.rw3 .pr-leaders li { padding: 12px 0; border-bottom: 1px solid var(--c-gray-100); }
.rw3 .pr-leaders li:last-child { border-bottom: 0; padding-bottom: 0; }
.rw3 .pr-leaders li > div { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.rw3 .pr-leaders li > div > b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; color: var(--c-text); }
.rw3 .pr-leaders li > div > span { flex: none; font-size: 13px; color: var(--c-text-3); font-variant-numeric: tabular-nums; }
.rw3 .pr-leaders em { font-style: normal; font-weight: 800; color: var(--c-text); }
.rw3 .pr-leaders em.pr-c--good { color: var(--c-success-text); }
.rw3 .pr-leaders small { display: block; margin-top: 4px; font-size: 12px; color: var(--c-text-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* 5. 매장 정보 점검 */
.rw3 .pr-done { margin: 0; font-size: 14px; font-weight: 800; color: var(--c-text); font-variant-numeric: tabular-nums; }
.rw3 .pr-check td:first-child { width: 120px; }
.rw3 .pr-check__v { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rw3 .pr-check td:nth-child(3) { width: 72px; }
.rw3 .pr-check td:last-child { font-size: 13px; }
@media (max-width: 767px) { .rw3 .pr-check td { vertical-align: top; } .rw3 .pr-check td:first-child { width: auto; } .rw3 .pr-check small.mo { font-size: 12px; line-height: 1.5; color: var(--c-text-3); } .rw3 .pr-check__v { white-space: normal; word-break: keep-all; } }

/* 6. 고객 반응 · 콘텐츠 */
.rw3 .pr-voice + .pr-voice { margin-top: 20px; }
.rw3 .pr-voice h4 { font-size: 13px; color: var(--c-text-2); }
.rw3 .pr-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.rw3 .pr-pills span { display: inline-flex; align-items: center; gap: 4px; padding: 5px 10px; border-radius: var(--r-sm); background: var(--c-gray-100); font-size: 13px; color: var(--c-text-2); }
.rw3 .pr-pills span.is-top { background: var(--c-primary-sub); color: var(--c-primary); font-weight: 700; }
.rw3 .pr-pills small { font-size: 11px; opacity: .6; font-variant-numeric: tabular-nums; }
.rw3 .pr-pills--line span { background: #fff; box-shadow: inset 0 0 0 1px var(--c-gray-200); }
.rw3 .pr-themes { list-style: none; margin: 8px 0 0; padding: 0; }
.rw3 .pr-themes li { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.rw3 .pr-themes li + li { margin-top: 6px; }
.rw3 .pr-themes li > span { width: 56px; flex: none; color: var(--c-text-2); }
.rw3 .pr-themes .pr-meter { flex: 1; }
.rw3 .pr-themes em { width: 44px; text-align: right; font-style: normal; color: var(--c-text-3); }
.rw3 .pr-menus { margin: 20px 0 0; font-size: 13px; color: var(--c-text-2); }
.rw3 .pr-tabs { display: flex; padding: 3px; border-radius: var(--r-sm); background: var(--c-gray-100); }
.rw3 .pr-tabs button { height: 28px; padding: 0 12px; border: 0; border-radius: 6px; background: none; font-size: 13px; font-weight: 700; color: var(--c-text-3); cursor: pointer; }
.rw3 .pr-tabs button.is-on { background: #fff; color: var(--c-text); box-shadow: 0 1px 2px rgba(0, 0, 0, .08); }
.rw3 .pr-posts, .rw3 .pr-revs { list-style: none; margin: -12px 0; padding: 0; }
.rw3 .pr-posts li, .rw3 .pr-revs li { border-bottom: 1px solid var(--c-gray-100); }
.rw3 .pr-posts li:last-child, .rw3 .pr-revs li:last-child { border-bottom: 0; }
.rw3 .pr-posts a, .rw3 .pr-posts li > div { display: flex; gap: 12px; padding: 12px 0; color: inherit; text-decoration: none; }
.rw3 .pr-posts__no { width: 16px; flex: none; padding-top: 2px; font-size: 13px; font-weight: 800; color: var(--c-text-4); }
.rw3 .pr-posts img { width: 56px; height: 56px; flex: none; border-radius: var(--r-sm); object-fit: cover; box-shadow: inset 0 0 0 1px var(--c-gray-200); }
.rw3 .pr-posts__t { min-width: 0; flex: 1; }
.rw3 .pr-posts__t b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; color: var(--c-text); }
.rw3 .pr-posts a:hover b { text-decoration: underline; }
.rw3 .pr-posts__t span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 2px; font-size: 13px; line-height: 1.55; color: var(--c-text-3); }
.rw3 .pr-posts__t small, .rw3 .pr-revs small { display: block; margin-top: 2px; font-size: 12px; color: var(--c-text-4); }
.rw3 .pr-revs li { padding: 12px 0; }
.rw3 .pr-revs p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 0; font-size: 14px; line-height: 1.7; color: var(--c-text-2); }

/* 7. 계산 방법 */
.rw3 .pr-method { padding: 18px 20px !important; font-size: 13px; color: var(--c-text-2); }
@media (min-width: 768px) { .rw3 .pr-method { padding: 18px 28px !important; } }
.rw3 .pr-method summary { display: flex; justify-content: space-between; align-items: center; list-style: none; cursor: pointer; font-size: 14px; font-weight: 700; color: var(--c-text); }
.rw3 .pr-method summary::-webkit-details-marker { display: none; }
.rw3 .pr-method summary span { font-size: 12px; font-weight: 500; color: var(--c-text-3); }
.rw3 .pr-method > div { display: grid; gap: 8px 32px; margin-top: 12px; line-height: 1.7; }
@media (min-width: 768px) { .rw3 .pr-method > div { grid-template-columns: 1fr 1fr; } }
.rw3 .pr-method p { margin: 0; }
.rw3 .pr-method b { color: var(--c-text); }

/* 카운팅 숫자 — 자릿수가 바뀌어도 흔들리지 않게 */
.rw3 .pr-cnt { font-variant-numeric: tabular-nums; }
