@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#0a0a0f;color:#e8e8e8;font-family:"Noto Serif SC",serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a0a0f;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;opacity:1;transition:opacity 1s ease}.loading-screen.fade-out{opacity:0;pointer-events:none}.loading-moon{width:80px;height:80px;margin-bottom:20px}.loading-moon img{width:100%;height:100%;object-fit:contain;mix-blend-mode:screen}.loading-text{font-size:14px;letter-spacing:4px;color:#888;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.moon-phase-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;height:300px;z-index:100;opacity:0;filter:blur(10px)}.moon-phase-container.active{animation:moonContainerFadeIn 4s cubic-bezier(.17,.67,.6,.92) forwards}@keyframes moonContainerFadeIn{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}}.moon-phase-container.in-corner{animation:moonMoveToCorner 1.5s cubic-bezier(.4,0,.2,1) forwards}@keyframes moonMoveToCorner{0%{opacity:1;filter:blur(0);top:50%;left:50%;transform:translate(-50%,-50%) scale(1);transform-origin:center}to{opacity:1;filter:blur(0);top:60px;left:calc(100vw - 180px);transform:scale(.4);transform-origin:top left}}.moon-main,.moon-glow{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.moon-textured{position:absolute;top:0;left:0;width:100%;height:100%}.moon-glow{top:-25%;left:-25%;width:150%;height:150%}.moon-main{transition:opacity .5s ease}.moon-main.fade-out{opacity:0}.moon-textured{opacity:0;transition:opacity .5s ease;display:flex;align-items:center;justify-content:center}.moon-textured.visible{opacity:1}.moon-textured img{width:100%;height:100%;object-fit:contain;filter:brightness(1.3)}.moon-textured:before{content:"";position:absolute;top:-30%;left:-30%;width:160%;height:160%;border-radius:50%;background:radial-gradient(circle,rgba(255,252,230,.4) 0%,rgba(255,252,230,.15) 40%,transparent 70%);pointer-events:none;z-index:-1}.moon-sprite{position:absolute;top:0;left:0;width:100%;padding-top:13100%;background:url(/images/common/header/moon_full.svg) no-repeat;background-size:100% auto;background-position:0 0}.moon-sprite.animating{animation:moonPhase 4s steps(130) forwards}.moon-sprite.finished{transform:translateY(-99.24%)}.moon-sprite.blur{filter:blur(20px);opacity:.5}@keyframes moonPhase{0%{transform:translateY(0)}to{transform:translateY(-99.24%)}}@media(max-width:768px){.moon-phase-container{width:200px;height:200px}@keyframes moonMoveToCorner{0%{opacity:1;filter:blur(0);top:50%;left:50%;transform:translate(-50%,-50%) scale(1);transform-origin:center}to{opacity:1;filter:blur(0);top:40px;left:calc(100vw - 120px);transform:scale(.4);transform-origin:top left}}}.starry-background{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.star{position:absolute;background:#fff;border-radius:50%;opacity:0;animation:twinkle ease-in-out infinite alternate}@keyframes twinkle{0%{opacity:.2;transform:scale(.8)}to{opacity:.9;transform:scale(1)}}.meteor{position:absolute;--angle: 45deg;--tail-length: 1;--curve: 1;--distance: 1;transform:rotate(var(--angle)) scale(var(--distance)) scaleY(var(--curve));transform-origin:left top}.meteor:after{content:"";position:absolute;width:3px;height:3px;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px #ffffffe6;animation:meteor-head forwards;animation-duration:inherit;animation-timing-function:cubic-bezier(.4,0,.2,1)}.meteor:before{content:"";position:absolute;width:calc(120px * var(--tail-length));height:2px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.9) 0px,rgba(255,255,255,.6) 3px,transparent 3px,transparent 8px,rgba(255,255,255,.4) 8px,rgba(255,255,255,.2) 15px,transparent 15px,transparent 25px,rgba(255,255,255,.15) 25px,transparent 40px);border-radius:2px;transform-origin:right center;left:calc(-120px * var(--tail-length));top:0;transform:rotate(2deg);animation:meteor-tail forwards;animation-duration:inherit;animation-timing-function:cubic-bezier(.4,0,.6,1)}@keyframes meteor-head{0%{opacity:0;transform:translate(0) scale(.2);box-shadow:0 0 2px 1px #ffffff4d}4%{opacity:.3;transform:translate(0) scale(.4);box-shadow:0 0 3px 1px #ffffff80}8%{opacity:.6;transform:translate(0) scale(.6);box-shadow:0 0 5px 2px #ffffffb3}12%{opacity:.85;transform:translate(0) scale(.85);box-shadow:0 0 6px 2px #ffffffe6}15%{opacity:1;transform:translate(0) scale(1);box-shadow:0 0 8px 3px #fff}18%{opacity:1;transform:translate(30px,-5px) scale(1);box-shadow:0 0 8px 3px #fff}22%{opacity:1;transform:translate(80px,-10px) scale(1);box-shadow:0 0 7px 3px #fffffff7}26%{opacity:1;transform:translate(120px,-13px) scale(1);box-shadow:0 0 7px 3px #fffffff0}30%{opacity:1;transform:translate(150px,-15px) scale(1);box-shadow:0 0 6px 2px #ffffffe6}34%{opacity:1;transform:translate(190px,-13px) scale(.98);box-shadow:0 0 6px 2px #fffdf5e0}38%{opacity:1;transform:translate(225px,-10px) scale(.96);box-shadow:0 0 6px 2px #fffaf0db}42%{opacity:.98;transform:translate(255px,-6px) scale(.93);box-shadow:0 0 5px 2px #fff5e6d1}46%{opacity:.94;transform:translate(280px,-2px) scale(.88);box-shadow:0 0 5px 2px #ffeedac7}50%{opacity:.9;transform:translate(300px,2px) scale(.82);box-shadow:0 0 5px 2px #ffe6cdb8}54%{opacity:.85;transform:translate(318px,6px) scale(.75);box-shadow:0 0 4px 2px #ffdcb9a8}58%{opacity:.78;transform:translate(333px,10px) scale(.68);box-shadow:0 0 4px 1px #ffd2a894}62%{opacity:.72;transform:translate(347px,13px) scale(.62);box-shadow:0 0 4px 1px #ffc69685}66%{opacity:.65;transform:translate(358px,16px) scale(.55);box-shadow:0 0 3px 1px #ffb98773}70%{opacity:.58;transform:translate(368px,19px) scale(.48);box-shadow:0 0 3px 1px #ffac7861}75%{opacity:.5;transform:translate(380px,22px) scale(.4);box-shadow:0 0 2px 1px #ff9e694d}80%{opacity:.4;transform:translate(390px,25px) scale(.32);box-shadow:0 0 2px 1px #ff915c3d}85%{opacity:.3;transform:translate(400px,28px) scale(.24);box-shadow:0 0 1px 1px #ff87522e}90%{opacity:.2;transform:translate(408px,30px) scale(.16);box-shadow:0 0 1px #ff7d4b1f}95%{opacity:.1;transform:translate(415px,33px) scale(.08);box-shadow:0 0 1px #ff73460f}to{opacity:0;transform:translate(420px,35px) scale(0);box-shadow:0 0 0 0 transparent}}@keyframes meteor-tail{0%{opacity:0;transform:translate(0) rotate(0) scaleX(0)}4%{opacity:0;transform:translate(0) rotate(0) scaleX(0)}8%{opacity:0;transform:translate(0) rotate(0) scaleX(0)}12%{opacity:0;transform:translate(0) rotate(0) scaleX(0)}15%{opacity:0;transform:translate(0) rotate(0) scaleX(0)}18%{opacity:.5;transform:translate(30px,-5px) rotate(-3deg) scaleX(.2)}22%{opacity:.8;transform:translate(80px,-10px) rotate(-4deg) scaleX(.5)}26%{opacity:1;transform:translate(120px,-13px) rotate(-4deg) scaleX(.75)}30%{opacity:1;transform:translate(150px,-15px) rotate(-3deg) scaleX(1)}34%{opacity:1;transform:translate(190px,-13px) rotate(-2deg) scaleX(1)}38%{opacity:.95;transform:translate(225px,-10px) rotate(-1deg) scaleX(.9)}42%{opacity:.85;transform:translate(255px,-6px) rotate(0) scaleX(.75)}46%{opacity:.7;transform:translate(280px,-2px) rotate(1deg) scaleX(.6)}50%{opacity:.55;transform:translate(300px,2px) rotate(2deg) scaleX(.45)}54%{opacity:.4;transform:translate(318px,6px) rotate(3deg) scaleX(.3)}58%{opacity:.25;transform:translate(333px,10px) rotate(4deg) scaleX(.18)}62%{opacity:.12;transform:translate(347px,13px) rotate(5deg) scaleX(.08)}66%{opacity:0;transform:translate(358px,16px) rotate(5deg) scaleX(0)}70%{opacity:0;transform:translate(368px,19px) rotate(5deg) scaleX(0)}75%{opacity:0;transform:translate(380px,22px) rotate(5deg) scaleX(0)}80%{opacity:0;transform:translate(390px,25px) rotate(5deg) scaleX(0)}85%{opacity:0;transform:translate(400px,28px) rotate(5deg) scaleX(0)}90%{opacity:0;transform:translate(408px,30px) rotate(5deg) scaleX(0)}95%{opacity:0;transform:translate(415px,33px) rotate(5deg) scaleX(0)}to{opacity:0;transform:translate(420px,35px) rotate(5deg) scaleX(0)}}.parallax-container{position:fixed;top:0;left:0;width:100%;height:100vh;overflow:hidden;z-index:2;pointer-events:none}.parallax-layer{position:absolute;top:0;left:0;width:100%;height:100%;background-repeat:no-repeat;will-change:transform;background-size:contain;background-position:center bottom}.parallax-layer.fade-in{opacity:0;animation:characterFadeIn .8s ease-out forwards}@keyframes characterFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:var(--scroll-opacity, 1);transform:translateY(0)}}.parallax-layer.layer-character{background-size:25vh;background-position:85% 100%}.parallax-layer.layer-character-center{background-size:24vh;background-position:30% 100%}.hover-hitbox{position:absolute;pointer-events:auto;cursor:pointer;bottom:0}.layer-character-center .hover-hitbox{left:25%;width:15%;height:50%}.layer-character-left .hover-hitbox{left:8%;width:12%;height:40%}.layer-character .hover-hitbox{right:10%;width:15%;height:40%}.layer-image{position:absolute;top:0;left:0;width:100%;height:100%;background-repeat:no-repeat;background-size:inherit;background-position:inherit;transition:opacity .3s ease}.layer-image-hover{pointer-events:none}.layer-character-center .layer-image-hover{background-size:25vh}.layer-character-left .layer-image-hover{background-size:20vh}.layer-character .layer-image-hover{background-size:25vh}.parallax-layer.layer-character-left{background-size:20vh;background-position:12% 100%}.parallax-layer.layer-character-right{background-size:12vh;background-position:65% 100%}.layer-character-right .hover-hitbox{right:30%;width:12%;height:28%}.layer-character-right .layer-image-hover{background-size:12vh}.parallax-layer.layer-character-showiix{background-size:14vh;background-position:48% 100%}.layer-character-showiix .hover-hitbox{left:43%;width:12%;height:38%}.layer-character-showiix .layer-image-hover{background-size:13.5vh}.post-detail{min-height:100vh;background:linear-gradient(180deg,#0a0a0f,#1a1a2e,#16213e);color:#e8e8e8;position:relative}.post-loading{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(180deg,#0a0a0f,#1a1a2e,#16213e);z-index:100;transition:opacity .5s ease}.post-loading.fade-out{opacity:0;pointer-events:none}.post-loading-moon{width:60px;height:60px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fffde8,#e8e4c9);box-shadow:0 0 40px #fffde866;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.post-loading p{margin-top:20px;color:#a0a0a0;font-size:.9rem;letter-spacing:2px}.post-header-bar{position:fixed;top:0;left:0;right:0;height:60px;padding:0 30px;display:flex;align-items:center;background:#0a0a0fe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;opacity:0;transition:opacity .5s ease}.post-header-bar.visible{opacity:1}.post-header-home{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;transition:opacity .3s ease}.post-header-home:hover{opacity:.8}.post-header-moon{width:32px;height:32px;border-radius:50%}.post-header-titles h1{font-family:FOT-Nae Std L,"Noto Serif SC",serif;font-size:1.1rem;font-weight:300;letter-spacing:.1em;margin:0}.post-header-titles p{font-size:.7rem;color:#a0a0a0;letter-spacing:.1em;margin:0}.post-detail-content{padding:100px 20px 40px;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.post-detail-content.visible{opacity:1;transform:translateY(0)}.back-link{display:inline-block;color:#a0a0a0;text-decoration:none;margin-bottom:40px;font-size:.9rem;transition:color .3s ease}.back-link:hover{color:#fff}.post-content{max-width:700px;margin:0 auto}.post-header{margin-bottom:50px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1)}.post-header h1{font-size:2.2rem;font-weight:600;letter-spacing:.05em;margin-bottom:15px;line-height:1.4}.post-header time{color:#a0a0a0;font-size:.9rem}.post-body{line-height:2;color:#d0d0d0}.post-body h2{font-size:1.5rem;margin:40px 0 20px;color:#e8e8e8}.post-body h3{font-size:1.2rem;margin:30px 0 15px;color:#e8e8e8}.post-body p{margin-bottom:1.5em}.post-body a{color:#88a0d0;text-decoration:none}.post-body a:hover{text-decoration:underline}.post-body code{background:#ffffff1a;padding:2px 6px;border-radius:4px;font-size:.9em}.post-body pre{background:#0000004d;padding:20px;border-radius:8px;overflow-x:auto;margin:20px 0}.post-body pre code{background:none;padding:0}.post-body blockquote{border-left:3px solid rgba(255,255,220,.3);padding-left:20px;margin:20px 0;color:#a0a0a0}.post-body ul,.post-body ol{padding-left:25px;margin-bottom:1.5em}.post-body li{margin-bottom:.5em}.post-body img{max-width:100%;border-radius:8px;margin:20px 0}.post-not-found{text-align:center;padding-top:100px}.post-not-found h1{font-size:5rem;color:#a0a0a0;margin-bottom:20px}.post-not-found p{color:#666;margin-bottom:30px}.post-footer{text-align:center;padding:40px 20px;margin-top:60px;border-top:1px solid rgba(255,255,255,.05)}.post-footer p{font-size:.85rem;color:#a0a0a0}@font-face{font-family:FOT-Nae Std L;src:url(/fonts/fot-nanstd-l.otf) format("opentype");font-weight:300;font-display:swap}.app{min-height:100vh;background:linear-gradient(180deg,#0a0a0f,#1a1a2e,#16213e);color:#e8e8e8;font-family:"Noto Serif SC",serif}.header-bar{position:fixed;top:0;left:0;right:0;height:60px;padding:0 30px;display:flex;align-items:center;gap:15px;background:#0a0a0fe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;opacity:0;transform:translateY(-100%);transition:all .4s ease}.header-bar.visible{opacity:1;transform:translateY(0)}.header-bar-title{font-family:FOT-Nae Std L,"Noto Serif SC",serif;font-size:1.2rem;font-weight:600;letter-spacing:.1em;margin:0}.header-bar-subtitle{font-size:.75rem;color:#a0a0a0;letter-spacing:.15em;margin:0}.header{position:relative;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transition:opacity 1s ease}.header.visible{opacity:1}.header.scrolled .header-content{opacity:0;transition:opacity .3s ease}.header-content{text-align:center;transform:translateY(20px);opacity:0;animation:slideUp 1s ease-out .5s forwards}.header.visible .header-content{animation:slideUp 1s ease-out forwards}.site-title{font-family:FOT-Nae Std L,"Noto Serif SC",serif;font-size:3rem;font-weight:300;letter-spacing:.2em;margin-bottom:.5rem;text-shadow:0 0 30px rgba(255,255,220,.3)}.site-subtitle{font-size:1rem;color:#a0a0a0;letter-spacing:.3em}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scroll-hint{position:absolute;bottom:40px;text-align:center;opacity:0}.header.visible .scroll-hint{animation:slideUp 1s ease-out .8s forwards}.scroll-hint span{display:block;font-size:12px;letter-spacing:3px;color:#a0a0a0;margin-bottom:10px}.scroll-line{width:1px;height:40px;background:linear-gradient(180deg,#a0a0a0 0%,transparent 100%);margin:0 auto;animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.main-content{max-width:800px;margin:0 auto;padding:80px 20px;opacity:0;transition:opacity 1s ease}.main-content.visible{opacity:1}.main-content section{margin-bottom:80px}.main-content h2{font-size:1.5rem;font-weight:600;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1);letter-spacing:.1em}.about p{line-height:2;color:#a0a0a0}.quote-frame{position:relative;margin:30px 0;padding:25px 30px 20px 45px;background:#ffffff05;border-radius:8px}.quote-frame:before{content:'"';position:absolute;top:10px;left:15px;font-size:3.5rem;font-family:Georgia,serif;color:#ffffdc4d;line-height:1}.quote-frame p{margin:0;font-size:1.05rem;line-height:1.8;color:#d0d0d0}.quote-frame cite{display:block;text-align:right;margin-top:15px;font-size:.9rem;font-style:normal;color:#888}.post-card-link{text-decoration:none;color:inherit;display:block}.post-card{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:30px;margin-bottom:20px;transition:all .3s ease;cursor:pointer}.post-card:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translateY(-2px)}.post-card h3{font-size:1.2rem;margin-bottom:10px}.post-card time{font-size:.85rem;color:#a0a0a0;display:block;margin-bottom:15px}.post-card p{color:#a0a0a0;line-height:1.8}.footer{text-align:center;padding:40px 20px;border-top:1px solid rgba(255,255,255,.05)}.footer p{font-size:.85rem;color:#a0a0a0}@media(max-width:768px){.site-title{font-size:2rem}.site-subtitle{font-size:.85rem}}
