:root{--hanji: #f3ebd8;--hanji-deep: #e9dec3;--card: #faf5e8;--ink: #2b2218;--ink-soft: #5a4b38;--jjok: #27548d;--dancheong: #c03b2d;--gold: #e8a833;--celadon: #5b8a6e;--frame-inner: #8b7a5c;--pitch: #0e0b12;--battle-bg: #16121a;--stone: #2a2530;--stone-light: #373040;--brick: #3a3344;--bone: #d8cfb8;--wisp: #3fa8a0;--wisp-light: #6fd8cc;--font-display: "Galmuri14", "Galmuri11", monospace;--font-pixel: "Galmuri11", "Galmuri14", monospace;--font-body: "Noto Sans KR", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--battle-bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.pixel,.display{font-family:var(--font-pixel);image-rendering:pixelated;-webkit-font-smoothing:none;letter-spacing:.5px}.display{font-family:var(--font-display)}img{image-rendering:pixelated;display:block}a{color:inherit;text-decoration:none}.wrap{width:min(1080px,92vw);margin:0 auto}.pixel-card{background:var(--card);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);color:var(--ink)}.poke-frame{background:var(--card);border:3px solid var(--ink);padding:3px}.poke-frame>.poke-inner{border:3px solid var(--frame-inner);padding:18px}.pixel-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-pixel);font-size:16px;line-height:1;color:#fff4e0;background:var(--dancheong);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:14px 20px;cursor:pointer;transition:transform 80ms steps(2),box-shadow 80ms steps(2);-webkit-user-select:none;user-select:none}.pixel-btn:active{transform:translate(4px,4px);box-shadow:none}.pixel-btn.ghost{background:var(--card);color:var(--ink)}.pixel-btn.jjok{background:var(--jjok)}.pixel-btn small{font-size:10px;opacity:.85;display:block}.pixel-btn .btn-col{text-align:left;line-height:1.3}.nav{position:sticky;top:0;z-index:50;background:var(--battle-bg);border-bottom:3px solid var(--ink)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.nav-brand{display:flex;align-items:center;gap:12px}.nav-brand img{width:36px;height:36px}.nav-brand .brand-text{font-family:var(--font-pixel);font-size:13px;color:var(--hanji);letter-spacing:1px}.nav-brand .brand-text b{color:var(--dancheong);display:block;font-size:15px}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{font-family:var(--font-pixel);font-size:12px;color:var(--hanji);opacity:.8}.nav-links a:hover{color:var(--wisp-light);opacity:1}.nav-links .pixel-btn{padding:10px 16px;font-size:13px}@media(max-width:720px){.nav-links a:not(.pixel-btn){display:none}}.hero{position:relative;background:var(--battle-bg);overflow:hidden;border-bottom:3px solid var(--ink)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:16px 16px;pointer-events:none}.hero .wrap{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:72px 0 88px}@media(max-width:860px){.hero .wrap{grid-template-columns:1fr;text-align:center;padding:48px 0 64px}}.eyebrow{font-family:var(--font-pixel);font-size:13px;color:var(--wisp-light);letter-spacing:2px;margin-bottom:18px}.hero h1{font-family:var(--font-pixel);color:var(--hanji);font-size:clamp(20px,3.2vw,30px);letter-spacing:2px;line-height:1.5}.hero h1 .demon{display:block;font-family:var(--font-display);color:var(--dancheong);font-size:clamp(40px,8vw,76px);letter-spacing:1px;margin-top:6px;text-shadow:4px 4px 0 var(--pitch)}.tagline-rotator{margin:26px 0 8px;min-height:30px}.tagline-rotator .tl{font-family:var(--font-pixel);font-size:clamp(15px,2.4vw,20px);color:var(--wisp-light)}.tagline-rotator .tl .ko{color:var(--gold)}.hero-sub{color:#cabfa6;font-size:15px;line-height:1.7;max-width:460px;margin:14px 0 28px}@media(max-width:860px){.hero-sub{margin-left:auto;margin-right:auto}}.cta-row{display:flex;gap:14px;flex-wrap:wrap}@media(max-width:860px){.cta-row{justify-content:center}}.lang-note{margin-top:22px;font-family:var(--font-pixel);font-size:11px;color:#8a8270}.lang-note b{color:var(--gold)}.hero-art{display:flex;align-items:center;justify-content:center}.mascot{position:relative;width:min(340px,70vw);aspect-ratio:1;display:grid;place-items:center}.mascot .wisp-glow{position:absolute;top:8%;right:8%;bottom:8%;left:8%;background:radial-gradient(circle,rgba(111,216,204,.28) 0%,rgba(63,168,160,.14) 45%,transparent 70%);animation:flicker 1.4s steps(2) infinite}.mascot img{position:relative;width:78%;border:3px solid var(--ink);box-shadow:7px 7px 0 var(--pitch);animation:bob .8s steps(2) infinite}@keyframes flicker{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.wisp-dot{position:absolute;width:10px;height:10px;background:var(--wisp-light);box-shadow:0 0 0 3px #3fa8a059}.wisp-dot.a{top:12%;left:6%;animation:bob 1.1s steps(2) infinite}.wisp-dot.b{bottom:16%;right:8%;animation:bob .9s steps(2) infinite reverse}section.band{background:var(--hanji);border-bottom:3px solid var(--ink);padding:72px 0}section.band.deep{background:var(--hanji-deep)}section.band.dungeon{background:var(--battle-bg)}.section-head{text-align:center;margin-bottom:48px}.section-head .kicker{font-family:var(--font-pixel);font-size:12px;color:var(--dancheong);letter-spacing:2px}.section-head h2{font-family:var(--font-pixel);font-size:clamp(20px,3vw,28px);color:var(--ink);margin-top:12px;letter-spacing:1px}.dungeon .section-head h2{color:var(--hanji)}.section-head p{margin-top:14px;color:var(--ink-soft);font-size:15px}.dungeon .section-head p{color:#b3a98f}.loop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}@media(max-width:860px){.loop-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.loop-grid{grid-template-columns:1fr}}.loop-card{background:var(--card);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:22px 20px}.loop-card .step-no{font-family:var(--font-display);font-size:28px;color:var(--card);background:var(--jjok);border:3px solid var(--ink);width:48px;height:48px;display:grid;place-items:center;margin-bottom:16px}.loop-card:nth-child(2) .step-no{background:var(--gold)}.loop-card:nth-child(3) .step-no{background:var(--dancheong)}.loop-card:nth-child(4) .step-no{background:var(--celadon)}.loop-card h3{font-family:var(--font-pixel);font-size:15px;color:var(--ink);margin-bottom:10px;line-height:1.5}.loop-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.65}.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:860px){.feat-grid{grid-template-columns:1fr}}.feat{background:var(--card);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:24px}.feat .glyph{font-size:30px;line-height:1;margin-bottom:14px}.feat h3{font-family:var(--font-pixel);font-size:15px;margin-bottom:10px;color:var(--ink)}.feat p{font-size:14px;color:var(--ink-soft);line-height:1.7}.demon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}@media(max-width:860px){.demon-grid{grid-template-columns:1fr 1fr}}.demon{background:var(--stone);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--pitch);padding:22px 18px;text-align:center}.demon .face{width:84px;height:84px;margin:0 auto 16px;display:grid;place-items:center;font-size:44px;background:var(--pitch);border:3px solid var(--ink);position:relative}.demon .face:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 3px #3fa8a02e}.demon h3{font-family:var(--font-pixel);font-size:14px;color:var(--hanji)}.demon .kr{font-family:var(--font-display);font-size:20px;color:var(--gold);margin:6px 0 8px}.demon p{font-size:12.5px;color:#b3a98f;line-height:1.6}.demon .boss-tag{display:inline-block;margin-top:12px;font-family:var(--font-pixel);font-size:10px;color:var(--wisp-light);border:2px solid var(--wisp);padding:3px 8px}.lang-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:760px;margin:0 auto}.lang-chips .chip{font-family:var(--font-pixel);font-size:13px;background:var(--card);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);padding:10px 14px;color:var(--ink)}.cta-band{background:var(--battle-bg);padding:88px 0;text-align:center}.cta-band .poke-frame{max-width:640px;margin:0 auto;background:var(--stone)}.cta-band .poke-inner{border-color:var(--frame-inner);text-align:center;padding:40px 28px}.cta-band h2{font-family:var(--font-pixel);color:var(--hanji);font-size:clamp(18px,3vw,26px);line-height:1.6}.cta-band h2 .demon{color:var(--dancheong);font-family:var(--font-display);font-size:clamp(30px,6vw,48px);display:block;margin-top:8px}.cta-band p{color:#b3a98f;margin:18px 0 28px;font-size:14px}.cta-band .cta-row{justify-content:center}footer{background:var(--pitch);color:#8a8270;padding:32px 0;border-top:3px solid var(--ink)}footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}footer .foot-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-pixel);font-size:12px;color:var(--hanji)}footer .foot-brand img{width:28px;height:28px}footer .foot-links{display:flex;gap:18px}footer .foot-links a{font-family:var(--font-pixel);font-size:12px;color:#b3a98f}footer .foot-meta{font-size:12px;font-family:var(--font-pixel)}footer a:hover{color:var(--wisp-light)}.legal{background:var(--hanji);border-bottom:3px solid var(--ink);padding:64px 0 80px;min-height:70vh}.legal .wrap{width:min(820px,92vw)}.legal-head{border-bottom:3px solid var(--ink);padding-bottom:24px;margin-bottom:36px}.legal-head .kicker{font-family:var(--font-pixel);font-size:12px;color:var(--dancheong);letter-spacing:2px}.legal-head h1{font-family:var(--font-pixel);font-size:clamp(22px,4vw,32px);color:var(--ink);margin-top:12px;letter-spacing:1px}.legal-head .legal-eff{margin-top:12px;font-family:var(--font-pixel);font-size:12px;color:var(--ink-soft)}.legal-body{color:var(--ink);font-size:15px;line-height:1.8}.legal-body>p{margin-bottom:18px}.legal-body h2{font-family:var(--font-pixel);font-size:16px;color:var(--ink);letter-spacing:.5px;margin:36px 0 14px;padding-left:12px;border-left:5px solid var(--jjok)}.legal-body ul{margin:0 0 18px;padding-left:22px}.legal-body li{margin-bottom:10px}.legal-body a{color:var(--jjok);text-decoration:underline;text-underline-offset:2px}.legal-body a:hover{color:var(--dancheong)}.legal-body strong{color:var(--ink)}.legal-back{margin-top:44px;padding-top:24px;border-top:3px solid var(--ink)}.legal-back a{font-family:var(--font-pixel);font-size:13px;color:var(--dancheong)}.legal-back a:hover{color:var(--jjok)}
