.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);background:#050510b3;border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:1rem 2rem;transition:background .3s,box-shadow .3s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{background:#050510e6;box-shadow:0 1px #ffffff0d}.navbar-brand{letter-spacing:.2em;color:#e8e6f0;cursor:pointer;font-size:1.1rem;font-weight:300;transition:color .3s}.navbar-brand:hover{color:#d4cfff}.hamburger{cursor:pointer;z-index:101;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:#c8c3dcb3;border-radius:1px;width:22px;height:2px;transition:transform .3s,opacity .3s;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navbar-links{gap:1.5rem;display:flex}.navbar-links a{color:#c8c3dc99;font-size:.9rem;text-decoration:none;transition:color .3s;position:relative}.navbar-links a:after{content:"";background:#8c78dc99;height:1px;transition:transform .3s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.navbar-links a:hover,.navbar-links a.active{color:#d4cfff}.navbar-links a.active:after{transform:scaleX(1)}@media (width<=600px){.navbar{padding:.8rem 1rem}.hamburger{display:flex}.navbar-links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a14f2;border-left:1px solid #ffffff0d;flex-direction:column;gap:1.5rem;width:200px;height:100vh;padding:5rem 2rem 2rem;transition:transform .3s;position:fixed;top:0;right:0;transform:translate(100%)}.navbar-links.open{transform:translate(0)}.navbar-links a{font-size:1rem}}.star-background{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.cursor-glow{pointer-events:none;z-index:0;will-change:transform;background:radial-gradient(circle,#8c78dc14 0%,#8c78dc08 40%,#0000 70%);border-radius:50%;width:400px;height:400px;position:fixed;top:0;left:0}@media (hover:none){.cursor-glow{display:none}}.loading-screen{z-index:9999;background:#0a0a12;justify-content:center;align-items:center;transition:opacity .8s;animation:.5s loadingAppear;display:flex;position:fixed;inset:0}.loading-screen.fade-out{opacity:0;pointer-events:none}.loading-content{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.loading-star{background:#d4cfff;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite loadingPulse;box-shadow:0 0 20px #d4cfff99,0 0 60px #8c78dc4d}.loading-text{color:#d4cfffb3;letter-spacing:.3em;font-size:1.2rem;font-weight:300;animation:1s .2s both loadingTextFade}@keyframes loadingAppear{0%{opacity:0}to{opacity:1}}@keyframes loadingPulse{0%,to{transform:scale(1);box-shadow:0 0 20px #d4cfff99,0 0 60px #8c78dc4d}50%{transform:scale(1.8);box-shadow:0 0 30px #d4cfffcc,0 0 80px #8c78dc80}}@keyframes loadingTextFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.easter-egg-overlay{z-index:9000;pointer-events:none;position:fixed;inset:0}.easter-egg-canvas{width:100%;height:100%}.easter-egg-text{letter-spacing:.3em;color:#d4cfffe6;text-shadow:0 0 30px #8c78dc99;font-size:2rem;font-weight:300;animation:4s forwards easterEggFade;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes easterEggFade{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}20%{opacity:1;transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.1)}}.hero{text-align:center;background:radial-gradient(at 30%,#1a1a2e 0%,#0d0d1a 60%,#050510 100%);justify-content:center;align-items:center;min-height:60vh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background-image:radial-gradient(1px 1px at 10% 20%,#fff6,#0000),radial-gradient(1px 1px at 30% 60%,#ffffff4d,#0000),radial-gradient(1.5px 1.5px at 50% 10%,#ffffff80,#0000),radial-gradient(1px 1px at 70% 40%,#fff3,#0000),radial-gradient(1px 1px at 80% 80%,#ffffff4d,#0000),radial-gradient(1.5px 1.5px at 90% 15%,#fff6,#0000),radial-gradient(1px 1px at 15% 85%,#ffffff40,#0000),radial-gradient(1px 1px at 45% 75%,#ffffff59,#0000),radial-gradient(1px 1px at 65% 55%,#fff3,#0000),radial-gradient(1.5px 1.5px at 85% 35%,#ffffff4d,#0000);animation:4s ease-in-out infinite alternate twinkle;position:absolute;inset:0}@keyframes twinkle{0%{opacity:.5}to{opacity:1}}.hero-content{z-index:1;position:relative}.hero-title,.hero-subtitle{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(20px)}.hero-title.reveal{opacity:1;transform:translateY(0)}.hero-subtitle.reveal{opacity:1;transition-delay:.2s;transform:translateY(0)}.hero-title{letter-spacing:.3em;color:#e8e6f0;text-shadow:0 0 40px #b4a0ff4d;margin:0 0 1rem;font-size:4rem;font-weight:300}.hero-subtitle{color:#c8c3dc99;letter-spacing:.15em;margin:0;font-size:1.1rem;font-weight:300}@media (width<=600px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:.95rem}}.gallery{max-width:1200px;margin:0 auto;padding:4rem 2rem}.gallery-grid{column-count:3;column-gap:1rem}.gallery-item{cursor:pointer;break-inside:avoid;opacity:0;background:#111;border-radius:8px;margin-bottom:1rem;transition:opacity .5s,transform .5s;position:relative;overflow:hidden;transform:translateY(20px)}.gallery-item.reveal{opacity:1;transform:translateY(0)}.gallery-img-wrap{position:relative;overflow:hidden}.gallery-img-wrap:before{content:"";z-index:1;opacity:1;background:linear-gradient(135deg,#111 0%,#1a1a2e 50%,#111 100%) 0 0/200% 200%;transition:opacity .4s;animation:1.5s infinite shimmer;position:absolute;inset:0}.gallery-img-wrap.loaded:before{opacity:0}.gallery-img-wrap img{filter:blur(20px);width:100%;transition:filter .6s,transform .6s;display:block;transform:scale(1.1)}.gallery-img-wrap.loaded img{filter:blur();transform:scale(1)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gallery-item:hover .gallery-img-wrap.loaded img{transform:scale(1.05)}.gallery-item-overlay{color:#fffc;opacity:0;background:linear-gradient(#0000,#000000b3);padding:2rem 1rem .8rem;font-size:.85rem;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.gallery-item:hover .gallery-item-overlay{opacity:1}.lightbox{z-index:1000;cursor:zoom-out;background:#000000eb;justify-content:center;align-items:center;animation:.25s fadeIn;display:flex;position:fixed;inset:0}.lightbox-close{color:#fffc;cursor:pointer;z-index:1001;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.lightbox-close:hover{color:#fff;background:#fff3;transform:scale(1.1)}.lightbox-img{object-fit:contain;cursor:default;border-radius:4px;max-width:90vw;max-height:90vh;animation:.3s zoomIn}.lightbox-nav{color:#ffffffb3;cursor:pointer;z-index:1001;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{color:#fff;background:#ffffff2e;transform:translateY(-50%)scale(1.1)}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.lightbox-counter{color:#ffffff80;letter-spacing:.1em;font-size:.85rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}@keyframes zoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=900px){.gallery-grid{column-count:2}}@media (width<=600px){.gallery-grid{column-count:1}.gallery{padding:3rem 1rem}}.music{max-width:900px;margin:0 auto;padding:4rem 2rem}.section-title{letter-spacing:.15em;color:#e8e6f0;text-align:center;opacity:0;margin:0 0 2rem;font-size:1.8rem;font-weight:300;transition:opacity .6s,transform .6s;transform:translateY(15px)}.section-title.reveal{opacity:1;transform:translateY(0)}.category-tabs{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.tab{color:#c8c3dcb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2rem;padding:.4rem 1.2rem;font-size:.9rem;transition:all .3s}.tab:hover{color:#e8e6f0;background:#ffffff1a}.tab.active{color:#d4cfff;background:#8c78dc40;border-color:#8c78dc66}.playlist-link{text-align:center;color:#b4a0ffcc;border:1px solid #8c78dc4d;border-radius:2rem;width:fit-content;padding:.6rem 1.5rem;font-size:.9rem;text-decoration:none;transition:all .3s;display:block}.playlist-link:hover{color:#d4cfff;background:#8c78dc26;border-color:#8c78dc80}.music-search-wrap{flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.music-search{color:#e8e6f0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2rem;outline:none;width:100%;max-width:360px;padding:.55rem 1rem;font-size:.9rem;transition:all .3s}.music-search::placeholder{color:#c8c3dc59}.music-search:focus{background:#ffffff14;border-color:#8c78dc80}.song-empty{text-align:center;color:#c8c3dc59;padding:2rem 0;font-size:.9rem}.song-list{opacity:0;flex-direction:column;gap:0;transition:opacity .6s .15s,transform .6s .15s;display:flex;transform:translateY(15px)}.song-list.reveal{opacity:1;transform:translateY(0)}.song-item{border-radius:6px;align-items:center;gap:1rem;padding:.75rem 1rem;transition:background .2s;display:flex}.song-item:hover{background:#ffffff0a}.song-number{color:#c8c3dc4d;text-align:right;font-variant-numeric:tabular-nums;min-width:1.5rem;font-size:.85rem}.song-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.song-title{color:#e8e6f0;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.song-artist{color:#c8c3dc73;font-size:.8rem}.song-category-tag{color:#b4a0ff80;white-space:nowrap;border:1px solid #8c78dc33;border-radius:1rem;padding:.15rem .6rem;font-size:.75rem}.song-play-btn{color:#b4a0ff80;cursor:pointer;background:#8c78dc1a;border:1px solid #8c78dc33;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;text-decoration:none;transition:all .2s;display:flex}.song-play-btn:hover{color:#d4cfff;background:#8c78dc40;border-color:#8c78dc80;transform:scale(1.1)}.song-count{text-align:center;color:#c8c3dc59;margin-top:1.5rem;font-size:.85rem}@media (width<=600px){.music{padding:3rem 1rem}.song-category-tag{display:none}.song-play-btn{width:28px;height:28px}.song-play-btn svg{width:14px;height:14px}}.collection{max-width:1000px;margin:0 auto;padding:4rem 2rem}.collection-block{margin-bottom:3rem}.collection-subtitle{letter-spacing:.12em;color:#d4cfffb3;opacity:0;border-left:2px solid #8c78dc66;margin:0 0 1.5rem;padding-left:.5rem;font-size:1.2rem;font-weight:300;transition:opacity .6s .1s,transform .6s .1s;transform:translateY(10px)}.collection-subtitle.reveal{opacity:1;transform:translateY(0)}.anime-grids{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.anime-card{opacity:0;background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;gap:.6rem;padding:1.2rem;transition:opacity .5s,transform .5s,background .3s,border-color .3s;display:flex;transform:translateY(15px)}.anime-card.reveal{opacity:1;transform:translateY(0)}.anime-card:hover{background:#ffffff0f;border-color:#8c78dc33}.anime-header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.anime-title{color:#e8e6f0;font-size:.95rem;font-weight:400}.anime-status{color:#b4a0ff80;white-space:nowrap;font-size:.75rem}.star-rating{gap:1px;font-size:.75rem;display:flex}.star{color:#ffffff1a}.star.filled{color:#dcc878cc}.anime-note{color:#c8c3dc66;font-size:.8rem;font-style:italic}.game-grids{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.game-card{opacity:0;background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;gap:.4rem;padding:1.2rem;transition:opacity .5s,transform .5s,background .3s,border-color .3s;display:flex;transform:translateY(15px)}.game-card.reveal{opacity:1;transform:translateY(0)}.game-card:hover{background:#ffffff0f;border-color:#8c78dc33}.game-title{color:#e8e6f0;font-size:1rem;font-weight:400}.game-platform{color:#c8c3dc73;font-size:.8rem}.game-hours{color:#b4a0ff80;font-size:.8rem}.game-note{color:#b4a0ff99;font-size:.8rem;font-weight:500}@media (width<=600px){.collection{padding:3rem 1rem}.anime-grids,.game-grids{grid-template-columns:1fr}}.guestbook{max-width:750px;margin:0 auto;padding:4rem 2rem}.guestbook-desc{text-align:center;color:#c8c3dc73;opacity:0;margin:-1rem 0 2.5rem;font-size:.9rem;transition:opacity .6s .1s,transform .6s .1s;transform:translateY(10px)}.guestbook-desc.reveal{opacity:1;transform:translateY(0)}.twikoo-container{opacity:0;animation:.6s .3s forwards guestbookFadeIn;transform:translateY(15px)}@keyframes guestbookFadeIn{to{opacity:1;transform:translateY(0)}}.twikoo-container .tk-comments{color:#e8e6f0}.twikoo-container .tk-comment{border-bottom:1px solid #ffffff0d;padding:1rem 0}.twikoo-container .tk-nick{color:#d4cfff}.twikoo-container .tk-content{color:#e8e6f0d9}.twikoo-container .tk-time{color:#c8c3dc59;font-size:.8rem}.twikoo-container .tk-input{color:#e8e6f0;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;padding:.6rem .8rem;font-size:.9rem;transition:border-color .3s}.twikoo-container .tk-input:focus{border-color:#8c78dc80;outline:none}.twikoo-container .tk-submit{color:#d4cfff;cursor:pointer;background:#8c78dc40;border:1px solid #8c78dc66;border-radius:2rem;padding:.5rem 1.5rem;font-size:.9rem;transition:all .3s}.twikoo-container .tk-submit:hover{background:#8c78dc66;border-color:#8c78dc99}.twikoo-container .tk-meta{color:#c8c3dc80}.twikoo-container .tk-tag{color:#b4a0ff80;border:1px solid #8c78dc33;border-radius:1rem;padding:.1rem .5rem;font-size:.75rem}.twikoo-container .tk-page-nav .tk-page-current{color:#d4cfff;border-color:#8c78dc80}@media (width<=600px){.guestbook{padding:3rem 1rem}}.visitor-counter{color:#c8c3dc80;background:#ffffff08;border:1px solid #ffffff0f;border-radius:2rem;align-items:center;gap:.5rem;margin-bottom:.8rem;padding:.4rem 1rem;font-size:.8rem;display:inline-flex}.visitor-star{color:#8c78dc99;font-size:.7rem;animation:3s ease-in-out infinite visitorPulse}.visitor-num{color:#d4cfffb3;font-variant-numeric:tabular-nums}@keyframes visitorPulse{0%,to{opacity:.6}50%{opacity:1}}.footer{text-align:center;color:#c8c3dc40;letter-spacing:.1em;opacity:0;border-top:1px solid #ffffff0d;padding:3rem 2rem;font-size:.85rem;transition:opacity .6s,transform .6s;transform:translateY(10px)}.footer.reveal{opacity:1;transform:translateY(0)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#e8e6f0;-webkit-font-smoothing:antialiased;background:#0a0a14;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,sans-serif}.app{min-height:100vh}.gallery,.music,.collection,.guestbook{-webkit-backdrop-filter:blur(12px);background:#0f0f1e80;border:1px solid #ffffff0a;border-radius:16px;max-width:1200px;margin:1rem auto;position:relative}@media (width<=600px){.gallery,.music,.collection,.guestbook{border-radius:12px;margin:.5rem}}
