@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Thin.woff2) format("woff2");font-weight:100;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraLight.woff2) format("woff2");font-weight:200;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Light.woff2) format("woff2");font-weight:300;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Black.woff2) format("woff2");font-weight:900;font-display:swap}:root{--font-sans: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "Fira Code", "Courier New", monospace}:root{font-family:var(--font-sans);color:#f2f2f8;background:#050508;--bg: #050508;--bg-elevated: #0e0e14;--bg-card: #12121a;--text: #f2f2f8;--text-muted: #8b8b9e;--text-dim: #5a5a6e;--accent: #8b7cf8;--accent-soft: #a89cf9;--accent-hover: #7a6ae8;--accent-glow: rgb(139 124 248 / 35%);--badge-bg: rgb(139 124 248 / 15%);--border: rgb(255 255 255 / 8%);--code-bg: #0a0a10;--preview-bg: #0a0a10;--header-h: 64px;--max-w: 1080px;--content-w: 960px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 60% 40% at 50% -10%,rgb(99 102 241 / 14%) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 100% 100%,rgb(139 92 246 / 10%) 0%,transparent 70%)}code{font-family:var(--font-mono);font-size:.9em;padding:.15em .45em;border-radius:4px;background:#ffffff0f;color:var(--accent-soft)}.site-header{position:sticky;top:0;z-index:100;width:100%;background:#050508cc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.site-header__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;max-width:var(--max-w);height:var(--header-h);margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem)}.site-header__brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--text);text-decoration:none;font-weight:600;font-size:.72rem;letter-spacing:.18em;justify-self:start}.site-header__brand:hover{color:var(--accent-soft)}.site-header__logo{width:32px;height:32px;object-fit:contain}.site-header__nav{display:flex;align-items:center;gap:2rem;justify-self:center}.site-header__nav a{font-size:.72rem;font-weight:500;letter-spacing:.14em;text-decoration:none;color:var(--text-muted);transition:color .2s}.site-header__nav a:hover,.site-header__nav a.is-active{color:var(--text)}.site-header__actions{display:flex;align-items:center;gap:1rem;justify-self:end}.site-header__actions a{font-size:.72rem;font-weight:500;letter-spacing:.08em;text-decoration:none;color:var(--text-muted);transition:color .2s}.site-header__actions a:hover{color:var(--accent-soft)}.site-header__version{font-size:.72rem;color:var(--text-dim);letter-spacing:.04em}.lang-switch{display:inline-flex;align-items:center;gap:.1rem;padding:.15rem;border-radius:999px;border:1px solid var(--border);background:#ffffff08}.lang-switch__btn{padding:.2rem .5rem;border:none;border-radius:999px;font-family:inherit;font-size:.7rem;font-weight:500;color:var(--text-dim);background:transparent;cursor:pointer;transition:color .2s,background .2s}.lang-switch__btn:hover{color:var(--text-muted)}.lang-switch__btn.is-active{color:var(--text);background:#8b7cf82e}main{position:relative;z-index:1;max-width:var(--content-w);margin:0 auto;padding:2.5rem clamp(1rem,4vw,2.5rem) 4rem}.page-header{margin-bottom:.5rem}.page-header__eyebrow{margin:0 0 .75rem;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-soft)}.page-header__title{margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;letter-spacing:-.03em}.page-header__desc{margin:0;max-width:36rem}h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;letter-spacing:-.02em}h2{color:var(--text)}p{color:var(--text-muted);line-height:1.7;font-weight:300}.sprite-sheet{margin-top:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.sprite-sheet h2{margin:0 0 .75rem;font-size:1.1rem}.sprite-sheet__desc{margin:0 0 1rem}.sprite-sheet__image-wrap{overflow-x:auto;padding:1rem;background:#000;border-radius:8px;border:1px solid var(--border)}.sprite-sheet__image{display:block;max-width:100%;height:auto;margin:0 auto;image-rendering:pixelated}.sprite-sheet__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem 1.5rem;margin:1rem 0 0;padding:1rem 0 0;border-top:1px solid var(--border)}.sprite-sheet__meta dt{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.sprite-sheet__meta dd{margin:.25rem 0 0;font-size:.95rem;color:var(--text)}.demo-grid{display:grid;gap:1.5rem;margin-top:2rem}@media(min-width:640px){.demo-grid{grid-template-columns:1fr 1fr}}.demo-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem;transition:border-color .2s}.demo-card:hover{border-color:#ffffff24}.demo-card h2{margin:0 0 1rem;font-size:1.1rem}.preview{display:flex;align-items:center;justify-content:center;min-height:160px;background:var(--preview-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem}.preview--sprite{min-height:200px;background:#000}.controls{display:flex;gap:.5rem;flex-wrap:wrap}button{padding:.5rem 1rem;border:none;border-radius:999px;background:linear-gradient(135deg,var(--accent) 0%,#6366f1 100%);color:#fff;font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:transform .15s,box-shadow .15s}button:hover{transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-glow)}.badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;border-radius:999px;background:var(--badge-bg);color:var(--accent-soft);border:1px solid rgb(139 124 248 / 20%);font-size:.75rem;font-weight:600}.code-section{margin-top:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.code-section h2{margin:0 0 1rem;font-size:1.1rem}.code-block{margin-bottom:1.25rem}.code-block:last-child{margin-bottom:0}.code-block h3{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:var(--text-dim);letter-spacing:.04em}.code-block pre{margin:0;padding:1rem;overflow-x:auto;background:var(--code-bg);color:#cdd6f4;border:1px solid var(--border);border-radius:8px;font-size:.8rem;line-height:1.6}.code-block code{font-family:var(--font-mono);white-space:pre;padding:0;background:transparent;color:inherit}@media(max-width:900px){.site-header__inner{grid-template-columns:1fr auto}.site-header__nav{display:none}}@media(max-width:640px){.site-header__version,.site-header__brand span{display:none}.demo-grid{grid-template-columns:1fr}}
