/* 아드웹백 키트 — A안(살림 해결 노트) 스타일
 * 원칙: rvc- 클래스가 붙은 요소와 .rvc-site 화면에만 적용한다.
 * 전환(awb_launched=1) 전에는 기존 방문자 화면이 바뀌지 않는다.
 */

:root {
	--rvc-bg: #F7F6F3;
	--rvc-card: #FFFFFF;
	--rvc-line: #E4E1DA;
	--rvc-ink: #1A2332;
	--rvc-ink2: #44505F;
	--rvc-mute: #5A6472;
	--rvc-mute2: #6B7280;
	--rvc-main: #16324F;
	--rvc-main-d: #0C1D2F;
	--rvc-tint: #E3E9F1;
	--rvc-point: #C2410C;
	--rvc-r: 10px;
}

/* ------------------------------------------------------------ 글 화면 */

.rvc-crumb {
	font-size: 13px;
	color: var(--rvc-mute2);
	margin-bottom: 10px;
}
.rvc-crumb a { color: var(--rvc-mute); text-decoration: none; }
.rvc-crumb a:hover { text-decoration: underline; }
.rvc-crumb span { margin: 0 6px; }

.rvc-checked {
	display: inline-block;
	margin-left: 10px;
	padding: 3px 9px;
	font-size: 13px;
	font-weight: 600;
	color: var(--rvc-main);
	background: #E3E9F1;
	border-radius: 5px;
}

.rvc-summary {
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-left: 4px solid var(--rvc-main);
	border-radius: var(--rvc-r);
	padding: 18px 22px;
	margin: 0 0 22px;
}
.rvc-summary-title {
	margin: 0 0 10px;
	font-size: 14px;
	font-weight: 700;
	color: var(--rvc-main);
}
.rvc-summary ul { margin: 0; padding-left: 20px; }
.rvc-summary li {
	font-size: 16px;
	line-height: 1.8;
	color: var(--rvc-ink);
	margin-bottom: 4px;
}

.rvc-ad { margin: 26px 0; text-align: center; }

