/* ASK v0.5.6 — opt-in, meaningful gamified LOCAL utility; no counterfeit entitlements */
.forge{background:radial-gradient(ellipse at 90% 0%,#3e315b 0%,#10233be8 50%);border-color:#8f7ab3;overflow:clip;position:relative}
.forge-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.forge-top>div:first-child{max-width:690px}.forge-top p{color:#ccd5e4}
.gem{flex:none;width:100px;height:100px;display:grid;place-items:center;font-size:70px;line-height:1;color:#d5b6ff;text-shadow:0 0 15px #bb8fff,0 0 38px #795bf6;filter:drop-shadow(0 0 12px #9461db)}
.gem span{transform:rotate(20deg);display:block;animation:gem-drift 5s ease-in-out infinite}@keyframes gem-drift{0%,100%{transform:translateY(0) rotate(20deg)}50%{transform:translateY(-10px) rotate(26deg)}}
.forge-stage{border:1px solid #655a8f;background:#181f3a;border-radius:14px;padding:12px 16px;margin:14px 0 18px}.forge-stage p{margin-bottom:0}
.forge-line{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-weight:850}.forge-current{background:#ad8ade;color:#1b1834;border-radius:50px;padding:3px 10px;font-size:12px}.forge-arrow{color:#e7c16d}
.upgrade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.upgrade-card{position:relative;border:1px solid #7c719a;background:linear-gradient(155deg,#222b49,#15283a);border-radius:18px;padding:17px;min-width:0;display:flex;align-items:flex-start;flex-direction:column}
.upgrade-card[data-equipped="true"]{border-color:#e7c17b;box-shadow:inset 0 0 0 1px #ae8d64,0 5px 21px #020c2166}
.upgrade-card h3{margin:3px 0;font-size:19px}.upgrade-card p{color:#c9d5e0;font-size:13px;flex:1}.upgrade-card button{font-size:13px;margin:10px 0}
.upgrade-card button:disabled{opacity:.55;cursor:not-allowed;filter:none}.upgrade-future{opacity:.82;border-style:dashed}
.item-icon{font-weight:bold;font-size:44px;line-height:1.3;color:#ceb3f9;text-shadow:0 0 20px #845fd2}
.rarity{font-size:11px;font-weight:850;color:#b7b7fd;letter-spacing:.08em}.rarity.rare{color:#e8bf71}.rarity.legend{color:#a8b5d5}
.upgrade-state{font-size:12px;color:#aabccc}.memory-toolbox{background:#102539;border:1px solid #60728e;border-radius:16px;padding:18px;margin-top:20px}.memory-toolbox h3{margin:0 0 8px}.memory-label{font-weight:700;display:block;margin-bottom:8px}.memory-search-row{display:flex;gap:10px;flex-wrap:wrap}.memory-search-row input{flex:1;min-width:min(100%,230px);background:#071a2b;color:#fff;padding:12px;border:1px solid #7994af;border-radius:10px;font:inherit}.memory-search-row button{flex:none}.memory-toolbox #memory-export{margin-top:10px}.memory-toolbox .item-list strong{display:block}.memory-toolbox .item-list p{margin:2px 0;white-space:pre-wrap;overflow-wrap:anywhere}.memory-toolbox .item-list small{color:#c1cbd8}
.unlock-overlay:not([hidden]){position:fixed;inset:0;background:#020813d9;backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px;z-index:99999}.unlock-dialog{position:relative;width:min(100%,450px);background:radial-gradient(circle at 50% 22%,#4d3674,#15283e 57%,#10223b);color:#fff;border-radius:24px;border:2px solid #b291dd;box-shadow:0 0 75px #8b58c35c;text-align:center;padding:24px}.unlock-dialog h2{font-size:30px;margin:8px 0}.unlock-dialog p{color:#d7e6f3}.unlock-dialog button{margin:10px auto 0}.unlock-halo{color:#e9cf9d;font-size:24px;position:absolute;top:16px;right:20px;animation:twinkle 1.8s infinite}.unlock-gem{font-size:85px;color:#e7bcff;text-shadow:0 0 30px #a45af0;animation:item-arrive .55s cubic-bezier(.25,1.5,.7,1) both}@keyframes item-arrive{from{transform:scale(.25) rotate(-45deg);opacity:0}to{transform:scale(1) rotate(15deg);opacity:1}}@keyframes twinkle{50%{opacity:.3;transform:scale(.8)}}
@media(max-width:820px){.upgrade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.upgrade-grid{grid-template-columns:1fr}.gem{width:60px;height:60px;font-size:48px}.forge-top{gap:7px}.unlock-dialog{padding:16px}.unlock-dialog h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.gem span,.unlock-gem,.unlock-halo{animation:none!important}html{scroll-behavior:auto}}
