:root{--bg:#0d0d12;--surface:#16161f;--text:#ececf1;--muted:#9a9aab;--accent:#8b7bff;--accent-2:#3fd0c9;--radius:14px;--max:1100px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font:17px/1.6 system-ui,-apple-system,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif}a{color:inherit;text-decoration:none}.nav{max-width:var(--max);justify-content:space-between;align-items:center;margin:0 auto;padding:22px 20px;display:flex}.brand{letter-spacing:-.02em;font-weight:800}.brand span{color:var(--accent);margin-left:4px}.nav nav a{color:var(--muted);margin-left:22px;font-size:15px}.nav nav a:hover{color:var(--text)}main{max-width:var(--max);margin:0 auto;padding:0 20px}.hero{padding:90px 0 80px}.eyebrow{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;font-size:14px}h1{letter-spacing:-.03em;font-size:clamp(38px,7vw,72px);line-height:1.05}h1 em{background:linear-gradient(90deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.lede{color:var(--muted);max-width:560px;margin-top:22px;font-size:19px}.cta{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.btn{border:1px solid #2c2c3a;border-radius:999px;padding:12px 22px;font-size:15px;font-weight:600;transition:transform .15s,border-color .15s;display:inline-block}.btn:hover{border-color:var(--accent);transform:translateY(-1px)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#0d0d12}.section{border-top:1px solid #1f1f2a;padding:70px 0}.section h2{letter-spacing:-.02em;margin-bottom:26px;font-size:28px}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.card{background:var(--surface);border-radius:var(--radius);border:1px solid #22222e;padding:18px}.card h3{margin:16px 0 6px;font-size:19px}.card p{color:var(--muted);font-size:15px}.thumb{aspect-ratio:16/10;border-radius:10px}.t1{background:linear-gradient(135deg,#2b1f6b,#8b7bff)}.t2{background:linear-gradient(135deg,#0f3b3a,#3fd0c9)}.t3{background:linear-gradient(135deg,#4a1d3d,#ff7bb5)}.tag{color:var(--accent-2);border:1px solid #23413f;border-radius:999px;margin-top:14px;padding:3px 10px;font-size:12px;display:inline-block}.about p,.contact p{color:var(--muted);max-width:640px;margin-bottom:20px}.footer{max-width:var(--max);color:var(--muted);border-top:1px solid #1f1f2a;margin:0 auto;padding:40px 20px;font-size:14px}@media (width<=560px){.nav nav a{margin-left:14px}.hero{padding:60px 0 50px}}:root{--line:#1f1f2a;--card-line:#22222e}.nav{flex-wrap:wrap;gap:16px}.nav nav{flex-wrap:wrap;align-items:center;row-gap:6px;display:flex}.nav nav a[aria-current=page]{color:var(--text)}.nav .lang{border:1px solid #2c2c3a;border-radius:999px;padding:3px 10px;font-size:13px}.nav .lang:hover{border-color:var(--accent)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:26px;display:flex}.section-head h2{margin-bottom:0}.section-head p{color:var(--muted);font-size:15px}.more{color:var(--accent-2);font-size:15px}.more:hover{text-decoration:underline}.card{flex-direction:column;transition:transform .15s,border-color .15s;display:flex}a.card:hover{border-color:#3a3a52;transform:translateY(-2px)}.card .thumb{object-fit:cover;background:#1d1d28;width:100%;height:auto;display:block}.card .meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:14px;display:flex}.card .meta .tag{margin-top:0}.tag.released{color:#7be08f;border-color:#234a2c}.tag.prototype{color:#ffb86b;border-color:#4a3620}.kind{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.posts{gap:12px;list-style:none;display:grid}.posts a{background:var(--surface);border:1px solid var(--card-line);border-radius:var(--radius);padding:16px 18px;transition:border-color .15s;display:block}.posts a:hover{border-color:#3a3a52}.posts time{color:var(--muted);font-size:13px}.posts h3{margin:2px 0 4px;font-size:17px}.posts p{color:var(--muted);font-size:15px}.empty{color:var(--muted)}.page{padding:50px 0 70px}.back{color:var(--muted);margin-bottom:26px;font-size:15px;display:inline-block}.back:hover{color:var(--text)}.page h1{font-size:clamp(32px,5.5vw,52px)}.page .lede{margin-top:14px}.page .meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.page .meta .tag{margin-top:0}.page time{color:var(--muted);font-size:14px}.cover{border-radius:var(--radius);border:1px solid var(--card-line);width:100%;height:auto;margin:34px 0 10px;display:block}.caption{color:var(--muted);font-size:13px}.notice{background:var(--surface);color:var(--muted);border:1px solid #2c2c3a;border-radius:10px;margin-top:20px;padding:10px 14px;font-size:14px}.prose{max-width:720px;margin-top:34px}.prose>*+*{margin-top:1em}.prose h2{letter-spacing:-.01em;margin-top:1.8em;font-size:24px}.prose h3{margin-top:1.5em;font-size:19px}.prose p,.prose li{color:#cfcfda}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.35em}.prose a{color:var(--accent-2);text-underline-offset:3px;text-decoration:underline}.prose strong{color:var(--text)}.prose code{background:var(--surface);border:1px solid var(--card-line);border-radius:6px;padding:1px 6px;font-size:.9em}.prose img,.prose video,.prose iframe{border-radius:10px;max-width:100%;height:auto}.prose iframe{aspect-ratio:16/9;border:0;width:100%}.related{border-top:1px solid var(--line);margin-top:60px;padding-top:40px}.related h2{margin-bottom:18px;font-size:22px}:lang(ko){word-break:keep-all}.grid.projects{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:22px}
