/* ==========================================================================
   오늘메뉴 요리백과 — 위키형 문서 스킨 (v0.7)
   톤: 크림 종이 + 먹색 + 올리브 + 테라코타. 얇은 선, 넉넉한 여백, 정돈된 표.
   ========================================================================== */
.tm-wiki { --w-olive: #3F4A36; --w-olive-2: #56634A; --w-rule: #CFC8B8; --w-soft: #EFEAE0; --w-link: #2F5D50; --w-link-new: #AD553C; }

.tm-wiki__container { max-width: 1120px; padding-top: 28px; }
.tm-crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; color: var(--tm-muted); margin-bottom: 18px; }
.tm-crumbs a { color: var(--tm-muted); text-decoration: none; }
.tm-crumbs a:hover { color: var(--tm-text); text-decoration: underline; }

/* 문서 머리 */
.tm-wiki__head { border-bottom: 2px solid var(--tm-ink); padding-bottom: 14px; margin-bottom: 26px; }
.tm-wiki__titlebar { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
body .tm-wiki__title { font-family: var(--tm-serif); font-weight: 600; font-size: clamp(32px, 4.4vw, 50px); line-height: 1.15; letter-spacing: -.035em; margin: 0; color: var(--tm-ink); }
.tm-wiki__tools { display: inline-flex; border: 1px solid var(--w-rule); background: var(--tm-paper); }
.tm-wiki__tool, .tm-wiki__tools .tm-save { appearance: none; border: 0; border-left: 1px solid var(--w-rule); background: transparent; color: var(--tm-text); font: 500 13px/1 var(--tm-sans); padding: 10px 14px; min-height: 38px; display: inline-flex; align-items: center; gap: 6px; text-decoration: none; cursor: pointer; }
.tm-wiki__tools > :first-child { border-left: 0; }
.tm-wiki__tool:hover, .tm-wiki__tools .tm-save:hover { background: var(--w-soft); }
.tm-wiki__tools .tm-save svg { width: 15px; height: 15px; }
.tm-wiki__stamp { text-align: right; font-size: 12px; color: var(--tm-muted); margin: 10px 0 0; font-variant-numeric: tabular-nums; }
.tm-wiki__catbox { margin-top: 14px; border: 1px solid var(--w-rule); background: var(--tm-paper); padding: 9px 14px; font-size: 13.5px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; }
.tm-wiki__catlabel { font-weight: 700; color: var(--tm-ink); padding-right: 12px; margin-right: 12px; border-right: 1px solid var(--w-rule); }
.tm-wiki__catbox a, .tm-wiki__catbox span:not(.tm-wiki__catlabel) { color: var(--w-link); text-decoration: none; }
.tm-wiki__catbox a + a::before, .tm-wiki__catbox a + span::before { content: "|"; color: var(--w-rule); margin: 0 10px; }
.tm-wiki__catbox span:not(.tm-wiki__catlabel) { color: var(--tm-muted); }
.tm-wiki__catbox a:hover { text-decoration: underline; }
.tm-wiki__notice { margin-top: 12px; border: 1px solid var(--w-rule); border-left: 4px solid var(--w-olive); background: var(--tm-paper); padding: 12px 16px; display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: baseline; }
.tm-wiki__notice strong { font-size: 13px; color: var(--w-olive); white-space: nowrap; }
.tm-wiki__notice p { margin: 0; font-size: 13.5px; line-height: 1.65; color: var(--tm-text); }

/* 본문 */
.tm-wiki__main { display: flow-root; font-size: 17px; line-height: 1.85; }
.tm-wikilink { color: var(--w-link); text-decoration: none; border-bottom: 1px solid rgba(47, 93, 80, .28); }
.tm-wikilink:hover { border-bottom-color: currentColor; }

/* 정보 상자 */
.tm-infobox { float: right; width: 330px; margin: 0 0 28px 36px; border: 1px solid var(--w-rule); background: var(--tm-paper); font-size: 14.5px; line-height: 1.55; }
.tm-infobox__head { margin: 0; background: var(--w-olive); color: #F7F3EA; text-align: center; font-family: var(--tm-serif); font-weight: 600; font-size: 19px; letter-spacing: -.02em; padding: 12px 14px; }
.tm-infobox__media { margin: 0; padding: 18px 18px 10px; text-align: center; border-bottom: 1px solid var(--w-rule); }
.tm-infobox__frame { display: inline-block; position: relative; box-shadow: 0 0 0 1px rgba(31, 36, 30, .16), 0 10px 22px -16px rgba(31, 36, 30, .5); }
.tm-infobox__frame img { display: block; width: 100%; max-width: 292px; height: auto; }
.tm-infobox__media figcaption { font-size: 11.5px; color: var(--tm-muted); margin-top: 10px; }
.tm-infobox__table { width: 100%; border-collapse: collapse; }
.tm-infobox__table th, .tm-infobox__table td { border-top: 1px solid var(--w-soft); padding: 9px 14px; vertical-align: top; text-align: left; }
.tm-infobox__table tr:first-child th, .tm-infobox__table tr:first-child td { border-top: 0; }
.tm-infobox__table th { width: 92px; background: #F6F2E9; color: var(--w-olive); font-weight: 700; font-size: 13px; white-space: nowrap; }
.tm-infobox__table td { color: var(--tm-text); }

/* 목차 */
.tm-toc { display: inline-block; min-width: 260px; max-width: 100%; border: 1px solid var(--w-rule); background: var(--tm-paper); padding: 16px 26px 16px 20px; margin: 0 0 34px; }
.tm-toc__title { margin: 0 0 8px; font-family: var(--tm-serif); font-weight: 600; font-size: 17px; color: var(--tm-ink); letter-spacing: -.01em; }
.tm-toc__list, .tm-toc__list ol { list-style: none; margin: 0; padding: 0; }
.tm-toc__list ol { padding-left: 20px; }
.tm-toc__list li { margin: 3px 0; font-size: 14.5px; line-height: 1.6; }
.tm-toc__list a { color: var(--w-link); text-decoration: none; }
.tm-toc__list a:hover { text-decoration: underline; }
.tm-toc__no { color: var(--tm-accent); font-variant-numeric: tabular-nums; margin-right: 2px; }

/* 섹션 제목 */
.tm-wiki__sec { margin: 0 0 40px; }
body .tm-wiki__h { display: flex; align-items: baseline; gap: 10px; margin: 0 0 16px; color: var(--tm-ink); font-family: var(--tm-serif); font-weight: 600; letter-spacing: -.025em; overflow: hidden; }
body .tm-wiki__h--2 { font-size: 27px; line-height: 1.3; padding-bottom: 10px; border-bottom: 1px solid var(--w-rule); }
body .tm-wiki__h--3 { font-size: 20px; margin-top: 26px; }
.tm-wiki__num { color: var(--tm-accent); text-decoration: none; font-variant-numeric: tabular-nums; }
.tm-wiki__num:hover { text-decoration: underline; }
.tm-wiki__htext { flex: 1; }
.tm-wiki__fold { appearance: none; border: 0; background: none; color: var(--tm-muted); font: 500 12px var(--tm-sans); cursor: pointer; padding: 4px 2px; letter-spacing: .02em; }
.tm-wiki__fold:hover { color: var(--tm-text); text-decoration: underline; }
.tm-wiki__sec.is-folded > .tm-wiki__body { display: none; }
.tm-wiki__body > p { margin: 0 0 14px; }
.tm-wiki__lead { font-size: 18px; }
.tm-wiki__small { font-size: 13.5px; color: var(--tm-muted); line-height: 1.7; }
.tm-wiki__own { display: inline-block; font-size: 12px; color: var(--w-olive); border: 1px solid var(--w-rule); padding: 0 6px; line-height: 1.7; margin-right: 4px; }
.tm-fn { font-size: 11px; line-height: 0; margin-left: 1px; }
.tm-fn a { color: var(--w-link); text-decoration: none; }

/* 인용(원문) */
.tm-wiki__quote { margin: 0 0 18px; padding: 18px 22px 14px; background: var(--tm-paper); border: 1px solid var(--w-rule); border-left: 4px solid var(--tm-accent); }
.tm-wiki__quote p { margin: 0 0 10px; font-family: var(--tm-serif); font-size: 17.5px; line-height: 1.9; color: var(--tm-ink); word-break: keep-all; }
.tm-wiki__quote cite { display: block; font-style: normal; font-size: 12px; color: var(--tm-muted); text-align: right; }

/* 표 */
.tm-wikitable { width: 100%; border-collapse: collapse; background: var(--tm-paper); border: 1px solid var(--w-rule); font-size: 15.5px; margin: 0 0 10px; }
.tm-wikitable th { background: #F1ECE1; color: var(--w-olive); font-weight: 700; font-size: 13px; letter-spacing: .02em; text-align: left; padding: 10px 14px; border-bottom: 1px solid var(--w-rule); }
.tm-wikitable td { padding: 10px 14px; border-top: 1px solid var(--w-soft); }
.tm-wikitable--ings td:nth-child(2), .tm-wikitable--ings th:nth-child(2) { width: 38%; }
.tm-wikitable__chk { width: 44px; text-align: center !important; }
.tm-wikitable input[type=checkbox] { width: 18px; height: 18px; accent-color: var(--w-olive); }
.tm-wikitable .tm-ing.is-checked td:not(.tm-wikitable__chk) { color: var(--tm-muted); text-decoration: line-through; }
.tm-wikitable--nut th, .tm-wikitable--nut td { text-align: center; }
.tm-wikitable--nut td { font-family: var(--tm-serif); font-size: 21px; color: var(--tm-ink); padding: 14px; }
.tm-wikitable--nut small { font-family: var(--tm-sans); font-size: 12px; color: var(--tm-muted); }

/* 조리 단계 */
.tm-wsteps { list-style: none; margin: 0; padding: 0; counter-reset: none; }
.tm-wstep { display: grid; grid-template-columns: 56px 1fr auto; gap: 18px; align-items: start; padding: 20px 0; border-top: 1px solid var(--w-soft); }
.tm-wstep:first-child { border-top: 0; padding-top: 4px; }
.tm-wstep__no { font-family: var(--tm-serif); font-weight: 600; font-size: 30px; line-height: 1; color: var(--tm-accent); padding-top: 4px; font-variant-numeric: tabular-nums; }
.tm-wstep__title { margin: 0 0 6px; font-size: 17px; }
.tm-wstep__text { margin: 0; font-size: 17px; line-height: 1.85; word-break: keep-all; }
.tm-wstep__media { margin: 0; width: 220px; text-align: center; }
.tm-wstep__frame { display: inline-block; box-shadow: 0 0 0 1px rgba(31, 36, 30, .16), 0 8px 18px -14px rgba(31, 36, 30, .5); background: var(--tm-paper); }
.tm-wstep__frame img { display: block; max-width: 220px; height: auto; }
.tm-wstep__media figcaption { font-size: 11px; color: var(--tm-muted); margin-top: 6px; }

/* 관련 항목 */
.tm-related__group + .tm-related__group { margin-top: 22px; }
.tm-related__label { font-size: 14px; color: var(--tm-muted); margin: 0 0 10px; }
.tm-related__list { list-style: none; margin: 0; padding: 0 1px 1px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.tm-related__list li { border: 1px solid var(--w-rule); margin: 0 -1px -1px 0; background: var(--tm-paper); }
.tm-related__list a { display: flex; align-items: center; gap: 12px; padding: 10px 12px; color: var(--tm-text); text-decoration: none; font-size: 15px; line-height: 1.4; }
.tm-related__list a:hover { background: var(--w-soft); }
.tm-related__thumb { flex: 0 0 52px; width: 52px; height: 52px; overflow: hidden; box-shadow: 0 0 0 1px rgba(31, 36, 30, .12); }
.tm-related__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* 각주·출처 */
.tm-footnotes { margin: 0 0 18px; padding-left: 0; list-style: none; counter-reset: fn; font-size: 14px; line-height: 1.7; }
.tm-footnotes li { counter-increment: fn; padding-left: 34px; position: relative; margin-bottom: 6px; }
.tm-footnotes li::before { content: "[" counter(fn) "]"; position: absolute; left: 0; color: var(--w-link); font-size: 13px; }
.tm-footnotes li:target { background: #FFF6D8; }
.tm-wiki .tm-source { font-size: 14px; border-top: 1px solid var(--w-soft); padding-top: 12px; }

/* 카드뉴스 섹션 안 리더 */
.tm-wiki__sec--cards .tm-reader--news { margin-top: 8px; }

/* 광고 슬롯 여백 */
.tm-wiki .tm-ad { clear: both; margin: 8px 0 40px; }

/* 반응형 */
@media (max-width: 1023px) {
	.tm-infobox { width: 290px; margin-left: 26px; }
}
@media (max-width: 767px) {
	.tm-wiki__container { padding-top: 16px; }
	.tm-wiki__titlebar { align-items: flex-start; }
	.tm-wiki__tools { width: 100%; }
	.tm-wiki__tool, .tm-wiki__tools .tm-save { flex: 1; justify-content: center; padding: 10px 6px; }
	.tm-wiki__stamp { text-align: left; }
	.tm-wiki__notice { grid-template-columns: 1fr; gap: 4px; }
	.tm-infobox { float: none; width: 100%; margin: 0 0 24px; }
	.tm-toc { display: block; }
	.tm-wiki__main { font-size: 16.5px; }
	body .tm-wiki__h--2 { font-size: 23px; }
	.tm-wstep { grid-template-columns: 38px 1fr; gap: 12px; }
	.tm-wstep__no { font-size: 24px; }
	.tm-wstep__media { grid-column: 2; width: auto; text-align: left; }
	.tm-wstep__frame img { max-width: 100%; }
	.tm-related__list { grid-template-columns: 1fr; }
	.tm-wikitable { font-size: 14.5px; }
	.tm-wikitable--nut td { font-size: 17px; padding: 10px 4px; }
	.tm-wikitable--nut th { padding: 8px 4px; font-size: 12px; }
}
@media print {
	.tm-wiki__tools, .tm-wiki__fold, .tm-wiki__sec--cards, .tm-related, .tm-crumbs { display: none !important; }
	.tm-infobox { width: 240px; }
}

/* ==========================================================================
   요리백과 포털 (홈)
   ========================================================================== */
.tm-portal { border-bottom: 1px solid #CFC8B8; background:
	linear-gradient(var(--tm-bg), var(--tm-bg)) padding-box; }
.tm-portal__inner { max-width: 920px; text-align: center; padding-top: 64px; padding-bottom: 44px; }
.tm-portal__kicker { margin: 0 0 18px; font-size: 11.5px; letter-spacing: .24em; color: var(--tm-accent); }
body .tm-portal__title { margin: 0; font-family: var(--tm-serif); font-weight: 600; font-size: clamp(38px, 6vw, 68px); letter-spacing: -.045em; line-height: 1.08; color: var(--tm-ink); }
.tm-portal__title span { color: #3F4A36; }
.tm-portal__sub { margin: 16px auto 30px; max-width: 560px; color: var(--tm-muted); font-size: 16px; line-height: 1.7; }
.tm-portal__search { display: flex; max-width: 680px; margin: 0 auto; border: 1.5px solid var(--tm-ink); background: var(--tm-paper); box-shadow: 0 18px 40px -30px rgba(31, 36, 30, .5); }
.tm-portal__search input { flex: 1; min-width: 0; border: 0; background: transparent; padding: 0 20px; height: 58px; font: 400 17px var(--tm-sans); color: var(--tm-text); outline: none; }
.tm-portal__search input::placeholder { color: #9A9C93; }
.tm-portal__search button { border: 0; background: #3F4A36; color: #F7F3EA; font: 600 15px var(--tm-sans); padding: 0 30px; cursor: pointer; letter-spacing: .04em; }
.tm-portal__search button:hover { background: #2E3727; }
.tm-portal__search:focus-within { outline: 2px solid var(--tm-accent); outline-offset: 3px; }
.tm-portal__stats { list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 0; font-size: 13.5px; color: var(--tm-muted); }
.tm-portal__stats li + li::before { content: ""; display: inline-block; width: 1px; height: 11px; background: #CFC8B8; margin: 0 16px; vertical-align: -1px; }
.tm-portal__stats b { color: var(--tm-ink); font-weight: 700; font-variant-numeric: tabular-nums; }

.tm-portal__body { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; padding-top: 44px; padding-bottom: 20px; max-width: 1200px; }

/* 상자 머리 */
.tm-pbox { margin-bottom: 40px; }
.tm-pbox__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 0 0 18px; padding-bottom: 10px; border-bottom: 2px solid var(--tm-ink); font-family: var(--tm-serif); font-weight: 600; font-size: 24px; letter-spacing: -.03em; color: var(--tm-ink); }
.tm-pbox__head h2 { margin: 0; font: inherit; color: inherit; }
.tm-pbox__head a, .tm-pbox__head time { font-family: var(--tm-sans); font-size: 13px; font-weight: 500; letter-spacing: 0; color: var(--tm-muted); text-decoration: none; }
.tm-pbox__head a:hover { color: var(--tm-text); text-decoration: underline; }
.tm-pbox__note { font-size: 12.5px; color: var(--tm-muted); margin: 14px 0 0; }

/* 오늘의 항목 */
.tm-today { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 32px; align-items: start; }
.tm-frame { display: block; position: relative; background: var(--tm-paper); box-shadow: 0 0 0 1px rgba(31, 36, 30, .16), 0 20px 40px -28px rgba(31, 36, 30, .6); }
.tm-frame::after { content: ""; position: absolute; inset: -9px; border: 1px solid rgba(31, 36, 30, .18); pointer-events: none; }
.tm-frame img { display: block; width: 100%; height: auto; }
.tm-today__media { display: block; margin: 9px; }
body .tm-today__title { margin: 4px 0 12px; font-family: var(--tm-serif); font-weight: 600; font-size: clamp(28px, 3vw, 36px); letter-spacing: -.035em; line-height: 1.2; }
.tm-today__title a { color: var(--tm-ink); text-decoration: none; }
.tm-today__title a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.tm-today__lead { margin: 0 0 18px; font-size: 16.5px; line-height: 1.8; color: var(--tm-text); }
.tm-today__facts { border-collapse: collapse; width: 100%; max-width: 380px; font-size: 14.5px; margin-bottom: 18px; border-top: 1px solid #CFC8B8; }
.tm-today__facts th, .tm-today__facts td { padding: 8px 0; border-bottom: 1px solid #E6E0D3; text-align: left; }
.tm-today__facts th { width: 72px; color: #3F4A36; font-weight: 700; font-size: 13px; }
.tm-today__facts small { color: var(--tm-muted); }
.tm-today__more { display: inline-flex; gap: 8px; align-items: center; border: 1px solid var(--tm-ink); padding: 11px 20px; color: var(--tm-ink); text-decoration: none; font-weight: 600; font-size: 14.5px; }
.tm-today__more:hover { background: var(--tm-ink); color: #F7F3EA; }
.tm-today__src { font-size: 11.5px; color: var(--tm-muted); margin: 14px 0 0; }

/* 분류별 둘러보기 */
.tm-catgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0 1px 1px 0; }
.tm-catgrid__cell { border: 1px solid #CFC8B8; margin: 0 -1px -1px 0; background: var(--tm-paper); padding: 16px 18px 14px; }
.tm-catgrid__name { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 10px; padding-bottom: 8px; border-bottom: 1px solid #E6E0D3; }
.tm-catgrid__name a { font-family: var(--tm-serif); font-weight: 600; font-size: 19px; color: var(--tm-ink); text-decoration: none; letter-spacing: -.02em; }
.tm-catgrid__name a:hover { color: var(--tm-accent); }
.tm-catgrid__name span { font-size: 12px; color: var(--tm-muted); font-variant-numeric: tabular-nums; }
.tm-catgrid__name span::after { content: "개"; }
.tm-catgrid ul { list-style: none; margin: 0; padding: 0; }
.tm-catgrid li { font-size: 14.5px; line-height: 1.5; padding: 3px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tm-catgrid li::before { content: "·"; color: var(--tm-accent); margin-right: 7px; }
.tm-catgrid li a { color: #2F5D50; text-decoration: none; }
.tm-catgrid li a:hover { text-decoration: underline; }

/* 새로 실린 레시피 */
.tm-plates { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 22px; }
.tm-plate a { display: block; text-decoration: none; color: var(--tm-text); }
.tm-plate__media { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: var(--tm-paper); box-shadow: 0 0 0 1px rgba(31, 36, 30, .14); margin-bottom: 12px; }
.tm-plate__media img { width: 100%; height: 100%; object-fit: contain; display: block; transition: opacity .25s; }
.tm-plate a:hover .tm-plate__media img { opacity: .88; }
.tm-plate__cat { display: block; font-size: 11.5px; letter-spacing: .1em; color: var(--tm-accent); margin-bottom: 4px; }
.tm-plate__title { display: block; font-family: var(--tm-serif); font-weight: 600; font-size: 16.5px; line-height: 1.4; letter-spacing: -.02em; color: var(--tm-ink); }
.tm-plate a:hover .tm-plate__title { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }

/* 사이드 상자 */
.tm-sbox { border: 1px solid #CFC8B8; background: var(--tm-paper); margin-bottom: 24px; }
.tm-sbox__head { margin: 0; padding: 12px 16px; background: #3F4A36; color: #F7F3EA; font-family: var(--tm-serif); font-weight: 600; font-size: 16px; letter-spacing: -.01em; }
.tm-sbox__note { margin: 12px 16px 0; font-size: 12.5px; color: var(--tm-muted); }
.tm-sbox__more { display: block; padding: 11px 16px; border-top: 1px solid #E6E0D3; font-size: 13.5px; color: #2F5D50; text-decoration: none; }
.tm-sbox__more:hover { background: #EFEAE0; }
.tm-recent { list-style: none; margin: 0; padding: 6px 0; counter-reset: r; }
.tm-recent li { display: flex; justify-content: space-between; gap: 12px; padding: 7px 16px; font-size: 14px; line-height: 1.45; }
.tm-recent li + li { border-top: 1px dashed #E6E0D3; }
.tm-recent a { color: #2F5D50; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tm-recent a:hover { text-decoration: underline; }
.tm-recent time { flex: 0 0 auto; font-size: 12px; color: var(--tm-muted); font-variant-numeric: tabular-nums; }
.tm-ingcloud { list-style: none; margin: 0; padding: 12px 16px 16px; display: flex; flex-wrap: wrap; gap: 6px; }
.tm-ingcloud a { display: inline-flex; gap: 5px; align-items: baseline; border: 1px solid #CFC8B8; padding: 4px 10px; font-size: 13.5px; color: var(--tm-text); text-decoration: none; background: var(--tm-bg); }
.tm-ingcloud a:hover { border-color: #3F4A36; color: #3F4A36; }
.tm-ingcloud small { font-size: 11px; color: var(--tm-muted); }
.tm-notes-mini { list-style: none; margin: 0; padding: 6px 0; }
.tm-notes-mini li { padding: 9px 16px; font-size: 14px; line-height: 1.5; }
.tm-notes-mini li + li { border-top: 1px dashed #E6E0D3; }
.tm-notes-mini span { display: block; font-size: 11px; color: var(--tm-accent); letter-spacing: .06em; margin-bottom: 2px; }
.tm-notes-mini a { color: var(--tm-text); text-decoration: none; }
.tm-notes-mini a:hover { text-decoration: underline; }

/* 전체 문서 */
.tm-portal__feed { padding-top: 24px; }
.tm-pbox__head--wide { margin-bottom: 8px; }

@media (max-width: 1023px) {
	.tm-portal__body { grid-template-columns: 1fr; }
	.tm-plates { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.tm-portal__inner { padding-top: 40px; padding-bottom: 30px; }
	.tm-portal__kicker { font-size: 10px; letter-spacing: .14em; }
	.tm-portal__sub { font-size: 14.5px; margin-bottom: 22px; }
	.tm-portal__search input { height: 52px; font-size: 16px; padding: 0 14px; }
	.tm-portal__search button { padding: 0 18px; }
	.tm-portal__stats { font-size: 12.5px; }
	.tm-portal__stats li + li::before { margin: 0 10px; }
	.tm-portal__body { padding-top: 30px; gap: 8px; }
	.tm-today { grid-template-columns: 1fr; gap: 22px; }
	.tm-today__media { max-width: 320px; margin: 9px auto; }
	.tm-catgrid { grid-template-columns: 1fr 1fr; }
	.tm-catgrid__cell { padding: 12px 12px 10px; }
	.tm-plates { grid-template-columns: 1fr 1fr; gap: 22px 14px; }
	.tm-pbox__head { font-size: 21px; }
}

/* v0.7.1 정보 상자 사진: 상자 폭에 꽉 차게(안쪽 흰 여백 없음) */
.tm-infobox__media { padding: 0; background: transparent; border-bottom: 1px solid var(--w-rule); }
.tm-infobox__frame { display: block; box-shadow: none; }
.tm-infobox__frame img { width: 100%; max-width: none; height: auto; }
.tm-infobox__media figcaption { margin: 0; padding: 7px 12px; background: #F1ECE1; border-top: 1px solid var(--w-rule); font-size: 11px; text-align: center; }

/* ==========================================================================
   v0.8 — 사진 갤러리 · 영양 비교 · 목록 문서
   ========================================================================== */
.tm-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin: 6px 0 12px; max-width: 640px; }
.tm-gallery figure { margin: 0; }
.tm-gallery__frame { display: block; box-shadow: 0 0 0 1px rgba(31, 36, 30, .16), 0 12px 24px -18px rgba(31, 36, 30, .55); }
.tm-gallery__frame img { display: block; width: 100%; height: auto; }
.tm-gallery figcaption { font-size: 12px; color: var(--tm-muted); margin-top: 8px; text-align: center; }

.tm-cmp th[scope=row] { width: 90px; background: #F6F2E9; color: #3F4A36; }
.tm-cmp td, .tm-cmp th { vertical-align: middle; }
.tm-cmp td small { color: var(--tm-muted); font-size: 11.5px; }
.tm-cmp__v { font-family: var(--tm-serif); font-weight: 600; color: var(--tm-ink); font-size: 17px; }
.tm-cmp__barcol { width: 38%; }
.tm-cmp__bar { position: relative; display: block; height: 10px; background: #ECE6DA; margin: 4px 0 6px; }
.tm-cmp__fill { position: absolute; left: 0; top: 0; bottom: 0; background: #AD553C; }
.tm-cmp__tick { position: absolute; top: -4px; bottom: -4px; width: 2px; margin-left: -1px; background: #1F241E; }
.tm-cmp__tick--cat { background: #3F4A36; width: 0; border-left: 2px dashed #3F4A36; }
.tm-cmp__rank { display: block; font-size: 12px; color: var(--tm-muted); }
.tm-cmp__legend { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.tm-cmp__key { display: inline-block; width: 18px; height: 8px; background: #AD553C; vertical-align: 0; }
.tm-cmp__key--cat { width: 0; height: 12px; background: none; border-left: 2px dashed #3F4A36; margin-left: 8px; }
.tm-cmp__key--all { width: 2px; height: 12px; background: #1F241E; margin-left: 8px; }

/* 목록 문서 */
.tm-index__kind { color: var(--tm-muted); font-weight: 400; margin-right: 8px; font-size: .62em; vertical-align: .18em; letter-spacing: 0; }
.tm-index__intro { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 32px; align-items: start; margin-bottom: 22px; }
.tm-index__desc p { margin: 0 0 10px; font-size: 16.5px; line-height: 1.8; }
.tm-index__avg { border: 1px solid var(--w-rule, #CFC8B8); background: var(--tm-paper); }
.tm-index__avghead { margin: 0; padding: 10px 14px; background: #3F4A36; color: #F7F3EA; font-family: var(--tm-serif); font-weight: 600; font-size: 15px; }
.tm-index__avghead small { font-family: var(--tm-sans); font-weight: 400; font-size: 11px; opacity: .8; margin-left: 6px; }
.tm-index__avg dl { margin: 0; display: grid; grid-template-columns: 1fr 1fr; }
.tm-index__avg dl div { padding: 10px 14px; border-top: 1px solid #E6E0D3; }
.tm-index__avg dl div:nth-child(odd) { border-right: 1px solid #E6E0D3; }
.tm-index__avg dt { font-size: 11.5px; color: var(--tm-muted); }
.tm-index__avg dd { margin: 2px 0 0; font-family: var(--tm-serif); font-weight: 600; font-size: 19px; color: var(--tm-ink); }
.tm-index__avg dd small { font-family: var(--tm-sans); font-weight: 400; font-size: 11px; color: var(--tm-muted); }
.tm-index__avgnote { margin: 0; padding: 7px 14px; border-top: 1px solid #E6E0D3; font-size: 11px; color: var(--tm-muted); }
.tm-index__terms { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 0; border: 1px solid #CFC8B8; background: var(--tm-paper); padding: 9px 14px; font-size: 14px; margin-bottom: 12px; }
.tm-index__terms a, .tm-index__terms strong { padding: 0 12px; border-left: 1px solid #E0D9CB; }
.tm-index__terms .tm-wiki__catlabel + a, .tm-index__terms .tm-wiki__catlabel + strong { border-left: 0; padding-left: 0; }
.tm-index__terms a { color: #2F5D50; text-decoration: none; }
.tm-index__terms a:hover { text-decoration: underline; }
.tm-index__terms strong { color: var(--tm-ink); }
.tm-index__terms small { color: var(--tm-muted); font-size: 11px; font-weight: 400; }
.tm-index__sort { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 0 0 16px; font-size: 13.5px; }
.tm-index__sort span { color: var(--tm-muted); margin-right: 6px; font-size: 12.5px; }
.tm-index__sort a { border: 1px solid #CFC8B8; padding: 6px 12px; color: var(--tm-text); text-decoration: none; background: var(--tm-paper); }
.tm-index__sort a:hover { border-color: #3F4A36; }
.tm-index__sort a[aria-current] { background: #3F4A36; border-color: #3F4A36; color: #F7F3EA; }

.tm-doclist td { vertical-align: middle; }
.tm-doclist__img { width: 76px; padding: 8px 10px !important; }
.tm-doclist__img img { display: block; width: 56px; height: 56px; object-fit: cover; box-shadow: 0 0 0 1px rgba(31, 36, 30, .12); }
.tm-doclist__t a { font-family: var(--tm-serif); font-weight: 600; font-size: 17px; color: var(--tm-ink); text-decoration: none; letter-spacing: -.02em; }
.tm-doclist__t a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.tm-doclist__t span { display: block; font-size: 12px; color: var(--tm-accent); margin-top: 2px; }
.tm-doclist__m { color: var(--tm-muted); font-size: 14px; white-space: nowrap; }
.tm-doclist__n { text-align: right !important; white-space: nowrap; font-variant-numeric: tabular-nums; font-size: 15px; }
.tm-doclist__n small { color: var(--tm-muted); font-size: 11px; }
.tm-doclist tbody tr:hover { background: #FAF7F0; }

@media (max-width: 767px) {
	.tm-gallery { gap: 12px; }
	.tm-cmp { font-size: 13.5px; }
	.tm-cmp th, .tm-cmp td { padding: 8px 8px; }
	.tm-cmp thead th:nth-child(3), .tm-cmp tbody td:nth-child(3) { display: none; }
	.tm-cmp__barcol { width: 34%; }
	.tm-index__intro { grid-template-columns: 1fr; gap: 16px; }
	.tm-doclist__m, .tm-doclist__opt { display: none; }
	.tm-doclist__img { width: 60px; padding: 6px !important; }
	.tm-doclist__img img { width: 46px; height: 46px; }
	.tm-doclist__t a { font-size: 15.5px; }
	.tm-doclist td, .tm-doclist th { padding: 8px 8px; }
	.tm-doclist__n { font-size: 13.5px; }
}

/* 홈: 영양으로 찾기 · 조리방법별 */
.tm-nutgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 1px 1px 0; }
.tm-nutgrid__cell { border: 1px solid #CFC8B8; margin: 0 -1px -1px 0; background: var(--tm-paper); padding: 16px 18px 12px; }
.tm-nutgrid__tag { margin: 0; font-size: 11px; letter-spacing: .14em; color: var(--tm-accent); }
.tm-nutgrid__name { margin: 2px 0 10px; padding-bottom: 8px; border-bottom: 1px solid #E6E0D3; }
.tm-nutgrid__name a { font-family: var(--tm-serif); font-weight: 600; font-size: 18px; color: var(--tm-ink); text-decoration: none; letter-spacing: -.02em; }
.tm-nutgrid__name a:hover { color: var(--tm-accent); }
.tm-nutgrid ol { margin: 0; padding: 0; list-style: none; counter-reset: n; }
.tm-nutgrid li { counter-increment: n; display: flex; gap: 10px; align-items: baseline; padding: 4px 0; font-size: 14.5px; }
.tm-nutgrid li::before { content: counter(n); font-family: var(--tm-serif); color: var(--tm-accent); width: 12px; flex: 0 0 auto; }
.tm-nutgrid li a { flex: 1; min-width: 0; color: #2F5D50; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tm-nutgrid li a:hover { text-decoration: underline; }
.tm-nutgrid li span { font-size: 12px; color: var(--tm-muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
.tm-methods { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.tm-methods a { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 16px 6px; border: 1px solid #CFC8B8; background: var(--tm-paper); text-decoration: none; color: var(--tm-ink); }
.tm-methods a:hover { border-color: #3F4A36; background: #3F4A36; color: #F7F3EA; }
.tm-methods a:hover small { color: #D9D3C6; }
.tm-methods span { font-family: var(--tm-serif); font-weight: 600; font-size: 17px; }
.tm-methods small { font-size: 11.5px; color: var(--tm-muted); }
@media (max-width: 767px) {
	.tm-nutgrid { grid-template-columns: 1fr; }
	.tm-methods { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* v0.8 비교 막대 보정 */
.tm-cmp__tick--cat { width: 9px; height: 9px; top: -7px; bottom: auto; margin-left: -4.5px; background: #3F4A36; border: 0; transform: rotate(45deg); }
.tm-cmp__legend { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 4px; font-size: 12.5px; color: var(--tm-muted); }
.tm-cmp__legend span { display: inline-flex; align-items: center; gap: 7px; }
.tm-cmp__key { display: inline-block; width: 18px; height: 8px; background: #AD553C; margin: 0; border: 0; }
.tm-cmp__key--cat { width: 8px; height: 8px; background: #3F4A36; transform: rotate(45deg); margin: 0 2px; }
.tm-cmp__key--all { width: 2px; height: 13px; background: #1F241E; margin: 0 3px; }
/* 원본 사진은 작은 썸네일에서도 자르지 않는다 */
.tm-doclist__img img, .tm-related__thumb img { object-fit: contain; background: #fff; }

.tm-wiki__quote--lead p { font-size: 18.5px; }
.tm-wiki__src { color: var(--tm-muted); font-size: 11px; }

/* 정보 상자(float) 옆의 상자형 요소는 겹치지 않게 */
.tm-wiki__quote, .tm-wikitable, .tm-gallery, .tm-cmp { display: flow-root; }
.tm-wikitable { display: table; }
.tm-wiki__body > .tm-wiki__quote, .tm-wiki__body > table { overflow: hidden; }

/* AI 참고 이미지 표시 */
.tm-ai-badge { display: inline-block; font: 700 10.5px/1 var(--tm-sans); letter-spacing: .04em; color: #fff; background: rgba(31,36,30,.78); padding: 4px 6px; border-radius: 3px; vertical-align: 1px; }
.tm-ai-badge--card { position: absolute; left: 8px; bottom: 8px; z-index: 2; }
.tm-plate__media { position: relative; }
.tm-card2__media { position: relative; }
.tm-ai-cap { font-size: 11px !important; color: var(--tm-muted); }

/* v0.10.1 헤더 로고 크기 */
.custom-logo-link img { max-height: 46px; height: 46px; width: auto; display: block; }
@media (max-width: 767px) { .custom-logo-link img { max-height: 34px; height: 34px; } }

/* 위키 도구: 최근 변경 */
.tm-topbar__tools { display: inline-flex; gap: 16px; }
@media (max-width: 767px) { .tm-topbar__tools { display: none; } }
.tm-rchg__day { margin: 0 0 26px; }
.tm-rchg__date { margin: 0 0 8px; font-size: 15px; font-weight: 700; color: var(--tm-ink); border-bottom: 2px solid var(--tm-ink); padding-bottom: 6px; }
.tm-rchg__table { width: 100%; border-collapse: collapse; font-size: 14.5px; background: var(--tm-paper); border: 1px solid var(--w-rule); }
.tm-rchg__table th { text-align: left; font-weight: 600; font-size: 12.5px; color: var(--tm-muted); background: rgba(63, 74, 54, .06); padding: 7px 12px; border-bottom: 1px solid var(--w-rule); }
.tm-rchg__table td { padding: 8px 12px; border-bottom: 1px solid var(--w-rule); vertical-align: top; }
.tm-rchg__table tr:last-child td { border-bottom: 0; }
.tm-rchg__time { width: 64px; color: var(--tm-muted); font-variant-numeric: tabular-nums; }
.tm-rchg__cat { color: var(--tm-muted); text-decoration: none; font-size: 13.5px; }
.tm-rchg__cat:hover { text-decoration: underline; }
.tm-rchg__src { color: var(--tm-muted); font-size: 13px; }
.tm-rchg__new { display: inline-block; margin-left: 4px; padding: 0 6px; font-size: 11px; line-height: 18px; border: 1px solid #3F4A36; color: #3F4A36; }
@media (max-width: 640px) {
	.tm-rchg__table th:nth-child(4), .tm-rchg__table td:nth-child(4) { display: none; }
	.tm-rchg__table td, .tm-rchg__table th { padding: 7px 8px; }
}

/* ==========================================================================
   키친노트 — 요리백과와 같은 위키 문서 모양 (v0.13)
   본문 글의 인라인 색·상자 스타일을 사이트 색으로 통일한다.
   ========================================================================== */
.tm-note-doc .tm-wiki__main { font-size: 17px; line-height: 1.85; }
.tm-note__body { word-break: keep-all; overflow-wrap: anywhere; }
.tm-note__body > p, .tm-note__body > div > p { margin: 0 0 14px; }
.tm-note__body b, .tm-note__body strong { color: var(--tm-ink); font-weight: 700; }
/* 예전 글의 빨강·파랑 강조 → 사이트 강조 하나로 */
.tm-note__body span[style*="color"], .tm-note__body [style*="color"] b { color: var(--tm-ink) !important; font-weight: 700 !important; background: linear-gradient(transparent 62%, rgba(173, 85, 60, .17) 62%); }
.tm-note__body p[style*="font-size"] { font-size: 14px !important; color: var(--tm-muted) !important; margin: 0 0 12px !important; }
.tm-note__body h3:not(.tm-wiki__h) { font-family: var(--tm-serif); font-weight: 600; font-size: 18px; color: var(--tm-ink) !important; letter-spacing: -.02em; margin: 22px 0 10px; }
.tm-note__body h4 { font-family: var(--tm-serif); font-weight: 600; font-size: 17px; color: var(--tm-ink); margin: 18px 0 8px; }
.tm-note__body ul, .tm-note__body ol { margin: 0 0 16px; padding-left: 22px; }
.tm-note__body li { margin: 4px 0; }
.tm-note__body li::marker { color: var(--tm-accent); }
.tm-note__body a { color: var(--w-link); text-decoration: none; border-bottom: 1px solid rgba(47, 93, 80, .28); }
.tm-note__body a:hover { border-bottom-color: currentColor; }
.tm-note__body .btn-a { display: inline-block; border: 1px solid var(--w-rule); background: var(--tm-paper); padding: 6px 14px; font-size: 14.5px; color: var(--w-link); }

/* 요약 상자(핵심 포인트 · 확인 사항 · 예전 '체크 포인트' 상자) */
.tm-note__body .keytake, .tm-note__body .precheck, .tm-note__body div[style*="border-left"] {
	display: flow-root; margin: 6px 0 22px !important; padding: 0 !important; background: var(--tm-paper) !important;
	border: 1px solid var(--w-rule) !important; border-left: 4px solid var(--w-olive) !important; border-radius: 0 !important;
}
.tm-note__body .keytake > h3, .tm-note__body .precheck > h3, .tm-note__body div[style*="border-left"] > h3 {
	margin: 0 !important; padding: 9px 16px; border-bottom: 1px solid var(--w-soft); background: #F6F2E9;
	font: 700 13px/1.4 var(--tm-sans) !important; letter-spacing: .04em; color: var(--w-olive) !important;
}
.tm-note__body div[style*="border-left"] > :not(h3) { margin-left: 16px; margin-right: 16px; }
.tm-note__body div[style*="border-left"] > ul { padding: 10px 0 10px 18px; }
.tm-note__body .point-item { display: grid; grid-template-columns: 22px 1fr; gap: 8px; padding: 9px 16px; border-top: 1px solid var(--w-soft); font-size: 16px; line-height: 1.7; }
.tm-note__body .keytake > h3 + .point-item { border-top: 0; }
.tm-note__body .point-item > p:empty { display: none; }
.tm-note__body .point-item .icon { color: var(--w-olive); font-weight: 700; text-align: center; }
.tm-note__body .precheck ul { list-style: none; margin: 0; padding: 4px 0; }
.tm-note__body .precheck li { display: flex; gap: 10px; align-items: baseline; padding: 7px 16px; margin: 0; border-top: 1px solid var(--w-soft); font-size: 16px; line-height: 1.65; }
.tm-note__body .precheck li:first-child { border-top: 0; }
.tm-note__body .badge-ok, .tm-note__body .badge-warn, .tm-note__body .badge-warning { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; font: 700 11px/1 var(--tm-sans); border: 1px solid; }
.tm-note__body .badge-ok { color: var(--w-olive); border-color: var(--w-olive); }
.tm-note__body .badge-ok::before { content: "✓"; }
.tm-note__body .badge-warn, .tm-note__body .badge-warning { color: var(--tm-accent); border-color: var(--tm-accent); }
.tm-note__body .badge-warn::before, .tm-note__body .badge-warning::before { content: "!"; }

/* 표(비교표 포함) → 위키 표 */
.tm-note__body .compare, .tm-note__body figure.wp-block-table { margin: 6px 0 22px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.tm-note__body table { width: 100%; border-collapse: collapse; background: var(--tm-paper); border: 1px solid var(--w-rule); font-size: 15px; line-height: 1.6; margin: 0 0 6px; }
.tm-note__body > table { margin-bottom: 22px; }
.tm-note__body th { background: #F1ECE1 !important; color: var(--w-olive) !important; font-weight: 700; font-size: 13px; text-align: left; padding: 9px 12px; border: 0; border-bottom: 1px solid var(--w-rule); white-space: nowrap; }
.tm-note__body td { padding: 9px 12px; border: 0; border-top: 1px solid var(--w-soft); vertical-align: top; background: transparent !important; color: var(--tm-text) !important; }
.tm-note__body table caption, .tm-note__body figure.wp-block-table figcaption { caption-side: bottom; text-align: left; font-size: 12.5px; color: var(--tm-muted); padding-top: 6px; }

/* 용어 풀이(dl) → 정보 상자 표 모양 */
.tm-note__body dl { margin: 6px 0 22px; border: 1px solid var(--w-rule); background: var(--tm-paper); display: grid; grid-template-columns: minmax(96px, max-content) 1fr; }
.tm-note__body dt { margin: 0; padding: 9px 14px; background: #F6F2E9; color: var(--w-olive); font-weight: 700; font-size: 13.5px; border-top: 1px solid var(--w-soft); }
.tm-note__body dd { margin: 0; padding: 9px 14px; border-top: 1px solid var(--w-soft); font-size: 15.5px; }
.tm-note__body dt:first-of-type, .tm-note__body dt:first-of-type + dd { border-top: 0; }

/* 자주 묻는 질문 */
.tm-note__sec--faq h3.q { font-family: var(--tm-serif); font-weight: 600; font-size: 18px; line-height: 1.5; color: var(--tm-ink); margin: 0; padding: 16px 0 6px; border-top: 1px solid var(--w-soft); letter-spacing: -.015em; }
.tm-note__sec--faq h3.q:first-child { border-top: 0; padding-top: 0; }
.tm-note__sec--faq .a { padding: 0 0 12px 16px; border-left: 2px solid var(--w-rule); margin-bottom: 4px; }
.tm-note__sec--faq .a p { margin: 0 0 8px; font-size: 16px; }

/* 본문 사진 · 그림 */
.tm-note__body figure.wp-block-image, .tm-note__body figure:not(.wp-block-table) { margin: 8px 0 24px; text-align: center; }
.tm-note__body figure img, .tm-note__body > p > img { max-width: 100% !important; height: auto !important; display: inline-block; margin: 0 auto !important; box-shadow: 0 0 0 1px rgba(31, 36, 30, .16), 0 10px 22px -16px rgba(31, 36, 30, .5); }
.tm-note__body figcaption { font-size: 12px; color: var(--tm-muted); margin-top: 8px; }

/* 관련 문서(제목만) · 이전·다음 */
.tm-related__list--text a { padding: 11px 14px; font-size: 15px; }
.tm-related__list--text a::before { content: "·"; color: var(--tm-accent); margin-right: 2px; }
.tm-postnav--wiki { clear: both; border-top: 2px solid var(--tm-ink); padding-top: 14px; margin: 10px 0 30px; }
.tm-postnav--wiki a { color: var(--w-link); }

/* 키친노트 목록 */
.tm-index__intro--one { grid-template-columns: 1fr; }
.tm-doclist--notes .tm-doclist__t { width: 42%; padding: 12px 14px; }
.tm-doclist__ex { font-size: 14px; color: var(--tm-muted); line-height: 1.6; }
.tm-doclist--notes .tm-doclist__n { font-size: 13.5px; color: var(--tm-muted); width: 110px; }

@media (max-width: 767px) {
	.tm-note-doc .tm-wiki__main { font-size: 16.5px; }
	.tm-note__body table { font-size: 14px; }
	.tm-note__body th, .tm-note__body td { padding: 8px 9px; }
	.tm-note__body dl { grid-template-columns: 1fr; }
	.tm-note__body dt { border-top: 1px solid var(--w-soft); }
	.tm-doclist--notes .tm-doclist__t { width: auto; }
	.tm-doclist--notes .tm-doclist__n { width: 86px; }
	.tm-postnav--wiki { grid-template-columns: 1fr; }
	.tm-postnav--wiki .tm-postnav__next { text-align: left; }
}
@media print {
	.tm-postnav--wiki { display: none !important; }
}

/* 재료 사전 (v0.13.1) */
.tm-ingindex__jump a { padding: 0 10px !important; }
.tm-ingtop { list-style: none; margin: 0; padding: 0 1px 1px 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.tm-ingtop li { border: 1px solid var(--w-rule); margin: 0 -1px -1px 0; background: var(--tm-paper); }
.tm-ingtop a { display: flex; align-items: baseline; gap: 8px; padding: 11px 14px; text-decoration: none; color: var(--tm-text); }
.tm-ingtop a:hover { background: var(--w-soft); }
.tm-ingtop__no { font-family: var(--tm-serif); color: var(--tm-accent); font-size: 14px; min-width: 18px; font-variant-numeric: tabular-nums; }
.tm-ingtop__name { flex: 1; min-width: 0; font-family: var(--tm-serif); font-weight: 600; font-size: 16.5px; color: var(--tm-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tm-ingtop small, .tm-inglist small, .tm-ingindex__cnt { color: var(--tm-muted); font-size: 12px; font-weight: 400; font-family: var(--tm-sans); font-variant-numeric: tabular-nums; }
.tm-inglist { list-style: none; margin: 0 0 18px; padding: 12px 16px; border: 1px solid var(--w-rule); background: var(--tm-paper); display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 15.5px; line-height: 1.7; }
.tm-inglist a { color: var(--w-link); text-decoration: none; }
.tm-inglist a:hover { text-decoration: underline; }
@media (max-width: 767px) {
	.tm-ingtop { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tm-inglist { gap: 4px 14px; font-size: 15px; }
}
.tm-doclist__na { color: #C9C4B8; }
.tm-doclist__n small { margin-left: 1px; }
/* 키친노트 본문 사진은 너무 크지 않게 */
.tm-note__body figure.wp-block-image img { max-width: min(100%, 520px) !important; }
