*,:before,:after{box-sizing:border-box}:root{--bg-color:#050814;--surface-color:#12192b;--text-main:#f0f4f8;--text-muted:#8b9bb4;--accent-primary:#00e5ff;--light-primary:#fdfae2;--border-color:#ffffff14}body{background-color:var(--bg-color);color:var(--text-main);-webkit-user-select:none;user-select:none;margin:0;font-family:Inter,Noto Sans JP,sans-serif;overflow:hidden auto}.text-accent-primary{color:var(--accent-primary)}.text-light-primary{color:var(--light-primary)}.text-light{color:#fff}.text-muted{color:var(--text-muted)}.glass{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);background:#12192b99;border-radius:16px}.game-container{-webkit-tap-highlight-color:transparent;flex-direction:column;height:auto;min-height:100vh;display:flex;position:relative}.game-header{z-index:10;pointer-events:none;border-radius:0 0 16px 16px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 32px;display:flex}.header-left,.header-center,.header-right{pointer-events:auto;align-items:center;display:flex}.header-left{flex:1;justify-content:flex-start}.header-center{justify-content:center}.header-right{flex:1;justify-content:flex-end;gap:16px}.header-logo{width:auto;height:52px;display:block}.mobile-nav-links,.mobile-logo-container{display:none}.pc-logo-container{display:block}.pc-nav-links{align-items:center;gap:12px;display:flex}.icon-btn{cursor:pointer;color:var(--text-muted);pointer-events:auto;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.icon-btn:hover{color:var(--text-main);background:#ffffff1a}.game-main{box-sizing:border-box;z-index:10;pointer-events:none;flex:1;gap:60px;width:100%;max-width:1200px;margin:0 auto;padding:0 40px 24px;display:flex}.left-panel{pointer-events:none;flex-direction:column;flex:1;align-items:center;gap:40px;min-width:300px;display:flex}.right-panel{pointer-events:auto;flex:1;min-width:320px;max-width:400px;height:calc(100vh - 120px);padding-right:10px;overflow-y:auto}.right-panel::-webkit-scrollbar{width:6px}.right-panel::-webkit-scrollbar-track{background:#0003;border-radius:4px}.right-panel::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.resource-panel{pointer-events:none;flex-direction:column;gap:8px;width:100%;padding:10px 16px;display:flex;position:relative}.points-display{align-items:center;gap:10px;display:flex}.points-display svg.icon-main{width:28px!important;height:28px!important}.points-info h2{color:var(--light-primary);margin:0;font-size:1.35rem;font-weight:600}.points-info p{color:var(--text-muted);margin:0;font-size:.75rem}.stats-row{border-top:1px solid var(--border-color);gap:16px;padding-top:8px;display:flex}.stat-item{align-items:center;gap:6px;font-size:.8rem;display:flex}.click-target-container{justify-content:center;align-items:center;width:300px;height:300px;margin-top:20px;display:flex;position:relative}.moon-core{cursor:pointer;background:radial-gradient(circle at 30% 30%,#fff,#fdfae2 40%,#c4c1a5 90%,#8b8875);border-radius:50%;width:160px;height:160px;transition:transform .1s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 0 60px #fdfae24d,inset -10px -10px 20px #00000080}.moon-core:active{transform:scale(.96)}.moon-craters{opacity:.3;position:absolute;inset:0}.crater{background:#0003;border-radius:50%;position:absolute;box-shadow:inset 2px 2px 5px #0000004d,1px 1px 2px #fff3}.c1{width:30px;height:30px;top:20%;left:60%}.c2{width:45px;height:45px;top:50%;left:20%}.c3{width:20px;height:20px;top:70%;left:70%}.moon-glow{pointer-events:none;background:radial-gradient(circle,#fdfae266 0%,#0000 70%);border-radius:50%;animation:4s ease-in-out infinite alternate breathe;position:absolute;inset:-20px}@keyframes breathe{0%{opacity:.8;transform:scale(1)}to{opacity:.4;transform:scale(1.1)}}.floating-text{pointer-events:none;text-shadow:0 2px 8px #ffffff80;z-index:10;font-size:1.5rem;font-weight:500;animation:1.5s ease-out forwards floatUp;position:absolute}.sky-click-area{z-index:5;cursor:pointer;position:absolute;inset:0;overflow:hidden}@keyframes floatUp{0%{opacity:1;transform:translateY(0)scale(1)}50%{opacity:1;transform:translateY(-40px)scale(1.1)}to{opacity:0;transform:translateY(-80px)scale(1)}}.upgrade-list{flex-direction:column;gap:16px;padding-bottom:40px;display:flex}.upgrade-list-header{border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.upgrade-list h3{letter-spacing:1px;margin:0;font-size:1.2rem;font-weight:400}.upgrade-items{flex-direction:column;gap:12px;display:flex}.upgrade-btn{text-align:left;width:100%;color:var(--text-main);cursor:pointer;-webkit-backdrop-filter:blur(12px);background:#12192b99;border:1px solid #0000;border-radius:16px;align-items:center;gap:16px;padding:16px;transition:all .3s;display:flex}.upgrade-btn.affordable:hover{background:#ffffff0d;border-color:#fff3;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.upgrade-btn.locked{opacity:.4;cursor:not-allowed;filter:grayscale(.8)}.upgrade-icon{width:48px;height:48px;color:var(--light-primary);background:#0003;border:1px solid #ffffff0d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.upgrade-info{flex:1}.upgrade-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.upgrade-header h4{margin:0;font-size:1rem;font-weight:500}.level{background:#ffffff1a;border-radius:12px;padding:2px 8px;font-size:.8rem}.desc{color:var(--text-muted);margin:0 0 8px;font-size:.8rem}.cost-row{justify-content:space-between;font-size:.8rem;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{width:90%;max-width:420px;max-height:90vh;padding:24px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{align-items:center;gap:8px;margin:0;font-weight:400;display:flex}.modal-tabs{border-bottom:1px solid var(--border-color);scrollbar-width:none;gap:4px;margin-bottom:20px;padding-bottom:8px;display:flex;overflow-x:auto}.modal-tabs::-webkit-scrollbar{display:none}.tab-btn{color:var(--text-muted);cursor:pointer;text-align:center;white-space:nowrap;background:0 0;border:none;border-radius:8px;flex:1;padding:6px 12px;font-size:.9rem;transition:all .2s}.tab-btn:hover{color:var(--text-main);background:#ffffff0d}.tab-btn.active{color:var(--accent-primary);background:#00e5ff1a;font-weight:500}.settings-group{flex-direction:column;gap:20px;display:flex}.setting-item{justify-content:space-between;align-items:center;display:flex}.danger-zone{border-top:1px solid #ff6b6b33;margin-top:32px;padding-top:24px}.reset-section{flex-direction:column;gap:12px;display:flex}.reset-info h4{color:var(--text-main);margin:0 0 4px;font-size:.95rem;font-weight:500}.reset-info p{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.4}.reset-btn{cursor:pointer;background:0 0;border-radius:16px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-size:.9rem;transition:all .2s;display:flex}.reset-btn.new-dawn-btn{color:var(--accent-primary);border:1px solid #00e5ff4d}.reset-btn.new-dawn-btn:hover{background:#00e5ff14}.reset-btn.full-reset-btn{color:#ff6b6b;border:1px solid #ff6b6b4d}.reset-btn.full-reset-btn:hover{background:#ff6b6b14}.stats-header-info{border:1px solid var(--border-color);background:#ffffff08;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:20px;padding:12px;display:flex}.info-row{justify-content:space-between;font-size:.85rem;display:flex}.info-label{color:var(--text-muted);align-items:center;gap:6px;display:flex}.info-value{color:var(--text-main);font-weight:500}.stats-grid{flex-direction:column;gap:8px;font-size:.85rem;display:flex}.grid-header{color:var(--text-muted);border-bottom:1px solid var(--border-color);grid-template-columns:2fr 1fr 1fr;padding:8px 12px;font-weight:500;display:grid}.grid-header div:not(:first-child){text-align:right}.grid-row{background:#ffffff05;border-radius:6px;grid-template-columns:2fr 1fr 1fr;align-items:center;padding:10px 12px;transition:background .2s;display:grid}.grid-row:hover{background:#ffffff0d}.stat-label{color:var(--text-main)}.stat-val{color:var(--text-muted);text-align:right}.grid-row:hover .stat-val{color:var(--text-main)}.event-message-container{z-index:50;pointer-events:none;justify-content:center;display:flex;position:absolute;top:14%;left:0;right:0}.event-message{letter-spacing:1px;text-align:center;border-radius:20px;padding:10px 24px;font-size:.95rem;animation:3.5s ease-in-out forwards fadeInOut}@keyframes fadeInOut{0%{opacity:0;transform:translateY(10px)}14%{opacity:1;transform:translateY(0)}86%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.night-sky{z-index:0;pointer-events:none;transition:background 1s;position:fixed;inset:0;overflow:hidden}.stars-container{transform-origin:50%;width:200vw;height:200vh;animation:480s linear infinite rotateSky;position:absolute;top:-50vh;left:-50vw}@keyframes rotateSky{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.shooting-star{opacity:0;pointer-events:none;z-index:2;background:#fff;border-radius:50%;width:2px;height:2px;position:absolute;box-shadow:0 0 4px 2px #fffc}.shooting-star:after{content:"";background:linear-gradient(90deg,#fffc,#0000);width:80px;height:1px;position:absolute;top:50%;left:0;transform:translateY(-50%)}@keyframes shoot{0%{opacity:0;transform:translate(0)rotate(-45deg)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translate(-600px,600px)rotate(-45deg)}}.bg-star{background:#fff;border-radius:50%;animation:ease-in-out infinite alternate twinkle;position:absolute}@keyframes twinkle{0%{opacity:.2;transform:scale(.8)}to{opacity:1;transform:scale(1.2);box-shadow:0 0 4px #fff}}.galaxy-bg{background:radial-gradient(#3f2b9626 0%,#0000 70%);animation:240s linear infinite rotate;position:absolute;inset:0}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=768px){.game-container{height:auto;min-height:100dvh}.game-main{pointer-events:none;flex-direction:column;gap:10px;height:auto;padding:16px;overflow:visible}.left-panel{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:100%;display:flex}.resource-panel{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);background:#0a10208c;border-radius:12px;gap:6px;width:100%;padding:6px 12px;box-shadow:0 4px 20px #0006}.right-panel{flex-direction:column;flex:none;width:100%;max-width:100%;height:auto;padding-right:0;display:flex;overflow:visible}.points-display{gap:8px}.points-display svg.icon-main{width:24px!important;height:24px!important}.points-info h2{font-size:1.2rem}.points-info p{font-size:.7rem}.stats-row{gap:12px;padding-top:4px}.stat-item{font-size:.75rem}.stat-item svg{width:12px!important;height:12px!important}.click-target-container{pointer-events:auto;flex-shrink:0;width:100%;height:195px;margin:8px 0}.moon-core{width:140px;height:140px}.upgrade-list{flex-direction:column;gap:8px;height:auto;display:flex;overflow:visible}.upgrade-list-header{padding-bottom:4px}.upgrade-list h3{font-size:1rem}.upgrade-items{flex-direction:column;flex:none;gap:8px;padding-bottom:20px;display:flex;overflow:visible}.floating-text{font-size:.85rem!important}.upgrade-btn{border-radius:12px;gap:8px;padding:8px 12px}.upgrade-icon{border-radius:8px;width:32px;height:32px}.upgrade-icon svg{width:18px!important;height:18px!important}.upgrade-header h4{font-size:.85rem}.level{padding:1px 6px;font-size:.7rem}.desc{margin-bottom:4px;font-size:.7rem}.cost-row{font-size:.7rem}.modal-content{width:95%;padding:16px}.grid-header,.grid-row{padding-left:6px;padding-right:6px;font-size:.75rem}.tab-btn{padding:6px 12px;font-size:.85rem}}.confirm-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:110;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-content{text-align:center;width:85%;max-width:320px;padding:20px}.confirm-content h4{color:var(--text-main);margin:0 0 12px;font-size:1.1rem;font-weight:500}.confirm-message{color:var(--text-muted);white-space:pre-wrap;margin:0 0 20px;font-size:.85rem;line-height:1.5}.confirm-actions{justify-content:center;gap:12px;display:flex}.confirm-btn{cursor:pointer;background:0 0;border-radius:12px;flex:1;padding:10px 24px;font-size:.9rem;transition:all .2s}.confirm-btn.yes{color:#ff6b6b;border:1px solid #ff6b6b4d}.confirm-btn.yes:hover{background:#ff6b6b1a}.confirm-btn.no{color:var(--text-main);border:1px solid var(--border-color)}.confirm-btn.no:hover{background:#ffffff0d}.achievement-toast{z-index:1000;opacity:0;pointer-events:none;border:1px solid #00e5ff33;align-items:center;gap:16px;width:320px;padding:16px;transition:all .8s ease-in-out;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(20px)scale(.95);box-shadow:0 10px 30px #00000080}.achievement-toast.show{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.achievement-toast-icon{background:#00e5ff1a;border:1px solid #00e5ff4d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;animation:.5s cubic-bezier(.175,.885,.32,1.275) popIn;display:flex}@keyframes popIn{0%{transform:scale(0)rotate(-30deg)}70%{transform:scale(1.1)rotate(10deg)}to{transform:scale(1)rotate(0)}}.achievement-toast-content{flex-direction:column;flex:1;gap:2px;display:flex}.achievement-toast-title{color:var(--accent-primary);letter-spacing:1px;text-transform:uppercase;font-size:.75rem;font-weight:600}.achievement-toast-name{color:var(--text-main);font-size:.95rem;font-weight:500}.achievement-toast-desc{color:var(--text-muted);font-size:.75rem;line-height:1.3}.achievements-tab-content{flex-direction:column;height:100%;display:flex}.achievements-summary{border:1px solid var(--border-color);background:#ffffff08;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 16px;font-size:.85rem;display:flex}.summary-label{color:var(--text-muted)}.summary-val{font-size:.95rem;font-weight:600}.achievements-list{flex:1;max-height:200px;margin-bottom:16px;padding-right:4px;overflow-y:auto}.achievements-list::-webkit-scrollbar{width:4px}.achievements-list::-webkit-scrollbar-track{background:#0000001a;border-radius:2px}.achievements-list::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.achievement-cat-section{margin-bottom:16px}.achievement-cat-title{color:var(--text-muted);letter-spacing:.5px;margin:0 0 8px;font-size:.8rem;font-weight:500}.achievement-grid,.constellation-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.achievement-item-btn{aspect-ratio:1;cursor:pointer;background:#12192b80;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.25,.8,.25,1);display:flex}.achievement-item-btn:hover{background:#ffffff08;transform:translateY(-2px)}.achievement-item-btn.locked{opacity:.4;background:#0003}.achievement-item-btn.locked .achievement-icon{color:var(--text-muted);filter:grayscale()brightness(.7)}.achievement-item-btn.unlocked{background:#00e5ff0d;border:1px solid #00e5ff1a}.achievement-item-btn.unlocked .achievement-icon{color:var(--accent-primary);filter:drop-shadow(0 0 4px #00e5ff4d)}.achievement-item-btn.selected{background:#00e5ff14;box-shadow:0 0 10px #00e5ff33;border-color:var(--accent-primary)!important}.achievement-icon{transition:transform .2s}.achievement-item-btn:active .achievement-icon{transform:scale(.9)}.achievement-detail-card{border:1px solid var(--border-color);background:#ffffff05;border-radius:14px;flex-direction:column;justify-content:center;min-height:96px;padding:12px 16px;display:flex}.detail-placeholder{text-align:center;color:var(--text-muted);padding:10px 0;font-size:.8rem}.detail-content{flex-direction:column;gap:6px;display:flex}.detail-header{justify-content:space-between;align-items:center;display:flex}.detail-header h4{letter-spacing:.5px;margin:0;font-size:.95rem;font-weight:500}.status-badge{border-radius:8px;padding:2px 8px;font-size:.7rem;font-weight:500}.status-badge.unlocked{color:var(--accent-primary);background:#00e5ff26}.status-badge.locked{color:var(--text-muted);background:#ffffff0a}.detail-desc{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.4}.detail-meta{gap:6px;font-size:.72rem;line-height:1.2;display:flex}.meta-label{color:var(--text-muted)}.meta-val{color:var(--text-main);font-weight:500}@media (width<=768px){.achievement-toast{width:auto;padding:12px;bottom:16px;left:16px;right:16px}.achievements-list{max-height:180px}.achievement-grid{grid-template-columns:repeat(5,1fr)}.constellation-grid{grid-template-columns:repeat(4,1fr)}.achievement-detail-card{min-height:80px;padding:10px 12px}}.constellation-overlay{animation:2.5s ease-in-out fadeIn}.constellation-group{transform-origin:50%;animation:3.5s cubic-bezier(.25,1,.5,1) forwards constellationGroupAppear}.constellation-group:not(.newly-unlocked){--final-opacity:.65}.constellation-group.newly-unlocked{--final-opacity:1}@keyframes constellationGroupAppear{0%{opacity:0;filter:brightness()drop-shadow(0 0 #0000);transform:scale(.92)}50%{opacity:1;filter:brightness()drop-shadow(0 0 #0000);transform:scale(1)}60%{opacity:1;filter:brightness(2)drop-shadow(0 0 20px #00e5ffd9);transform:scale(1.05)}to{opacity:var(--final-opacity,.65);filter:brightness()drop-shadow(0 0 #0000);transform:scale(1)}}.constellation-line{stroke:#ffffff73;stroke-width:1.4px;stroke-dasharray:4 4;transition:stroke 1s,stroke-width 1s}.newly-unlocked .constellation-line{stroke:#00e5ffd9;stroke-width:2px;stroke-dasharray:none;animation:2.5s ease-in-out 3.5s infinite alternate constellationLineGlow}.constellation-star{fill:#fff;filter:drop-shadow(0 0 3px #ffffffb3);animation:3s ease-in-out 3.5s infinite alternate constellationStarTwinkle}.newly-unlocked .constellation-star{fill:#fff;filter:drop-shadow(0 0 8px #00e5ff);animation:1.5s ease-in-out 3.5s infinite alternate constellationStarGlow}@keyframes constellationLineGlow{0%{stroke:#00e5ff66}to{stroke:#fffc}}@keyframes constellationStarTwinkle{0%{opacity:.4}to{opacity:1}}@keyframes constellationStarGlow{0%{opacity:.6;filter:drop-shadow(0 0 4px #00e5ff99)}to{opacity:1;filter:drop-shadow(0 0 10px #00e5ff)}}.constellation-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1010;background:#03060fd9}.constellation-modal-content{text-align:center;background:radial-gradient(circle at top,#101c36d9 0%,#080c18e6 100%);border:1px solid #00e5ff33;border-radius:24px;width:90%;max-width:440px;padding:36px 24px;position:relative;overflow:hidden;box-shadow:0 20px 50px #00e5ff26,inset 0 0 20px #00e5ff0d}.constellation-modal-header{flex-direction:column;align-items:center;gap:8px;margin-bottom:24px;display:flex}.modal-star-icon{color:var(--accent-primary);filter:drop-shadow(0 0 10px #00e5ff99);margin-bottom:8px}.constellation-modal-header h3{color:var(--text-main);letter-spacing:1px;margin:0;font-size:1.35rem;font-weight:500}.constellation-modal-header .subtitle{color:var(--text-muted);margin:4px 0 0;font-size:.85rem}.constellation-list-container{flex-direction:column;gap:16px;max-height:260px;margin-bottom:30px;padding:8px;display:flex;overflow-y:auto}.constellation-list-container::-webkit-scrollbar{width:4px}.constellation-list-container::-webkit-scrollbar-track{background:#0000001a;border-radius:2px}.constellation-list-container::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.constellation-unlock-item{background:#ffffff05;border:1px solid #ffffff0d;border-radius:16px;padding:16px;transition:all .3s;position:relative;overflow:hidden}.constellation-glow{pointer-events:none;background:radial-gradient(circle,#00e5ff14 0%,#0000 75%);position:absolute;inset:0}.constellation-item-inner{z-index:1;justify-content:center;align-items:center;gap:8px;margin-bottom:6px;display:flex;position:relative}.constellation-name{color:var(--accent-primary);letter-spacing:2px;text-shadow:0 0 8px #00e5ff66;font-size:1.2rem;font-weight:600}.constellation-desc{color:var(--text-muted);z-index:1;margin:0;font-size:.8rem;line-height:1.5;position:relative}.look-sky-btn{letter-spacing:1px;min-width:180px;font-weight:500;width:auto!important;color:var(--accent-primary)!important;border:1px solid #00e5ff66!important;padding:12px 32px!important}.look-sky-btn:hover{transform:translateY(-1px);box-shadow:0 0 15px #00e5ff40;background:#00e5ff1a!important}.constellations-tab-content{flex-direction:column;height:100%;display:flex}.constellation-item-btn{flex-direction:column!important;gap:6px!important;padding:10px 4px!important}.constellation-btn-label{color:var(--text-muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.65rem;transition:color .2s;overflow:hidden}.constellation-item-btn.unlocked .constellation-btn-label{color:var(--text-main);font-weight:500}.constellation-item-btn.selected .constellation-btn-label{color:var(--accent-primary)}.detail-layout{align-items:center;gap:16px;width:100%;display:flex}.constellation-detail-preview{border:1px solid var(--border-color);background:#0006;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:relative;overflow:hidden}.constellation-preview-locked{background:#ffffff05;border:1.5px dashed #ffffff26;border-radius:10px;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.constellation-preview-locked span{color:var(--text-muted);font-size:2.2rem;font-weight:300;line-height:1}.constellation-preview-svg{width:100%;height:100%;display:block}.detail-info-side{flex:1;min-width:0}.animate-scale-up{animation:.5s cubic-bezier(.34,1.56,.64,1) forwards scaleUp}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=920px) and (orientation:landscape){.game-main{pointer-events:none;flex-direction:row;gap:20px;height:calc(100dvh - 70px);padding:8px 16px}.left-panel{pointer-events:none;flex:1.2;gap:8px;min-width:250px}.right-panel{pointer-events:auto;flex:1;min-width:280px;max-width:320px;height:100%}.click-target-container{flex-shrink:1;height:300px;margin:4px 0}.moon-core{width:160px;height:160px}.resource-panel{gap:8px;padding:8px 16px}.points-display{gap:8px}.points-info h2{font-size:1.2rem}.points-info p{font-size:.75rem}.stats-row{gap:12px;padding-top:4px}.stat-item{font-size:.8rem}}@media (width<=920px) and (orientation:landscape) and (height<=500px){.click-target-container{height:140px;margin:2px 0}.moon-core{width:80px;height:80px}}.back-links{pointer-events:auto;align-items:center;gap:12px;display:flex}.back-link-btn{color:var(--text-muted);border:1px solid var(--border-color);background:#ffffff08;border-radius:12px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;text-decoration:none;transition:all .2s;display:flex}.back-link-btn:hover{color:var(--text-main);background:#ffffff14;border-color:#fff3}.settings-footer-links{border-top:1px solid var(--border-color);color:var(--text-muted);justify-content:center;gap:12px;margin-top:24px;padding-top:16px;font-size:.8rem;display:flex}.settings-footer-links a{color:var(--text-muted);text-decoration:none;transition:color .2s}.settings-footer-links a:hover{color:var(--accent-primary);text-decoration:underline}@media (width<=768px){.game-header{padding:12px 16px}.header-logo{height:40px}.pc-logo-container,.pc-nav-links{display:none}.mobile-nav-links{gap:8px;display:flex}.mobile-logo-container{display:block}.mobile-nav-links .back-link-btn{border-radius:50%;padding:8px}}.bgm-credit-section{background:#ffffff05;border:1px solid #ffffff14;border-radius:8px;margin:8px 0;padding:12px 16px}.bgm-credit-item{flex-direction:column;gap:6px;display:flex}.bgm-credit-header{align-items:center;gap:6px;display:flex}.bgm-credit-title{color:var(--accent-primary);letter-spacing:.5px;font-size:.8rem;font-weight:500}.bgm-credit-music-info{color:var(--text-muted);font-size:.8rem}.bgm-credit-music-info .bgm-credit-link{color:var(--text-main)}.bgm-credit-meta{color:var(--text-muted);font-size:.75rem}.bgm-credit-link{color:inherit;align-items:center;gap:.2rem;text-decoration:none;transition:color .2s;display:inline-flex}.bgm-credit-link:hover{color:var(--accent-primary);text-decoration:underline}.bgm-credit-link svg{opacity:.7;flex-shrink:0;width:.8em;height:.8em;transition:opacity .2s}.bgm-credit-link:hover svg{opacity:1}.observatory-panel{flex-direction:column;gap:16px;display:flex}.observatory-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.observatory-subtitle{color:var(--text-muted);max-width:260px;margin:0;font-size:.8rem;line-height:1.4}.stardust-balance-box{background:#ffffff05;border-radius:12px;flex-direction:column;align-items:flex-end;padding:8px 16px;display:flex}.stardust-balance-box .label{color:var(--text-muted);font-size:.75rem}.stardust-balance-box .value{font-size:1.1rem;font-weight:700}.research-tree-container{flex-direction:column;gap:20px;padding:8px 0;display:flex}.research-row{flex-direction:column;gap:8px;display:flex}.research-row .row-header{align-items:center;gap:8px;font-size:.9rem;display:flex}.research-row .row-title{font-weight:500}.research-row .row-level{font-size:.75rem}.node-list-wrapper{scrollbar-width:none;padding:8px 0;overflow-x:auto}.node-list-wrapper::-webkit-scrollbar{display:none}.node-list{align-items:center;gap:0;padding:0 4px;display:flex}.node-item{align-items:center;display:flex}.node-line{background:#ffffff14;width:14px;height:2px}.node-line.unlocked{background:var(--accent-primary);box-shadow:0 0 4px var(--accent-primary)}.node-btn{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;z-index:1;background:#12192bcc;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}.node-btn:hover{color:var(--text-main);background:#ffffff0d}.node-btn.unlocked{background:var(--accent-primary);color:#050814;border-color:var(--accent-primary);box-shadow:0 0 8px #00e5ff66}.node-btn.purchasable{border-color:var(--accent-primary);color:var(--accent-primary);animation:2s infinite alternate glowPulse;box-shadow:0 0 8px #00e5ff33}.node-btn.affordable-locked{border-color:var(--text-muted);color:var(--text-main)}.node-btn.locked{opacity:.4;cursor:not-allowed}.node-btn.selected{outline-offset:2px;outline:2px solid #fff}@keyframes glowPulse{0%{box-shadow:0 0 4px #00e5ff1a}to{box-shadow:0 0 12px #00e5ff80}}.research-detail-card{border-radius:12px;justify-content:center;align-items:center;min-height:110px;padding:16px;display:flex}.research-detail-card .detail-placeholder{text-align:center}.research-detail-card .detail-placeholder p{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.4}.research-detail-card .detail-content{width:100%}.research-detail-card .detail-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.header-left-side{flex-direction:column;gap:2px;display:flex}.research-detail-card h4{margin:0;font-size:.95rem;font-weight:500}.research-detail-card .level{font-size:.75rem}.research-detail-card .status-badge{border-radius:12px;padding:2px 8px;font-size:.7rem}.research-detail-card .status-badge.unlocked{color:var(--accent-primary);background:#00e5ff1a;border:1px solid #00e5ff33}.research-detail-card .status-badge.locked{color:var(--text-muted);background:#ffffff0d}.research-detail-card .status-badge.purchasable{color:var(--light-primary);background:#fdfade1a;border:1px solid #fdfade33}.research-detail-card .detail-desc{color:var(--text-muted);margin:0 0 12px;font-size:.8rem;line-height:1.4}.research-action-row{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.cost-info{gap:6px;font-size:.8rem;display:flex}.cost-info .cost-label{color:var(--text-muted)}.cost-info .cost-value{font-weight:700}.research-btn-action{color:var(--accent-primary);cursor:pointer;background:#00e5ff1a;border:1px solid #00e5ff4d;border-radius:12px;padding:6px 16px;font-size:.8rem;transition:all .2s}.research-btn-action:hover:not(:disabled){background:#00e5ff33;transform:translateY(-1px)}.research-btn-action:disabled{opacity:.5;cursor:not-allowed;border-color:var(--border-color);color:var(--text-muted);background:0 0}.observatory-open-btn{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.observatory-open-btn.mini{pointer-events:auto;align-items:center;gap:4px;width:auto;margin-left:auto;padding:6px 12px;font-size:.75rem;display:flex}.observatory-open-btn:hover{color:var(--accent-primary);background:#00e5ff14;border-color:#00e5ff4d}.observatory-open-btn:active{transform:scale(.98)}.observatory-modal{max-width:560px}.twinkling-star-container{cursor:pointer;pointer-events:auto;z-index:15;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:72px;height:72px;animation:1s ease-out forwards starFadeIn;display:flex;position:absolute;transform:translate(-50%,-50%)}.twinkling-star-container.fading-out{animation:2s ease-in forwards starFadeOut}@keyframes starFadeIn{0%{opacity:0}to{opacity:1}}@keyframes starFadeOut{0%{opacity:1}to{opacity:0}}.twinkling-star-visual{width:36px;height:36px;color:var(--light-primary);filter:drop-shadow(0 0 8px #fdfae2e6)drop-shadow(0 0 16px #00e5ff99);animation:4s linear infinite starTwinklePulse}@keyframes starTwinklePulse{0%{opacity:.85;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.25)rotate(180deg)}to{opacity:.85;transform:scale(1)rotate(360deg)}}.buffs-container{z-index:20;pointer-events:auto;gap:6px;display:flex;position:absolute;top:calc(100% + 8px);right:16px}.buff-badge{color:#fff;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:500;animation:2.5s ease-in-out infinite buffPulse;display:flex}.buff-badge svg{flex-shrink:0}.buff-badge.click-buff{color:#ffb74d;background:#ffaa0026;border-color:#ffaa0059;box-shadow:0 0 10px #ffaa0026}.buff-badge.production-buff{color:var(--accent-primary);background:#00e5ff26;border-color:#00e5ff59;box-shadow:0 0 10px #00e5ff26}@keyframes buffPulse{0%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}to{opacity:.85;transform:scale(1)}}.event-floating-text{pointer-events:none;z-index:50;color:#fff;text-shadow:0 2px 10px #00e5ff99,0 0 4px #000;font-size:1rem;font-weight:600;animation:1.5s ease-out forwards eventFloatUp;position:absolute;transform:translate(-50%,-50%)}@keyframes eventFloatUp{0%{opacity:0;transform:translate(-50%,-50%)translateY(0)scale(.9)}15%{opacity:1;transform:translate(-50%,-50%)translateY(-20px)scale(1.1)}80%{opacity:1;transform:translate(-50%,-50%)translateY(-60px)scale(1)}to{opacity:0;transform:translate(-50%,-50%)translateY(-80px)scale(.95)}}.lang-en,html[lang=en] .lang-ja{display:none!important}html[lang=en] .lang-en{display:block!important}html[lang=en] .footer-links.lang-en{display:flex!important}.play-page-footer-container{box-sizing:border-box;z-index:10;text-shadow:0 1px 4px #0009;width:100%;max-width:1200px;margin:40px auto 20px;padding:0 40px;position:relative}.play-page-description{text-align:center;color:var(--text-muted);margin-bottom:24px;font-size:.85rem;line-height:1.6}.play-page-description a{color:var(--accent-primary);border-bottom:1px dashed #00e5ff66;text-decoration:none;transition:all .2s}.play-page-description a:hover{color:#fff;border-bottom-style:solid}.play-page-footer{border-top:1px solid var(--border-color);text-align:center;padding-top:20px}.play-page-footer .footer-links{flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:16px;display:flex}.play-page-footer .footer-links a{color:var(--text-muted);font-size:.8rem;text-decoration:none;transition:color .2s}.play-page-footer .footer-links a:hover{color:var(--text-main)}.play-page-footer .copyright{color:#fff3;margin:0;font-size:.75rem}.noscript-container{text-align:center;color:#ff6b6b;z-index:100;background:#ff6b6b1a;border:1px solid #ff6b6b4d;border-radius:8px;max-width:600px;margin:20px auto;padding:16px;font-size:.9rem;line-height:1.5;position:relative}.noscript-container a{color:#ff8787;text-decoration:underline}@media (width<=768px){.play-page-footer-container{margin-top:20px;padding:0 16px}.play-page-description{margin-bottom:16px;font-size:.8rem}.play-page-footer .footer-links{gap:12px 16px}}
