:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;--ink-black: #0c0c0e;--jade-green: #2d5a27;--cinnabar-red: #8b0000;--gold-leaf: #d4af37;--text-main: #d1d5db;--text-dim: #9ca3af;color-scheme:dark;color:var(--text-main);background-color:var(--ink-black);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{background-color:#0c0c0e;color-scheme:dark;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}a{font-weight:500;color:var(--gold-leaf);text-decoration:inherit;-webkit-tap-highlight-color:transparent}a:hover{color:#f3dfa2}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background-color:#0c0c0e;color-scheme:dark;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 50% -10%,rgba(45,90,39,.15) 0%,transparent 45%),radial-gradient(circle at 5% 90%,rgba(20,20,25,.8) 0%,transparent 35%);background-repeat:no-repeat;background-size:100% 100%}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.02;background-image:radial-gradient(#d4af37 1px,transparent 1px);background-size:24px 24px;z-index:100}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;color:var(--text-main);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--jade-green)}button:focus,button:focus-visible{outline:2px auto var(--jade-green)}input,select,textarea{font-size:16px;font-family:inherit;-webkit-tap-highlight-color:transparent}.wrap{position:relative;width:100%;max-width:600px;min-height:100dvh;margin:0 auto;padding:0 16px;box-sizing:border-box;text-align:center;overflow-x:hidden;background:#0c0c0eb3;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 0 60px #00000080;border-left:1px solid rgba(212,175,55,.05);border-right:1px solid rgba(212,175,55,.05)}main{width:100%;margin:0 auto;padding-top:1rem}@media(max-width:400px){.wrap{padding:0 10px}main{padding-top:.5rem}h2{font-size:1.5rem!important;margin:.5rem 0!important}h3{font-size:1.1rem!important;margin:.5rem 0!important}section{margin-bottom:.75rem!important}.status-section{padding:.5rem 0!important}}.app-loading-container,.main-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background-color:var(--bg-color, #121212);color:var(--text-dim, #888)}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--jade-green, #4caf50);border-radius:50%;animation:spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.basic-layout{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;width:100%;box-sizing:border-box;overflow-x:hidden}.layout-content{position:relative;flex:1;width:100%;box-sizing:border-box;-webkit-overflow-scrolling:touch}.bottom-navigation{position:fixed;left:50%;transform:translate(-50%);width:100%;max-width:600px;display:flex;justify-content:space-around;align-items:center;background:#0c0c0eeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(212,175,55,.2);z-index:1000;box-sizing:border-box;user-select:none;-webkit-user-select:none;box-shadow:0 -4px 16px #0006}.nav-item{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text-dim);transition:all .25s ease;gap:3px;padding:6px 16px;border-radius:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.nav-item:hover,.nav-item.active{color:var(--gold-leaf);text-shadow:0 0 10px rgba(212,175,55,.4)}.nav-item.active .nav-icon{transform:scale(1.1);filter:drop-shadow(0 0 6px rgba(212,175,55,.5))}.nav-icon{font-size:1.35rem;transition:transform .2s ease}.nav-label{font-size:.72rem;font-weight:600;letter-spacing:.05em}@media(max-width:400px){.nav-item{padding:4px 10px}.nav-icon{font-size:1.2rem}.nav-label{font-size:.65rem}}.top-action-bar{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);width:calc(100% - 24px);max-width:580px;display:flex;justify-content:space-between;align-items:center;z-index:1001;pointer-events:none;user-select:none;-webkit-user-select:none}@media(max-width:380px){.top-action-bar{width:calc(100% - 16px);top:calc(8px + env(safe-area-inset-top,0px))}}.spirit-stone-badge-btn{pointer-events:auto;display:flex;align-items:center;gap:6px;background:#0e0e12d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.3);padding:6px 14px;border-radius:20px;cursor:pointer;box-shadow:0 4px 12px #0006,inset 0 0 10px #d4af370d;transition:all .25s ease;color:inherit;-webkit-tap-highlight-color:transparent}.spirit-stone-badge-btn:hover{border-color:var(--gold-leaf, #d4af37);box-shadow:0 4px 16px #d4af3740;transform:translateY(-1px)}.stone-gem-icon{font-size:1rem;filter:drop-shadow(0 0 4px rgba(78,205,196,.4))}.stone-count-text{font-size:.88rem;font-weight:700;color:var(--gold-leaf, #d4af37);letter-spacing:.04em}.top-action-buttons{pointer-events:auto;display:flex;align-items:center;gap:8px}.top-action-icon-btn{width:38px;height:38px;border-radius:50%;background:#0e0e12c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.25);color:var(--text-dim, #ccc);font-size:1.05rem;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 4px 12px #0006;transition:all .25s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.top-action-icon-btn:hover{border-color:var(--gold-leaf, #d4af37);color:var(--gold-leaf, #d4af37);transform:translateY(-2px);box-shadow:0 4px 16px #d4af3740}.top-action-icon-btn.settings-trigger-btn{position:static;width:38px;height:38px}.top-action-icon-btn.settings-trigger-btn:hover{transform:translateY(-2px) rotate(30deg)}@media(max-width:380px){.spirit-stone-badge-btn{padding:5px 10px;font-size:.8rem}.stone-count-text{font-size:.8rem}.top-action-icon-btn{width:34px;height:34px;font-size:.95rem}.top-action-icon-btn.settings-trigger-btn{width:34px;height:34px}.top-action-buttons{gap:6px}}.exit-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:100dvh;background-color:#0c0c0ed9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:11000;animation:exitModalFadeIn .3s ease-out;overflow-y:auto;padding:max(16px,env(safe-area-inset-top,16px)) 16px max(16px,env(safe-area-inset-bottom,16px));box-sizing:border-box}.exit-modal-card{position:relative;width:100%;max-width:420px;max-height:min(90dvh,640px);margin:auto;background-color:#121216;border:1px solid rgba(212,175,55,.3);box-shadow:0 10px 30px #000000b3,0 0 20px #d4af370d;border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:20px;animation:exitModalScaleUp .3s cubic-bezier(.34,1.56,.64,1);overflow-y:auto;box-sizing:border-box}.corner-decor{position:absolute;width:12px;height:12px;border:2px solid var(--gold-leaf)}.corner-decor.top-left{top:8px;left:8px;border-right:none;border-bottom:none}.corner-decor.top-right{top:8px;right:8px;border-left:none;border-bottom:none}.corner-decor.bottom-left{bottom:8px;left:8px;border-right:none;border-top:none}.corner-decor.bottom-right{bottom:8px;right:8px;border-left:none;border-top:none}.exit-modal-header{display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(212,175,55,.15);padding-bottom:12px}.exit-modal-icon{font-size:1.6rem;animation:spinSlow 8s linear infinite}.exit-modal-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--gold-leaf);text-shadow:0 0 10px rgba(212,175,55,.2);letter-spacing:.02em}.exit-modal-body{display:flex;flex-direction:column;gap:16px}.exit-modal-desc{margin:0;font-size:.9rem;line-height:1.6;color:var(--text-main);text-align:center}.exit-modal-ad-container{position:relative;border-radius:8px;background-color:#141419e6;border:1px dashed rgba(212,175,55,.15);padding:16px;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:all .25s ease}.exit-modal-ad-container.clickable{cursor:pointer}.exit-modal-ad-container.clickable:hover{background-color:#d4af3714;border-color:#d4af3766;box-shadow:0 4px 15px #d4af3726}.exit-modal-reward-toast{background:#4ecdc426;color:#4ecdc4;border:1px solid rgba(78,205,196,.4);padding:8px 12px;border-radius:8px;font-size:.82rem;text-align:center;font-weight:600;animation:exitToastFade .25s ease}@keyframes exitToastFade{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.ad-badge{position:absolute;top:4px;left:6px;font-size:.6rem;font-weight:700;color:var(--gold-leaf);background-color:#d4af3726;padding:1px 5px;border-radius:3px;border:1px solid rgba(212,175,55,.3)}.web-fallback-ad{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left}.web-fallback-ad:hover .ad-title{color:#fff;text-shadow:0 0 8px rgba(255,255,255,.4)}.web-fallback-ad:hover .ad-action-btn{background-color:var(--gold-leaf);color:var(--ink-black);box-shadow:0 0 10px #d4af3766}.ad-content{flex:1;display:flex;flex-direction:column;gap:4px}.ad-title{font-size:.85rem;font-weight:700;color:var(--gold-leaf);transition:all .2s ease}.ad-desc{font-size:.72rem;line-height:1.4;color:var(--text-dim)}.ad-action-btn{flex-shrink:0;padding:6px 12px;font-size:.75rem;font-weight:700;background-color:transparent;color:var(--gold-leaf);border:1px solid var(--gold-leaf);border-radius:4px;cursor:pointer;transition:all .2s ease}.app-ad-placeholder{text-align:center}.app-ad-placeholder .ad-title{color:#a855f7;margin-bottom:2px}.exit-modal-footer{display:flex;gap:12px;margin-top:4px}.exit-modal-btn{flex:1;padding:12px;font-size:.9rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:inherit;border:1px solid transparent}.cancel-btn{background:linear-gradient(135deg,#1e3a1e 0%,var(--jade-green) 100%);color:#fff;border:1px solid rgba(45,90,39,.4);box-shadow:0 4px 10px #2d5a2733}.cancel-btn:hover{background:linear-gradient(135deg,var(--jade-green) 0%,#3e7a36 100%);box-shadow:0 4px 15px #2d5a2766;transform:translateY(-1px)}.cancel-btn:active{transform:translateY(0)}.confirm-btn{background-color:#141419cc;color:var(--text-dim);border:1px solid rgba(255,255,255,.1)}.confirm-btn:hover{background-color:var(--cinnabar-red);color:#fff;border-color:var(--cinnabar-red);box-shadow:0 4px 15px #8b00004d;transform:translateY(-1px)}.confirm-btn:active{transform:translateY(0)}@keyframes exitModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes exitModalScaleUp{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ad-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:12000;padding:16px;animation:adConfirmFade .2s ease-out}@keyframes adConfirmFade{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ad-confirm-card{background:linear-gradient(145deg,#181820,#0f0f14);border:1px solid rgba(212,175,55,.4);box-shadow:0 16px 40px #000c,0 0 25px #d4af3726;border-radius:16px;width:100%;max-width:380px;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.ad-confirm-icon-wrap{width:52px;height:52px;background:#d4af371f;border:1px solid rgba(212,175,55,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:2px}.ad-confirm-icon{font-size:1.6rem;filter:drop-shadow(0 2px 6px rgba(212,175,55,.4))}.ad-confirm-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--gold-leaf, #d4af37);letter-spacing:.03em}.ad-confirm-desc{margin:0;font-size:.88rem;line-height:1.5;color:var(--text-dim, #ccc)}.ad-confirm-reward-box{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;font-size:.82rem;width:100%;box-sizing:border-box;justify-content:center}.reward-box-label{color:var(--text-dim, #888)}.reward-box-value{color:#4ecdc4;font-weight:700}.ad-confirm-actions{display:flex;gap:10px;width:100%;margin-top:6px}.ad-confirm-btn{flex:1;padding:10px 14px;border-radius:10px;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s ease}.ad-confirm-btn.cancel{background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:var(--text-dim, #aaa)}.ad-confirm-btn.cancel:hover{background:#ffffff1f;color:#fff}.ad-confirm-btn.confirm{background:linear-gradient(135deg,var(--gold-leaf, #d4af37),#aa8014);border:1px solid rgba(212,175,55,.6);color:#111;font-weight:700;box-shadow:0 4px 15px #d4af374d}.ad-confirm-btn.confirm:hover{background:#e6c34e;box-shadow:0 4px 20px #d4af3780;transform:translateY(-1px)}.technique-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:max(16px,env(safe-area-inset-top,16px)) max(12px,env(safe-area-inset-right,12px)) max(16px,env(safe-area-inset-bottom,16px)) max(12px,env(safe-area-inset-left,12px));box-sizing:border-box;animation:techniqueFadeIn .25s ease-out}@keyframes techniqueFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.technique-modal-container{background:linear-gradient(145deg,#14141af2,#0c0c10fa);border:1px solid rgba(212,175,55,.3);box-shadow:0 16px 40px #0009,0 0 20px #d4af371a;border-radius:16px;width:100%;max-width:540px;max-height:min(88dvh,720px);display:flex;flex-direction:column;overflow:hidden;color:var(--text-color, #e0e0e0);box-sizing:border-box}.technique-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(212,175,55,.15);background:#ffffff05}.technique-header-title-box{display:flex;align-items:center;gap:12px}.technique-header-icon{font-size:1.8rem;filter:drop-shadow(0 2px 6px rgba(212,175,55,.3))}.technique-modal-title{font-size:1.25rem;font-weight:700;color:var(--gold-leaf, #d4af37);letter-spacing:.05em;margin:0;text-shadow:0 0 12px rgba(212,175,55,.3)}.technique-modal-subtitle{font-size:.8rem;color:var(--text-dim, #a0a0a0);margin:2px 0 0;line-height:1.4}.technique-modal-close{background:transparent;border:none;color:var(--text-dim, #a0a0a0);font-size:1.3rem;cursor:pointer;padding:6px;border-radius:50%;line-height:1;transition:all .2s ease}.technique-modal-close:hover{color:#fff;background:#ffffff1a}.technique-modal-content{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.technique-modal-content::-webkit-scrollbar{width:6px}.technique-modal-content::-webkit-scrollbar-thumb{background:#d4af3740;border-radius:3px}.technique-section{display:flex;flex-direction:column;gap:12px}.technique-section-header{display:flex;align-items:center;justify-content:space-between}.technique-section-title{font-size:.95rem;font-weight:600;color:var(--gold-leaf, #d4af37);letter-spacing:.03em}.goto-shop-btn{background:#d4af371a;border:1px solid rgba(212,175,55,.3);color:var(--gold-leaf, #d4af37);font-size:.8rem;padding:4px 10px;border-radius:20px;cursor:pointer;transition:all .2s}.goto-shop-btn:hover{background:#d4af3740;box-shadow:0 0 10px #d4af3733}.equipped-slots-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.equipped-slot-card{border-radius:12px;padding:14px;transition:all .3s ease;display:flex;flex-direction:column;position:relative}.equipped-slot-card.active{background:linear-gradient(135deg,#d4af3714,#1e191499);border:1px solid rgba(212,175,55,.4);box-shadow:inset 0 0 15px #d4af370d}.equipped-slot-card.empty{background:#ffffff05;border:1px dashed rgba(255,255,255,.15);min-height:120px;align-items:center;justify-content:center;gap:8px;color:var(--text-dim, #777)}.empty-slot-icon{font-size:1.4rem;opacity:.6}.empty-slot-text{font-size:.85rem}.slot-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.slot-badge{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:10px;background:linear-gradient(135deg,#d4af37,#aa8014);color:#111;letter-spacing:.05em}.unequip-btn{background:#ff464626;border:1px solid rgba(255,70,70,.3);color:#f88;font-size:.75rem;padding:3px 8px;border-radius:6px;cursor:pointer;transition:all .2s}.unequip-btn:hover{background:#ff46464d;color:#fff}.slot-card-body{display:flex;align-items:center;gap:10px;margin-bottom:12px}.slot-tech-icon{font-size:1.8rem;background:#0000004d;padding:8px;border-radius:10px;border:1px solid rgba(212,175,55,.2)}.slot-tech-info{flex:1}.slot-tech-name{font-size:.95rem;font-weight:700;color:#fff}.slot-tech-desc{font-size:.75rem;color:var(--text-dim, #a0a0a0);margin-top:2px;line-height:1.3}.slot-mastery-wrap{display:flex;flex-direction:column;gap:4px}.slot-mastery-label{display:flex;justify-content:space-between;font-size:.7rem;color:var(--text-dim, #888)}.slot-mastery-track{height:5px;background:#0006;border-radius:3px;overflow:hidden;border:1px solid rgba(255,255,255,.05)}.slot-mastery-fill{height:100%;background:linear-gradient(90deg,#d4af37,#4ecdc4);border-radius:3px;transition:width .3s ease}.owned-techniques-list{display:flex;flex-direction:column;gap:10px}.technique-item-card{display:flex;align-items:center;justify-content:space-between;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 16px;transition:all .2s ease;gap:12px}.technique-item-card:hover{background:#ffffff0d;border-color:#d4af3733}.technique-item-card.is-equipped{border-color:#d4af3766;background:#d4af370a}.tech-item-left{display:flex;align-items:center;gap:14px;flex:1}.tech-item-icon{font-size:1.8rem;width:44px;height:44px;background:#0006;border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);flex-shrink:0}.tech-item-details{flex:1;display:flex;flex-direction:column;gap:4px}.tech-item-name-row{display:flex;align-items:center;gap:8px}.tech-item-name{font-size:.95rem;font-weight:700;color:#fff}.tech-tier-pill{font-size:.7rem;padding:1px 6px;border-radius:8px;background:#d4af3733;color:var(--gold-leaf, #d4af37);border:1px solid rgba(212,175,55,.3)}.tech-item-desc{font-size:.78rem;color:var(--text-dim, #a0a0a0);margin:0;line-height:1.3}.tech-item-mastery-box{display:flex;flex-direction:column;gap:3px;margin-top:4px;max-width:220px}.tech-mastery-text{display:flex;justify-content:space-between;font-size:.68rem;color:var(--text-dim, #777)}.tech-mastery-bar{height:4px;background:#0006;border-radius:2px;overflow:hidden}.tech-mastery-progress{height:100%;background:linear-gradient(90deg,#d4af37,#4ecdc4);border-radius:2px}.tech-item-right{display:flex;align-items:center;flex-shrink:0}.tech-action-btn{padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.tech-action-btn.equip{background:linear-gradient(135deg,#d4af3733,#d4af371a);border:1px solid rgba(212,175,55,.4);color:var(--gold-leaf, #d4af37)}.tech-action-btn.equip:hover:not(:disabled){background:var(--gold-leaf, #d4af37);color:#111;box-shadow:0 0 12px #d4af374d}.tech-action-btn.equip:disabled{opacity:.4;cursor:not-allowed;border-color:#ffffff1a;color:#888}.tech-action-btn.unequip{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:var(--text-dim, #aaa)}.tech-action-btn.unequip:hover{background:#ff464633;border-color:#ff464666;color:#f88}.tech-category-picker{display:flex;align-items:center;gap:8px;margin-top:6px;background:#00000059;padding:4px 10px;border-radius:8px;border:1px solid rgba(212,175,55,.2);width:fit-content}.picker-label{font-size:.72rem;color:var(--gold-leaf, #d4af37);font-weight:600;white-space:nowrap}.tech-category-select{background:transparent;border:none;color:#fff;font-size:.75rem;font-weight:500;cursor:pointer;outline:none}.tech-category-select option{background:#181820;color:#fff}@media(max-width:480px){.technique-modal-content{padding:16px;gap:18px}.technique-modal-header{padding:16px}.equipped-slots-grid{grid-template-columns:1fr}.tech-item-left{gap:10px}}.shop-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000c7;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:max(16px,env(safe-area-inset-top,16px)) max(12px,env(safe-area-inset-right,12px)) max(16px,env(safe-area-inset-bottom,16px)) max(12px,env(safe-area-inset-left,12px));box-sizing:border-box;animation:shopFadeIn .25s ease-out}@keyframes shopFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.shop-modal-container{background:linear-gradient(150deg,#16121cf5,#0c0a12fa);border:1px solid rgba(212,175,55,.35);box-shadow:0 16px 45px #000000b3,0 0 25px #d4af371f;border-radius:16px;width:100%;max-width:540px;max-height:min(88dvh,720px);display:flex;flex-direction:column;overflow:hidden;color:var(--text-color, #e0e0e0);position:relative;box-sizing:border-box}.shop-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid rgba(212,175,55,.15);background:#ffffff05}.shop-header-title-box{display:flex;align-items:center;gap:12px}.shop-header-icon{font-size:1.8rem;filter:drop-shadow(0 2px 6px rgba(212,175,55,.4))}.shop-modal-title{font-size:1.25rem;font-weight:700;color:var(--gold-leaf, #d4af37);letter-spacing:.05em;margin:0;text-shadow:0 0 12px rgba(212,175,55,.35)}.shop-modal-subtitle{font-size:.8rem;color:var(--text-dim, #a0a0a0);margin:2px 0 0;line-height:1.4}.shop-modal-close{background:transparent;border:none;color:var(--text-dim, #a0a0a0);font-size:1.3rem;cursor:pointer;padding:6px;border-radius:50%;line-height:1;transition:all .2s ease}.shop-modal-close:hover{color:#fff;background:#ffffff1a}.shop-balance-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.05)}.balance-info{display:flex;align-items:center;gap:10px}.balance-label{font-size:.8rem;color:var(--text-dim, #aaa)}.balance-amount{display:flex;align-items:center;gap:4px;background:#d4af371f;border:1px solid rgba(212,175,55,.35);padding:3px 12px;border-radius:20px}.stone-gem{font-size:1.1rem}.stone-val{font-size:1rem;font-weight:700;color:var(--gold-leaf, #d4af37);letter-spacing:.05em}.charge-ad-btn{background:linear-gradient(135deg,#4ecdc433,#4ecdc414);border:1px solid rgba(78,205,196,.4);color:#4ecdc4;padding:4px 10px;border-radius:16px;font-size:.76rem;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap}.charge-ad-btn:hover:not(:disabled){background:#4ecdc44d;box-shadow:0 0 10px #4ecdc44d;transform:translateY(-1px)}.charge-ad-btn:disabled{opacity:.5;cursor:wait}.shop-buff-status-bar{display:flex;gap:10px;padding:10px 24px;background:#00000038;border-bottom:1px solid rgba(255,255,255,.05)}.buff-status-card{flex:1;display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background:#ffffff05;border:1px solid rgba(255,255,255,.07);transition:all .2s ease}.buff-status-card.elixir.active{border-color:#4ecdc466;background:linear-gradient(135deg,#4ecdc41a,#4ecdc408);box-shadow:inset 0 0 10px #4ecdc414}.buff-status-card.shield{border-color:#ffaa0040;background:linear-gradient(135deg,#ffaa0014,#ffaa0005)}.buff-card-icon{font-size:1.3rem;flex-shrink:0}.buff-card-info{display:flex;flex-direction:column;gap:2px;overflow:hidden}.buff-card-name{font-size:.72rem;color:var(--text-dim, #aaa);font-weight:500;white-space:nowrap}.buff-card-detail{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.buff-highlight{font-size:.78rem;font-weight:700;color:#4ecdc4}.buff-time-left{font-size:.75rem;color:#a8edea;font-weight:600}.buff-inactive{font-size:.75rem;color:var(--text-dim, #777)}.buff-count-text{font-size:.78rem;font-weight:700;color:#fa0}.shop-feedback-toast{position:absolute;top:75px;left:50%;transform:translate(-50%);background:#141419f2;color:var(--gold-leaf, #d4af37);border:1px solid var(--gold-leaf, #d4af37);padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;box-shadow:0 4px 15px #00000080;z-index:10;animation:toastFade .2s ease}@keyframes toastFade{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.shop-tabs{display:flex;padding:12px 24px 0;gap:10px;border-bottom:1px solid rgba(255,255,255,.06)}.shop-tab-btn{background:transparent;border:none;color:var(--text-dim, #888);font-size:.9rem;font-weight:600;padding:8px 16px;cursor:pointer;position:relative;transition:all .2s}.shop-tab-btn:hover{color:#e0e0e0}.shop-tab-btn.active{color:var(--gold-leaf, #d4af37)}.shop-tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold-leaf, #d4af37);box-shadow:0 0 8px #d4af3799}.shop-items-container{padding:18px 24px;overflow-y:auto;flex:1}.shop-items-container::-webkit-scrollbar{width:6px}.shop-items-container::-webkit-scrollbar-thumb{background:#d4af3740;border-radius:3px}.shop-grid{display:flex;flex-direction:column;gap:12px}.shop-item-card{display:flex;align-items:center;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px 16px;gap:14px;transition:all .2s ease}.shop-item-card:hover{background:#ffffff0d;border-color:#d4af3740}.shop-item-card.owned{background:#d4af3708;border-color:#d4af3733}.item-icon-wrap{font-size:2rem;width:48px;height:48px;background:#00000059;border:1px solid rgba(212,175,55,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.item-icon-wrap.elixir{border-color:#4ecdc44d}.item-info{flex:1;display:flex;flex-direction:column;gap:4px}.item-name-row{display:flex;align-items:center;gap:8px}.item-name{font-size:.95rem;font-weight:700;color:#fff}.item-owned-badge{font-size:.68rem;padding:1px 6px;border-radius:6px;background:#4ecdc433;color:#4ecdc4;border:1px solid rgba(78,205,196,.3)}.item-active-badge{font-size:.68rem;padding:1px 6px;border-radius:6px;background:#fa03;color:#fa0;border:1px solid rgba(255,170,0,.4)}.item-desc{font-size:.78rem;color:var(--text-dim, #aaa);margin:0;line-height:1.35}.item-action-row{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.item-price{display:flex;align-items:center;gap:2px}.price-gem{font-size:.95rem}.price-val{font-size:.95rem;font-weight:700;color:var(--gold-leaf, #d4af37)}.item-btn{padding:6px 14px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.item-btn.buy{background:linear-gradient(135deg,#d4af3740,#d4af3726);border:1px solid rgba(212,175,55,.45);color:var(--gold-leaf, #d4af37)}.item-btn.buy:hover:not(:disabled){background:var(--gold-leaf, #d4af37);color:#111;box-shadow:0 0 10px #d4af3766}.item-btn.buy:disabled{opacity:.35;cursor:not-allowed;border-color:#ffffff1a;color:#777}.item-btn.view-tech{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:var(--text-dim, #ccc)}.item-btn.view-tech:hover{border-color:var(--gold-leaf, #d4af37);color:var(--gold-leaf, #d4af37)}.shop-modal-footer{padding:12px 24px;border-top:1px solid rgba(255,255,255,.05);background:#00000040;text-align:center}.footer-tip{font-size:.72rem;color:var(--text-dim, #888)}@media(max-width:480px){.shop-modal-header,.shop-balance-bar,.shop-tabs,.shop-items-container,.shop-modal-footer{padding-left:16px;padding-right:16px}.shop-item-card{padding:12px}}.main-container{display:flex;flex-direction:column;gap:24px}.status-section{padding:24px;border-radius:20px;box-shadow:0 10px 30px #1a73e81a;text-align:center;border:1px solid var(--border-color);transition:all .5s ease}.status-section.stage-eung-sim{background:linear-gradient(135deg,#fff,#f3e5f5);border-color:#ce93d8;box-shadow:0 10px 30px #9c27b026}.status-section.stage-cheon-gyo{background:linear-gradient(135deg,#fff,#fffde7);border-color:#fff176;box-shadow:0 10px 30px #ffd70033}.status-label{font-size:13px;color:var(--text-secondary);letter-spacing:.05em}.status-title{font-size:clamp(18px,4.5vw,22px);font-weight:700;margin:4px 0 16px;color:var(--primary-color);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;word-break:keep-all}.progress-bar{width:100%;height:8px;background-color:#eee;border-radius:4px;margin:16px 0 8px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#1a73e8,#64b5f6,#1a73e8);background-size:200% 100%;border-radius:4px;transition:width .5s cubic-bezier(.4,0,.2,1);animation:energy-flow 3s linear infinite}@keyframes energy-flow{0%{background-position:200% 0}to{background-position:0% 0}}.status-stats{font-size:12px;color:var(--text-secondary);margin:0}.content-section{display:flex;flex-direction:column;gap:12px}.section-title{font-size:1.1rem;font-weight:700;margin:0 0 8px;color:var(--text-main);border-left:3px solid var(--jade-green);padding-left:12px;letter-spacing:.1em}.item-list{display:flex;flex-direction:column;gap:10px}.item-card{background:linear-gradient(to right,#d4c39e,#f1e7c9 10%,#f1e7c9 90%,#d4c39e);padding:12px 20px;border-radius:4px;display:flex;align-items:center;justify-content:space-between;border:none;margin-bottom:12px;box-shadow:0 4px 8px #0000004d;position:relative;transition:all .3s ease;color:#3e2723;font-weight:600;box-sizing:border-box}.item-card>span:first-child{flex:1;min-width:0;text-align:left;word-break:break-word;padding-right:12px;line-height:1.35}.item-card:before,.item-card:after{content:"";position:absolute;top:-2px;bottom:-2px;width:6px;background:#5d4037;border-radius:2px;box-shadow:0 0 5px #00000080}.item-card:before{left:-3px}.item-card:after{right:-3px}.item-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0006}.item-card:active{transform:scale(.99)}.complete-btn{background-color:transparent;border:2px solid var(--cinnabar-red);border-radius:4px;padding:4px 10px;color:var(--cinnabar-red);font-family:"Noto Serif KR",serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.complete-btn:hover{background-color:var(--cinnabar-red);color:#fff;box-shadow:0 0 8px var(--cinnabar-red)}.habit-checkbox{accent-color:var(--jade-green);width:18px;height:18px;cursor:pointer;filter:sepia(1) saturate(2)}@media(max-width:400px){.item-card{padding:10px 14px;font-size:.95rem}.section-title{font-size:1rem}.complete-btn{padding:3px 8px;font-size:12px}.stamp-seal{font-size:.85rem;right:15%}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background-color:var(--bg-color);border:2px dashed var(--border-color);border-radius:20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:12px;display:block}.empty-text{font-size:15px;font-weight:600;color:var(--text-secondary);margin:0}.empty-subtext{font-size:12px;color:#9ca3af;margin-top:6px}.stamp-seal{position:absolute;right:20%;top:50%;transform:translateY(-50%) rotate(-15deg);border:3px double var(--cinnabar-red);color:var(--cinnabar-red);font-family:"Noto Serif KR",serif;font-size:1rem;font-weight:900;padding:2px 6px;background-color:#8b000008;border-radius:2px;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:10;white-space:nowrap;opacity:0;animation:stamp-slam .4s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes stamp-slam{0%{transform:translateY(-50%) rotate(-45deg) scale(3);opacity:0}to{transform:translateY(-50%) rotate(-15deg) scale(1);opacity:.7}}.schedule-group{margin-bottom:20px;text-align:left}.group-title{font-size:.95rem;font-weight:700;color:var(--jade-green);margin-bottom:10px;padding-left:8px;border-left:2px solid var(--jade-green);letter-spacing:.05em}.item-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0;padding-right:12px}.item-name{word-break:break-word;text-align:left;line-height:1.35}.item-desc{font-size:.75rem;color:#5d4037;opacity:.8;font-weight:500;word-break:break-word}.schedule-container{padding-bottom:40px;text-align:left}.category-selector{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.cat-btn{background:#ffffff0d;border:1px solid rgba(212,175,55,.2);color:var(--text-dim);padding:6px 12px;border-radius:4px;font-size:13px;cursor:pointer;white-space:nowrap;transition:all .2s}.cat-btn.active{background:var(--jade-green);color:#fff;border-color:var(--jade-green)}.user-category-select{width:100%;background-color:#ffffff0d;border:1px solid rgba(212,175,55,.2);border-radius:8px;padding:10px;color:var(--text-main);margin-bottom:16px;outline:none}.config-field label{font-size:12px;color:var(--text-dim);margin-bottom:4px;display:block}.config-field input,.config-field select{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px;color:var(--text-main);outline:none;width:100%}.add-section{display:flex;gap:8px;margin-bottom:24px}.add-input{flex:1;background:#ffffff0d;border:1px solid rgba(212,175,55,.2);border-radius:8px;padding:10px 14px;color:var(--text-main);outline:none}.add-button{background:var(--jade-green);color:#fff;border:none;border-radius:8px;padding:0 20px;font-weight:600;cursor:pointer}.task-card{background:linear-gradient(to right,#d4c39e,#f1e7c9 10%,#f1e7c9 90%,#d4c39e);padding:14px 20px;border-radius:4px;margin-bottom:12px;box-shadow:0 4px 8px #0000004d;position:relative;color:#3e2723}.task-card:before,.task-card:after{content:"";position:absolute;top:-2px;bottom:-2px;width:5px;background:#5d4037;border-radius:2px}.task-card:before{left:-3px}.task-card:after{right:-3px}.task-title-input{flex:1;background:transparent;border:none;font-size:1.05rem;font-weight:700;color:inherit;outline:none}.task-title-input.completed{text-decoration:line-through;opacity:.6}.breakthrough-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle,#d4af3740,#08080a99 70%);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;pointer-events:none;animation:overlay-fade 3s forwards}.bagua-symbol{font-size:120px;color:var(--gold-leaf);filter:drop-shadow(0 0 20px var(--gold-leaf));animation:bagua-rotate 3s ease-out;opacity:0}.breakthrough-text{font-size:clamp(1.1rem,3.8vw,1.5rem);color:var(--gold-leaf);margin-top:20px;letter-spacing:.3em;text-shadow:0 0 10px rgba(212,175,55,.8);animation:text-appear 2s .5s both;text-align:center}.new-rank-text{font-size:clamp(1.8rem,6vw,2.5rem);font-weight:900;color:#fff;text-shadow:0 0 15px var(--gold-leaf);animation:text-appear 2s .8s both;text-align:center}@keyframes overlay-fade{0%{opacity:0;background-color:#d4af3700}20%{opacity:1;background-color:#d4af371a}80%{opacity:1}to{opacity:0}}@keyframes bagua-rotate{0%{transform:scale(.5) rotate(-180deg);opacity:0}30%{transform:scale(1.2) rotate(0);opacity:1}to{transform:scale(1) rotate(360deg);opacity:0}}@keyframes text-appear{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.graph-container{display:flex;justify-content:center;align-items:center;width:240px;height:240px;margin:1.5rem auto;position:relative;border-radius:50%}.graph-container:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:50%;background:var(--stage-color, var(--primary-color));filter:blur(25px);opacity:.15;animation:breathe 4s infinite ease-in-out}.c-graph.daoxin-spirit-sphere{width:100%;height:100%;border-radius:50%;padding:10px;display:flex;justify-content:center;align-items:center;box-shadow:0 0 30px #00000080;position:relative;z-index:1;box-sizing:border-box;animation:pulse-sphere 3s infinite ease-in-out}.inner-area{width:100%;height:100%;background:radial-gradient(circle at 35% 35%,#181b24,#0d0e14 85%);border-radius:50%;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;box-shadow:inset 0 0 25px #000c,inset 0 0 10px #ffffff08;border:1px solid rgba(255,255,255,.06)}.inner-area:after{content:"";width:100%;height:100%;border-radius:50%;position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,transparent 35%,var(--stage-color) 160%);opacity:.15;animation:rotate-energy 10s linear infinite;pointer-events:none}.core-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;z-index:2;-webkit-user-select:none;user-select:none;width:82%;max-width:170px;text-align:center}.core-label{font-size:10px;color:var(--text-dim, #9ca3af);font-weight:600;letter-spacing:.12em;text-transform:uppercase}.core-value{font-size:clamp(16px,4.5vw,22px);line-height:1.25;font-weight:900;color:var(--stage-color, var(--gold-leaf));transition:all .5s ease;text-shadow:0 0 16px var(--stage-color, rgba(212, 175, 55, .6));letter-spacing:.02em;word-break:keep-all;overflow-wrap:break-word;max-width:100%}.core-gauge-detail{font-size:11px;color:#d1d5db99;font-weight:500;font-variant-numeric:tabular-nums;margin-top:2px}@media(max-width:400px){.graph-container{width:200px;height:200px;margin:.75rem auto}.core-content{width:85%;max-width:145px;gap:1px}.core-value{font-size:clamp(14px,4vw,17px);line-height:1.2}.core-label{font-size:9px}.core-gauge-detail{font-size:10px}}@keyframes breathe{0%,to{transform:scale(1);opacity:.1}50%{transform:scale(1.1);opacity:.2}}@keyframes rotate-energy{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.graph-container.trigger-feedback{animation:shake-glow .5s ease-in-out}@keyframes shake-glow{0%,to{transform:scale(1)}10%,30%,50%,70%,90%{transform:scale(1.02) translate(-2px)}20%,40%,60%,80%{transform:scale(1.02) translate(2px)}50%{filter:brightness(1.5) drop-shadow(0 0 25px var(--stage-color))}}@keyframes pulse-sphere{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.c-graph{display:flex;width:100%;height:100%;border-radius:50%;box-sizing:border-box}.c-graph .inner-area{flex:1;width:100%;height:100%;display:flex;justify-content:center;align-items:center;border-radius:50%}.category-container{padding:4px 0 20px;background-color:transparent;width:100%;color:var(--text-main);box-sizing:border-box;text-align:left}.category-container .header{margin-bottom:16px}.category-container .header-title{font-size:24px;font-weight:800;color:var(--gold-leaf);letter-spacing:.1em}.category-container .header-subtitle{font-size:12px;color:var(--text-dim)}.category-container .stats-overview{background:#ffffff08;border:1px solid rgba(212,175,55,.15);padding:20px;border-radius:20px;margin-bottom:24px;box-shadow:inset 0 0 20px #0003}.category-container .gauge-section{margin-bottom:16px}.category-container .gauge-label{font-size:14px;color:var(--text-dim);margin-bottom:4px;letter-spacing:.05em}.category-container .gauge-value{font-size:24px;font-weight:700;color:var(--jade-green);text-shadow:0 0 10px rgba(45,90,39,.3)}.category-container .max-unit{font-size:14px;color:var(--text-dim)}.category-container .gauge-bar-container{height:6px;background:#ffffff0d;border-radius:3px;margin-top:8px;overflow:hidden}.category-container .gauge-fill{height:100%;background:linear-gradient(90deg,var(--jade-green),var(--gold-leaf));transition:width .3s}.category-container .progress-summary{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.05);padding-top:16px}.category-container .summary-label{font-size:12px;color:var(--text-dim)}.category-container .summary-value{font-size:18px;font-weight:600;color:var(--text-main)}.category-container .summary-right{text-align:right}.period-selector{display:flex;gap:8px;margin-bottom:12px}.period-btn{background:#ffffff0d;border:1px solid rgba(212,175,55,.2);color:var(--text-dim);padding:4px 12px;border-radius:4px;font-size:12px;cursor:pointer}.period-btn.active{background:var(--jade-green);color:#fff;border-color:var(--jade-green)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.stat-card{background:#ffffff05;border:1px solid rgba(255,255,255,.05);padding:10px 4px;border-radius:12px;text-align:center;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center}.stat-label{font-size:clamp(10px,2.7vw,11px);color:var(--text-dim);margin-bottom:4px;word-break:keep-all;overflow-wrap:break-word;line-height:1.2}.stat-value{font-size:16px;font-weight:700}.stat-value.highlight{color:var(--gold-leaf)}.category-container .section-title{font-size:1.1rem;font-weight:700;margin:24px 0 12px;color:var(--text-main);border-left:3px solid var(--jade-green);padding-left:12px;letter-spacing:.1em}.category-container .category-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.category-container .add-cat-section{display:flex;gap:8px;margin-bottom:24px}.category-container .add-cat-input{flex:1;background-color:#ffffff0d;border:1px solid rgba(212,175,55,.2);border-radius:12px;padding:10px 14px;color:var(--text-main);font-size:13px;outline:none}.category-container .add-cat-button{background-color:var(--jade-green);color:#fff;border:none;border-radius:12px;padding:0 16px;font-size:13px;font-weight:600;cursor:pointer}.category-container .category-card-name-wrapper{display:flex;align-items:center;gap:8px}.category-container .category-card{background:linear-gradient(to right,#d4c39e,#f1e7c9 10%,#f1e7c9 90%,#d4c39e);padding:14px 20px;border-radius:4px;cursor:pointer;border:none;transition:all .2s;position:relative;color:#3e2723;box-shadow:0 4px 10px #0000004d}.category-container .category-card:before,.category-container .category-card:after{content:"";position:absolute;top:-2px;bottom:-2px;width:4px;background:#5d4037;border-radius:2px}.category-container .category-card:before{left:-2px}.category-container .category-card:after{right:-2px}.category-container .category-card.active{transform:scale(1.02);box-shadow:0 0 15px var(--jade-green)}.category-container .category-card-header{display:flex;justify-content:space-between;margin-bottom:8px}.category-container .category-card-name{font-weight:800;font-size:1.1rem}.category-container .delete-cat-btn{background:#8b00001a;border:1px solid var(--cinnabar-red);color:var(--cinnabar-red);font-size:10px;border-radius:4px;padding:2px 4px}.category-container .delete-cat-btn:hover{background:var(--cinnabar-red);color:#fff}.category-container .category-card-status{font-size:.8rem;font-weight:600;opacity:.8}.category-container .progress-bar-container{height:3px;background:#0000001a;border-radius:2px;overflow:hidden}.category-container .progress-bar-fill{height:100%;background:var(--jade-green);transition:width .3s}.category-container .category-detail{background:#f1e7c9;color:#3e2723;padding:20px;border-radius:20px;box-shadow:0 8px 20px #0006;border:4px double #d4c39e}.category-container .detail-name{font-weight:800;font-size:1.4rem;margin-bottom:8px}.category-container .detail-lv-badge{font-size:.9rem;background:var(--cinnabar-red);color:#fff;padding:2px 8px;border-radius:4px;vertical-align:middle}.category-container .detail-stats{font-size:12px;opacity:.8;margin-bottom:12px;font-weight:600}.category-container .section-title-small{font-size:.9rem;font-weight:800;margin-bottom:8px;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:4px}.category-container .task-list{display:flex;flex-direction:column;gap:6px}.category-container .task-item{padding:10px;border-radius:10px;background:#00000008;border:1px solid rgba(0,0,0,.05);font-size:13px;display:flex;justify-content:space-between;font-weight:600}.category-container .task-item.completed{background:#2d5a271a;border:1px solid rgba(45,90,39,.2)}.category-container .check-icon{color:var(--jade-green);font-size:14px}.schedule-container{padding:4px 0 20px;background-color:transparent;width:100%;color:var(--text-main);box-sizing:border-box;text-align:left}.schedule-container .header{margin-bottom:16px}.schedule-container .header-title{font-size:24px;font-weight:800;color:var(--gold-leaf);letter-spacing:.1em}.schedule-container .header-subtitle{font-size:12px;color:var(--text-dim)}.schedule-container .category-selector{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.schedule-container .cat-btn{background:#ffffff0d;border:1px solid rgba(212,175,55,.2);color:var(--text-dim);padding:6px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.schedule-container .cat-btn.active{background-color:var(--jade-green);color:#fff;border-color:var(--jade-green)}.schedule-container .user-category-select{width:100%;background-color:#ffffff0d;border:1px solid rgba(212,175,55,.2);border-radius:8px;padding:10px;color:var(--text-main);font-size:14px;margin-bottom:16px;outline:none;cursor:pointer}.schedule-container .config-inputs-row{display:flex;gap:12px;margin-bottom:16px}.schedule-container .config-field{flex:1;min-width:0}.schedule-container .config-field label{display:block;font-size:11px;color:var(--text-dim);margin-bottom:4px}.schedule-container .config-field input,.schedule-container .config-field select{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px;color:var(--text-main);outline:none}.schedule-container .add-section{display:flex;gap:8px;margin-bottom:32px}.schedule-container .add-input{flex:1;background-color:#ffffff0d;border:1px solid rgba(212,175,55,.2);border-radius:8px;padding:10px 14px;color:var(--text-main);font-size:14px;outline:none;transition:border-color .2s}.schedule-container .add-input:focus{border-color:var(--jade-green)}.schedule-container .add-button{background-color:var(--jade-green);color:#fff;border:none;border-radius:8px;padding:0 20px;font-weight:700;cursor:pointer}.schedule-container .schedule-category-section{margin-bottom:24px}.schedule-container .section-title{font-size:1.1rem;font-weight:700;margin-bottom:12px;color:var(--text-main);border-left:3px solid var(--jade-green);padding-left:12px;letter-spacing:.1em}.schedule-container .task-card{background:linear-gradient(to right,#d4c39e,#f1e7c9 10%,#f1e7c9 90%,#d4c39e);padding:14px 20px;border-radius:4px;display:flex;flex-direction:column;align-items:stretch;box-shadow:0 4px 10px #0000004d;position:relative;border:none;color:#3e2723;margin-bottom:12px}.schedule-container .task-card:before,.schedule-container .task-card:after{content:"";position:absolute;top:-2px;bottom:-2px;width:5px;background:#5d4037;border-radius:2px;box-shadow:0 0 5px #00000080}.schedule-container .task-card:before{left:-3px}.schedule-container .task-card:after{right:-3px}.schedule-container .task-card.completed{opacity:.8;filter:grayscale(.2)}.schedule-container .task-main-row{display:flex;align-items:center;gap:10px}.schedule-container .cat-badge{font-size:10px;padding:2px 6px;border-radius:4px;text-transform:uppercase;font-weight:800;flex-shrink:0;border:1px solid currentColor}.schedule-container .cat-badge.habit{background:#2d5a271a;color:var(--jade-green)}.schedule-container .cat-badge.goal{background:#8b00001a;color:var(--cinnabar-red)}.schedule-container .cat-badge.interval{background:#d4af371a;color:#8e6d1c}.schedule-container .cat-badge.periodic{background:#0000001a;color:#444}.schedule-container .schedule-info-area{margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,0,0,.08)}.schedule-container .info-row{display:flex;justify-content:space-between;font-size:11px;color:#5d4037;font-weight:600;margin-bottom:6px}.schedule-container .info-text{font-size:11px;color:#5d4037;font-weight:600}.schedule-container .info-sub-text{margin-left:6px;color:var(--cinnabar-red);font-style:italic}.schedule-container .mini-progress-bar{height:4px;background:#0000001a;border-radius:2px;overflow:hidden}.schedule-container .mini-progress-fill{height:100%;background:var(--jade-green);transition:width .3s ease}.schedule-container .checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--jade-green)}.schedule-container .task-title-input{width:100%;flex:1;min-width:0;background:transparent;border:none;color:#3e2723;font-size:16px;font-weight:700;outline:none;-webkit-tap-highlight-color:transparent}.schedule-container .task-title-input.completed{text-decoration:line-through;opacity:.5}.schedule-container .delete-icon{cursor:pointer;opacity:.6;font-size:14px;font-weight:700;transition:all .2s;color:var(--cinnabar-red);padding:6px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.schedule-container .delete-icon:hover,.schedule-container .delete-icon:active{opacity:1;transform:scale(1.15)}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#08080ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:12000;display:flex;justify-content:center;align-items:center;animation:settingsFadeIn .25s ease-out;overflow-y:auto;padding:max(16px,env(safe-area-inset-top,16px)) 16px max(24px,env(safe-area-inset-bottom,24px));box-sizing:border-box}.settings-card{position:relative;width:100%;max-width:480px;max-height:min(88dvh,850px);margin:auto;display:flex;flex-direction:column;background:linear-gradient(160deg,#0e0f13,#12141a);border:1px solid rgba(212,175,55,.25);border-radius:16px;box-shadow:0 24px 60px #000c,0 0 40px #d4af370d,inset 0 1px #d4af371a;overflow:hidden;animation:settingsSlideUp .3s cubic-bezier(.34,1.56,.64,1)}.settings-corner{position:absolute;width:14px;height:14px;border:2px solid rgba(212,175,55,.6);pointer-events:none;z-index:1}.settings-corner.tl{top:10px;left:10px;border-right:none;border-bottom:none}.settings-corner.tr{top:10px;right:10px;border-left:none;border-bottom:none}.settings-corner.bl{bottom:10px;left:10px;border-right:none;border-top:none}.settings-corner.br{bottom:10px;right:10px;border-left:none;border-top:none}.settings-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(212,175,55,.15);background:linear-gradient(90deg,rgba(212,175,55,.06) 0%,transparent 100%)}.settings-header-left{display:flex;align-items:center;gap:10px}.settings-header-icon{font-size:1.6rem;animation:settingsGearSpin 20s linear infinite}.settings-title{margin:0;font-size:1.15rem;font-weight:800;color:var(--gold-leaf);letter-spacing:.08em;text-shadow:0 0 12px rgba(212,175,55,.3)}.settings-close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-dim);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;cursor:pointer;padding:0;transition:all .2s ease}.settings-close-btn:hover{background:#8b00004d;border-color:var(--cinnabar-red);color:#fff}.settings-body{padding:8px 0 24px;display:flex;flex-direction:column;gap:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.settings-section{padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.05)}.settings-section:last-child{border-bottom:none}.settings-section-title{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;letter-spacing:.12em;color:var(--gold-leaf);text-transform:uppercase;margin-bottom:14px;opacity:.85}.settings-section-icon{font-size:1rem}.language-toggle{display:flex;gap:8px}.lang-btn{flex:1;padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--text-dim);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .25s ease;font-family:inherit;letter-spacing:.05em}.lang-btn:hover{border-color:#d4af3766;color:var(--gold-leaf)}.lang-btn.active{background:linear-gradient(135deg,#2d5a2766,#d4af3726);border-color:var(--gold-leaf);color:var(--gold-leaf);box-shadow:0 0 12px #d4af3726}.backup-buttons{display:flex;gap:10px}.backup-btn{flex:1;padding:11px 14px;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:6px}.backup-btn.export{background:#2d5a2733;border:1px solid rgba(45,90,39,.5);color:#4ade80}.backup-btn.export:hover{background:#2d5a2766;box-shadow:0 0 14px #2d5a274d}.backup-btn.import{background:#d4af3714;border:1px solid rgba(212,175,55,.3);color:var(--gold-leaf)}.backup-btn.import:hover{background:#d4af372e;box-shadow:0 0 14px #d4af3726}.google-section-content{display:flex;flex-direction:column;gap:12px}.google-info-text{font-size:.78rem;color:var(--text-dim);line-height:1.6;padding:10px 12px;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.google-account-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.google-account-icon{font-size:1.4rem}.google-account-info{flex:1;display:flex;flex-direction:column;gap:2px;text-align:left}.google-account-label{font-size:.7rem;color:var(--text-dim)}.google-account-name{font-size:.9rem;color:var(--text-main);font-weight:600}.google-sync-time{font-size:.7rem;color:var(--text-dim);margin-top:2px}.google-btn{padding:11px 18px;border-radius:10px;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .25s ease;font-family:inherit;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.google-btn.login{background:linear-gradient(135deg,#4285f4,#357ae8);color:#fff;box-shadow:0 4px 14px #4285f44d;width:100%}.google-btn.login:hover{box-shadow:0 4px 20px #4285f480;transform:translateY(-1px)}.google-btn.sync{background:linear-gradient(135deg,#2d5a2766,#d4af3726);border:1px solid rgba(212,175,55,.4);color:var(--gold-leaf);flex:1}.google-btn.sync:hover:not(:disabled){background:linear-gradient(135deg,#2d5a2799,#d4af3740)}.google-btn.sync:disabled{opacity:.5;cursor:not-allowed}.google-btn.logout{background:#8b000026;border:1px solid rgba(139,0,0,.4);color:#f87171;padding:8px 14px}.google-btn.logout:hover{background:#8b00004d}.google-action-row{display:flex;gap:8px}.sync-status{font-size:.8rem;padding:8px 12px;border-radius:8px;text-align:center;font-weight:600}.sync-status.success{background:#2d5a2733;color:#4ade80;border:1px solid rgba(45,90,39,.4)}.sync-status.error{background:#8b000033;color:#f87171;border:1px solid rgba(139,0,0,.4)}.client-id-label{font-size:.78rem;font-weight:600;color:var(--text-dim);margin-bottom:6px;display:block}.client-id-input{width:100%;box-sizing:border-box;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:9px 12px;color:var(--text-main);font-size:.82rem;font-family:Courier New,monospace;outline:none;transition:border-color .2s}.client-id-input:focus{border-color:#d4af3766}.client-id-help{font-size:.72rem;color:var(--text-dim);margin-top:6px;opacity:.7;line-height:1.5}.app-info-list{display:flex;flex-direction:column;gap:8px}.app-info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04)}.app-info-row-label{font-size:.78rem;color:var(--text-dim)}.app-info-row-value{font-size:.82rem;font-weight:600;color:var(--text-main)}.app-info-row-value a{color:var(--gold-leaf);text-decoration:none}.app-info-row-value a:hover{text-decoration:underline}.privacy-text{font-size:.78rem;color:var(--text-dim);line-height:1.7;padding:12px 14px;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.04)}.settings-trigger-btn{position:fixed;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#0c0c0eb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(212,175,55,.2);color:var(--text-dim);font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1001;transition:all .3s ease;box-shadow:0 2px 8px #0006;padding:0}.settings-trigger-btn:hover{border-color:var(--gold-leaf);color:var(--gold-leaf);transform:rotate(30deg);box-shadow:0 4px 16px #d4af3733}.settings-toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);background:#2d5a27f2;color:#fff;padding:10px 22px;border-radius:24px;font-size:.85rem;font-weight:600;z-index:15000;animation:settingsToast 3s ease-out forwards;white-space:nowrap;box-shadow:0 4px 20px #00000080;border:1px solid rgba(212,175,55,.2)}.settings-toast.error{background:#8b0000f2}@keyframes settingsFadeIn{0%{opacity:0}to{opacity:1}}@keyframes settingsSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes settingsGearSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes settingsToast{0%{opacity:0;transform:translate(-50%) translateY(10px)}10%{opacity:1;transform:translate(-50%) translateY(0)}80%{opacity:1}to{opacity:0}}.privacy-text{font-size:.8rem;color:var(--text-dim);line-height:1.6;margin:0}.privacy-consent-btn{margin-top:12px;width:100%;padding:10px 14px;background:#d4af3714;border:1px solid rgba(212,175,55,.3);border-radius:8px;color:var(--gold-leaf);font-size:.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;font-family:inherit}.privacy-consent-btn:hover{background:#d4af3729;border-color:var(--gold-leaf);box-shadow:0 0 12px #d4af3733}@media(max-width:400px){.settings-overlay{padding:12px}.settings-card{width:100%;border-radius:14px;max-height:min(92dvh,850px)}}
