.scanner-view{flex-direction:column;align-items:center;justify-content:center;gap:30px;overflow:hidden}.scanner-stage{width:min(74vw,650px);aspect-ratio:1;position:relative;border-radius:50%;background:radial-gradient(circle,rgba(128,108,255,.14),transparent 58%)}.scanner-grid{position:absolute;inset:5%;border-radius:50%;border:1px solid rgba(165,255,63,.2);background:repeating-radial-gradient(circle,transparent 0 49px,rgba(165,255,63,.07) 50px),linear-gradient(90deg,transparent 49.8%,rgba(165,255,63,.13) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(165,255,63,.13) 50%,transparent 50.2%);animation:pulse-grid 1.6s ease-in-out infinite}.scanner-grid::before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 72%,rgba(165,255,63,.45) 88%,transparent 100%);animation:sweep 1.25s linear infinite}.type-orbit{position:absolute;inset:0;animation:orbit 12s linear infinite}.orbit-type{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px;border-radius:50%;display:grid;place-items:center;font-size:1.45rem;background:rgba(13,15,35,.88);border:1px solid rgba(255,255,255,.13);transform:rotate(var(--angle)) translateY(calc(-1 * min(31vw,270px))) rotate(calc(-1 * var(--angle)));transition:.45s}.type-orbit.is-eliminating .orbit-type.is-out{opacity:.08;filter:grayscale(1);scale:.65}.type-orbit.is-eliminating .orbit-type.is-top{border-color:var(--type-color);box-shadow:0 0 24px var(--type-color);opacity:1}.target-core{position:absolute;inset:35%;display:flex;align-items:center;justify-content:center;flex-direction:column}.target-brackets{position:absolute;inset:0;border:2px solid rgba(165,255,63,.65);clip-path:polygon(0 0,24% 0,24% 3%,3% 3%,3% 24%,0 24%,0 0,76% 0,100% 0,100% 24%,97% 24%,97% 3%,76% 3%,76% 0,0 76%,3% 76%,3% 97%,24% 97%,24% 100%,0 100%,0 76%,76% 100%,76% 97%,97% 97%,97% 76%,100% 76%,100% 100%,76% 100%);animation:bracket 1s ease-in-out infinite}.scan-name{font-size:clamp(1.4rem,4vw,2.3rem);font-weight:900;letter-spacing:.12em;text-shadow:0 0 20px rgba(255,255,255,.35)}.target-label{font-size:.55rem;letter-spacing:.2em;color:var(--accent);margin-top:10px}.scan-readout{width:min(520px,90vw);text-align:center}.scan-readout p{font-weight:700;letter-spacing:.08em}.progress-track{height:3px;background:rgba(255,255,255,.1);margin:15px 0 8px;overflow:hidden}.progress-track span{display:block;height:100%;width:5%;background:linear-gradient(90deg,var(--violet),var(--accent));box-shadow:0 0 15px var(--accent);transition:width .4s}.scan-readout>span{color:#7f86a4;font-size:.72rem}.reveal-layer{position:absolute;inset:0;display:none;align-items:center;justify-content:center;z-index:5}.reveal-layer.is-visible{display:flex;background:radial-gradient(circle,var(--glow),rgba(8,9,20,.94) 58%);animation:reveal-in .5s ease both}.reveal-type{text-align:center}.reveal-icon{font-size:clamp(4rem,13vw,8rem);filter:drop-shadow(0 0 28px var(--color));display:block}.reveal-en{font-weight:1000;letter-spacing:.25em;font-size:clamp(1.3rem,5vw,2.5rem)}.reveal-cn{color:var(--color);font-size:1.2rem;margin-top:5px}.reveal-score{font-size:2rem;font-weight:900;margin-top:12px}.dual-reveal{display:flex;align-items:center;gap:clamp(22px,7vw,80px)}.dual-x{font-size:2rem;color:var(--accent);font-weight:900}.mini-reveal{text-align:center}.mini-reveal .reveal-icon{font-size:clamp(3.4rem,10vw,6rem)}
@keyframes orbit{to{transform:rotate(1turn)}}@keyframes sweep{to{transform:rotate(1turn)}}@keyframes pulse-grid{50%{opacity:.62;scale:.98}}@keyframes bracket{50%{scale:1.06;filter:drop-shadow(0 0 8px var(--accent))}}@keyframes reveal-in{from{opacity:0;scale:.85}to{opacity:1;scale:1}}
