:root{color:#f4ead2;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--gold:#e2c47f;--blue:#55c7ff;--blue-bright:#94e4ff;--ink:#070b18;--panel:#0d1327eb;background:#040711;font-family:Inter,Noto Sans SC,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{overscroll-behavior:none;width:100%;min-height:100%;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 18%,#294a8438,#0000 34%),linear-gradient(145deg,#03050c 0%,#090d1d 52%,#03050c 100%);min-height:100svh}#app{min-height:100svh;padding:max(10px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));place-items:center;display:grid}.game-shell{aspect-ratio:2/3;background:var(--ink);isolation:isolate;border:1px solid #91b4ee2e;border-radius:24px;width:min(720px,66.6667svh - 14px,100vw - 16px);position:relative;overflow:hidden;box-shadow:0 28px 90px #0000009e,inset 0 0 0 1px #e2c47f0d}#game-root,#ui-root{position:absolute;inset:0}#game-root canvas{display:block;width:100%!important;height:100%!important}#ui-root{z-index:20;pointer-events:none}.game-ui-layer{position:absolute;inset:0}.game-ui-layer.is-feedback-paused .event-feedback,.game-ui-layer.is-feedback-paused .perfect-feedback,.game-ui-layer.is-feedback-paused .combo-milestone-feedback,.game-ui-layer.is-feedback-paused .combo-broken-feedback,.game-ui-layer.is-feedback-paused .stage-clear-feedback,.game-ui-layer.is-feedback-paused .stage-speed-feedback,.game-ui-layer.is-feedback-paused .timeline-event{animation-play-state:paused!important}.hud{background:linear-gradient(#050812f0,#0000);grid-template-columns:1fr auto 1fr;align-items:start;gap:clamp(8px,2vw,18px);min-height:12%;padding:clamp(17px,3.5vw,32px) clamp(18px,4.3vw,38px);display:grid;position:absolute;inset:0 0 auto}.hud-stat{flex-direction:column;min-width:0;line-height:1;display:flex}.hud-stat>span,.level-chip>span{color:#c0d2f08a;letter-spacing:.13em;margin-bottom:7px;font-size:clamp(8px,1.7vw,12px);font-weight:700}.hud-stat strong{color:var(--gold);font-variant-numeric:tabular-nums;font-size:clamp(21px,5vw,36px)}.hud-best{align-items:flex-end;padding-right:clamp(38px,9vw,58px)}.hud-best strong{color:#d9e6ff}.level-chip{text-align:center;border-left:1px solid #55c7ff21;border-right:1px solid #55c7ff21;flex-direction:column;align-items:center;padding:2px clamp(10px,2.4vw,18px) 8px;display:flex}.level-chip strong{color:var(--blue-bright);letter-spacing:.18em;white-space:nowrap;font-size:clamp(11px,2.5vw,17px)}.level-chip small{color:#ffe084b8;letter-spacing:.08em;white-space:nowrap;margin-top:5px;font-size:clamp(8px,1.6vw,11px);font-weight:750}.icon-button{aspect-ratio:1;width:clamp(32px,7vw,46px);color:var(--gold);cursor:pointer;pointer-events:auto;background:#0c1223b8;border:1px solid #e2c47f40;border-radius:50%;font-size:clamp(10px,2.2vw,15px);transition:border-color .16s,background .16s,transform .16s;position:absolute;top:clamp(14px,3vw,27px);right:clamp(12px,2.8vw,25px)}.icon-button:hover{background:#1f2743eb;border-color:#e2c47f99}.icon-button:active{transform:scale(.94)}.event-feedback{--event-color:#75d7ff;z-index:8;border:1px solid color-mix(in srgb, var(--event-color) 48%, transparent);opacity:0;min-width:min(54%,330px);box-shadow:0 0 24px color-mix(in srgb, var(--event-color) 18%, transparent);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060b19e6;border-radius:999px;flex-direction:column;align-items:center;padding:8px 18px 7px;display:flex;position:absolute;top:12.3%;left:50%;transform:translate(-50%,-8px)scale(.94)}.event-feedback strong{color:var(--event-color);letter-spacing:.2em;text-shadow:0 0 14px color-mix(in srgb, var(--event-color) 60%, transparent);font-size:clamp(11px,2.5vw,17px);line-height:1.1}.event-feedback small{color:#dde9fcad;letter-spacing:.05em;margin-top:4px;font-size:clamp(7px,1.45vw,10px)}.event-feedback.is-active{animation:1s cubic-bezier(.16,.8,.22,1) both event-reveal}.event-feedback.is-ended{filter:saturate(.55)}.event-debug{z-index:7;color:#b1ffe5d1;white-space:pre-line;background:#030c14c2;border:1px solid #62f0c83d;border-radius:8px;padding:8px 10px;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(7px,1.35vw,9px);line-height:1.45;position:absolute;top:13.2%;right:clamp(12px,3vw,24px);box-shadow:0 0 18px #62f0c80f}.feedback-debug-panel{z-index:120;color:#c9ffed;pointer-events:auto;background:#020b14f0;border:1px solid #62f0c85c;border-radius:10px;width:min(270px,42%);max-height:68%;padding:10px;font-family:SFMono-Regular,Consolas,monospace;font-size:9px;position:absolute;top:15%;right:10px;overflow:auto;box-shadow:0 10px 36px #0000006b}.feedback-debug-panel header,.feedback-debug-panel output{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.feedback-debug-panel header strong{color:#62f0c8;letter-spacing:.14em;font-size:11px}.feedback-debug-panel header small,.feedback-debug-panel output{color:#c2e1f0a8;white-space:pre-line;line-height:1.45}.feedback-debug-panel details{margin-bottom:8px}.feedback-debug-panel summary{cursor:pointer;margin-bottom:6px}.feedback-debug-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px;display:grid}.feedback-debug-grid button{color:#cdeeff;cursor:pointer;min-height:25px;font:inherit;pointer-events:auto;background:#12334eb8;border:1px solid #55c7ff47;border-radius:5px;padding:3px 5px}.feedback-debug-grid button:hover{background:#194e5cd6;border-color:#62f0c8bf}.combo-chip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e1dad;border:1px solid #f3d58e3b;border-radius:10px;flex-direction:column;gap:3px;padding:8px 12px;display:flex;position:absolute;top:12.5%;left:clamp(16px,4vw,34px);box-shadow:0 0 22px #e2c47f14}.combo-chip span{color:#dbe4f58a;letter-spacing:.13em;font-size:clamp(7px,1.5vw,10px)}.combo-chip strong{color:#ffeab6;letter-spacing:.08em;font-size:clamp(12px,2.7vw,18px)}.perfect-feedback{opacity:0;text-align:center;flex-direction:column;align-items:center;width:80%;display:flex;position:absolute;top:51%;left:50%;transform:translate(-50%,-50%)scale(.72)}.perfect-feedback span{color:#fff2b9;letter-spacing:.13em;text-shadow:0 0 18px #f3d58eeb,0 0 46px #55c7ff8a;font-size:clamp(32px,9vw,62px);font-weight:950;line-height:1}.perfect-feedback strong{color:var(--blue-bright);letter-spacing:.16em;margin-top:9px;font-size:clamp(12px,3vw,20px)}.perfect-feedback small{color:#fff0bbc7;letter-spacing:.11em;margin-top:7px;font-size:clamp(9px,2.1vw,14px);font-weight:800}.perfect-feedback.is-active{animation:.78s cubic-bezier(.16,.8,.22,1) both perfect-reveal}.combo-milestone-feedback,.combo-broken-feedback,.stage-speed-feedback{z-index:9;opacity:0;pointer-events:none;text-align:center;position:absolute;left:50%;transform:translate(-50%,-50%)scale(.78)}.combo-milestone-feedback{color:#fff0b8;letter-spacing:.16em;text-shadow:0 0 20px #ffd463c7;font-size:clamp(20px,5vw,34px);font-weight:950;top:59%}.combo-milestone-feedback[data-combo-tier="8"],.combo-milestone-feedback[data-combo-tier="10"]{color:#e8c7ff;text-shadow:0 0 24px #ae64ffe0}.combo-milestone-feedback.is-active{animation:.72s cubic-bezier(.16,.8,.22,1) both combo-milestone-reveal}.combo-broken-feedback{color:#ff7789e6;letter-spacing:.2em;text-shadow:0 0 16px #ff4a6594;font-size:clamp(14px,3.3vw,22px);font-weight:900;top:56%}.combo-broken-feedback.is-active{animation:.52s ease-out both combo-broken-reveal}.stage-clear-feedback{opacity:0;text-align:center;flex-direction:column;align-items:center;width:92%;display:flex;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)scale(.72)}.stage-clear-feedback span{color:#fff4c8;letter-spacing:.12em;text-shadow:0 0 20px #f3d58e,0 0 58px #55c7ffb8;font-size:clamp(36px,9.5vw,68px);font-weight:950;line-height:1}.stage-clear-feedback strong{color:var(--blue-bright);letter-spacing:.14em;margin-top:14px;font-size:clamp(12px,3vw,21px)}.stage-clear-feedback.is-active{animation:.76s cubic-bezier(.16,.8,.22,1) both stage-clear-reveal}.stage-speed-feedback{color:#7ddcff;letter-spacing:.18em;text-shadow:0 0 24px #4ac4ffd1;flex-direction:column;font-size:clamp(20px,5.4vw,38px);font-weight:950;display:flex;top:51%}.stage-speed-feedback strong{color:#ebf6ffd1;letter-spacing:.14em;margin-top:8px;font-size:clamp(10px,2.4vw,16px)}.stage-speed-feedback.is-active{animation:.7s cubic-bezier(.16,.8,.22,1) both stage-speed-reveal}.launch-hint{color:#e5ecfbe6;text-align:center;flex-direction:column;align-items:center;width:82%;transition:opacity .36s,transform .36s;display:flex;position:absolute;bottom:15.8%;left:50%;transform:translate(-50%)}.launch-hint.is-dismissed{opacity:0;transform:translate(-50%,12px)}.launch-hint strong{letter-spacing:.16em;font-size:clamp(11px,2.6vw,18px)}.launch-hint small{color:#abc4ea8f;margin-top:7px;font-size:clamp(8px,1.75vw,12px)}.echo-timeline{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:linear-gradient(#0c1830c9,#050a17e0),radial-gradient(circle at 12%,#55c7ff1f,#0000 30%);border:1px solid #55c7ff33;border-radius:15px;height:11.8%;min-height:82px;padding:clamp(9px,2vw,15px) clamp(12px,2.6vw,20px);position:absolute;bottom:clamp(12px,2.8vw,24px);left:clamp(13px,3.4vw,28px);right:clamp(13px,3.4vw,28px);box-shadow:0 13px 40px #00000042,inset 0 0 25px #55c7ff0d}.timeline-heading{color:#bfe0f99e;letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:clamp(7px,1.5vw,10px);display:flex}.timeline-heading>div{align-items:center;gap:7px;display:flex}.timeline-heading strong{color:#deefffd6;letter-spacing:.13em;font-size:clamp(8px,1.8vw,12px)}.echo-dot{background:var(--blue);width:6px;height:6px;box-shadow:0 0 12px var(--blue);border-radius:50%;animation:1.6s ease-in-out infinite echo-pulse}.timeline-track{height:54%;position:absolute;bottom:8px;left:clamp(12px,2.6vw,20px);right:clamp(12px,2.6vw,20px)}.timeline-line{background:linear-gradient(90deg,#55c7fff2,#55c7ff29);height:2px;position:absolute;bottom:16px;left:48px;right:48px;box-shadow:0 0 10px #55c7ff38}.timeline-line:before,.timeline-line:after{border:1px solid var(--blue);content:"";background:#132941;width:7px;height:7px;position:absolute;top:50%;transform:translateY(-50%)rotate(45deg)}.timeline-line:before{left:-3px;box-shadow:0 0 12px #55c7ffcc}.timeline-line:after{opacity:.45;right:-3px}.timeline-now,.timeline-future{color:#afcfeb8a;font-size:clamp(7px,1.4vw,9px);position:absolute;bottom:10px}.timeline-now{left:0}.timeline-future{right:0}.timeline-events{height:1px;position:absolute;bottom:16px;left:48px;right:48px}.timeline-event{--echo-position:100%;bottom:-2px;left:var(--echo-position);flex-direction:column;align-items:center;transition:left 70ms linear;display:flex;position:absolute;transform:translate(-50%)}.timeline-blade{filter:drop-shadow(0 0 6px #55c7ffd1);width:10px;height:29px;position:relative;transform:translateY(5px)}.timeline-blade:before{clip-path:polygon(50% 0,100% 28%,100% 100%,0 100%,0 28%);content:"";background:linear-gradient(90deg,#4bb9ee,#c6f4ff,#328dcc);border-radius:1px 1px 3px 3px;width:6px;height:17px;position:absolute;top:0;left:2px}.timeline-blade:after{background:var(--blue);content:"";border-radius:2px;width:10px;height:3px;position:absolute;top:17px;left:0}.timeline-blade i{background:#246a9c;border-radius:1px 1px 3px 3px;width:4px;height:9px;position:absolute;top:20px;left:3px}.echo-countdown{color:#bcecff;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(7px,1.5vw,10px);font-weight:800;position:absolute;top:0}.timeline-event.is-warning{filter:drop-shadow(0 0 8px #54ccffb8)}.timeline-event.is-imminent{animation:.15s ease-in-out 2 alternate imminent-flash}.timeline-empty{color:#96b5d35c;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(7px,1.45vw,10px);position:absolute;bottom:7px;left:50px;right:50px;overflow:hidden}.pause-curtain,.game-over,.mode-select,.blade-unlock{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:auto;opacity:1;background:#03060fab;place-items:center;padding:9%;transition:opacity .18s;display:grid;position:absolute;inset:0}.blade-unlock{z-index:120;--unlock-color:#55c7ff;background:radial-gradient(circle at 50% 39%, color-mix(in srgb, var(--unlock-color) 24%, transparent), transparent 38%), #02050edb;padding:5%}.blade-unlock-card{border-color:color-mix(in srgb, var(--unlock-color) 52%, transparent);width:min(100%,440px);box-shadow:0 28px 80px #00000094, 0 0 48px color-mix(in srgb, var(--unlock-color) 14%, transparent) inset;padding:26px 30px 24px;animation:.42s cubic-bezier(.2,.8,.2,1) both blade-card-reveal}.blade-unlock-visual{aspect-ratio:1;width:164px;filter:drop-shadow(0 0 24px color-mix(in srgb, var(--unlock-color) 56%, transparent));margin:4px auto -5px;position:relative}.unlock-orbit{border:1px solid color-mix(in srgb, var(--unlock-color) 72%, transparent);box-shadow:0 0 24px color-mix(in srgb, var(--unlock-color) 22%, transparent), 0 0 0 18px color-mix(in srgb, var(--unlock-color) 4%, transparent);border-radius:50%;animation:3.8s linear infinite unlock-orbit-spin;position:absolute;inset:15%}.unlock-orbit:before,.unlock-orbit:after{aspect-ratio:1;background:var(--unlock-color);width:7px;box-shadow:0 0 14px var(--unlock-color);content:"";border-radius:50%;position:absolute}.unlock-orbit:before{top:-4px;left:50%}.unlock-orbit:after{bottom:7%;right:12%}.unlock-blade-model{width:20px;height:132px;animation:1.7s ease-in-out infinite alternate unlock-blade-float;position:absolute;top:18%;left:50%;transform:translate(-50%)rotate(24deg)}.unlock-blade-model:before{background:linear-gradient(90deg, transparent 46%, #ffffffbf 49% 54%, transparent 57%), var(--unlock-color);clip-path:polygon(50% 0,100% 28%,100% 100%,0 100%,0 28%);width:20px;height:92px;box-shadow:0 0 18px var(--unlock-color);content:"";border-radius:4px 4px 7px 7px;position:absolute;top:0;left:0}.unlock-blade-model:after{border-top:8px solid color-mix(in srgb, var(--unlock-color) 70%, white);content:"";background:linear-gradient(90deg,#0000 39%,#11172a 40% 60%,#0000 61%);border-radius:5px;width:42px;height:34px;position:absolute;top:92px;left:50%;transform:translate(-50%)}.blade-unlock-rarity{color:var(--unlock-color);letter-spacing:.24em;font-family:Consolas,Courier New,monospace;font-size:clamp(9px,2vw,12px);font-weight:800}.blade-unlock-card h2{color:color-mix(in srgb, var(--unlock-color) 54%, white);letter-spacing:.04em;white-space:nowrap;margin:5px 0 8px;font-family:Arial Narrow,Inter,sans-serif;font-size:clamp(28px,5vw,38px);font-weight:800}.blade-unlock-card p{min-height:0;margin:0 0 8px;line-height:1.5}.game-over{background:radial-gradient(circle at 50% 40%,#6a16343d,#0000 45%),#03060fc4}.mode-select{z-index:100;background:radial-gradient(circle at 50% 38%,#55c7ff26,#0000 42%),#03060fe8}.mode-card p{margin:0 0 22px;line-height:1.8}.is-hidden{visibility:hidden!important;pointer-events:none!important;opacity:0!important}.modal-card{text-align:center;background:linear-gradient(145deg,#1b233df5,#080d1cf7);border:1px solid #e2c47f40;border-radius:24px;width:min(100%,420px);padding:clamp(26px,7vw,48px);box-shadow:0 28px 70px #0000007a,inset 0 0 42px #55c7ff0d}.modal-card.compact{padding-block:clamp(24px,6vw,38px)}.eyebrow{color:var(--blue);letter-spacing:.24em;font-size:clamp(9px,2vw,12px);font-weight:800}.eyebrow.danger{color:#ff6d89}.modal-card h2{color:#fff7e5;letter-spacing:.08em;margin:10px 0 12px;font-family:STKaiti,KaiTi,serif;font-size:clamp(32px,8vw,56px);font-weight:500}.modal-card p,.modal-card>small{color:#becde899;font-size:clamp(10px,2.3vw,14px)}.failure-reason{letter-spacing:.06em;margin:0;font-weight:700;color:#ff9bb0!important}.result-grid{background:#8ba2cf24;border:1px solid #8ba2cf24;border-radius:14px;grid-template-columns:1fr 1fr;gap:1px;margin:clamp(20px,5vw,32px) 0;display:grid;overflow:hidden}.result-grid>div{background:#070c1be0;flex-direction:column;gap:8px;padding:clamp(14px,3.5vw,22px);display:flex}.result-grid span{color:#bccce88f;font-size:clamp(9px,2vw,12px)}.result-grid strong{color:var(--gold);font-variant-numeric:tabular-nums;font-size:clamp(24px,6vw,40px)}.primary-button{color:#101322;cursor:pointer;letter-spacing:.16em;background:linear-gradient(135deg,#f4dfa8,#c9a85f);border:1px solid #ffe5a594;border-radius:12px;width:100%;min-height:clamp(44px,11vw,58px);margin:8px 0 13px;font-size:clamp(13px,3vw,18px);font-weight:850;transition:filter .16s,transform .16s;box-shadow:0 10px 30px #caa95f2e}.primary-button:hover{filter:brightness(1.08)}.primary-button:active{transform:translateY(1px)scale(.99)}.secondary-button{color:#c5ebffe0;cursor:pointer;letter-spacing:.12em;pointer-events:auto;background:#0c1c31ad;border:1px solid #55c7ff52;border-radius:12px;width:100%;min-height:clamp(40px,9vw,50px);margin:0 0 13px;font-size:clamp(11px,2.5vw,15px);font-weight:750;transition:border-color .16s,background .16s,transform .16s}.secondary-button:hover{background:#112e4cdb;border-color:#7ddcffb8}.secondary-button:active{transform:scale(.98)}button:focus-visible{outline-offset:3px;outline:3px solid #55c7ffcc}@keyframes echo-pulse{0%,to{opacity:.45;transform:scale(.82)}50%{opacity:1;transform:scale(1.12)}}@keyframes imminent-flash{0%{opacity:.38;transform:translate(-50%)scale(.9)}to{opacity:1;transform:translate(-50%)scale(1.14)}}@keyframes perfect-reveal{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)}22%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}62%{opacity:1;transform:translate(-50%,-52%)scale(1)}to{opacity:0;transform:translate(-50%,-70%)scale(1.03)}}@keyframes combo-milestone-reveal{0%{opacity:0;transform:translate(-50%,-50%)scale(.56)}24%,68%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-76%)scale(1.05)}}@keyframes combo-broken-reveal{0%{opacity:0;transform:translate(-50%,-50%)scale(1.1)}24%,64%{opacity:.92;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-30%)scale(.96)}}@keyframes stage-clear-reveal{0%{opacity:0;transform:translate(-50%,-50%)scale(.58)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}68%{opacity:1;transform:translate(-50%,-52%)scale(1)}to{opacity:0;transform:translate(-50%,-67%)scale(1.03)}}@keyframes stage-speed-reveal{0%{opacity:0;transform:translate(-50%,-50%)scale(.68)}22%,64%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-66%)scale(1.02)}}@keyframes event-reveal{0%{opacity:0;transform:translate(-50%,-8px)scale(.94)}16%,72%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-12px)scale(.98)}}@keyframes reduced-feedback-reveal{0%{opacity:0}12%,72%{opacity:1}to{opacity:0}}@keyframes blade-card-reveal{0%{opacity:0;transform:translateY(18px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes unlock-orbit-spin{to{transform:rotate(360deg)}}@keyframes unlock-blade-float{0%{transform:translate(-50%,5px)rotate(24deg)scale(.96)}to{transform:translate(-50%,-7px)rotate(24deg)scale(1.04)}}@media (width<=520px){.game-shell{border-radius:16px}.hud{padding:15px 14px}.hud-best{padding-right:38px}.echo-timeline{min-height:74px}.event-debug{top:16%}}.blade-collection-page{z-index:140;color:#eaf8ff;pointer-events:auto;background:linear-gradient(#02060f33,#020711a8);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.blade-unlock-toast{z-index:25;opacity:0;color:#e9faff;pointer-events:none;background:#041022f0;border:1px solid #55c7ff8c;border-radius:10px;flex-direction:column;min-width:210px;padding:9px 16px;display:flex;position:absolute;top:14%;left:50%;transform:translate(-50%,-12px);box-shadow:0 0 24px #55c7ff26}.blade-unlock-toast span{color:#65d8ff;letter-spacing:.2em;font:800 8px Consolas,monospace}.blade-unlock-toast strong{margin-top:3px;font-size:clamp(11px,2.4vw,15px)}.blade-unlock-toast.is-active{animation:2.4s both blade-unlock-toast}@keyframes blade-unlock-toast{0%,to{opacity:0;transform:translate(-50%,-12px)}12%,82%{opacity:1;transform:translate(-50%)}}.blade-debug-panel{z-index:300;color:#c9f3ff;pointer-events:auto;background:#020812f5;border:1px solid #55c7ff;width:min(310px,80%);padding:7px;font:10px Consolas,monospace;position:absolute;bottom:8px;right:8px}.blade-debug-panel>div{flex-wrap:wrap;gap:4px;max-height:320px;display:flex;overflow:auto}.blade-debug-panel select,.blade-debug-panel button{color:#c9f3ff;background:#08182d;border:1px solid #55c7ff4d;min-height:26px}.blade-debug-panel pre{white-space:pre-wrap;width:100%}.blade-page-header{padding:max(16px, env(safe-area-inset-top)) clamp(15px, 4vw, 30px) 11px;text-align:center;background:linear-gradient(#030a17f5,#030a17b3);flex:none;grid-template-columns:46px 1fr 60px;align-items:center;display:grid}.blade-page-header button,.blade-detail-close{aspect-ratio:1;color:#c7f3ff;cursor:pointer;background:#061428c7;border:1px solid #55c7ff5c;border-radius:50%;place-items:center;width:40px;font-size:20px;display:grid}.blade-page-header small{color:#55c7ff9e;letter-spacing:.25em;font:800 clamp(7px,1.7vw,10px)/1 Consolas,monospace;display:block}.blade-page-header h1{letter-spacing:.16em;text-shadow:0 0 18px #55c7ff4d;margin:5px 0 0;font-size:clamp(25px,6.2vw,42px);line-height:1}.blade-header-count{color:#8bdfff;font:800 clamp(15px,3.5vw,22px)/1 Consolas,monospace}.blade-header-count i{color:#9fc9e170;font-size:.65em;font-style:normal}.blade-page-scroll{min-height:0;padding:7px clamp(14px, 3.7vw, 28px) max(24px, env(safe-area-inset-bottom));overscroll-behavior:contain;scrollbar-color:#55c7ff59 transparent;scrollbar-width:thin;touch-action:pan-y;flex:1;overflow:hidden auto}.blade-collection-summary{background:linear-gradient(135deg,#07152bf2,#040b19e6);border:1px solid #55c7ff2e;border-radius:14px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.blade-collection-summary>div{flex-direction:column;min-width:0;padding:clamp(11px,3vw,18px);display:flex}.blade-collection-summary>div+div{border-left:1px solid #55c7ff21}.blade-collection-summary span{color:#aecfe68c;font-size:clamp(8px,1.7vw,11px)}.blade-collection-summary strong{color:#c9f4ff;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:clamp(18px,4vw,27px);overflow:hidden}.blade-collection-summary small{color:#82bbd894;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font:clamp(7px,1.5vw,10px) Consolas,monospace;overflow:hidden}.blade-summary-bar{background:#7596b62e;border-radius:9px;height:4px;margin-top:9px;overflow:hidden}.blade-summary-bar i{border-radius:inherit;background:linear-gradient(90deg,#328cc2,#75deff);height:100%;display:block;box-shadow:0 0 10px #55c7ff}.blade-series-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:8px;display:grid}.blade-series-chip{text-align:center;background:#050f1fbd;border:1px solid #5e8bb324;border-radius:10px;min-width:0;padding:8px 6px}.blade-series-chip span{color:#a9cae18f;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(6px,1.35vw,9px);display:block;overflow:hidden}.blade-series-chip strong{color:#aee9ff;margin:3px 0 5px;font:700 clamp(9px,2vw,13px) Consolas,monospace;display:block}.blade-series-chip>i{background:#6d91b12e;border-radius:3px;height:2px;display:block;overflow:hidden}.blade-series-chip b{background:#55c7ff;height:100%;display:block}.blade-series-chip.is-complete{border-color:#f4cf727a;box-shadow:inset 0 0 16px #f4cf721a}.blade-series-chip.is-complete strong{color:#f4cf72}.blade-series-complete{z-index:30;opacity:0;color:#fff0bd;pointer-events:none;text-align:center;background:#0b111ff5;border:1px solid #f4cf729e;border-radius:14px;flex-direction:column;width:min(82%,430px);padding:15px 20px;animation:3.4s both blade-series-complete;display:flex;position:absolute;top:18%;left:50%;transform:translate(-50%,-12px);box-shadow:0 0 32px #f4cf7229}.blade-series-complete span{color:#f4cf72;letter-spacing:.22em;font:800 9px Consolas,monospace}.blade-series-complete strong{margin-top:5px;font-size:15px}@keyframes blade-series-complete{0%,to{opacity:0;transform:translate(-50%,-12px)}10%,82%{opacity:1;transform:translate(-50%)}}.blade-filter-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:9px;display:grid}.blade-filter-panel label{background:#040d1cdb;border:1px solid #55c7ff21;border-radius:9px;flex-direction:column;min-width:0;padding:7px 7px 6px;display:flex}.blade-filter-panel label span{color:#7cb2cf8a;margin-bottom:3px;font-size:clamp(6px,1.3vw,9px)}.blade-filter-panel select{color:#ccefff;cursor:pointer;background:0 0;border:0;outline:0;width:100%;min-width:0;font:700 clamp(8px,1.7vw,11px) inherit}.blade-filter-panel option{color:#dbeeff;background:#081327}.blade-grid-heading{color:#7cb2cf99;letter-spacing:.12em;justify-content:space-between;align-items:center;margin:13px 2px 7px;font:700 clamp(8px,1.8vw,11px) Consolas,monospace;display:flex}.blade-grid-heading strong{color:#8ddcff}.blade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(7px,1.8vw,12px);display:grid}.blade-card{--blade-color:#55c7ff;--blade-secondary:#bcefff;--rarity-color:#55c7ff;border:1px solid color-mix(in srgb, var(--rarity-color) 31%, transparent);min-width:0;min-height:clamp(207px,44vw,294px);color:inherit;background:radial-gradient(circle at 50% 24%, color-mix(in srgb, var(--blade-color) 13%, transparent), transparent 38%), linear-gradient(145deg, #071224f5, #030915f5);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;padding:clamp(10px,2.5vw,16px);display:flex;position:relative;overflow:hidden}.blade-card:active{transform:scale(.985)}.blade-card.is-locked{filter:saturate(.63)}.blade-card.is-equipped{border-color:var(--blade-color);box-shadow:0 0 22px color-mix(in srgb, var(--blade-color) 13%, transparent) inset}.blade-card.is-new:after{aspect-ratio:1;content:"";background:#67dcff;border-radius:50%;width:7px;position:absolute;top:9px;right:9px;box-shadow:0 0 12px #67dcff}.blade-card-state{border:1px solid color-mix(in srgb, var(--rarity-color) 43%, transparent);color:color-mix(in srgb, var(--rarity-color) 82%, white);border-radius:999px;padding:3px 7px;font-size:clamp(6px,1.4vw,9px)}.blade-card-model{place-items:center;width:100%;height:clamp(74px,17vw,112px);display:grid;position:relative}.blade-card-model:before{border:1px solid color-mix(in srgb, var(--blade-color) 20%, transparent);width:54%;height:54%;box-shadow:0 0 25px color-mix(in srgb, var(--blade-color) 8%, transparent);content:"";border-radius:50%;position:absolute}.blade-card-model i,.blade-preview-weapon{border:1px solid var(--blade-secondary);background:linear-gradient(90deg, var(--blade-secondary), var(--blade-color) 48%, color-mix(in srgb, var(--blade-color) 44%, white));width:clamp(7px,1.7vw,11px);height:70%;box-shadow:0 0 15px color-mix(in srgb, var(--blade-color) 50%, transparent);border-radius:70% 70% 3px 3px;position:relative;transform:rotate(25deg)}.blade-card-model i:after,.blade-preview-weapon:after{background:var(--blade-secondary);content:"";border-radius:4px;width:330%;height:5px;position:absolute;bottom:-4px;right:50%;transform:translate(50%)}.blade-card-model[data-preset=HIDDEN]{filter:blur(4px);opacity:.43}.blade-card-meta{color:var(--rarity-color);letter-spacing:.08em;font:800 clamp(6px,1.4vw,9px) Consolas,monospace}.blade-card>strong{color:#edfaff;text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:4px;font-size:clamp(12px,2.9vw,19px);overflow:hidden}.blade-card>small{color:#abcce27a;text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:2px;font:clamp(6px,1.4vw,9px) Consolas,monospace;overflow:hidden}.blade-card-owned,.blade-card-condition{color:#98c5de94;width:100%;margin-top:auto;font-size:clamp(6px,1.45vw,9px);line-height:1.35}.blade-card-progress{background:#6b8eae29;border-radius:8px;width:100%;height:3px;margin-top:6px;display:block;overflow:hidden}.blade-card-progress i{background:var(--rarity-color);height:100%;display:block}.blade-empty{color:#9bc1d98f;text-align:center;padding:32px}.blade-detail-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:pan-y;background:#01040bdb;place-items:center;padding:clamp(12px,3vw,24px);display:grid;position:absolute;inset:0;overflow-y:auto}.blade-detail-card{--blade-color:#55c7ff;--blade-secondary:#bcefff;--rarity-color:#55c7ff;border:1px solid color-mix(in srgb, var(--rarity-color) 54%, transparent);background:radial-gradient(circle at 18% 26%, color-mix(in srgb, var(--blade-color) 15%, transparent), transparent 31%), linear-gradient(145deg, #08152afc, #030814fc);scrollbar-width:thin;border-radius:20px;grid-template-columns:minmax(180px,.9fr) minmax(0,1.1fr);gap:clamp(15px,3.5vw,27px);width:min(100%,630px);max-height:100%;padding:clamp(14px,3.3vw,25px);display:grid;position:relative;overflow-y:auto;box-shadow:0 25px 70px #00000094}.blade-detail-close{z-index:4;position:absolute;top:10px;right:10px}.blade-preview{border:1px solid color-mix(in srgb, var(--blade-color) 24%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--blade-color) 12%, transparent), transparent 56%), #020812ad;border-radius:15px;place-items:center;min-height:390px;display:grid;position:relative;overflow:hidden}.blade-preview:before{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--blade-color) 24%, transparent);width:78%;box-shadow:0 0 0 22px color-mix(in srgb, var(--blade-color) 4%, transparent);content:"";animation:blade-preview-orbit var(--preview-speed,5s) linear infinite;border-radius:50%;position:absolute}.blade-preview-core{aspect-ratio:1;border:2px solid var(--blade-secondary);width:35%;box-shadow:0 0 25px color-mix(in srgb, var(--blade-color) 42%, transparent), 0 0 0 10px color-mix(in srgb, var(--blade-color) 7%, transparent);border-radius:50%;position:absolute;top:15%}.blade-preview-core i{border:1px solid var(--blade-color);border-radius:50%;position:absolute;inset:23%}.blade-preview-weapon{transform-origin:50%;width:13px;height:40%;animation:2.2s ease-in-out infinite blade-preview-idle;position:absolute;bottom:13%;transform:rotate(0)}.blade-preview-trail{opacity:.45;background:linear-gradient(0deg, transparent, var(--blade-color));filter:blur(3px);width:8px;height:33%;position:absolute;bottom:5%}.blade-preview-impact{aspect-ratio:1;border:3px solid var(--blade-secondary);opacity:0;border-radius:50%;width:24%;position:absolute;top:30%}.blade-preview>span{color:#9dcae28a;letter-spacing:.12em;text-align:center;font:8px Consolas,monospace;position:absolute;bottom:10px;left:0;right:0}.blade-preview.is-testing .blade-preview-weapon{animation:1.05s cubic-bezier(.3,.8,.3,1) both blade-preview-test}.blade-preview.is-testing .blade-preview-trail{animation:1.05s ease-out both blade-preview-trail}.blade-preview.is-testing .blade-preview-impact{animation:.7s ease-out .72s both blade-preview-impact}.blade-preview.is-echo-phase .blade-preview-weapon{opacity:.62;filter:hue-rotate(46deg)brightness(1.35);animation:.8s ease-in-out both blade-preview-echo}.blade-preview.is-echo-phase .blade-preview-trail{opacity:.7;filter:blur(4px)hue-rotate(46deg)}.blade-detail-copy{min-width:0;padding-top:12px}.blade-detail-rarity{color:var(--rarity-color);letter-spacing:.13em;font:800 clamp(8px,1.8vw,11px) Consolas,monospace}.blade-detail-copy h2{color:#f0fbff;margin:7px 0 0;font-size:clamp(26px,5vw,38px)}.blade-detail-copy h3{color:#8bc0dc8f;letter-spacing:.08em;margin:2px 0 16px;font:700 clamp(9px,2vw,12px) Consolas,monospace}.blade-detail-copy p{color:#d3e8f4c7;margin:0;font-size:clamp(11px,2.3vw,14px);line-height:1.55}.blade-detail-copy blockquote{border-left:2px solid color-mix(in srgb, var(--blade-color) 60%, transparent);color:#a5c7dc94;background:color-mix(in srgb, var(--blade-color) 5%, transparent);margin:12px 0;padding:10px 12px;font-size:clamp(9px,2vw,12px);line-height:1.55}.blade-detail-progress{background:#030b18a8;border:1px solid #5e94b729;border-radius:11px;margin-top:15px;padding:12px}.blade-detail-progress>span{color:#92bed78c;font-size:9px}.blade-detail-progress>strong{float:right;color:#bfefff;font:700 11px Consolas,monospace}.blade-detail-progress>small{clear:both;color:#b8d8e9b3;padding-top:8px;font-size:10px;display:block}.blade-detail-progressbar,.blade-subconditions i{background:#6f95b22e;border-radius:6px;height:4px;margin-top:7px;display:block;overflow:hidden}.blade-detail-progressbar b,.blade-subconditions b{background:linear-gradient(90deg, var(--blade-color), var(--blade-secondary));height:100%;display:block}.blade-subconditions{clear:both;padding-top:5px}.blade-subconditions>div{margin-top:8px}.blade-subconditions span{color:#b8d8e9b3;font-size:9px}.blade-detail-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;display:grid}.blade-detail-actions button{pointer-events:auto;min-width:0;min-height:46px;margin:0}.blade-detail-actions button:disabled{cursor:default;filter:saturate(.35);opacity:.56}@keyframes blade-preview-orbit{to{transform:rotate(360deg)}}@keyframes blade-preview-idle{50%{transform:translateY(-7px) scale(var(--preview-pulse,1.07))}}@keyframes blade-preview-test{0%{bottom:4%;transform:scale(.9)}72%{bottom:50%;transform:scale(1)}to{bottom:49%;transform:scale(.98)}}@keyframes blade-preview-trail{0%{opacity:0;height:20%;bottom:-25%}60%{opacity:.7;height:55%}to{opacity:0;height:18%;bottom:43%}}@keyframes blade-preview-impact{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(2.3)}}@keyframes blade-preview-echo{0%{bottom:4%;transform:translate(-8px)}72%{bottom:50%;transform:translate(8px)}to{bottom:49%;transform:translate(0)}}@media (width<=520px){.blade-page-header{grid-template-columns:42px 1fr 48px}.blade-series-summary{scrollbar-width:none;grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto}.blade-filter-panel{grid-template-columns:1fr 1fr}.blade-detail-card{grid-template-columns:1fr;max-height:none}.blade-preview{min-height:260px}.blade-detail-copy{padding-top:0}}@media (width>=680px) and (height>=800px){.blade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.blade-card{min-height:235px}}@media (prefers-reduced-motion:reduce){.blade-preview:before,.blade-preview-weapon{animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.event-feedback.is-active,.perfect-feedback.is-active,.combo-milestone-feedback.is-active,.combo-broken-feedback.is-active,.stage-clear-feedback.is-active,.stage-speed-feedback.is-active,.achievement-mini-toast.is-active{animation-name:reduced-feedback-reveal!important;animation-duration:.65s!important;animation-timing-function:linear!important;animation-iteration-count:1!important}.event-feedback.is-active{animation-duration:1s!important;transform:translate(-50%)scale(1)!important}.perfect-feedback.is-active,.combo-milestone-feedback.is-active,.combo-broken-feedback.is-active,.stage-clear-feedback.is-active,.stage-speed-feedback.is-active{transform:translate(-50%,-50%)scale(1)!important}.achievement-mini-toast.is-active{transform:translate(-50%)scale(1)!important}.timeline-event.is-imminent{opacity:1;animation:none!important}}.achievement-notification-layer{z-index:150;pointer-events:none;position:absolute;inset:0;overflow:hidden}.achievement-mini-toast{--achievement-color:#55c7ff;border:1px solid color-mix(in srgb, var(--achievement-color) 48%, transparent);opacity:0;min-width:min(72%,360px);box-shadow:0 14px 36px #0000005c, 0 0 22px color-mix(in srgb, var(--achievement-color) 12%, transparent) inset;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#050c1cf0,#0b1830e6);border-radius:14px;align-items:center;gap:12px;padding:clamp(8px,2vw,12px) clamp(13px,3vw,20px);display:flex;position:absolute;top:14.5%;left:50%;transform:translate(-50%,-16px)scale(.96)}.achievement-mini-toast.is-active{animation:1.25s cubic-bezier(.16,.8,.22,1) both achievement-toast-reveal}.achievement-mini-icon{aspect-ratio:1;border:1px solid var(--achievement-color);width:34px;color:var(--achievement-color);box-shadow:0 0 16px color-mix(in srgb, var(--achievement-color) 40%, transparent);place-items:center;display:grid;transform:rotate(45deg)}.achievement-mini-icon:first-letter{transform:rotate(-45deg)}.achievement-mini-toast>span:last-child{flex-direction:column;min-width:0;display:flex}.achievement-mini-toast small{color:color-mix(in srgb, var(--achievement-color) 76%, white);letter-spacing:.18em;font-size:clamp(8px,1.7vw,11px);font-weight:850}.achievement-mini-toast strong{color:#eef9ff;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:clamp(13px,2.9vw,19px);overflow:hidden}.achievement-backfill-toast{opacity:0;color:#c9efff;white-space:nowrap;background:#040d1df0;border:1px solid #55c7ff57;border-radius:999px;align-items:center;gap:10px;padding:11px 20px;font-size:clamp(11px,2.4vw,15px);display:flex;position:absolute;bottom:5%;left:50%;transform:translate(-50%,18px);box-shadow:0 12px 36px #00000061}.achievement-backfill-toast.is-active{animation:3.2s both achievement-backfill-reveal}.achievement-formal-popup{opacity:0;justify-content:center;display:flex;position:absolute;top:20%;left:5%;right:5%;transform:translateY(-16px)scale(.94)}.achievement-formal-popup.is-active{animation:1.8s cubic-bezier(.16,.8,.22,1) both achievement-formal-reveal}.achievement-formal-card{--achievement-color:#55c7ff;border:1px solid color-mix(in srgb, var(--achievement-color) 56%, transparent);background:radial-gradient(circle at 10% 15%, color-mix(in srgb, var(--achievement-color) 16%, transparent), transparent 32%), linear-gradient(145deg, #091327f7, #040814fa);width:min(82%,430px);box-shadow:0 24px 70px #00000094, 0 0 42px color-mix(in srgb, var(--achievement-color) 12%, transparent) inset;text-align:center;border-radius:20px;padding:clamp(20px,5vw,34px);position:relative;overflow:hidden}.achievement-formal-emblem{aspect-ratio:1;border:1px solid var(--achievement-color);width:clamp(42px,10vw,62px);color:var(--achievement-color);box-shadow:0 0 22px color-mix(in srgb, var(--achievement-color) 55%, transparent), 0 0 18px color-mix(in srgb, var(--achievement-color) 18%, transparent) inset;place-items:center;margin:0 auto 13px;display:grid;transform:rotate(45deg)}.achievement-formal-emblem span{transform:rotate(-45deg)}.achievement-formal-card>small{color:var(--achievement-color);letter-spacing:.22em;font-size:clamp(8px,1.8vw,11px);font-weight:900;display:block}.achievement-formal-card>strong{color:#f2fbff;letter-spacing:.05em;margin:8px 0;font-family:Noto Sans SC,Microsoft YaHei,sans-serif;font-size:clamp(24px,6vw,40px);display:block}.achievement-formal-card>p{color:#cbdef4b8;margin:0;font-size:clamp(10px,2.3vw,14px);line-height:1.55}.achievement-formal-meta{color:var(--achievement-color);justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:clamp(10px,2.2vw,14px);display:flex}.achievement-formal-meta span{border-right:1px solid color-mix(in srgb, var(--achievement-color) 28%, transparent);padding-right:16px}.achievement-formal-card>button{border:1px solid color-mix(in srgb, var(--achievement-color) 44%, transparent);color:#def3ffc7;cursor:pointer;pointer-events:auto;background:#0a192dc2;border-radius:999px;margin-top:15px;padding:7px 20px;font-size:clamp(9px,2vw,12px)}.achievement-page{z-index:90;padding:max(18px, env(safe-area-inset-top)) clamp(18px, 4.5vw, 36px) max(18px, env(safe-area-inset-bottom));color:#eaf8ff;pointer-events:auto;flex-direction:column;display:flex;position:absolute;inset:0}.achievement-page-header{text-align:center;flex:none;grid-template-columns:48px 1fr 48px;align-items:center;display:grid}.achievement-page-header small{color:#55c7ff94;letter-spacing:.25em;font-family:Consolas,Courier New,monospace;font-size:clamp(8px,1.7vw,11px);display:block}.achievement-page-header h1{color:#ecfaff;letter-spacing:.16em;text-shadow:0 0 18px #55c7ff52;margin:2px 0 0;font-size:clamp(30px,7vw,48px);line-height:1.1}.achievement-back-button{aspect-ratio:1;color:#aee8ff;cursor:pointer;background:#051022bd;border:1px solid #55c7ff57;border-radius:50%;place-items:center;width:42px;font-size:22px;display:grid}.achievement-header-mark{color:#55c7ff9e;font-size:24px}.achievement-summary{background:linear-gradient(135deg,#061226e6,#081931ad);border:1px solid #55c7ff29;border-radius:14px;grid-template-columns:repeat(3,1fr);margin:clamp(12px,3vw,22px) 0 10px;display:grid;box-shadow:0 14px 38px #0003}.achievement-summary>div{flex-direction:column;align-items:center;gap:5px;min-width:0;padding:clamp(10px,2.8vw,17px) 8px;display:flex}.achievement-summary>div+div{border-left:1px solid #55c7ff1f}.achievement-summary span{color:#b2d0e98c;font-size:clamp(8px,1.7vw,11px)}.achievement-summary strong{color:#c9f2ff;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(13px,3vw,20px);overflow:hidden}.achievement-filter-bar{scrollbar-width:none;flex:none;gap:7px;padding:3px 0 10px;display:flex;overflow-x:auto}.achievement-filter-bar::-webkit-scrollbar{display:none}.achievement-filter-bar button{color:#b8d3eb9e;cursor:pointer;background:#050f1fb8;border:1px solid #6495be33;border-radius:999px;flex:none;min-width:56px;padding:7px 13px;font-size:clamp(9px,2vw,12px)}.achievement-filter-bar button.is-active{color:#d7f7ff;background:#144a6e99;border-color:#55c7ffb8;box-shadow:inset 0 0 16px #55c7ff21}.achievement-card-list{overscroll-behavior:contain;scrollbar-color:#55c7ff5c transparent;scrollbar-width:thin;touch-action:pan-y;flex-direction:column;flex:auto;gap:10px;min-height:0;padding:2px 2px 24px;display:flex;overflow:hidden auto}.achievement-card{--achievement-color:#55c7ff;background:linear-gradient(135deg,#071022e8,#040a17f0);border:1px solid #5e7da138;border-radius:15px;flex:none;grid-template-columns:clamp(44px,10vw,62px) minmax(0,1fr);gap:clamp(11px,2.8vw,18px);padding:clamp(12px,3vw,18px);display:grid;position:relative;box-shadow:0 12px 28px #0000002e}.achievement-card.is-unlocked{border-color:color-mix(in srgb, var(--achievement-color) 48%, transparent);background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--achievement-color) 12%, transparent), transparent 34%), linear-gradient(135deg, #08152af5, #040a17f0)}.achievement-card.is-unseen:after{aspect-ratio:1;background:var(--achievement-color);width:7px;box-shadow:0 0 12px var(--achievement-color);content:"";border-radius:50%;position:absolute;top:9px;right:9px}.achievement-card.is-concealed{opacity:.72;filter:saturate(.55)}.achievement-card-icon{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--achievement-color) 43%, transparent);width:100%;color:color-mix(in srgb, var(--achievement-color) 80%, white);box-shadow:0 0 18px color-mix(in srgb, var(--achievement-color) 13%, transparent) inset;background:#071122c7;align-self:start;place-items:center;font-size:clamp(18px,4.5vw,28px);display:grid;transform:rotate(45deg)scale(.72)}.achievement-card-icon:first-letter{transform:rotate(-45deg)}.achievement-card-content{min-width:0}.achievement-card-meta{color:var(--achievement-color);letter-spacing:.12em;gap:10px;font-family:Consolas,Courier New,monospace;font-size:clamp(7px,1.6vw,10px);font-weight:800;display:flex}.achievement-card-meta span+span{color:#a3c3dc94;border-left:1px solid #87a7c733;padding-left:10px}.achievement-card h2{color:#eaf8ff;letter-spacing:.03em;margin:4px 0 3px;font-size:clamp(15px,3.5vw,22px)}.achievement-card p{color:#b4cde59e;margin:0;font-size:clamp(9px,2vw,12px);line-height:1.45}.achievement-card-progress-row,.achievement-card-unlocked-meta{color:#accfe79e;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;margin-top:10px;font-size:clamp(8px,1.8vw,11px);display:flex}.achievement-card-progress-row strong,.achievement-card-unlocked-meta strong,.achievement-card-hidden-points{color:color-mix(in srgb, var(--achievement-color) 78%, white)}.achievement-card-progress{background:#7593b429;border-radius:999px;height:5px;margin-top:6px;overflow:hidden}.achievement-card-progress>span{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--achievement-color) 58%, #24698f), var(--achievement-color));height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--achievement-color) 42%, transparent);display:block}.achievement-card-hidden-points{text-align:right;margin-top:10px;font-size:clamp(8px,1.8vw,11px)}@keyframes achievement-toast-reveal{0%{opacity:0;transform:translate(-50%,-16px)scale(.96)}14%,76%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-9px)scale(.98)}}@keyframes achievement-backfill-reveal{0%,to{opacity:0;transform:translate(-50%,18px)}10%,82%{opacity:1;transform:translate(-50%)}}@keyframes achievement-formal-reveal{0%{opacity:0;transform:translateY(-16px)scale(.94)}12%,78%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.98)}}@media (width<=520px){.achievement-page{padding-inline:14px}.achievement-page-header{grid-template-columns:42px 1fr 42px}.achievement-summary{margin-top:10px}.achievement-filter-bar{margin-inline:-2px}.achievement-card-list{gap:8px}.achievement-formal-popup{top:17%}.achievement-formal-card{width:92%}}.result-screen{z-index:130;opacity:0;color:#eaf8ff;pointer-events:auto;background:radial-gradient(circle at 50% 14%,#4cc4ff1f,#0000 28%),linear-gradient(#02050d38,#030813d6);flex-direction:column;transition:opacity .26s,transform .26s;display:flex;position:absolute;inset:0;overflow:hidden;transform:translateY(10px)}.result-screen.is-active{opacity:1;transform:translateY(0)}.result-screen.is-leaving{opacity:0;pointer-events:none;transform:scale(1.015)}.result-screen__glow{aspect-ratio:1;pointer-events:none;border:1px solid #52caff14;border-radius:50%;width:76%;position:absolute;top:-18%;left:50%;transform:translate(-50%);box-shadow:0 0 80px #50c7ff14,0 0 0 54px #50c7ff06,0 0 0 110px #50c7ff04}.result-screen__content{overscroll-behavior:contain;scrollbar-color:#55c7ff52 transparent;scrollbar-width:thin;touch-action:pan-y;flex:auto;min-height:0;padding:clamp(34px,7vw,58px) clamp(24px,7vw,52px) 186px;position:relative;overflow:hidden auto}.result-header{text-align:center;position:relative}.result-eyebrow{color:#69d0ff;letter-spacing:.25em;text-shadow:0 0 18px #55c7ff6b;font-family:Consolas,Courier New,monospace;font-size:clamp(9px,2vw,12px);font-weight:800}.result-header h1{color:#fff3df;letter-spacing:.1em;margin:9px 0 5px;font-family:STKaiti,KaiTi,serif;font-size:clamp(38px,8vw,58px);font-weight:500;line-height:1.08}.result-header p{color:#ff86a1d6;letter-spacing:.08em;margin:0;font-size:clamp(10px,2.4vw,15px);font-weight:700}.result-primary-stats{background:#5dc9ff24;border:1px solid #5dc9ff33;border-radius:18px;grid-template-columns:1.18fr 1fr;gap:1px;margin-top:clamp(20px,4.7vw,32px);display:grid;overflow:hidden;box-shadow:0 20px 52px #0000003d,inset 0 0 30px #48beff0b}.result-primary-stat{background:linear-gradient(145deg,#08152af5,#050b19f5);flex-direction:column;justify-content:center;min-width:0;min-height:clamp(112px,22vw,152px);padding:clamp(17px,4vw,26px);display:flex}.result-primary-stat>span{color:#b7d2ea94;letter-spacing:.13em;font-size:clamp(8px,1.8vw,11px);font-weight:750}.result-primary-stat>strong{color:#c8f3ff;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 3px;font-size:clamp(20px,5.3vw,37px);line-height:1.12;overflow:hidden}.result-primary-stat--score>strong{color:#f2d58e;font-size:clamp(34px,8vw,54px)}.result-primary-stat em,.result-primary-stat small{color:#8dbbd994;letter-spacing:.08em;font-family:Consolas,Courier New,monospace;font-size:clamp(7px,1.65vw,10px);font-style:normal}.result-primary-stat em{color:#ffe5a5;background:#7e5c1847;border:1px solid #f4cf7466;border-radius:999px;width:fit-content;padding:4px 7px;box-shadow:0 0 14px #f4cf741a}.result-history{background:#040c1abd;border:1px solid #6a99be21;border-radius:13px;grid-template-columns:repeat(3,1fr);margin-top:10px;display:grid}.result-history>div{flex-direction:column;align-items:center;gap:4px;min-width:0;padding:clamp(10px,2.6vw,16px) 8px;display:flex}.result-history>div+div{border-left:1px solid #6a99be1f}.result-history span{color:#a8c7e07a;font-size:clamp(7px,1.55vw,10px)}.result-history strong{color:#d9f3ffe0;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(12px,2.7vw,18px);overflow:hidden}.result-unlocks{border-top:1px solid #55c7ff24;margin-top:clamp(18px,4vw,28px);padding-top:clamp(16px,3.7vw,24px)}.result-section-heading{justify-content:space-between;align-items:end;display:flex}.result-section-heading span,.result-unlock-group h3{color:#5ec0eba3;letter-spacing:.18em;font-family:Consolas,Courier New,monospace;font-size:clamp(7px,1.6vw,10px)}.result-section-heading h2{color:#e7f7ff;letter-spacing:.07em;margin:3px 0 0;font-size:clamp(18px,4vw,27px)}.result-section-heading>strong{color:#71d7ff;text-shadow:0 0 16px #55c7ff66;font-family:Consolas,Courier New,monospace;font-size:clamp(18px,4.2vw,28px)}.result-unlock-group{margin-top:15px}.result-unlock-group h3{margin:0 0 8px}.result-blade-list,.result-achievement-list{flex-direction:column;gap:8px;display:flex}.result-blade-card{--result-unlock-color:#55c7ff;border:1px solid color-mix(in srgb, var(--result-unlock-color) 34%, transparent);width:100%;min-height:76px;color:inherit;background:radial-gradient(circle at 7% 50%, color-mix(in srgb, var(--result-unlock-color) 14%, transparent), transparent 30%), #050e1ee6;cursor:pointer;text-align:left;border-radius:13px;grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:10px 14px;display:grid}.result-blade-card:hover,.result-blade-card.is-selected{border-color:color-mix(in srgb, var(--result-unlock-color) 72%, transparent);background-color:color-mix(in srgb, var(--result-unlock-color) 7%, #050e1ef5);box-shadow:0 0 22px color-mix(in srgb, var(--result-unlock-color) 11%, transparent) inset}.result-blade-icon{background:linear-gradient(90deg, white, var(--result-unlock-color) 52%, #fff6);width:8px;height:45px;box-shadow:0 0 16px color-mix(in srgb, var(--result-unlock-color) 68%, transparent);border-radius:5px 5px 2px 2px;margin:auto;display:block;position:relative}.result-blade-icon:after{background:color-mix(in srgb, var(--result-unlock-color) 74%, white);content:"";border-radius:4px;width:26px;height:5px;position:absolute;bottom:-4px;right:50%;transform:translate(50%)}.result-blade-copy{min-width:0;display:grid}.result-blade-copy small,.result-achievement-card small{color:var(--result-unlock-color);letter-spacing:.12em;font-family:Consolas,Courier New,monospace;font-size:clamp(7px,1.55vw,10px);font-weight:800}.result-blade-copy strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:clamp(14px,3.2vw,20px);overflow:hidden}.result-blade-copy em{color:#abd2e994;margin-top:3px;font-size:clamp(8px,1.8vw,11px);font-style:normal}.result-blade-card.is-selected .result-blade-copy em{color:color-mix(in srgb, var(--result-unlock-color) 75%, white)}.result-blade-formal{z-index:12;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:auto;background:#01040bdb;place-items:center;padding:22px;display:grid;position:absolute;inset:0}.result-blade-formal article{border:1px solid color-mix(in srgb,var(--result-unlock-color) 58%,transparent);color:#effbff;background:radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--result-unlock-color) 16%,transparent),transparent 35%),linear-gradient(145deg,#08152afc,#030813fc);text-align:center;border-radius:20px;width:min(88%,410px);padding:clamp(22px,5vw,34px);animation:.3s ease-out both result-blade-formal-in;box-shadow:0 24px 70px #0000009e}.result-blade-formal article>span{color:var(--result-unlock-color);letter-spacing:.2em;font:800 clamp(8px,1.8vw,11px) Consolas,monospace}.result-blade-formal-model{place-items:center;height:150px;display:grid;position:relative}.result-blade-formal-model:before{aspect-ratio:1;border:1px solid color-mix(in srgb,var(--result-unlock-color) 38%,transparent);width:110px;box-shadow:0 0 0 18px color-mix(in srgb,var(--result-unlock-color) 5%,transparent),0 0 30px color-mix(in srgb,var(--result-unlock-color) 20%,transparent);content:"";border-radius:50%;animation:4s linear infinite blade-preview-orbit;position:absolute}.result-blade-formal-model i{background:linear-gradient(90deg,#fff,var(--result-unlock-color) 55%,#fff6);width:12px;height:100px;box-shadow:0 0 24px var(--result-unlock-color);border-radius:70% 70% 3px 3px;position:relative;transform:rotate(24deg)}.result-blade-formal-model i:after{background:var(--result-unlock-color);content:"";border-radius:5px;width:40px;height:6px;position:absolute;bottom:-4px;right:50%;transform:translate(50%)}.result-blade-formal article>small{color:var(--result-unlock-color);font:800 10px Consolas,monospace;display:block}.result-blade-formal article>strong{margin-top:5px;font-size:clamp(25px,6vw,38px);display:block}.result-blade-formal article>p{color:#b6d6e8a6;margin:8px 0 17px;font-size:12px}.result-blade-formal article>div:last-child{grid-template-columns:1fr 1fr;gap:8px;display:grid}.result-blade-formal button{pointer-events:auto;min-width:0;min-height:48px;margin:0}@keyframes result-blade-formal-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}.result-achievement-card{--result-achievement-color:#69cbff;border:1px solid color-mix(in srgb, var(--result-achievement-color) 30%, transparent);background:#050e1ee6;border-radius:13px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.result-achievement-card--silver{--result-achievement-color:#a9d9ef}.result-achievement-card--gold{--result-achievement-color:#f1cf77}.result-achievement-card--legendary{--result-achievement-color:#c394ff}.result-achievement-icon{aspect-ratio:1;border:1px solid var(--result-achievement-color);width:31px;color:color-mix(in srgb, var(--result-achievement-color) 70%, white);box-shadow:0 0 14px color-mix(in srgb, var(--result-achievement-color) 22%, transparent);border-radius:4px;place-items:center;font-size:13px;display:grid;transform:rotate(45deg)}.result-achievement-card>span:last-child{min-width:0}.result-achievement-card small{color:var(--result-achievement-color)}.result-achievement-card strong{color:#edfaff;margin-top:2px;font-size:clamp(13px,3vw,19px);display:block}.result-achievement-card p,.result-empty-message{color:#accae18f;margin:3px 0 0;font-size:clamp(8px,1.8vw,11px);line-height:1.45}.result-empty-message{text-align:center;border:1px dashed #5ea1c533;border-radius:12px;margin-top:12px;padding:18px}.result-actions{z-index:3;background:linear-gradient(#0000,#030711f0 25%);grid-template-columns:1.3fr 1fr;gap:10px;padding:20px clamp(24px,7vw,52px) clamp(22px,5vw,38px);display:grid;position:absolute;bottom:0;left:0;right:0}.result-actions .primary-button,.result-actions .secondary-button{pointer-events:auto;min-width:0;min-height:clamp(48px,10vw,60px);margin:0}.result-actions button small{letter-spacing:.16em;opacity:.58;margin-top:2px;font-family:Consolas,Courier New,monospace;font-size:clamp(6px,1.35vw,9px);display:block}.result-actions button:disabled,.result-blade-card:disabled{cursor:default;filter:saturate(.5)}@media (width<=520px){.result-screen__content,.result-actions{padding-left:20px;padding-right:20px}.result-primary-stat{padding-inline:15px}}