.rvc-byline {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	padding: 18px 20px;
	margin: 26px 0;
}
.rvc-byline-mark {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #E3E9F1;
	color: var(--rvc-main);
	font-weight: 700;
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.rvc-byline-name { margin: 0 0 5px; font-size: 15px; font-weight: 700; }
.rvc-byline-desc { margin: 0; font-size: 14px; line-height: 1.7; color: var(--rvc-mute); }

.rvc-related { margin: 30px 0 0; }
.rvc-related h2 { font-size: 20px; margin: 0 0 14px; }
.rvc-related-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.rvc-card {
	display: block;
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	overflow: hidden;
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-card:hover { border-color: #C9C0B2; }
.rvc-card-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 92px;
}
.rvc-card-body { display: block; padding: 13px; }
.rvc-card-cat {
	display: block;
	font-size: 12px;
	color: var(--rvc-mute2);
	margin-bottom: 4px;
}
.rvc-card-title {
	display: block;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
}

.rvc-adjacent { display: flex; gap: 14px; margin: 20px 0 0; }
.rvc-adj {
	flex: 1 1 0;
	padding: 15px 18px;
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-adj-next { text-align: right; }
.rvc-adj-label { display: block; font-size: 12px; color: var(--rvc-mute2); margin-bottom: 5px; }
.rvc-adj-title { display: block; font-size: 15px; font-weight: 600; }

/* -------------------------------------------------------- 많이 본 글 */

.rvc-popular .rvc-rank { margin: 0; padding: 0; list-style: none; counter-reset: none; }
.rvc-rank li { border-bottom: 1px solid #F0EBE3; }
.rvc-rank li:last-child { border-bottom: 0; }
.rvc-rank a {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-rank a:hover { background: #FBF9F5; }
.rvc-rank-n {
	flex: 0 0 22px;
	font-size: 16px;
	font-weight: 700;
	color: var(--rvc-point);
}
.rvc-rank-t { flex: 1 1 auto; font-size: 16px; font-weight: 500; line-height: 1.45; }
.rvc-rank-c {
	flex: 0 0 auto;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 600;
	color: #FFFFFF;
	border-radius: 4px;
}

.rvc-home .rvc-popular {
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	overflow: hidden;
}

/* 테마가 숨겨 주지 않는 경우를 대비한 방어 정의 */
.rvc-home .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

/* ------------------------------------------------------------- 홈 */

.rvc-home { color: var(--rvc-ink); }

.rvc-hero {
	display: flex;
	gap: 40px;
	align-items: center;
	background: var(--rvc-tint);
	border: 1px solid #DCE6E2;
	border-radius: 12px;
	padding: 28px 30px;
	margin-bottom: 32px;
}
.rvc-hero-text { flex: 1 1 auto; }
.rvc-hero-text h2 {
	margin: 0 0 8px;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.5px;
}
.rvc-hero-text p { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: var(--rvc-ink2); }
.rvc-hero-form { display: flex; max-width: 460px; }
.rvc-hero-form input[type="search"] {
	flex: 1 1 auto;
	height: 46px;
	padding: 0 14px;
	font-size: 15px;
	border: 1px solid #CFC8BC;
	border-right: 0;
	border-radius: 8px 0 0 8px;
	background: #FFFFFF;
	color: var(--rvc-ink);
}
.rvc-hero-form button {
	height: 46px;
	padding: 0 20px;
	font-size: 15px;
	font-weight: 600;
	color: #FFFFFF;
	background: var(--rvc-main);
	border: 0;
	border-radius: 0 8px 8px 0;
	cursor: pointer;
}
.rvc-hero-form button:hover { background: var(--rvc-main-d); }
.rvc-hero-keys { flex: 0 0 320px; }
.rvc-hero-keys-title { margin: 0 0 10px; font-size: 13px; font-weight: 600; color: var(--rvc-ink2); }
.rvc-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.rvc-chips a {
	padding: 8px 14px;
	font-size: 14px;
	background: #FFFFFF;
	border: 1px solid #CFC8BC;
	border-radius: 999px;
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-chips a:hover { border-color: var(--rvc-main); }

.rvc-block { margin-bottom: 32px; }
.rvc-block-head {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin-bottom: 14px;
}
.rvc-block-head h2 { margin: 0; font-size: 20px; font-weight: 700; }
.rvc-block-head a { font-size: 14px; font-weight: 600; }
.rvc-block-note { font-size: 13px; color: var(--rvc-mute); }

.rvc-topics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}
.rvc-topic {
	display: block;
	padding: 20px;
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-topic:hover { border-color: #C9C0B2; }
.rvc-topic-ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 9px;
	margin-bottom: 12px;
}
.rvc-topic-name { display: block; font-size: 16px; font-weight: 700; margin-bottom: 5px; }
.rvc-topic-desc { display: block; font-size: 13px; line-height: 1.5; color: var(--rvc-mute); }

.rvc-recent { display: flex; flex-direction: column; gap: 12px; }
.rvc-recent-item {
	display: flex;
	gap: 16px;
	padding: 14px;
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: var(--rvc-r);
	color: var(--rvc-ink);
	text-decoration: none;
}
.rvc-recent-item:hover { border-color: #C9C0B2; }
.rvc-recent-thumb {
	flex: 0 0 132px;
	height: 88px;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
}
.rvc-recent-thumb span { font-size: 12px; font-weight: 600; color: #FFFFFF; }
.rvc-recent-body { flex: 1 1 auto; }
.rvc-recent-title { display: block; font-size: 17px; font-weight: 600; margin-bottom: 6px; }
.rvc-recent-ex { display: block; font-size: 14px; line-height: 1.55; color: var(--rvc-mute); }
.rvc-recent-date { display: block; font-size: 12px; color: var(--rvc-mute2); margin-top: 8px; }

/* -------------------------------------- 새 스킨 (.rvc-site 화면에만) */

body.rvc-site {
	background: var(--rvc-bg);
	font-family: 'IBM Plex Sans KR', -apple-system, BlinkMacSystemFont, sans-serif;
	color: var(--rvc-ink);
}
body.rvc-site .site-header { background: #FFFFFF; border-bottom: 1px solid var(--rvc-line); }
body.rvc-site .main-navigation { background: var(--rvc-main); }
body.rvc-site .main-navigation .main-nav ul li a { color: #FFFFFF; font-weight: 500; }
body.rvc-site .main-navigation .main-nav ul li.current-menu-item > a,
body.rvc-site .main-navigation .main-nav ul li:hover > a { background: var(--rvc-main-d); color: #FFFFFF; }
body.rvc-site .inside-article,
body.rvc-site .widget-area .widget {
	background: var(--rvc-card);
	border: 1px solid var(--rvc-line);
	border-radius: 12px;
}
body.rvc-site .widget-area .widget-title {
	font-size: 15px;
	font-weight: 700;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--rvc-main);
	margin-bottom: 12px;
}
body.rvc-site .entry-content > h2 {
	background: var(--rvc-main);
	color: #FFFFFF;
	font-size: 20px;
	padding: 11px 16px;
	border-radius: 8px;
	margin-top: 32px;
}
body.rvc-site .entry-content > h2 a { color: #FFFFFF; }
/* 홈·요약 카드·관련 글의 제목은 띠를 쓰지 않는다 */
body.rvc-site .rvc-home h2,
body.rvc-site .rvc-related h2,
body.rvc-site .rvc-summary h2 {
	background: transparent;
	color: var(--rvc-ink);
	padding: 0;
	border-radius: 0;
}
body.rvc-site .entry-content p { font-size: 16px; line-height: 1.85; color: #2A3533; }
body.rvc-site .entry-content table { border-collapse: collapse; width: 100%; }
body.rvc-site .entry-content th {
	background: var(--rvc-tint);
	border: 1px solid #D8E2DE;
	padding: 12px 14px;
	text-align: left;
}
body.rvc-site .entry-content td { border: 1px solid #E2DDD4; padding: 12px 14px; background: #FFFFFF; }
body.rvc-site .site-footer,
body.rvc-site .site-info { background: #12263C; color: #A9B8C9; }
body.rvc-site .site-info a { color: #D5DFE9; }

/* 홈 구성 페이지는 제목·메타를 숨기고 흰 박스를 벗긴다 */
body.rvc-site.home .entry-title,
body.rvc-site.home .entry-meta,
body.rvc-site.home .entry-header { display: none; }
body.rvc-site.home .inside-article,
body.rvc-site.home article.page {
	border: 0;
	background: transparent;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}
body.rvc-site .rvc-home { margin-top: 0; }

/* 글 대표 이미지는 내용과 무관한 옛 자동생성 이미지라 화면에서 숨긴다
   (파일과 og:image 는 그대로 두므로 공유·색인에는 영향이 없다) */
body.rvc-site.single .featured-image,
body.rvc-site.single .post-image,
body.rvc-site.single .inside-article > .post-image { display: none; }

/* 사이드바 '이 사이트는' 상자 */
body.rvc-site .rvc-side-about { font-size: 14px; line-height: 1.7; color: var(--rvc-ink2); }

/* ----------------------------------------------------------- 모바일 */

@media (max-width: 768px) {
	.rvc-hero { flex-direction: column; align-items: stretch; gap: 18px; padding: 20px; }
	.rvc-hero-keys { flex: 1 1 auto; }
	.rvc-hero-text h2 { font-size: 21px; }
	.rvc-hero-form { max-width: none; }
	.rvc-topics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.rvc-topic { padding: 14px; }
	.rvc-topic-ico { width: 34px; height: 34px; margin-bottom: 9px; }
	.rvc-topic-name { font-size: 15px; }
	.rvc-related-grid { grid-template-columns: 1fr; }
	.rvc-recent-thumb { flex-basis: 74px; height: 62px; }
	.rvc-recent-thumb span { display: none; }
	.rvc-recent-title { font-size: 15px; }
	.rvc-recent-ex { display: none; }
	.rvc-adjacent { flex-direction: column; }
	.rvc-adj-next { text-align: left; }
	.rvc-rank a { padding: 13px 14px; gap: 12px; }
	.rvc-rank-t { font-size: 15px; }
	.rvc-rank-c { display: none; }
	body.rvc-site .entry-content h2 { font-size: 18px; padding: 10px 14px; }
}

/* ----------------------------------------------------------- 꼬리말 */

body.rvc-site .site-footer .rvc-foot { text-align: left; }
.rvc-foot-name { margin: 0 0 4px; font-size: 16px; font-weight: 700; color: #FFFFFF; }
.rvc-foot-desc { margin: 0 0 12px; font-size: 13px; color: #A9B8C9; }
.rvc-foot-links { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 12px; }
.rvc-foot-links a { font-size: 13px; color: #D5DFE9; text-decoration: none; }
.rvc-foot-links a:hover { color: #FFFFFF; text-decoration: underline; }
.rvc-foot-copy { margin: 0; font-size: 12px; color: #8FA0B3; }

/* ------------------------------------------------------ 문의 페이지 */

.rvc-contact-box {
	background: var(--rvc-tint);
	border: 1px solid #DCE6E2;
	border-radius: 12px;
	padding: 24px 26px;
	margin: 22px 0 30px;
	text-align: center;
}
.rvc-contact-label {
	margin: 0 0 8px !important;
	font-size: 13px;
	font-weight: 600;
	color: var(--rvc-ink2);
}
.rvc-contact-mail { margin: 0 0 10px !important; }
.rvc-contact-mail a {
	font-size: 22px;
	font-weight: 700;
	color: var(--rvc-main);
	text-decoration: none;
	word-break: break-all;
}
.rvc-contact-mail a:hover { text-decoration: underline; }
.rvc-contact-note { margin: 0 !important; font-size: 13px; color: var(--rvc-mute); }

@media (max-width: 768px) {
	.rvc-contact-mail a { font-size: 18px; }
}

/* --------------------------------------------------------------- 로고 */

body.rvc-site .main-title a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	line-height: 1.2;
}
/* gap 을 못 쓰는 경우를 대비해 여백을 한 번 더 준다 */
.rvc-mark {
	display: inline-flex;
	flex: 0 0 auto;
	line-height: 0;
	margin-right: 10px;
	vertical-align: middle;
}
body.rvc-site .main-title a .rvc-mark { margin-right: 0; }
.rvc-mark svg { display: block; border-radius: 8px; }

@media (max-width: 768px) {
	.rvc-mark svg { width: 28px; height: 28px; }
	body.rvc-site .main-title a { gap: 8px; }
	.rvc-mark { margin-right: 8px; }
}

/* 지난 글용 안내 상자 — 살림 글과 구분되게 톤을 낮춘다 */
.rvc-byline-legacy { background: #F7F4EE; border-color: #E2DDD4; }
.rvc-byline-legacy .rvc-byline-mark { background: #E8E2D6; color: #6B7370; }
.rvc-byline-legacy .rvc-byline-name { color: #5A6360; }

/* ---------------------------------------------------- 제휴 고지·홈 */

.rvc-affil {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	background: #F2EFE9;
	border: 1px solid #E0DCD3;
	border-radius: 8px;
	padding: 12px 16px;
	margin: 0 0 18px;
}
.rvc-affil svg { flex: 0 0 auto; margin-top: 1px; }
.rvc-affil p { margin: 0; font-size: 13px; line-height: 1.6; color: var(--rvc-mute); }

.rvc-hero {
	background: var(--rvc-main);
	border: 0;
	border-bottom: 4px solid var(--rvc-point);
	border-radius: 12px;
	padding: 32px 30px 28px;
	margin-bottom: 32px;
	text-align: center;
	display: block;
}
body.rvc-site .rvc-hero h2,
.rvc-hero h2 {
	margin: 0 0 10px;
	font-size: 29px;
	font-weight: 700;
	color: #FFFFFF;
	letter-spacing: -0.6px;
	background: none;
	padding: 0;
	border: 0;
}
body.rvc-site .rvc-hero p,
.rvc-hero p { margin: 0 0 20px; font-size: 16px; color: #C6D3E0; }
.rvc-hero-form { display: flex; max-width: 480px; margin: 0 auto 18px; }
.rvc-hero-form input[type="search"] {
	flex: 1 1 auto;
	height: 48px;
	padding: 0 16px;
	font-size: 15px;
	border: 0;
	border-radius: 8px 0 0 8px;
	background: #FFFFFF;
	color: var(--rvc-ink);
}
.rvc-hero-form button {
	height: 48px;
	padding: 0 22px;
	font-size: 15px;
	font-weight: 600;
	color: #FFFFFF;
	background: var(--rvc-point);
	border: 0;
	border-radius: 0 8px 8px 0;
	cursor: pointer;
}
.rvc-hero-form button:hover { background: #9A330A; }
.rvc-hero .rvc-chips { justify-content: center; }
.rvc-hero .rvc-chips a {
	background: rgba(255,255,255,.12);
	border-color: rgba(255,255,255,.25);
	color: #FFFFFF;
}
.rvc-hero .rvc-chips a:hover { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.4); }

.rvc-topic-archive { background: #F2EFE9; border-style: dashed; }
.rvc-topic-archive .rvc-topic-name { color: var(--rvc-ink); }

.rvc-note {
	background: #FFF3EC;
	border: 1px solid #F3DECE;
	border-radius: 12px;
	padding: 22px 24px;
	margin-bottom: 32px;
}
.rvc-note h2 { margin: 0 0 10px; font-size: 17px; font-weight: 700; background: none; padding: 0; color: var(--rvc-ink); }
.rvc-note ul { margin: 0; padding-left: 20px; }
.rvc-note li { font-size: 14px; line-height: 1.9; color: var(--rvc-ink2); }

@media (max-width: 768px) {
	.rvc-hero { padding: 24px 18px 22px; }
	.rvc-hero h2 { font-size: 22px; }
	.rvc-hero p { font-size: 14px; }
}

/* 의약품 주의 상자 */
.rvc-ymyl {
	background: #FFF8E8;
	border: 1px solid #F0DFB8;
	border-left: 4px solid #C08A2E;
	border-radius: 8px;
	padding: 16px 20px;
	margin: 26px 0;
}
.rvc-ymyl p { margin: 0 0 6px; font-size: 14px; line-height: 1.7; color: #5A4A28; }
.rvc-ymyl p:last-child { margin-bottom: 0; }
.rvc-ymyl strong { color: #7A5A18; }
