/*
  HOTCLIPFOLIO OVERHAUL — SHARED SHELL CSS
  =========================================
  Extracted VERBATIM (tokens, values, selectors) from the approved reference
  mockup ~/Downloads/index(5).html, with two categories of change only:

  1. SELECTOR WIDENING: the reference is a single-page JS demo where the
     1차 nav items are <button data-page="..."> elements toggled by script.
     The real site is a static multi-page build (no SPA JS) so those items
     are real <a href="..."> links in templates/partials/global-header.html.
     Selectors that said `.global-nav button` / `.mobile-nav button` /
     `.brand` (button variant) now also match `a` so the exact same visual
     result applies to a real link. No property values were changed.
  2. REMOVED (SPA-mockup-only, not part of the shared shell):
     `.notice` (demo explainer banner), `.page`/`.page.active` (SPA page
     show/hide toggle), `.rule-box` (mockup-only callout aside). None of
     these are used by the real multi-page templates.
  3. ADDED (new, needed for deliverable partials not present in the mockup):
     `.disclosure-source` / `.disclosure-note`, clearly marked below —
     styled to match the existing token system, does not touch any
     reference rule.

  One file, no @import, cache-friendly (long max-age + filename hash at
  deploy time is a build-step concern, not a CSS concern).
*/

:root{
  --ink:#151714;
  --muted:#6b7067;
  --line:#d8dbd2;
  --line-strong:#b9beb3;
  --soft:#eceee7;
  --paper:#ffffff;          /* surface (cards) */
  --bg:#f4f5f0;             /* page background (cream) */
  --accent:#e65722;         /* 브랜드 유지 (레퍼런스 #eb4b27 근사, 기존 자산 보존) */
  --accent-soft:#fff2ec;
  --company:#2546c7;        /* 종목명 식별색: 상태(상승/하락) 색과 분리 */
  --positive:#b42318;       /* 상승 = 빨강 (하드룰) */
  --negative:#175cd3;       /* 하락 = 파랑 (하드룰) */
  --shadow:0 18px 50px rgba(24,31,22,.08);
  --shadow-sm:0 6px 20px rgba(24,31,22,.06);
  --r-lg:22px;
  --r-md:15px;
  --r-sm:10px;
  --header-h:66px;
  --max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:#f3f4f6;color:var(--ink);
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;
  line-height:1.55;letter-spacing:-.01em;
  word-break:keep-all;overflow-wrap:anywhere;
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}

/* ---- global header ---- */
.global-header{
  position:sticky;top:0;z-index:1000;background:rgba(244,245,240,.94);
  border-bottom:1px solid var(--line);backdrop-filter:blur(16px);
}
.global-header__inner{
  height:var(--header-h);max-width:var(--max);margin:0 auto;padding:0 22px;
  display:grid;grid-template-columns:190px minmax(0,1fr) 224px;align-items:center;gap:18px;
}
.brand{
  font-size:20px;font-weight:900;letter-spacing:-.04em;white-space:nowrap;
  display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:0;cursor:pointer;
}
.brand-mark{width:22px;height:22px;background:var(--accent);border-radius:7px;display:inline-block}
.global-nav{height:100%;display:flex;align-items:stretch;gap:4px;min-width:0}
.global-nav a,.global-nav button{
  position:relative;border:0;background:transparent;padding:0 13px;cursor:pointer;
  white-space:nowrap;font-size:14px;font-weight:700;color:#3f4349;
  display:flex;align-items:center; /* widened: keeps <a> vertically centered like a stretched <button> */
}
.global-nav a:hover,.global-nav button:hover{color:var(--ink)}
.global-nav a.active,.global-nav button.active{color:var(--ink)}
.global-nav a.active:after,.global-nav button.active:after{
  content:"";position:absolute;left:13px;right:13px;bottom:-1px;height:3px;background:var(--accent);
}
.global-search{
  height:40px;border:1px solid var(--line-strong);background:var(--paper);display:flex;align-items:center;
  padding:0 14px;gap:8px;border-radius:12px;
}
.global-search input{border:0;outline:0;width:100%;min-width:0;font-size:13px;background:transparent}
.mobile-nav{display:none}

