.train-steps .train-stage-glasses>.train-description{max-width:52ch;margin:0;font-size:clamp(16px,1.35vw,18px);line-height:1.45}
.train-glasses-scene{position:relative;width:100%;max-width:780px;aspect-ratio:16/9;margin-top:20px;overflow:hidden;border-radius:10px;background:#252d2e;isolation:isolate}
.train-glasses-video{display:block;width:100%;height:100%;object-fit:cover;cursor:pointer}
.train-glasses-guidance{position:absolute;top:18px;left:18px;width:min(380px,calc(100% - 36px));padding:13px;border:1px solid rgba(255,255,255,.78);border-radius:22px;background:rgba(246,248,247,.68);color:#172529;box-shadow:0 16px 44px rgba(8,19,24,.18),inset 0 1px rgba(255,255,255,.68);-webkit-backdrop-filter:blur(24px) saturate(1.5);backdrop-filter:blur(24px) saturate(1.5);transition:opacity .35s,transform .35s,visibility .35s}
.train-glasses-scene.is-passed .train-glasses-guidance{opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none}
.train-glasses-pass{position:absolute;z-index:2;top:50%;left:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:min(360px,calc(100% - 44px));min-height:184px;padding:24px;border:1px solid rgba(255,255,255,.84);border-radius:28px;background:rgba(246,249,248,.74);color:#17332f;box-shadow:0 20px 70px rgba(8,19,24,.22),inset 0 1px rgba(255,255,255,.74);text-align:center;opacity:0;visibility:hidden;transform:translate(-50%,-45%) scale(.96);transition:opacity .45s,transform .45s,visibility .45s;-webkit-backdrop-filter:blur(30px) saturate(1.5);backdrop-filter:blur(30px) saturate(1.5)}
.train-glasses-scene.is-passed .train-glasses-pass{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}
.train-glasses-pass-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#2d7962;color:white;box-shadow:0 0 0 6px rgba(45,121,98,.12)}
.train-glasses-pass-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.train-glasses-pass strong{font-size:clamp(24px,3vw,34px);font-weight:600;line-height:1.05;letter-spacing:-.055em}
.train-glasses-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 8px}
.train-glasses-live{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.02em}
.train-glasses-live i{display:block;width:7px;height:7px;border-radius:50%;background:#d19a47;box-shadow:0 0 0 3px rgba(209,154,71,.14)}
.train-glasses-control{display:grid;place-items:center;width:29px;height:29px;margin:-5px -3px -5px 0;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.44);color:#2b3d41;cursor:pointer}
.train-glasses-control:hover{background:rgba(255,255,255,.82)}
.train-glasses-control:focus-visible{outline:2px solid #966622;outline-offset:2px}
.train-glasses-control svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.train-glasses-play-icon{display:none}
.train-glasses-control[aria-pressed="true"] .train-glasses-pause-icon{display:none}
.train-glasses-control[aria-pressed="true"] .train-glasses-play-icon{display:block}
.train-glasses-steps{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.train-glasses-steps li{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:43px;padding:10px 11px;border:1px solid transparent;border-radius:13px;font-size:14px;font-weight:600;line-height:1.25;letter-spacing:-.015em;transition:background .32s,border-color .32s,color .32s,opacity .32s,transform .32s}
.train-glasses-steps li.is-current{border-color:rgba(255,255,255,.76);background:rgba(255,255,255,.7);color:#16262a;box-shadow:0 2px 9px rgba(18,33,39,.06)}
.train-glasses-steps li.is-upcoming{color:#526368;opacity:.66}
.train-glasses-steps li.is-done{color:#276453;background:rgba(217,238,226,.58)}
.train-glasses-step-mark{display:grid;place-items:center;flex:none;width:21px;height:21px;border:1.5px solid rgba(35,65,68,.35);border-radius:50%;color:#fff;transition:background .32s,border-color .32s,transform .32s}
.train-glasses-step-mark svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.6);transition:opacity .25s,transform .3s}
.train-glasses-steps li.is-current .train-glasses-step-mark{border-color:#bd873b;box-shadow:0 0 0 3px rgba(189,135,59,.1)}
.train-glasses-steps li.is-done .train-glasses-step-mark{border-color:#337963;background:#337963;transform:scale(1.02)}
.train-glasses-steps li.is-done .train-glasses-step-mark svg{opacity:1;transform:scale(1)}
.train-glasses-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:620px){
  .train-glasses-scene{height:auto;aspect-ratio:auto;overflow:visible;background:transparent}
  .train-glasses-video{aspect-ratio:16/9;height:auto;border-radius:10px;background:#252d2e}
  .train-glasses-guidance{position:relative;top:auto;left:auto;width:calc(100% - 20px);margin:-22px auto 0;padding:10px;border-radius:18px}
  .train-glasses-pass{top:min(27vw,120px);min-height:132px;padding:18px;border-radius:22px}
  .train-glasses-pass-icon{width:38px;height:38px}
  .train-glasses-pass-icon svg{width:23px;height:23px}
  .train-glasses-steps li{min-height:37px;padding:7px 9px;font-size:12px}
  .train-glasses-step-mark{width:19px;height:19px}
}
@media(prefers-reduced-motion:reduce){.train-glasses-steps li,.train-glasses-step-mark,.train-glasses-step-mark svg,.train-glasses-guidance,.train-glasses-pass{transition:none}}
