:root{--shell:#2b2440;--shell2:#3a3157;--berry:#d6336c;--paper:#f4f1e6;--ink:#1d1a26;--lcd:#9bbc0f}
*{box-sizing:border-box}
body{margin:0;background:var(--shell);color:#e9e4f5;font-family:'VT323',monospace;font-size:20px;min-height:100vh;
background-image:radial-gradient(circle at 20% 0%,#4a3d70 0,transparent 50%),radial-gradient(circle at 90% 100%,#5a2343 0,transparent 45%)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px);z-index:100}
.pix{font-family:'Press Start 2P',monospace}
canvas.px{image-rendering:pixelated;image-rendering:crisp-edges;width:100%;height:auto;display:block}
.paper{background:var(--paper);color:var(--ink);padding:14px 12px 10px;position:relative;box-shadow:0 8px 18px rgba(0,0,0,.45);transition:transform .2s;cursor:pointer}
.paper::before,.paper::after{content:"";position:absolute;left:0;right:0;height:8px;background:linear-gradient(-45deg,transparent 4px,var(--paper) 0),linear-gradient(45deg,transparent 4px,var(--paper) 0);background-size:8px 8px}
.paper::before{top:-8px;transform:rotate(180deg)}
.paper::after{bottom:-8px}
.paper:hover{transform:rotate(-1.5deg) translateY(-4px)}
.paper:nth-child(even):hover{transform:rotate(1.5deg) translateY(-4px)}
.btn{font-family:'Press Start 2P';font-size:10px;padding:12px 14px;border-radius:999px;background:var(--berry);color:#fff;border:none;box-shadow:0 4px 0 #7a1638;cursor:pointer;text-transform:uppercase}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 #7a1638}
.btn.ghost{background:var(--shell2);box-shadow:0 4px 0 #1a1528}
.slot{border:4px dashed #6c5fa0;border-radius:10px 10px 2px 2px;background:#1f1a30;transition:.2s}
.slot.over{border-color:var(--berry);background:#33203a}
.rise{animation:rise .5s both}
@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1}}
.feed{animation:feed .3s steps(4) infinite}
@keyframes feed{50%{transform:translateY(1px)}}
input,select{font-family:'VT323';font-size:20px;background:#1a1528;color:#e9e4f5;border:2px solid #6c5fa0;padding:6px 10px;border-radius:4px}
a{color:#ff8fb6}