*{box-sizing:border-box;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;padding:0}*,body{margin:0}body{-webkit-font-smoothing:none;-moz-osx-font-smoothing:grayscale;font-smooth:never;background-color:#0f0f23;color:#0f0;font-family:Press Start\ 2P,cursive}code{font-family:Press Start\ 2P,monospace}::-webkit-scrollbar{height:16px;width:16px}::-webkit-scrollbar-track{background:#1a1a2e;border:2px solid #0f0f23}::-webkit-scrollbar-thumb{background:#0f0;border:2px solid #0f0f23}::-webkit-scrollbar-thumb:hover{background:#0c0}.header{margin-bottom:48px}.avatar{animation:bounce 2s ease-in-out infinite;filter:drop-shadow(4px 4px 0 #008800);font-size:6rem;margin-bottom:24px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}.bio{color:#0cc;font-size:.625rem;letter-spacing:.5px;line-height:1.8;margin-top:24px}.section{margin-bottom:64px}.section-title{color:#ff0;font-size:1.25rem;letter-spacing:2px;margin-bottom:32px;text-align:center;text-shadow:3px 3px 0 #c90}.social-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.social-card{animation:fadeInUp .8s steps(8) backwards;background:#1a1a2e;border:4px solid #0f0;box-shadow:8px 8px 0 #080,16px 16px 0 #0f03;cursor:pointer;display:block;overflow:hidden;padding:24px;position:relative;text-decoration:none;transition:none}.social-card:hover{border-color:#ff0;box-shadow:12px 12px 0 #080,20px 20px 0 #0f03;transform:translate(-4px,-4px)}.social-card:active{box-shadow:4px 4px 0 #080,8px 8px 0 #0f03;transform:translate(0)}.projects-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));width:100%}.game-link{display:block;text-decoration:none}.project-card{animation:fadeInUp .8s steps(8) backwards;background:#1a1a2e;border:4px solid #0f0;box-shadow:8px 8px 0 #080,16px 16px 0 #0f03;cursor:pointer;margin:0 auto;max-width:600px;overflow:hidden;padding:32px;position:relative;text-align:center;transition:none}.project-card:hover{border-color:#ff0;box-shadow:12px 12px 0 #080,20px 20px 0 #0f03;transform:translate(-4px,-4px)}.project-card:active{box-shadow:4px 4px 0 #080,8px 8px 0 #0f03;transform:translate(0)}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}.title{font-size:1.25rem;gap:12px}.title-icon{font-size:1.5rem}.subtitle{font-size:.625rem}.games-grid{gap:20px;grid-template-columns:1fr}.card-icon{font-size:2.5rem}.card-title{font-size:.875rem}.card-description{font-size:.5rem}.game-card{box-shadow:4px 4px 0 #080,8px 8px 0 #0f03}.game-card:hover{box-shadow:8px 8px 0 #080,12px 12px 0 #0f03}}.top-page{background:#0f0f23;min-height:100vh;overflow:hidden;position:relative}.background-animation{background-image:repeating-linear-gradient(0deg,#1a1a2e,#1a1a2e 8px,#0000 0,#0000 16px),repeating-linear-gradient(90deg,#1a1a2e,#1a1a2e 8px,#0000 0,#0000 16px);height:100%;overflow:hidden;position:absolute;width:100%;z-index:0}.circle{animation:float 20s ease-in-out infinite;background:#0f0;box-shadow:0 0 0 4px #0f0f23,0 0 0 8px #0f0;position:absolute}.circle-1{animation-delay:0s;height:64px;left:10%;top:10%;width:64px}.circle-1,.circle-2{-webkit-clip-path:polygon(0 25%,25% 25%,25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%);clip-path:polygon(0 25%,25% 25%,25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%)}.circle-2{animation-delay:7s;background:#f0f;box-shadow:0 0 0 4px #0f0f23,0 0 0 8px #f0f;height:48px;right:15%;top:60%;width:48px}.circle-3{animation-delay:14s;background:#ff0;bottom:20%;box-shadow:0 0 0 4px #0f0f23,0 0 0 8px #ff0;-webkit-clip-path:polygon(0 25%,25% 25%,25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%);clip-path:polygon(0 25%,25% 25%,25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%);height:32px;left:50%;width:32px}@keyframes float{0%,to{opacity:.6;transform:translateY(0) translateX(0)}25%{opacity:.8;transform:translateY(-32px) translateX(32px)}50%{opacity:.6;transform:translateY(-64px) translateX(-32px)}75%{opacity:.8;transform:translateY(-32px) translateX(-64px)}}.content{margin:0 auto;max-width:1200px;padding:40px 20px;z-index:1}.content,.header{position:relative}.header{animation:fadeInDown 1s ease-out;margin-bottom:60px;text-align:center}.back-link{background:#1a1a2e;border:3px solid #0f0;box-shadow:4px 4px 0 #080;display:inline-flex;font-size:.625rem;letter-spacing:1px;margin-bottom:32px;padding:12px 24px;transition:all .1s steps(2)}.back-link:hover{border-color:#ff0;box-shadow:6px 6px 0 #080;transform:translate(-2px,-2px)}.back-link:active{box-shadow:2px 2px 0 #080;transform:translate(0)}.back-arrow{font-size:.75rem;transition:transform .2s steps(2)}.back-link:hover .back-arrow{transform:translateX(-4px)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.title{align-items:center;color:#0f0;display:flex;font-size:2rem;font-weight:400;gap:16px;justify-content:center;letter-spacing:2px;margin:0;text-shadow:4px 4px 0 #080,8px 8px 0 #0f03}.title-icon{animation:rotate 3s steps(4) infinite;filter:drop-shadow(4px 4px 0 #008800);font-size:2.5rem}@keyframes rotate{0%{transform:rotate(0deg)}25%{transform:rotate(0deg)}50%{transform:rotate(15deg)}75%{transform:rotate(15deg)}to{transform:rotate(0deg)}}.subtitle{color:#0f0;font-size:.75rem;font-weight:400;letter-spacing:1px;margin-top:24px;text-shadow:2px 2px 0 #080}.games-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:60px}.game-card{animation:fadeInUp .8s steps(8) backwards;background:#1a1a2e;border:4px solid #0f0;box-shadow:8px 8px 0 #080,16px 16px 0 #0f03;cursor:pointer;image-rendering:pixelated;overflow:hidden;padding:24px;position:relative;transition:none}.game-card:first-child{animation-delay:.1s}.game-card:nth-child(2){animation-delay:.2s}.game-card:nth-child(3){animation-delay:.3s}.game-card:nth-child(4){animation-delay:.4s}.game-card:nth-child(5){animation-delay:.5s}.game-card:nth-child(6){animation-delay:.6s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.game-card:before{background:var(--card-color);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .2s steps(4)}.game-card:hover{border-color:#ff0;box-shadow:12px 12px 0 #080,20px 20px 0 #0f03;transform:translate(-4px,-4px)}.game-card:hover:before{transform:scaleX(1)}.game-card:active{box-shadow:4px 4px 0 #080,8px 8px 0 #0f03;transform:translate(0)}.card-inner{text-align:center}.card-icon{display:inline-block;filter:drop-shadow(4px 4px 0 rgba(0,0,0,.5));font-size:3rem;margin-bottom:16px;transition:transform .2s steps(2)}.game-card:hover .card-icon{transform:scale(1.15) rotate(8deg)}.card-title{color:#0f0;font-size:1rem;font-weight:400;letter-spacing:1px;margin:16px 0;text-shadow:2px 2px 0 #080}.card-description{color:#0cc;font-size:.5rem;letter-spacing:.5px;line-height:1.8;margin-bottom:20px}.card-play-button{align-items:center;background:var(--card-color);border:3px solid #0f0f23;box-shadow:4px 4px 0 #0f0f23;color:#0f0f23;display:inline-flex;font-size:.625rem;font-weight:400;gap:8px;letter-spacing:1px;padding:12px 24px;position:relative;transition:all .1s steps(2)}.game-card:hover .card-play-button{box-shadow:6px 6px 0 #0f0f23;gap:12px;padding:12px 28px;transform:translate(-2px,-2px)}.game-card:active .card-play-button{box-shadow:2px 2px 0 #0f0f23;transform:translate(0)}.arrow{font-size:.75rem;transition:transform .2s steps(2)}.game-card:hover .arrow{transform:translateX(4px)}.footer{animation:fadeIn 1.5s steps(8);color:#0f0;font-size:.5rem;letter-spacing:1px;padding:20px;text-align:center;text-shadow:2px 2px 0 #080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.title{font-size:1.25rem;gap:12px}.title-icon{font-size:1.5rem}.subtitle{font-size:.625rem}.games-grid{gap:20px;grid-template-columns:1fr}.card-icon{font-size:2.5rem}.card-title{font-size:.875rem}.card-description{font-size:.5rem}.game-card{box-shadow:4px 4px 0 #080,8px 8px 0 #0f03}.game-card:hover{box-shadow:8px 8px 0 #080,12px 12px 0 #0f03}}.game-header{max-width:640px}.game-canvas-wrapper{border:4px solid #0f0;box-shadow:8px 8px 0 #080,16px 16px 0 #0f03;height:480px;width:640px}.game-canvas{background:#1a1a2e;display:block;height:100%;image-rendering:pixelated;width:100%}@media (max-width:768px){.game-canvas-wrapper{aspect-ratio:4/3;height:auto;width:100%}.game-header{flex-direction:column;gap:12px}.game-title{font-size:1rem}.overlay-title{font-size:1.5rem}.overlay-text{font-size:.625rem}}.tetris-wrapper{align-items:flex-start;display:flex;gap:30px;justify-content:center;margin-top:20px}.tetris-sidebar{display:flex;flex-direction:column;gap:20px}.tetris-stats{background:#00ffff1a;border:2px solid #0ff;border-radius:8px;min-width:150px;padding:20px}.stat-item{margin-bottom:20px}.stat-item:last-child{margin-bottom:0}.stat-label{color:#0ff;font-size:10px;margin-bottom:8px}.stat-label,.stat-value{font-family:Press Start\ 2P,monospace;text-align:center}.stat-value{color:#fff;font-size:24px}@media (max-width:768px){.tetris-wrapper{align-items:center;flex-direction:column}.tetris-stats{max-width:300px;width:100%}.stat-item{display:inline-block;margin:0 15px 10px 0}.stat-label,.stat-value{display:inline;margin:0 10px 0 0}}.minesweeper-wrapper{align-items:center;display:flex;flex-direction:column;gap:20px;margin-top:20px}.minesweeper-info{background:#ffff001a;border:2px solid #ff0;border-radius:8px;display:flex;gap:40px;padding:15px 30px}.info-item{align-items:center;display:flex;flex-direction:column;gap:8px}.info-label{color:#ff0;font-size:10px}.info-label,.info-value{font-family:Press Start\ 2P,monospace}.info-value{color:#fff;font-size:24px;min-width:60px;text-align:center}.minesweeper-canvas{cursor:pointer;image-rendering:pixelated}@media (max-width:768px){.minesweeper-info{gap:20px;padding:10px 20px}.info-label{font-size:8px}.info-value{font-size:18px;min-width:50px}}.snake-wrapper{align-items:center;display:flex;flex-direction:column;gap:20px;margin-top:20px}.snake-stats{background:#00ff001a;border:2px solid #0f0;border-radius:8px;display:flex;gap:30px;padding:15px 30px}.snake-stats .stat-item{align-items:center;display:flex;flex-direction:column;gap:8px}.snake-stats .stat-label{color:#0f0;font-family:Press Start\ 2P,monospace;font-size:10px}.snake-stats .stat-value{color:#fff;font-family:Press Start\ 2P,monospace;font-size:20px;min-width:50px;text-align:center}@media (max-width:768px){.snake-wrapper{padding:10px}.snake-stats{gap:15px;padding:10px 20px}.snake-stats .stat-label{font-size:8px}.snake-stats .stat-value{font-size:16px;min-width:40px}}.game-canvas-wrapper{background:#0000;max-width:800px;min-height:600px;position:relative;width:100%}.game-overlay{align-items:center;background:#0f0f23f2;display:flex;flex-direction:column;gap:20px;height:100%;justify-content:center;left:0;padding:20px;position:absolute;top:0;width:100%;z-index:10}.overlay-title{animation:blink 1s steps(2) infinite;color:#ff0;font-size:2rem;letter-spacing:2px;margin:0;text-shadow:4px 4px 0 #c90}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.7}}.overlay-text{color:#0ff;font-size:.75rem;letter-spacing:1px;line-height:1.8;margin:0;text-align:center}.game-button{border:3px solid #0f0;box-shadow:4px 4px 0 #080;color:#0f0;font-size:.625rem;padding:12px 24px}.game-button:hover{box-shadow:6px 6px 0 #080}.game-button:active{box-shadow:2px 2px 0 #080}.game-controls{display:flex;gap:16px;margin-top:20px}.control-button{background:#1a1a2e;border:3px solid #f06;box-shadow:4px 4px 0 #c04;color:#f06;cursor:pointer;font-family:Press Start\ 2P,cursive;font-size:.625rem;letter-spacing:1px;padding:12px 24px;transition:all .1s steps(2)}.control-button:hover{border-color:#f09;box-shadow:6px 6px 0 #c04;transform:translate(-2px,-2px)}.control-button:active{box-shadow:2px 2px 0 #c04;transform:translate(0)}.memory-stats{background:#ff99001a;border:2px solid #f90;border-radius:8px;display:flex;gap:30px;margin-bottom:20px;padding:15px 30px}.memory-stats .stat-item{align-items:center;display:flex;flex-direction:column;gap:8px}.memory-stats .stat-label{color:#f90;font-family:Press Start\ 2P,monospace;font-size:10px}.memory-stats .stat-value{color:#fff;font-family:Press Start\ 2P,monospace;font-size:20px;min-width:60px;text-align:center}.memory-grid{grid-gap:15px;display:grid;gap:15px;padding:20px;perspective:1000px}.memory-grid-easy{grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:400px}.memory-grid-hard,.memory-grid-medium{grid-template-columns:repeat(6,1fr);margin:0 auto;max-width:600px}.memory-card{aspect-ratio:1;cursor:pointer;position:relative}.memory-card.matched{pointer-events:none}.memory-card-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s;width:100%}.memory-card.flipped .memory-card-inner{transform:rotateY(180deg)}.memory-card-back,.memory-card-front{align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;border:3px solid #f90;border-radius:8px;display:flex;height:100%;justify-content:center;position:absolute;width:100%}.memory-card-front{background:linear-gradient(135deg,#f90,#f60)}.memory-card-back{background:linear-gradient(135deg,#0ff,#09f);transform:rotateY(180deg)}.card-question{color:#fff;font-family:Press Start\ 2P,monospace;font-size:48px;text-shadow:2px 2px 4px #00000080}.card-symbol{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3));font-size:64px}.memory-card.matched .memory-card-back{animation:matchPulse .5s ease-out;background:linear-gradient(135deg,#0f0,#0c0)}@keyframes matchPulse{0%,to{transform:rotateY(180deg) scale(1)}50%{transform:rotateY(180deg) scale(1.1)}}.difficulty-buttons{display:flex;flex-direction:column;gap:15px;margin-top:20px}.best-score-badge{animation:pulse 1s infinite;color:#ff0;display:inline-block;font-size:12px;margin-top:10px}@media (max-width:768px){.game-canvas-wrapper{max-width:100%;width:100%}.game-header{flex-direction:column;gap:12px}.game-title{font-size:1rem}.overlay-title{font-size:1.5rem}.overlay-text{font-size:.625rem}.game-button{font-size:.5rem;padding:10px 20px}.memory-stats{flex-wrap:wrap;gap:15px;padding:10px 15px}.memory-stats .stat-label{font-size:8px}.memory-stats .stat-value{font-size:16px;min-width:50px}.memory-grid{gap:10px;padding:10px}.card-question{font-size:32px}.card-symbol{font-size:40px}}@media (max-width:480px){.overlay-title{font-size:1.2rem}.overlay-text{font-size:.5rem;line-height:1.6}.game-button{font-size:.45rem;min-width:150px;padding:8px 16px}.memory-grid{gap:5px;padding:5px}.card-question{font-size:24px}.card-symbol{font-size:32px}}.puzzle15-wrapper{align-items:center;display:flex;flex-direction:column;gap:20px;margin-top:20px;padding:20px}.puzzle15-stats{background:#ff00ff1a;border:2px solid #f0f;border-radius:8px;display:flex;gap:30px;padding:15px 30px}.puzzle15-stats .stat-item{align-items:center;display:flex;flex-direction:column;gap:8px}.puzzle15-stats .stat-label{color:#f0f;font-family:Press Start\ 2P,monospace;font-size:10px}.puzzle15-stats .stat-value{color:#fff;font-family:Press Start\ 2P,monospace;font-size:20px;min-width:60px;text-align:center}.puzzle15-game-area{align-items:center;display:flex;height:420px;justify-content:center;position:relative;width:420px}.puzzle15-grid{background:#2a2a3e;border:3px solid #f0f;border-radius:8px;height:400px;position:relative;width:400px}.puzzle15-tile{align-items:center;background:linear-gradient(135deg,#f0f,#c0c);border:2px solid #0f0f23;border-radius:4px;cursor:default;display:flex;height:100px;justify-content:center;position:absolute;transition:all .2s ease-out;-webkit-user-select:none;user-select:none;width:100px}.puzzle15-tile.empty{background:#0000;border:none}.puzzle15-tile.movable{box-shadow:0 0 10px #ff00ff80;cursor:pointer}.puzzle15-tile.movable:hover{background:linear-gradient(135deg,#f3f,#d0d);box-shadow:0 0 20px #f0fc;transform:scale(1.05)}.puzzle15-tile.movable:active{transform:scale(.95)}.tile-number{color:#fff;font-family:Press Start\ 2P,monospace;font-size:32px;text-shadow:2px 2px 4px #00000080}@media (max-width:768px){.puzzle15-wrapper{padding:10px}.puzzle15-stats{gap:15px;padding:10px 15px}.puzzle15-stats .stat-label{font-size:8px}.puzzle15-stats .stat-value{font-size:16px;min-width:50px}.puzzle15-game-area{height:320px;width:320px}.puzzle15-grid{height:300px;width:300px}.puzzle15-tile{height:75px;width:75px}.tile-number{font-size:24px}}@media (max-width:480px){.puzzle15-game-area{height:270px;width:270px}.puzzle15-grid{height:250px;width:250px}.puzzle15-tile{height:62.5px;width:62.5px}.tile-number{font-size:20px}}.game-container{background:#0f0f23;flex-direction:column;min-height:100vh;padding:20px}.game-container,.game-header{align-items:center;display:flex}.game-header{justify-content:space-between;margin-bottom:20px;max-width:800px;width:100%}.game-title{color:#0f0;font-size:1.5rem;letter-spacing:2px;margin:0;text-shadow:3px 3px 0 #080}.back-link{align-items:center;color:#0f0;display:flex;font-family:Press Start\ 2P,cursive;font-size:.75rem;gap:8px;text-decoration:none;transition:all .2s}.back-link:hover{color:#ff0;transform:translateX(-4px)}.back-arrow{font-size:1rem}.novel-wrapper{align-items:center;display:flex;flex-direction:column;gap:30px;max-width:1000px;width:100%}.novel-intro{text-align:center;width:100%}.intro-text{color:#0ff;font-family:Press Start\ 2P,cursive;font-size:.875rem;letter-spacing:1px;line-height:2}.novel-list{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));width:100%}.novel-card{background:#1a1a2e;border:4px solid #f0f;border:4px solid var(--novel-color,#f0f);box-shadow:4px 4px 0 #00000080,8px 8px 0 #0000004d;cursor:pointer;display:flex;flex-direction:column;gap:16px;padding:24px;text-decoration:none;transition:all .1s steps(2)}.novel-card:hover{border-color:#ff0;box-shadow:8px 8px 0 #00000080,16px 16px 0 #0000004d;transform:translate(-4px,-4px)}.novel-card-header{align-items:center;display:flex;justify-content:space-between}.novel-genre{background:#ff00ff1a;border:2px solid #f0f;border:2px solid var(--novel-color,#f0f);color:#f0f;color:var(--novel-color,#f0f);padding:6px 12px}.novel-chapters,.novel-genre{font-family:Press Start\ 2P,cursive;font-size:.625rem}.novel-chapters{color:#0f0}.novel-title-jp{color:#fff;font-size:1.25rem;letter-spacing:2px}.novel-title-en,.novel-title-jp{font-family:Press Start\ 2P,cursive;margin:0}.novel-title-en{color:#f0f;color:var(--novel-color,#f0f);font-size:.75rem;letter-spacing:1px}.novel-description{color:#ccc;flex-grow:1;font-family:Press Start\ 2P,cursive;font-size:.625rem;line-height:1.8;margin:0}.novel-card-footer{align-items:center;border-top:2px solid #ffffff1a;display:flex;justify-content:space-between;padding-top:16px}.novel-author{color:#888;font-size:.5rem}.novel-author,.read-button{font-family:Press Start\ 2P,cursive}.read-button{background:#ff00ff1a;border:2px solid #f0f;border:2px solid var(--novel-color,#f0f);color:#f0f;color:var(--novel-color,#f0f);font-size:.625rem;padding:8px 16px;transition:all .1s}.novel-card:hover .read-button{background:#f0f;background:var(--novel-color,#f0f);color:#1a1a2e}.novel-content{background:#1a1a2e;border:4px solid #f0f;box-shadow:8px 8px 0 #c0c,16px 16px 0 #f0f3;justify-content:center;min-height:500px;padding:40px;width:100%}.coming-soon,.novel-content{align-items:center;display:flex}.coming-soon{flex-direction:column;gap:30px;text-align:center}.coming-soon-title{animation:pulse 2s ease-in-out infinite;color:#f0f;font-size:2.5rem;letter-spacing:3px;margin:0;text-shadow:4px 4px 0 #c0c}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.coming-soon-text{color:#0ff;font-size:.875rem;letter-spacing:1px;line-height:2;margin:0}.features{display:flex;flex-direction:column;gap:20px;margin:20px 0}.feature-item{align-items:center;background:#ff00ff1a;border:2px solid #f0f;border-radius:8px;display:flex;gap:15px;padding:15px 25px;transition:all .3s}.feature-item:hover{background:#f0f3;transform:translateX(10px)}.feature-icon{flex-shrink:0;font-size:2rem}.feature-text{color:#fff}.feature-text,.game-button{font-family:Press Start\ 2P,cursive;font-size:.75rem;letter-spacing:1px}.game-button{background:#1a1a2e;border:3px solid #f0f;box-shadow:4px 4px 0 #c0c;color:#f0f;cursor:pointer;display:inline-block;margin-top:20px;padding:15px 30px;text-decoration:none;transition:all .1s steps(2)}.game-button:hover{border-color:#ff0;box-shadow:6px 6px 0 #c0c;color:#ff0;transform:translate(-2px,-2px)}.game-button:active{box-shadow:2px 2px 0 #c0c;transform:translate(0)}@media (max-width:768px){.game-header{flex-direction:column;gap:12px}.game-title{font-size:1rem}.novel-content{padding:20px}.coming-soon-title{font-size:1.5rem}.coming-soon-text,.feature-text{font-size:.625rem}}.reader-wrapper{display:flex;flex-direction:column;gap:20px;max-width:900px;width:100%}.novel-info-bar{align-items:center;background:#1a1a2e;border:3px solid #0ff;box-shadow:4px 4px 0 #00ffff4d;display:flex;justify-content:space-between;padding:16px 24px}.novel-info-title{color:#0ff;font-family:Press Start\ 2P,cursive;font-size:.875rem;letter-spacing:1px}.novel-info-author{color:#888;font-family:Press Start\ 2P,cursive;font-size:.625rem}.chapter-selector{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.chapter-button{background:#1a1a2e;border:3px solid #f0f;box-shadow:2px 2px 0 #ff00ff80;color:#f0f;cursor:pointer;font-family:Press Start\ 2P,cursive;font-size:.625rem;padding:12px 20px;transition:all .1s steps(2)}.chapter-button:hover{border-color:#ff0;box-shadow:4px 4px 0 #ff00ff80;color:#ff0;transform:translate(-2px,-2px)}.chapter-button.active{background:#f0f;border-color:#f0f;color:#1a1a2e}.reader-content{background:#1a1a2e;border:4px solid #0ff;box-shadow:8px 8px 0 #00ffff4d,16px 16px 0 #00ffff1a;min-height:600px;padding:40px}.chapter-title{border-bottom:3px solid #00ffff4d;color:#0ff;font-family:Press Start\ 2P,cursive;font-size:1.5rem;letter-spacing:2px;margin:0 0 40px;padding-bottom:20px;text-shadow:3px 3px 0 #00ffff80}.chapter-text{letter-spacing:1px;line-height:2.5}.paragraph{color:#fff;font-family:Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;margin:0 0 30px;text-indent:1em;word-break:break-word}.paragraph:first-of-type{text-indent:0}.text-dialogue{color:#0ff;font-weight:700;text-shadow:0 0 10px #00ffff80}.text-emphasis{color:#ff0;font-style:italic;font-weight:700}.text-glitch{animation:glitch .5s infinite;color:#f0f;text-shadow:2px 0 #0ff,-2px 0 red}@keyframes glitch{0%,to{text-shadow:2px 0 #0ff,-2px 0 red}25%{text-shadow:-2px 0 #0ff,2px 0 red}50%{text-shadow:0 2px #0ff,0 -2px red}75%{text-shadow:2px 2px #0ff,-2px -2px red}}.text-glow{animation:glow-pulse 2s ease-in-out infinite;color:#0f0;text-shadow:0 0 5px #0f0,0 0 10px #0f0,0 0 15px #0f0}.text-system{background:#00ffff1a;border:1px solid #0ff;border-radius:3px;color:#0ff;padding:2px 6px}.text-machine,.text-system{font-family:Courier New,monospace}.text-machine{color:#f90;letter-spacing:2px;opacity:.9}.text-name{color:#f0f;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:#ff00ff80;text-decoration-color:#ff00ff80;-webkit-text-decoration-style:wavy;text-decoration-style:wavy}.text-date,.text-time{background:#ffffff0d;border-radius:3px;color:#888;font-family:Courier New,monospace;font-size:.95em;padding:2px 6px}.text-warning{animation:warning-blink 1s infinite;color:red;font-weight:700;text-shadow:0 0 10px #f00c}@keyframes warning-blink{0%,to{opacity:1}50%{opacity:.6}}.text-flash{animation:flash .5s ease-in-out;color:#fff;font-weight:700;text-shadow:0 0 20px #fffc}@keyframes flash{0%,to{opacity:1;text-shadow:0 0 5px #fffc}50%{opacity:.7;text-shadow:0 0 20px #fff}}.reader-navigation{display:flex;gap:16px;justify-content:space-between}.nav-button{background:#1a1a2e;border:3px solid #0f0;box-shadow:4px 4px 0 #080;color:#0f0;cursor:pointer;flex:1 1;font-family:Press Start\ 2P,cursive;font-size:.75rem;max-width:300px;padding:16px 32px;transition:all .1s steps(2)}.nav-button:hover{border-color:#ff0;box-shadow:6px 6px 0 #080;color:#ff0;transform:translate(-2px,-2px)}.nav-button:active{box-shadow:2px 2px 0 #080;transform:translate(0)}.nav-button.prev{border-color:#f90;box-shadow:4px 4px 0 #c60;color:#f90}.nav-button.prev:hover{box-shadow:6px 6px 0 #c60}.nav-button.next{margin-left:auto}@media (max-width:768px){.novel-info-bar{flex-direction:column;gap:12px;text-align:center}.novel-info-title{font-size:.625rem}.novel-info-author{font-size:.5rem}.chapter-selector{gap:8px}.chapter-button{font-size:.5rem;padding:10px 16px}.reader-content{padding:24px}.chapter-title{font-size:1rem;margin-bottom:24px}.paragraph{font-size:.875rem;line-height:2.2}.reader-navigation{flex-direction:column}.nav-button{font-size:.625rem;max-width:100%}.nav-button.next{margin-left:0}}.tech-wrapper{display:flex;flex-direction:column;gap:40px;max-width:1200px;padding-bottom:40px;width:100%}.tech-intro{background:linear-gradient(135deg,#00ffff1a,#ff00ff1a);border:3px solid #0ff;border-radius:8px;box-shadow:0 0 20px #00ffff4d;padding:40px 20px;text-align:center}.tech-main-title{animation:glow-pulse 2s ease-in-out infinite;color:#0ff;font-family:Press Start\ 2P,cursive;font-size:2rem;letter-spacing:3px;margin:0 0 20px;text-shadow:4px 4px 0 #00ffff4d}@keyframes glow-pulse{0%,to{text-shadow:4px 4px 0 #00ffff4d}50%{text-shadow:4px 4px 0 #00ffff4d,0 0 20px #0ff}}.tech-description{color:#fff;font-family:Press Start\ 2P,cursive;font-size:.875rem;letter-spacing:1px;line-height:2}.features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-card{background:#1a1a2e;border:3px solid #0f0;box-shadow:4px 4px 0 #00ff004d;padding:24px;text-align:center;transition:all .2s steps(2)}.feature-card:hover{border-color:#ff0;box-shadow:8px 8px 0 #00ff004d;transform:translate(-4px,-4px)}.feature-icon{display:block;filter:drop-shadow(0 0 10px rgba(0,255,0,.5));font-size:3rem;margin-bottom:16px}.feature-title{color:#0f0;font-family:Press Start\ 2P,cursive;font-size:.75rem;letter-spacing:1px;margin:0 0 12px}.feature-description{color:#ccc;font-family:Press Start\ 2P,cursive;font-size:.625rem;line-height:1.8;margin:0}.tech-categories{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.tech-category{background:#1a1a2e;border:4px solid #0ff;border:4px solid var(--category-color,#0ff);box-shadow:8px 8px 0 #0000004d;overflow:hidden}.category-header{align-items:center;background:#0ff;background:var(--category-color,#0ff);display:flex;gap:16px;padding:20px}.category-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5));font-size:2.5rem}.category-title{color:#1a1a2e;font-family:Press Start\ 2P,cursive;font-size:1.25rem;letter-spacing:2px;margin:0;text-shadow:2px 2px 0 #ffffff4d}.tech-list{display:flex;flex-direction:column;gap:20px;padding:24px}.tech-item{align-items:center;background:#ffffff08;border:2px solid #ffffff1a;border-radius:4px;display:flex;gap:20px;justify-content:space-between;padding:16px;transition:all .2s}.tech-item:hover{background:#ffffff14;border-color:#0ff;border-color:var(--category-color,#0ff);transform:translateX(10px)}.tech-info{flex:1 1}.tech-name{color:#fff;font-size:.875rem;letter-spacing:1px;margin:0 0 8px}.tech-desc,.tech-name{font-family:Press Start\ 2P,cursive}.tech-desc{color:#888;font-size:.625rem;line-height:1.6;margin:0}.skill-bar{align-items:center;display:flex;gap:8px}.skill-dot{background:#0000;border:2px solid #444;height:16px;transition:all .3s;width:16px}.skill-dot.filled{animation:skill-glow 2s ease-in-out infinite;background:#0ff;background:var(--category-color,#0ff);border-color:#0ff;border-color:var(--category-color,#0ff);box-shadow:0 0 10px #0ff;box-shadow:0 0 10px var(--category-color,#0ff)}@keyframes skill-glow{0%,to{box-shadow:0 0 5px #0ff;box-shadow:0 0 5px var(--category-color,#0ff)}50%{box-shadow:0 0 15px #0ff;box-shadow:0 0 15px var(--category-color,#0ff)}}.tech-footer{background:#1a1a2e;border:3px solid #f0f;border-radius:8px;padding:40px 20px;text-align:center}.footer-stats{display:flex;flex-wrap:wrap;gap:40px;justify-content:center;margin-bottom:30px}.stat-box{align-items:center;background:#ff00ff1a;border:2px solid #f0f;border-radius:8px;display:flex;flex-direction:column;gap:12px;min-width:150px;padding:20px}.stat-number{animation:number-pulse 3s ease-in-out infinite;color:#f0f;font-family:Press Start\ 2P,cursive;font-size:2.5rem;text-shadow:0 0 10px #ff00ff80}@keyframes number-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.stat-label{color:#fff;font-size:.625rem;letter-spacing:2px}.footer-text,.stat-label{font-family:Press Start\ 2P,cursive}.footer-text{color:#ccc;font-size:.75rem;line-height:2;margin:0}@media (max-width:768px){.tech-main-title{font-size:1.25rem}.tech-description{font-size:.625rem}.features-grid,.tech-categories{grid-template-columns:1fr}.category-title{font-size:.875rem}.tech-item{align-items:flex-start;flex-direction:column}.skill-bar{align-self:flex-start}.footer-stats{gap:20px}.stat-box{min-width:120px}.stat-number{font-size:1.75rem}}.App{background-color:#0f0f23;min-height:100vh;text-align:center}
/*# sourceMappingURL=main.359c0c63.css.map*/