/* Editorial release layer. Load after the preserved hELLO/native editor CSS.
   Scope: body.eg-editorial only. Authored empty paragraphs are never resized,
   inserted, hidden, or collapsed here. Inline article formatting stays intact. */
body.eg-editorial {
  --eg-bg: #fff;
  --eg-surface: #fff;
  --eg-text: #444;
  --eg-ink: #111;
  --eg-muted: #777;
  --eg-line: #e9e7e2;
  --eg-gold: #b49a75;
  --eg-gold-ink: #917451;
  --eg-gold-pale: #f6f3ee;
  --eg-gold-line: #e5ddd0;
  margin: 0;
  background: #fff !important;
  color: #222;
  color-scheme: light;
  font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-wrap: anywhere;
}
body.eg-editorial #index,
body.eg-editorial #main {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff;
  word-break: normal;
}
body.eg-editorial #sidebar,
body.eg-editorial #toolbar,
body.eg-editorial #top,
body.eg-editorial #bottom,
body.eg-editorial #mask,
body.eg-editorial #loader,
body.eg-editorial #popup,
body.eg-editorial .eg-masthead,
body.eg-editorial .eg-categories { display: none !important; }
body.eg-editorial #indicator { z-index: 60; pointer-events: none; }
body.eg-editorial #indicator .bar { background: #a58a64; }
body.eg-editorial a:focus-visible,
body.eg-editorial button:focus-visible,
body.eg-editorial input:focus-visible {
  outline: 2px solid #947853;
  outline-offset: 4px;
}

/* Shared navigation replaces the hidden hELLO sidebar and toolbars. */
body.eg-editorial .eg-site-header {
  position: relative;
  z-index: 40;
  width: 100%;
  min-height: 86px;
  padding: 18px 4.3%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  box-sizing: border-box;
  border-bottom: 1px solid #efede9;
  background: #fff;
  color: #161616;
}
body.eg-editorial .eg-site-header .wordmark {
  flex: none;
  color: inherit;
  font-size: 27px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.055em;
  text-decoration: none;
}
body.eg-editorial .eg-site-header .wordmark span { display: none; }
body.eg-editorial .eg-site-header .main-nav {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 5px;
  border-radius: 30px;
  background: #f4f3ef;
  color: #222;
}
body.eg-editorial .eg-site-header .main-nav a {
  display: block;
  padding: 10px 17px;
  border-radius: 24px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}
