:root{color-scheme:light;--primary:#0f2c58;--primary-hover:#0a1f40;--on-primary:#ffffff;--accent:#15803d;--on-accent:#ffffff;--bg:#f8fbff;--fg:#172554;--card:#ffffff;--muted:#e5edf7;--muted-fg:#475569;--border:#bfdbfe;--ring:#0f2c58;--radius:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Pretendard,Noto Sans KR,Malgun Gothic,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;word-break:keep-all}a{color:inherit}:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:4px}.container{max-width:1120px;margin:0 auto;padding:0 var(--space-4)}.section{padding:var(--space-12) 0}.section h2{font-size:1.5rem;margin:0 0 var(--space-2);letter-spacing:-.02em}.section .sub{margin:0 0 var(--space-6)}.muted,.section .sub{color:var(--muted-fg)}.muted{font-size:.9rem}.site-header{position:sticky;top:0;z-index:10;background:var(--card);border-bottom:1px solid var(--border)}.site-header .container{justify-content:space-between;min-height:64px;gap:var(--space-4)}.logo,.site-header .container{display:flex;align-items:center}.logo{gap:var(--space-2);font-weight:800;font-size:1.15rem;text-decoration:none;letter-spacing:-.03em}.logo img{display:block;height:36px;width:auto}.biz{font-style:normal}.biz span+span:before{content:"|";margin:0 8px;color:var(--border)}@media (max-width:600px){.logo img{height:30px}.biz span{display:block}.biz span+span:before{content:none}}.nav{display:flex;gap:var(--space-1);flex-wrap:wrap}.nav a{padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:600;min-height:44px;display:inline-flex;align-items:center;transition:background .2s}.nav a:hover{background:var(--muted)}.hero{padding:var(--space-16) 0 var(--space-12);text-align:center}.hero h1{font-size:clamp(1.9rem,5vw,3rem);line-height:1.25;margin:0 0 var(--space-4);letter-spacing:-.03em}.hero h1 em{font-style:normal;color:var(--primary)}.hero p{max-width:640px;margin:0 auto var(--space-8);color:var(--muted-fg);font-size:1.1rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:10px;font-weight:700;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:background .2s,transform .2s}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover)}.btn-ghost{background:var(--card);color:var(--primary);border-color:var(--primary)}.btn-ghost:hover{background:var(--muted)}.hero .actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-6);text-align:center}.stat b{display:block;font-size:2rem;color:var(--primary);letter-spacing:-.03em}.stat span{color:var(--muted-fg);font-size:.95rem}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-6);text-decoration:none;transition:border-color .2s,transform .2s;display:block}a.card:hover{border-color:var(--primary);transform:translateY(-2px)}.card h3{margin:0 0 var(--space-2);font-size:1.1rem}.card p{margin:0;color:var(--muted-fg);font-size:.95rem}.card .tag{display:inline-block;font-size:.8rem;font-weight:700;color:var(--accent);margin-bottom:var(--space-2)}.list{list-style:none;margin:0;padding:0;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.list li{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border)}.list li:last-child{border-bottom:0}.list a{text-decoration:none;font-weight:600}.list a:hover{color:var(--primary);text-decoration:underline}.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.chips a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--border);background:var(--card);border-radius:999px;text-decoration:none;transition:border-color .2s}.chips a:hover{border-color:var(--primary)}.search{width:100%;max-width:480px;min-height:48px;padding:0 16px;border:2px solid var(--border);border-radius:10px;background:var(--card);color:var(--fg);font:inherit}.label{display:block;font-weight:700;margin-bottom:var(--space-2)}.notice{background:var(--muted);border-radius:var(--radius);padding:var(--space-4) var(--space-6);color:var(--muted-fg);font-size:.9rem}.site-footer{background:var(--card);border-top:1px solid var(--border);padding:var(--space-8) 0;margin-top:var(--space-12)}.site-footer p{margin:var(--space-2) 0}@media (max-width:640px){.stats{grid-template-columns:1fr}.hero{padding:var(--space-12) 0 var(--space-8)}.nav a{padding:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.article-body{margin-top:var(--space-8);font-size:1.05rem;line-height:1.8}.article-body img{max-width:100%;height:auto}.article-body table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.article-body td,.article-body th{border:1px solid var(--border);padding:8px 10px}.article-body h2{margin-top:var(--space-12)}.slides{display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px}.slide,.slides{border-radius:var(--radius)}.slide{scroll-snap-align:start;display:block;overflow:hidden;background:var(--card);border:1px solid var(--border);text-decoration:none}.slide img{width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;display:block}.slide-text{aspect-ratio:3/1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;background:var(--primary);color:var(--on-primary);text-align:center}.slide-text strong{font-size:clamp(1.2rem,3vw,2rem)}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-8)}@media (max-width:640px){.slide img,.slide-text{aspect-ratio:16/9}}.kn-fade-ready{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.kn-fade-ready.kn-fade-in{opacity:1;transform:none}.covers{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.cover{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;transition:transform .2s,box-shadow .2s}.cover:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(15,44,88,.14)}.cover-art{position:relative;overflow:hidden;aspect-ratio:4/3;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:18px;color:#fff;background:linear-gradient(140deg,var(--tone) 0,color-mix(in srgb,var(--tone) 70%,#000) 100%)}.cover-art:before{content:"";position:absolute;top:16px;right:16px;width:46px;height:40px;opacity:.25;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 40'%3E%3Cg fill='%23fff'%3E%3Crect width='46' height='8' rx='1.5'/%3E%3Crect y='32' width='46' height='8' rx='1.5'/%3E%3Crect x='9' width='8' height='40'/%3E%3Crect x='29' width='8' height='40'/%3E%3C/g%3E%3C/svg%3E") no-repeat 50% /contain}.cover-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}.cover-art:has(img):after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,color-mix(in srgb,var(--tone) 88%,#000) 100%)}.cover:hover .cover-art img{transform:scale(1.05)}.cover-art b,.cover-art small,.cover-art:before{z-index:1}.cover-art b,.cover-art small{position:relative;text-shadow:0 1px 6px rgba(0,0,0,.35)}.cover-art small{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.cover-art b{font-size:1.35rem;letter-spacing:-.03em;line-height:1.3}.cover-body{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px}.cover-body strong{font-size:1rem}.cover-body span{color:var(--muted-fg);font-size:.9rem}.cover-body em{font-style:normal;font-weight:700;color:var(--primary);font-size:.85rem;margin-top:6px}@media (max-width:600px){.covers{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.cover-art b{font-size:1.1rem}.cover-art{padding:12px}}