/* Reused from 高新区暑假AI宣讲/index.html; selectors adapted to the shared runtime. */
    .cover-slide {
      background: #ffffff;
    }

    .cover-slide::before,
    .cover-slide::after { display: none; }

    .cover-image {
      position: absolute;
      right: 0;
      top: 0;
      width: 50%;
      height: 100%;
      object-fit: contain;
      object-position: right center;
      background: transparent;
      z-index: 1;
      transform: scale(var(--content-scale));
      transform-origin: left center;
    }

    .cover-particles {
      position: absolute;
      z-index: 2;
      top: 0;
      right: 0;
      width: 50%;
      height: 100%;
      overflow: hidden;
      pointer-events: none;
      transform: scale(var(--content-scale));
      transform-origin: left center;
      isolation: isolate;
    }

    .cover-particles::before,
    .cover-particles::after {
      content: "";
      position: absolute;
      z-index: 0;
      border-radius: 50%;
      filter: blur(24px);
      opacity: .72;
      pointer-events: none;
      animation: cover-nebula-breathe 10s ease-in-out infinite;
    }

    .cover-particles::before {
      left: 8%;
      top: 18%;
      width: 470px;
      height: 470px;
      background: radial-gradient(circle, rgba(35, 104, 239, .13) 0%, rgba(109, 94, 252, .075) 34%, rgba(95, 178, 255, .035) 52%, transparent 72%);
    }

    .cover-particles::after {
      right: -8%;
      bottom: 3%;
      width: 390px;
      height: 390px;
      background: radial-gradient(circle, rgba(13, 169, 155, .105) 0%, rgba(52, 124, 246, .055) 38%, transparent 70%);
      animation-delay: -5s;
    }

    .cover-particle {
      position: absolute;
      z-index: 3;
      left: var(--x);
      top: var(--y);
      width: var(--size);
      height: var(--size);
      border-radius: 50%;
      background: var(--color);
      box-shadow: 0 0 calc(var(--size) * 3.2) var(--glow);
      opacity: var(--opacity);
      animation: cover-particle-float var(--duration) ease-in-out var(--delay) infinite;
      will-change: transform;
    }

    .cover-particle.star {
      border: 0;
      background: radial-gradient(circle, #ffffff 0 22%, var(--color) 38%, rgba(255,255,255,0) 74%);
      box-shadow: 0 0 calc(var(--size) * 1.8) var(--color), 0 0 calc(var(--size) * 4.6) var(--glow);
      opacity: .82;
      animation-name: cover-star-twinkle;
      animation-timing-function: ease-in-out;
    }

    .cover-particle.star::before,
    .cover-particle.star::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      border-radius: 999px;
      transform: translate(-50%, -50%);
      opacity: .72;
    }

    .cover-particle.star::before {
      width: calc(var(--size) * 4.8);
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--color), #ffffff, var(--color), transparent);
    }

    .cover-particle.star::after {
      width: 1px;
      height: calc(var(--size) * 4.8);
      background: linear-gradient(180deg, transparent, var(--color), #ffffff, var(--color), transparent);
    }

    .cover-particle.ring {
      border: 1px solid rgba(15, 86, 232, .28);
      background: rgba(255, 255, 255, .58);
      box-shadow: 0 0 calc(var(--size) * 2.4) rgba(15, 86, 232, .13);
    }

    .cover-orbit {
      position: absolute;
      z-index: 1;
      left: var(--x);
      top: var(--y);
      width: var(--orbit-width);
      height: var(--orbit-height);
      border: 1px solid rgba(76, 111, 246, .18);
      border-radius: 50%;
      box-shadow: inset 0 0 24px rgba(76, 111, 246, .035), 0 0 18px rgba(76, 111, 246, .055);
      opacity: .72;
      transform: rotate(var(--tilt));
      animation: cover-orbit-spin var(--orbit-duration) linear infinite;
    }

    .cover-orbit::before {
      content: "";
      position: absolute;
      left: -4px;
      top: 50%;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #ffffff;
      box-shadow: 0 0 5px #ffffff, 0 0 14px rgba(52, 124, 246, .75), 0 0 28px rgba(109, 94, 252, .32);
    }

    .cover-orbit.orbit-secondary {
      border-color: rgba(13, 169, 155, .14);
      box-shadow: inset 0 0 20px rgba(13, 169, 155, .03), 0 0 16px rgba(13, 169, 155, .045);
      animation-direction: reverse;
    }

    .cover-meteor {
      position: absolute;
      z-index: 4;
      left: var(--x);
      top: var(--y);
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: #ffffff;
      box-shadow: 0 0 5px #ffffff, 0 0 13px var(--meteor-color);
      opacity: 0;
      animation: cover-meteor-shoot var(--duration) ease-out var(--delay) infinite;
      will-change: transform, opacity;
    }

    .cover-meteor::after {
      content: "";
      position: absolute;
      right: 2px;
      top: 50%;
      width: var(--trail);
      height: 1px;
      transform: translateY(-50%);
      background: linear-gradient(90deg, transparent, var(--meteor-color));
      box-shadow: 0 0 8px var(--meteor-color);
    }

    @keyframes cover-particle-float {
      0%, 100% { transform: translate3d(0, 0, 0) scale(.88); }
      50% { transform: translate3d(var(--drift-x), var(--drift-y), 0) scale(1.16); }
    }

    @keyframes cover-star-twinkle {
      0%, 100% { transform: translate3d(0, 0, 0) scale(.58) rotate(0deg); opacity: .28; filter: brightness(.92); }
      42% { transform: translate3d(var(--drift-x), var(--drift-y), 0) scale(1.28) rotate(7deg); opacity: .98; filter: brightness(1.22); }
      66% { transform: translate3d(2px, -2px, 0) scale(.88) rotate(-4deg); opacity: .62; filter: brightness(1.05); }
    }

    @keyframes cover-nebula-breathe {
      0%, 100% { transform: translate3d(0, 0, 0) scale(.94); opacity: .56; }
      50% { transform: translate3d(16px, -10px, 0) scale(1.08); opacity: .86; }
    }

    @keyframes cover-orbit-spin {
      from { transform: rotate(var(--tilt)); }
      to { transform: rotate(calc(var(--tilt) + 360deg)); }
    }

    @keyframes cover-meteor-shoot {
      0%, 68% { opacity: 0; transform: rotate(var(--angle)) translate3d(-70px, 0, 0) scale(.72); }
      72% { opacity: .92; }
      88% { opacity: 0; transform: rotate(var(--angle)) translate3d(var(--travel), 0, 0) scale(1); }
      100% { opacity: 0; transform: rotate(var(--angle)) translate3d(var(--travel), 0, 0) scale(1); }
    }

    @media (prefers-reduced-motion: reduce) {
      .cover-particle,
      .cover-orbit,
      .cover-meteor,
      .cover-particles::before,
      .cover-particles::after { animation: none !important; }
      .cover-meteor { opacity: .22; }
    }

    .cover-copy {
      position: relative;
      z-index: 3;
      display: grid;
      align-content: center;
      width: 50%;
      height: 100%;
      padding: 70px 48px 74px 70px;
      transform: scale(var(--content-scale));
      transform-origin: center center;
    }

    .cover-copy .series {
      margin-bottom: 28px;
      color: var(--blue);
      font-size: 19px;
      font-weight: 850;
      letter-spacing: .14em;
    }

    .cover-copy h1 {
      margin: 0;
      color: var(--ink);
      font-size: 66px;
      line-height: 1.12;
      letter-spacing: -.06em;
      font-weight: 900;
      white-space: nowrap;
      transform: translateY(-46px);
    }

    .cover-copy .subtitle {
      margin: 28px 0 0;
      color: #49627f;
      font-size: 29px;
      line-height: 1.48;
      transform: translateY(-46px);
    }

    .speaker-line {
      display: flex;
      align-items: center;
      gap: 18px;
      margin-top: 45px;
      color: var(--ink);
      font-size: 21px;
    }

    .speaker-line strong { font-size: 27px; }

    .cover-fullscreen {
      position: absolute;
      z-index: 6;
      left: 70px;
      bottom: 52px;
      display: grid;
      width: 36px;
      height: 36px;
      padding: 0;
      place-items: center;
      border: 1px solid rgba(13, 65, 104, .16);
      border-radius: 50%;
      color: #55788d;
      background: rgba(255, 255, 255, .82);
      box-shadow: 0 6px 18px rgba(13, 65, 104, .10);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
    }

    .cover-fullscreen svg { width: 16px; height: 16px; }
    .cover-fullscreen:hover { color: var(--blue); border-color: rgba(15, 86, 232, .34); background: #fff; transform: scale(1.06); }
    .cover-fullscreen[hidden],
    :fullscreen .cover-fullscreen,
    :-webkit-full-screen .cover-fullscreen { display: none; }
    .cover-slide .deck-footer { display: none; }


    .deck-presentation-tools .deck-tool-orb {
      --glass-x: 32%;
      --glass-y: 24%;
      position: fixed;
      right: max(20px, env(safe-area-inset-right));
      bottom: max(20px, env(safe-area-inset-bottom));
      z-index: 3680;
      width: 52px;
      height: 52px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      outline: 0;
      appearance: none;
      -webkit-appearance: none;
      background:
        radial-gradient(circle at var(--glass-x) var(--glass-y), rgba(255,255,255,.48) 0 5%, rgba(255,255,255,.14) 15%, transparent 34%),
        radial-gradient(circle at 68% 82%, rgba(177,221,255,.18), transparent 43%),
        radial-gradient(circle at 50% 50%, rgba(255,255,255,.018) 0 28%, rgba(234,247,255,.09) 52%, rgba(255,255,255,.24) 100%);
      border: 1px solid rgba(255,255,255,.36);
      box-shadow: inset 1px 1px 1px rgba(255,255,255,.72), inset -1px -1px 1px rgba(130,188,231,.18), 0 8px 24px rgba(0,0,0,.16);
      -webkit-backdrop-filter: blur(9px) saturate(145%);
      backdrop-filter: blur(9px) saturate(145%);
      opacity: .42;
      filter: saturate(.76) contrast(.94);
      cursor: grab;
      touch-action: none;
      user-select: none;
      overflow: hidden;
      transition: opacity .26s ease, filter .26s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
    }

    .deck-presentation-tools .deck-tool-orb::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: inherit;
      background: radial-gradient(ellipse at var(--glass-x) var(--glass-y), rgba(255,255,255,.52) 0 4%, rgba(255,255,255,.13) 11%, transparent 29%);
      opacity: .42;
      pointer-events: none;
    }

    .deck-presentation-tools .deck-tool-orb:hover,
    .deck-presentation-tools .deck-tool-orb:focus-visible,
    .deck-presentation-tools .deck-tool-orb.dragging,
    .deck-presentation-tools .deck-tool-orb[aria-expanded="true"] {
      background:
        radial-gradient(circle at var(--glass-x) var(--glass-y), rgba(255,255,255,.72) 0 5%, rgba(255,255,255,.22) 16%, transparent 38%),
        radial-gradient(circle at 50% 50%, rgba(255,255,255,.025) 0 30%, rgba(225,244,255,.11) 56%, rgba(255,255,255,.34) 100%);
      box-shadow: inset 1px 1px 1px rgba(255,255,255,.85), 0 12px 30px rgba(0,0,0,.22);
      opacity: 1;
      filter: saturate(1) contrast(1);
      transform: scale(1.04);
    }

    .deck-presentation-tools .deck-tool-orb.dragging { cursor: grabbing; transition: none; }
    .deck-presentation-tools .deck-tool-orb.shortcut-released { transition: none; }


.deck-presentation-tools .deck-tool-orb::before {border:0;}
