:root{--font-pixel:var(--font-press-start), monospace;--font-retro:var(--font-vt323), monospace;--bg-deep:#0d0d0d;--bg-panel:#111114;--bg-card:#161619;--bg-dialog:#1a1a1e;--border-metal:#2a2a30;--border-bolt:#3a3a42;--neon-green:#39ff14;--neon-green-dim:#39ff1440;--neon-orange:#ff4500;--neon-orange-dim:#ff450040;--neon-purple:#9d00ff;--neon-purple-dim:#9d00ff40;--neon-yellow:#facc15;--neon-cyan:#06b6d4;--neon-pink:#ec4899;--hp-green:#39ff14;--hp-green-bg:#39ff1433;--mp-blue:#06b6d4;--mp-blue-bg:#06b6d433;--exp-purple:#9d00ff;--exp-purple-bg:#9d00ff33;--crit-yellow:#facc15;--crit-red:#ff4500;--corner-size:14px}.scanline-overlay{z-index:9999;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000000f 2px 4px);position:fixed;inset:0}.pixel-texture{background-image:radial-gradient(circle at 1px 1px,#ffffff04 1px,#0000 0);background-size:4px 4px}.retro-card{background:var(--bg-panel);border:2px solid var(--border-metal);position:relative}.l-corner:before,.l-corner:after{content:"";width:var(--corner-size);height:var(--corner-size);z-index:1;border-style:solid;position:absolute}.l-corner:before{border-width:3px 0 0 3px;border-color:var(--neon-orange);top:-1px;left:-1px}.l-corner:after{border-width:0 3px 3px 0;border-color:var(--neon-orange);bottom:-1px;right:-1px}.l-corner-inner:before,.l-corner-inner:after{content:"";width:var(--corner-size);height:var(--corner-size);z-index:1;border-style:solid;position:absolute}.l-corner-inner:before{border-width:3px 3px 0 0;border-color:var(--neon-orange);top:-1px;right:-1px}.l-corner-inner:after{border-width:0 0 3px 3px;border-color:var(--neon-orange);bottom:-1px;left:-1px}.retro-card:before{content:"";background:var(--border-bolt);border:1px solid var(--border-metal);z-index:2;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;left:6px}.retro-border{border:2px solid var(--border-bolt);image-rendering:pixelated}.retro-button{font-family:var(--font-pixel);letter-spacing:1px;border:2px solid var(--border-bolt);background:var(--bg-card);color:var(--text-primary,#e8e8ec);cursor:pointer;image-rendering:pixelated;text-transform:uppercase;padding:10px 20px;font-size:10px;transition:transform 50ms,box-shadow 50ms;position:relative;transform:translateY(0);box-shadow:0 4px #000,0 5px 8px #00000080}.retro-button:hover{background:var(--bg-dialog)}.retro-button:active{transform:translateY(4px);box-shadow:0 0 #000,0 1px 2px #00000080}.retro-button--primary{border-color:var(--neon-purple);color:var(--neon-purple);text-shadow:0 0 10px var(--neon-purple-dim)}.retro-button--primary:hover{box-shadow:0 4px 0 #000, 0 0 20px var(--neon-purple-dim);background:#9d00ff14}.retro-button--primary:active{transform:translateY(4px);box-shadow:0 0 #000,0 1px 2px #00000080}.retro-button--danger{border-color:var(--neon-orange);color:var(--neon-orange);text-shadow:0 0 10px var(--neon-orange-dim)}.retro-button--danger:hover{box-shadow:0 4px 0 #000, 0 0 20px var(--neon-orange-dim);background:#ff450014}.rpg-bar{border:2px solid var(--border-metal);height:18px;image-rendering:pixelated;background:#0a0a0c;position:relative;overflow:hidden}.rpg-bar__fill{height:100%;transition:width .6s cubic-bezier(.22,1,.36,1);position:relative}.rpg-bar__fill:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 7px,#0003 7px 9px);position:absolute;inset:0}.rpg-bar--hp .rpg-bar__fill{background:linear-gradient(#4aff2a,#1e9c00)}.rpg-bar--mp .rpg-bar__fill{background:linear-gradient(#22d3ee,#0891b2)}.rpg-bar--exp .rpg-bar__fill{background:linear-gradient(#c77dff,#7b2fbe)}.rpg-bar__label{font-family:var(--font-pixel);color:#fff;text-shadow:1px 1px #000c;z-index:2;font-size:7px;line-height:1;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.rpg-bar__value{font-family:var(--font-pixel);color:#fff;text-shadow:1px 1px #000c;z-index:2;font-size:7px;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.retro-dialog{background:var(--bg-dialog);outline:2px solid var(--bg-deep);outline-offset:2px;border:3px solid #333340;min-height:60px;padding:16px 20px;position:relative}.retro-dialog:before{content:"";pointer-events:none;border:1px solid #ffffff0a;position:absolute;inset:2px}.critical-hit{animation:.6s cubic-bezier(.22,1,.36,1) forwards crit-pop}@keyframes crit-pop{0%{opacity:0;transform:scale(.3)translateY(20px)}40%{opacity:1;transform:scale(1.4)translateY(-10px)}60%{transform:scale(.95)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}.screen-shake{animation:.3s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}10%{transform:translate(-4px,-2px)}20%{transform:translate(4px,2px)}30%{transform:translate(-3px,3px)}40%{transform:translate(3px,-3px)}50%{transform:translate(-2px,1px)}60%{transform:translate(2px,-1px)}70%{transform:translate(-1px,2px)}80%{transform:translate(1px,-2px)}90%{transform:translate(-1px)}}.battle-flash{animation:1.2s ease-out forwards battle-transition}@keyframes battle-transition{0%{opacity:0}12%{opacity:1;background:#fff}20%{opacity:0}32%{opacity:1;background:#fff}40%{opacity:0}52%{opacity:.8;background:#fff}60%{opacity:0}to{opacity:0}}.fire-border{position:relative}.fire-border:after{content:"";z-index:-1;filter:blur(4px);opacity:.6;background:linear-gradient(45deg,#ff4500,#ff6b00,#facc15,#ff6b00,#ff4500,#ff6b00,#facc15,#ff6b00,#ff4500) 0 0/400% 400%;animation:2s ease-in-out infinite fire-dance;position:absolute;inset:-3px}@keyframes fire-dance{0%,to{background-position:0%}25%{background-position:100% 0}50%{background-position:100% 100%}75%{background-position:0 100%}}.evolution-glow{animation:2s ease-in-out infinite evo-pulse}@keyframes evo-pulse{0%,to{box-shadow:0 0 10px var(--neon-purple-dim), 0 0 30px #9d00ff1a}50%{box-shadow:0 0 20px var(--neon-purple-dim), 0 0 60px #9d00ff33, 0 0 100px #9d00ff14}}.evo-spark{--evo-color:var(--neon-cyan);color:var(--neon-cyan)}.evo-flame{--evo-color:var(--neon-orange);color:var(--neon-orange)}.evo-inferno{--evo-color:#f20;color:#f20}.evo-phoenix{--evo-color:var(--neon-purple);color:var(--neon-purple)}.font-pixel{font-family:var(--font-pixel);letter-spacing:.5px}.font-retro{font-family:var(--font-retro);letter-spacing:.5px}.glow-orange{text-shadow:0 0 10px var(--neon-orange-dim), 0 0 30px var(--neon-orange-dim)}.glow-green{text-shadow:0 0 10px var(--neon-green-dim), 0 0 30px var(--neon-green-dim)}.glow-purple{text-shadow:0 0 10px var(--neon-purple-dim), 0 0 30px var(--neon-purple-dim)}.level-badge{min-width:32px;height:22px;font-family:var(--font-pixel);background:var(--bg-deep);border:2px solid var(--border-bolt);color:#dedede;color:lab(88.4% 0 .0000119209);justify-content:center;align-items:center;gap:2px;padding:0 6px;font-size:8px;line-height:1;display:inline-flex}.attr-power{color:var(--neon-purple)}.attr-resilience{color:var(--neon-green)}.attr-charisma{color:var(--neon-pink)}.attr-wisdom{color:var(--neon-yellow)}.attr-agility{color:var(--neon-cyan)}.attr-stability{color:#6366f1}.sprite-float{animation:2s ease-in-out infinite sprite-bob}@keyframes sprite-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.exp-gain{animation:1s ease-out forwards exp-flash}@keyframes exp-flash{0%{opacity:1;color:var(--exp-purple);transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-30px)scale(1.2)}}.typewriter{white-space:nowrap;border-right:2px solid var(--neon-orange);animation:2s steps(40,end) forwards typewriter-reveal,.6s step-end infinite typewriter-blink;overflow:hidden}@keyframes typewriter-reveal{0%{width:0}to{width:100%}}@keyframes typewriter-blink{50%{border-color:#0000}}.holo-border{position:relative}.holo-border:before{content:"";background:conic-gradient(from var(--holo-angle,0deg), var(--neon-purple), var(--neon-pink), var(--neon-yellow), var(--neon-green), var(--neon-cyan), var(--neon-purple));z-index:-1;opacity:.4;filter:blur(3px);animation:4s linear infinite holo-rotate;position:absolute;inset:-2px}@keyframes holo-rotate{to{--holo-angle:360deg}}@property --holo-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
*{image-rendering:pixelated;border-radius:0!important}[data-slot=navbar]{z-index:50!important;position:fixed!important;top:0!important;left:0!important;right:0!important}[data-slot=navbar] nav{flex-direction:row!important;align-items:center!important;gap:0!important;display:flex!important}[data-slot=navbar] nav a,[data-slot=navbar] nav button{white-space:nowrap!important;flex-direction:column!important;align-items:center!important;padding:8px 10px!important;font-size:14px!important;display:inline-flex!important}[data-slot=navbar] .text-xl{font-size:18px!important}[data-slot=navbar] button[class*=bg-gradient]{padding:6px 12px!important;font-size:8px!important}.nes-container{background:var(--bg-panel,#111114)!important;color:var(--text-primary,#e8e8ec)!important;border-color:#3a3a42!important}.nes-container.is-dark{background:var(--bg-deep,#0d0d0d)!important;color:#e8e8ec!important;border-color:#3a3a42!important}.nes-container.is-dark:after{color:#e8e8ec!important}.nes-container.with-title>.title{background:var(--bg-deep,#0d0d0d)!important;color:var(--neon-orange,#ff4500)!important;font-family:var(--font-pixel)!important;font-size:10px!important}.nes-btn{font-family:var(--font-pixel)!important;color:#e8e8ec!important;background:var(--bg-card,#161619)!important;text-transform:uppercase!important;letter-spacing:1px!important;border-color:#3a3a42!important;font-size:10px!important}.nes-btn:hover{background:var(--bg-dialog,#1a1a1e)!important}.nes-btn:active,.nes-btn:focus{outline:none!important}.nes-btn.is-primary{color:var(--neon-purple,#9d00ff)!important;border-color:var(--neon-purple,#9d00ff)!important;background:#9d00ff33!important}.nes-btn.is-success{color:var(--neon-green,#39ff14)!important;border-color:var(--neon-green,#39ff14)!important;background:#39ff141f!important}.nes-btn.is-warning{color:var(--neon-yellow,#facc15)!important;border-color:var(--neon-yellow,#facc15)!important;background:#facc151f!important}.nes-btn.is-error{color:var(--neon-orange,#ff4500)!important;border-color:var(--neon-orange,#ff4500)!important;background:#ff450026!important}.nes-progress{border-color:var(--border-metal,#2a2a30)!important;background:#0a0a0c!important;height:20px!important}.nes-balloon{background:var(--bg-dialog,#1a1a1e)!important;color:#e8e8ec!important;border-color:#3a3a42!important}.nes-balloon:after,.nes-balloon:before{color:var(--bg-dialog,#1a1a1e)!important}.nes-input,.nes-textarea,.nes-select select{background:var(--bg-deep,#0d0d0d)!important;color:#e8e8ec!important;font-family:var(--font-retro)!important;border-color:#3a3a42!important;font-size:18px!important}.nes-badge{font-family:var(--font-pixel)!important}.glass-card,.glass-card-strong{background:var(--bg-panel,#111114)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:3px solid var(--border-metal,#2a2a30)!important;border-radius:0!important;box-shadow:4px 4px #000!important}.shadow-lg,.shadow-md,.shadow-sm,.shadow-xl,[class*=shadow-violet],[class*=shadow-amber],[class*=shadow-fuchsia]{box-shadow:4px 4px #000!important}[class*=rounded-full]{border-radius:0!important}::-webkit-scrollbar{background:var(--bg-deep,#0d0d0d);width:12px}::-webkit-scrollbar-thumb{background:var(--border-bolt,#3a3a42);border:2px solid var(--bg-deep,#0d0d0d)}::-webkit-scrollbar-track{background:var(--bg-deep,#0d0d0d)}.rounded,.rounded-md,.rounded-lg,.rounded-xl,.rounded-2xl,.rounded-3xl,.rounded-full,.rounded-sm,.rounded-xs,button,input,textarea,select,a{border-radius:0!important}.game-dialog{background:var(--bg-dialog,#1a1a1e);font-family:var(--font-retro);color:#e8e8ec;border:4px solid #3a3a42;padding:16px 20px;font-size:20px;line-height:1.5;position:relative;box-shadow:4px 4px #000,inset 0 0 0 2px #ffffff08}.game-dialog:after{content:"▼";color:var(--neon-orange,#ff4500);font-size:10px;animation:.8s ease-in-out infinite dialog-arrow;position:absolute;bottom:6px;right:10px}@keyframes dialog-arrow{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.pixel-bar{background:#0a0a0c;border:3px solid #3a3a42;height:20px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #000}.pixel-bar-fill{height:100%;transition:width .8s cubic-bezier(.22,1,.36,1);position:relative}.pixel-bar-fill:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 6px,#00000040 6px 8px);position:absolute;inset:0}.pixel-bar--hp .pixel-bar-fill{background:linear-gradient(#4aff2a 0%,#1e9c00 100%)}.pixel-bar--mp .pixel-bar-fill{background:linear-gradient(#22d3ee 0%,#0891b2 100%)}.pixel-bar--exp .pixel-bar-fill{background:linear-gradient(#c77dff 0%,#7b2fbe 100%)}.pixel-bar-label{font-family:var(--font-pixel);color:#fff;text-shadow:1px 1px #000,-1px -1px #000;z-index:2;font-size:8px;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.pixel-bar-value{font-family:var(--font-pixel);color:#fff;text-shadow:1px 1px #000,-1px -1px #000;z-index:2;font-size:8px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.pixel-flash{animation:.3s ease-out px-flash}@keyframes px-flash{0%{filter:brightness(3)}to{filter:brightness()}}.shiny-effect{position:relative;overflow:visible}.shiny-effect:after{content:"✦";color:var(--neon-yellow,#facc15);text-shadow:0 0 8px #facc1599;z-index:10;font-size:16px;animation:1.5s ease-in-out infinite shiny-sparkle;position:absolute;top:-4px;right:-4px}@keyframes shiny-sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.5;transform:scale(1.3)rotate(180deg)}}.nes-divider{border:none;border-top:4px solid var(--border-metal,#2a2a30);margin:24px 0;box-shadow:0 2px #000}
.rpgui-content{image-rendering:pixelated;font-family:var(--font-pixel,"Press Start 2P", monospace)!important;color:#e8e8ec!important;font-size:10px!important}.rpgui-container.framed{border-style:solid;box-shadow:4px 4px #000;background:#111114 url(/rpgui/background-image.png)!important;border-width:15px!important;border-image:url(/rpgui/border-image.png) 7 repeat!important;padding:16px!important}.rpgui-container.framed-golden{border-style:solid;box-shadow:4px 4px #000,0 0 20px #facc151a;background:#161619 url(/rpgui/background-image-golden.png)!important;border-width:15px!important;border-image:url(/rpgui/border-image-golden.png) 7 repeat!important;padding:16px!important}.rpgui-container.framed-golden-2{border-style:solid;box-shadow:4px 4px #000,0 0 30px #facc1526;background:#1a1a1e url(/rpgui/background-image-golden2.png)!important;border-width:18px!important;border-image:url(/rpgui/border-image-golden2.png) 4 repeat!important;padding:16px!important}.rpgui-container.framed-grey{border-style:solid;background:#0d0d0d url(/rpgui/background-image-grey.png)!important;border-width:8px!important;border-image:url(/rpgui/border-image-grey.png) 3 repeat!important;padding:12px!important}.rpgui-button{text-shadow:-2px 0 #000,0 2px #000,2px 0 #000,0 -2px #000;text-transform:uppercase;letter-spacing:1px;cursor:pointer;image-rendering:pixelated;background:url(/rpgui/button.png) 50%/100% 100% no-repeat;border:none;min-height:36px;padding:8px 20px;line-height:1;display:inline-block;position:relative;font-family:var(--font-pixel)!important;color:#e8e8ec!important;font-size:10px!important}.rpgui-button:hover{color:#facc15!important;background-image:url(/rpgui/button-hover.png)!important}.rpgui-button:active{background-image:url(/rpgui/button-down.png)!important;padding-top:10px!important}.rpgui-button.golden{color:#facc15!important;background-image:url(/rpgui/button-golden.png)!important}.rpgui-button.golden:hover{background-image:url(/rpgui/button-golden-hover.png)!important}.rpgui-progress{height:22px;image-rendering:pixelated;position:relative;overflow:visible;background:url(/rpgui/progress-bar-track.png) 0 0/auto 100% repeat-x!important;border:none!important}.rpgui-progress:before{content:"";width:8px;height:100%;image-rendering:pixelated;z-index:2;background:url(/rpgui/progress-bar-left.png) 0 0/100% 100% no-repeat;position:absolute;top:0;left:-4px}.rpgui-progress:after{content:"";width:8px;height:100%;image-rendering:pixelated;z-index:2;background:url(/rpgui/progress-bar-right.png) 0 0/100% 100% no-repeat;position:absolute;top:0;right:-4px}.rpgui-progress .rpgui-progress-fill{height:100%;image-rendering:pixelated;background:url(/rpgui/progress.png) 0 0/auto 100% repeat-x;transition:width .6s cubic-bezier(.22,1,.36,1)}.rpgui-progress .rpgui-progress-fill.red{background-image:url(/rpgui/progress-red.png)!important}.rpgui-progress .rpgui-progress-fill.green{background-image:url(/rpgui/progress-green.png)!important}.rpgui-progress .rpgui-progress-fill.blue{background-image:url(/rpgui/progress-blue.png)!important}.rpgui-icon{width:32px;height:32px;image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block}.rpgui-icon.sword{background-image:url(/rpgui/icons/sword.png)}.rpgui-icon.shield{background-image:url(/rpgui/icons/shield.png)}.rpgui-icon.potion-red{background-image:url(/rpgui/icons/potion-red.png)}.rpgui-icon.potion-green{background-image:url(/rpgui/icons/potion-green.png)}.rpgui-icon.potion-blue{background-image:url(/rpgui/icons/potion-blue.png)}.rpgui-icon.exclamation{background-image:url(/rpgui/icons/exclamation.png)}.rpgui-icon.armor{background-image:url(/rpgui/icons/armor-slot.png)}.rpgui-icon.helmet{background-image:url(/rpgui/icons/helmet-slot.png)}.rpgui-icon.ring{background-image:url(/rpgui/icons/ring-slot.png)}.rpgui-icon.magic{background-image:url(/rpgui/icons/magic-slot.png)}.rpgui-icon.weapon{background-image:url(/rpgui/icons/weapon-slot.png)}.rpgui-icon.shoes{background-image:url(/rpgui/icons/shoes-slot.png)}.rpgui-icon.empty{background-image:url(/rpgui/icons/empty-slot.png)}.rpgui-icon.small{width:20px;height:20px}.rpgui-icon.large{width:48px;height:48px}.rpgui-hr{height:8px;image-rendering:pixelated;background:url(/rpgui/hr.png) 50%/auto 100% repeat-x;border:none;margin:12px 0}.rpgui-hr.golden{background-image:url(/rpgui/hr-golden.png)!important}.rpgui-cursor-default{cursor:url(/rpgui/cursor/default.png),auto!important}.rpgui-cursor-point{cursor:url(/rpgui/cursor/point.png),pointer!important}.rpgui-cursor-grab{cursor:url(/rpgui/cursor/grab.png),grab!important}.rpgui-content input[type=text],.rpgui-content textarea{color:#e8e8ec!important;font-family:var(--font-retro)!important;background:#1a1a1e!important;border:3px solid #3a3a42!important;outline:none!important;padding:6px 10px!important;font-size:18px!important}.rpgui-content input[type=text]:focus,.rpgui-content textarea:focus{border-color:#ff4500!important;box-shadow:0 0 10px #ff450033!important}.rpgui-checkbox,.rpgui-radio{image-rendering:pixelated}.rpgui-container.framed.neon-orange{box-shadow:4px 4px #000,0 0 15px #ff450026!important}.rpgui-container.framed.neon-green{box-shadow:4px 4px #000,0 0 15px #39ff1426!important}.rpgui-container.framed.neon-purple{box-shadow:4px 4px #000,0 0 15px #9d00ff26!important}.rpgui-tooltip{font-family:var(--font-pixel);color:#e8e8ec;text-shadow:-1px 0 #000,0 1px #000,1px 0 #000,0 -1px #000;z-index:1000;pointer-events:none;max-width:200px;image-rendering:pixelated;background:#111114 url(/rpgui/background-image.png);border-style:solid;border-width:10px;border-image:url(/rpgui/border-image.png) 7 repeat;padding:8px 12px;font-size:8px;position:absolute}.rpgui-draggable{cursor:url(/rpgui/cursor/grab.png),grab!important}.rpgui-draggable:active{cursor:url(/rpgui/cursor/grab.png),grabbing!important}