:root{--paper:#f5f4ef;--ink:#131313;--ink-soft:#3a3a38;--blue:#2b6bf3;--fd:"pln-octagon","Pretendard Variable",Pretendard,sans-serif;--fb:"Pretendard Variable",Pretendard,-apple-system,"Apple SD Gothic Neo",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--fb);line-height:1.75;word-break:keep-all;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
h1,h2,h3{margin:0}
p{margin:0}
.fd{font-family:var(--fd);font-weight:700;line-height:1.15;letter-spacing:-0.01em}
.wrap{max-width:38rem;margin:0 auto;padding:0 1.25rem 5rem}
.halftone{background-image:radial-gradient(rgba(19,19,19,.22) 1px,transparent 1.3px);background-size:7px 7px}
.ink-rule{border-top:3px solid var(--ink)}
.ink-rule-thin{border-top:1.5px solid var(--ink)}
.dotted-rule{border-top:2px dotted var(--ink)}
.eyebrow{font-family:var(--fd);font-size:.8rem;letter-spacing:.14em;background:var(--ink);color:var(--paper);display:inline-block;padding:.3rem .7rem .22rem}
.section{margin-top:3rem}
.section-anchor{scroll-margin-top:4.5rem;padding-top:1.25rem}
.section-num{font-family:var(--fd);font-size:3.2rem;line-height:1;position:relative;display:inline-block}
.section-num .tri{position:absolute;top:.1em;right:-.55em;width:0;height:0;border-left:.34em solid var(--blue);border-bottom:.34em solid transparent}
.h2{font-family:var(--fd);font-size:1.5rem;line-height:1.35;margin-top:.25rem}
.h3{font-family:var(--fd);font-size:1.125rem;margin-top:2rem}
.para{margin-top:.85rem}
.small{font-size:.92rem}
.link-card{display:flex;align-items:center;gap:.75rem;border:2px solid var(--ink);background:var(--paper);padding:.85rem 1rem;text-decoration:none;color:var(--ink);transition:background-color .15s,color .15s;box-shadow:3px 3px 0 0 var(--ink);margin-top:.75rem}
.link-card:hover,.link-card:active{background:var(--ink);color:var(--paper)}
.lc-src{font-family:var(--fd);font-size:.72rem;letter-spacing:.08em;opacity:.75;display:block}
.lc-title{font-weight:700;font-size:.95rem;line-height:1.4}
.lc-arrow{margin-left:auto;font-family:var(--fd);font-size:1.2rem;flex-shrink:0}
.product-card{border:2px solid var(--ink);box-shadow:4px 4px 0 0 var(--blue);margin-top:.75rem}
.product-card .link-card{margin-top:0;box-shadow:none;border:none}
.footnote{font-size:.78rem;color:var(--ink-soft);line-height:1.6;border-left:3px solid var(--ink);padding-left:.7rem;margin-top:1.1rem}
.masthead{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:2px solid var(--ink)}
.masthead-in{max-width:38rem;margin:0 auto;display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem}
.masthead img{height:1.5rem;width:auto}
.masthead-tag{font-family:var(--fd);font-size:.75rem;letter-spacing:.2em;color:var(--ink-soft)}
.burger{position:fixed;top:.9rem;right:.9rem;z-index:60;width:3rem;height:3rem;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.32rem;border:2px solid var(--ink);cursor:pointer;padding:0}
.burger span{display:block;width:1.3rem;height:2.5px;background:currentColor;transition:transform .2s,opacity .2s}
.burger.open span:nth-child(1){transform:translateY(.4rem) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-.4rem) rotate(-45deg)}
.nav-overlay{position:fixed;inset:0;z-index:50;background:var(--paper);overflow-y:auto;opacity:0;pointer-events:none;transition:opacity .2s}
.nav-overlay.open{opacity:1;pointer-events:auto}
.nav-in{max-width:36rem;margin:0 auto;padding:5rem 1.25rem 4rem}
.nav-title{font-family:var(--fd);font-size:1.25rem;margin-top:.75rem;font-weight:700}
.toc{margin-top:1rem}
.toc-entry{display:flex;align-items:baseline;gap:1rem;padding:.8rem .25rem;border:none;border-bottom:1.5px solid var(--ink);text-decoration:none;color:var(--ink);cursor:pointer;width:100%;text-align:left;background:none;font-family:inherit;font-size:inherit}
.toc-num{font-family:var(--fd);font-size:1.5rem;min-width:2.6rem;font-weight:700}
.toc-title{font-weight:700;font-size:1.02rem}
.toc-entry.active{background:var(--ink);color:var(--paper)}
.toc-entry.active .toc-num{color:var(--blue)}
.check-item{display:flex;gap:.7rem;align-items:flex-start;padding:.55rem 0;border-bottom:1.5px dotted var(--ink);cursor:pointer}
.check-item .box{width:1.25rem;height:1.25rem;border:2px solid var(--ink);flex-shrink:0;margin-top:.2rem;display:flex;align-items:center;justify-content:center;background:var(--paper);font-weight:800;font-size:.8rem;color:var(--paper)}
.check-item.done .box{background:var(--blue)}
.check-item.done .txt{text-decoration:line-through;text-decoration-thickness:2px;opacity:.55}
.checklist{list-style:none;margin:.75rem 0 0;padding:0}
.bubbles{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;column-gap:.75rem;row-gap:1.25rem;margin-top:1rem}
.bubbles figure{margin:0;text-align:center}
.bub-cap{margin-top:.25rem;line-height:1.3}
.bub-t{font-family:var(--fd);font-size:.875rem;display:block;font-weight:700}
.bub-t b{color:var(--blue)}
.bub-l{font-size:.68rem;color:var(--ink-soft)}
@keyframes drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.bubbles figure{animation:drift 5s ease-in-out infinite}
.bubbles figure:nth-child(2n){animation-duration:6.4s;animation-delay:.8s}
.bubbles figure:nth-child(3n){animation-duration:7.2s;animation-delay:1.5s}
@media(prefers-reduced-motion:reduce){.bubbles figure{animation:none}.link-card,.burger span,.nav-overlay{transition:none}}
.chart{border:2px solid var(--ink);padding:1rem;margin-top:1rem}
.chart-title{font-family:var(--fd);font-size:.875rem;letter-spacing:.06em;margin-bottom:.75rem;font-weight:700}
.chart-note{font-size:.7rem;color:var(--ink-soft);margin-top:.75rem}
.bars{display:flex;align-items:flex-end;gap:4px;height:9rem}
.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%}
.bar i{display:block;width:100%;background:rgba(19,19,19,.3)}
.bar.summer i{background:var(--ink)}
.bar-v{font-family:var(--fd);font-size:.6rem;color:var(--ink-soft)}
.bar.summer .bar-v{color:var(--blue)}
.bar-m{font-size:.62rem}
.hbar-row{margin-top:.75rem}
.hbar-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}
.hbar-name{font-size:.875rem;font-weight:700}
.hbar-val{font-family:var(--fd);font-size:1.125rem;font-weight:700}
.hbar-track{height:1rem;background:rgba(19,19,19,.08)}
.hbar-fill{height:1rem;background:var(--ink)}
.hbar-row.dim .hbar-fill{opacity:.45;background:var(--ink-soft)}
.tl-scale{display:flex;justify-content:space-between;font-size:.65rem;color:var(--ink-soft);margin:0 0 .25rem 7.2rem}
.tl-row{display:flex;align-items:center;gap:.5rem;margin-top:.6rem}
.tl-part{width:6.7rem;flex-shrink:0;font-size:.78rem;font-weight:700;line-height:1.3}
.tl-track{position:relative;height:.75rem;flex:1;background:rgba(19,19,19,.08)}
.tl-fill{position:absolute;left:0;top:0;height:.75rem;background:var(--ink)}
.tl-dot{position:absolute;top:50%;width:1rem;height:1rem;transform:translateY(-50%);border-radius:50%;border:2px solid var(--ink);background:var(--paper)}
.tl-dot.blue{background:var(--blue)}
.tl-yr{font-family:var(--fd);width:2rem;text-align:right;font-size:.875rem;font-weight:700}
.diagram{border:2px solid var(--ink);padding:.75rem;margin-top:1rem}
.diagram figcaption,.chart figcaption{font-size:.7rem;color:var(--ink-soft);margin-top:.5rem}
.sources{list-style:none;margin:1rem 0 0;padding:0}
.sources li{border-bottom:1px solid rgba(19,19,19,.25)}
.sources a{display:flex;align-items:baseline;gap:.75rem;padding:.5rem 0;text-decoration:none;color:var(--ink)}
.src-num{font-family:var(--fd);font-size:.875rem;color:var(--blue);font-weight:700}
.src-t{font-size:.88rem}
.src-a{margin-left:auto;font-family:var(--fd);font-size:.875rem}
.footer{margin-top:3.5rem;padding-top:1.5rem;text-align:center}
.footer img{width:8rem}
.footer-brand{font-family:var(--fd);font-size:.875rem;letter-spacing:.2em;margin-top:.75rem;font-weight:700}
.footer-sub{font-size:.8rem;color:var(--ink-soft);margin-top:.25rem}
.cover-main{max-width:38rem;margin:0 auto;padding:3rem 1.25rem;display:flex;flex-direction:column;justify-content:center;min-height:80dvh}
.cover-logo{width:11rem}
.cover-tag{font-family:var(--fd);font-size:.875rem;letter-spacing:.2em;color:var(--ink-soft);margin-top:.75rem;font-weight:700}
.cover-h1{font-family:var(--fd);font-size:1.9rem;line-height:1.4;margin-top:1.5rem}
.issue-card{display:flex;align-items:center;gap:1rem;border:2px solid var(--ink);padding:1rem;text-decoration:none;color:var(--ink);box-shadow:5px 5px 0 0 var(--ink);margin-top:1rem}
.issue-card img{width:84px;height:84px;flex-shrink:0}
.ic-eyebrow{font-family:var(--fd);font-size:.75rem;letter-spacing:.2em;color:var(--blue);display:block;font-weight:700}
.ic-title{font-family:var(--fd);font-size:1.125rem;line-height:1.4;display:block;margin-top:.25rem;font-weight:700}
.ic-sub{font-size:.82rem;color:var(--ink-soft);display:block;margin-top:.25rem}
.hero-sub{font-size:1.125rem;font-weight:700;margin-top:.75rem}
.hero-img{display:block;margin:1.25rem auto 0;max-width:28rem;width:100%}
.intro-box{border:2px solid var(--ink);padding:1.25rem;margin-top:2rem}
.media-row{display:flex;align-items:flex-start;gap:1rem;margin-top:1rem}
.media-row img{flex-shrink:0}
.w24{width:6rem}.w20{width:5rem}
.car-img{display:block;margin:1rem auto 0;width:14rem}
.center-label{font-family:var(--fd);font-size:.875rem;letter-spacing:.06em;text-align:center;margin:1.5rem 0 0;font-weight:700}
/* octagon condensed 75% */
.fd,.h2,.h3,.nav-title,.cover-h1,.ic-title,.chart-title,.eyebrow,.section-num,.masthead-tag,.cover-tag,.ic-eyebrow,.lc-src,.toc-num,.src-num,.bar-v{transform:scaleX(.75);transform-origin:0 50%}
.center-label,.footer-brand,.bub-t{transform:scaleX(.75);transform-origin:50% 50%}
.hbar-val,.tl-yr{transform:scaleX(.75);transform-origin:100% 50%}
