:root{color-scheme:light;--fg:#16181d;--muted:#5b6472;--line:#e4e7ec;--bg:#ffffff;--soft:#f6f7f9;--accent:#1a56db}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans KR,sans-serif;color:var(--fg);background:var(--bg);line-height:1.6}.site-footer,.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.5rem;border-bottom:1px solid var(--line)}.site-footer{border-bottom:0;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.site-header nav{display:flex;gap:1rem}a{color:var(--accent)}.brand{font-weight:700;color:var(--fg);text-decoration:none}main{max-width:72rem;margin:0 auto;padding:2rem 1.5rem 4rem}.hero h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:.4rem 0 .8rem}.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;margin:0}.kicker,.lede{color:var(--muted)}.lede{max-width:44rem}.actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.button{display:inline-block;padding:.6rem 1.1rem;border-radius:.5rem;background:var(--accent);color:#fff;text-decoration:none}.button.secondary{background:var(--soft);color:var(--fg);border:1px solid var(--line)}.grid{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-gap:1rem;gap:1rem}.card{border:1px solid var(--line);border-radius:.75rem;padding:1rem 1.1rem;background:#fff}.card h2,.card h3{margin:.2rem 0 .4rem;font-size:1.05rem}.card a{color:var(--fg);text-decoration:none}.card a:hover{text-decoration:underline}.meta{color:var(--muted);font-size:.85rem;margin:.25rem 0}.desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:.5rem 0 0}.detail-head{border-bottom:1px solid var(--line);padding-bottom:1.25rem;margin-bottom:1.5rem}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));grid-gap:1rem;gap:1rem}.panel{border:1px solid var(--line);border-radius:.75rem;padding:1rem 1.1rem;background:var(--soft)}.panel h2{margin-top:0;font-size:1rem}.note{color:var(--muted);font-size:.85rem}.pager{display:flex;align-items:center;gap:1rem;margin-top:1.5rem}.tabs{display:flex;gap:.5rem;margin:1rem 0;flex-wrap:wrap}.tabs a{padding:.4rem .9rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--fg);font-size:.9rem}.tabs a[aria-current=page]{background:var(--fg);color:#fff;border-color:var(--fg)}