/* =====================================================================
 * 시안 반영 (2026-10-10) — 시안 '우리동네 찐사장 진단 서비스 UI 모음' PC 화면 기준.
 * lsl.css 다음에 불러와 덮어쓴다. 휴대폰(860px 미만)에서는 한 줄로 쌓인다.
 * ===================================================================== */
.lsl {
  --lsl-blue: #2d5bd7;
  --lsl-blue-soft: #eef4ff;
  --lsl-blue-line: #d6e4ff;
  --lsl-shadow: 0 6px 24px rgba(20, 60, 40, 0.07);
}
#lsl-app.lsl { max-width: 1040px; }
.lsl-screen { padding: 4px 0 8px; }
.lsl-ico { width: 20px; height: 20px; fill: currentColor; flex: none; }
.lsl-title { font-size: var(--lsl-fs-xl); letter-spacing: -0.02em; }
.lsl-small { font-size: var(--lsl-fs-sm); }

/* 단계 표시줄: 알약 모양 세 칸 */
.lsl-steps { display: flex; gap: 0; padding: 6px; margin: 0 0 20px; border-radius: 999px; background: #f1f5f3; list-style: none; }
.lsl-steps li { flex: 1; justify-content: center; gap: 8px; padding: 8px 10px; border-radius: 999px; background: transparent; color: var(--lsl-muted); }
.lsl-steps .is-active { background: var(--lsl-green); color: #fff; font-weight: 700; box-shadow: 0 2px 8px rgba(27, 127, 67, 0.25); }
.lsl-steps .is-active .lsl-steps-num { background: #fff; color: var(--lsl-green-dark); }
.lsl-steps .is-done { color: var(--lsl-green-dark); }
.lsl-steps .is-done .lsl-steps-num { background: var(--lsl-green); color: #fff; }
.lsl-steps-num { width: 24px; height: 24px; }
.lsl-steps-num .lsl-ico { width: 14px; height: 14px; }
@media (max-width: 520px) {
  .lsl-steps li:not(.is-active) .lsl-steps-name { display: none; }
  .lsl-steps li:not(.is-active) { flex: none; }
}

/* 본문 + 오른쪽 안내 칸 */
.lsl-layout { display: grid; gap: 20px; }
@media (min-width: 860px) {
  .lsl-layout { grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; align-items: start; }
  .lsl-layout.is-single { grid-template-columns: minmax(0, 720px); justify-content: center; }
  .lsl-aside { position: sticky; top: 24px; }
  .lsl-only-narrow { display: none; }
}
.lsl-main { min-width: 0; }
.lsl-aside { display: grid; gap: 12px; }
.lsl-side-card { padding: 18px; border-radius: var(--lsl-radius); background: #f6faf8; border: 1px solid #e3eee7; }
.lsl-side-card > p { margin: 0 0 8px; }
.lsl-side-card .lsl-btn { margin-top: 6px; }

/* 가게 찾기 */
.lsl-searchbar { position: relative; align-items: center; }
.lsl-searchbar input { padding-left: 44px; min-height: 56px; border-radius: 14px; }
.lsl-searchbar-ico { position: absolute; left: 14px; top: 18px; color: var(--lsl-muted); }
.lsl-searchbar .lsl-btn { min-height: 56px; padding: 0 22px; border-radius: 14px; }
.lsl-list { gap: 0; border-top: 1px solid var(--lsl-line); }
.lsl-list li { border-bottom: 1px solid var(--lsl-line); }
.lsl-store { display: flex; align-items: center; gap: 14px; border: 0; border-radius: 0; padding: 14px 6px; background: transparent; }
.lsl-store:hover { background: var(--lsl-green-soft); }
.lsl-store-text { display: grid; gap: 2px; }
.lsl-radio { width: 22px; height: 22px; border-radius: 50%; border: 2px solid #b9c4bf; flex: none; }
.lsl-store:hover .lsl-radio { border-color: var(--lsl-green); box-shadow: inset 0 0 0 4px #fff; background: var(--lsl-green); }
.lsl-manual-link { display: flex; align-items: center; gap: 10px; margin-top: 14px; border-style: solid; background: #fff; }
.lsl-manual-link .lsl-ico { color: var(--lsl-green); }

/* 가게 확인 */
.lsl-confirm { padding: 20px; box-shadow: var(--lsl-shadow); }
.lsl-confirm-name { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: var(--lsl-fs-lg); font-weight: 700; }
.lsl-confirm-name .lsl-ico { color: var(--lsl-green); }
.lsl-kvs { margin: 0 0 12px; display: grid; gap: 8px; }
.lsl-kv { display: grid; grid-template-columns: 6.5em 1fr; gap: 8px; }
.lsl-kv dt { color: var(--lsl-muted); }
.lsl-kv dd { margin: 0; font-weight: 600; }
.lsl-link-ext { display: inline-flex; align-items: center; min-height: 44px; color: var(--lsl-green-dark); font-weight: 600; }
.lsl-btn-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.lsl-btn-row .lsl-btn { flex: 1 1 180px; }

/* 캡처 읽기 */
.lsl-capture-guide { margin: 0 0 14px; padding-left: 1.3em; display: grid; gap: 4px; }
.lsl-capture-box { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; padding: 16px; border: 2px dashed #c9d8cf; border-radius: var(--lsl-radius); background: #fafcfb; }
.lsl-capture-box label.lsl-btn { flex-direction: row; gap: 8px; cursor: pointer; }
.lsl-thumbs { display: flex; flex-wrap: wrap; gap: 8px; width: 100%; }
.lsl-thumbs:empty { display: none; }
.lsl-thumb { position: relative; width: 84px; height: 150px; border-radius: 10px; overflow: hidden; border: 1px solid var(--lsl-line); }
.lsl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.lsl-thumb-x { position: absolute; top: 4px; right: 4px; width: 32px; height: 32px; border-radius: 50%; border: 0; background: rgba(0, 0, 0, 0.6); color: #fff; font-size: 18px; cursor: pointer; }

/* 질문 */
.lsl-qcount { color: var(--lsl-green-dark); font-size: var(--lsl-fs-sm); }
.lsl-qcount span { color: var(--lsl-muted); }
.lsl-question { font-size: var(--lsl-fs-xl); letter-spacing: -0.02em; margin: 6px 0 18px; }
.lsl-answers { gap: 12px; }
.lsl-answer { min-height: 60px; background: var(--lsl-blue-soft); border-color: var(--lsl-blue-line); font-size: var(--lsl-fs-lg); display: flex; align-items: center; justify-content: center; gap: 8px; }
.lsl-answer:hover { background: #e3edff; border-color: #9db8f5; }
.lsl-answer.is-suggested { border: 2px dashed var(--lsl-green); }
.lsl-suggest-tag { font-size: var(--lsl-fs-xs); font-weight: 700; padding: 2px 8px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-answer.is-picked .lsl-suggest-tag { background: rgba(255, 255, 255, 0.25); color: #fff; }
.lsl-place-box { margin: 0 0 16px; padding: 14px 16px; border-radius: 12px; background: #fffbea; border: 1px solid #f5e3a3; }
.lsl-place-title { margin: 0 0 4px; font-weight: 700; color: #6b4a00; font-size: var(--lsl-fs-sm); }
.lsl-place-text { margin: 0 0 4px; font-weight: 600; }
.lsl-help { background: #fff; }
.lsl-help[open] { border-color: #cfe0d6; box-shadow: var(--lsl-shadow); }
.lsl-stage-pos { margin-top: 12px; }
.lsl-side-progress { text-align: center; }
.lsl-pring-wrap { position: relative; width: 110px; margin: 6px auto 12px; }
.lsl-pring { width: 110px; height: 110px; transform: rotate(-90deg); }
.lsl-pring circle { fill: none; stroke-width: 10; }
.lsl-pring-num { position: absolute; inset: 0; display: grid; place-content: center; margin: 0; color: var(--lsl-muted); }
.lsl-pring-num strong { font-size: var(--lsl-fs-xl); color: var(--lsl-ink); line-height: 1; }
.lsl-stage-check { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; text-align: left; }
.lsl-stage-check li, .lsl-analyze-list li { display: flex; align-items: center; gap: 10px; color: var(--lsl-muted); }
.lsl-check-dot { width: 22px; height: 22px; border-radius: 50%; border: 2px solid #c9d2ce; display: grid; place-items: center; flex: none; background: #fff; }
.lsl-check-dot .lsl-ico { width: 14px; height: 14px; fill: #fff; }
.lsl-stage-check .is-done, .lsl-analyze-list .is-done { color: var(--lsl-ink); font-weight: 600; }
.lsl-stage-check .is-done .lsl-check-dot, .lsl-analyze-list .is-done .lsl-check-dot { background: var(--lsl-green); border-color: var(--lsl-green); }
.lsl-stage-check .is-now { color: var(--lsl-green-dark); font-weight: 700; }
.lsl-stage-check .is-now .lsl-check-dot { border-color: var(--lsl-green); }
.lsl-side-store { margin-top: 12px; padding-top: 10px; border-top: 1px solid #e3eee7; }

/* 분석 중 */
.lsl-analyzing { max-width: 520px; margin: 0 auto; text-align: center; }
.lsl-illu { width: 220px; height: auto; margin: 8px auto; display: block; }
.lsl-analyze-list { list-style: none; padding: 16px 20px; margin: 18px auto 0; display: grid; gap: 10px; text-align: left; border: 1px solid var(--lsl-line); border-radius: var(--lsl-radius); max-width: 360px; }

/* 결과 */
.lsl-result-meta { margin: 0 0 10px; font-weight: 600; }
.lsl-result-card { padding: 20px; box-shadow: var(--lsl-shadow); }
.lsl-result-card .lsl-result-top { display: grid; gap: 18px; margin: 0; flex-direction: initial; text-align: initial; }
@media (min-width: 680px) { .lsl-result-card .lsl-result-top { grid-template-columns: 240px 1fr; align-items: center; } }
.lsl-result-score { display: grid; justify-items: center; gap: 8px; text-align: center; }
.lsl-result-score .lsl-score, .lsl-result-score .lsl-ring { width: 140px; height: 140px; }
.lsl-result-score .lsl-score-num strong { font-size: var(--lsl-fs-2xl); }
.lsl-result-stages .lsl-strong { margin: 0 0 10px; }
.lsl-next h3 { margin-bottom: 12px; }
.lsl-next-btns .lsl-btn { min-height: 72px; font-size: var(--lsl-fs-md); }
.lsl-plan { text-align: center; }
.lsl-share-tiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin: 8px 0; }
.lsl-share-tile { display: grid; justify-items: center; gap: 6px; min-height: 72px; padding: 10px 6px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; font: inherit; font-size: var(--lsl-fs-xs); cursor: pointer; color: var(--lsl-ink); }
.lsl-share-tile .lsl-ico { width: 24px; height: 24px; color: var(--lsl-blue); }
.lsl-share-tile:hover { border-color: var(--lsl-green); }
.lsl-aside .lsl-more { margin: 0; background: #fff; }
.lsl-aside .lsl-foot { margin-top: 4px; }

.lsl-btn:disabled { opacity: 0.45; cursor: not-allowed; }

/* ---------------- 홈 (시안 01) ---------------- */
.lsl.lsl-home { max-width: 1080px; padding-bottom: 96px; }
.lsl-hero { display: grid; gap: 12px; align-items: center; padding: 28px 0 20px; }
@media (min-width: 860px) { .lsl-hero { grid-template-columns: 1fr 1fr; gap: 32px; padding: 48px 0 32px; } }
.lsl-hero-title { font-size: 2.125rem; line-height: 1.25; letter-spacing: -0.03em; margin: 0 0 14px; }
@media (min-width: 860px) { .lsl-hero-title { font-size: 3rem; } .lsl-hero-title br:first-of-type { display: inline; } }
.lsl-hero-sub { font-size: var(--lsl-fs-lg); margin: 0 0 18px; }
.lsl-start { position: relative; max-width: 560px; }
.lsl-start input { padding-left: 44px; min-height: 56px; border-radius: 14px; }
.lsl-start .lsl-btn { min-height: 56px; border-radius: 14px; padding: 0 22px; font-size: var(--lsl-fs-md); }
.lsl-start-ico { position: absolute; left: 14px; top: 18px; color: var(--lsl-muted); }
.lsl-start .lsl-note { text-align: left; }
.lsl-hero-visual { position: relative; border-radius: 24px; background: linear-gradient(160deg, #eaf7ef, #f7fbf8); padding: 24px 12px 12px; overflow: hidden; }
.lsl-hero-illu { display: block; width: 100%; max-width: 440px; height: auto; margin: 0 auto; }
.lsl-hero-card { position: absolute; top: 16px; right: 16px; width: 168px; padding: 14px 12px 12px; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(20, 60, 40, 0.14); text-align: center; }
.lsl-hero-card .lsl-badge { top: -10px; right: 10px; font-size: var(--lsl-fs-xs); }
.lsl-hero-card .lsl-score, .lsl-hero-card .lsl-ring { width: 96px; height: 96px; margin: 0 auto; }
.lsl-hero-card .lsl-score-num strong { font-size: var(--lsl-fs-xl); }
.lsl-hero-card p { margin: 6px 0 0; font-size: var(--lsl-fs-xs); font-weight: 600; line-height: 1.4; }
@media (max-width: 520px) { .lsl-hero-card { width: 140px; top: 10px; right: 10px; } .lsl-hero-card .lsl-score, .lsl-hero-card .lsl-ring { width: 76px; height: 76px; } }

.lsl-sec { border-top: 0; padding: 20px 0; }
.lsl-how-sec, .lsl-promise-sec { padding: 22px; margin: 12px 0; border-radius: 20px; background: #f6faf8; }
.lsl-how li { display: flex; align-items: center; gap: 14px; background: #fff; grid-template-columns: none; }
.lsl-how-num { position: static; width: 36px; height: 36px; font-size: var(--lsl-fs-md); flex: none; }
.lsl-how li > span:last-child { display: grid; gap: 2px; color: var(--lsl-ink); }
.lsl-how li > span:last-child span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-promises li { align-items: center; gap: 12px; background: #fff; font-size: var(--lsl-fs-sm); }
.lsl-promise-ico { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; flex: none; }
.lsl-promise-ico .lsl-ico { width: 24px; height: 24px; fill: #fff; }
.lsl-promise-ico.is-green { background: #22a35a; }
.lsl-promise-ico.is-purple { background: #7c5cd6; }
.lsl-promise-ico.is-orange { background: #f0a23a; }
.lsl-promise-ico.is-blue { background: #3b6fe0; }
.lsl-cta { margin-top: 12px; padding: 32px 20px; border-radius: 20px; background: linear-gradient(135deg, #1b7f43, #23955a); color: #fff; }
.lsl-cta .lsl-sec-title { color: #fff; }
.lsl-cta .lsl-muted { color: #d8f0e1; }
.lsl-cta .lsl-btn-primary { background: #fff; color: var(--lsl-green-dark); border-color: #fff; }
.lsl-cta-links a { color: #fff; }

/* ---------------- 자주 묻는 질문 (시안 06) ---------------- */
.lsl-faq-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 8px; }
.lsl-faq-head p { margin: 0; color: var(--lsl-muted); }
.lsl-faq-head svg { width: 96px; height: auto; flex: none; }
.lsl-faq-more { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; text-align: left; background: #f6faf8; border: 1px solid #e3eee7; }

/* ---------------- 영상 샘플 (회원가입 · 만들기 · 재생) ---------------- */
.lsl-video { max-width: 640px; margin: 0 auto; }
.lsl-video-points { list-style: none; padding: 0; margin: 12px 0 20px; display: grid; gap: 8px; }
.lsl-video-points li { padding: 12px 14px; border-radius: 12px; background: var(--lsl-green-soft); }
.lsl-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 16px; }
.lsl-tabs button { min-height: 44px; border: 1.5px solid var(--lsl-line); border-radius: 10px; background: var(--lsl-bg); color: var(--lsl-ink); font: inherit; font-weight: 600; cursor: pointer; }
.lsl-tabs button[aria-selected="true"] { border-color: var(--lsl-green); background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-account .lsl-consent { margin: 12px 0; }
.lsl-account .lsl-consent label { min-height: 0; padding: 12px 14px; align-items: flex-start; line-height: 1.5; }
.lsl-video-me { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; color: var(--lsl-muted); }
.lsl-linkbtn { border: 0; background: none; padding: 4px; color: var(--lsl-green-dark); text-decoration: underline; font: inherit; cursor: pointer; }
.lsl-vpreview img { display: block; max-width: 180px; max-height: 240px; margin: 8px 0; border-radius: 10px; border: 1px solid var(--lsl-line); }
.lsl-vlist { display: grid; gap: 12px; }
.lsl-vcard .lsl-strong { margin: 0; }
.lsl-vcard .lsl-small { margin: 2px 0 10px; }
.lsl-vplayer { position: relative; max-width: 320px; margin: 0 auto; border-radius: 12px; overflow: hidden; background: #000; }
.lsl-vplayer video { display: block; width: 100%; aspect-ratio: 9 / 16; }
.lsl-wm { position: absolute; left: 50%; top: 42%; transform: translate(-50%, -50%) rotate(-18deg); padding: 6px 12px; border-radius: 8px; background: rgba(0, 0, 0, 0.28); color: rgba(255, 255, 255, 0.85); font-weight: 700; font-size: var(--lsl-fs-sm); white-space: nowrap; pointer-events: none; user-select: none; }
.lsl-vwait { text-align: center; }
.lsl-vwait .lsl-spinner { width: 40px; height: 40px; margin: 8px auto; }
.lsl-video-paid { border-color: var(--lsl-blue-line); background: var(--lsl-blue-soft); }

/* ---------------- 진단: 직접 확인 방식 (캡처 단계 대신, 2026-10-09) ---------------- */
.lsl-open-guide { margin: 0 0 16px; }
.lsl-open-guide .lsl-btn { margin-top: 8px; }
.lsl-where { margin: -4px 0 14px; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-where-tag { display: inline-block; padding: 2px 8px; margin-right: 4px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 600; }
.lsl-unknown-list { padding-left: 1.2em; display: grid; gap: 6px; }

/* ---------------- AI 문구 피드백 (👍/👎/고쳐서 보내기) ---------------- */
.lsl-fb { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--lsl-line); }
.lsl-fb-q { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); margin-right: 4px; }
.lsl-fb-btn { min-height: 36px; min-width: 44px; padding: 0 10px; border: 1px solid var(--lsl-line); border-radius: 999px; background: var(--lsl-bg); font: inherit; font-size: var(--lsl-fs-sm); cursor: pointer; }
.lsl-fb-btn:hover { border-color: var(--lsl-green); }
.lsl-fb-btn:disabled { opacity: .5; cursor: default; }
.lsl-fb-note { color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); }
.lsl-fb-edit { width: 100%; margin: 4px 0; }
.lsl-fb p { width: 100%; margin: 0; }

/* ---------------- 시안 모바일 반영 (2026-10-09, 우리동네 찐사장 모바일 UI 쇼케이스) ---------------- */
/* 셀프 도구 목록: 색 아이콘 + 화살표 (모바일 07, PC 도 같은 모양) */
.lsl-kicker { margin: 0 0 4px; color: var(--lsl-green-dark); font-weight: 700; }
.lsl-tool-groups a { display: flex; align-items: center; gap: 14px; padding-right: 40px; position: relative; }
.lsl-tool-groups a::after { content: ""; position: absolute; right: 18px; top: 50%; width: 9px; height: 9px; border-right: 2px solid #9aa6a1; border-top: 2px solid #9aa6a1; transform: translateY(-50%) rotate(45deg); }
.lsl-group-txt { display: grid; gap: 2px; }
.lsl-group-ico { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; flex: none; }
.lsl-group-ico svg { width: 24px; height: 24px; }
.lsl-group-ico.is-blue { background: #e8efff; } .lsl-group-ico.is-blue svg { fill: #2d5bd7; }
.lsl-group-ico.is-purple { background: #efe9ff; } .lsl-group-ico.is-purple svg { fill: #7c5cd6; }
.lsl-group-ico.is-green { background: #e5f6ec; } .lsl-group-ico.is-green svg { fill: #1b9a52; }
.lsl-group-ico.is-orange { background: #fff1de; } .lsl-group-ico.is-orange svg { fill: #e68a10; }
.lsl-group-ico.is-red { background: #ffe9e7; } .lsl-group-ico.is-red svg { fill: #e0412f; }
.lsl-group-ico.is-navy { background: #e6ecfa; } .lsl-group-ico.is-navy svg { fill: #1f4fbf; }

/* 펼침 목록: 오른쪽 화살표 (자주 묻는 질문 · 결과 화면, 모바일 06·10) */
.lsl-more > summary { list-style: none; position: relative; padding-right: 32px; }
.lsl-more > summary::-webkit-details-marker { display: none; }
.lsl-more > summary::after { content: ""; position: absolute; right: 8px; top: 50%; width: 8px; height: 8px; border-right: 2px solid #9aa6a1; border-bottom: 2px solid #9aa6a1; transform: translateY(-70%) rotate(45deg); transition: transform .15s; }
.lsl-more[open] > summary::after { transform: translateY(-30%) rotate(-135deg); }

@media (max-width: 600px) {
	/* 홈: 약속 4가지를 한 줄 4칸으로 (모바일 01) */
	.lsl-promises { grid-template-columns: repeat(4, 1fr); gap: 6px; }
	.lsl-promises li { flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 12px 4px; font-size: var(--lsl-fs-xs); font-weight: 600; line-height: 1.35; word-break: keep-all; }
	.lsl-promise-ico { width: 40px; height: 40px; }
	/* 진단: 답 버튼을 크게, 질문 글자 조금 작게 (모바일 03) */
	.lsl-question { font-size: var(--lsl-fs-xl); line-height: 1.4; }
	.lsl-answer { min-height: 56px; font-size: var(--lsl-fs-md); }
	.lsl-qtop .lsl-link-ext { font-size: var(--lsl-fs-xs); }
	/* 결과: 두 버튼을 나란히 (모바일 05) */
	.lsl-next-btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
	.lsl-next-btns .lsl-btn { padding: 12px 8px; font-size: var(--lsl-fs-sm); }
	/* 셀프 도구 목록 */
	.lsl-tool-groups a { min-height: 72px; padding: 12px 40px 12px 12px; }
	.lsl-tool-groups a strong { font-size: var(--lsl-fs-md); }
	/* 영상 샘플 */
	.lsl-vplayer { max-width: 100%; }
}

/* ---------------- 결과: 오를 점수 · 연구 근거 · 추천 플랜 주요 업무 · 영상 입구 / 셀프 도구 → 맡길게요 (2026-10-09) ---------------- */
.lsl-potential { margin: 6px 0 0; font-size: var(--lsl-fs-sm); color: var(--lsl-muted); }
.lsl-potential strong { color: var(--lsl-green-dark); }
.lsl-evi-list { list-style: none; padding: 0; margin: 8px 0 12px; display: grid; gap: 12px; }
.lsl-evi-list li { display: grid; grid-template-columns: 112px 1fr; gap: 12px; align-items: start; padding: 12px; border-radius: 12px; background: #f6faf8; }
.lsl-evi-big { color: var(--lsl-green-dark); font-size: var(--lsl-fs-md); line-height: 1.3; word-break: keep-all; }
.lsl-evi-src { display: block; margin-top: 4px; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-plan-box { margin-top: 12px; padding: 14px 16px; border-radius: 12px; background: #f6faf8; text-align: left; }
.lsl-plan-box .lsl-plan { margin: 0; }
.lsl-plan-items { margin: 8px 0 0; padding-left: 1.2em; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-video-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.lsl-video-cta p { margin: 0; }
.lsl-handoff { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-top: 28px; padding: 18px 20px; border-radius: var(--lsl-radius); border: 1.5px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-handoff p { margin: 0; }
.lsl-handoff .lsl-btn span { font-weight: 400; font-size: var(--lsl-fs-xs); }
.lsl-subjects { grid-template-columns: 1fr 1fr; }
@media (max-width: 600px) {
	.lsl-evi-list li { grid-template-columns: 1fr; gap: 4px; }
	.lsl-handoff .lsl-btn { width: 100%; }
}

/* ---------------- 내 진단 기록 (회원 전용 점수 변화 도표, 2026-10-09) ---------------- */
.lsl-my { max-width: 760px; margin: 0 auto; }
.lsl-my-store { margin-bottom: 20px; }
.lsl-my-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 12px; }
.lsl-my-name { margin: 0; font-size: var(--lsl-fs-lg); }
.lsl-my-head p { margin: 2px 0 0; }
.lsl-my-gain { text-align: right; }
.lsl-my-gain strong { display: block; font-size: var(--lsl-fs-xl); line-height: 1.1; color: var(--lsl-ink); }
.lsl-my-gain.is-up strong { color: var(--lsl-green); }
.lsl-my-gain span { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-chart { width: 100%; height: auto; margin: 12px 0 4px; }
.lsl-chart-grid { stroke: #e3e9e6; stroke-width: 1; }
.lsl-chart-axis { fill: #7a8682; font-size: 12px; }
.lsl-chart-line { fill: none; stroke: var(--lsl-green); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.lsl-chart-dot { fill: #fff; stroke: var(--lsl-green); stroke-width: 3; }
.lsl-chart-val { fill: var(--lsl-green-dark); font-size: 13px; font-weight: 700; }
.lsl-my-store h3 { margin: 16px 0 8px; font-size: var(--lsl-fs-md); }
.lsl-stage-bars { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.lsl-stage-bars li { display: grid; grid-template-columns: 56px 1fr 92px; align-items: center; gap: 10px; font-size: var(--lsl-fs-sm); }
.lsl-sb-track { position: relative; height: 12px; border-radius: 999px; background: #eef2f0; overflow: hidden; }
.lsl-sb-first, .lsl-sb-last { position: absolute; left: 0; top: 0; height: 100%; border-radius: 999px; }
.lsl-sb-first { background: #c9d3ce; }
.lsl-sb-last { background: var(--lsl-green); height: 6px; top: 3px; }
.lsl-sb-num { text-align: right; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-sb-num strong { color: var(--lsl-green-dark); }
.lsl-sb-legend { display: flex; gap: 16px; margin: 8px 0 0; }
.lsl-sb-legend span::before { content: ""; display: inline-block; width: 18px; height: 8px; margin-right: 6px; border-radius: 999px; background: #c9d3ce; vertical-align: middle; }
.lsl-sb-legend .is-last::before { background: var(--lsl-green); }
.lsl-my-list { list-style: none; padding: 0; margin: 0 0 12px; display: grid; gap: 6px; }
.lsl-my-list li { display: grid; grid-template-columns: 96px 80px 1fr auto; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--lsl-line); font-size: var(--lsl-fs-sm); }
.lsl-my-cta .lsl-btn { margin-top: 8px; }
@media (max-width: 600px) {
	.lsl-my-list li { grid-template-columns: 1fr auto; }
	.lsl-stage-bars li { grid-template-columns: 48px 1fr 84px; gap: 6px; }
}

/* ---------------- 회원 혜택 · 내 계정 (/member/, 2026-10-09) ---------------- */
.lsl-member { max-width: 720px; margin: 0 auto; }
.lsl-benefits { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 10px; }
.lsl-benefits li { margin: 0; border-left: 4px solid var(--lsl-green); }
.lsl-benefits li p { margin: 0 0 4px; }
.lsl-benefits li.is-video { border-left-color: #e0412f; }
.lsl-benefits li.is-star { border-left-color: #f0a23a; }
@media (min-width: 720px) { .lsl-benefits { grid-template-columns: repeat(3, 1fr); } }
.lsl-member-status p { margin: 0 0 8px; }
.lsl-member-kv { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.lsl-member-kv li { display: grid; grid-template-columns: 90px 1fr auto; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--lsl-line); font-size: var(--lsl-fs-sm); }
.lsl-member-kv span { color: var(--lsl-muted); }
.lsl-btn-danger { border-color: var(--lsl-warn); color: var(--lsl-warn); background: #fff; }
.lsl-lost { margin: 10px 0 0; text-align: center; }

/* 서비스·요금: 일하는 방식 안내 (아이디 받지 않음, 2026-10-09) */
.lsl-svc-note { margin: 14px 0 0; padding: 14px 16px; border-radius: 12px; background: #f6faf8; border: 1px solid var(--lsl-line); font-size: var(--lsl-fs-sm); line-height: 1.6; }

/* ---------------- 검색에 없을 때 · 플레이스 미등록 가게 (2026-10-09) ---------------- */
.lsl-choice-cards { display: grid; gap: 10px; margin-top: 16px; }
@media (min-width: 640px) { .lsl-choice-cards { grid-template-columns: 1fr 1fr; } }
.lsl-choice-card { display: grid; gap: 4px; text-align: left; padding: 16px; border: 1.5px solid var(--lsl-line); border-radius: var(--lsl-radius); background: #fff; font: inherit; cursor: pointer; }
.lsl-choice-card:hover, .lsl-choice-card:focus-visible { border-color: var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-choice-card strong { font-size: var(--lsl-fs-md); }
.lsl-choice-card span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-ready-list { display: grid; gap: 8px; }
.lsl-ready-item { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--lsl-line); border-radius: 10px; cursor: pointer; }
.lsl-ready-item:has(input:checked) { border-color: var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-ready-item input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--lsl-green); flex: none; }
.lsl-ready-item > span { display: grid; gap: 2px; }
.lsl-ready { margin: 12px 0 0; font-weight: 700; color: var(--lsl-green-dark); }
.lsl-steps-list { margin: 8px 0 12px; padding-left: 1.3em; display: grid; gap: 6px; }

/* 검색 전 미등록 가게 입구 (2026-10-09) */
.lsl-unreg-banner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; margin: 0 0 14px; padding: 12px 14px; border-radius: 12px; background: #fff8e8; border: 1px solid #f3dfae; font-size: var(--lsl-fs-sm); }
.lsl-unreg-banner .lsl-linkbtn { font-weight: 700; }
.lsl-unreg-link a { font-weight: 700; color: var(--lsl-green-dark); }

/* ---------------- 가게 찾기: 지역 먼저 → 상호 (2026-10-10) ---------------- */
.lsl-start2 { grid-template-columns: 1fr; }
.lsl-start2 input { padding-left: 16px; }
@media (min-width: 560px) { .lsl-start2 { grid-template-columns: 0.9fr 1.1fr; } .lsl-start2 .lsl-btn { grid-column: 1 / -1; } }
.lsl-search2 { display: grid; gap: 10px; margin: 0 0 16px; }
@media (min-width: 720px) { .lsl-search2 { grid-template-columns: 0.9fr 1.1fr auto; align-items: end; } }
.lsl-search2-field { display: grid; gap: 6px; }
.lsl-search2-field label { display: flex; align-items: center; gap: 6px; font-weight: 700; font-size: var(--lsl-fs-sm); }
.lsl-search2 input { width: 100%; min-height: 52px; padding: 0 14px; border: 1.5px solid var(--lsl-line); border-radius: 12px; font: inherit; font-size: var(--lsl-fs-md); background: #fff; }
.lsl-search2 input:focus { border-color: var(--lsl-green); outline: none; box-shadow: 0 0 0 3px var(--lsl-green-soft); }
.lsl-search2 .lsl-btn { min-height: 52px; padding: 0 22px; border-radius: 12px; }
.lsl-search2 .lsl-btn .lsl-ico { width: 18px; height: 18px; fill: currentColor; vertical-align: -3px; }
.lsl-step-no { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-xs); }

/* ---------------- 사장님 혜택 · 준비물(제휴 링크) (2026-10-10) ---------------- */
.lsl-ad-disclosure { margin: 0 0 10px; padding: 8px 12px; border-radius: 8px; background: #f4f6f5; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); line-height: 1.5; }
.lsl-ad-tag { display: inline-block; padding: 1px 7px; border-radius: 6px; border: 1px solid #c9d3ce; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 600; vertical-align: 2px; }
.lsl-offer-list { list-style: none; padding: 0; margin: 8px 0 12px; display: grid; gap: 10px; }
.lsl-offer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.lsl-offer p { margin: 0 0 2px; }
.lsl-supplies .lsl-offer { padding: 10px 0; border-bottom: 1px solid var(--lsl-line); }
.lsl-benefits-page { max-width: 760px; margin: 0 auto; }

/* ---------------- 지원사업·정책자금 알림 (/funds/, 2026-10-10) ---------------- */
.lsl-funds { max-width: 760px; margin: 0 auto; }
.lsl-fund-list { list-style: none; padding: 0; margin: 8px 0; display: grid; gap: 10px; }
.lsl-fund p { margin: 0 0 4px; }
.lsl-fund-locked { position: relative; text-align: center; overflow: hidden; }
.lsl-fund-blur { filter: blur(5px); opacity: .55; user-select: none; margin-bottom: 8px; }
.lsl-fund-blur p { margin: 4px 0; }
.lsl-fund-alert.is-locked { background: #f7f8f7; }
.lsl-check-line { display: flex; align-items: center; gap: 8px; margin: 12px 0; font-weight: 600; }
.lsl-check-line input { width: 20px; height: 20px; accent-color: var(--lsl-green); }
.lsl-funds-cta { border-left: 4px solid var(--lsl-blue, #2d5bd7); }
.lsl-benefits li.is-fund { border-left-color: #2d5bd7; }

/* ---- 관리 위임 계약서 (/contract/) */
.lsl-doc-wrap { background: #fff; border: 1px solid var(--lsl-line); border-radius: var(--lsl-radius); padding: 20px 18px; margin: 16px 0; }
.lsl-doc-title { font-size: var(--lsl-fs-xl); margin: 0 0 4px; }
.lsl-doc-meta { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-doc-sec { margin-top: 18px; }
.lsl-doc-sec h2 { font-size: var(--lsl-fs-md); margin: 0 0 6px; }
.lsl-doc-sec p { margin: 4px 0; line-height: 1.7; }
.lsl-doc-strong { border-left: 4px solid var(--lsl-green); padding-left: 12px; }
.lsl-doc-strong p { font-weight: 600; }
.lsl-doc-key { display: inline-block; font-size: var(--lsl-fs-xs); padding: 1px 8px; border-radius: 999px; background: var(--lsl-green); color: #fff; vertical-align: middle; }
.lsl-doc-annex { background: #f7f9f8; padding: 12px 14px; border-radius: 10px; }
.lsl-doc-parties { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: var(--lsl-fs-sm); }
.lsl-doc-parties th, .lsl-doc-parties td { border: 1px solid var(--lsl-line); padding: 8px 10px; text-align: left; vertical-align: top; word-break: break-all; }
.lsl-doc-parties th { width: 6.5em; background: #f7f9f8; }
.lsl-doc-sig { max-width: 240px; width: 100%; border: 1px solid var(--lsl-line); border-radius: 6px; background: #fff; }
.lsl-doc-checks { list-style: none; margin: 0; padding: 0; }
.lsl-doc-checks li { margin: 2px 0; }
.lsl-hash { word-break: break-all; font-family: ui-monospace, Consolas, monospace; }
.lsl-mandate-step { margin: 16px 0; }
.lsl-mandate-step input:not([type=checkbox]), .lsl-mandate-step textarea { width: 100%; max-width: 360px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--lsl-line); border-radius: 10px; font-size: var(--lsl-fs-md); display: block; margin: 4px 0 10px; }
.lsl-mandate-step textarea { max-width: 100%; }
.lsl-mandate-step .lsl-btn { margin: 6px 6px 6px 0; }
.lsl-mandate-step.is-done { background: var(--lsl-green-soft); }
.lsl-consent-all { font-weight: 700; border-bottom: 1px solid var(--lsl-line); padding-bottom: 8px; margin-bottom: 4px; }
.lsl-consent-opt { color: var(--lsl-muted); }
.lsl-m-pad { width: 100%; max-width: 600px; height: auto; aspect-ratio: 3 / 1; border: 2px dashed var(--lsl-line); border-radius: 10px; background: #fff; touch-action: none; display: block; }
.lsl-btn-block { width: 100%; justify-content: center; }
.lsl-ok { color: var(--lsl-green-dark); font-weight: 600; }
@media print {
  header, footer, .wp-site-blocks > header, .wp-site-blocks > footer, #lsl-mandate-app, .lsl-doc-status button, .lsl-sub { display: none !important; }
  .lsl-doc-wrap { border: 0; padding: 0; margin: 0; }
  .lsl-doc-sec { break-inside: avoid; }
}

/* ---- 셀프 관리 무료 베타 (/self-care/, 광고 도착 페이지) */
.lsl-beta-hero { padding: 28px 20px; border-radius: var(--lsl-radius); background: var(--lsl-green-soft); text-align: center; }
.lsl-beta-eyebrow { color: var(--lsl-green-dark); font-weight: 700; font-size: var(--lsl-fs-sm); margin: 0 0 6px; }
.lsl-beta-title { font-size: clamp(1.5rem, 5vw, 2.1rem); line-height: 1.3; margin: 0 0 10px; }
.lsl-beta-pains, .lsl-beta-gets { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-beta-pains li { font-weight: 600; }
.lsl-beta-gets li strong { display: block; margin-bottom: 4px; }
.lsl-beta-gets li span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-beta-honest { border-left: 4px solid var(--lsl-green); }
.lsl-beta-form .lsl-beta-field { border: 0; padding: 0; margin: 14px 0; }
.lsl-beta-form .lsl-beta-field legend { font-weight: 700; margin-bottom: 4px; }
.lsl-beta-form .lsl-check-line { margin: 8px 0; font-weight: 500; }
.lsl-req { font-size: var(--lsl-fs-xs); color: #b32d2e; font-weight: 700; }
@media (min-width: 720px) { .lsl-beta-pains { grid-template-columns: repeat(3, 1fr); } }

/* ---- 진단 질문: 기억으로 답할 것 / 열어 볼 것 표시, 이미 아는 업종 */
.lsl-how-tag { display: inline-block; padding: 2px 8px; margin-right: 4px; border-radius: 999px; font-size: var(--lsl-fs-xs); font-weight: 600; }
.lsl-how-tag.is-memory { background: #eef4ff; color: #2d5bd7; }
.lsl-how-tag.is-look { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-known { margin: -4px 0 14px; padding: 10px 12px; border-radius: 10px; background: #eef4ff; font-size: var(--lsl-fs-sm); }
.lsl-known-tag { display: inline-block; padding: 2px 8px; margin-right: 6px; border-radius: 999px; background: #2d5bd7; color: #fff; font-size: var(--lsl-fs-xs); font-weight: 600; }
.lsl-place-link { margin: 10px 0; }
.lsl-place-link summary { cursor: pointer; font-weight: 600; font-size: var(--lsl-fs-sm); color: var(--lsl-green-dark); }
.lsl-place-link-row { display: flex; gap: 8px; margin-top: 6px; }
.lsl-place-link-row input { flex: 1; min-width: 0; min-height: 40px; padding: 6px 10px; border: 1px solid var(--lsl-line); border-radius: 8px; }
.lsl-intro-paste textarea { width: 100%; margin: 8px 0; padding: 8px 10px; border: 1px solid var(--lsl-line); border-radius: 8px; font-size: var(--lsl-fs-sm); }
.lsl-intro-check { margin-top: 10px; }
.lsl-intro-rewrite { white-space: pre-wrap; background: #f7f9f8; padding: 10px 12px; border-radius: 8px; }
.lsl-tab-link { display: inline-block; margin-left: 6px; font-weight: 600; color: var(--lsl-green-dark); }
.lsl-answer.is-suggested { outline: 3px solid #2d5bd7; outline-offset: 2px; }
.lsl-answer.is-suggested::after { content: ' · AI 추천'; font-size: 0.8em; color: #2d5bd7; }
/* 추가 점검(점수 미포함)과 결과의 주의할 점 */
.lsl-extra-list { padding-left: 1.2em; display: grid; gap: 18px; margin: 16px 0 20px; }
.lsl-extra-list .lsl-choices { display: grid; gap: 8px; }
.lsl-chip { min-height: 44px; border: 1px solid var(--lsl-line); border-radius: 10px; background: #fff; font-size: var(--lsl-fs-sm); cursor: pointer; }
.lsl-chip.is-picked { border-color: var(--lsl-green); background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-weight: 700; }
.lsl-cautions { border-left: 4px solid #d98200; background: #fffaf0; }
.lsl-cautions ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.lsl-cautions p { margin: 2px 0 0; }

/* ---- 플레이스 상세 가이드 (/guides/) */
.lsl-guide-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-guide-link { display: block; position: relative; text-decoration: none; color: inherit; padding-right: 84px; }
.lsl-guide-link strong { display: block; }
.lsl-guide-link span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-guide-badge { position: absolute; right: 14px; top: 14px; font-style: normal; font-size: var(--lsl-fs-xs); padding: 2px 8px; border-radius: 999px; background: #f2f4f3; color: var(--lsl-muted); }
.lsl-guide .lsl-card { margin: 12px 0; }
.lsl-guide-steps { padding-left: 1.3em; display: grid; gap: 8px; margin: 0; }
.lsl-guide-good { border-left: 4px solid var(--lsl-green); padding-left: 10px; }
.lsl-guide-bad { border-left: 4px solid #c0392b; padding-left: 10px; }
.lsl-guide-tips { background: #f5f8ff; }
.lsl-guide-rules { background: #fffaf0; }
.lsl-guide-locked { background: #f7f9f8; border: 1px dashed var(--lsl-line); }
.lsl-guide-nav { display: flex; justify-content: space-between; gap: 12px; margin: 20px 0; font-size: var(--lsl-fs-sm); }
@media (max-width: 600px) { .lsl-guide-link { padding-right: 16px; } .lsl-guide-badge { position: static; display: inline-block; margin-top: 6px; } }

/* =====================================================================
 * 2026-10-10 개선: 1번 네이버 데이터 · 2번 필수 소개글 점검 · 화면 예시 · 결과 리포트 도표
 * ===================================================================== */
.lsl { --lsl-amber: #b45f06; --lsl-amber-soft: #fff4e5; --lsl-hl: #ff6b00; }

/* 1번: 네이버에서 확인한 우리 가게 */
.lsl-facts { margin: -4px 0 16px; padding: 14px 16px; border-radius: 12px; background: var(--lsl-blue-soft); border: 1px solid var(--lsl-blue-line); }
.lsl-facts-title { margin: 0 0 8px; font-weight: 700; color: var(--lsl-blue); }
.lsl-facts-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.lsl-fact { display: grid; grid-template-columns: 22px 6.5em 1fr; gap: 6px; align-items: start; font-size: var(--lsl-fs-sm); }
.lsl-fact-ico { display: inline-grid; place-items: center; width: 20px; height: 20px; margin-top: 2px; border-radius: 50%; background: #c3cbdb; color: #fff; font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-fact.is-good .lsl-fact-ico { background: var(--lsl-green); }
.lsl-fact.is-warn .lsl-fact-ico { background: var(--lsl-amber); }
.lsl-fact-label { color: var(--lsl-muted); }
.lsl-fact-val small { display: block; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
@media (max-width: 440px) { .lsl-fact { grid-template-columns: 22px 1fr; } .lsl-fact-val { grid-column: 2; } }

/* 2번: 필수 소개글 점검 */
.lsl-intro-step { margin: 0 0 16px; padding: 16px; border: 2px solid var(--lsl-green); border-radius: var(--lsl-radius); background: #fbfefc; display: grid; gap: 12px; }
.lsl-intro-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.lsl-intro-head strong { font-size: var(--lsl-fs-md); }
.lsl-must { padding: 2px 8px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-intro-steps { margin: 0; padding-left: 1.4em; display: grid; gap: 6px; font-size: var(--lsl-fs-sm); }
.lsl-intro-step .lsl-shot-wrap { margin: 0; }
.lsl-seg { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; border-radius: 12px; background: #eef2ef; }
.lsl-seg-btn { min-height: 44px; border: 0; border-radius: 9px; background: transparent; font-size: var(--lsl-fs-sm); font-weight: 600; color: var(--lsl-muted); cursor: pointer; }
.lsl-seg-btn.is-on { background: #fff; color: var(--lsl-green-dark); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1); }
.lsl-intro-pane { display: grid; gap: 8px; }
.lsl-intro-pane[hidden] { display: none; }
.lsl-intro-pane textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--lsl-line); border-radius: 10px; font: inherit; }
.lsl-upload { display: flex; align-items: center; gap: 12px; padding: 16px; border: 2px dashed #b9cfc2; border-radius: 12px; background: #fff; cursor: pointer; }
.lsl-upload:hover { border-color: var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-upload-ico { font-size: 1.75rem; }
.lsl-upload > span:last-child { display: grid; }
.lsl-intro-report { display: grid; gap: 10px; padding: 14px; border-radius: 12px; background: #fff; border: 1px solid var(--lsl-line); }
.lsl-intro-verdict { display: flex; align-items: center; gap: 8px; margin: 0; font-size: var(--lsl-fs-md); }
.lsl-verdict-badge { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; color: #fff; font-weight: 800; background: var(--lsl-amber); }
.lsl-intro-report.is-yes .lsl-verdict-badge { background: var(--lsl-green); }
.lsl-intro-report.is-no .lsl-verdict-badge { background: var(--lsl-warn); }
.lsl-intro-checks, .lsl-intro-issues { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-intro-checks li::before { content: "\2713  "; color: var(--lsl-green); font-weight: 800; }
.lsl-intro-checks li.is-bad::before { content: "\2715  "; color: var(--lsl-warn); }
.lsl-intro-issues li { padding: 6px 10px; border-radius: 8px; background: var(--lsl-amber-soft); color: #6b3a00; }
.lsl-len { display: grid; gap: 6px; }
.lsl-len p { margin: 2px 0 0; }
.lsl-len-row { display: grid; grid-template-columns: 4.2em 1fr 4em; gap: 8px; align-items: center; font-size: var(--lsl-fs-sm); }
.lsl-len-track { position: relative; height: 12px; border-radius: 6px; background: #eef1ef; overflow: hidden; }
.lsl-len-band { position: absolute; top: 0; bottom: 0; background: repeating-linear-gradient(45deg, #cfe8d7 0 4px, #e6f4ea 4px 8px); }
.lsl-len-fill { position: absolute; left: 0; top: 3px; height: 6px; border-radius: 3px; }
.lsl-len-fill.is-now { background: #7c8782; }
.lsl-len-fill.is-after { background: var(--lsl-green); }
.lsl-len-num { text-align: right; }
.lsl-len-key { display: inline-block; width: 18px; height: 10px; vertical-align: middle; border-radius: 3px; background: repeating-linear-gradient(45deg, #cfe8d7 0 4px, #e6f4ea 4px 8px); }
.lsl-intro-rewrite-box { padding: 12px; border-radius: 10px; background: var(--lsl-green-soft); }
.lsl-intro-rewrite-box > p { margin: 0 0 8px; }
.lsl-intro-rewrite { margin: 0; padding: 12px; border-radius: 8px; background: #fff; white-space: pre-line; line-height: 1.7; }
.lsl-intro-rewrite.is-old { background: #f6f7f6; color: var(--lsl-muted); }
.lsl-intro-rewrite-box .lsl-btn-row { margin-top: 10px; }
.lsl-intro-more { display: grid; gap: 8px; padding: 12px; border: 1px dashed #c9d8cf; border-radius: 10px; }
.lsl-intro-more p { margin: 0; }
.lsl-intro-more input { min-height: 44px; padding: 8px 10px; border: 1px solid var(--lsl-line); border-radius: 8px; font: inherit; }
.lsl-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.lsl-chips .lsl-chip { min-height: 38px; padding: 0 12px; }
.lsl-next-hint { margin: 4px 0 0; padding: 10px 12px; border-radius: 10px; background: #2d5bd7; color: #fff; font-weight: 600; }
.lsl-answers[hidden] { display: none; }

/* 화면 예시 (네이버 플레이스 모양) */
.lsl-shot-wrap { margin: -6px 0 14px; }
.lsl-shot-wrap > summary { cursor: pointer; min-height: 40px; display: flex; align-items: center; color: var(--lsl-green-dark); font-weight: 600; font-size: var(--lsl-fs-sm); }
.lsl-shot { margin: 8px 0 0; display: grid; justify-items: center; gap: 8px; }
.lsl-shot figcaption { display: grid; gap: 2px; text-align: center; font-size: var(--lsl-fs-sm); max-width: 340px; }
.lsl-shot figcaption span { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-shot-img { width: 100%; max-width: 320px; border-radius: 18px; border: 1px solid var(--lsl-line); box-shadow: var(--lsl-shadow); }
.lsl-ph { width: 100%; max-width: 300px; border: 7px solid #23272a; border-radius: 28px; background: #fff; overflow: hidden; font-size: 11.5px; line-height: 1.45; color: #222; box-shadow: var(--lsl-shadow); text-align: left; }
.lsl-shot.is-compact .lsl-ph { max-width: 270px; }
.lsl-ph-bar { display: flex; justify-content: space-between; padding: 5px 12px; font-size: 10px; font-weight: 700; color: #555; }
.lsl-ph-bar span:last-child { color: #03a94d; }
.lsl-ph-photos { position: relative; display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 46px 46px; gap: 2px; }
.lsl-ph-photos span { display: grid; place-items: end start; padding: 3px 5px; font-size: 9px; font-weight: 700; color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4); }
.lsl-ph-photos .is-a { grid-row: span 2; background: linear-gradient(135deg, #8d6e63, #5d4037); }
.lsl-ph-photos .is-b { background: linear-gradient(135deg, #e0a35b, #b5651d); }
.lsl-ph-photos .is-c { background: linear-gradient(135deg, #b0bec5, #78909c); }
.lsl-ph-photos .is-d { background: linear-gradient(135deg, #d7b98e, #a1887f); }
.lsl-ph-photos .is-e { background: #455a64; place-items: center; }
.lsl-ph-name { position: relative; display: flex; align-items: baseline; gap: 6px; padding: 8px 12px 0; }
.lsl-ph-name strong { font-size: 15px; }
.lsl-ph-name span { color: #8a8a8a; font-size: 11px; }
.lsl-ph-meta { margin: 2px 12px 6px; color: #777; font-size: 10.5px; }
.lsl-ph-btns { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); padding: 6px 6px 8px; border-bottom: 1px solid #eee; }
.lsl-ph-btns span { display: grid; justify-items: center; gap: 2px; font-size: 10px; color: #555; }
.lsl-ph-btns i { width: 22px; height: 22px; border-radius: 50%; background: #eef0f1; }
.lsl-ph-btns .is-key i { background: #03c75a; }
.lsl-ph-tabs { display: flex; justify-content: space-around; border-bottom: 1px solid #eee; }
.lsl-ph-tabs span { padding: 7px 0 6px; font-size: 11px; color: #888; }
.lsl-ph-tabs .is-on { color: #111; font-weight: 700; box-shadow: inset 0 -2px 0 #111; }
.lsl-ph-body { display: grid; gap: 4px; padding: 8px 10px 12px; background: #f5f6f7; min-height: 120px; }
.lsl-ph-sec, .lsl-ph-line, .lsl-ph-row, .lsl-ph-coupon { position: relative; padding: 7px 8px; border-radius: 6px; background: #fff; }
.lsl-ph-h { margin: 0 0 2px; font-weight: 700; font-size: 12px; }
.lsl-ph-txt { margin: 0; color: #333; }
.lsl-ph-more { margin: 2px 0 0; color: #03a94d; font-weight: 700; font-size: 10.5px; }
.lsl-ph-date { margin: 0 0 2px; color: #888; font-size: 10px; }
.lsl-ph-chips { display: flex; gap: 4px; margin: 4px 0 0; }
.lsl-ph-chips span { padding: 1px 6px; border-radius: 4px; background: #f0f2f3; font-size: 10px; }
.lsl-ph-row { display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 8px; }
.lsl-ph-row strong { position: relative; padding: 0 2px; }
.lsl-ph-thumb { width: 28px; height: 28px; border-radius: 4px; background: linear-gradient(135deg, #e0a35b, #b5651d); }
.lsl-ph-reply { position: relative; display: grid; margin-top: 6px; padding: 6px 8px; border-radius: 6px; background: #f2f7f4; font-size: 10.5px; }
.lsl-ph-coupon { color: #03a94d; font-weight: 700; }
.lsl-ph-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; }
.lsl-ph-grid span { height: 60px; background: linear-gradient(135deg, #d7b98e, #8d6e63); }
.lsl-ph-dim { opacity: 0.55; }
.lsl-ph-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; margin: 4px 0; }
.lsl-ph-stats span { display: grid; padding: 4px; border-radius: 6px; background: #f2f7f4; }
.lsl-ph-stats small { font-size: 9px; color: #777; }
.lsl-ph-chart { display: flex; align-items: flex-end; gap: 4px; height: 50px; }
.lsl-ph-chart i { flex: 1; border-radius: 3px 3px 0 0; background: #03c75a; }
.lsl-ph .is-hl { outline: 3px solid var(--lsl-hl); outline-offset: -1px; border-radius: 6px; z-index: 1; animation: lsl-hl 1.6s ease-in-out infinite; }
.lsl-ph-pin { position: absolute; right: 4px; top: -9px; z-index: 2; padding: 1px 7px; border-radius: 999px; background: var(--lsl-hl); color: #fff; font-size: 10px; font-weight: 800; line-height: 1.5; white-space: nowrap; }
.lsl-ph-row strong .lsl-ph-pin { right: -2px; top: -14px; }
@keyframes lsl-hl { 50% { outline-color: rgba(255, 107, 0, 0.4); } }
@media (prefers-reduced-motion: reduce) { .lsl-ph .is-hl { animation: none; } }

/* 결과: 점수 전후 막대 */
.lsl-gainchart { display: grid; gap: 8px; padding: 18px; border-radius: 14px; background: linear-gradient(160deg, #f1faf4, #e3f3e9); }
.lsl-gain-title { margin: 0; font-weight: 700; }
.lsl-gain-big { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px; margin: 0 0 4px; }
.lsl-gain-big strong { font-size: var(--lsl-fs-2xl); line-height: 1; color: var(--lsl-green-dark); letter-spacing: -0.02em; }
.lsl-gain-big span { padding: 3px 10px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-weight: 700; font-size: var(--lsl-fs-sm); }
.lsl-gbar { display: grid; grid-template-columns: 4em 1fr auto; gap: 10px; align-items: center; }
.lsl-gbar-label { font-size: var(--lsl-fs-sm); color: var(--lsl-muted); }
.lsl-gbar-track { height: 14px; border-radius: 7px; background: rgba(255, 255, 255, 0.9); overflow: hidden; }
.lsl-gbar-fill { display: block; height: 100%; border-radius: 7px; }
.lsl-gbar.is-now .lsl-gbar-fill { background: #8f9b95; }
.lsl-gbar.is-after .lsl-gbar-fill { background: var(--lsl-green); }
.lsl-gbar-num { text-align: right; }
.lsl-gainchart p.lsl-small { margin: 4px 0 0; }

/* 결과: 단계별 막대 */
.lsl .lsl-stagebars, .lsl .lsl-fixcards, .lsl .lsl-tiles, .lsl .lsl-facts-list, .lsl .lsl-intro-checks, .lsl .lsl-intro-issues { padding: 0; }
.lsl-stagebars { list-style: none; margin: 14px 0 6px; padding: 0; display: grid; gap: 10px; }
.lsl-sbar { padding: 12px 14px; border-radius: 12px; background: #f7f9f8; border: 1px solid transparent; }
.lsl-sbar.is-blocked { background: #fff5f3; border-color: #f3c4bc; }
.lsl-sbar-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.lsl-sbar-name { font-size: var(--lsl-fs-md); }
.lsl-sbar-q { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-sbar-status { margin-left: auto; padding: 1px 9px; border-radius: 999px; font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-sbar.is-good .lsl-sbar-status { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-sbar.is-mid .lsl-sbar-status { background: var(--lsl-amber-soft); color: #7a4100; }
.lsl-sbar.is-bad .lsl-sbar-status { background: var(--lsl-warn-soft); color: #8c2318; }
.lsl-sbar-row { display: grid; grid-template-columns: 1fr 3em; gap: 10px; align-items: center; margin-top: 8px; }
.lsl-sbar-track { height: 12px; border-radius: 6px; background: #e6ebe8; overflow: hidden; }
.lsl-sbar-fill { display: block; height: 100%; border-radius: 6px; background: var(--lsl-green); }
.lsl-sbar.is-mid .lsl-sbar-fill { background: #d98200; }
.lsl-sbar.is-bad .lsl-sbar-fill { background: var(--lsl-warn); }
.lsl-sbar-num { text-align: right; font-weight: 700; }
.lsl-sbar-evi { margin: 8px 0 0; font-size: var(--lsl-fs-sm); }
.lsl-sbar-evi strong { padding: 1px 8px; border-radius: 6px; background: #fff3c4; color: #5a3d00; font-size: var(--lsl-fs-md); }
.lsl-evi-more { margin-top: 8px; }

/* 결과: 고칠 곳 카드 */
.lsl-fixcards { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.lsl-fixcard { padding: 16px; border-radius: 14px; border: 1px solid var(--lsl-line); background: #fff; box-shadow: 0 2px 10px rgba(20, 60, 40, 0.05); display: grid; gap: 8px; }
.lsl-fixcard-head { display: flex; align-items: center; gap: 10px; }
.lsl-fixcard-title { flex: 1; font-size: var(--lsl-fs-md); }
.lsl-fixcard-gain { padding: 4px 12px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-weight: 800; white-space: nowrap; }
.lsl-fixcard-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
.lsl-fixcard-tags span { padding: 1px 9px; border-radius: 999px; background: #f0f3f1; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 600; }
.lsl-fixcard-text { margin: 0; }
.lsl-fixcard-evi { display: grid; grid-template-columns: auto 1fr; gap: 4px 12px; align-items: center; padding: 10px 12px; border-radius: 10px; background: #fffbea; border-left: 4px solid #f5b800; font-size: var(--lsl-fs-sm); }
.lsl-fixcard-evi strong { font-size: var(--lsl-fs-lg); color: #5a3d00; white-space: nowrap; }
@media (max-width: 440px) { .lsl-fixcard-evi { grid-template-columns: 1fr; } }
.lsl-fixcard-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.lsl-fixcard-actions .lsl-shot-wrap { margin: 0; width: 100%; }

/* 결과: 소개글 · 네이버 데이터 */
.lsl-intro-card .lsl-intro-report { border: 0; padding: 0; }
.lsl-tiles { list-style: none; margin: 10px 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.lsl-tile { display: grid; gap: 2px; padding: 14px; border-radius: 12px; background: #f6f8f7; border-top: 4px solid #c5cdc9; }
.lsl-tile.is-good { border-top-color: var(--lsl-green); }
.lsl-tile.is-warn { border-top-color: #d98200; }
.lsl-tile-label { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-tile-big { font-size: var(--lsl-fs-xl); line-height: 1.2; }
.lsl-tile-note { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-guide-shot [data-lsl-shot] { display: grid; justify-items: center; }
.lsl-intro-pane .lsl-btn, .lsl-intro-rewrite-box .lsl-btn, .lsl-fixcard-actions .lsl-btn, .lsl-intro-card .lsl-btn { flex-direction: row; gap: 6px; }
.lsl-sbar-evi strong { display: inline-block; white-space: nowrap; }
.lsl-qcount .lsl-points-tag { margin-left: 8px; padding: 1px 9px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-gbar.is-peer .lsl-gbar-fill { background: repeating-linear-gradient(45deg, #2d5bd7 0 5px, #6f8fe6 5px 10px); }
.lsl-peer-note { margin: 2px 0 0; font-size: var(--lsl-fs-sm); }
.lsl-peer-note strong { color: var(--lsl-green-dark); }
.lsl-vs { display: grid; gap: 6px; margin: 4px 0 10px; padding: 14px; border-radius: 12px; background: #f6f8fb; }
.lsl-vs p { margin: 0; }
.lsl-vs-group { display: grid; gap: 6px; }
.lsl-vs .lsl-gbar { grid-template-columns: 5em 1fr 5em; }
.lsl .lsl-peer-list { margin: 8px 0 0; padding: 0; list-style: none; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-peer-list li { display: flex; justify-content: space-between; gap: 8px; padding: 6px 10px; border-radius: 8px; background: #f6f8f7; }
.lsl-peer-list li.is-me { background: var(--lsl-green-soft); font-weight: 700; }

/* 비교: 동네 평균 · 상위 가게 평균 (파랑 빗금 = 비교 대상) */
.lsl-gbar.is-peer .lsl-gbar-fill { background: repeating-linear-gradient(45deg, #2d5bd7 0 5px, #6f8fe6 5px 10px); }
.lsl-peer-note { margin: 2px 0 0; font-size: var(--lsl-fs-sm); }
.lsl-peer-note strong { color: var(--lsl-green-dark); }
.lsl-vs { display: grid; gap: 6px; margin: 4px 0 10px; padding: 14px; border-radius: 12px; background: #f6f8fb; }
.lsl-vs p { margin: 0; }
.lsl-vs-group { display: grid; gap: 6px; }
.lsl-vs .lsl-gbar { grid-template-columns: 5em 1fr 5em; }
.lsl .lsl-peer-list { margin: 8px 0 0; padding: 0; list-style: none; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-peer-list li { display: flex; justify-content: space-between; gap: 8px; padding: 6px 10px; border-radius: 8px; background: #f6f8f7; }
.lsl-peer-list li.is-me { background: var(--lsl-green-soft); font-weight: 700; }

/* 홈페이지 제작 상담 안내 (대표 링크가 없거나 주문앱·SNS·열리지 않음) */
.lsl-site-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; border-left: 4px solid var(--lsl-blue); background: var(--lsl-blue-soft); }
.lsl-site-cta p { margin: 0 0 4px; }
.lsl-fact-val small a { color: var(--lsl-blue); font-weight: 700; }

/* 플레이스 평가서 */
#lsl-report-app.lsl { max-width: 820px; }
.lsl-rp-tools { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.lsl-rp-head { margin: 4px 0 14px; }
.lsl-rp-kicker { margin: 0; color: var(--lsl-green-dark); font-weight: 800; font-size: var(--lsl-fs-sm); letter-spacing: 0.02em; }
.lsl-rp-head .lsl-title { margin: 2px 0; }
.lsl-rp-head p { margin: 0; }
.lsl-rp-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px !important; }
.lsl-rp-meta span { padding: 2px 10px; border-radius: 999px; background: #f0f3f1; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 600; }
.lsl-rp-score { display: flex; align-items: center; gap: 22px; padding: 22px; }
.lsl-rp-grade { display: grid; place-items: center; flex: none; width: 104px; height: 104px; border-radius: 24px; color: #fff; background: var(--lsl-green); }
.lsl-rp-grade strong { font-size: 52px; line-height: 1; font-weight: 800; }
.lsl-rp-grade span { font-size: var(--lsl-fs-xs); font-weight: 700; opacity: 0.9; }
.lsl-rp-grade.is-B { background: #2e8b57; }
.lsl-rp-grade.is-C { background: #d98200; }
.lsl-rp-grade.is-D { background: #c8582a; }
.lsl-rp-grade.is-E { background: var(--lsl-warn); }
.lsl-rp-num p { margin: 0; }
.lsl-rp-num > p:first-child strong { font-size: var(--lsl-fs-2xl); font-weight: 800; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.lsl-rp-label { font-weight: 700; font-size: var(--lsl-fs-lg); }
.lsl-rp-delta { margin-top: 6px !important; color: var(--lsl-muted); }
.lsl-rp-delta.is-up strong { color: var(--lsl-green-dark); }
.lsl-rp-delta.is-down strong { color: var(--lsl-warn); }
.lsl-rp-peer { margin-top: 4px !important; font-size: var(--lsl-fs-sm); }
@media (max-width: 480px) { .lsl-rp-score { gap: 14px; padding: 16px; } .lsl-rp-grade { width: 80px; height: 80px; border-radius: 18px; } .lsl-rp-grade strong { font-size: 40px; } }
.lsl-sb-num strong.is-down { color: var(--lsl-warn); }
.lsl-rt-wrap { overflow-x: auto; }
.lsl-rt { width: 100%; border-collapse: collapse; font-size: var(--lsl-fs-sm); font-variant-numeric: tabular-nums; }
.lsl-rt th { padding: 8px 10px; border-bottom: 2px solid var(--lsl-line); color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 700; text-align: right; white-space: nowrap; }
.lsl-rt th:first-child, .lsl-rt td:first-child { text-align: left; }
.lsl-rt td { padding: 9px 10px; border-bottom: 1px solid #eef1ef; text-align: right; vertical-align: top; }
.lsl-rt td small { display: block; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-rt tr.is-up { background: #effaf2; }
.lsl-rt tr.is-up .lsl-rt-diff { color: var(--lsl-green-dark); font-weight: 800; }
.lsl-rt tr.is-down { background: #fff4f2; }
.lsl-rt tr.is-down .lsl-rt-diff { color: var(--lsl-warn); font-weight: 800; }
.lsl-rt-diff { white-space: nowrap; }
.lsl .lsl-rp-todo-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; counter-reset: todo; }
.lsl-rp-todo-list li { padding: 12px 14px; border-radius: 12px; border: 1px solid var(--lsl-line); }
.lsl-rp-todo-list li > div { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.lsl-rp-todo-list li p { margin: 6px 0 0; }
.lsl-rp-cautions { margin-top: 12px; padding: 12px 14px; border-radius: 12px; }
.lsl-rp-next { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.lsl-rp-next p { margin: 0 0 4px; }
.lsl-rp-next.is-due { border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-rp-criteria summary { cursor: pointer; font-weight: 700; }

/* 인쇄 · PDF 저장: 평가서만 */
@media print {
  #wpadminbar, .lsl-header, .lsl-footer, header.wp-block-template-part, footer.wp-block-template-part, .lsl-no-print { display: none !important; }
  body { background: #fff !important; }
  #lsl-report-app.lsl { max-width: none; padding: 0; }
  .lsl-card { box-shadow: none !important; break-inside: avoid; border: 1px solid #ddd; }
  .lsl-rp-criteria { display: block; }
  .lsl-rp-criteria > *:not(summary) { display: block; }
  .lsl-rp-grade, .lsl-sb-last, .lsl-sb-first, .lsl-rt tr.is-up, .lsl-rt tr.is-down { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
.lsl-grade-badge { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 3px 12px 3px 4px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-sm); font-weight: 700; }
.lsl-grade-badge strong { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--lsl-green); color: #fff; font-weight: 800; }
.lsl-grade-badge.is-C strong { background: #d98200; } .lsl-grade-badge.is-D strong { background: #c8582a; } .lsl-grade-badge.is-E strong { background: var(--lsl-warn); }
.lsl-grade-badge.is-C, .lsl-grade-badge.is-D, .lsl-grade-badge.is-E { background: #fff4e5; color: #6b3a00; }
.lsl-rp-crit-note { margin: 0 0 12px; padding: 10px 14px; border-radius: 10px; background: var(--lsl-amber-soft); color: #6b3a00; font-size: var(--lsl-fs-sm); }
.lsl .lsl-crit-log { margin: 0; padding-left: 1.2em; display: grid; gap: 14px; }
.lsl-crit-log ul { margin: 4px 0; padding-left: 1.1em; }
.lsl-crit-level { display: inline-block; padding: 0 6px; border-radius: 6px; background: #eef2f0; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
#lsl-app .lsl-crit-tag a, .lsl-crit-tag a { color: var(--lsl-green-dark); }

/* 페이지 폭 통일: 화면마다 따로 좁히던 폭을 풀어 머리말·제목과 같은 1080px 에 맞춘다. 입력 서식만 읽기 좋은 폭으로. */
.lsl.lsl-my, .lsl.lsl-member, .lsl.lsl-benefits-page, .lsl.lsl-funds, .lsl.lsl-video, #lsl-report-app.lsl, .lsl.lsl-tools, .lsl.lsl-services, .lsl.lsl-home, .lsl.lsl-guides, .lsl.lsl-criteria, #lsl-app.lsl { max-width: 1080px; }
.lsl .lsl-form, .lsl .lsl-consult, .lsl .lsl-account { max-width: 560px; }
.lsl-sub { max-width: 760px; }

/* 홈: 사장님께 드리는 것 */
.lsl .lsl-feats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.lsl-feats a { display: grid; grid-template-columns: 48px 1fr; grid-template-rows: auto auto; gap: 2px 14px; align-items: center; height: 100%; padding: 18px; border-radius: 16px; background: #fff; border: 1px solid var(--lsl-line); color: var(--lsl-ink); text-decoration: none; transition: border-color .15s, transform .15s; }
.lsl-feats a:hover { border-color: var(--lsl-green); transform: translateY(-2px); }
.lsl-feat-ico { grid-row: span 2; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--lsl-green-soft); font-size: 24px; }
.lsl-feats strong { font-size: var(--lsl-fs-md); font-weight: 800; }
.lsl-feats span:last-child { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }

/* 홈: 정부 지원사업·정책자금 */
.lsl-funds-sec { padding: 26px; border-radius: 20px; background: linear-gradient(135deg, #0f3d2a, #1b7f43); color: #fff; }
.lsl-funds-sec .lsl-sec-title { color: #fff; margin-bottom: 6px; }
.lsl-funds-sec .lsl-muted { color: #cfe7d8; margin: 0; }
.lsl-kicker { margin: 0 0 4px; font-size: var(--lsl-fs-sm); font-weight: 800; color: #ffd66b; }
.lsl-funds-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; }
.lsl-funds-head > div { max-width: 640px; }
.lsl-funds-sec .lsl-btn-primary { background: #ffd66b; border-color: #ffd66b; color: #1c2321; }
.lsl .lsl-funds-teaser { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.lsl-funds-teaser a { display: grid; gap: 4px; height: 100%; padding: 14px 16px; border-radius: 12px; background: rgba(255, 255, 255, 0.1); color: #fff; text-decoration: none; }
.lsl-funds-teaser a:hover { background: rgba(255, 255, 255, 0.18); }
.lsl-funds-teaser strong { font-size: var(--lsl-fs-sm); line-height: 1.45; }
.lsl-funds-teaser span { font-size: var(--lsl-fs-xs); color: #cfe7d8; }

/* 요금표 */
.lsl .lsl-plans { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; align-items: stretch; }
.lsl-plan-card { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 22px 18px 18px; border-radius: 18px; background: #fff; border: 1px solid var(--lsl-line); }
.lsl-plan-card.is-hot { border: 2px solid var(--lsl-green); box-shadow: 0 10px 30px rgba(27, 127, 67, 0.15); }
.lsl-plan-badge { position: absolute; top: -12px; left: 18px; padding: 2px 12px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-xs); font-weight: 800; }
.lsl-plan-card p { margin: 0; }
.lsl-plan-name { font-weight: 800; font-size: var(--lsl-fs-lg); }
.lsl-plan-price { font-size: var(--lsl-fs-xl); font-weight: 800; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.lsl-plan-card.is-hot .lsl-plan-price { color: var(--lsl-green-dark); }
.lsl-plan-sub { color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 700; min-height: 1.5em; }
.lsl-plan-for { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); padding-bottom: 8px; border-bottom: 1px solid #eef1ef; }
.lsl .lsl-plan-feat { list-style: none; margin: 6px 0 14px; padding: 0; display: grid; gap: 7px; flex: 1; font-size: var(--lsl-fs-sm); }
.lsl-plan-feat li { position: relative; padding-left: 22px; }
.lsl-plan-feat li::before { content: "\2713"; position: absolute; left: 0; top: 0; color: var(--lsl-green); font-weight: 800; }
.lsl-pricing > .lsl-small { margin-top: 12px; }
.lsl .lsl-plan-feat { align-content: start; }
.lsl .lsl-feats { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.lsl-chart { display: block; max-width: 820px; margin-left: auto; margin-right: auto; }

/* 정체성 (2026-10-11): 네이버 스마트플레이스 무료 진단 */
.lsl-hero-kicker { display: inline-block; margin: 0 0 10px; padding: 4px 12px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-sm); font-weight: 800; }
.lsl-hero-title em { white-space: nowrap; }
@media (max-width: 520px) { .lsl .lsl-hero-title { font-size: 28px; } }
.lsl .lsl-hero-free { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.lsl-hero-free li { padding: 4px 10px 4px 26px; border-radius: 999px; background: #fff; border: 1px solid #cfe5d7; font-size: var(--lsl-fs-sm); font-weight: 700; color: var(--lsl-green-dark); position: relative; }
.lsl-hero-free li::before { content: "\2713"; position: absolute; left: 10px; color: var(--lsl-green); font-weight: 800; }

.lsl-check-sec > p a { color: var(--lsl-green-dark); font-weight: 700; }
.lsl .lsl-check-stages { list-style: none; margin: 14px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; counter-reset: st; }
.lsl-check-stages > li { padding: 14px; border-radius: 14px; background: #fff; border: 1px solid var(--lsl-line); counter-increment: st; }
.lsl-check-stage { display: grid; gap: 2px; margin: 0 0 8px; padding-bottom: 8px; border-bottom: 1px solid #eef1ef; }
.lsl-check-stage strong { font-size: var(--lsl-fs-lg); font-weight: 800; }
.lsl-check-stage strong::before { content: counter(st) ". "; color: var(--lsl-green); }
.lsl-check-stage span { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-check-stage em { font-style: normal; font-weight: 800; color: var(--lsl-green-dark); font-variant-numeric: tabular-nums; }
.lsl-check-stages ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-check-stages ul li { display: flex; justify-content: space-between; gap: 6px; }
.lsl-check-stages ul li span { color: var(--lsl-muted); font-variant-numeric: tabular-nums; }
.lsl-indep { margin: 18px auto 0; max-width: 760px; text-align: center; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }

/* 고칠 곳 카드: 할 일 체크 · 근거 표시 (2026-10-11) */
.lsl-fixcard-tags .lsl-tag-src { background: #eef4ff; color: var(--lsl-blue); }
.lsl-todo-box { display: grid; gap: 8px; padding: 12px 14px; border-radius: 12px; background: #f7f9f8; border: 1px dashed #c9d8cf; }
.lsl-todo-head { display: flex; justify-content: space-between; align-items: center; margin: 0; }
.lsl-todo-count { margin: 0; padding: 1px 10px; border-radius: 999px; background: #e9eeeb; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-todo-count.is-all { background: var(--lsl-green); color: #fff; }
.lsl-todo-path { margin: 0; font-size: var(--lsl-fs-sm); }
.lsl-todo-path span { display: inline-block; margin-right: 4px; padding: 0 8px; border-radius: 6px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 800; }
.lsl .lsl-todo { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.lsl-todo label { display: grid; grid-template-columns: 22px 1fr; gap: 8px; align-items: start; cursor: pointer; font-size: var(--lsl-fs-sm); }
.lsl-todo input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--lsl-green); }
.lsl-todo input:checked + span { color: var(--lsl-muted); text-decoration: line-through; }
.lsl-todo-box > p.lsl-small { margin: 0; }

/* 상세 가이드: 판단표 · 메뉴 경로 · 사례 */
.lsl-guide-path { margin: 0 0 12px; padding: 10px 14px; border-radius: 10px; background: var(--lsl-green-soft); font-size: var(--lsl-fs-sm); }
.lsl-guide-path strong { margin-right: 6px; color: var(--lsl-green-dark); }
.lsl-guide-checks { border-left: 4px solid var(--lsl-blue); }
.lsl-guide-cases { border-left: 4px solid #f5b800; background: #fffdf3; }
.lsl-guide-cases li { margin-bottom: 8px; }

/* 휴대폰 글자 크게 설정에서 칸이 화면 밖으로 밀리던 문제 (2026-10-11): 그리드 안 칸이 내용 최소 폭을 고집하지 않게, 입력칸은 화면 폭을 넘지 않게 */
.lsl-intro-step > *, .lsl-intro-report > *, .lsl-intro-more > *, .lsl-intro-pane > *, .lsl-todo-box > *, .lsl-fixcard > *, .lsl-card > *, .lsl-main > *, .lsl-sbar > *, .lsl-gainchart > * { min-width: 0; }
.lsl input, .lsl textarea, .lsl select { max-width: 100%; min-width: 0; }
.lsl-intro-more input { width: 100%; }
.lsl-intro-rewrite, .lsl-intro-issues li, .lsl-fixcard-text { overflow-wrap: anywhere; }

/* 정책자금 타임라인 (계산기 틀) */
.lsl-funding-frame { display: block; width: 100%; min-height: 900px; border: 1px solid var(--lsl-line); border-radius: 14px; background: #F3F5F8; }
.lsl-free-tag { display: inline-block; margin-left: 6px; padding: 2px 10px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-xs); font-weight: 800; vertical-align: middle; }
.lsl-funding-teaser .lsl-kicker { color: var(--lsl-green-dark); }
.lsl-fixcard-gain.is-mid { background: #d98200; }
.lsl-fixcard-gain.is-low { background: #8f9b95; }

/* 네이버·카카오로 시작하기 (각 회사 안내 색) */
.lsl-social { display: grid; gap: 8px; margin: 0 0 14px; }
.lsl-social-btn { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 12px; font-weight: 700; text-decoration: none; }
.lsl-social-btn.is-naver { background: #03C75A; color: #fff; }
.lsl-social-btn.is-kakao { background: #FEE500; color: rgba(0, 0, 0, 0.85); }
.lsl-social-or { margin: 4px 0 0; text-align: center; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-social-agree { display: grid; gap: 10px; padding: 14px; border-radius: 12px; background: var(--lsl-green-soft); }
.lsl-social-agree p { margin: 0; }
.lsl-social-agree label { display: flex; gap: 8px; align-items: center; }
.lsl-social-agree label.is-need { color: var(--lsl-warn); font-weight: 700; }

/* 캡처로 답 미리 채우기 */
.lsl-read-box { margin: 10px 0 0; padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px dashed #b9cfc2; display: grid; gap: 10px; }
.lsl-read-box > summary { cursor: pointer; font-weight: 700; color: var(--lsl-green-dark); }
.lsl-read-box > * { min-width: 0; }
.lsl-read-box p { margin: 0; }
.lsl-read-hint { margin: -4px 0 12px; padding: 10px 12px; border-radius: 10px; background: #eef4ff; color: #1d3a8a; font-size: var(--lsl-fs-sm); overflow-wrap: anywhere; }

/* 이용 단계 표시 (2026-10-12) */
.lsl-tier-tag { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px; font-size: var(--lsl-fs-xs); font-style: normal; font-weight: 800; vertical-align: middle; }
.lsl-tier-tag.is-member { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-tier-tag.is-premium { background: #2b2140; color: #ffd66b; }
.lsl-tier-tag.is-paid { background: #e7f0ff; color: #1d4ed8; }
/* 2026-10-14 단계 비교표: 지금 내 단계 칸 강조 */
.lsl-rt-tiers th.is-mine, .lsl-rt-tiers td.is-mine { background: var(--lsl-green-soft); }
.lsl-rt-tiers th small { display: block; font-size: var(--lsl-fs-xs); font-weight: 700; color: var(--lsl-green-dark); }
.lsl-gate.is-paid { border-color: #bfd3ff; }
.lsl-lock-box { border: 1px dashed var(--lsl-line, #dfe5e2); border-radius: 12px; padding: 16px; background: #fafcfb; text-align: center; }
.lsl-lock-box .lsl-btn { margin: 4px; }
.lsl-gate { border-left: 4px solid var(--lsl-green); }
.lsl-gate.is-premium { border-left-color: #6b4fc8; background: #f7f4ff; }
.lsl-compare { margin-top: 14px; }
.lsl-compare > summary { cursor: pointer; font-weight: 800; font-size: var(--lsl-fs-lg); margin-bottom: 8px; }
.lsl-compare .lsl-rt td:not(:first-child), .lsl-compare .lsl-rt th:not(:first-child) { text-align: center; }

/* 홈: 단계 비교 표 대신 링크 (2026-10-12) */
.lsl-compare-link { margin: 14px 0 4px; font-weight: 700; }
.lsl-compare-link a { color: var(--lsl-green-dark); text-decoration: underline; text-underline-offset: 3px; }

/* 영상 이용권 · 샘플 영상 (2026-10-12) */
.lsl-ai-tag { position: absolute; right: 8px; top: 8px; padding: 2px 8px; border-radius: 6px; background: rgba(0, 0, 0, 0.45); color: #fff; font-size: var(--lsl-fs-xs); font-weight: 700; pointer-events: none; }
.lsl-vsample-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 14px; }
.lsl-vsample { margin: 0; }
.lsl-vsample figcaption { display: grid; gap: 2px; margin-top: 6px; font-size: var(--lsl-fs-sm); }
.lsl-vcredit { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.lsl-vcredit-n { margin: 0; font-size: var(--lsl-fs-lg); }
.lsl-vhist summary { cursor: pointer; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-vhist ul { margin: 6px 0 0; padding-left: 18px; font-size: var(--lsl-fs-sm); }
.lsl-vpack-list { list-style: none; padding: 0; margin: 10px 0; display: grid; gap: 8px; }
.lsl-vpack-list li { display: grid; grid-template-columns: 4em 1fr auto auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--lsl-line); border-radius: 12px; }
.lsl-vpack-n { font-weight: 800; }
.lsl-vpack-price { font-weight: 700; }
.lsl-vpack-price s { font-weight: 400; margin-right: 4px; }
@media (max-width: 520px) { .lsl-vpack-list li { grid-template-columns: 3.5em 1fr; } .lsl-vpack-list li .lsl-btn { grid-column: 1 / -1; } }

/* 2026-10-12: 도구 분류 설명 · 소개글 길이 고르기 */
.lsl-group-desc { color: var(--lsl-text, #222); font-size: var(--lsl-fs-sm); }
.lsl-intro-len { margin: 12px 0 8px; }
.lsl-intro-len .lsl-strong { margin: 0 0 6px; }
.lsl-intro-len .lsl-seg { grid-template-columns: repeat(3, 1fr); }
.lsl-intro-len .lsl-seg-btn { min-height: 40px; padding: 0 4px; }

/* 월별 이벤트 캘린더 개편 (2026-10-12): 읽기 쉽게 + 업종별 예시 */
.lsl-cal-how { padding: 14px 16px; border-radius: 12px; background: var(--lsl-green-soft); margin-bottom: 14px; }
.lsl-cal-how p { margin: 0 0 4px; line-height: 1.7; }
.lsl-cal-kind { margin-bottom: 12px; }
.lsl-cal-month h3 { display: flex; align-items: center; gap: 8px; font-size: var(--lsl-fs-xl, 1.35rem); margin: 0 0 12px; }
.lsl-cal-tag { padding: 2px 10px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-sm); font-weight: 700; }
.lsl-cal-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.lsl-cal-ev { padding: 14px 16px; border: 1px solid var(--lsl-line); border-radius: 12px; }
.lsl-cal-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.lsl-cal-name { font-size: var(--lsl-fs-lg); }
.lsl-cal-date { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-cal-post { margin: 6px 0 10px; font-size: var(--lsl-fs-sm); }
.lsl-cal-ex { display: grid; grid-template-columns: 1fr auto; align-items: start; gap: 10px; padding: 12px 14px; border-radius: 10px; background: #f6f8f7; }
.lsl-cal-ex p { margin: 0; line-height: 1.7; }
@media (max-width: 520px) { .lsl-cal-ex { grid-template-columns: 1fr; } }

/* 추천 상품 · 식자재 도매 (2026-10-12) */
.lsl-shop-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.lsl-chip { padding: 8px 14px; border: 1px solid var(--lsl-line); border-radius: 999px; background: #fff; font-size: var(--lsl-fs-sm); font-weight: 600; cursor: pointer; }
.lsl-chip.is-on { background: var(--lsl-green); border-color: var(--lsl-green); color: #fff; }
.lsl-prod-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 14px; }
.lsl-prod-grid.is-mini { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.lsl-prod { display: flex; flex-direction: column; gap: 4px; padding: 12px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; min-width: 0; }
.lsl-prod p { margin: 0; }
.lsl-prod .lsl-strong { font-size: var(--lsl-fs-sm); line-height: 1.5; }
.lsl-prod .lsl-btn { margin-top: auto; }
.lsl-prod-img { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; border-radius: 8px; background: #f6f8f7; overflow: hidden; margin-bottom: 6px; font-size: 2rem; }
.lsl-prod-img img { width: 100%; height: 100%; object-fit: contain; }
.lsl-prod-cat { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-prod-group { margin: 10px 0; }
.lsl-supplies-more { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 10px 0 0; }
.lsl-whole-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-whole { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; }
.lsl-whole img { width: 72px; height: 48px; object-fit: contain; }
.lsl-whole p { margin: 0; }
@media (max-width: 520px) { .lsl-whole { grid-template-columns: 1fr; } .lsl-prod-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* 결과 화면 읽기 쉽게 (2026-10-12): 핵심만 크고 굵게, 설명은 작고 흐리게 */
.lsl-stage-card h3 { font-size: var(--lsl-fs-xl, 1.35rem); }
.lsl-stage-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 4px 0 2px; font-weight: 800; font-size: var(--lsl-fs-md); }
.lsl-stage-flow .lsl-flow-arrow { color: var(--lsl-muted); font-weight: 400; }
.lsl-sbar { padding: 14px 16px; }
.lsl-sbar-name { font-size: var(--lsl-fs-lg); font-weight: 800; }
.lsl-sbar-q { font-size: var(--lsl-fs-xs); opacity: .85; }
.lsl-sbar-num { font-size: var(--lsl-fs-lg); font-weight: 800; }
.lsl-sbar.is-blocked .lsl-sbar-status { font-size: var(--lsl-fs-sm); padding: 2px 10px; }
.lsl-sbar.is-blocked .lsl-sbar-name, .lsl-sbar.is-blocked .lsl-sbar-num { color: #8c2318; }
.lsl-sbar-track { height: 14px; border-radius: 7px; }
.lsl-sbar-evi { font-size: var(--lsl-fs-sm); }
.lsl-blocked strong { font-size: 1.15em; font-weight: 800; }
@media (max-width: 520px) { .lsl-sbar-q { display: none; } }

/* 진단 비교 막대 도표 · 공유 (2026-10-12) */
.lsl-cmp { margin-top: 14px; }
.lsl-cmp-bars { display: flex; align-items: flex-end; justify-content: center; gap: clamp(10px, 4vw, 36px); height: 300px; padding: 8px 4px 0; border-bottom: 2px solid #e3e9e6; }
.lsl-cmp-col { flex: 0 1 88px; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; position: relative; padding-bottom: 46px; }
.lsl-cmp-val { font-size: var(--lsl-fs-lg); font-weight: 800; color: #6b7672; margin-bottom: 4px; }
.lsl-cmp-val small { font-size: .6em; font-weight: 600; margin-left: 1px; }
.lsl-cmp-bar { width: 100%; max-width: 72px; border-radius: 10px 10px 0 0; background: #c9d3ce; }
.lsl-cmp-col.is-last .lsl-cmp-val { color: var(--lsl-green-dark); font-size: var(--lsl-fs-xl, 1.4rem); }
.lsl-cmp-col.is-last .lsl-cmp-bar { background: var(--lsl-green); }
.lsl-cmp-date { position: absolute; bottom: 22px; font-size: var(--lsl-fs-sm); color: var(--lsl-muted); }
.lsl-cmp-tag { position: absolute; bottom: 2px; font-size: var(--lsl-fs-xs); font-weight: 700; color: var(--lsl-muted); }
.lsl-cmp-col.is-last .lsl-cmp-tag { color: var(--lsl-green-dark); }
.lsl-cmp-h { margin: 22px 0 10px; font-size: var(--lsl-fs-lg); }
.lsl-cmp-stages { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.lsl-cmp-stages li { padding: 12px 14px; border-radius: 12px; background: #f7f9f8; }
.lsl-cmp-sh { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.lsl-cmp-sh strong { font-size: var(--lsl-fs-md); }
.lsl-cmp-diff { padding: 2px 10px; border-radius: 999px; font-weight: 800; font-size: var(--lsl-fs-sm); background: #eef2f0; color: var(--lsl-muted); }
.lsl-cmp-diff.is-up { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-cmp-diff.is-down { background: var(--lsl-warn-soft); color: #8c2318; }
.lsl-cmp-row { display: grid; grid-template-columns: 3.2em 1fr 3.2em; align-items: center; gap: 8px; font-size: var(--lsl-fs-xs); color: var(--lsl-muted); }
.lsl-cmp-row + .lsl-cmp-row { margin-top: 5px; }
.lsl-cmp-row b { text-align: right; font-size: var(--lsl-fs-sm); }
.lsl-cmp-track { height: 12px; border-radius: 6px; background: #e6ebe8; overflow: hidden; }
.lsl-cmp-track span { display: block; height: 100%; border-radius: 6px; background: #b9c5bf; }
.lsl-cmp-row.is-last { color: var(--lsl-ink); }
.lsl-cmp-row.is-last .lsl-cmp-track span { background: var(--lsl-green); }
.lsl-cmp-row.is-last b { color: var(--lsl-green-dark); }
.lsl-share { margin: 10px 0; }
.lsl-share-row { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.lsl-share-row input { min-width: 0; }
.lsl-share-more { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 8px 0 4px; font-size: var(--lsl-fs-sm); }

/* 추천 상품 카드 — 인생플러스 모양 (2026-10-12): 그림자 카드, 1:1 사진, 이름 위 분류, 바닥 녹색 버튼, 4·3·2열 */
.lsl-prod-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
@media (max-width: 1023px) { .lsl-prod-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .lsl-prod-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } }
.lsl-prod-grid.is-mini { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lsl-prod { border: 0; border-radius: 12px; padding: 16px; gap: 10px; box-shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04); }
.lsl-prod-img { border-radius: 8px; background: #f5f5f2; margin: 0; }
.lsl-prod-cat { font-size: 13px; font-weight: 600; }
.lsl-prod .lsl-strong { font-size: 17px; font-weight: 600; line-height: 1.45; }
.lsl-prod-cta { margin-top: auto; display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px 10px; border-radius: 8px; background: var(--lsl-green); color: #fff !important; font-size: 16px; font-weight: 600; text-align: center; text-decoration: none; }
.lsl-prod-cta:hover { background: var(--lsl-green-dark); }
@media (max-width: 767px) { .lsl-prod .lsl-strong { font-size: 15px; } .lsl-prod { padding: 12px; } }

/* 홈 '무엇을 진단하나요' 간략판 (2026-10-12) */
.lsl-check-chips { list-style: none; margin: 12px 0 8px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; counter-reset: chk; }
.lsl-check-chips li { counter-increment: chk; display: flex; align-items: baseline; gap: 6px; padding: 12px 18px; border: 1px solid var(--lsl-line); border-radius: 999px; background: #fff; }
.lsl-check-chips li::before { content: counter(chk); color: var(--lsl-green); font-weight: 800; }
.lsl-check-chips strong { font-size: var(--lsl-fs-lg); }
.lsl-check-chips span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }

/* 내 가게 / 다른 가게(비교용) 고르기 · 비교용 결과 띠 (2026-10-12) */
.lsl-who { margin: 14px 0 6px; }
.lsl-who .lsl-strong { margin: 0 0 6px; }
.lsl-rival-band { margin: 0 0 12px; padding: 10px 14px; border-radius: 10px; background: #eef3ff; color: #23407a; font-size: var(--lsl-fs-sm); }
.lsl-rival-band strong { font-weight: 800; }
.lsl-tag-rival { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px; background: #eef3ff; color: #23407a; font-size: var(--lsl-fs-xs); font-weight: 700; vertical-align: middle; }
.lsl-vs-pick { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; margin: 8px 0 12px; }
.lsl-vs-pick select { min-width: 0; }
.lsl-vs-rows { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-vs-rows li { padding: 12px 14px; border-radius: 12px; background: #f7f9f8; }
.lsl-vs-rows .lsl-cmp-row.is-rival .lsl-cmp-track span { background: #7b93c9; }

.lsl-vs-total { margin: 4px 0 12px; font-size: var(--lsl-fs-md); }
.lsl-vs-total strong { font-size: var(--lsl-fs-lg); color: var(--lsl-green-dark); }

/* 홈 진단 흐름 (쉬운 질문 + 꼭 할 일) · 셀프 도구 내 가게 바로가기 (2026-10-12) */
.lsl-check-flow { list-style: none; margin: 14px 0 8px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; counter-reset: flow; }
.lsl-check-flow li { counter-increment: flow; position: relative; display: grid; gap: 6px; padding: 16px 14px; border: 1px solid var(--lsl-line); border-radius: 14px; background: #fff; }
.lsl-check-flow li::before { content: counter(flow); display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: var(--lsl-green); color: #fff; font-weight: 800; font-size: var(--lsl-fs-sm); }
.lsl-check-flow li:not(:last-child)::after { content: '→'; position: absolute; right: -11px; top: 50%; transform: translateY(-50%); color: var(--lsl-muted); font-weight: 700; background: var(--lsl-bg, #fff); padding: 0 1px; }
.lsl-check-flow strong { font-size: var(--lsl-fs-md); line-height: 1.4; }
.lsl-check-flow span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); line-height: 1.5; }
@media (max-width: 640px) { .lsl-check-flow { grid-template-columns: 1fr; } .lsl-check-flow li:not(:last-child)::after { content: '↓'; right: auto; left: 50%; top: auto; bottom: -15px; transform: translateX(-50%); } .lsl-check-flow li { grid-template-columns: auto 1fr; align-items: center; } .lsl-check-flow span { grid-column: 2; } }
.lsl-myplace { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 16px; border-left: 4px solid var(--lsl-green); }
.lsl-myplace p { margin: 0 0 2px; }
.lsl-myplace-btns { display: flex; flex-wrap: wrap; gap: 8px; }

/* 리뷰 관리 (2026-10-12) */
.lsl-rv-how { margin: 6px 0 6px; padding-left: 20px; line-height: 1.7; }
.lsl-rv-thumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0; }
.lsl-rv-thumb { display: grid; gap: 2px; justify-items: center; }
.lsl-rv-thumb img { width: 72px; height: 110px; object-fit: cover; border-radius: 8px; border: 1px solid var(--lsl-line); }
.lsl-rv-summary { font-size: var(--lsl-fs-md); line-height: 1.7; margin: 0; }
.lsl-rv-actions { margin: 0; padding-left: 20px; display: grid; gap: 10px; }
.lsl-rv-actions li strong { display: block; font-size: var(--lsl-fs-md); }
.lsl-rv-actions li span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); line-height: 1.6; }
.lsl-rv-kw2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.lsl-rv-kw2 .lsl-card { margin: 0; }
.lsl-rv-h { margin: 20px 0 8px; }
.lsl-rv-card { display: grid; gap: 8px; }
.lsl-rv-card p { margin: 0; }
.lsl-rv-who { display: flex; gap: 8px; align-items: center; }
.lsl-rv-star { color: #d98200; font-weight: 700; font-size: var(--lsl-fs-sm); }
.lsl-rv-review { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-rv-reply { width: 100%; min-width: 0; font-size: var(--lsl-fs-md); line-height: 1.6; }

/* 내 가게 고르기 (2026-10-12) */
.lsl-store-pick { margin: 0 0 12px; padding: 12px 14px; border-radius: 12px; background: var(--lsl-green-soft); }
.lsl-store-pick .lsl-strong { margin: 0 0 6px; }

.lsl-place-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }

/* ---------- 2026-10-14 자동 진단 확인 화면 · 플레이스 순위 ---------- */
.lsl-auto-list { list-style: none; margin: 12px 0; padding: 0; display: grid; gap: 8px; }
.lsl-auto-list li { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--lsl-line, #dfe5e2); border-radius: 10px; background: #fff; }
.lsl-auto-list li div { display: flex; flex-direction: column; gap: 2px; }
.lsl-auto-mark { flex: 0 0 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; background: #eef2f0; }
.lsl-auto-list li.is-yes .lsl-auto-mark { background: var(--lsl-green-soft, #e6f4ec); color: var(--lsl-green-dark, #1b7f43); }
.lsl-auto-list li.is-partial .lsl-auto-mark { background: #fff4d6; color: #9a6b00; }
.lsl-auto-list li.is-no .lsl-auto-mark { background: #fde8e8; color: #b42318; }
.lsl-rank-peek { text-align: center; }
.lsl-rank-big { margin: 4px 0; font-size: 1.6rem; }
.lsl-rank-card { display: grid; gap: 12px; }
.lsl-rank-top { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; }
.lsl-rank-h { margin: 0; font-size: 1.15rem; }
.lsl-rank-plan { margin: 0; padding: 10px 12px; border-radius: 10px; background: #f6f8f7; font-size: var(--lsl-fs-sm, 0.9rem); }
.lsl-rank-plan.is-auto { background: var(--lsl-green-soft, #e6f4ec); }
.lsl-rank-kw .lsl-row, .lsl-rank-card .lsl-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.lsl-rank-kw .lsl-input { flex: 1 1 180px; min-width: 0; }
.lsl-chip-x { border: 0; background: transparent; cursor: pointer; font-weight: 800; padding: 0 2px; }
.lsl-rank-table td.is-up { color: var(--lsl-green-dark, #1b7f43); font-weight: 800; }
.lsl-rank-table td.is-down { color: #b42318; font-weight: 800; }
.lsl-spark { width: 120px; height: 30px; color: var(--lsl-green, #22a05a); display: block; }
.lsl-sug-tag { display: inline-block; padding: 1px 8px; border-radius: 999px; font-size: var(--lsl-fs-xs, 0.75rem); font-weight: 800; background: #eef2f0; }
.lsl-sug-tag.is-keep { background: var(--lsl-green-soft, #e6f4ec); color: var(--lsl-green-dark, #1b7f43); }
.lsl-sug-tag.is-push { background: #e7f0ff; color: #1d4ed8; }
.lsl-sug-tag.is-grow { background: #fff4d6; color: #9a6b00; }
.lsl-sug-tag.is-hard { background: #f1f1f1; color: #666; }
.lsl-verified { font-size: var(--lsl-fs-xs, 0.75rem); font-weight: 800; color: var(--lsl-green-dark, #1b7f43); background: var(--lsl-green-soft, #e6f4ec); padding: 2px 8px; border-radius: 999px; }
.lsl-rank { margin-bottom: 16px; }

/* ---------- 2026-10-14 셀프로 고치기: 왼쪽 진단 결과 · 오른쪽 고치는 화면 (넓게) ---------- */
.lsl-fix { width: min(1400px, 100vw - 32px); margin-left: 50%; transform: translateX(-50%); }
.lsl-fix-head { margin: 8px 0 16px; }
.lsl-fix-title { margin: 0 0 4px; font-size: 1.5rem; }
.lsl-fix-wrap { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 20px; align-items: start; }
.lsl-fix-side { position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow: auto; background: #fff; border: 1px solid var(--lsl-line, #dfe5e2); border-radius: 14px; padding: 14px; }
.lsl-fix-store { padding-bottom: 10px; border-bottom: 1px solid var(--lsl-line, #dfe5e2); margin-bottom: 8px; }
.lsl-fix-store p { margin: 2px 0; }
.lsl-fix-score strong { font-size: 1.6rem; }
.lsl-fix-group { margin: 12px 0 6px; font-size: var(--lsl-fs-sm, 0.875rem); font-weight: 800; color: #555; }
.lsl-fix-group span { display: inline-block; min-width: 20px; padding: 0 6px; border-radius: 999px; background: #eef2f0; text-align: center; font-size: 0.75rem; }
.lsl-fix-group.is-fix { color: #b42318; }
.lsl-fix-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.lsl-fix-list a { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border-radius: 10px; text-decoration: none; color: inherit; }
.lsl-fix-list a:hover { background: #f4f7f5; }
.lsl-fix-list li.is-on a { background: var(--lsl-green-soft, #e6f4ec); outline: 2px solid var(--lsl-green, #22a05a); }
.lsl-fix-txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.lsl-fix-txt small { color: #6b7280; font-size: 0.75rem; line-height: 1.35; }
.lsl-fix-mark { flex: 0 0 24px; height: 24px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 0.85rem; background: #eef2f0; }
.lsl-fix-mark.is-yes { background: var(--lsl-green-soft, #e6f4ec); color: var(--lsl-green-dark, #1b7f43); }
.lsl-fix-mark.is-partial { background: #fff4d6; color: #9a6b00; }
.lsl-fix-mark.is-no { background: #fde8e8; color: #b42318; }
.lsl-fix-mark.is-unknown, .lsl-fix-mark.is-caution { background: #f1f1f1; color: #555; }
.lsl-fix-main { display: grid; gap: 14px; min-width: 0; }
.lsl-fix-itemhead { display: flex; gap: 12px; align-items: center; }
.lsl-fix-itemhead .lsl-fix-mark { flex-basis: 36px; height: 36px; font-size: 1.1rem; }
.lsl-fix-h { margin: 0; font-size: 1.35rem; }
.lsl-fix-path { border-left: 4px solid var(--lsl-green, #22a05a); }
.lsl-fix-path p { font-weight: 700; }
.lsl-fix-steps { margin: 0; padding-left: 0; list-style: none; display: grid; gap: 8px; counter-reset: s; }
.lsl-fix-steps li { counter-increment: s; }
.lsl-fix-steps label { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--lsl-line, #dfe5e2); border-radius: 10px; cursor: pointer; }
.lsl-fix-steps label span::before { content: counter(s) ". "; font-weight: 800; }
.lsl-fix-steps input:checked + span { color: #6b7280; text-decoration: line-through; }
.lsl-fix-steps input { margin-top: 3px; width: 18px; height: 18px; }
.lsl-fix-tool .lsl-tool-app { margin-top: 8px; }
.lsl-fix-next { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 900px) {
  .lsl-fix { width: auto; margin-left: 0; transform: none; }
  .lsl-fix-wrap { grid-template-columns: 1fr; }
  .lsl-fix-side { position: static; max-height: none; }
}
/* 나란히 보기: 스마트플레이스 창이 오른쪽 반을 쓰는 동안 이 화면은 왼쪽 반에 한 줄로 */
.lsl-fix-unsplit { display: none; margin-bottom: 8px; }
.lsl-fix.is-split { width: calc(50vw - 24px); margin-left: 0; transform: none; }
.lsl-fix.is-split .lsl-fix-wrap { grid-template-columns: 1fr; }
.lsl-fix.is-split .lsl-fix-side { display: none; }
.lsl-fix.is-split .lsl-fix-unsplit { display: inline-flex; }
.lsl-fix kbd { padding: 0 5px; border: 1px solid #ccc; border-bottom-width: 2px; border-radius: 4px; font-size: 0.75rem; background: #fff; }
@media (max-width: 900px) { .lsl-fix.is-split { width: auto; } .lsl-fix.is-split .lsl-fix-side { display: block; } .lsl-fix.is-split .lsl-fix-unsplit { display: none; } }
/* 붙여 넣을 글 */
.lsl-fix-copy { display: grid; gap: 10px; }
.lsl-copy { display: grid; gap: 6px; padding: 10px; border: 1px dashed var(--lsl-line, #dfe5e2); border-radius: 10px; background: #fafcfb; }
.lsl-copy p { margin: 0; }
.lsl-copy textarea { width: 100%; box-sizing: border-box; font: inherit; font-size: 0.9rem; line-height: 1.5; padding: 8px; border: 1px solid var(--lsl-line, #dfe5e2); border-radius: 8px; background: #fff; resize: vertical; }
.lsl-copy .lsl-btn { justify-self: start; }
.lsl-copy-reviews { margin: 0; padding-left: 18px; display: grid; gap: 10px; }
.lsl-copy-out { display: grid; gap: 8px; margin-top: 6px; }
.lsl-pre { white-space: pre-wrap; font-size: 0.875rem; }
.lsl-fix-splitguide ul { margin: 6px 0; padding-left: 18px; display: grid; gap: 4px; }
/* 셀프로 고치기 위쪽 이동 메뉴 */
.lsl-fix-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.lsl-fix-nav a { display: inline-flex; align-items: center; padding: 6px 12px; border: 1px solid var(--lsl-line, #dfe5e2); border-radius: 999px; background: #fff; font-size: var(--lsl-fs-sm, 0.875rem); font-weight: 700; text-decoration: none; color: inherit; }
.lsl-fix-nav a:first-child { background: var(--lsl-green, #22a05a); border-color: var(--lsl-green, #22a05a); color: #fff; }
.lsl-fix-nav a:hover { border-color: var(--lsl-green, #22a05a); }

/* 2026-10-14 회원 등급별 혜택 카드 (회원 혜택 화면) */
.lsl-tier-cards { display: grid; gap: 14px; margin: 0 0 28px; }
@media (min-width: 860px) { .lsl-tier-cards { grid-template-columns: repeat(3, 1fr); align-items: stretch; } }
.lsl-tier-card { display: flex; flex-direction: column; gap: 4px; margin: 0; border-top: 5px solid var(--lsl-green); }
.lsl-tier-card.is-paid { border-top-color: #1d4ed8; }
.lsl-tier-card.is-premium { border-top-color: #2b2140; }
.lsl-tier-card.is-mine { box-shadow: 0 0 0 2px var(--lsl-green); }
.lsl-tier-card p { margin: 0; }
.lsl-tier-head { padding-bottom: 10px; margin-bottom: 4px; border-bottom: 1px solid var(--lsl-line); display: grid; gap: 4px; }
.lsl-tier-name { font-size: 1.15rem; font-weight: 800; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.lsl-tier-card .lsl-plan-badge { position: static; padding: 1px 9px; }
.lsl-tier-mine { padding: 1px 9px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 800; }
.lsl-tier-price { font-size: 1.05rem; font-weight: 800; }
.lsl-tier-sec { margin-top: 10px !important; font-size: var(--lsl-fs-xs); font-weight: 800; color: var(--lsl-muted); letter-spacing: .02em; }
.lsl .lsl-tier-card .lsl-plan-feat { flex: 0 0 auto; margin: 4px 0 2px; }
.lsl-tier-how { margin: 4px 0 0; padding-left: 20px; display: grid; gap: 5px; font-size: var(--lsl-fs-sm); }
.lsl-tier-links { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: var(--lsl-fs-sm); }
.lsl-tier-links a { color: var(--lsl-green-dark); font-weight: 700; }
.lsl-tier-card > .lsl-btn, .lsl-tier-now { margin-top: auto !important; }
.lsl-tier-card > .lsl-btn { margin-top: 14px; }
.lsl-tier-now { padding-top: 14px; color: var(--lsl-green-dark); font-weight: 800; font-size: var(--lsl-fs-sm); }
.lsl-tier-now.is-incl { color: var(--lsl-muted); font-weight: 700; }
.lsl-member-kv li.is-tier strong { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.lsl-member-kv li.is-tier .lsl-tier-tag { margin-left: 0; font-size: var(--lsl-fs-sm); padding: 2px 10px; }
.lsl-member-kv a { color: var(--lsl-green-dark); font-weight: 600; }

/* 2026-10-14 내 기록(/my/) 탭 · 가게 고르기 */
.lsl-my-wrap { max-width: 900px; margin: 0 auto; }
.lsl-my-who { flex-wrap: wrap; gap: 6px; }
.lsl-my-who a { color: var(--lsl-green-dark); }
.lsl-my-tabs { display: flex; gap: 4px; overflow-x: auto; overflow-y: hidden; margin: 6px 0 16px; box-shadow: inset 0 -2px 0 var(--lsl-line); -webkit-overflow-scrolling: touch; }
.lsl-my-tab { flex: 0 0 auto; min-height: 44px; padding: 8px 14px; border: 0; border-bottom: 3px solid transparent; background: none; font: inherit; font-weight: 700; color: var(--lsl-muted); cursor: pointer; white-space: nowrap; }
.lsl-my-tab:hover { color: var(--lsl-ink); }
.lsl-my-tab.is-on { color: var(--lsl-green-dark); border-bottom-color: var(--lsl-green); }
.lsl-my-tab-n { font-size: var(--lsl-fs-xs); color: var(--lsl-muted); }
/* 2026-10-19 탭 숫자는 둥근 배지로, 답글 기다리는 리뷰는 빨간 배지 */
.lsl-my-tab-n:not(:empty) { display: inline-block; min-width: 20px; margin-left: 6px; padding: 0 6px; border-radius: 999px; background: var(--lsl-line); color: var(--lsl-ink); font-weight: 800; line-height: 20px; text-align: center; font-variant-numeric: tabular-nums; vertical-align: 1px; }
.lsl-my-tab-n.is-alert:not(:empty) { background: #e03b2f; color: #fff; }
.lsl-my-panel > .lsl-card:first-child, .lsl-my-panel .lsl-helper-box { margin-top: 0; }
/* 2026-10-20 Chris: 순위 화면 — 순위 표가 먼저, 나머지는 접기 */
.lsl-rk-head { margin-bottom: 14px; }
.lsl-rk-head .lsl-rank-h { margin: 0; }
.lsl-rk-lead { margin: 4px 0 0; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); line-height: 1.6; word-break: keep-all; }
.lsl-rank-table .lsl-rk-now { font-size: 22px; font-weight: 900; color: var(--lsl-ink); white-space: nowrap; }
.lsl-rank-table tbody th, .lsl-sug-table tbody th { padding: 12px 10px; border-bottom: 1px solid #eef1ef; color: var(--lsl-ink); font-size: 16px; font-weight: 700; white-space: normal; word-break: keep-all; vertical-align: middle; }
.lsl-rank-table td, .lsl-sug-table td { vertical-align: middle; }
.lsl-rank-table th:nth-child(2), .lsl-rank-table td:nth-child(2), .lsl-rank-table th:nth-child(3), .lsl-rank-table td:nth-child(3) { text-align: center; }
.lsl-rank-table .lsl-spark-td .lsl-spark { margin-left: auto; }
.lsl-sug-table td:nth-child(5) { white-space: nowrap; }
@media (max-width: 640px) {
	.lsl-rank-table th:nth-child(4), .lsl-rank-table td:nth-child(4), .lsl-sug-table th:nth-child(4), .lsl-sug-table td:nth-child(4) { display: none; }
	.lsl-rank-table .lsl-rk-now { font-size: 19px; }
	.lsl-rank-table tbody th, .lsl-sug-table tbody th { font-size: 15px; padding: 10px 6px; }
	.lsl-rank-table td, .lsl-sug-table td { padding: 9px 6px; }
}
.lsl-rk-status { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin: 10px 0 4px; }
.lsl-rk-upsell { margin: 12px 0 0; padding: 10px 14px; border-radius: 10px; background: #fff7e6; font-size: var(--lsl-fs-sm); line-height: 1.6; }
.lsl-rk-more { margin-top: 14px; border-top: 1px solid var(--lsl-line); }
.lsl-rk-more > details { border-bottom: 1px solid var(--lsl-line); padding: 2px 0 10px; margin: 0; }
.lsl-rk-more > details > summary { padding: 12px 2px 2px; font-weight: 700; font-size: var(--lsl-fs-sm); cursor: pointer; }
.lsl-rk-more > details[open] > summary { margin-bottom: 8px; }
.lsl-rk-more .lsl-chips { margin-bottom: 8px; }
.lsl-rk-more .lsl-row, .lsl-rk-step .lsl-row { margin: 8px 0; }
.lsl-rk-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-rk-step { display: grid; grid-template-columns: 36px 1fr; gap: 12px; padding: 14px 16px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-rk-step > div { min-width: 0; }
.lsl-rk-step strong { font-size: 17px; }
.lsl-rk-step p { margin: 4px 0 8px; }
.lsl-rk-foot { margin: 14px 0 0; }
/* 2026-10-20 이번 주 할 일 · 한 일과 순위 · 검색어별로 오르려면 */
.lsl-rk-week, .lsl-rk-tl, .lsl-rk-ins { margin-top: 16px; padding: 16px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-rk-week { border-color: var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-rk-week-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.lsl-rk-week-h { margin: 0 0 8px; font-size: 17px; font-weight: 800; }
.lsl-rk-week-top .lsl-rk-week-h { margin: 0; }
.lsl-rk-week-tag { padding: 3px 10px; border-radius: 999px; background: #fff; color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 800; }
.lsl-rk-tasks, .lsl-rk-todo { margin: 10px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; counter-reset: t; }
.lsl-rk-tasks li, .lsl-rk-todo li { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; border-radius: 10px; background: #fff; border: 1px solid var(--lsl-line); }
.lsl-rk-tasks li > div, .lsl-rk-todo li > div { display: block; min-width: 0; word-break: keep-all; }
.lsl-rk-tasks li > div::before { counter-increment: t; content: counter(t) ". "; font-weight: 800; color: var(--lsl-green-dark); }
.lsl-rk-tasks small, .lsl-rk-todo small { display: block; margin-top: 2px; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); line-height: 1.5; }
.lsl-rk-tasks .lsl-btn, .lsl-rk-todo .lsl-btn { white-space: nowrap; flex: 0 0 auto; }
.lsl-rk-plan4 { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 6px; }
.lsl-rk-plan4 span { padding: 3px 10px; border-radius: 999px; background: #fff; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-rk-plan4 span.is-now { background: var(--lsl-green); color: #fff; }
.lsl-rk-tl-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.lsl-rk-tl-list li { display: grid; grid-template-columns: 48px 1fr; gap: 10px; align-items: start; }
.lsl-rk-tl-d { padding: 2px 0; border-radius: 8px; background: #fff3dc; color: #8a5300; font-weight: 800; font-size: var(--lsl-fs-xs); text-align: center; }
.lsl-rk-tl-chs { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.lsl-rk-tl-ch { padding: 2px 8px; border-radius: 999px; background: #f2f4f3; font-size: var(--lsl-fs-xs); font-weight: 700; }
.lsl-rk-tl-ch.is-up { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-rk-tl-ch.is-down { background: #fff0ee; color: #b42318; }
.lsl-rk-ins-kw { border-top: 1px solid var(--lsl-line); padding: 8px 0; }
.lsl-rk-ins-kw:first-of-type { border-top: 0; }
.lsl-rk-ins-kw > summary { cursor: pointer; padding: 4px 0; }
.lsl-rk-ins-kw p { margin: 6px 0; }
.lsl-cancel-panel { margin-top: 12px; padding: 14px 16px; border-radius: 12px; background: #fff7e6; border: 1px solid #f1d58a; }
.lsl-cancel-panel[hidden] { display: none; }
.lsl-cancel-store ul { margin: 4px 0 8px; padding-left: 18px; line-height: 1.7; }
/* 2026-10-20 체험 성적표 (내 기록 맨 위) */
.lsl-trial-report { border: 2px solid var(--lsl-green); }
.lsl-tr-h { margin: 0; font-size: 20px; }
.lsl-tr-sub { margin: 4px 0 12px; color: var(--lsl-muted); }
.lsl-tr-store { padding: 10px 0; border-top: 1px solid var(--lsl-line); }
.lsl-tr-list { list-style: none; margin: 6px 0; padding: 0; display: grid; gap: 6px; }
.lsl-tr-list li { display: grid; grid-template-columns: minmax(90px, 30%) auto 1fr; gap: 8px; align-items: baseline; }
.lsl-tr-list li span { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-tr-list li small { color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
.lsl-sug-how { display: block; margin-top: 2px; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); font-weight: 500; line-height: 1.4; }
/* 2026-10-20 Chris: 찐사장 가이드 칸 — 할 일 3단계만 크게, 설명은 접기 */
.lsl-helper-box { padding: 20px 22px; }
.lsl-hb-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
.lsl-hb-ico { font-size: 30px; line-height: 1; }
.lsl-hb-head > div { flex: 1 1 260px; min-width: 0; }
.lsl-hb-title { margin: 0; font-size: 20px; line-height: 1.3; }
.lsl-hb-lead { margin: 2px 0 0; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); line-height: 1.5; word-break: keep-all; }
.lsl-hb-official { padding: 4px 12px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-xs); font-weight: 800; white-space: nowrap; }
.lsl-hb-trial { margin: 0 0 12px; padding: 8px 12px; border-radius: 10px; background: #fff7e6; color: #8a5300; font-size: var(--lsl-fs-sm); font-weight: 700; }
.lsl-hb-mobile { margin: 0 0 12px; padding: 8px 12px; border-radius: 10px; background: #f2f4f3; font-size: var(--lsl-fs-sm); }
.lsl-hb-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-hb-step { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-hb-n { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--lsl-green); color: #fff; font-weight: 800; }
.lsl-hb-body { display: grid; gap: 2px; min-width: 0; line-height: 1.5; word-break: keep-all; }
.lsl-hb-body strong { font-size: 17px; }
.lsl-hb-sub { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-hb-done { color: var(--lsl-green-dark); font-weight: 800; }
.lsl-hb-act .lsl-btn { white-space: nowrap; }
.lsl-hb-step .lsl-if-helper, .lsl-hb-step .lsl-if-nohelper { display: none; }
html:not([data-lsl-helper-card]) .lsl-hb-step .lsl-if-nohelper { display: inline; }
html:not([data-lsl-helper-card]) .lsl-hb-step a.lsl-if-nohelper { display: inline-flex; }
html[data-lsl-helper-card] .lsl-hb-step .lsl-if-helper { display: inline; }
.lsl-hb-more { margin-top: 12px; border-top: 1px solid var(--lsl-line); padding-top: 10px; }
.lsl-hb-more summary { cursor: pointer; font-size: var(--lsl-fs-sm); font-weight: 700; color: var(--lsl-muted); }
.lsl-hb-more-in { padding: 8px 2px 2px; font-size: var(--lsl-fs-sm); line-height: 1.65; }
.lsl-hb-more-in p, .lsl-hb-more-in ul { margin: 0 0 8px; }
.lsl-hb-more-in ul { padding-left: 18px; }
.lsl-hb-code { display: block; margin-top: 6px; }
.lsl-hb-code input { width: 100%; max-width: 360px; font-family: monospace; font-size: 15px; font-weight: 700; letter-spacing: .3px; padding: 8px 10px; border: 1px dashed var(--lsl-green); border-radius: 8px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-hb-locked { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 14px 16px; border-radius: 12px; background: #f6f8f7; }
.lsl-hb-locked p { margin: 0; }
.lsl-hb-faq { margin-top: 16px; border-top: 1px solid var(--lsl-line); padding-top: 12px; }
.lsl-hb-faq-h { margin: 0 0 6px; font-weight: 800; }
.lsl-hb-faq details { border-bottom: 1px solid var(--lsl-line); }
.lsl-hb-faq summary { cursor: pointer; padding: 10px 2px; font-size: var(--lsl-fs-sm); font-weight: 700; list-style: none; }
.lsl-hb-faq summary::before { content: "Q. "; color: var(--lsl-green); font-weight: 800; }
.lsl-hb-faq summary::-webkit-details-marker { display: none; }
.lsl-hb-faq-a { padding: 0 2px 12px 22px; font-size: var(--lsl-fs-sm); line-height: 1.7; color: var(--lsl-ink); }
.lsl-hb-faq-a ol { margin: 0; padding-left: 18px; }
.lsl-hb-faq-a p { margin: 8px 0 0; }
.lsl-reg-lead { margin: 0 0 12px; font-size: var(--lsl-fs-sm); line-height: 1.7; word-break: keep-all; }
.lsl-reg-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lsl-reg-step { display: grid; grid-template-columns: 36px 1fr; gap: 12px; padding: 14px 16px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-reg-step.is-done .lsl-hb-n { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-reg-body { display: grid; gap: 6px; min-width: 0; line-height: 1.6; word-break: keep-all; }
.lsl-reg-body strong { font-size: 17px; }
.lsl-reg-body .lsl-btn { justify-self: start; }
.lsl-reg-body .lsl-btn-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-self: start; margin: 0; }
.lsl-reg-body .lsl-reg-form { margin-top: 6px; }
.lsl-reg-step .lsl-if-helper, .lsl-reg-step .lsl-if-nohelper { display: none; }
html:not([data-lsl-helper-card]) .lsl-reg-step .lsl-if-nohelper { display: block; }
html[data-lsl-helper-card] .lsl-reg-step .lsl-if-helper { display: block; }
.lsl-reg-step .lsl-if-nohelper .lsl-btn { margin-top: 6px; }
.lsl-reg-steps.is-preview { list-style: decimal; padding-left: 22px; gap: 2px; color: var(--lsl-muted); margin-bottom: 8px; }
.lsl-reg-steps.is-preview li { padding: 0; border: 0; }
.lsl-link-btn { border: 0; background: none; padding: 0 4px; color: var(--lsl-green-dark); font: inherit; font-size: var(--lsl-fs-sm); font-weight: 700; text-decoration: underline; cursor: pointer; }
.lsl-hb-locked .lsl-btn-row { margin: 0; }
@media (max-width: 640px) {
	.lsl-helper-box .lsl-only-mobile { display: block; }
	.lsl-hb-step { grid-template-columns: 32px 1fr; }
	.lsl-hb-act { grid-column: 2; }
}
/* 2026-10-20 찐사장 가이드 크롬 웹 스토어 정식 등록 표시 */
/* 2026-10-20 무료 진단 쪽 제목·안내 (검색엔진이 읽는 글) */
.lsl-diag-head { max-width: 760px; margin: 0 auto 12px; text-align: center; }
.lsl-diag-h1 { margin: 4px 0 6px; font-size: clamp(24px, 4.2vw, 34px); line-height: 1.3; word-break: keep-all; }
.lsl-diag-head .lsl-sub { margin: 0; word-break: keep-all; }
.lsl-diag-about { max-width: 960px; margin: 40px auto 0; padding: 24px 20px; border-top: 1px solid var(--lsl-line); }
.lsl-diag-about h2 { font-size: var(--lsl-fs-lg, 20px); margin: 0 0 10px; }
.lsl-diag-about-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px 32px; margin-bottom: 20px; }
.lsl-diag-about ol, .lsl-diag-about ul { margin: 0; padding-left: 20px; line-height: 1.75; }
.lsl-diag-faq dt { font-weight: 700; margin-top: 10px; }
.lsl-diag-faq dd { margin: 2px 0 0; color: var(--lsl-muted); line-height: 1.7; }
.lsl-helper-official { margin: 8px 0; padding: 8px 12px; border-radius: 10px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-fix-way .lsl-if-nohelper .lsl-btn, .lsl-fix-helpertip .lsl-btn { margin: 4px 6px 4px 0; }
.lsl-mystore-pick { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.lsl-mystore-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 14px; border: 1px solid var(--lsl-line); border-radius: 999px; background: #fff; font: inherit; font-size: var(--lsl-fs-sm); font-weight: 700; color: var(--lsl-ink); cursor: pointer; }
.lsl-mystore-chip:hover { border-color: var(--lsl-green); }
.lsl-mystore-chip.is-on { background: var(--lsl-green); border-color: var(--lsl-green); color: #fff; }
.lsl-mystore-chip-n { font-weight: 600; font-size: var(--lsl-fs-xs); opacity: .8; }

/* 2026-10-14 추천 상품 업종 고르기 */
.lsl-biz-pick { margin: 0 0 18px; padding: 14px 16px; border-radius: 14px; background: var(--lsl-green-soft); }
.lsl-biz-pick p { margin: 0 0 8px; }
.lsl-biz-pick p:last-child { margin: 8px 0 0; }
.lsl-biz-btns { display: flex; flex-wrap: wrap; gap: 8px; }
.lsl-biz-btn { min-height: 44px; padding: 8px 16px; border: 1px solid var(--lsl-line); border-radius: 999px; background: #fff; font: inherit; font-weight: 700; color: var(--lsl-ink); cursor: pointer; }
.lsl-biz-btn span { font-weight: 600; font-size: var(--lsl-fs-xs); color: var(--lsl-muted); }
.lsl-biz-btn:hover { border-color: var(--lsl-green); }
.lsl-biz-btn.is-on { background: var(--lsl-green); border-color: var(--lsl-green); color: #fff; }
.lsl-biz-btn.is-on span { color: #fff; opacity: .85; }
.lsl-shop-group[hidden] { display: none; }
.lsl-shop-group.is-empty { padding: 14px 16px; border: 1px dashed var(--lsl-line); border-radius: 14px; }

/* 2026-10-14 셀프 도구: 동네 키워드 검색량 · 근처 가게 비교 체크 */
.lsl-tool-app .lsl-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.lsl-tool-app .lsl-row .lsl-input { flex: 1 1 200px; min-width: 0; }
.lsl-tool-app .lsl-gbar { grid-template-columns: 7.5em 1fr 4.5em; }
.lsl-tool-app .lsl-gbar-track { background: #eef1ef; }
.lsl-tool-app .lsl-vs-group { margin: 10px 0; display: grid; gap: 6px; }
.lsl-words { list-style: none; margin: 10px 0; padding: 0; display: grid; gap: 4px; font-size: var(--lsl-fs-sm); }
.lsl-words li { display: grid; grid-template-columns: minmax(8em, 14em) 1fr 5em; gap: 10px; align-items: center; padding: 3px 0; color: var(--lsl-muted); }
.lsl-words li.is-area { color: var(--lsl-ink); font-weight: 700; }
.lsl-words li.is-seed { color: var(--lsl-green-dark); font-weight: 800; }
.lsl-words-k { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lsl-words-bar { height: 10px; border-radius: 5px; background: #eef1ef; overflow: hidden; }
.lsl-words-bar span { display: block; height: 100%; border-radius: 5px; background: var(--lsl-green); opacity: .75; }
.lsl-words-n { text-align: right; font-variant-numeric: tabular-nums; }

/* 2026-10-14 홈: 진단 순서 4단계 · 진단 다음 관리 기능 */
@media (min-width: 720px) { .lsl-home .lsl-how { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .lsl-home .lsl-how { grid-template-columns: repeat(4, 1fr); } }
.lsl .lsl-manage { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 12px; }
@media (min-width: 720px) { .lsl .lsl-manage { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .lsl .lsl-manage { grid-template-columns: repeat(3, 1fr); } }
.lsl-manage li { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.lsl-manage li p { margin: 0; }
.lsl-manage-h { font-weight: 800; font-size: var(--lsl-fs-md); }
.lsl-manage li .lsl-link-ext { margin-top: auto; }

/* 2026-10-14 진단 요약: 셀프 관리 기능 미리 보기 (무료는 순위 흐리게) · 미등록 가게 주의할 점 */
.lsl-blur { display: inline-block; filter: blur(5px); user-select: none; pointer-events: none; color: var(--lsl-ink); font-weight: 800; }
.lsl-unlock { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin: 10px 0 4px; padding: 10px 12px; border-radius: 10px; background: #eef3ff; }
.lsl-unlock p { margin: 0; }
.lsl-paid-sec { border-left: 4px solid #1d4ed8; }
.lsl-paid-sec .lsl-tier-tag { vertical-align: 1px; }
.lsl-cmp-bars2 { display: grid; gap: 6px; margin: 8px 0; }
.lsl-cmp-bars2 .lsl-gbar { grid-template-columns: 5.5em 1fr 4.5em; }
.lsl-cmp-bars2 .lsl-gbar-track { background: #eef1ef; }
.lsl-caution-card { border: 1px solid #f3d38a; background: #fffaf0; }
.lsl .lsl-caution-list { margin: 8px 0 0; padding-left: 18px; display: grid; gap: 8px; }
.lsl-gbar-num { min-width: 3.4em; white-space: nowrap; }

/* 리뷰 답글 (2026-10-16, 내 기록 탭 · LSL_Reviews) */
.lsl-rv-list { list-style: none; margin: 12px 0; padding: 0; display: grid; gap: 12px; }
.lsl-rv-item { margin: 0; border-left: 4px solid var(--lsl-line, #dfe5e2); }
.lsl-rv-item.is-low { border-left-color: #d98200; background: #fffaf0; }
.lsl-rv-low { color: #b35c00; font-size: var(--lsl-fs-xs); }
.lsl-rv-replies { display: grid; gap: 10px; }
.lsl-rv-replies .lsl-copy { margin: 0; }
.lsl-rv-fix { width: 100%; margin: 8px 0; }
.lsl-rv-more summary { cursor: pointer; font-size: var(--lsl-fs-sm); }
.lsl-rv-empty { margin: 12px 0; padding: 12px 14px; border-radius: 10px; background: var(--lsl-green-soft); }
.lsl-rv-intro .lsl-check { display: flex; gap: 8px; align-items: center; margin: 8px 0 0; }
/* 2026-10-19 Chris: 가게별 구분 + 답글 기다리는 리뷰 수를 눈에 띄게 */
.lsl-rv-sum { margin: 0 0 12px; padding: 10px 16px; border-radius: 12px; background: var(--lsl-green-soft); font-weight: 700; line-height: 2; }
.lsl-rv-sum .lsl-rv-lown { display: inline-block; margin-left: 6px; line-height: 1.5; }
.lsl-rv-sum.is-on { background: #fff1ef; border: 1px solid #f5c2bc; }
.lsl-rv-sum-n { display: inline-block; min-width: 36px; padding: 2px 10px; border-radius: 999px; background: #e03b2f; color: #fff; font-size: 22px; line-height: 1.3; text-align: center; font-variant-numeric: tabular-nums; margin-right: 6px; vertical-align: -1px; }
.lsl-rv-pick .lsl-mystore-chip { gap: 8px; }
.lsl-rv-n { display: inline-block; min-width: 22px; padding: 0 7px; border-radius: 999px; font-size: var(--lsl-fs-xs); font-weight: 800; line-height: 22px; text-align: center; font-variant-numeric: tabular-nums; }
.lsl-rv-n.is-on { background: #e03b2f; color: #fff; }
.lsl-rv-n.is-zero { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }
.lsl-mystore-chip.is-on .lsl-rv-n.is-on { background: #fff; color: #e03b2f; }
.lsl-mystore-chip.is-on .lsl-rv-n.is-zero { background: rgba(255,255,255,.25); color: #fff; }
.lsl-rv-store[hidden] { display: none; }
.lsl-rv-store-h { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; }
.lsl-rv-head { padding: 2px 10px; border-radius: 999px; background: var(--lsl-green-soft); color: var(--lsl-green-dark); font-size: var(--lsl-fs-sm); font-weight: 800; }
.lsl-rv-head.is-on { background: #e03b2f; color: #fff; }
.lsl-rv-lown { padding: 2px 10px; border-radius: 999px; background: #fff3dc; color: #b35c00; font-size: var(--lsl-fs-sm); font-weight: 800; }
.lsl-rv-lown[hidden] { display: none; }
.lsl-rp-keep td small { display: block; color: var(--lsl-muted); }

/* 홈 첫 화면 (2026-10-16, 결제선생 메인처럼): 가운데 제목 · 바뀌는 업종 단어 · 검색창 · 동네 풍경 위 로고 캐릭터 */
.lsl-hero2 { position: relative; text-align: center; margin: 16px 0 8px; padding: 40px 20px 0; border-radius: 24px; background: linear-gradient(180deg, #eaf7ef 0%, #f4fbf6 55%, #ffffff 100%); overflow: hidden; }
.lsl-hero2-kicker { display: inline-block; margin: 0 0 14px; padding: 4px 14px; border-radius: 999px; background: var(--lsl-green, #1b7f43); color: #fff; font-size: var(--lsl-fs-sm); font-weight: 700; }
.lsl-hero2-title { margin: 0 0 12px; font-size: clamp(28px, 7vw, 52px); line-height: 1.25; letter-spacing: -0.03em; font-weight: 800; }
.lsl-hero2-word { font-style: normal; color: var(--lsl-green, #1b7f43); display: inline-block; transition: opacity .25s, transform .25s; }
.lsl-hero2-word.is-out { opacity: 0; transform: translateY(-8px); }
.lsl-hero2-sub { margin: 0 auto 18px; max-width: 560px; color: var(--lsl-muted); font-size: var(--lsl-fs-md); }
.lsl-hero2 .lsl-start { margin: 0 auto 10px; text-align: left; }
.lsl-hero2-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 18px; margin: 0 0 8px; font-size: var(--lsl-fs-sm); }
.lsl-hero2-links a { color: var(--lsl-green-dark, #146534); font-weight: 700; }
.lsl-hero2-art { position: relative; margin: 8px -20px 0; }
.lsl-hero2-town { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 62%; }
.lsl-hero2-logo { position: relative; display: block; width: min(640px, 92%); height: auto; margin: 0 auto; }
@media (max-width: 599px) {
	.lsl-hero2 { padding: 28px 16px 0; border-radius: 18px; }
	.lsl-hero2-sub { font-size: var(--lsl-fs-sm); }
	.lsl-hero2-art { margin: 4px -16px 0; }
	.lsl-hero2-town { display: none; }
	.lsl-hero2-logo { width: min(340px, 96%); }
}

/* 요금 카드 5장 (2026-10-16: 무료 · 베이직 · 스탠다드 · 프리미엄 · 엔터프라이즈) */
.lsl .lsl-plans { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.lsl-plan-card.is-soon { background: #fafbfa; }
.lsl-plan-card.is-soon .lsl-plan-badge { background: #8a9590; }
.lsl-plan-promo { margin: 2px 0 6px; color: #b35c00; font-weight: 800; font-size: var(--lsl-fs-sm); }
.lsl-trial-note { border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-br-m { display: none; }
@media (max-width: 599px) { .lsl-br-m { display: inline; } .lsl-hero2-title { font-size: 28px; } }

/* 단계 비교표 (2026-10-16: 휴대폰에서 글자가 한 자씩 쌓이던 문제 → 3칸 · 낱말 단위 줄바꿈 · 작은 여백) */
.lsl-rt-tiers { word-break: keep-all; }
.lsl-rt-tiers td:first-child { text-align: left; }
@media (max-width: 599px) {
	.lsl-rt-tiers { font-size: 14px; }
	.lsl-rt-tiers th, .lsl-rt-tiers td { padding: 9px 5px; }
	.lsl-rt-tiers td:first-child, .lsl-rt-tiers th:first-child { width: 34%; }
}

/* 요금 카드: 한 줄 제목 + 사용량 줄 (2026-10-16) */
.lsl-plan-title { margin: 8px 0 10px; font-weight: 800; font-size: var(--lsl-fs-md); }
.lsl-plan-usage { margin: 0 0 12px; padding: 10px 12px; border-radius: 12px; background: #f6f8f7; display: grid; gap: 6px; }
.lsl-plan-usage div { display: flex; justify-content: space-between; gap: 8px; font-size: var(--lsl-fs-sm); }
.lsl-plan-usage dt { color: var(--lsl-muted); margin: 0; }
.lsl-plan-usage dd { margin: 0; font-weight: 800; text-align: right; }
.lsl-plan-usage .is-none dd { color: #b5bdb9; font-weight: 400; }
.lsl-plan-card.is-hot .lsl-plan-usage { background: var(--lsl-green-soft); }
.lsl-plan-feat li { font-size: var(--lsl-fs-sm); }
.lsl-plan-usage dd { white-space: nowrap; }

/* 단계 비교표 4칸 (2026-10-17: 프리미엄 칸 추가) — 휴대폰에서는 옆으로 밀어 보고 첫 칸(기능)은 고정 */
.lsl-rt-tiers th small.is-soon { color: var(--lsl-muted); font-weight: 600; }
.lsl-rt-swipe { display: none; margin: 0 0 6px; }
@media (max-width: 599px) {
	.lsl-rt-swipe { display: block; }
	.lsl-compare .lsl-rt-wrap { margin: 0 -4px; -webkit-overflow-scrolling: touch; }
	.lsl-rt-tiers { min-width: 540px; }
	.lsl-rt-tiers td:first-child, .lsl-rt-tiers th:first-child { position: sticky; left: 0; z-index: 1; width: 120px; min-width: 120px; background: #fff; box-shadow: 1px 0 0 var(--lsl-line); }
}

/* 문의하기 서식 (2026-10-17: 문의 유형 · 요금제 · 전화/이메일 · 가게 상황은 접어 둠) */
.lsl-choices-type { gap: 8px; }
.lsl-choices-type label { min-height: 56px; padding: 8px 14px; align-items: center; }
.lsl-choices-type label span { display: grid; gap: 1px; font-weight: 700; line-height: 1.35; }
.lsl-choices-type label small { font-weight: 400; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); }
@media (min-width: 600px) { .lsl-choices-type { grid-template-columns: 1fr 1fr; } }
.lsl-c-plan { display: grid; margin-top: 4px; }
.lsl-c-plan[hidden] { display: none; }
.lsl-consult select { min-height: 52px; padding: 0 12px; border: 1.5px solid var(--lsl-line); border-radius: 12px; font: inherit; font-size: 16px; color: var(--lsl-ink); background: #fff; }
.lsl-c-contact-note { margin: 16px 0 0; padding: 10px 14px; border-radius: 12px; background: #f6f8f7; font-size: var(--lsl-fs-sm); }
.lsl-c-more { margin-top: 16px; padding: 12px 14px; border: 1.5px dashed var(--lsl-line); border-radius: 12px; }
.lsl-c-more > summary { cursor: pointer; font-weight: 700; color: var(--lsl-green-dark); }
.lsl-c-more[open] > summary { margin-bottom: 4px; }

/* 크롬 도우미 · 신규 등록 준비 (2026-10-17) */
.lsl-reg-box { margin-top: 18px; padding: 14px 16px; border: 1.5px dashed var(--lsl-line); border-radius: 14px; background: #fafcfb; }
.lsl-reg-box > summary { cursor: pointer; font-weight: 700; }
.lsl-reg-box[open] > summary { margin-bottom: 10px; }
.lsl-reg-form { display: grid; gap: 4px; max-width: 560px; }
.lsl-reg-form textarea { min-height: 72px; padding: 10px 12px; border: 1.5px solid var(--lsl-line); border-radius: 12px; font: inherit; font-size: 16px; resize: vertical; }
.lsl-reg-msg { min-height: 1em; color: var(--lsl-warn, #b42318); }

/* 대기 화면: 달리는 찐사장 (2026-10-18) — 제자리에서 통통 뛰고, 발밑 길이 뒤로 흘러가고, 먼지가 날린다 */
.lsl-runner { position: relative; width: 200px; height: 256px; margin: 0 auto 8px; overflow: hidden; } /* 2026-10-18: 뛸 때 머리가 잘려서 위쪽 여유 +36px */
.lsl-runner-img { position: absolute; left: 10px; bottom: 18px; width: 180px; height: auto; transform-origin: 50% 100%; animation: lsl-run-bob .42s ease-in-out infinite alternate; }
.lsl-runner-ground { position: absolute; left: 0; right: 0; bottom: 10px; height: 4px; border-radius: 4px;
  background: repeating-linear-gradient(90deg, #cfe3d6 0 26px, transparent 26px 44px); animation: lsl-run-ground .5s linear infinite; }
.lsl-runner-dust { position: absolute; left: 34px; bottom: 16px; width: 14px; height: 14px; border-radius: 50%; background: #e3ece6; opacity: 0; animation: lsl-run-dust .84s ease-out infinite; }
.lsl-runner-dust.is-2 { left: 52px; width: 10px; height: 10px; animation-delay: .42s; }
@keyframes lsl-run-bob { from { transform: translateY(0) rotate(-2deg); } to { transform: translateY(-9px) rotate(2deg); } }
@keyframes lsl-run-ground { from { background-position: 0 0; } to { background-position: -44px 0; } }
@keyframes lsl-run-dust { 0% { opacity: .9; transform: translate(0, 0) scale(.6); } 100% { opacity: 0; transform: translate(-30px, -10px) scale(1.4); } }
@media (prefers-reduced-motion: reduce) { .lsl-runner-img, .lsl-runner-ground, .lsl-runner-dust { animation: none; } }
@media (max-width: 599px) { .lsl-runner { width: 160px; height: 208px; } .lsl-runner-img { width: 144px; left: 8px; } }

/* 로그인 버튼 아이콘 (2026-10-18 사용자 요청: 카카오 앞에 카톡 말풍선) — 카카오·네이버 로그인 디자인 가이드의 심볼 모양 */
.lsl-social-btn::before { content: ""; flex: none; width: 18px; height: 18px; margin-right: 8px; background: no-repeat center / contain; }
.lsl-social-btn.is-kakao::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 3C6.48 3 2 6.58 2 11c0 2.86 1.88 5.37 4.72 6.79-.21.75-.76 2.71-.87 3.13-.13.52.19.51.4.37.17-.11 2.65-1.8 3.72-2.53.66.09 1.33.14 2.03.14 5.52 0 10-3.58 10-8S17.52 3 12 3z'/%3E%3C/svg%3E"); }
.lsl-social-btn.is-naver::before { width: 14px; height: 14px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M16.27 12.84 7.42 0H0v24h7.73V11.16L16.58 24H24V0h-7.73z'/%3E%3C/svg%3E"); }

/* 간편 조회·진단의 순위 숫자를 크게 (2026-10-18 사용자 요청: 상단 점수가 눈에 띄게) */
.lsl-rank-big { margin: 10px 0 6px; line-height: 1.1; }
.lsl-rank-big strong { font-size: 3.25rem; font-weight: 900; letter-spacing: -2px; color: var(--lsl-green-dark, #0f5f36); }
.lsl-rank-big .lsl-muted { font-size: 1.35rem; font-weight: 700; }
@media (max-width: 599px) { .lsl-rank-big strong { font-size: 2.9rem; } .lsl-rank-big .lsl-muted { font-size: 1.2rem; } }

/* 회원 혜택: 선착순 할인 가격 · 체험 설명 · 가입 안내 · 가입 뒤 다음 단계 (2026-10-18) */
/* 정가(줄 그은 원래 가격): 금액을 읽을 수 있는 크기로 (2026-10-18 Chris — 너무 작아 안 보였음) */
.lsl-plan-regular { display: block; font-size: 1rem; font-weight: 700; line-height: 1.35; color: var(--lsl-muted); letter-spacing: 0; }
.lsl-plan-regular s { text-decoration-thickness: 2px; }
.lsl-plan-price.is-offer { color: #c2410c; }
.lsl-plan-card.is-hot .lsl-plan-price.is-offer { color: #c2410c; }
.lsl-plan-after { margin: 0 0 4px; font-size: var(--lsl-fs-xs); color: var(--lsl-muted); }
.lsl-tier-offer { margin: 2px 0 0; }
.lsl-tier-price.is-offer { font-size: 1.05rem; line-height: 1.2; }
.lsl-tier-price.is-offer strong { font-size: 2rem; font-weight: 900; color: #c2410c; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.lsl-tier-offer .lsl-plan-promo { margin: 2px 0 2px; }
.lsl-tier-note { margin: 8px 0 0 !important; padding: 8px 10px; border-radius: 8px; background: var(--lsl-green-soft); font-size: var(--lsl-fs-sm); line-height: 1.5; word-break: keep-all; }
.lsl-join-guide { margin: 0 0 24px; border: 2px solid var(--lsl-green); }
.lsl-join-guide.is-trial { background: var(--lsl-green-soft); }
.lsl-join-guide > p { margin: 0 0 10px; word-break: keep-all; }
.lsl-join-steps { margin: 0 0 14px; padding-left: 22px; display: grid; gap: 8px; }
.lsl-join-steps li strong { display: block; }
.lsl-join-steps li span { font-size: var(--lsl-fs-sm); color: var(--lsl-muted); word-break: keep-all; }
.lsl-join-hint { margin: -6px 0 10px; word-break: keep-all; }
.lsl-next-step { margin: 0 0 16px; }
.lsl-next-step p { margin: 0 0 8px; word-break: keep-all; }
.lsl-next-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0 !important; }
.lsl-plan-price.is-offer { white-space: nowrap; }
.lsl-plan-price.is-offer .lsl-plan-regular { margin-bottom: 2px; }

/* 결제선생 결제 상자 · 자동결제 상태 (2026-10-18) */
.lsl-pay-box { margin: 0 0 16px; border: 2px solid #1d4ed8; }
.lsl-pay-box .lsl-form { margin-top: 12px; }
.lsl-pay-title { margin: 0 0 4px; font-size: 1.15rem; }
.lsl-pay-price { margin: 0; }
.lsl-pay-price strong { font-size: 1.9rem; font-weight: 900; color: #c2410c; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.lsl-pay-mock { margin: 0 0 10px; padding: 6px 10px; border-radius: 8px; background: #fef3c7; color: #7c2d12; font-weight: 700; font-size: var(--lsl-fs-sm); }
.lsl-pay-status { margin: 0 0 16px; border: 2px solid var(--lsl-green); }
.lsl-pay-status.is-pending, .lsl-pay-status.is-lapsed { border-color: #c2410c; }
.lsl-pay-status.is-canceled { border-color: var(--lsl-muted); }
.lsl-pay-status p { margin: 0 0 6px; word-break: keep-all; }
/* 결제 방법 고르기 (선착순 3개월 묶음 / 1개월씩, 2026-10-18) */
.lsl-pay-opts { border: 0; padding: 0; margin: 4px 0 6px; display: grid; gap: 8px; }
.lsl-pay-opts legend { font-weight: 800; margin-bottom: 6px; }
.lsl-pay-opt { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1.5px solid var(--lsl-line, #d8e0da); border-radius: 10px; cursor: pointer; }
.lsl-pay-opt:has(input:checked) { border-color: #1d4ed8; background: #eef3ff; }
.lsl-pay-opt input { margin-top: 4px; }
.lsl-pay-opt > span { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.lsl-pay-opt-price { font-weight: 900; font-size: 1.1rem; color: #c2410c; font-variant-numeric: tabular-nums; }
.lsl .lsl-pay-opt input[type="radio"] { width: 20px; height: 20px; min-height: 0; flex: 0 0 20px; margin: 3px 0 0; padding: 0; accent-color: #1d4ed8; }

/* 추천 상품: 소분류 칩을 누르면 그 분류만 (2026-10-18 수리 — .lsl-prod 의 display:flex 가 hidden 을 이겨서 걸러지지 않았음) */
.lsl-prod[hidden], .lsl-shop-group[hidden] { display: none !important; }
.lsl-chip-n { font-weight: 800; opacity: .7; margin-left: 2px; font-variant-numeric: tabular-nums; }
.lsl-chip.is-on .lsl-chip-n { opacity: .9; }
.lsl-plan-after.is-annual { color: var(--lsl-green-dark); font-weight: 700; }

/* 정책자금: 12가지 한눈에 · 최신 공고 바로 가기 (2026-10-18) */
.lsl-fund-prog-grid, .lsl-fund-link-grid { list-style: none; margin: 12px 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.lsl-fund-prog { margin: 0; display: grid; gap: 6px; align-content: start; }
.lsl-fund-prog h3 { margin: 0; font-size: 1.05rem; word-break: keep-all; }
.lsl-fund-prog p { margin: 0; }
.lsl-fund-prog-kind { font-size: var(--lsl-fs-xs); color: var(--lsl-muted); font-weight: 700; }
.lsl-fund-prog-amt { font-weight: 800; color: var(--lsl-green-dark); word-break: keep-all; }
.lsl-fund-prog dl { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; font-size: var(--lsl-fs-sm); }
.lsl-fund-prog dt { color: var(--lsl-muted); font-weight: 700; white-space: nowrap; }
.lsl-fund-prog dd { margin: 0; word-break: keep-all; }
.lsl-fund-link-grid a { display: grid; gap: 4px; height: 100%; margin: 0; text-decoration: none; color: inherit; border: 1.5px solid var(--lsl-line); }
.lsl-fund-link-grid a:hover, .lsl-fund-link-grid a:focus-visible { border-color: var(--lsl-green); }
.lsl-fund-link-grid strong { color: var(--lsl-green-dark); }
.lsl-fund-link-grid span { font-size: var(--lsl-fs-sm); color: var(--lsl-muted); word-break: keep-all; }

.lsl-fund-stamp { margin: 6px 0 2px; font-size: var(--lsl-fs-sm); }
.lsl-fund-overdue { color: #b45309; font-weight: 700; }

/* 새 공고: 나에게 맞는 것만 · 짧은 줄 (2026-10-18) */
.lsl-fund-filter { display: grid; gap: 8px; margin: 0 0 12px; padding: 12px 14px; border: 1.5px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-fund-filter p { margin: 0; }
.lsl-fund-filter-row { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; }
.lsl-fund-filter-row select { min-height: 40px; }
.lsl-fund-only { display: inline-flex; gap: 6px; align-items: center; font-size: var(--lsl-fs-sm); }
.lsl-fund-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.lsl-fund-chips .lsl-chip { padding: 6px 12px; }
.lsl-fund-list.is-compact { display: grid; gap: 8px; }
.lsl-fund-list.is-compact .lsl-fund { padding: 10px 14px; margin: 0; }
.lsl-fund-list.is-compact .lsl-fund p { margin: 0 0 2px; }
.lsl-fund-list .lsl-fund[hidden] { display: none !important; }
.lsl-fund .lsl-strong a { color: inherit; text-decoration: none; }
.lsl-fund .lsl-strong a:hover { text-decoration: underline; }
.lsl-fund-due.is-soon { color: #b45309; font-weight: 700; }
.lsl-fund-more summary { cursor: pointer; font-size: var(--lsl-fs-xs); color: var(--lsl-muted); }
.lsl-fund-more-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }

.lsl-fund-area { display: inline-block; padding: 1px 7px; border-radius: 999px; background: #fef3c7; color: #92400e; font-weight: 800; margin-right: 4px; }
.lsl-fund-area.is-all { background: var(--lsl-green-soft); color: var(--lsl-green-dark); }

.lsl-funds-btns { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }

.lsl-fund-filter-row input[type=search] { min-height: 40px; flex: 1 1 220px; min-width: 0; padding: 6px 10px; border: 1px solid var(--lsl-line); border-radius: 8px; }
.lsl-fund-chips-h { font-size: var(--lsl-fs-xs); font-weight: 800; color: var(--lsl-muted); align-self: center; margin-right: 2px; min-width: 52px; }

/* 2026-10-19 진단 결과: 점수 · 순위 · 실제 손님 구분 한 줄 */
.lsl-score-note { margin: 10px 0 0; padding: 10px 12px; border-radius: 10px; background: var(--lsl-green-soft, #eef7f1); color: var(--lsl-text, #222); line-height: 1.6; }
.lsl-video-status { margin: 6px 0 10px; }

/* 2026-10-19 네이버 읽기 안전장치: 멈춤 · 다시 정상 안내 띠 (LSL_Watch::banner) */
.lsl-watch-banner { max-width: 1080px; margin: 12px auto; padding: 12px 16px; border-radius: 12px; line-height: 1.6; font-size: var(--lsl-fs-sm, 15px); }
.lsl-watch-banner.is-down { background: #fff7e6; border: 1px solid #f5c26b; color: #5c3d00; }
.lsl-watch-banner.is-ok { background: var(--lsl-green-soft, #eef7f1); border: 1px solid #b8e0c7; color: #14532d; }
.lsl-watch-banner strong { margin-right: 4px; }

/* 2026-10-19 내 기록: 이 가게 빼기 */
.lsl-my-remove { margin-top: 14px; }
.lsl-my-remove summary { color: var(--lsl-muted, #6b7280); font-size: var(--lsl-fs-sm, 14px); }
.lsl-my-remove .lsl-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.lsl-my-remove .lsl-input { flex: 1 1 220px; min-width: 0; }

/* 2026-10-19 셀프로 고치기: 두 가지 방법 · 도우미 연결 여부(html[data-lsl-helper-card], 크롬 도우미 site.js 가 단다) · 휴대폰 안내 · 무료 맛보기 */
.lsl-if-helper { display: none; }
html[data-lsl-helper-card] .lsl-if-helper { display: block; }
html[data-lsl-helper-card] .lsl-if-nohelper { display: none; }
.lsl-only-mobile { display: none; }
@media (max-width: 767px) {
	.lsl-fix .lsl-if-helper, .lsl-fix .lsl-if-nohelper, .lsl-fix-splitguide { display: none !important; }
	.lsl-fix .lsl-only-mobile { display: block; }
}
.lsl-fix-ways { padding: 14px 16px; border: 1px solid var(--lsl-line, #e5e7eb); border-radius: 14px; background: #fff; }
.lsl-fix-ways > .lsl-strong { margin: 0 0 10px; }
.lsl-fix-ways-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.lsl-fix-way { display: grid; grid-template-columns: 30px 1fr; gap: 10px; align-items: start; padding: 12px; border-radius: 12px; background: var(--lsl-green-soft, #eef7f1); }
.lsl-fix-way p { margin: 4px 0 0; }
.lsl-fix-way-n { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--lsl-green, #1b7f43); color: #fff; font-weight: 800; }
.lsl-fix-helpertip { margin-top: 8px; }
.lsl-fix-taste { border: 2px solid var(--lsl-green, #1b7f43); }
.lsl-fix-taste p { margin: 0 0 8px; }
.lsl-fix-freetag { font-style: normal; font-size: 12px; font-weight: 800; color: var(--lsl-green-dark, #0f5f36); background: var(--lsl-green-soft, #eef7f1); border-radius: 99px; padding: 1px 8px; margin-left: 4px; }
.lsl-fix-lock { font-size: 12px; margin-left: 4px; opacity: .7; }

/* 2026-10-19 셀프로 고치기가 왼쪽으로 540px 밀리던 문제: 워드프레스 '가운데 맞춤' 칸(is-layout-constrained)이 margin 을 덮어써
   margin-left:50% 는 사라지고 translateX(-50%) 만 남았다 → transform 을 쓰지 않고 margin 으로만 넓힌다 (% 는 부모 글 칸 너비 기준). */
body .lsl.lsl-fix { max-width: none !important; width: min(1400px, 100vw - 32px) !important; margin-left: calc((100% - min(1400px, 100vw - 32px)) / 2) !important; margin-right: 0 !important; transform: none !important; }
body .lsl.lsl-fix.is-split { width: calc(50vw - 24px) !important; margin-left: 0 !important; }
@media (max-width: 900px) { body .lsl.lsl-fix, body .lsl.lsl-fix.is-split { width: auto !important; margin-left: 0 !important; } }

/* 2026-10-20 순위 화면 휴대폰 (다른 규칙보다 뒤에 두어야 먹는다) */
@media (max-width: 640px) {
	.lsl-rk-step { grid-template-columns: 1fr; gap: 6px; padding: 12px; }
	.lsl-rk-step .lsl-hb-n { width: 28px; height: 28px; }
	.lsl-sug-table .lsl-btn-sm { padding: 6px 10px; white-space: nowrap; }
	.lsl-sug-table tbody th { white-space: nowrap; }
}
@media (max-width: 640px) {
	.lsl-rk-tasks li, .lsl-rk-todo li { flex-direction: column; align-items: stretch; }
	.lsl-rk-tasks .lsl-btn, .lsl-rk-todo .lsl-btn { align-self: flex-start; }
}

/* 2026-10-20 신규 등록 한 페이지 (/register/) */
.lsl-register-page { max-width: 860px; margin: 0 auto; }
.lsl-reg-head h1 { margin: 0 0 8px; font-size: clamp(24px, 4vw, 32px); line-height: 1.3; word-break: keep-all; }
.lsl-reg-head p { margin: 0 0 18px; color: var(--lsl-muted); line-height: 1.7; word-break: keep-all; }
.lsl-reg-t { font-size: 18px; }
.lsl-reg-lock { margin: 0 0 14px; padding: 14px 16px; border-radius: 12px; background: #fff7e6; border: 1px solid #f1d58a; }
.lsl-reg-lock p { margin: 0 0 8px; line-height: 1.6; word-break: keep-all; }
.lsl-reg-lock .lsl-btn-row { margin: 0 0 6px; }
.lsl-register-page .lsl-ready-list { display: grid; gap: 6px; margin-top: 6px; }
.lsl-register-page .lsl-ready-item { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border-radius: 10px; background: #f8faf9; cursor: pointer; }
.lsl-register-page .lsl-ready-item input { margin-top: 4px; width: 18px; height: 18px; accent-color: var(--lsl-green); }
.lsl-register-page .lsl-ready-item > span { display: grid; gap: 2px; }
.lsl-register-page .lsl-ready { margin: 8px 0 0; font-weight: 700; color: #b42318; }
.lsl-register-page .lsl-ready.is-ok { color: var(--lsl-green-dark); }
.lsl-reg-naver { margin: 4px 0; padding-left: 20px; line-height: 1.7; color: var(--lsl-ink); font-size: var(--lsl-fs-sm); }
.lsl-reg-saved { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 14px 16px; border-radius: 12px; border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-reg-saved-tag { display: inline-block; padding: 2px 10px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: var(--lsl-fs-xs); font-weight: 800; }
.lsl-reg-saved-name { margin: 6px 0 0; font-size: 22px; font-weight: 900; color: var(--lsl-ink); }
.lsl-reg-saved-meta { margin: 2px 0 0; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-reg-caution { margin-top: 16px; padding: 14px 16px; border-radius: 12px; background: #fffaf0; border: 1px solid #f3dfb5; }
.lsl-reg-caution ul { margin: 0; padding-left: 18px; line-height: 1.75; font-size: var(--lsl-fs-sm); }
.lsl-reg-link { display: flex; gap: 12px; align-items: center; margin-top: 18px; padding: 14px 16px; border: 1.5px dashed var(--lsl-line); border-radius: 14px; background: #fafcfb; color: var(--lsl-ink); text-decoration: none; }
.lsl-reg-link:hover { border-color: var(--lsl-green); }
.lsl-reg-link.is-on { border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-reg-link-ico { font-size: 24px; }
.lsl-reg-link > span:last-child { display: grid; gap: 2px; }
.lsl-reg-link small { color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-reg-form[hidden] { display: none; }
.lsl-reg-body .lsl-btn-row .lsl-btn { flex: 0 0 auto; width: auto; }
.lsl-reg-switch { margin: 0 0 14px; padding: 14px 16px; border-radius: 12px; border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-reg-switch p { margin: 0 0 8px; line-height: 1.6; }
.lsl-reg-switch .lsl-btn-row { margin: 0; flex-wrap: wrap; gap: 8px; align-items: center; }

/* 2026-10-20 셀프로 고치기 우선순위 배지 (찐사장 가이드 카드와 같은 모양) */
.lsl-prio { display: inline-flex; align-items: center; gap: 4px; margin-right: 6px; padding: 1px 8px 1px 3px; border-radius: 99px; border: 1.5px solid #d92d20; background: #fff; color: #b42318; font-size: 12px; font-weight: 800; line-height: 1.5; vertical-align: 2px; white-space: nowrap; }
.lsl-prio i { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: #d92d20; color: #fff; font-style: normal; font-size: 11px; font-weight: 900; }
.lsl-prio.is-top { background: #d92d20; color: #fff; box-shadow: 0 2px 6px rgba(217,45,32,.3); }
.lsl-prio.is-top i { background: #fff; color: #d92d20; }
.lsl-prio.is-done { border-color: var(--lsl-green); color: var(--lsl-green-dark); background: var(--lsl-green-soft); padding: 1px 8px; }
.lsl-fix-prio-row { margin: 0 0 4px; }

.lsl-pending { border: 2px solid var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-pending p { margin: 0 0 6px; }

/* 2026-10-21 외부 검증 반영 */
.lsl-guide-kicker { margin: 0 0 4px; font-size: 14px; font-weight: 700; }
.lsl-guide-kicker a { color: var(--lsl-green-dark); text-decoration: none; }
.lsl-guide-new { margin: 0 0 14px; padding: 10px 14px; border-radius: 10px; background: var(--lsl-green-soft); font-size: var(--lsl-fs-sm); }
.lsl-guide-new a { font-weight: 800; color: var(--lsl-green-dark); }
.lsl-cta-note { display: block; margin: 6px 0 0; color: var(--lsl-muted); font-size: var(--lsl-fs-xs); line-height: 1.5; text-align: center; }
.lsl-diag-cmp { width: 100%; border-collapse: collapse; font-size: var(--lsl-fs-sm); }
.lsl-diag-cmp th, .lsl-diag-cmp td { padding: 6px 8px; border-bottom: 1px solid var(--lsl-line); text-align: left; vertical-align: top; word-break: keep-all; }
.lsl-diag-cmp thead th { color: var(--lsl-green-dark); }
.lsl-video-how { margin-top: 18px; padding: 16px 18px; border-radius: 14px; border: 1px solid var(--lsl-line); background: #fff; }
.lsl-video-how h2 { margin: 0 0 8px; font-size: 20px; }
.lsl-video-how ol { margin: 0 0 10px; padding-left: 20px; line-height: 1.75; }
/* 2026-10-21 홈 정책자금: 작은 한 줄 */
.lsl-funds-mini { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 14px; max-width: 1080px; margin: 8px auto 28px; padding: 10px 16px; border-radius: 12px; background: #f6f8f7; color: var(--lsl-muted); font-size: var(--lsl-fs-sm); }
.lsl-funds-mini-t { font-weight: 700; }
.lsl-funds-mini-b { display: inline-flex; gap: 8px; flex-wrap: wrap; }
/* 2026-10-21 리뷰 안내물 만들기 */
.lsl-sign-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.lsl-sign-form { display: grid; gap: 8px; }
.lsl-sign-form .lsl-strong { margin: 10px 0 0; }
.lsl-sign-form .lsl-choices { display: grid; gap: 6px; }
.lsl-sign-preview { border: 1px solid var(--lsl-line); border-radius: 12px; background: #f6f8f7; padding: 12px; display: flex; justify-content: center; }
.lsl-sign-preview svg { width: 100%; max-width: 360px; height: auto; box-shadow: 0 4px 16px rgba(0,0,0,.12); }
.lsl-sign-tips { margin: 10px 0 0; padding-left: 18px; line-height: 1.7; }
@media (max-width: 760px) { .lsl-sign-grid { grid-template-columns: 1fr; } }
/* 2026-10-21 리뷰 안내물: 큰 글자·가게 단추·분위기 고르기 */
.lsl-sign { font-size: 16px; }
.lsl-sign-h { margin: 14px 0 2px; font-size: 18px; font-weight: 800; }
.lsl-sign .lsl-sign-in { width: 100%; min-height: 50px; padding: 12px 14px; border: 1.5px solid var(--lsl-line); border-radius: 12px; font-size: 17px; }
.lsl-sign .lsl-choice { font-size: 16px; }
.lsl-sign-stores { display: grid; gap: 8px; }
.lsl-sign-moods { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.lsl-sign-mood { display: grid; gap: 6px; padding: 6px; border: 2px solid var(--lsl-line); border-radius: 12px; background: #fff; font: inherit; font-size: 14px; font-weight: 700; color: var(--lsl-ink); cursor: pointer; text-align: center; }
.lsl-sign-mood img, .lsl-sign-mood-basic { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 8px; }
.lsl-sign-mood-basic { background: linear-gradient(#1b7f43 0 14%, #fff 14%); border: 1px solid var(--lsl-line); }
.lsl-sign-mood.is-on { border-color: var(--lsl-green); box-shadow: 0 0 0 3px var(--lsl-green-soft); }
.lsl-sign-side { position: sticky; top: 16px; }
@media (max-width: 760px) { .lsl-sign-side { position: static; } .lsl-sign-moods { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* 2026-10-21 리뷰 안내물: 쿠팡 스탠드 상품 */
.lsl-sign-prods { margin-top: 14px; padding: 12px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; }
.lsl-sign-prods .lsl-strong { margin: 0 0 8px; }
.lsl-sign-prod-list { display: grid; gap: 8px; margin-bottom: 6px; }
.lsl-sign-prod { display: grid; grid-template-columns: 64px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 12px; align-items: center; padding: 8px; border: 1px solid var(--lsl-line); border-radius: 10px; color: var(--lsl-ink); text-decoration: none; }
.lsl-sign-prod img, .lsl-sign-prod-ph { grid-row: 1 / 3; width: 64px; height: 64px; object-fit: contain; background: #f6f7f7; border-radius: 8px; display: grid; place-items: center; font-size: 24px; }
.lsl-sign-prod-t { font-size: 15px; font-weight: 700; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lsl-sign-prod-cta { font-size: 14px; font-weight: 800; color: var(--lsl-green); }
.lsl-sign-prod:hover { border-color: var(--lsl-green); }
/* 2026-10-21 리뷰 안내물: 글꼴 고르기 */
.lsl-sign-fonts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.lsl-sign-font { display: grid; gap: 4px; justify-items: center; padding: 12px 6px 10px; border: 2px solid var(--lsl-line); border-radius: 12px; background: #fff; font: inherit; color: var(--lsl-ink); cursor: pointer; }
.lsl-sign-font-s { font-size: 22px; line-height: 1.3; white-space: nowrap; }
.lsl-sign-font-n { font-size: 13px; color: var(--lsl-muted, #6b7280); }
.lsl-sign-font.is-on { border-color: var(--lsl-green); box-shadow: 0 0 0 3px var(--lsl-green-soft); }
@media (max-width: 760px) { .lsl-sign-fonts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* 2026-10-21 리뷰 안내물: 스탠드 상품은 출력 단추 바로 아래, 큰 구매 단추 */
.lsl-sign-prods { border-color: #f3c99b; background: #fffaf3; }
.lsl-sign-prod { grid-template-columns: 84px minmax(0, 1fr); grid-template-rows: auto auto; background: #fff; }
.lsl-sign-prod img, .lsl-sign-prod-ph { width: 84px; height: 84px; }
.lsl-sign-prod-t small { display: block; margin-top: 2px; font-size: 13px; font-weight: 400; color: var(--lsl-muted, #6b7280); }
.lsl-sign-prod-cta { justify-self: start; margin-top: 6px; padding: 9px 14px; border-radius: 10px; background: #e4572e; color: #fff; font-size: 15px; }
.lsl-sign-prod:hover .lsl-sign-prod-cta { background: #c8431d; }
/* 2026-10-21 리뷰 안내물: 문구 직접 쓰기 */
.lsl-sign-custom { display: grid; gap: 8px; padding: 12px; border: 1.5px dashed var(--lsl-green); border-radius: 12px; background: #f6fbf8; }
.lsl-sign-custom[hidden], .lsl-sign-custom .lsl-error[hidden] { display: none; }
.lsl-sign-crow { position: relative; }
.lsl-sign-crow .lsl-sign-in { padding-right: 64px; }
.lsl-sign-count { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); font-size: 14px; color: var(--lsl-muted, #6b7280); }
.lsl-sign-prods[hidden], .lsl-sign-prod[hidden] { display: none; }
.lsl-sign .lsl-sign-in[hidden] { display: none; }
/* 2026-10-21 셀프 도구 첫 화면: 묶음을 펼쳐 도구를 바로 + 도구 찾기 */
.lsl-tool-find { margin: 18px 0 8px; }
.lsl-tool-find .lsl-input { width: 100%; min-height: 52px; padding: 12px 16px 12px 44px; border: 1.5px solid var(--lsl-line); border-radius: 14px; font-size: 17px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239aa6a1'%3E%3Cpath d='M10.5 4a6.5 6.5 0 0 1 5.2 10.4l4.4 4.4-1.4 1.4-4.4-4.4A6.5 6.5 0 1 1 10.5 4zm0 2a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9z'/%3E%3C/svg%3E") no-repeat 14px center / 20px; }
.lsl-tool-find .lsl-input:focus { border-color: var(--lsl-green); outline: none; box-shadow: 0 0 0 3px var(--lsl-green-soft); }
.lsl-tool-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.lsl-tool-chip { padding: 7px 14px; border: 1px solid var(--lsl-line); border-radius: 999px; background: #fff; font: inherit; font-size: 14px; font-weight: 700; color: var(--lsl-ink); cursor: pointer; }
.lsl-tool-chip.is-on, .lsl-tool-chip:hover { border-color: var(--lsl-green); color: var(--lsl-green); background: var(--lsl-green-soft); }
.lsl-tool-none { margin: 12px 0 0; }
.lsl-tool-sec { margin-top: 26px; }
.lsl-tool-sec-h { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.lsl-tool-sec-h h2 { margin: 0; font-size: 19px; font-weight: 800; line-height: 1.3; }
.lsl-tool-sec-h p { margin: 2px 0 0; font-size: 14px; color: var(--lsl-muted, #6b7280); }
.lsl-tool-cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.lsl-tool-card a { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 16px 40px 16px 16px; border: 1px solid var(--lsl-line); border-radius: 14px; background: #fff; color: var(--lsl-ink); text-decoration: none; position: relative; }
.lsl-tool-card a::after { content: ""; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; border-right: 2px solid #9aa6a1; border-top: 2px solid #9aa6a1; transform: translateY(-50%) rotate(45deg); }
.lsl-tool-card a:hover { border-color: var(--lsl-green); box-shadow: 0 4px 14px rgba(27,127,67,.10); }
.lsl-tool-card strong { font-size: 16px; font-weight: 800; line-height: 1.35; }
.lsl-tool-card strong .lsl-tier-tag { margin-left: 6px; vertical-align: 2px; }
.lsl-tool-card span { font-size: 14px; line-height: 1.5; color: var(--lsl-muted, #6b7280); }
.lsl-tool-soon { margin: 8px 0 0; font-size: 14px; color: var(--lsl-muted, #6b7280); }
.lsl-tool-soon em { font-style: normal; font-weight: 700; padding: 2px 8px; margin-right: 4px; border-radius: 999px; background: #f1f3f2; color: #6b7280; font-size: 12px; }
.lsl-tool-sec[hidden], .lsl-tool-card[hidden], .lsl-tool-soon[hidden], .lsl-tool-none[hidden] { display: none; }
@media (max-width: 900px) { .lsl-tool-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .lsl-tool-cards { grid-template-columns: 1fr; } }
/* 2026-10-21 리뷰 안내물: 스탠드 6개를 두 줄 카드로 (사진 위, 이름·이유, 구매 단추) */
.lsl-sign-prod-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lsl-sign-prod { display: flex; flex-direction: column; gap: 6px; padding: 10px; }
.lsl-sign-prod img, .lsl-sign-prod-ph { width: 100%; height: auto; aspect-ratio: 1; }
.lsl-sign-prod-t { font-size: 14px; -webkit-line-clamp: 3; }
.lsl-sign-prod-cta { margin-top: auto; justify-self: auto; text-align: center; font-size: 14px; padding: 9px 8px; }
.lsl-sign-prod-fit { display: none; align-self: flex-start; padding: 2px 8px; border-radius: 999px; background: #e4572e; color: #fff; font-size: 12px; font-weight: 800; }
.lsl-sign-prod.is-fit { order: -1; border-color: #e4572e; box-shadow: 0 0 0 2px rgba(228,87,46,.15); }
.lsl-sign-prod.is-fit .lsl-sign-prod-fit { display: inline-block; }
/* 2026-10-21 디자인 QR 안내판: 안내물 아래 넓게 */
.lsl-sign-plates { margin-top: 24px; }
.lsl-sign-plates .lsl-sign-prod-list { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 10px; }
@media (max-width: 900px) { .lsl-sign-plates .lsl-sign-prod-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* 2026-10-21 Chris: 묶음 제목이 도구 카드와 구분이 안 됨 → 제목 크게, 아래 구분선, 묶음 사이 여백 */
.lsl-tool-sec { margin-top: 40px; }
.lsl-tool-sec-h { padding-bottom: 12px; margin-bottom: 14px; border-bottom: 2px solid var(--lsl-ink, #111); }
.lsl-tool-sec-h h2 { font-size: 22px; font-weight: 900; letter-spacing: -0.02em; }
.lsl-tool-sec-h p { font-size: 15px; }
.lsl-tool-sec-h .lsl-group-ico { width: 48px; height: 48px; }
@media (max-width: 560px) { .lsl-tool-sec { margin-top: 32px; } .lsl-tool-sec-h h2 { font-size: 20px; } }
/* 2026-10-21 진단 페이지 아래 안내: 번호 카드 · 비교 카드 · 체크 목록 · 펼치는 질문 (신규 등록 페이지 스타일) */
.lsl-diag-about { max-width: 1040px; margin: 48px auto 0; padding: 8px 20px 40px; border-top: 0; }
.lsl-da-sec { margin-top: 44px; }
.lsl-da-sec:first-child { margin-top: 8px; }
.lsl-da-kicker { margin: 0 0 4px; font-size: 12px; font-weight: 800; letter-spacing: .12em; color: var(--lsl-green); }
.lsl-diag-about h2 { margin: 0 0 16px; font-size: clamp(22px, 3vw, 26px); font-weight: 900; line-height: 1.3; letter-spacing: -0.02em; word-break: keep-all; }
.lsl-da-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.lsl-da-step { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 18px; border: 1px solid var(--lsl-line); border-radius: 16px; background: #fff; }
.lsl-da-n { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: var(--lsl-green); color: #fff; font-weight: 900; font-size: 17px; }
.lsl-da-step strong { display: block; margin: 6px 0 6px; font-size: 18px; font-weight: 900; }
.lsl-da-step p { margin: 0; color: var(--lsl-muted); font-size: 15px; line-height: 1.65; word-break: keep-all; }
.lsl-da-plans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.lsl-da-plan { border: 1px solid var(--lsl-line); border-radius: 16px; background: #fff; overflow: hidden; }
.lsl-da-plan.is-main { border: 2px solid var(--lsl-green); box-shadow: 0 6px 20px rgba(27,127,67,.10); }
.lsl-da-plan-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 16px 18px; background: #f6f8f7; border-bottom: 1px solid var(--lsl-line); }
.lsl-da-plan.is-main .lsl-da-plan-h { background: var(--lsl-green-soft); }
.lsl-da-plan-h strong { font-size: 19px; font-weight: 900; }
.lsl-da-plan-h em { font-style: normal; padding: 3px 10px; border-radius: 999px; background: #fff; border: 1px solid var(--lsl-line); font-size: 13px; font-weight: 800; color: var(--lsl-muted); }
.lsl-da-plan.is-main .lsl-da-plan-h em { background: var(--lsl-green); border-color: var(--lsl-green); color: #fff; }
.lsl-da-plan dl { margin: 0; padding: 4px 18px 10px; }
.lsl-da-plan dl > div { display: grid; grid-template-columns: 72px 1fr; gap: 10px; padding: 12px 0; border-bottom: 1px dashed var(--lsl-line); }
.lsl-da-plan dl > div:last-child { border-bottom: 0; }
.lsl-da-plan dt { font-weight: 800; color: var(--lsl-muted); font-size: 14px; white-space: nowrap; }
.lsl-da-plan dd { margin: 0; font-size: 15px; line-height: 1.6; word-break: keep-all; }
.lsl-da-get { padding: 24px; border-radius: 18px; background: var(--lsl-green-soft); }
.lsl-da-checks { list-style: none; margin: 0 0 18px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 20px; }
.lsl-da-checks li { position: relative; padding-left: 30px; font-size: 16px; line-height: 1.6; word-break: keep-all; }
.lsl-da-checks li::before { content: ""; position: absolute; left: 0; top: 2px; width: 20px; height: 20px; border-radius: 50%; background: var(--lsl-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat center / 13px; }
.lsl-da-go { display: inline-flex; }
.lsl-da-faq { display: grid; gap: 10px; }
.lsl-da-q { border: 1px solid var(--lsl-line); border-radius: 14px; background: #fff; }
.lsl-da-q[open] { border-color: var(--lsl-green); }
.lsl-da-q summary { list-style: none; cursor: pointer; position: relative; padding: 16px 48px 16px 18px; font-size: 16px; font-weight: 800; }
.lsl-da-q summary::-webkit-details-marker { display: none; }
.lsl-da-q summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); font-size: 22px; font-weight: 400; color: var(--lsl-green); }
.lsl-da-q[open] summary::after { content: "−"; }
.lsl-da-q p { margin: 0; padding: 0 18px 16px; color: var(--lsl-muted); font-size: 15px; line-height: 1.7; word-break: keep-all; }
.lsl-da-more { margin: 14px 0 0; }
@media (max-width: 760px) {
  .lsl-da-steps, .lsl-da-plans, .lsl-da-checks { grid-template-columns: 1fr; }
  .lsl-da-sec { margin-top: 36px; }
  .lsl-da-get { padding: 20px 16px; }
}
.lsl-diag-about .lsl-da-steps, .lsl-diag-about .lsl-da-checks { padding-left: 0; line-height: inherit; }
.lsl-diag-about .lsl-da-checks { margin: 0 0 22px; }
/* 2026-10-21 결과 아래 준비물: 작은 카드 12개 (PC 6줄 · 휴대폰 3줄), 열 때마다 섞임 */
.lsl-pmini-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.lsl-pmini-head h3 { margin: 0; }
.lsl-pmini-grid { list-style: none; margin: 12px 0 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.lsl-pmini a { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 8px; border: 1px solid var(--lsl-line); border-radius: 12px; background: #fff; color: var(--lsl-ink); text-decoration: none; }
.lsl-pmini a:hover { border-color: var(--lsl-green); box-shadow: 0 4px 12px rgba(27,127,67,.10); }
.lsl-pmini-img { display: grid; place-items: center; aspect-ratio: 1; border-radius: 8px; background: #f6f7f7; overflow: hidden; font-size: 28px; }
.lsl-pmini-img img { width: 100%; height: 100%; object-fit: contain; }
.lsl-pmini-t { font-size: 13px; font-weight: 700; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em; }
.lsl-pmini-cta { margin-top: auto; font-size: 12px; font-weight: 800; color: var(--lsl-green); }
@media (max-width: 900px) { .lsl-pmini-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 560px) { .lsl-pmini-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .lsl-pmini a { padding: 6px; } }
.lsl-supplies .lsl-pmini-grid { padding: 0; margin-left: 0; margin-right: 0; }
/* 2026-10-21 신규 등록 띠: 고른 단추 표시 · 결과 문구를 눈에 띄게 · 끄기/지우기 줄 */
.lsl-reg-switch .lsl-btn.is-picked { box-shadow: 0 0 0 3px var(--lsl-green-soft), 0 0 0 5px var(--lsl-green); }
.lsl-reg-switch-ctl { margin: 10px 0 0; font-size: 14px; color: var(--lsl-muted); }
.lsl-reg-switch-msg { display: none; margin: 10px 0 0; padding: 10px 14px; border-radius: 10px; background: #fff; border: 1.5px solid var(--lsl-green); font-size: 15px; font-weight: 700; line-height: 1.5; }
.lsl-reg-switch-msg.is-on { display: block; }
.lsl-reg-switch-msg.is-bad { border-color: #e4572e; color: #b42318; }
/* 2026-10-21 지원사업 공고 · 정책자금 계산기: 현재 위치 + 서로 오가는 탭 */
.lsl-fnav { margin: 0 0 18px; }
.lsl-crumb { list-style: none; margin: 0 0 12px; padding: 0; display: flex; flex-wrap: wrap; gap: 4px; font-size: 14px; color: var(--lsl-muted, #6b7280); }
.lsl-crumb li + li::before { content: "›"; margin: 0 6px 0 2px; color: #b0b8b4; }
.lsl-crumb a { color: var(--lsl-muted, #6b7280); text-decoration: none; }
.lsl-crumb a:hover { color: var(--lsl-green); text-decoration: underline; }
.lsl-crumb [aria-current] { color: var(--lsl-ink); font-weight: 800; }
.lsl-ftabs { display: flex; gap: 6px; padding: 4px; border-radius: 14px; background: #f1f3f2; width: fit-content; max-width: 100%; }
.lsl-ftab { padding: 10px 18px; border-radius: 10px; font-weight: 800; font-size: 15px; color: var(--lsl-muted, #6b7280); text-decoration: none; white-space: nowrap; }
.lsl-ftab:hover { color: var(--lsl-ink); }
.lsl-ftab.is-on { background: #fff; color: var(--lsl-green); box-shadow: 0 1px 4px rgba(0,0,0,.08); }
.lsl-fnav-foot { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 0; }
@media (max-width: 560px) { .lsl-ftabs { width: 100%; } .lsl-ftab { flex: 1; text-align: center; padding: 10px 8px; } }
/* 2026-10-21 광고비 본전 계산기 아래: 광고 대신 직접 (베이직 안내) */
.lsl-be-compare { margin: 12px 0 0; padding: 12px 14px; border-radius: 12px; background: #fff7e6; border: 1px solid #f1d58a; font-size: 15px; line-height: 1.6; }
.lsl-be-plan { margin-top: 22px; padding: 24px; border: 2px solid var(--lsl-green); background: linear-gradient(180deg, var(--lsl-green-soft) 0, #fff 140px); }
.lsl-be-kicker { margin: 0 0 4px; font-size: 13px; font-weight: 800; color: var(--lsl-green); }
.lsl-be-plan h3 { margin: 0 0 10px; font-size: clamp(20px, 2.6vw, 24px); font-weight: 900; line-height: 1.35; word-break: keep-all; }
.lsl-be-lead { margin: 0 0 14px; line-height: 1.7; word-break: keep-all; }
.lsl-be-list { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.lsl-be-list li { position: relative; padding-left: 28px; line-height: 1.6; word-break: keep-all; }
.lsl-be-list li::before { content: "✓"; position: absolute; left: 0; top: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--lsl-green); color: #fff; font-size: 12px; font-weight: 900; display: grid; place-items: center; margin-top: 2px; }
.lsl-be-price { margin: 0 0 14px; padding: 14px 16px; border-radius: 12px; background: #fff; border: 1px solid var(--lsl-line); }
.lsl-be-price p { margin: 0; line-height: 1.6; }
.lsl-be-price p + p { margin-top: 4px; }
.lsl-be-price strong { font-size: 20px; font-weight: 900; color: var(--lsl-green); }
.lsl-be-price s { color: var(--lsl-muted, #6b7280); }
.lsl-be-tag { display: inline-block; padding: 2px 10px; border-radius: 999px; background: #e4572e; color: #fff; font-size: 12px; font-weight: 800; vertical-align: 3px; }
.lsl-be-plan .lsl-btn-row { margin: 0 0 10px; }
/* 2026-10-21 대행 계약 점검표 아래: 걸리는 항목 → 우리는 이렇게 */
.lsl-be-vs { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 6px; }
.lsl-be-vs li { display: grid; grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1.3fr); align-items: center; gap: 8px; padding: 10px 12px; border-radius: 10px; background: #fff; border: 1px solid var(--lsl-line); font-size: 15px; line-height: 1.5; word-break: keep-all; }
.lsl-be-vs-bad { color: var(--lsl-muted, #6b7280); text-decoration: line-through; text-decoration-color: #e4572e; }
.lsl-be-vs-arrow { color: var(--lsl-green); font-weight: 900; text-align: center; }
.lsl-be-vs-good { font-weight: 800; color: var(--lsl-ink); }
@media (max-width: 560px) { .lsl-be-vs li { grid-template-columns: 1fr; gap: 2px; } .lsl-be-vs-arrow { display: none; } }
/* 2026-10-21 '우리동네 찐사장에는 없어요' 상자: 로고 + NO 도장 + ✕ 항목 */
.lsl-be-nobox { position: relative; margin: 4px 0 18px; padding: 18px; border-radius: 16px; background: #fff; border: 2px solid #e4572e; overflow: hidden; }
.lsl-be-nohead { display: flex; align-items: center; gap: 16px; padding-bottom: 14px; margin-bottom: 12px; border-bottom: 2px dashed #f3c2b2; }
.lsl-be-logo { width: 150px; height: auto; flex: none; }
.lsl-be-notitle { display: grid; gap: 2px; min-width: 0; }
.lsl-be-notitle span { font-size: 15px; color: var(--lsl-muted, #6b7280); font-weight: 700; }
.lsl-be-notitle strong { font-size: clamp(22px, 3.2vw, 30px); font-weight: 900; line-height: 1.25; letter-spacing: -0.03em; word-break: keep-all; }
.lsl-be-notitle em { font-style: normal; color: #e4572e; }
.lsl-be-stamp { margin-left: auto; flex: none; width: 76px; height: 76px; border-radius: 50%; border: 4px solid #e4572e; color: #e4572e; display: grid; place-items: center; font-size: 26px; font-weight: 900; letter-spacing: .04em; transform: rotate(-14deg); box-shadow: inset 0 0 0 3px #fff, inset 0 0 0 5px #e4572e; opacity: .9; }
.lsl-be-no { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.lsl-be-no li { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; grid-template-areas: "x item badge" "x why why"; column-gap: 10px; row-gap: 2px; align-items: center; padding: 10px 12px; border-radius: 12px; background: #fff7f4; }
.lsl-be-x { grid-area: x; width: 26px; height: 26px; border-radius: 50%; background: #e4572e; color: #fff; display: grid; place-items: center; font-size: 14px; font-weight: 900; align-self: start; margin-top: 2px; }
.lsl-be-no strong { grid-area: item; font-size: 16px; font-weight: 800; word-break: keep-all; }
.lsl-be-badge { grid-area: badge; padding: 4px 12px; border-radius: 999px; background: var(--lsl-green); color: #fff; font-size: 14px; font-weight: 900; white-space: nowrap; }
.lsl-be-why { grid-area: why; font-size: 14px; color: var(--lsl-muted, #6b7280); word-break: keep-all; }
.lsl-be-yes { margin: 0 0 8px; font-size: 17px; font-weight: 900; color: var(--lsl-green); }
@media (max-width: 560px) {
  .lsl-be-nohead { flex-wrap: wrap; gap: 10px; }
  .lsl-be-logo { width: 120px; }
  .lsl-be-stamp { position: absolute; top: 12px; right: 12px; width: 58px; height: 58px; font-size: 19px; }
}
.lsl-be-plan ul.lsl-be-no, .lsl-be-plan ul.lsl-be-list { padding-left: 0; margin-left: 0; }
/* 2026-10-21 베타 테스터 모집: 사이트 전체 팝업 */
.lsl-bpop { position: fixed; right: 20px; bottom: 20px; z-index: 9990; width: min(380px, calc(100vw - 32px)); padding: 20px 20px 16px; border-radius: 18px; background: #fff; border: 2px solid var(--lsl-green, #1b7f43); box-shadow: 0 16px 40px rgba(0,0,0,.18); font-family: inherit; color: #1a1f1c; transform: translateY(20px); opacity: 0; transition: transform .25s, opacity .25s; }
.lsl-bpop.is-on { transform: none; opacity: 1; }
.lsl-bpop[hidden] { display: none; }
.lsl-bpop-x { position: absolute; top: 8px; right: 10px; width: 32px; height: 32px; border: 0; background: none; font-size: 24px; line-height: 1; color: #6b7280; cursor: pointer; }
.lsl-bpop-tag { display: inline-block; margin: 0 0 6px; padding: 3px 10px; border-radius: 999px; background: #fff3d6; color: #8a5a00; font-size: 13px; font-weight: 800; }
.lsl-bpop-t { margin: 0 0 8px; font-size: 21px; font-weight: 900; line-height: 1.3; letter-spacing: -0.02em; }
.lsl-bpop-t strong { color: var(--lsl-green, #1b7f43); }
.lsl-bpop-who { margin: 0 0 10px; padding-left: 18px; font-size: 14px; line-height: 1.65; }
.lsl-bpop-gift { margin: 0 0 12px; padding: 8px 10px; border-radius: 10px; background: var(--lsl-green-soft, #e8f5ee); font-size: 14px; line-height: 1.55; }
.lsl-bpop-go { display: flex; justify-content: center; width: 100%; }
.lsl-bpop-note { margin: 10px 0 0; font-size: 12px; color: #6b7280; line-height: 1.5; }
.lsl-bpop-note .lsl-link-btn { font-size: 12px; }
@media (max-width: 560px) { .lsl-bpop { right: 16px; left: 16px; bottom: 16px; width: auto; } }

/* 2026-10-21 베타 테스터 모집 페이지 */
.lsl-bt-hero { padding: 28px 24px; border-radius: 20px; background: linear-gradient(135deg, var(--lsl-green-soft, #e8f5ee), #fff); text-align: center; }
.lsl-bt-tag { display: inline-block; margin: 0 0 10px; padding: 4px 12px; border-radius: 999px; background: #fff3d6; color: #8a5a00; font-size: 14px; font-weight: 800; }
.lsl-bt-title { margin: 0 0 10px; font-size: clamp(26px, 4vw, 36px); font-weight: 900; line-height: 1.3; letter-spacing: -0.03em; }
.lsl-bt-title span { color: var(--lsl-green, #1b7f43); }
.lsl-bt-left { margin: 12px 0 14px; font-size: 15px; }
.lsl-bt-left strong { font-size: 20px; color: #e4572e; }
.lsl-bt-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.lsl-bt-box h3 { margin: 0 0 8px; font-size: 18px; font-weight: 900; }
.lsl-bt-box ul, .lsl-bt-box ol { margin: 0; padding-left: 20px; line-height: 1.75; font-size: 15px; word-break: keep-all; }
.lsl-bt-box.is-who { border-top: 4px solid #e4572e; }
.lsl-bt-box.is-gift { border-top: 4px solid var(--lsl-green, #1b7f43); }
.lsl-bt-box.is-do { border-top: 4px solid #2d5bd7; }
.lsl-bt-pick { background: #fffaf0; border: 1px solid #f3dfb5; }
.lsl-bt-pick p { margin: 0 0 6px; line-height: 1.7; word-break: keep-all; }
.lsl-bt-form { display: grid; gap: 6px; max-width: 720px; }
.lsl-bt-step { margin: 18px 0 4px; padding-bottom: 6px; border-bottom: 2px solid var(--lsl-ink, #111); font-size: 18px; font-weight: 900; }
.lsl-bt-q { margin: 10px 0 0; padding: 0; border: 0; }
.lsl-bt-q legend { margin-bottom: 8px; font-weight: 800; font-size: 16px; }
.lsl-bt-opts { display: flex; flex-wrap: wrap; gap: 8px; }
.lsl-bt-opt { position: relative; }
.lsl-bt-opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.lsl-bt-opt span { display: inline-block; padding: 9px 14px; border: 1.5px solid var(--lsl-line, #dfe5e2); border-radius: 999px; background: #fff; font-size: 15px; cursor: pointer; }
.lsl-bt-opt input:checked + span { border-color: var(--lsl-green, #1b7f43); background: var(--lsl-green-soft, #e8f5ee); color: var(--lsl-green, #1b7f43); font-weight: 800; }
.lsl-bt-opt input:focus-visible + span { outline: 3px solid var(--lsl-green-soft, #e8f5ee); outline-offset: 2px; }
@media (max-width: 760px) { .lsl-bt-grid { grid-template-columns: 1fr; } .lsl-bt-hero { padding: 22px 16px; } }
/* 2026-10-21 Chris: 베타 문구 정렬 · 가격 표시 */
.lsl-bt-hero .lsl-sub { max-width: 620px; margin-left: auto; margin-right: auto; text-wrap: balance; word-break: keep-all; }
.lsl-bt-box ul, .lsl-bt-box ol, .lsl-bt-pick p { text-wrap: pretty; }
.lsl-bpop-price { text-decoration: line-through; color: #6b7280; }
.lsl-bpop-gift strong { color: var(--lsl-green, #1b7f43); }
.lsl-bt-hero .lsl-sub strong { white-space: nowrap; }
