/* 짠 리포트 본문 — 토큰은 layouts/zzan_v2/css/zz.css (라이트·다크 공통) */
.zr{--zr-gap:28px;max-width:800px;margin:0 auto;color:var(--text);font-size:16px;line-height:1.75}
.zr p{margin:0 0 14px}
.zr a{color:inherit}
.zr-hero{position:relative;overflow:hidden;margin:0 0 var(--zr-gap);padding:26px 26px 22px;border-radius:var(--r,16px);background:linear-gradient(135deg,#1b2140 0%,#3b2f86 60%,#6b2f8f 100%);color:#fff}
.zr-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:2px solid rgba(255,255,255,.12);box-shadow:0 0 0 36px rgba(255,255,255,.04)}
.zr-eyebrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px!important;font-size:13px;font-weight:700;letter-spacing:.02em;color:rgba(255,255,255,.85)}
.zr-tag{padding:3px 10px;border-radius:99px;background:rgba(255,255,255,.16);color:#fff}
.zr-period{margin:0 0 12px!important;font-size:14px;color:rgba(255,255,255,.78)}
.zr-sum{position:relative;z-index:1;margin:0!important;font-size:21px;font-weight:700;line-height:1.5;color:#fff;word-break:keep-all}
.zr-lead{font-size:17px;color:var(--text);word-break:keep-all}
.zr-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 var(--zr-gap)}
.zr-kpi{display:flex;flex-direction:column;gap:4px;padding:16px 16px 14px;border-radius:var(--r-sm,12px);background:var(--surface-2);border:1px solid var(--line)}
.zr-kl{font-size:13px;font-weight:600;color:var(--muted)}
.zr-kv{display:flex;align-items:baseline;gap:3px;line-height:1.1}
.zr-kv b{font-size:32px;font-weight:800;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}
.zr-kv small{font-size:15px;font-weight:700;color:var(--text-2)}
.zr-d{font-size:13px;font-weight:700}
.zr-d small{font-weight:500;color:var(--muted);margin-left:2px}
.zr-d.up{color:var(--ok)}
.zr-d.down{color:var(--bad)}
.zr-d.flat{color:var(--muted)}
.zr-ks{font-size:12px;color:var(--muted)}
.zr-calls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 var(--zr-gap)}
.zr-call{padding:14px 16px;border-radius:var(--r-sm,12px);background:var(--soft,var(--surface-2));border-left:4px solid var(--acc)}
.zr-cl{display:block;margin-bottom:4px;font-size:12px;font-weight:800;letter-spacing:.03em;color:var(--acc)}
.zr-call p{margin:0!important;font-size:16px;color:var(--text);display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.zr-sec{margin:0 0 var(--zr-gap);padding:22px 22px 18px;border-radius:var(--r,16px);background:var(--card-bg,var(--surface));border:1px solid var(--line)}
.zr-sec h3{margin:0 0 6px;font-size:19px;font-weight:800;color:var(--text)}
.zr-note-ai{margin:0 0 14px!important;font-size:15px;color:var(--text-2);word-break:keep-all}
.zr-bars{list-style:none;margin:0;padding:0}
.zr-bars li{display:grid;grid-template-columns:26px minmax(0,38%) minmax(0,1fr) 64px;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.zr-bars li:last-child{border-bottom:0}
.zr-rk{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--surface-3);color:var(--text-2);font-size:12px;font-weight:800}
.zr-bars li.top .zr-rk{background:var(--acc);color:#fff}
.zr-bl{min-width:0;font-size:15px;font-weight:600;color:var(--text);overflow-wrap:anywhere}
.zr-bl small{display:block;font-size:12px;font-weight:500;color:var(--muted);line-height:1.5}
.zr-bt{display:block;height:10px;border-radius:99px;background:var(--surface-3);overflow:hidden}
.zr-bf{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--acc),#8b5cf6)}
.zr-bv{text-align:right;font-size:15px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.zr-tw{overflow-x:auto}
.zr-table{width:100%;border-collapse:collapse;font-size:15px}
.zr-table th{padding:8px 10px;border-bottom:2px solid var(--line-2);text-align:left;font-size:13px;font-weight:700;color:var(--muted);white-space:nowrap}
.zr-table td{padding:10px;border-bottom:1px solid var(--line);color:var(--text);vertical-align:middle}
.zr-table tbody tr:nth-child(even) td{background:var(--surface-2)}
.zr-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.zr-table s{color:var(--muted)}
.zr-table small{color:var(--muted)}
.zr-table code,.zr-call code{padding:2px 6px;border-radius:6px;background:var(--surface-3);color:var(--text);font-size:13px;font-weight:700;word-break:break-all}
.zr-game{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600}
.zr-game:hover span{text-decoration:underline}
.zr-gi{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;border-radius:6px;object-fit:cover;color:#fff;font-size:11px;font-weight:800;line-height:1}
.zr-outro{padding:14px 16px;border-radius:var(--r-sm,12px);background:var(--surface-2);font-weight:600}
.zr-foot{margin-top:var(--zr-gap);padding-top:20px;border-top:1px solid var(--line-2)}
.zr-fblk{margin:0 0 16px}
.zr-fl{display:block;margin-bottom:8px;font-size:13px;font-weight:800;color:var(--muted)}
.zr-chips{display:flex;flex-wrap:wrap;gap:8px}
.zr-chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:99px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font-size:14px;font-weight:600;text-decoration:none}
.zr-chip:hover{background:var(--surface-3);color:var(--text)}
.zr-rel{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.zr-rel a{display:block;padding:10px 14px;border-radius:var(--r-sm,12px);background:var(--surface-2);text-decoration:none;font-weight:600;color:var(--text)}
.zr-rel a:hover{background:var(--surface-3)}
.zr-rel small{display:block;font-size:12px;font-weight:700;color:var(--acc)}
.zr-src{margin:16px 0 0!important;font-size:13px;line-height:1.65;color:var(--muted)}
.zr-src b{color:var(--text-2);margin-right:4px}
@media (max-width:720px){
	.zr{font-size:15px}
	.zr-hero{padding:20px 18px 18px}
	.zr-sum{font-size:18px}
	.zr-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.zr-kv b{font-size:26px}
	.zr-calls{grid-template-columns:1fr}
	.zr-sec{padding:18px 14px 14px}
	.zr-bars li{grid-template-columns:24px minmax(0,1fr) 56px;row-gap:6px}
	.zr-bt{grid-column:2/4;grid-row:2}
	.zr-tw{overflow:visible}
	.zr-table thead{display:none}
	.zr-table,.zr-table tbody,.zr-table tr,.zr-table td{display:block;width:100%}
	.zr-table tr{margin:0 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm,12px);background:var(--surface)}
	.zr-table tbody tr:nth-child(even) td{background:transparent}
	.zr-table td{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border:0;text-align:right}
	.zr-table td::before{content:attr(data-label);flex:0 0 auto;font-size:13px;font-weight:600;color:var(--muted);text-align:left}
	.zr-table td:first-child{justify-content:flex-start;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid var(--line);text-align:left;font-size:16px}
	.zr-table td:first-child::before{display:none}
}
.znb-body .zr .zr-table{display:table;max-width:none;width:100%}
.znb-body .zr .zr-table td,.znb-body .zr .zr-table th{border-left:0;border-right:0;border-top:0}
.znb-body .zr ul.zr-rel,.znb-body .zr ol.zr-bars{list-style:none;margin:0;padding:0}
.znb-body .zr ul.zr-rel li,.znb-body .zr ol.zr-bars li{margin:0;list-style:none}
@media (max-width:720px){
	.znb-body .zr .zr-table,.znb-body .zr .zr-table tbody,.znb-body .zr .zr-table tr,.znb-body .zr .zr-table td{display:block}
	.znb-body .zr .zr-table td{display:flex;border:0}
	.znb-body .zr .zr-table td:first-child{border-bottom:1px solid var(--line)}
}