/* ---- page shell ---- */
.shell{max-width:var(--max);margin:0 auto;padding:0 22px 80px}

.breadcrumb{
  padding:13px 0 2px;color:var(--muted);font-size:12px;
  display:flex;gap:7px;align-items:center;flex-wrap:wrap;
}
.page-head{
  border-bottom:1px solid var(--line);
  padding:8px 0 20px;display:flex;justify-content:space-between;gap:24px;align-items:flex-end;
}
.eyebrow{font-size:12px;font-weight:800;color:var(--accent);letter-spacing:.08em}
h1{font-size:35px;line-height:1.18;letter-spacing:-.045em;margin:7px 0 8px}
.dek{margin:0;color:var(--muted);font-size:15px}
.head-meta{text-align:right;color:var(--muted);font-size:12px;white-space:nowrap}

.secondary-tabs{
  display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;
  background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:8px;margin:16px 0 4px;
}
.secondary-tabs::-webkit-scrollbar{display:none}
.secondary-tabs a,.secondary-tabs button{
  border:0;background:transparent;cursor:pointer;padding:9px 13px;border-radius:10px;
  white-space:nowrap;font-size:13px;font-weight:750;color:#666b72;
  display:inline-block;
}
/* 2차 탭 활성 = 색(주황 accent) 강조 (오너 지시 2026-07-24), pill 배경 */
.secondary-tabs a.active,.secondary-tabs button.active{color:var(--accent);font-weight:850;background:var(--accent-soft)}
/* 앵커 스크롤 탭(2026-08-01): 스크롤 중에도 탭 유지 + 섹션이 고정 헤더에 안 가리게 */
.secondary-tabs{position:sticky;top:52px;z-index:900}
.tab-panel{scroll-margin-top:118px}

.lead-grid{
  display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:34px;
  padding:32px 34px;margin:20px 0;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r-lg);box-shadow:var(--shadow);
}
.lead-story{padding-right:28px;border-right:1px solid var(--line)}
.tag{font-size:11px;font-weight:800;color:var(--accent);margin-bottom:8px}
.lead-title{font-size:28px;line-height:1.28;letter-spacing:-.04em;font-weight:850;margin-bottom:12px}
.lead-copy{font-size:15px;color:#4d5158;margin:0}
.fact-list{margin:0;padding:0;list-style:none}
.fact-list li{padding:11px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}
.fact-list li:first-child{padding-top:0}
.fact-list b{font-size:13px}
.fact-list span{font-size:13px;color:var(--muted);text-align:right}

/* 2026-08-08 오너 지시: 모든 페이지의 블록을 테두리 카드로 구분한다.
   기존 구분선(border-bottom) 방식 → 카드 방식. 전 페이지 공통(.section 전역). */
.section{
  padding:26px 24px;margin:18px 0;border:2px solid #c6cbd4;
  border-radius:var(--r-md);background:var(--paper);
  box-shadow:0 1px 4px rgba(20,24,40,.06);
}
.section-title{
  display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px
}
.section-title h2{font-size:21px;letter-spacing:-.035em;margin:0}
.section-title small{font-size:12px;color:var(--muted)}
.story-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.story{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:21px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.story:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--line-strong)}
.story .kicker{font-size:11px;color:var(--accent);font-weight:800}
.story h3{margin:7px 0 8px;font-size:18px;line-height:1.35;letter-spacing:-.03em}
.story p{margin:0;color:var(--muted);font-size:13px}

/* ---- ADDED (home vertical feeds 2026-07-29): 신규 주요 공시 / 정정공시
   stacked lists below 오늘의 미커버 현황. Real data only; one row per item,
   distinct from the 3-up .story-list cards above them. ---- */
