:root{--bg: #030809;--panel: rgba(6, 26, 22, .78);--panel-hard: #061512;--text: #e6fff4;--muted: #5f8f80;--neon: #00ff9d;--cyan: #23e6ff;--magenta: #ff2ea6;--gold: #ffd700;--danger: #ff3860;--accent: var(--neon);--accent2: var(--cyan);--card: var(--panel);--success: var(--neon);--rare: var(--gold);--font-display: "DotGothic16", "Hiragino Kaku Gothic ProN", sans-serif;--font-body: "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgba(0,255,157,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,157,.05) 1px,transparent 1px);background-size:44px 44px;pointer-events:none;z-index:0}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0px,rgba(0,0,0,.22) 1px,transparent 1px,transparent 4px);mix-blend-mode:multiply;pointer-events:none;z-index:2147483000;animation:scanDrift 9s linear infinite}.app{height:100%;width:100%;display:flex;flex-direction:column;position:relative;z-index:1}.btn{border:1px solid rgba(0,255,157,.45);border-radius:12px;padding:14px 24px;font-size:1rem;font-weight:800;font-family:var(--font-display);letter-spacing:.06em;cursor:pointer;background:#00ff9d12;color:var(--neon);text-shadow:0 0 8px rgba(0,255,157,.6);box-shadow:0 0 #00ff9d00;transition:transform .08s,box-shadow .2s,background .2s;text-align:center}.btn:hover{box-shadow:0 0 18px #00ff9d59;background:#00ff9d24}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.35;cursor:default}.btn-primary{background:linear-gradient(90deg,var(--neon),var(--cyan));color:#02110b;border:none;text-shadow:none;box-shadow:0 0 24px #00ff9d73}.btn-primary:hover{box-shadow:0 0 34px #00ff9dbf}.btn-answer{background:var(--panel);color:var(--text);border:1px solid rgba(35,230,255,.3);border-radius:14px;padding:16px;font-size:1.02rem;font-weight:700;text-align:left;font-family:var(--font-body);text-shadow:none}.btn-answer:hover{border-color:var(--cyan);box-shadow:0 0 16px #23e6ff4d}.btn-answer.correct{background:#00ff9d2e;color:var(--neon);border-color:var(--neon);box-shadow:0 0 22px #00ff9d8c}.btn-answer.wrong{background:#ff386033;color:#ffb3c1;border-color:var(--danger);box-shadow:0 0 22px #ff386080}input,textarea,select{width:100%;border:1px solid rgba(0,255,157,.35);border-radius:12px;padding:16px;font-size:1rem;background:#001410cc;color:var(--text);outline:none;caret-color:var(--neon)}input:focus,textarea:focus,select:focus{border-color:var(--neon);box-shadow:0 0 16px #00ff9d59}input::placeholder,textarea::placeholder{color:var(--muted)}.screen{flex:1;display:flex;flex-direction:column;padding:24px;gap:16px;overflow:hidden;position:relative}.screen-title{font-family:var(--font-display);font-size:1.5rem;font-weight:900;margin:0;letter-spacing:.08em;color:var(--neon);text-shadow:0 0 12px rgba(0,255,157,.7),0 0 42px rgba(0,255,157,.3)}.screen-subtitle{color:var(--muted);margin:0;font-size:.95rem}.neon-card{background:var(--panel);border:1px solid rgba(0,255,157,.35);border-radius:18px;box-shadow:0 0 24px #00ff9d1f,inset 0 0 32px #00ff9d0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.glitch{position:relative;display:inline-block}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.glitch:before{color:var(--cyan);animation:glitchShift 2.4s infinite steps(2);clip-path:inset(0 0 62% 0)}.glitch:after{color:var(--magenta);animation:glitchShift 3.1s infinite steps(2) reverse;clip-path:inset(58% 0 0 0)}@keyframes pop{0%{transform:scale(.6);opacity:0}55%{transform:scale(1.14)}to{transform:scale(1);opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 16px #00ff9d59}50%{box-shadow:0 0 42px #00ff9dcc}}@keyframes comboPulse{0%,to{transform:scale(1)}50%{transform:scale(1.28)}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes scanDrift{0%{background-position:0 0}to{background-position:0 44px}}@keyframes glitchShift{0%,86%{transform:translate(0);opacity:.9}88%{transform:translate(-3px,1px)}90%{transform:translate(3px,-2px);opacity:.4}92%{transform:translate(-2px,2px)}94%{transform:translate(2px,1px);opacity:.9}96%,to{transform:translate(0)}}@keyframes shakeX{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(5px)}}@keyframes flashWhite{0%{opacity:.85}to{opacity:0}}@keyframes confettiFall{0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:1}to{transform:translate3d(var(--dx, 0px),108vh,0) rotate(var(--rot, 540deg));opacity:.9}}@keyframes blinkEyes{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.08)}}@keyframes mouthFlap{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}@keyframes bounceTalk{0%,to{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-7px) rotate(1.2deg)}}@keyframes captionIn{0%{transform:translateY(26px) scale(.85);opacity:0}60%{transform:translateY(-4px) scale(1.05);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}@keyframes bulletPop{0%{transform:translate(-18px) scale(.9);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes zoomSlow{0%{transform:scale(1)}to{transform:scale(1.07)}}@keyframes rareSpin{0%{transform:rotate(0) scale(.4);opacity:0}60%{transform:rotate(340deg) scale(1.15);opacity:1}to{transform:rotate(360deg) scale(1);opacity:1}}.pop{animation:pop .4s cubic-bezier(.34,1.56,.64,1)}.float{animation:float 3s ease-in-out infinite}.glow{animation:glow 2s infinite}.shake{animation:shakeX .45s}::-webkit-scrollbar{display:none}
