/* Chair presentation. All sizes use container units (cqw) so a slide scales like a 16:9 picture. */
body.present header, body.present nav#tabs { display: none; }
body.present main { max-width: none; padding: 0; }
body.present { padding-bottom: 0; background: #111; }

.deck { position: fixed; inset: 0; z-index: 30; background: #111; display: flex; flex-direction: column; }
.stagewrap { flex: 1; min-height: 0; display: grid; place-items: center; }
.stage { aspect-ratio: 16 / 9; width: min(100vw, calc((100vh - 52px) * 16 / 9)); container-type: size; background: #fff; color: #1d1a1a; position: relative; overflow: hidden; }
.deckbar { height: 52px; display: flex; align-items: center; gap: 10px; padding: 0 12px; color: #ddd; background: #1b1b1b; font-size: 14px; }
.dgrow { flex: 1; }
.dbtn { background: #2c2c2c; color: #fff; border: 0; border-radius: 8px; min-width: 40px; height: 34px; font-size: 18px; cursor: pointer; padding: 0 12px; }
.dbtn:hover { background: #3a3a3a; }

.slide { position: absolute; inset: 0; padding: 3.2cqw 4.4cqw; font-size: 1.9cqw; line-height: 1.3; font-family: system-ui, -apple-system, "Segoe UI", "Noto Sans KR", sans-serif; }
.slide .ttl { margin: 0 0 1cqw; font-size: 4.4cqw; font-weight: 800; line-height: 1.1; }
.slide .ttl.small { font-size: 3cqw; }
.slide .center { text-align: center; }
.slide .open { color: #d97706; font-weight: 800; }
.slide .muted { color: #888; }
.slide .sub1 { font-size: 2.3cqw; color: #1b2bd6; margin-bottom: 1.2cqw; }
.slide .sub1 b { color: #1b2bd6; font-style: italic; }
.slide .sub2 { font-size: 3cqw; color: #c0392b; font-weight: 700; }
.slide .sub3 { font-size: 2.2cqw; color: #c0392b; font-weight: 700; margin-bottom: 1cqw; }

.cols { display: flex; gap: 3cqw; align-items: flex-start; }
.qrcol { width: 24cqw; flex: none; text-align: center; }
.qrbox { border: 1cqw solid #f6a21e; padding: 1.4cqw; background: #fff; }
.qrlbl { font-size: 1.7cqw; color: #555; margin-bottom: .6cqw; }
.qr svg { width: 100%; height: auto; display: block; }
.url { margin-top: 1.4cqw; color: #1b2bd6; font-weight: 700; font-size: 1.8cqw; text-decoration: underline; }
.pill { margin-top: .8cqw; background: #14584f; color: #fff; font-size: 1.5cqw; padding: .6cqw; border-radius: .4cqw; }
.tables { flex: 1; display: grid; gap: .6cqw; min-width: 0; }

.tbl { display: grid; gap: .2cqw; }
.tbl .tr { display: grid; grid-template-columns: 1fr 1fr; gap: .25cqw; }
.tbl .th, .tbl .td { background: var(--c); color: #fff; padding: .15cqw .8cqw; text-align: center; font-weight: 700; font-size: 1.45cqw; line-height: 1.2; display: flex; align-items: center; justify-content: center; min-height: 2cqw; }
.tbl .th { background: color-mix(in srgb, var(--c) 82%, #000); }
.tbl.two .td { background: var(--c); }
.tbl .head .td { background: color-mix(in srgb, var(--c) 70%, #000); }
.tbl .open { color: #ffe08a; }
.tbl.four .tr { grid-template-columns: 1fr 1.4fr 1.4fr 2.4fr; }

.circles { display: flex; justify-content: center; gap: 4cqw; margin: 3cqw 0; }
.circle { width: 17cqw; height: 17cqw; border-radius: 50%; color: #fff; font-weight: 800; font-size: 2.1cqw; display: grid; place-items: center; text-align: center; padding: 1.4cqw; }
.arrows { display: flex; justify-content: center; gap: 2cqw; }
.arrow { flex: 1; max-width: 26cqw; color: #fff; padding: 2cqw 3cqw 2cqw 2cqw; display: grid; gap: .3cqw; font-size: 1.7cqw; clip-path: polygon(0 0, 88% 0, 100% 50%, 88% 100%, 0 100%); min-height: 9cqw; align-content: center; }
.arrow b { font-size: 2.3cqw; }

.awards { display: grid; gap: .5cqw; font-size: 2.3cqw; margin-top: 1.6cqw; }
.aw { display: flex; gap: 2cqw; padding: .4cqw 1cqw; }
.aw b { width: 7cqw; color: #1b2bd6; }
.aw span { color: #c0392b; font-weight: 700; }
.aw.last { border: .3cqw solid #d33; border-radius: .6cqw; }

.quote { text-align: center; color: #c0392b; font-weight: 800; font-size: 2.6cqw; margin: 0 0 1.5cqw; }
.stat { align-items: stretch; }
.chart { flex: 1; display: flex; align-items: flex-end; gap: 1.2cqw; height: 28cqw; padding: 1cqw 1cqw 3.4cqw; border-bottom: .2cqw solid #bbb; min-width: 0; }
.cbar { flex: 1; height: 100%; position: relative; display: flex; align-items: flex-end; justify-content: center; }
.cbar i { display: block; width: 100%; background: #f6a21e; min-height: .4cqw; }
.cbar span { position: absolute; top: -2.4cqw; font-weight: 700; font-size: 1.5cqw; left: 0; right: 0; text-align: center; }
.cbar em { position: absolute; bottom: -3cqw; font-style: normal; font-size: 1.5cqw; left: 0; right: 0; text-align: center; color: #555; }
.tblt { font-weight: 800; font-size: 2cqw; margin-bottom: .6cqw; }
.stat > div:last-child { flex: 1.1; }

.today .ttcol { width: 40cqw; flex: none; }
.today .rtcol { flex: 1; display: grid; gap: 1cqw; min-width: 0; }
.ttm { font-size: 2.4cqw; margin: 1cqw 0 1.6cqw; }
.ttline { display: flex; gap: 1.5cqw; font-size: 2.6cqw; padding: .7cqw 0; border-bottom: .15cqw solid #ddd; min-height: 5cqw; align-items: center; }
.ttline b { color: #1b2bd6; width: 5cqw; }

.text .body { flex: 1; }
.text .body p { font-size: 2.5cqw; margin: 1.2cqw 0; }
.text .body p.note { color: #555; font-size: 2.1cqw; }
.text.hasqr .qrcol.side { width: 22cqw; margin-top: 8cqw; }
.qr.big { border: .6cqw solid #f6a21e; padding: 1cqw; background: #fff; }

@media print { body.present .deck { position: static; } }
.k-cover .ttl { font-size: 3.3cqw; margin-bottom: .4cqw; }
.k-cover .sub1 { font-size: 2cqw; margin-bottom: .8cqw; }
.today .ttl { font-size: 3.4cqw; }