body.eg-editorial .eg-site-header .main-nav :is(.selected,[aria-current="page"]) { background: #111; color: #fff; }
body.eg-editorial .eg-search { display: flex; align-items: center; gap: 8px; max-width: 230px; min-width: 0; }
body.eg-editorial .eg-search input {
  width: 100%; min-width: 0; height: 38px; padding: 0 13px;
  border: 1px solid #dedbd5; border-radius: 20px;
  background: #fff; color: #222; font-size: 13px;
}
body.eg-editorial .eg-search button { flex: none; border: 0; background: transparent; color: inherit; font-size: 13px; cursor: pointer; }
body.eg-editorial:has(#post > #header.cover-article) .eg-site-header {
  position: absolute; inset: 0 0 auto;
  border: 0; background: transparent; color: #fff;
}
body.eg-editorial:has(#post > #header.cover-article) .eg-site-header .main-nav { margin-left: auto; background: rgb(255 255 255 / 94%); }
body.eg-editorial:has(#post > #header.cover-article) .eg-site-header .eg-search { display: none; }

/* Representative-image cover. Existing article title, metadata and admin links remain. */
body.eg-editorial #post { width: 100%; min-width: 0; max-width: none; margin: 0; padding: 0; }
body.eg-editorial #post > #header.cover-article {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  width: 100%; max-width: none;
  min-height: 500px; height: auto;
  margin: 0 !important;
  padding: 136px 40px 84px !important;
  overflow: hidden;
  border: 0; border-radius: 0;
  background: #36372f;
  box-shadow: none;
  box-sizing: border-box;
}
body.eg-editorial #post > #header.cover-article .cover-image {
  display: block; position: absolute; inset: 0; z-index: -2;
  width: 100%; height: 100%; max-width: none;
  object-fit: cover; object-position: center 42%;
  border: 0; border-radius: 0; margin: 0;
}
body.eg-editorial #post > #header.cover-article::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgb(15 19 17 / 48%), rgb(15 19 17 / 64%) 60%, rgb(15 19 17 / 74%));
}
body.eg-editorial .cover-content { position: relative; width: 100%; max-width: 940px; margin: 0 auto; text-align: center; color: #fff; }
body.eg-editorial .cover-category { display: block; margin: 0 0 20px; color: rgb(255 255 255 / 80%); font-size: 14px; font-weight: 500; line-height: 1.5; letter-spacing: .02em; text-decoration: none; }
body.eg-editorial .cover-category a { color: inherit; text-decoration: none; }
body.eg-editorial #post > #header.cover-article .cover-content h1 {
  max-width: none; margin: 0; padding: 0;
  color: #fff; font-size: 44px !important; font-weight: 700; line-height: 1.35 !important;
  letter-spacing: -.035em; word-break: keep-all; overflow-wrap: anywhere; text-wrap: balance;
  text-shadow: 0 2px 18px rgb(0 0 0 / 18%);
}
body.eg-editorial .cover-meta { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 32px; color: rgb(255 255 255 / 76%); font-size: 14px; line-height: 1.45; }
body.eg-editorial .cover-author-mark { flex: none; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgb(255 255 255 / 28%); border-radius: 50%; background: rgb(255 255 255 / 10%); color: #fff; font-size: 19px; font-weight: 600; }
body.eg-editorial .cover-author { display: flex; flex-direction: column; gap: 2px; text-align: left; }
body.eg-editorial .cover-author strong { color: #fff; font-size: 15px; font-weight: 600; }
body.eg-editorial .cover-author > span { color: rgb(255 255 255 / 68%); font-size: 12px; }
body.eg-editorial .cover-meta time { border-left: 1px solid rgb(255 255 255 / 28%); margin-left: 8px; padding-left: 20px; font-size: 13px; }
body.eg-editorial .cover-meta #admin { display: inline-flex; flex-wrap: wrap; gap: 8px; margin-left: 8px; color: rgb(255 255 255 / 80%); font-size: 12px; }
body.eg-editorial .cover-content .eg-admin { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 14px; color: rgb(255 255 255 / 76%); font-size: 12px; line-height: 1.5; }
body.eg-editorial .cover-content .eg-admin:empty { display: none; }
body.eg-editorial .cover-content .eg-admin a { color: inherit; text-underline-offset: 3px; }

/* The original #content is the reading grid; no extra article wrapper is required. */
body.eg-editorial #post > #content.eg-reading-grid {
  position: relative;
  display: grid;
  grid-template-columns: 200px minmax(0,790px) 200px;
  column-gap: 44px;
  align-items: start;
  width: calc(100% - 80px) !important;
  max-width: 1278px !important;
  margin: 0 auto !important;
  padding: 48px 0 0 !important;
  border: 0; border-radius: 0; background: #fff; box-shadow: none;
  box-sizing: border-box;
}
body.eg-editorial #post > #content.eg-reading-grid > #article { display: flex; flex-direction: column; grid-column: 2; grid-row: 1; width: 100%; max-width: none; min-width: 0; margin: 0; padding: 0; }
/* Keep the reading surface first; existing ad nodes remain active below it. */
body.eg-editorial #post > #content.eg-reading-grid > #article > .contents_style { order: 0; min-width: 0; }
body.eg-editorial #post > #content.eg-reading-grid > #article > .container_postbtn { order: 1; }
body.eg-editorial #post > #content.eg-reading-grid > #article > :is(ins.adsbygoogle,[data-tistory-react-app="NaverAd"],.revenue_unit_wrap) { order: 2; min-width: 0; }
body.eg-editorial #post > #content.eg-reading-grid > #article > .another_category { order: 3; }
body.eg-editorial #post > #content.eg-reading-grid > .eg-blog-notice { grid-column: 2; grid-row: 2; }
body.eg-editorial #post #article .article-body { width: 100%; min-width: 0; max-width: 100%; color: #444; font-family: inherit; font-size: 18px; line-height: 1.6; word-break: normal; overflow-wrap: anywhere; }
/* Native editor choices use absolute sizes; the approved article's inline choices win. */
body.eg-editorial #post #article .article-body p[data-ke-size="size14"] { font-size: 14px; }
body.eg-editorial #post #article .article-body p[data-ke-size="size16"] { font-size: 16px; }
body.eg-editorial #post #article .article-body p[data-ke-size="size18"] { font-size: 18px; }
body.eg-editorial #post #article .article-body h2[data-ke-size="size26"] { font-size: 26px; }
body.eg-editorial #post #article .article-body h3[data-ke-size="size23"] { font-size: 23px; }
body.eg-editorial #post #article .article-body h4[data-ke-size="size20"] { font-size: 20px; }
body.eg-editorial #post #article .article-body :is(strong,b) { font-weight: 700; }
body.eg-editorial #post #article .article-body :is(ul,ol) { padding-left: 24px; margin: 28px 0; }
body.eg-editorial #post #article .article-body li { margin: 10px 0; }
body.eg-editorial #post #article .article-body blockquote[data-ke-style="style2"] {
  box-sizing: border-box;
  padding: 20px 24px;
  border: 1px solid #ebe5db;
  border-left: 3px solid #b19a78;
  border-radius: 10px;
  margin: 28px 0;
  background: #f8f6f2;
  color: #444;
  font-weight: 500;
  line-height: 1.6;
  box-shadow: none;
}
@media (max-width: 600px) {
  body.eg-editorial #post #article .article-body blockquote[data-ke-style="style2"] { padding: 18px 20px; }
}
body.eg-editorial #post #article .article-body :is(h2,h3) { scroll-margin-top: 32px; }
body.eg-editorial #post #article .article-body h2 { color: #111; font-weight: 700; letter-spacing: -.025em; }
body.eg-editorial #post #article .article-body :is(.column-image,figure.imageblock,figure.imagegridblock) { max-width: 100%; }
body.eg-editorial #post #article .article-body .column-image img { max-width: 100%; height: auto; }
/* Existing responsive ad hosts can retain the previous skin's inline pixel width.
   Bound only ad wrappers; do not crop authored media or change ad heights. */