.disclosure-feed{list-style:none;margin:0;padding:0}
.disclosure-feed li{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;
  padding:13px 0;border-bottom:1px solid var(--line);
}
.disclosure-feed li:first-child{padding-top:0}
.disclosure-feed li:last-child{border-bottom:0}
.disclosure-feed time{font-size:12px;color:var(--muted);white-space:nowrap;min-width:84px}
.disclosure-feed .df-name{font-size:14px;font-weight:750;min-width:118px}
.disclosure-feed .df-name a:hover{color:var(--accent);text-decoration:underline}
.disclosure-feed .df-title{font-size:14px;color:#2b2f36;flex:1 1 260px;min-width:0}
.disclosure-feed .df-summary{font-size:13px;color:var(--muted);flex:1 1 260px;min-width:0}
.df-empty{color:var(--muted);font-size:13px;margin:2px 0 0}
.disclosure-feed .df-facts{
  list-style:none;margin:2px 0 0;padding:0;flex-basis:100%;
}
.disclosure-feed .df-facts li{
  display:block;padding:1px 0 1px 96px;border:0;
  font-size:12.5px;color:var(--muted);
}
.disclosure-feed .df-facts li::before{content:"— ";color:var(--accent)}
@media (max-width:720px){.disclosure-feed .df-facts li{padding-left:0}}

.table-wrap{overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md)}
table{border-collapse:collapse;width:100%;min-width:760px}
caption{padding:11px 12px;text-align:left;font-size:12px;font-weight:750;color:var(--muted);background:var(--paper)}
th,td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}
tr:last-child td,tr:last-child th[scope="row"]{border-bottom:0}
th{background:var(--soft);font-size:12px;color:#4c5056}
.badge{display:inline-block;border:1px solid #b9bdc3;padding:3px 9px;font-size:11px;font-weight:750;border-radius:999px}
.badge.warn{border-color:#f0a987;color:#9d3b16;background:#fff7f3}
.badge.risk{border-color:#e5a8a3;color:#9d241b;background:#fff4f3}

.company-strip{
  display:grid;grid-template-columns:1.5fr repeat(4,1fr);
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.company-strip>div{padding:18px 18px;border-right:1px solid var(--line)}
.company-strip>div:last-child{border-right:0}
.company-name strong{display:block;font-size:24px;letter-spacing:-.04em;color:var(--company)}
.company-heading-name,.company-link{color:var(--company);font-weight:850}
.company-link:hover,.company-link:focus-visible{text-decoration:underline;text-underline-offset:3px}
.company-name span,.metric span{font-size:12px;color:var(--muted)}
.metric b{font-size:18px;display:block;margin-top:4px}
.metric b.positive{color:var(--positive)}
.metric b.negative{color:var(--negative)}

.timeline{position:relative;margin-left:4px;padding-left:27px}
.timeline:before{content:"";position:absolute;left:5px;top:5px;bottom:6px;width:1px;background:#c9ccd1}
.timeline-item{position:relative;padding:0 0 24px}
.timeline-item:before{
  content:"";position:absolute;left:-26px;top:5px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--accent)
}
.timeline-item time{font-size:12px;color:var(--muted)}
.timeline-item h3{font-size:17px;margin:4px 0}
.timeline-item p{font-size:13px;color:var(--muted);margin:0}

.compare{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.compare-row{display:grid;grid-template-columns:180px 1fr 1fr;border-bottom:1px solid var(--line)}
.compare-row:last-child{border-bottom:0}
.compare-row>div{padding:14px 16px;border-right:1px solid var(--line);font-size:13px}
.compare-row>div:last-child{border-right:0}
.compare-head{background:var(--soft);font-weight:800}

/* Real AdSense in-article unit (partials/ad-slot.html). Kept visually
   distinct from editorial content and nav: a bordered off-white block with a
   muted bilingual label above the <ins>, so it never reads as organic content
   or a menu. Not first-screen-filling — spliced below content by callers. */
.ad-slot{
  display:block;border:1px solid var(--line);background:var(--paper);border-radius:var(--r-md);
  padding:10px 14px 14px;margin:30px 0;
}
.ad-slot__label{
  display:block;font-size:11px;letter-spacing:.1em;color:#9a9ea5;
  text-align:center;margin-bottom:8px;text-transform:uppercase;
}
.ad-slot .adsbygoogle{display:block;min-height:92px}
/* CLS 예약 — 광고가 로드되며 아래 본문을 밀어내지 않도록 컨테이너 높이를 미리 잡는다.
   in-article fluid 는 높이가 가변이라 실측 하한(모바일 250 / 데스크톱 280)만 예약한다. */
.ad-slot{min-height:250px}
@media(min-width:768px){.ad-slot{min-height:280px}}
/* 미채움 폴백 — AdSense 가 data-ad-status="unfilled" 를 달면 빈 상자와 "광고" 라벨만
   남아 본문이 끊긴다. shell.js 가 aside 에 data-ad-state="unfilled" 를 달고, 그때는
   예약 높이까지 전부 걷어낸다(대체 광고·자체 배너를 채워 넣지 않는다 — 오너 지시). */
.ad-slot[data-ad-state="unfilled"],
.ad-slot[data-ad-state^="unfill-"]{display:none}

/* ---- ADDED (not in reference mockup): disclosure-source.html partial ---- */
.disclosure-source{padding:22px 0;border-top:1px solid var(--line)}
.disclosure-source .fact-list{margin-bottom:0}
.disclosure-note{font-size:12px;color:var(--muted);margin:14px 0 0}
.disclosure-note a{text-decoration:underline}

/* ---- ADDED (owner fix 2026-07-25): src-link -- every DART/원문 link must
   read as a clickable link, not plain black text ---- */
.src-link{color:var(--accent);text-decoration:none}
.src-link:hover{text-decoration:underline}

/* ---- ADDED (owner fix 2026-07-25): 기업 개황 desktop grid -- the old
   vertical fact-list KV rows are mobile-oriented (tiny, sparse full-width
   rows) on desktop. auto-fit collapses to one column on narrow screens
   without a separate media query. ---- */
.company-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 22px;margin:4px 0 0}
.company-facts .fact{padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md)}
.company-facts .fact b{display:block;font-size:12px;color:var(--muted);font-weight:700;margin-bottom:6px}
.company-facts .fact span{font-size:17px;font-weight:750;letter-spacing:-.02em;word-break:break-all}

/* ---- ADDED (edge-first hierarchy 2026-07-25, feedback_hotclipfolio_edge_
   over_naver): 한줄 결론 callout -- the very top of the page, distinct from
   the neutral .section rhythm so it reads as the hero conclusion. ---- */
.one-line-conclusion{
  background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:var(--r-md);
  padding:18px 22px;margin:0;font-size:17px;font-weight:750;letter-spacing:-.02em;
}

/* ---- ADDED (2026-07-25, docs/overhaul/abcllm-unified-spec.md 분석 요약):
   report-card -- Opus 4.8 gold-standard "분석 요약" narrative block, first
   inside the 한눈에 보기 tab. Moved verbatim from docs/overhaul/sample/pages/
   company/026910/report-demo.html (the approved demo) so both the demo and
   the real generator (generate_company_pages.py build_analysis_report_
   section()) share one definition. ---- */
.report-card{
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:var(--paper); padding:30px 34px 30px; margin:20px 0 8px; box-shadow:var(--shadow-sm);
}
.report-card .rc-head{
  display:flex; align-items:baseline; justify-content:space-between; gap:16px;
  margin-bottom:14px; flex-wrap:wrap;
}
.report-card .rc-tag{
  font-size:12px; font-weight:800; letter-spacing:.08em; color:var(--accent);
  display:inline-flex; align-items:center; gap:8px;
}
.report-card .rc-tag:before{ content:""; width:7px; height:7px; background:var(--accent); display:inline-block; }
.report-card .rc-asof{ font-size:12px; color:var(--muted); }
/* 리드 한 줄 결론 = 크고 굵게 */
.report-card .rc-lead{
  font-size:20px; line-height:1.5; letter-spacing:-.03em; font-weight:800;
  color:var(--ink); margin:0 0 16px;
}
/* 본문 줄글 — 가독성 위주(16px / 1.85) */
.report-card .rc-body p{
  font-size:16px; line-height:1.85; color:#2b2f36; margin:0 0 14px;
  word-break:keep-all; overflow-wrap:anywhere;
}
.report-card .rc-body p:last-child{ margin-bottom:0; }
.report-card .rc-body b{ font-weight:800; color:var(--ink); }
/* 근거 인용 [공시/뉴스 날짜] — 작게, 링크색 */
.report-card cite{
  font-style:normal; font-size:12.5px; color:var(--accent); font-weight:700;
  white-space:nowrap;
}
.report-card .report-cite{text-decoration:none}
.report-card .report-sources{display:block;margin-top:5px;font-size:12px;color:var(--muted)}
.article-byline{margin:10px 0 0;font-size:12px;color:var(--muted)}
.article-byline a,.article-byline time,footer a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.report-card .rc-foot{
  margin-top:18px; padding-top:14px; border-top:1px solid var(--line);
  font-size:12px; color:var(--muted); line-height:1.6;
}
@media (max-width:620px){
  .report-card{ padding:20px 18px 22px; }
  .report-card .rc-lead{ font-size:18px; }
  .report-card .rc-body p{ font-size:15px; line-height:1.8; }
}

footer{border-top:1px solid var(--line);max-width:var(--max);margin:0 auto;padding:28px 22px 45px;color:var(--muted);font-size:12px}
footer nav{margin-top:7px}
@media (max-width:620px){footer{padding-left:16px;padding-right:16px}}

@media (max-width:940px){
  .global-header__inner{grid-template-columns:165px 1fr;padding:0 16px}
  .global-nav{display:none}.global-search{width:100%}
  .mobile-nav{
    display:flex;overflow-x:auto;border-top:1px solid var(--line);height:45px;padding:0 12px;
    scrollbar-width:none;background:#fff;
  }
  .mobile-nav::-webkit-scrollbar{display:none}
  .mobile-nav a,.mobile-nav button{
    border:0;background:#fff;padding:0 13px;white-space:nowrap;font-size:13px;font-weight:750;cursor:pointer;
    display:flex;align-items:center;
  }
  .mobile-nav a.active,.mobile-nav button.active{color:var(--accent)}
  .shell{padding-left:16px;padding-right:16px}
  .lead-grid{grid-template-columns:1fr}
  .lead-story{border-right:0;padding-right:0}
  .story-list{grid-template-columns:1fr}
  .company-strip{grid-template-columns:1fr 1fr}
  .company-strip>div{border-bottom:1px solid var(--line)}
  .company-name{grid-column:1/-1}
}
@media (max-width:620px){
  .global-header__inner{height:60px;grid-template-columns:145px 1fr;gap:10px}
  .brand{font-size:17px}.global-search{height:34px}.global-search input{font-size:12px}
  .page-head{display:block;padding:17px 0}.head-meta{text-align:left;margin-top:12px}
  h1{font-size:28px}.lead-title{font-size:23px}
  .company-strip{grid-template-columns:1fr 1fr}
  .compare-row{grid-template-columns:108px 1fr 1fr}
  .compare-row>div{padding:11px 9px;font-size:12px}

  /* 모든 데이터 표를 한 화면 안의 세로 카드로 전환한다. 760px 최소폭/내부
     가로 스크롤을 없애고 긴 공시명·금액·링크도 375px 안에서 줄바꿈한다. */
  main,.section,.tab-panel,.lead-grid,.story,.company-strip{min-width:0;max-width:100%}
  main img,main video,main canvas,main svg{max-width:100%;height:auto}
  main pre,main code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
  .table-wrap,.section>div[style*="overflow-x"]{overflow:visible!important;max-width:100%}
  main table.responsive-table{display:block;width:100%;min-width:0;table-layout:auto}
  main table.responsive-table caption{display:block;width:100%;font-size:13px}
  main table.responsive-table thead{
    position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
    clip:rect(0,0,0,0);white-space:nowrap;border:0;
  }
  main table.responsive-table tbody{display:block;width:100%}
  main table.responsive-table tbody tr{
    display:block;width:100%;margin:0 0 10px;border:1px solid var(--line);
    border-radius:var(--r-sm);overflow:hidden;background:var(--paper);
  }
  main table.responsive-table tbody tr:last-child{margin-bottom:0}
  main table.responsive-table tbody td,
  main table.responsive-table tbody th[scope="row"]{
    display:grid;width:100%;grid-template-columns:minmax(92px,34%) minmax(0,1fr);
    align-items:start;gap:10px;padding:11px 12px;border:0;border-bottom:1px solid var(--line);
    text-align:left;white-space:normal!important;font-size:15px;line-height:1.55;
    overflow-wrap:anywhere;word-break:break-word;
  }
  main table.responsive-table tbody tr>:last-child{border-bottom:0}
  main table.responsive-table tbody td::before,
  main table.responsive-table tbody th[scope="row"]::before{
    content:attr(data-label);font-size:12.5px;font-weight:800;color:var(--muted);
  }

  /* 개별 종목은 작은 11~13px 보조문구까지 실제 휴대전화에서 읽히도록 확대. */
  body[data-page-type="company"]{font-size:16px;line-height:1.68}
  body[data-page-type="company"] h1{font-size:30px;line-height:1.25}
  body[data-page-type="company"] .eyebrow{font-size:13px}
  body[data-page-type="company"] .dek{font-size:16px;line-height:1.72}
  body[data-page-type="company"] .head-meta{font-size:13.5px;line-height:1.65}
  body[data-page-type="company"] .breadcrumb{font-size:13px}
  body[data-page-type="company"] .secondary-tabs a{font-size:14px;padding:10px 13px}
  body[data-page-type="company"] .company-name span,
  body[data-page-type="company"] .metric span{font-size:13.5px;line-height:1.5}
  body[data-page-type="company"] .company-name strong{font-size:26px}
  body[data-page-type="company"] .metric b{font-size:20px}
  body[data-page-type="company"] .section{padding:21px 17px;margin:16px 0}
  body[data-page-type="company"] .section-title{align-items:start;gap:8px;flex-direction:column}
  body[data-page-type="company"] .section-title h2{font-size:22px;line-height:1.35}
  body[data-page-type="company"] .section-title small{font-size:13.5px}
  body[data-page-type="company"] .story .kicker{font-size:12.5px}
  body[data-page-type="company"] .story h3{font-size:19px}
  body[data-page-type="company"] .story p,
  body[data-page-type="company"] .timeline-item p,
  body[data-page-type="company"] .fact-list b,
  body[data-page-type="company"] .fact-list span{font-size:15px;line-height:1.65}
  body[data-page-type="company"] .timeline-item time,
  body[data-page-type="company"] .disclosure-note,
  body[data-page-type="company"] .article-byline{font-size:13.5px}
  body[data-page-type="company"] .badge{font-size:12.5px;line-height:1.5}
  body[data-page-type="company"] .faq-item summary,
  body[data-page-type="company"] .faq-item p{font-size:15.5px;line-height:1.7}
}

/* FAQ (2026-08-07) — 공시 수치 기반 문답. details 로 접힘, 스크립트 불필요. */
.faq-item{border:1px solid var(--line);border-radius:var(--r-md);margin:10px 0;background:var(--paper)}
.faq-item summary{padding:13px 16px;font-weight:700;font-size:14px;cursor:pointer}
.faq-item p{padding:0 16px 14px;font-size:14px;line-height:1.7;color:var(--ink,#303038);margin:0}

/* 정정공시: 표의 한 줄 요약이 아니라 회사·원공시·사유·전체 전후 값을 한 카드에서
   읽는다. 종목명은 전역 --company 색을 써 모바일에서도 카드 경계와 별개로 구분된다. */
.correction-list{display:flex;flex-direction:column;gap:18px;margin:18px 0}
.correction-card{border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--paper);overflow:hidden;box-shadow:var(--shadow-sm)}
.correction-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line);background:var(--soft)}
.correction-company{display:flex;align-items:baseline;gap:9px;min-width:0}
.correction-company h2{font-size:21px;line-height:1.25;margin:0}
.correction-code{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.correction-date{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:12px;color:var(--muted)}
.correction-summary{font-size:16px;font-weight:750;line-height:1.6;margin:0;padding:18px 20px 10px}
.correction-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;padding:0 20px 18px;font-size:13px;line-height:1.6;color:#454951}
.correction-meta span{min-width:0;overflow-wrap:anywhere}
.correction-meta b{display:block;font-size:11px;color:var(--muted);letter-spacing:.02em;margin-bottom:1px}
.correction-detail{border-top:1px solid var(--line)}
.correction-detail>summary{cursor:pointer;padding:14px 20px;font-size:14px;font-weight:850;color:#30343a;background:#fbfbfc}
.correction-fields{display:flex;flex-direction:column}
.correction-field{padding:17px 20px;border-top:1px solid var(--line)}
.correction-field h3{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.55;margin:0 0 12px}
.correction-field h3 span{display:inline-grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:var(--company);color:#fff;font-size:11px}
.correction-field-reason{font-size:12.5px;color:var(--muted);margin:0 0 10px}
.correction-field-reason b{color:#454951;margin-right:5px}
.correction-diff{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:8px;align-items:stretch}
.correction-before,.correction-after{border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 13px;min-width:0}
.correction-before{background:#fafafa}.correction-after{background:#f5f7ff;border-color:#cbd3f3}
.correction-before>b,.correction-after>b{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}
.correction-after>b{color:var(--company)}
.correction-before p,.correction-after p{font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.correction-combined{border:1px solid #cbd3f3;border-radius:var(--r-sm);padding:12px 13px;background:#f5f7ff}
.correction-combined>b{display:block;font-size:11px;color:var(--company);margin-bottom:6px}
.correction-combined p{font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.correction-arrow{display:grid;place-items:center;color:var(--company);font-weight:900}
.correction-no-table{margin:0;padding:16px 20px;border-top:1px solid var(--line);font-size:13px;line-height:1.65;color:var(--muted);background:#fbfbfc}
.correction-facts{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0;margin:14px 0 18px;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}
.correction-facts dt,.correction-facts dd{padding:10px 12px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.55;margin:0}
.correction-facts dt{background:var(--soft);font-weight:800}.correction-facts dd{overflow-wrap:anywhere}
.correction-facts>:nth-last-child(-n+2){border-bottom:0}
.pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:18px 0;font-size:13px}
.pagination a,.pagination span{min-width:76px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;text-align:center;background:var(--paper)}
.pagination a:hover,.pagination a:focus-visible{border-color:var(--company);color:var(--company)}
.pagination span{color:#aaa;background:#fafafa}.pagination strong{font-variant-numeric:tabular-nums}

@media (max-width:620px){
  .correction-list{gap:13px}
  .correction-card-head{padding:15px 14px;display:block}
  .correction-company h2{font-size:21px}
  .correction-date{margin-top:8px;justify-content:space-between}
  .correction-summary{font-size:16px;padding:15px 14px 9px}
  .correction-meta{grid-template-columns:1fr;padding:0 14px 15px;gap:9px;font-size:14px}
  .correction-detail>summary{padding:13px 14px;font-size:14px}
  .correction-field{padding:15px 14px}
  .correction-field h3{font-size:15px}
  .correction-diff{grid-template-columns:1fr;gap:7px}
  .correction-arrow{height:18px;transform:rotate(90deg)}
  .correction-before p,.correction-after p,.correction-combined p{font-size:14px}
  .correction-no-table{padding:14px;font-size:14px}
  .correction-facts{grid-template-columns:1fr}
  .correction-facts dt{border-bottom:0;padding-bottom:2px}
  .correction-facts dd{padding-top:3px}
  .correction-facts>:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .correction-facts>:last-child{border-bottom:0}
  .pagination{gap:8px}.pagination a,.pagination span{min-width:66px;padding:8px 7px}
}

/* /hot/ 카드 목록 (2026-08-08) — 빅카인즈식. 행 전체 링크·테두리·큰 글자. */
.hot-list{display:flex;flex-direction:column;gap:10px}
.hot-card{display:flex;align-items:center;gap:14px;border:1.5px solid var(--line);
  border-radius:var(--r-md);padding:14px 18px;background:var(--paper);
  text-decoration:none;color:inherit;transition:border-color .15s}
.hot-card:hover{border-color:#2546c7}
.hot-date{flex:0 0 54px;font-size:13px;font-weight:750;color:#2546c7;text-align:center}
.hot-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.hot-main b{font-size:17px;font-weight:850;color:var(--company)}
.hot-code{font-size:12px;color:var(--muted)}
.hot-main small{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hot-chg{flex:0 0 auto;font-size:16px;font-weight:800}
.hot-chg.up{color:#d32f2f}
.hot-chg.down{color:#1565c0}
