/* 精细MG：玻璃材质、立体投影、分层舞台与缓慢分镜；保留原三幕控制器。 */
#home .benchmark-assessment>img{height:auto;aspect-ratio:2/1;object-fit:cover;object-position:center}
.mg-card{background:radial-gradient(ellipse at 12% 0,#55427b3b,transparent 60%),linear-gradient(145deg,#15172f,#0d172a 75%);border-color:#c3a4eb32;box-shadow:inset 0 1px 0 #e7d7ff12,0 18px 48px #01071645}
.mg-card .mg-stage{aspect-ratio:16/9;min-height:210px;background:radial-gradient(ellipse at 50% 60%,#54477f24,transparent 72%)}
.mg-stage:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -25px 30px #11182b;opacity:.7}
.mg-stage .mg-frame{transform:translateY(10px) scale(.975);transform-origin:320px 215px;transition:opacity .95s ease,transform 1.2s cubic-bezier(.22,.8,.25,1)}
.mg-card[data-mg-step="0"] .mg-frame[data-frame="0"],.mg-card[data-mg-step="1"] .mg-frame[data-frame="1"],.mg-card[data-mg-step="2"] .mg-frame[data-frame="2"]{opacity:1;transform:translateY(0) scale(1)}
.mg-frame .fine-card-label{font-size:21px;fill:#ede5fa;letter-spacing:.12em;font-weight:500}
.mg-frame .fine-note{font-size:18px;fill:#bdb5d0;letter-spacing:.06em}
.fine-float{animation:fine-levitate 7.2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:var(--motion-delay,0s)}
.fine-thread{stroke-dasharray:5 14;animation:fine-thread-flow 9s linear infinite;stroke-linecap:round}
.fine-draw{stroke-dasharray:600;stroke-dashoffset:600;animation:fine-path-reveal 7.2s ease-in-out infinite}
.fine-orbits{transform-origin:320px 215px;animation:fine-orbit-breathe 9s ease-in-out infinite}
.fine-ambient{animation:fine-light 7s ease-in-out infinite}
.fine-card{animation:fine-card-settle 7.2s cubic-bezier(.22,.8,.25,1) infinite;transform-box:fill-box;transform-origin:center}
.detail-strokes{stroke-dasharray:80;stroke-dashoffset:0;animation:fine-detail-write 7.2s ease-in-out infinite}
.fine-agreement{stroke-dasharray:80;stroke-dashoffset:0;animation:fine-detail-write 7.2s ease-in-out infinite}
.fine-lens{animation:fine-lens-light 7.2s ease-in-out infinite}
.mg-copy{position:relative;padding-top:6px;padding-bottom:23px}.mg-copy h3{font-size:22px}.mg-copy p{font-size:16px}
.mg-topline{z-index:2}.mg-count{color:#b5a5d1;font-size:12px}.mg-toggle{width:36px;height:36px;padding:0;justify-content:center;border-color:#bca5de35;background:#12192c99}.mg-toggle>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mg-tabs{padding:8px 12px;background:#090f2180}.mg-tabs button{font-size:15px}.mg-card[data-mg-running="true"] .mg-tabs button[aria-pressed="true"]:after{animation-duration:7.2s}
.mg-card[data-mg-step="0"] .mg-frame:not([data-frame="0"]) *,.mg-card[data-mg-step="1"] .mg-frame:not([data-frame="1"]) *,.mg-card[data-mg-step="2"] .mg-frame:not([data-frame="2"]) *{animation-play-state:paused!important}
@keyframes fine-levitate{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes fine-thread-flow{to{stroke-dashoffset:-114}}
@keyframes fine-orbit-breathe{0%,100%{opacity:.55;transform:scale(.98)}50%{opacity:.95;transform:scale(1.015)}}
@keyframes fine-light{0%,100%{opacity:.25}50%{opacity:.8}}
@keyframes fine-card-settle{0%,100%{transform:translateY(3px)}45%{transform:translateY(-2px)}}
@keyframes fine-detail-write{0%,15%{stroke-dashoffset:80;opacity:.15}50%,100%{stroke-dashoffset:0;opacity:1}}
@keyframes fine-path-reveal{0%,10%{stroke-dashoffset:600;opacity:.25}60%,100%{stroke-dashoffset:0;opacity:1}}
@keyframes fine-lens-light{0%,100%{opacity:.78}50%{opacity:1}}
@media(max-width:760px){.mg-card .mg-stage{min-height:205px}.mg-copy{padding:6px 18px 22px}.mg-copy h3{font-size:21px}.mg-copy p{font-size:16px}.mg-tabs{padding:7px}.mg-tabs button{font-size:14px;min-height:48px}.mg-frame .fine-note{font-size:21px}.mg-frame .fine-card-label{font-size:23px}}
@media(prefers-reduced-motion:reduce){.mg-card *{animation:none!important;transition:none!important}.fine-draw,.detail-strokes,.fine-agreement{stroke-dashoffset:0!important;opacity:1!important}}