body.eg-editorial #post > #content.eg-reading-grid :is(.revenue_unit_wrap,.revenue_unit_item,.adsbygoogle) {
  min-width: 0;
  max-width: 100% !important;
  overflow: hidden;
}
body.eg-editorial #post > #content.eg-reading-grid [id^="aswift_"][id$="_host"] {
  max-width: 100% !important;
  overflow: hidden;
}

/* Adapter-owned table of contents. Native links remain usable without scroll JS. */
body.eg-editorial #scrollspy.eg-side-toc {
  position: relative !important;
  grid-column: 1; grid-row: 1 / span 2; align-self: stretch;
  inset: auto !important;
  width: 200px; min-width: 0; height: auto !important;
  margin: 0 !important; padding: var(--toc-start,0px) 0 0;
  z-index: 2;
}
body.eg-editorial .eg-side-toc .toc-sticky { position: sticky; top: 100px; max-height: calc(100vh - 120px); overflow: auto; scrollbar-width: thin; }
body.eg-editorial .eg-side-toc .toc-sticky > a { display: block; position: relative; padding: 0 0 0 10px; margin: 0 0 12px; border: 0; color: #a0a0a0; font-size: 13px; line-height: 1.65; text-decoration: none; word-break: keep-all; }
body.eg-editorial .eg-side-toc .toc-sticky > a:is(.active,[aria-current="location"],:hover) { color: #222; }
body.eg-editorial .eg-side-toc .toc-sticky > a:is(.active,[aria-current="location"])::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 2px; background: #222; }

/* Existing author, related posts, notices and comments stay visible. */
body.eg-editorial #post > #footer,
body.eg-editorial #entry > #replies {
  box-sizing: border-box; width: calc(100% - 80px); max-width: 1278px;
  margin: 0 auto; padding: 36px 244px 0;
  color: #444; background: #fff;
}
body.eg-editorial #entry > #replies { padding-top: 24px; padding-bottom: 72px; }
body.eg-editorial #post .eg-blog-notice { margin: 56px 0 0; padding: 26px 28px; border: 1px solid #e8e2d8; border-radius: 14px; background: #f7f4ee; color: #504a41; font-size: 14px; line-height: 1.8; }
body.eg-editorial #post .eg-blog-notice-title { margin: 0 0 16px; color: #4b4032; font-size: 16px; font-weight: 650; }
body.eg-editorial #post .eg-blog-notice-detail { color: #81786b; }
body.eg-editorial #post #author { margin-top: 32px; padding: 28px 0; border-color: #ece9e4; background: #fff; }
body.eg-editorial #post #author .blogger { color: #222; font-size: 18px; }
body.eg-editorial #post #author .desc { color: #888; font-size: 14px; }
body.eg-editorial #post #author .thumb { width: 64px; height: 64px; border-radius: 50%; }
body.eg-editorial #post #related { border: 0; border-radius: 12px; background: #f6f5f2; color: #555; padding: 20px; }
body.eg-editorial #post #related .tit { border-color: #e4e1da; }
body.eg-editorial #post #tags a { color: #81745f; }

/* Category/search indexes use the actual hELLO list markup and links. */
body.eg-editorial #main #global-header { display: block !important; width: calc(100% - 80px); max-width: 1220px; margin: 70px auto 36px; padding: 0; }
body.eg-editorial #main #global-header .info { display: block; min-height: 0; height: auto; padding: 0; border: 0; background: transparent; text-align: left; color: #111; }
body.eg-editorial #main #global-header .info::before { content: none; }
body.eg-editorial #main #global-header .tit { margin: 0; font-size: 42px; font-weight: 700; line-height: 1.35; letter-spacing: -.04em; color: #111; }
body.eg-editorial #main #global-header .desc { display: block; margin-top: 16px; font-size: 15px; font-weight: 400; color: #888; }
body.eg-editorial .eg-category-nav { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; width: calc(100% - 80px); max-width: 1220px; margin: 24px auto 36px; padding: 0; }
body.eg-editorial .eg-category-nav a { display: block; padding: 10px 16px; border: 1px solid #e6e3dd; border-radius: 24px; background: #fff; color: #69645d; font-size: 14px; line-height: 1.2; white-space: nowrap; text-decoration: none; }
body.eg-editorial .eg-category-nav a:is(.selected,[aria-current="page"],:hover) { border-color: #27241f; background: #27241f; color: #fff; }
body.eg-editorial #global-header .eg-category-nav { width: 100%; max-width: none; margin: 24px 0 0; }
body.eg-editorial #main > #list[data-list-style] { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 44px 30px; width: calc(100% - 80px); max-width: 1220px; margin: 0 auto; padding: 0 0 24px !important; }
body.eg-editorial #main > #list[data-list-style] > .post { position: relative; min-width: 0; width: auto; max-width: none; height: auto; margin: 0; padding: 0; border: 0; border-radius: 0; overflow: visible; background: #fff; box-shadow: none; transform: none !important; }
body.eg-editorial #main > #list[data-list-style] > .post > .link { position: absolute; inset: 0; z-index: 3; border-radius: 12px; }
body.eg-editorial #main > #list[data-list-style] > .post > .content { position: static; display: block; width: 100%; height: auto; min-height: 0; margin: 0; padding: 0; }
body.eg-editorial #main > #list[data-list-style] > .post .picture { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; margin: 0; overflow: hidden; border-radius: 12px; background: #f0ede7; }
body.eg-editorial #main > #list[data-list-style] > .post .picture :is(.img,.fallback) { position: absolute; inset: 0; display: block; width: 100%; height: 100%; margin: 0; padding: 0; background: #f0ede7; }
body.eg-editorial #main > #list[data-list-style] > .post .picture:has(.img) .fallback { display: none; }
body.eg-editorial #main > #list[data-list-style] > .post .picture .thumb { position: static; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: 0; transform: none; }
body.eg-editorial #main > #list[data-list-style] > .post .info { position: static; width: 100%; height: auto; margin: 0; padding: 22px 0 0; background: transparent; }
body.eg-editorial #main > #list[data-list-style] > .post .info .header { position: static; display: block; min-height: 0; margin: 0; padding: 0; border: 0; }
body.eg-editorial #main > #list[data-list-style] > .post .info .tit { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; max-height: none; margin: 0; color: #222; font-size: 22px; font-weight: 650; line-height: 1.5; letter-spacing: -.03em; word-break: keep-all; }
body.eg-editorial #main > #list[data-list-style] > .post .info .desc { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; color: #999; font-size: 12px; font-weight: 400; line-height: 1.6; }
body.eg-editorial #main > #list[data-list-style] > .post .summary { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin-top: 12px; color: #888; font-size: 14px; font-weight: 400; line-height: 1.7; }
body.eg-editorial #main > #list[data-list-style="empty"] { display: block; }
body.eg-editorial #main > #list #empty { width: 100%; padding: 48px 20px; background: #f6f5f2; color: #777; border-radius: 12px; }
body.eg-editorial #paging { margin: 56px auto 72px; padding: 0; }
body.eg-editorial #main > :is(#tag,#guestbook,#protected) { width: calc(100% - 48px); max-width: 1000px; margin: 40px auto 72px; }
body.eg-editorial .eg-site-footer { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; width: 100%; padding: 38px 4.3%; margin-top: 64px; border-top: 1px solid #eeece7; color: #888; font-size: 13px; }
body.eg-editorial .eg-site-footer strong { color: #222; font-size: 23px; }
body.eg-editorial .eg-site-footer a { color: inherit; text-decoration: none; }
body.eg-editorial .eg-site-footer .wordmark { flex: none; color: #222; font-size: 23px; font-weight: 750; line-height: 1.2; letter-spacing: -.05em; }
body.eg-editorial .eg-site-footer nav { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
body.eg-editorial .eg-site-footer small { margin-left: auto; color: #999; font-size: 11px; line-height: 1.5; }

@media (min-width: 1440px) {
  body.eg-editorial .cover-content { max-width: 980px; }
  body.eg-editorial #post > #header.cover-article .cover-content h1 { font-size: 48px !important; }
}
@media (max-width: 1439px) {
  body.eg-editorial #post > #content.eg-reading-grid { grid-template-columns: 200px minmax(0,790px); column-gap: 84px; max-width: 1074px !important; }
  body.eg-editorial #post > #footer,
  body.eg-editorial #entry > #replies { max-width: 1074px; padding-left: 284px; padding-right: 0; }
}
@media (max-width: 1023px) {
  body.eg-editorial #post > #header.cover-article { min-height: 430px; padding: 120px 36px 66px !important; }
  body.eg-editorial .cover-content { max-width: 760px; }
  body.eg-editorial #post > #header.cover-article .cover-content h1 { font-size: 36px !important; }
  body.eg-editorial #post > #content.eg-reading-grid { display: block; width: calc(100% - 48px) !important; max-width: 790px !important; padding-top: 36px !important; }
  body.eg-editorial #scrollspy.eg-side-toc { display: none !important; }
  body.eg-editorial #post > #footer,
  body.eg-editorial #entry > #replies { width: calc(100% - 48px); max-width: 790px; padding-left: 0; padding-right: 0; }
  body.eg-editorial .eg-site-header { min-height: 74px; gap: 14px; padding-inline: 24px; }
  body.eg-editorial .eg-search { max-width: 180px; }
  body.eg-editorial #main > #list[data-list-style] { grid-template-columns: repeat(2,minmax(0,1fr)); width: calc(100% - 48px); gap: 36px 24px; }
  body.eg-editorial #main #global-header,
  body.eg-editorial .eg-category-nav { width: calc(100% - 48px); }
}
@media (max-width: 680px) {
  body.eg-editorial .eg-site-header { min-height: 68px; padding: 16px 20px; flex-wrap: wrap; gap: 12px; }
  body.eg-editorial .eg-site-header .wordmark { font-size: 23px; }
  body.eg-editorial .eg-site-header .main-nav { margin-left: auto; padding: 4px; }
  body.eg-editorial .eg-site-header .main-nav a { font-size: 12px; padding: 8px 11px; }
  body.eg-editorial .eg-search { flex: 1 0 100%; width: 100%; max-width: none; }
  body.eg-editorial .eg-search input { height: 34px; }
  body.eg-editorial #post > #header.cover-article { min-height: 420px; padding: 112px 24px 46px !important; }
  body.eg-editorial #post > #header.cover-article .cover-image { object-position: center 40%; }
  body.eg-editorial #post > #header.cover-article .cover-content h1 { font-size: 29px !important; line-height: 1.45 !important; }
  body.eg-editorial .cover-category { font-size: 12px; margin-bottom: 18px; }
  body.eg-editorial .cover-meta { gap: 10px; margin-top: 26px; }
  body.eg-editorial .cover-author-mark { width: 34px; height: 34px; font-size: 17px; }
  body.eg-editorial .cover-author strong { font-size: 14px; }
  body.eg-editorial .cover-author > span { font-size: 11px; }
  body.eg-editorial .cover-meta time { font-size: 12px; margin-left: 4px; padding-left: 14px; }
  body.eg-editorial #post > #content.eg-reading-grid { width: calc(100% - 40px) !important; padding-top: 28px !important; }
  body.eg-editorial #post > #footer,
  body.eg-editorial #entry > #replies { width: calc(100% - 40px); }
  body.eg-editorial #post .eg-blog-notice { padding: 22px 20px; }
  body.eg-editorial #main #global-header { width: calc(100% - 40px); margin-top: 40px; margin-bottom: 24px; }
  body.eg-editorial #main #global-header .tit { font-size: 31px; }
  body.eg-editorial .eg-category-nav { width: calc(100% - 40px); flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; margin-bottom: 28px; scrollbar-width: thin; }
  body.eg-editorial .eg-category-nav a { flex: none; padding: 9px 13px; font-size: 13px; }
  body.eg-editorial #main > #list[data-list-style] { grid-template-columns: minmax(0,1fr); width: calc(100% - 40px); gap: 38px; }
  body.eg-editorial #main > #list[data-list-style] > .post .info { padding-top: 18px; }
  body.eg-editorial #main > #list[data-list-style] > .post .info .tit { font-size: 21px; }
  body.eg-editorial .eg-site-footer nav { flex-basis: 100%; }
  body.eg-editorial .eg-site-footer small { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  body.eg-editorial { scroll-behavior: auto; }
  body.eg-editorial #main > #list[data-list-style] > .post { transition: none; }
}

/* Scoped, reviewed summary/FAQ/TIP/table component rules follow. */
body.eg-editorial #post #article .article-body .core-summary {
  border: 0;
  border-radius: 12px;
  background: #f6f6f6;
  color: #444;
  box-shadow: none;
}
body.eg-editorial #post #article .article-body .core-summary > p:first-child {
  color: #222;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.6;
}
/* Adapted from finalized layout.css; general article editor styles remain untouched. */
body.eg-editorial #post #article .article-body .core-summary { padding: 30px !important; margin: 0 !important; }
body.eg-editorial #post #article .article-body .core-summary>p:first-child b { font-weight: 600; }
body.eg-editorial #post #article .article-body .core-summary ol { list-style-type: decimal-leading-zero !important; list-style-position: outside; margin: 18px 0 0; padding: 0 0 0 28px; }
body.eg-editorial #post #article .article-body .core-summary li { padding: 0 0 0 8px; margin: 0; color: #444; line-height: 1.65; }
body.eg-editorial #post #article .article-body .core-summary li+li { margin-top: 14px; }
body.eg-editorial #post #article .article-body .core-summary li::marker { font-size: 14px; font-weight: 650; color: #987a54; }
body.eg-editorial #post #article .article-body .core-summary li p { margin: 0; font-size: 18px; line-height: 1.65; word-break: keep-all; overflow-wrap: anywhere; }
body.eg-editorial #post #article .article-body .core-summary li strong { font-weight: 650; color: #202020; }
@media (max-width:600px) {
body.eg-editorial #post #article .article-body .core-summary { padding: 24px 20px !important; border-radius: 12px !important; }
}

/* Adapted from finalized components.css; general article editor styles remain untouched. */
body.eg-editorial #post #article .article-body details.faq-item { padding: 0 !important; margin: 0 0 14px !important; border: 1px solid #e5e2dc; border-radius: 16px; background: #faf9f7; overflow: hidden; }
body.eg-editorial #post #article .article-body details.faq-item:first-of-type { margin-top: 0 !important; }
body.eg-editorial #post #article .article-body details.faq-item[open] { border-color: #d7cbb9; background: #fff; }
body.eg-editorial #post #article .article-body details.faq-item>summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; padding: 24px 26px; color: #24221f; }
body.eg-editorial #post #article .article-body details.faq-item>summary::-webkit-details-marker { display: none; }
body.eg-editorial #post #article .article-body details.faq-item>summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #eeebe5; font-size: 23px; font-weight: 400; line-height: 1; color: #837059; }
body.eg-editorial #post #article .article-body details.faq-item[open]>summary::after { content: "−"; }
body.eg-editorial #post #article .article-body details.faq-item[open]>summary { background: #f5f2ec; border-bottom: 1px solid #e9e3d9; }
body.eg-editorial #post #article .article-body details.faq-item>summary:focus-visible { outline: 2px solid #9a7954; outline-offset: -4px; border-radius: 15px; }
body.eg-editorial #post #article .article-body .faq-question h3 { font-size: 19px !important; line-height: 1.55 !important; font-weight: 650 !important; letter-spacing: -.025em; word-break: keep-all; overflow-wrap: anywhere; flex: 1; min-width: 0; }
body.eg-editorial #post #article .article-body .faq-answer { padding: 0 26px 24px; }
body.eg-editorial #post #article .article-body .faq-answer p { color: #555; }
@media (hover:hover) {
body.eg-editorial #post #article .article-body details.faq-item:not([open])>summary:hover { background: #f3f0ea; }
}
body.eg-editorial #post #article .article-body h2:has(+details.faq-item) { margin-bottom: 24px !important; }
body.eg-editorial #post #article .article-body .tip-box { border: 1px solid #e8e2d9; border-radius: 14px; background: #f7f4ee; padding: 30px; margin: 28px 0; color: #39372f; }
body.eg-editorial #post #article .article-body .tip-box h2 { font-size: 23px !important; line-height: 1.5 !important; letter-spacing: -.025em; color: #3f392f !important; margin: 0 0 20px !important; }
body.eg-editorial #post #article .article-body .tip-box ol { margin: 0; padding-left: 24px; }
body.eg-editorial #post #article .article-body .tip-box li { padding-left: 6px; margin: 0; line-height: 1.7; }
body.eg-editorial #post #article .article-body .tip-box li+li { margin-top: 20px; }
body.eg-editorial #post #article .article-body .tip-box li::marker { font-size: 14px; font-weight: 700; color: #a08763; }
body.eg-editorial #post #article .article-body .tip-box li>strong,
body.eg-editorial #post #article .article-body .tip-box li>b { display: block; color: #302c26; font-weight: 650; margin-bottom: 5px; }
body.eg-editorial #post #article .article-body .tip-box li>p,
body.eg-editorial #post #article .article-body .tip-box li>span { font-size: 16px; line-height: 1.75; color: #686156; }
@media (max-width:600px) {
body.eg-editorial #post #article .article-body details.faq-item { border-radius: 14px; margin-bottom: 12px !important; }
body.eg-editorial #post #article .article-body details.faq-item>summary { padding: 20px 18px; gap: 12px; }
body.eg-editorial #post #article .article-body details.faq-item>summary::after { width: 28px; height: 28px; font-size: 21px; }
body.eg-editorial #post #article .article-body .faq-question h3 { font-size: 18px !important; }
body.eg-editorial #post #article .article-body .faq-answer { padding: 0 18px 20px; }
body.eg-editorial #post #article .article-body .tip-box { padding: 24px 20px; border-radius: 12px; }
body.eg-editorial #post #article .article-body .tip-box h2 { font-size: 21px !important; }
body.eg-editorial #post #article .article-body .tip-box li+li { margin-top: 18px; }
}

/* Adapted from finalized table.css; general article editor styles remain untouched. */
body.eg-editorial #post #article .article-body .table-scroll { display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; margin: 0; overflow-x: auto; border: 1px solid #e6e3de; border-radius: 12px; background: #fff; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #c8c3b9 #f4f2ee; -webkit-overflow-scrolling: touch; }
body.eg-editorial #post #article .article-body .table-scroll:focus-visible { outline: 2px solid #957952; outline-offset: 4px; }
body.eg-editorial #post #article .article-body .table-scroll > table { display: table; box-sizing: border-box; width: 100%; min-width: 0; max-width: none; height: auto !important; margin: 0; border: 0; border-collapse: separate; border-spacing: 0; table-layout: auto; background: #fff; color: #4b4843; font-size: 16px; line-height: 1.65; }
body.eg-editorial #post #article .article-body .table-scroll > table > :is(thead, tbody, tfoot) > tr > :is(th, td) { box-sizing: border-box; width: auto; height: auto !important; padding: 18px 20px; border: 0; border-bottom: 1px solid #ebe8e3; background: #fff; color: #4b4843; vertical-align: top; text-align: left; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; font-size: inherit; line-height: inherit; }
body.eg-editorial #post #article .article-body .table-scroll > table > :is(thead, tbody, tfoot) > tr > :is(th, td):first-child { width: auto; background: #faf9f6; color: #35312b; font-weight: 600; }
body.eg-editorial #post #article .article-body .table-scroll > table > thead > tr > :is(th, td),
body.eg-editorial #post #article .article-body .table-scroll > table:not(:has(> thead)) > tbody:first-of-type > tr:first-child > :is(th, td) { padding-top: 17px; padding-bottom: 17px; border-bottom-color: #dcd7ce; background: #f3f1ec; color: #2d2a25; font-weight: 700; vertical-align: middle; }
body.eg-editorial #post #article .article-body .table-scroll > table > tbody:last-of-type > tr:last-child > :is(th, td) { border-bottom: 0; }
body.eg-editorial #post #article .article-body .table-scroll > table > caption { padding: 16px 20px; color: #35312b; font-size: 15px; font-weight: 600; line-height: 1.5; text-align: left; caption-side: top; }
body.eg-editorial #post #article .article-body .table-scroll-help { display: none; margin: 0 0 10px; padding: 0; color: #77716a; font-size: 13px; line-height: 1.6; }
@media (max-width: 602px) {
body.eg-editorial #post #article .article-body .table-scroll { border-radius: 10px; }
body.eg-editorial #post #article .article-body .table-scroll > table { font-size: 14px; line-height: 1.65; }
body.eg-editorial #post #article .article-body .table-scroll > table > :is(thead, tbody, tfoot) > tr > :is(th, td) { padding: 15px 14px; }
body.eg-editorial #post #article .article-body .table-scroll-help { display: block; }
}

/* Only an adapter-confirmed three-column table uses the preview's 18/41/41 split.
   Older tables with other column counts or authored inline dimensions stay auto. */
body.eg-editorial #post #article .article-body .table-scroll[data-columns="3"] > table {
  width: 100%;
  min-width: 560px;
  table-layout: fixed;
}
body.eg-editorial #post #article .article-body .table-scroll[data-columns="3"] > table > :is(thead,tbody,tfoot) > tr > :is(th,td) { width: 41%; }
body.eg-editorial #post #article .article-body .table-scroll[data-columns="3"] > table > :is(thead,tbody,tfoot) > tr > :is(th,td):first-child { width: 18%; }
/* Adapter checks actual overflow, including authored wide desktop tables. */
body.eg-editorial #post #article .article-body .table-scroll-help { display: block; }
body.eg-editorial #post #article .article-body .table-scroll-help[hidden] { display: none !important; }

/* Native summary paragraphs keep their authored vertical flow. */
body.eg-editorial #post #article .article-body .core-summary > p.summary-point {
  position: relative;
  padding-left: 18px;
}
body.eg-editorial #post #article .article-body .core-summary > p.summary-point::before {
  content: "";
  position: absolute;
  left: 0;
  top: .45em;
  width: 2px;
  height: 1em;
  border-radius: 2px;
  background: #b19a78;
}
/* Native heading margins must not inflate the approved accordion hit area. */
body.eg-editorial #post #article .article-body .faq-question h3 { margin: 0 !important; }
@media (max-width: 600px) {
  body.eg-editorial #post #article .article-body h2 { font-size: 25px !important; }
  body.eg-editorial #post #article .article-body h3 { font-size: 20px !important; }
}

/* Neutralize only the archived fixed spacer height; keep authored empty P nodes. */
body.eg-editorial #post #article .contents_style p.eg-blank-line { height: auto; }

/* Ordinary section headings: a restrained divider separates the next topic.
   Component headings retain their own design; authored paragraphs are untouched. */
body.eg-editorial #post #article .article-body h2:not(:where(.core-summary *, .eg-summary *, .tip-box *, .faq-item *, .eg-faq *, blockquote *, table *)) {
  position: relative;
  padding: 24px 0 0 !important;
  border: 0;
  border-top: 1px solid #e7e2da;
  background: transparent;
  box-shadow: none;
}
body.eg-editorial #post #article .article-body h2:not(:where(.core-summary *, .eg-summary *, .tip-box *, .faq-item *, .eg-faq *, blockquote *, table *))::before {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  width: 38px;
  height: 3px;
  border-radius: 3px;
  background: #a58a64;
}
@media (max-width: 600px) {
  body.eg-editorial #post #article .article-body h2:not(:where(.core-summary *, .eg-summary *, .tip-box *, .faq-item *, .eg-faq *, blockquote *, table *)) { padding-top: 20px !important; }
}
