    /* ==================== 爆破成功闪屏 ==================== */
    /* 点下 HACK IN 后盖在开屏层之上展示 1 秒，随后自动消失。
       收尾由 CSS 动画自己完成（forwards → visibility:hidden），
       因此即使 JS 中途出错，也绝不会把访客永久挡在页面外面。 */
    .breach-flash {
      position: fixed; inset: 0;
      /* 开屏层 99999 之上、CRT 滤镜 100001 之下：扫描线依旧压在最上层 */
      z-index: 100000;
      display: flex; align-items: center; justify-content: center;
      padding: var(--space-md);
      background:
        radial-gradient(circle at 50% 45%,
          color-mix(in srgb, var(--cyber-red-700) 40%, transparent) 0%,
          transparent 62%),
        color-mix(in srgb, var(--cyber-void-900) 94%, transparent);
      opacity: 0; visibility: hidden; pointer-events: none;
      overflow: hidden;
    }
    .breach-flash.is-active { animation: breach-life 1s linear forwards; }
    @keyframes breach-life {
      0%   { opacity: 0; visibility: visible; }
      5%   { opacity: 1; visibility: visible; }
      86%  { opacity: 1; visibility: visible; }
      100% { opacity: 0; visibility: hidden; }
    }

    /* 透视网格：营造「掉进数据空间」的纵深感 */
    .breach-flash__grid {
      position: absolute; inset: -25% -25% -25% -25%;
      background-image:
        linear-gradient(color-mix(in srgb, var(--cyber-red-500) 18%, transparent) 1px, transparent 1px),
        linear-gradient(90deg, color-mix(in srgb, var(--cyber-red-500) 18%, transparent) 1px, transparent 1px);
      background-size: 46px 46px;
      transform: perspective(320px) rotateX(58deg);
      -webkit-mask-image: radial-gradient(circle at 50% 58%, #000 0%, transparent 68%);
      mask-image: radial-gradient(circle at 50% 58%, #000 0%, transparent 68%);
      opacity: 0;
      pointer-events: none;
    }
    .breach-flash.is-active .breach-flash__grid { animation: breach-grid 1s linear forwards; }
    @keyframes breach-grid {
      0%   { background-position: 0 0;    opacity: 0; }
      14%  {                              opacity: .6; }
      100% { background-position: 0 230px; opacity: 0; }
    }

    /* 中央面板 */
    .breach-flash__core {
      position: relative; z-index: 2;
      display: flex; flex-direction: column; align-items: center;
      gap: clamp(.55rem, 2vw, 1rem);
      text-align: center;
      max-width: min(92vw, 720px);
      padding: clamp(1.1rem, 4vw, 2.2rem) clamp(1.3rem, 6vw, 3.2rem);
      border: 1px solid color-mix(in srgb, var(--cyber-red-500) 55%, transparent);
      background: color-mix(in srgb, var(--cyber-void-900) 74%, transparent);
      box-shadow: 0 0 32px color-mix(in srgb, var(--cyber-red-500) 28%, transparent),
                  inset 0 0 42px color-mix(in srgb, var(--cyber-red-700) 32%, transparent);
    }
    .breach-flash.is-active .breach-flash__core {
      animation: breach-pop .3s cubic-bezier(.2, .9, .2, 1.5) both;
    }
    @keyframes breach-pop {
      0%   { transform: scale(.82); opacity: 0; filter: blur(6px); }
      60%  { transform: scale(1.04); opacity: 1; filter: blur(0); }
      100% { transform: scale(1);   opacity: 1; }
    }
    /* 四角括号：红 + 青双色，机甲 HUD 味 */
    .breach-flash__core::after {
      content: ""; position: absolute; inset: 0; pointer-events: none;
      background:
        linear-gradient(var(--cyber-red-500), var(--cyber-red-500)) 0 0 / 18px 2px no-repeat,
        linear-gradient(var(--cyber-red-500), var(--cyber-red-500)) 0 0 / 2px 18px no-repeat,
        linear-gradient(var(--cyber-red-500), var(--cyber-red-500)) 100% 100% / 18px 2px no-repeat,
        linear-gradient(var(--cyber-red-500), var(--cyber-red-500)) 100% 100% / 2px 18px no-repeat,
        linear-gradient(var(--cyber-cyan-300), var(--cyber-cyan-300)) 100% 0 / 18px 2px no-repeat,
        linear-gradient(var(--cyber-cyan-300), var(--cyber-cyan-300)) 100% 0 / 2px 18px no-repeat,
        linear-gradient(var(--cyber-cyan-300), var(--cyber-cyan-300)) 0 100% / 18px 2px no-repeat,
        linear-gradient(var(--cyber-cyan-300), var(--cyber-cyan-300)) 0 100% / 2px 18px no-repeat;
    }

    .breach-flash__tag {
      font-family: var(--font-mono);
      font-size: clamp(.58rem, 1.6vw, .8rem);
      letter-spacing: .38em;
      color: var(--cyber-cyan-300);
      text-shadow: 0 0 8px var(--cyber-cyan-300);
    }
    .breach-flash.is-active .breach-flash__tag { animation: breach-flick .18s steps(2) infinite; }
    @keyframes breach-flick {
      0%, 100% { opacity: 1; }
      50%      { opacity: .45; }
    }

    /* 主标题 + 尾随三点：同一行，方便 glitch 伪元素只覆盖文字本身 */
    .breach-flash__line {
      display: flex; align-items: baseline; justify-content: center;
      flex-wrap: nowrap; max-width: 100%;
    }
    .breach-flash__title {
      position: relative;
      font-family: var(--font-display);
      font-size: clamp(1.5rem, 6.6vw, 3.4rem);
      font-weight: 700;
      letter-spacing: .08em;
      line-height: 1.15;
      color: var(--cyber-red-500);
      text-shadow: var(--glow-text-cyan);
      white-space: nowrap;
    }
    /* 红/青色差抖动，经典赛博朋克 glitch */
    .breach-flash__title::before,
    .breach-flash__title::after {
      content: attr(data-text);
      position: absolute; inset: 0;
      pointer-events: none;
      white-space: nowrap;
    }
    .breach-flash__title::before {
      color: var(--cyber-cyan-300);
      clip-path: inset(0 0 55% 0);
    }
    .breach-flash__title::after {
      color: var(--cyber-magenta-500);
      clip-path: inset(58% 0 0 0);
    }
    .breach-flash.is-active .breach-flash__title::before { animation: breach-glitch-a .2s steps(2) infinite; }
    .breach-flash.is-active .breach-flash__title::after  { animation: breach-glitch-b .2s steps(2) infinite reverse; }
    @keyframes breach-glitch-a {
      0%, 100% { transform: translate(0, 0);      opacity: .85; }
      50%      { transform: translate(-3px, -1px); opacity: .55; }
    }
    @keyframes breach-glitch-b {
      0%, 100% { transform: translate(0, 0);     opacity: .8; }
      50%      { transform: translate(3px, 1px);  opacity: .5; }
    }

    .breach-flash__dots {
      display: inline-flex; gap: .1em;
      font-family: var(--font-display);
      font-size: clamp(1.5rem, 6.6vw, 3.4rem);
      line-height: 1;
      color: var(--cyber-red-500);
      text-shadow: var(--glow-text-cyan);
    }
    .breach-flash__dots i { font-style: normal; opacity: .15; }
    .breach-flash.is-active .breach-flash__dots i { animation: breach-dot .9s steps(1) infinite; }
    .breach-flash.is-active .breach-flash__dots i:nth-child(2) { animation-delay: .12s; }
    .breach-flash.is-active .breach-flash__dots i:nth-child(3) { animation-delay: .24s; }
    @keyframes breach-dot {
      0%, 49%  { opacity: .15; }
      50%, 100% { opacity: 1; }
    }

    .breach-flash__sub {
      font-family: var(--font-mono);
      font-size: clamp(.6rem, 1.7vw, .82rem);
      letter-spacing: .14em;
      color: var(--cyber-green-500);
      text-shadow: 0 0 8px color-mix(in srgb, var(--cyber-green-500) 60%, transparent);
      white-space: nowrap; overflow: hidden;
      max-width: 100%;
    }
    .breach-flash.is-active .breach-flash__sub { animation: breach-type 1s steps(30) forwards; }
    @keyframes breach-type {
      0%   { clip-path: inset(0 100% 0 0); }
      100% { clip-path: inset(0 0 0 0); }
    }

    .breach-flash__bar {
      width: min(78vw, 380px); height: 3px;
      background: color-mix(in srgb, var(--cyber-void-100) 85%, transparent);
      overflow: hidden;
    }
    .breach-flash__bar i {
      display: block; height: 100%; width: 0;
      background: linear-gradient(90deg, var(--cyber-red-600), var(--cyber-red-500) 70%, var(--cyber-yellow-500));
      box-shadow: 0 0 10px var(--cyber-red-500);
    }
    .breach-flash.is-active .breach-flash__bar i { animation: breach-bar 1s linear forwards; }
    @keyframes breach-bar {
      0%   { width: 0; }
      100% { width: 100%; }
    }

    /* 掠过全屏的一道光束 */
    .breach-flash__scan {
      position: absolute; left: 0; right: 0; top: -32%; height: 32%;
      background: linear-gradient(180deg, transparent,
        color-mix(in srgb, var(--cyber-red-500) 22%, transparent), transparent);
      pointer-events: none; opacity: 0;
    }
    .breach-flash.is-active .breach-flash__scan { animation: breach-beam .9s ease-in forwards; }
    @keyframes breach-beam {
      0%   { top: -32%;  opacity: 1; }
      100% { top: 100%;  opacity: 0; }
    }

    /* 尊重系统「减少动态效果」：保留 1 秒呈现（breach-life 负责自愈收尾），
       但去掉抖动、网格推进、光束等易引发不适的动画 */
    @media (prefers-reduced-motion: reduce) {
      .breach-flash.is-active .breach-flash__core,
      .breach-flash.is-active .breach-flash__tag,
      .breach-flash.is-active .breach-flash__title::before,
      .breach-flash.is-active .breach-flash__title::after,
      .breach-flash.is-active .breach-flash__grid,
      .breach-flash.is-active .breach-flash__scan,
      .breach-flash.is-active .breach-flash__dots i,
      .breach-flash.is-active .breach-flash__sub { animation: none; }
      .breach-flash__title::before,
      .breach-flash__title::after { opacity: 0; }
      .breach-flash__grid,
      .breach-flash__scan { opacity: 0; }
      .breach-flash__dots i { opacity: 1; }
    }
