:root{
  /* kculture_deck_SYnim.pptx 실사용 색상에서 그대로 추출 */
  --paper:      #F4F5F9;
  --panel:      #ffffff;
  --panel-2:    #ECEEF6;
  --ink:        #1B1F3B;
  --ink-soft:   #44487A;
  --ink-mute:   #6B7280;
  --line:       #D9DCE6;
  --line-soft:  #ECEEF6;
  --accent:     #2E3565;
  --accent-ink: #2E3565;
  --accent-soft:#ECEEF6;
  --confirm:    #1B1F3B;
  --confirm-soft:#E9EAF2;
  --flag:       #E63950;
  --flag-soft:  #FCE6E9;
  --amber:      #F0A93A;
  --amber-soft: #FDF1DE;
  --amber-ink:  #95611A;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#14162a; --panel:#1b1f3b; --panel-2:#20244a; --ink:#f2f3f9;
    --ink-soft:#b7bbe0; --ink-mute:#8b8fbd; --line:#333866; --line-soft:#262b52;
    --accent:#8891d9; --accent-ink:#c3c8f0; --accent-soft:#262b52;
    --confirm:#c3c8f0; --confirm-soft:#262b52; --flag:#ff6b81; --flag-soft:#3a1f28;
    --amber:#f5bc5f; --amber-soft:#3a2e17; --amber-ink:#f5bc5f;
  }
}
:root[data-theme="dark"]{
  --paper:#14162a; --panel:#1b1f3b; --panel-2:#20244a; --ink:#f2f3f9;
  --ink-soft:#b7bbe0; --ink-mute:#8b8fbd; --line:#333866; --line-soft:#262b52;
  --accent:#8891d9; --accent-ink:#c3c8f0; --accent-soft:#262b52;
  --confirm:#c3c8f0; --confirm-soft:#262b52; --flag:#ff6b81; --flag-soft:#3a1f28;
  --amber:#f5bc5f; --amber-soft:#3a2e17; --amber-ink:#f5bc5f;
}
*{box-sizing:border-box;}
html{color-scheme:light dark;}
body{
  margin:0;
  background:var(--paper); color:var(--ink);
  font-family:"Malgun Gothic","맑은 고딕","Apple SD Gothic Neo","Noto Sans KR",system-ui,-apple-system,"Segoe UI",sans-serif;
  line-height:1.6; -webkit-font-smoothing:antialiased;
}
.display{font-family:"Malgun Gothic","맑은 고딕","Apple SD Gothic Neo","Noto Sans KR",sans-serif; text-wrap:balance;}
.mono{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif;}
.tab{font-variant-numeric:tabular-nums;}
.wrap{max-width:1080px; margin:0 auto; padding:0 24px 80px;}

.masthead{border-bottom:1px solid var(--line); padding:36px 0 24px; margin-bottom:28px; position:relative;}
.eyebrow{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:12px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--accent-ink); display:flex; align-items:center; gap:10px; margin-bottom:14px;}
.eyebrow::before{content:""; width:8px; height:8px; background:var(--accent); display:inline-block;}
h1{font-size:clamp(24px,3.6vw,32px); font-weight:700; margin:0 0 10px; letter-spacing:-.01em;}
.dek{font-size:15px; color:var(--ink-soft); max-width:74ch; margin:0;}

.theme-toggle{
  position:absolute; top:36px; right:24px;
  display:flex; align-items:center; gap:6px;
  background:var(--panel); border:1px solid var(--line);
  padding:6px 10px; cursor:pointer;
  font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif;
  font-size:12px; color:var(--ink-soft);
}
.theme-toggle:hover{border-color:var(--accent); color:var(--ink);}
.theme-toggle:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
@media (max-width:520px){
  .theme-toggle{position:static; margin-bottom:12px;}
}

.kpi-row{display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:28px;}
@media (max-width:820px){.kpi-row{grid-template-columns:repeat(2,1fr);}}
.kpi{background:var(--panel); border:1px solid var(--line); padding:14px 16px;}
.kpi-label{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:10.5px; letter-spacing:.05em; text-transform:uppercase; color:var(--ink-mute); margin-bottom:6px;}
.kpi-val{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-weight:700; font-size:24px; color:var(--accent-ink);}
.kpi-sub{font-size:11.5px; color:var(--ink-soft); margin-top:4px;}

.verdicts{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:36px;}
@media (max-width:780px){.verdicts{grid-template-columns:1fr;}}
.vcard{background:var(--panel); border:1px solid var(--line); padding:16px 16px 18px; display:flex; flex-direction:column; gap:8px;}
.vchip{align-self:flex-start; font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:10.5px; font-weight:500; letter-spacing:.07em; padding:3px 8px;}
.vchip.confirmed{background:var(--confirm-soft); color:var(--confirm);}
.vchip.refuted{background:var(--flag-soft); color:var(--flag);}
.vchip.mixed{background:var(--amber-soft); color:var(--amber-ink);}
.vclaim{font-size:13.5px; font-weight:600; line-height:1.4;}
.vresult{font-size:12.5px; color:var(--ink-soft); line-height:1.5;}

.grid2{display:grid; grid-template-columns:1.3fr 1fr; gap:16px; margin-bottom:16px; align-items:start;}
@media (max-width:900px){.grid2{grid-template-columns:1fr;}}

section{margin-bottom:44px;}
.sec-head{display:flex; align-items:baseline; gap:12px; margin-bottom:14px; padding-bottom:12px; border-bottom:1px solid var(--line);}
.sec-num{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:13px; color:var(--accent-ink); font-weight:700;}
.sec-head h2{font-size:19px; margin:0; font-weight:700; letter-spacing:-.01em;}
.lede{font-size:13.5px; color:var(--ink-soft); max-width:76ch; margin:0 0 16px;}

.panel-block{background:var(--panel); border:1px solid var(--line); padding:16px 18px;}
.panel-block img{width:100%; height:auto; display:block;}
.panel-title{font-size:12.5px; font-weight:600; margin-bottom:10px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.03em; font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif;}

.tbl-wrap{overflow-x:auto; border:1px solid var(--line); background:var(--panel);}
table{border-collapse:collapse; width:100%; font-size:12.5px; min-width:420px;}
th,td{padding:8px 12px; text-align:right; border-bottom:1px solid var(--line-soft); white-space:nowrap;}
th:first-child,td:first-child{text-align:left;}
thead th{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:10.5px; letter-spacing:.03em; text-transform:uppercase; color:var(--ink-mute); font-weight:500; background:var(--panel-2);}
tbody tr:last-child td{border-bottom:none;}
td.num,th.num{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif;}
tr.flagrow td{background:var(--flag-soft);}
tr.okrow td{background:var(--confirm-soft);}

.note{font-size:12.5px; color:var(--ink-soft); margin-top:10px; padding:10px 12px; border-left:3px solid var(--accent); background:var(--accent-soft);}

footer{border-top:1px solid var(--line); padding-top:18px; font-size:11.5px; color:var(--ink-mute);}
footer .flist{font-family:"Malgun Gothic","맑은 고딕","Noto Sans KR",sans-serif; font-size:11px; line-height:1.9;}
footer .flist b{color:var(--ink-soft); font-weight:500;}
