@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css');
:root{--paper:#f3efe6;--ink:#292c28;--accent:#8b5c35;--muted:#696b60;--line:#d4ccbc;--panel:#e8e2d5;font-family:Pretendard,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:48px}header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:20px;font-size:12px;letter-spacing:.12em}a{color:inherit}h1{font-size:clamp(36px,6vw,72px);line-height:1.1;letter-spacing:-.055em;margin:36px 0 22px}h2{font-size:22px;letter-spacing:-.03em}p{line-height:1.85;word-break:keep-all}small,.muted{color:var(--muted)}.eyebrow{color:var(--accent);font-size:13px;letter-spacing:.12em}.lead{font-size:22px;max-width:660px;line-height:1.6}.columns{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:38px;border-top:1px solid var(--line);padding-top:22px}.columns p{max-width:460px}footer{margin-top:36px;font-size:12px;color:var(--muted);line-height:1.7}button{font:inherit;padding:10px 16px;border:1px solid var(--ink);background:transparent;border-radius:3px;color:var(--ink);cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.stat{border-top:1px solid var(--line);padding-top:12px}.stat strong{display:block;font-size:44px;letter-spacing:-.05em}.stat span{font-size:13px;color:var(--muted)}.bar{display:grid;grid-template-columns:60px 1fr 48px;gap:16px;align-items:center;margin:20px 0}.bar i{height:30px;background:var(--accent)}.note{border-left:3px solid var(--accent);padding:12px 20px;background:var(--panel)}#stage{height:470px;width:100%;position:relative;margin-top:20px;border:1px solid var(--line);border-radius:12px;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none}.controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}code{font-size:.85em}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:10px;text-align:left;border-bottom:1px solid var(--line)}@media(max-width:600px){main{padding:24px}.columns{grid-template-columns:1fr;gap:12px}header{letter-spacing:0;font-size:11px}.lead{font-size:19px}#stage{height:370px}.stats{gap:10px}.stat strong{font-size:32px}}
