@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;800;900&family=Press+Start+2P&family=Plus+Jakarta+Sans:wght@500;700;800;900&family=Noto+Sans+JP:wght@500;700;900&display=swap";:root{--bg-color:#030408;--panel-bg:#060a12f0;--border-color:#0fc;--border-glow:#0fc6;--accent-cyan:#0fc;--accent-green:#0f6;--accent-purple:#bd00ff;--accent-red:#f05;--accent-gold:#fc0;--text-main:#f8fafc;--text-muted:#7dd3fc;--font-pixel:"Press Start 2P", cursive;--font-jp:"Noto Sans JP", sans-serif;--font-cinzel:"Cinzel", serif;--font-body:"Plus Jakarta Sans", sans-serif}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-body);background-image:radial-gradient(circle at 50% 0,#00ffcc26 0%,#0000 60%),radial-gradient(circle at 80% 80%,#bd00ff26 0%,#0000 50%),linear-gradient(#00ffcc0a 1px,#0000 1px),linear-gradient(90deg,#bd00ff0a 1px,#0000 1px);background-size:100% 100%,100% 100%,24px 24px,24px 24px;min-height:100vh;position:relative;overflow-x:hidden}.kanji-rain{pointer-events:none;z-index:1;opacity:.18;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.kanji-column{font-family:var(--font-jp);color:var(--accent-cyan);text-shadow:0 0 8px var(--accent-cyan);white-space:nowrap;font-size:1.2rem;font-weight:900;animation:12s linear infinite fallRain;position:absolute;top:-100px}@keyframes fallRain{0%{opacity:0;transform:translateY(-100%)}10%{opacity:.8}90%{opacity:.8}to{opacity:0;transform:translateY(110vh)}}body:before{content:" ";z-index:99;pointer-events:none;opacity:.5;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 4px;display:block;position:fixed;inset:0}.ambient{filter:blur(140px);pointer-events:none;z-index:0;border-radius:50%;animation:8s ease-in-out infinite alternate pulseGlow;position:fixed}@keyframes pulseGlow{0%{opacity:.8;transform:scale(1)translate(0)}to{opacity:1;transform:scale(1.15)translate(20px,-20px)}}.ambient-one{background:#0fc3;width:500px;height:500px;top:-100px;left:-100px}.ambient-two{background:#bd00ff33;width:600px;height:600px;bottom:-150px;right:-150px}.topbar{z-index:10;border-bottom:2px solid var(--accent-cyan);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#030408e6;justify-content:space-between;align-items:center;padding:20px 40px;display:flex;position:relative;box-shadow:0 4px 25px #00ffcc4d}.brand{align-items:center;gap:14px;display:flex}.brand-mark{background:var(--accent-cyan);color:#000;width:44px;height:44px;font-weight:900;font-family:var(--font-pixel);border-radius:6px;justify-content:center;align-items:center;font-size:.85rem;display:flex;box-shadow:4px 4px #000,0 0 20px #0fc9}.brand-name{font-family:var(--font-pixel);letter-spacing:1px;color:var(--accent-cyan);text-shadow:0 0 10px #0fc9;font-size:.9rem}.brand-sub{font-family:var(--font-jp);color:var(--accent-gold);letter-spacing:2px;margin-top:2px;font-size:.8rem;font-weight:700}.entry-counter{font-family:var(--font-pixel);color:var(--accent-cyan);border:1px solid var(--accent-cyan);background:#00ffcc14;border-radius:6px;padding:8px 16px;font-size:.75rem;box-shadow:0 0 15px #0fc3}.entry-counter #entryNumber{color:var(--accent-green)}.app{z-index:10;grid-template-columns:340px 1fr;gap:40px;max-width:1300px;margin:30px auto;padding:0 20px 100px;display:grid;position:relative}.project-info{background:var(--panel-bg);border:2px solid var(--accent-cyan);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:12px;flex-direction:column;height:fit-content;padding:28px;display:flex;box-shadow:6px 6px #000,0 0 30px #0fc3}.info-label{font-family:var(--font-pixel);color:var(--accent-cyan);margin-bottom:12px;font-size:.6rem}.project-info h2{font-family:var(--font-pixel);color:#fff;text-shadow:0 0 10px #0fc6;margin-bottom:16px;font-size:1.1rem;line-height:1.4}.project-info p{color:var(--text-muted);margin-bottom:24px;font-size:.95rem;line-height:1.6}.info-grid{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.info-card{background:#0009;border:1px solid #bd00ff66;border-radius:8px;justify-content:space-between;align-items:center;padding:14px 18px;transition:all .3s;display:flex}.info-card:hover{border-color:var(--accent-cyan);transform:translate(4px);box-shadow:0 0 15px #00ffcc4d}.info-card span{font-family:var(--font-jp);color:var(--text-muted);letter-spacing:1px;font-size:.9rem;font-weight:700}.info-card strong{font-family:var(--font-pixel);color:var(--accent-gold);font-size:.75rem}.tiny-note{font-family:var(--font-jp);color:var(--accent-cyan);text-align:center;letter-spacing:1px;font-size:.85rem;font-weight:700}.journey{flex-direction:column;gap:20px;display:flex}.character-strip-wrapper{background:#0006;border:1px solid #00ffcc4d;border-radius:12px;margin-bottom:10px;padding:10px 0;position:relative;overflow:hidden}.character-strip-wrapper:before,.character-strip-wrapper:after{content:"";z-index:2;pointer-events:none;width:40px;position:absolute;top:0;bottom:0}.character-strip-wrapper:before{background:linear-gradient(90deg,#030408,#0000);left:0}.character-strip-wrapper:after{background:linear-gradient(-90deg,#030408,#0000);right:0}.character-strip{gap:16px;width:max-content;animation:16s linear infinite marqueeRun;display:flex}.character-strip:hover{animation-play-state:paused}.character-strip img{border:2px solid var(--accent-cyan);object-fit:cover;width:70px;height:70px;image-rendering:pixelated;background:#00ffcc14;border-radius:10px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 0 12px #00ffcc4d}.character-strip img:hover{border-color:var(--accent-green);transform:translateY(-8px)scale(1.18);box-shadow:0 0 30px #0fcc}@keyframes marqueeRun{0%{transform:translate(0)}to{transform:translate(-50%)}}.step-card{background:var(--panel-bg);border:2px solid var(--accent-cyan);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:14px;padding:36px;box-shadow:8px 8px #000,0 0 35px #0fc3}.step-tag{color:var(--accent-cyan);border:1px solid var(--accent-cyan);font-family:var(--font-jp);letter-spacing:1px;background:#00ffcc26;border-radius:6px;margin-bottom:18px;padding:6px 14px;font-size:.75rem;font-weight:700;display:inline-block;box-shadow:0 0 12px #00ffcc4d}.step-card h1{font-family:var(--font-cinzel);letter-spacing:1px;color:#fff;text-shadow:0 0 15px #0fc6;margin-bottom:14px;font-size:1.6rem;font-weight:900;line-height:1.35}.step-description{color:var(--text-muted);margin-bottom:28px;font-size:.98rem;line-height:1.6}.form-card label{font-family:var(--font-jp);letter-spacing:.5px;color:var(--accent-cyan);margin-bottom:10px;font-size:.8rem;font-weight:700;display:block}.input-wrap{background:#000000b3;border:2px solid #bd00ff80;border-radius:8px;align-items:center;margin-bottom:24px;padding:0 16px;transition:all .3s;display:flex}.input-wrap:focus-within{border-color:var(--accent-cyan);transform:translateY(-2px);box-shadow:0 0 20px #0fc6}.input-wrap span{color:var(--accent-cyan);margin-right:12px;font-size:1.2rem}.input-wrap input{color:#fff;font-size:1rem;font-family:var(--font-body);background:0 0;border:none;outline:none;flex:1;padding:16px 0}.btn-continue{background:var(--accent-cyan);color:#000;width:100%;font-family:var(--font-pixel);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:18px;font-size:.75rem;transition:all .25s;display:flex;box-shadow:4px 4px #000}.btn-continue:hover{background:var(--accent-green);transform:translate(-3px,-3px);box-shadow:7px 7px #000,0 0 25px #0fc9}.btn-back{color:var(--text-muted);font-family:var(--font-pixel);cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:20px;font-size:.65rem;display:block}.btn-back:hover{color:var(--accent-cyan)}.game-shell{border:2px solid var(--accent-cyan);background:#000;border-radius:10px;min-height:220px;position:relative;overflow:hidden;box-shadow:0 0 25px #00ffcc4d}.game-start{text-align:center;z-index:5;background:#030408f2;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.game-character-preview img{width:70px;height:70px;image-rendering:pixelated;border:2px solid var(--accent-cyan);border-radius:8px;margin-bottom:12px;box-shadow:0 0 20px #00ffcc80}.progress-system{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:2px solid var(--accent-cyan);z-index:100;background:#030408f2;padding:14px 40px;position:fixed;bottom:0;left:0;right:0}.progress-label{font-family:var(--font-pixel);color:var(--text-muted);justify-content:space-between;margin-bottom:8px;font-size:.6rem;display:flex}.progress-track{background:#ffffff14;border-radius:4px;width:100%;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-green), var(--accent-purple));width:20%;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 15px #0fcc}@media (width<=900px){.topbar{flex-direction:row;padding:14px 20px}.brand-name{font-size:.8rem}.brand-sub{font-size:.7rem}.app{grid-template-columns:1fr;gap:20px;margin:15px auto;padding:0 14px 120px}.step-card{padding:22px 18px}.step-card h1{font-size:1.05rem}.progress-system{padding:10px 20px}.character-strip img{width:60px;height:60px}}@media (width<=480px){.topbar{padding:12px 14px}.entry-counter{padding:6px 10px;font-size:.65rem}.btn-continue{padding:14px;font-size:.7rem}.game-shell{min-height:180px}}
