      @import url('https://cdn.jsdelivr.net/npm/pretendard@1.3.5/dist/web/static/pretendard.css');
    :root {
      --ink: #ecebf9;
      --ink-2: #f4f2fb;
      --panel: #ffffff;
      --line: rgba(20, 18, 40, .14);
      --paper: #16141f;
      --muted: #6c6885;
      --lime: #14c8e6;
      --lime-ink: #0a9fbe;
      --lime-soft: rgba(20, 200, 230, .12);
      --blue: #7a3df0;
      --blue-deep: #e6dff7;
      --orange: #ff7b45;
      --silver: #6c6885;
      --radius: 30px;
      --shadow: 0 30px 90px rgba(20, 18, 40, .18);
      --acid: #14c8e6;
      --acid-ink: #d4179a;
      --oripa-card-back: url("/_template/service/images/07event_images/2026/08_pokemon/card.png?v=20260831");
    }

    * { box-sizing: border-box; }

    .noise {
      position: fixed;
      inset: 0;
      z-index: 20;
      opacity: .035;
      pointer-events: none;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
    }

    .wrap { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: var(--lime-ink);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: .16em;
      text-transform: uppercase;
    }
    .eyebrow::before { content: ""; width: 24px; height: 2px; background: currentColor; }

    .topbar {
      position: relative;
      z-index: 30;
      border-bottom: 0;
      background: rgb(8 19 33 / 35%); -webkit-backdrop-filter: blur(9px); backdrop-filter: blur(9px);
    }
    .topbar__inner {
      min-height: 68px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
    }
    .brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
    .brand__mark {
      display: grid;
      place-items: center;
      width: 34px; 
      height: 34px;
      flex: 0 0 auto;
      border-radius: 10px;
      background: var(--lime);
      color: #0b0e0b;
      font-size: 13px;
      font-weight: 1000;
      letter-spacing: -.05em;
      transform: rotate(-6deg);
    }
    .brand__name { font-size: 14px; font-weight: 900; color: #fff; letter-spacing: .08em; white-space: nowrap; }
    .brand__name span { color: var(--muted); font-weight: 700; }
    .topbar__meta { display: flex; align-items: center; gap: 18px; }
    .open-date { color: #6c6885; font-size: 13px; font-weight: 800; letter-spacing: .08em; white-space: nowrap; }

    .mini-cta, .primary-cta, .secondary-cta, .modal-cta, .submit-btn { 
      min-height: 48px;
      display: inline-flex;
      align-items: center;
      justify-content: center;  
      gap: 10px;
      border: 0;
      border-radius: 999px;
      cursor: pointer;
      font-weight: 900;
      line-height: 1;
    }
    .mini-cta {
      min-height: 42px;
      padding: 0 18px;
      background: var(--lime);
      color: #0b0e0b;
      font-size: 13px;  
    }

    /* main-content-topgap : ³ì»ö ³×ºñ¹Ù ¹ØÀ¸·Î ³»¸² */
    #main-content {text-align: left; }
    /* landing-pretendard-force : º»¹® ÀüÃ¼ Pretendard (ºòÆÄÀÏ °øÅë CSS ÆùÆ®º¸´Ù ¿ì¼±) */
    #main-content, #main-content * { font-family: "Pretendard", "Apple SD Gothic Neo", sans-serif !important; }
    .hero {
      position: relative; 
      isolation: isolate;
      min-height: 800px;
      padding: 144px 0 70px;
      overflow: hidden;
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -3;
      background:
        linear-gradient(90deg, rgba(255, 255, 255,.035) 1px, transparent 1px),
        linear-gradient(rgba(255, 255, 255,.035) 1px, transparent 1px);
      background-size: 72px 72px;
      mask-image: linear-gradient(to bottom, black, transparent 92%);
    }
    .hero::after {
      content: "";
      position: absolute;
      z-index: -2;
      width: 760px;
      height: 760px;
      right: -210px;
      top: -260px;
      border: 1px solid rgba(20, 200, 230,.22);
      border-radius: 50%;
      box-shadow: 0 0 0 80px rgba(20, 200, 230,.025), 0 0 0 180px rgba(20, 200, 230,.018);
    }
    .hero__grid {
      display: grid;
      grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
      align-items: center;
      gap: 44px;
    }
    .hero__date {
      position: absolute;
      z-index: -1;
      left: max(20px, calc((100vw - 1200px) / 2 - 26px));
      bottom: -48px;
      color: rgba(255, 255, 255, .10);
      font-size: clamp(180px, 27vw, 420px);
      font-weight: 1000;
      letter-spacing: -.095em;
      line-height: .78;
      white-space: nowrap;
      user-select: none;
    }
    .hero__copy { position: relative; z-index: 4; padding-bottom: 38px; }
    .hero h1 {
      max-width: 720px;
      margin: 24px 0 22px;
      font-size: 84px; /* PC °íÁ¤ (È­¸é Ä¿Á®µµ ¾È Ä¿Áü) */
      font-weight: 950;
      line-height: .98;
      text-wrap: balance;
    }
    .hero h1 em { color: var(--lime-ink); font-style: normal; white-space: nowrap; }
    .hero__lead {
      max-width: 590px;
      margin: 0;
      color: #6c6885;
      font-size: clamp(18px, 1.7vw, 23px);
      font-weight: 680;
      line-height: 1.6;
      text-wrap: balance;
    }
    .hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
    .primary-cta { min-height: 58px; padding: 0 26px;  background: var(--lime); font-size: 20px; color: #080b08; box-shadow: 0 12px 38px rgba(20, 200, 230,.17); } 
    .hero__actions a {color: #fff; }
    .primary-cta::after { content: "¢Ö"; font-size: 18px; }
    .secondary-cta { min-height: 58px; padding: 0 25px; border: 1px solid rgba(20,18,40,.18); background: rgba(255,255,255,.6); color: var(--paper); }
    .secondary-cta::after { content: "£«"; color: #7a3df0; }
    .primary-cta:hover, .mini-cta:hover, .submit-btn:hover { background: #ffffff; color: #7a3df0; box-shadow: inset 0 0 0 2px #7a3df0, 0 12px 30px rgba(122,61,240,.2); transform: translateY(-2px); }
    .secondary-cta:hover { border-color: #7a3df0; background: rgba(122,61,240,.08); color: #7a3df0; }
    .hero__note { display: flex; gap: 10px; align-items: center; margin-top: 20px; color: var(--muted); font-size: 15px; font-weight: 700; }
    .hero__note i { width: 6px; height: 6px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 14px var(--lime); }

    .drop-visual {
      position: relative;
      min-height: 590px;
      display: grid;
      place-items: center;
      perspective: 1100px;
    }
    .drop-visual::before {
      content: "";
      position: absolute;
      width: min(520px, 96%);
      aspect-ratio: 1;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(20, 200, 230,.16), rgba(20, 200, 230,.05) 42%, transparent 70%);
      filter: blur(1px);
    }
    .drop-word {
      position: absolute;
      right: 0;
      top: 36px;
      color: rgba(255, 255, 255,.06);
      font-size: clamp(62px, 7vw, 112px);
      font-weight: 1000;
      letter-spacing: -.075em;
      line-height: .8;
      writing-mode: vertical-rl;
    }
    .card-back {
      position: absolute;
      width: 236px;
      aspect-ratio: 717/1200;
      border-radius: 18px;
      overflow: hidden;
      background: #ffffff;
      border: 1px solid rgba(255, 255, 255,.16);
      box-shadow: var(--shadow);
    }
    .card-back img { width: 100%; height: 100%; object-fit: cover; }
    .card-back--one { transform: translate(-112px, 14px) rotate(-12deg); z-index: 1; }
    .card-back--two { transform: translate(92px, -30px) rotate(9deg); z-index: 2; }
    .hit-card {
      position: absolute;
      z-index: 3;
      width: 236px;
      border-radius: 18px;
      box-shadow: 0 32px 80px rgba(0,0,0,.55), 0 0 44px rgba(20, 200, 230,.14);
      transform: translate(12px, -6px) rotate(1deg);
    }
    .hit-card img { width: 100%; aspect-ratio: 717/1200; object-fit: cover; border-radius: 11px; }
    .dv-caption {
      position: absolute;
      z-index: 6;
      left: 50%;
      top: 50%;
      transform: translate(calc(-50% + 12px), calc(-50% - 128px)) rotate(1deg);
      display: grid;
      justify-items: center;
      gap: 5px;
      padding: 12px 24px 13px;
      border-radius: 16px;
      background:
        radial-gradient(130% 120% at 50% -12%, rgba(20, 200, 230, .24), transparent 60%),
        linear-gradient(180deg, rgba(12, 22, 27, .92), rgba(8, 14, 12, .78));
      border: 1px solid rgba(124, 234, 255, .5);
      box-shadow:
        0 16px 38px rgba(0, 0, 0, .5),
        0 0 26px rgba(20, 200, 230, .3),
        inset 0 1px 0 rgba(255, 255, 255, .12);
      -webkit-backdrop-filter: blur(7px);
      backdrop-filter: blur(7px);
      text-align: center;
      white-space: nowrap;
      pointer-events: none;
    }
    .dv-caption span {
      color: #8ef0ff;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .1em;
    }
    .dv-caption strong {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: #ffffff;
      font-size: 22px;
      font-weight: 950;
      letter-spacing: -.01em;
      text-shadow: 0 1px 10px rgba(20, 200, 230, .35);
    }
    .dv-caption strong img {
      width: 1.18em;
      height: 1.18em;
      object-fit: contain;
      filter: drop-shadow(0 2px 7px rgba(20, 200, 230, .55));
    }
    .visual-ticket {
      position: absolute;
      z-index: 5;
      left: 0;
      bottom: 55px;
      width: 220px;
      padding: 17px 18px;
      border: 1px solid rgba(255, 255, 255,.2);
      border-radius: 18px;
      background: rgba(26, 33, 27, .92);
      box-shadow: 0 20px 60px rgba(0,0,0,.35);
      transform: rotate(-4deg);
    }
    .visual-ticket small { color: var(--lime-ink); font-size: 13px; font-weight: 900; letter-spacing: .12em; }
    .visual-ticket strong { display: block; margin-top: 7px; font-size: 18px; line-height: 1.25; }

    .ticker { border-bottom: 0; background: linear-gradient(90deg, #0a9fbe, #6a2fe0); color: #ffffff; overflow: hidden; }
    .ticker__line {
      min-height: 48px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 26px;
      padding: 0 24px;
      font-size: 13px;
      font-weight: 1000;
      letter-spacing: .08em;
      white-space: nowrap;
    }
    .ticker__line i { width: 5px; height: 5px; background: currentColor; transform: rotate(45deg); }
    .ticker__line--sub { min-height: 44px; border-top: 1px solid rgba(255, 255, 255, .18); color: #ffffff; font-size: 20px; font-weight: 850; letter-spacing: .02em; text-shadow: 0 1px 4px rgba(20,18,40,.35); }
    .ticker__line--sub b { color: #ffe14d; font-weight: 1000; margin-right: 5px; }
    .ticker__line--sub i { background: #ffffff; opacity: .85; }

    .event-stage { padding: 60px 0 72px; }
    .section-head { display: block; margin-bottom: 44px; }
    .section-head h2 { margin: 12px 0 0; font-size: clamp(36px, 5vw, 50px); font-weight: 600; line-height: 1; letter-spacing: -.06em; }
    .section-head p { max-width: 620px; margin: 14px 0 0; font-size: 15px; line-height: 1.7; text-align: left; }
#event-title .br-m { display: none; }
@media (max-width: 700px){ #event-title .br-m { display: inline; } }
    .event-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
    .event-panel {
      position: relative;
      min-height: 630px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      isolation: isolate;
    }
    .event-panel::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2; 
      background: linear-gradient(135deg, rgba(255, 255, 255,.08), transparent 45%);  
    }
    .event-panel--oripa { background: radial-gradient(circle at 80% 22%, rgba(20, 200, 230,.42), transparent 35%), #ffffff; }
    .event-panel--auction { background: radial-gradient(circle at 78% 20%, rgba(255,101,52,.25), transparent 35%), #ffffff; }
    .event-panel--memory { background: radial-gradient(circle at 80% 22%, rgba(122,61,240,.30), transparent 35%), #ffffff; }
    .event-panel--lucky { background: radial-gradient(circle at 80% 22%, rgba(212,23,154,.26), transparent 35%), #ffffff; } 
    .event-panel--memory .event-kicker { color: #7a3df0; }
    .event-panel--lucky .event-kicker { color: #d4179a; } 
    .event-panel__copy { position: relative; z-index: 4; padding: 42px; } 
    .event-kicker { color: #d4179a; font-size: 13px; font-weight: 950; letter-spacing: .18em; }
    .event-panel--auction .event-kicker { color: #e05a17; }
    .event-panel h3 { margin: 13px 0 9px; font-size: clamp(35px, 4vw, 36px); font-weight: 600; line-height: 1; letter-spacing: -.06em; }
    .event-panel__hook { margin: 0; color: #16141f; font-size: 18px; font-weight: 750; }
    .tag-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
    .tag { min-height: 32px; display: inline-flex; align-items: center; padding: 0 12px; border-radius: 999px; background: rgba(20,18,40,.05); border: 1px solid rgba(20,18,40,.16); color: #16141f; font-size: 13px; font-weight: 850; }
    .tag--hot { background: var(--lime); color: #0a0c0a; border-color: var(--lime-ink); }
    .event-panel--auction .tag--hot { background: var(--orange); color: #ffffff; border-color: #ff916f; }

    .oripa-showcase { position: absolute; inset: 220px 20px 0; }
    .box-product {
      position: absolute;
      width: 215px;
      left: 46px;
      bottom: 30px;
      z-index: 2;
      filter: drop-shadow(0 30px 35px rgba(0,0,0,.54));
      transform: rotate(-4deg);
    }
    .oripa-mini-back {
      position: absolute;
      width: 176px;
      right: 52px;
      bottom: 62px;
      border-radius: 13px;
      overflow: hidden;
      box-shadow: 0 28px 60px rgba(0,0,0,.55);
      transform: rotate(9deg);
    }
    .oripa-mini-back img { width: 100%; aspect-ratio: .716; object-fit: cover; }
    .pick-badge {
      position: absolute;
      right: 24px;
      bottom: 28px;
      z-index: 4;
      width: 118px;
      aspect-ratio: 1;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: var(--lime);
      color: #071007;
      text-align: center;
      font-size: 13px;
      font-weight: 950;
      line-height: 1.15;
      transform: rotate(-8deg);
      box-shadow: 0 20px 35px rgba(0,0,0,.35);
    }
    .pick-badge strong { display: block; font-size: 30px; letter-spacing: -.06em; }

    .slab-stage { position: absolute; inset: 205px 20px 0; display: grid; place-items: center; }
    .slab {
      position: relative;
      z-index: 2;
      width: 270px;
      padding: 15px 15px 22px;
      border: 1px solid rgba(255, 255, 255,.72);
      border-radius: 20px;
      background: linear-gradient(135deg, rgba(255, 255, 255,.92), rgba(90, 107, 125,.74) 45%, rgba(255, 255, 255,.9));
      color: #16141f;
      box-shadow: 0 35px 80px rgba(0,0,0,.58), inset 0 0 0 4px rgba(255, 255, 255,.28);
      transform: rotate(3deg);
    }
    .slab__label {
      min-height: 70px;
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 10px;
      margin-bottom: 12px;
      padding: 10px 12px;
      border: 2px solid #d6e6f0;
      background: #ffffff;
    }
    .slab__label small { display: block; font-size: 13px; font-weight: 850; letter-spacing: .07em; }
    .slab__label strong { display: block; margin-top: 4px; font-size: 15px; letter-spacing: -.04em; }
    .grade { font-size: 34px; font-weight: 1000; line-height: 1; }
    .slab__card { width: 100%; aspect-ratio: .716; object-fit: cover; border: 1px solid rgba(0,0,0,.28); }
    .lot-stamp {
      position: absolute;
      z-index: 5;
      left: 50%;
      top: 104px;
      transform-origin: 50% 0;
      transform: translateX(-50%) rotate(-5deg);
      padding: 14px 17px;
      text-align: center;
      border: 1px solid rgba(255, 255, 255,.26);
      color: #ffffff;
      border-radius: 14px;
      box-shadow: 0 18px 42px rgba(0,0,0,.42), 0 0 0 1px rgba(255,101,52,.35);
      background: rgba(26, 33, 27, .92);
      -webkit-backdrop-filter: blur(3px);
      backdrop-filter: blur(3px);
      white-space: nowrap;
      opacity: 0;
    }
    .lot-stamp span { display: block; color: var(--orange); font-size: 13px; font-weight: 950; letter-spacing: .12em; }
    .lot-stamp strong { display: block; margin-top: 5px; font-size: 18px; }
    .slab-photo { position: relative; z-index: 2; animation: floatCard 4.6s ease-in-out infinite; }
    /* ½ºÅÆÇÁ: Ä«µå µÚ¿¡ ¼ûÀ½ ¡æ À§·Î ¼Ú¾Æ Ä«µå¸¦ ¹þ¾î³² ¡æ ¾ÕÀ¸·Î ³»·Á¿Í ¾ÈÂø */
    .slab-stage:not(.reveal) .lot-stamp { opacity: 0; z-index: 1; transform: translateX(-50%) translateY(26px) rotate(-5deg); }
    .slab-stage.reveal .lot-stamp { animation: riseOver .82s cubic-bezier(.3,.75,.3,1) both, floatStamp 4.6s ease-in-out .82s infinite; }
    @keyframes floatCard { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
    @keyframes floatStamp {
      0%, 100% { transform: translateX(-50%) translateY(0) rotate(-5deg); }
      50% { transform: translateX(-50%) translateY(-10px) rotate(-5deg); }
    }
    @keyframes riseOver {
      0%   { opacity: 0; z-index: 1; transform: translateX(-50%) translateY(24px) rotate(-5deg); }
      14%  { opacity: 1; z-index: 1; }
      44%  { z-index: 1; transform: translateX(-50%) translateY(-120px) rotate(-5deg); }
      46%  { z-index: 6; transform: translateX(-50%) translateY(-120px) rotate(-5deg); }
      100% { opacity: 1; z-index: 6; transform: translateX(-50%) translateY(0) rotate(-5deg); }
    }

    .pickzone { padding: 60px 0 60px; }
    .pickzone__inner { display: grid; justify-items: center; text-align: center; }
    .pickzone h2 { margin: 12px 0 8px; font-size: clamp(30px, 4vw, 52px); font-weight: 600; line-height: 1.02; letter-spacing: -.05em; }
    .pickzone h2 em { color: var(--lime-ink); font-style: normal; }
    .pickzone__lead { max-width: 500px; margin: 0 0 32px; color: var(--muted); font-size: 16px; line-height: 1.6; }
    .pickcard {
      position: relative;
      display: block;
      width: min(300px, 76vw);
      aspect-ratio: 447 / 604;
      border-radius: 18px;
      overflow: hidden;
      cursor: pointer;
      border: 1px solid rgba(255, 255, 255, .14);
      box-shadow: 0 30px 72px rgba(0, 0, 0, .52), 0 0 46px rgba(20, 200, 230, .18);
      transition: transform .3s cubic-bezier(.2,.8,.3,1), box-shadow .3s ease;
      will-change: transform;
    }
    .pickcard img { width: 100%; height: 100%; object-fit: cover; display: block; transform: translateZ(0); }
    .pickcard::before {
      content: "";
      position: absolute;
      inset: -3px;
      z-index: 2;
      border-radius: 21px;
      border: 2px solid rgba(20, 200, 230, .55);
      opacity: 0;
      pointer-events: none;
      animation: pickPulse 2.4s ease-in-out infinite;
    }
    .pickcard:hover, .pickcard:focus-visible { transform: translateY(-8px) scale(1.03); box-shadow: 0 42px 96px rgba(0, 0, 0, .62), 0 0 66px rgba(20, 200, 230, .32); }
    /* ½ºÅ©·Ñ·Î ºä¿¡ µé¾î¿À¸é Ä«µå°¡ ÇÑ ¹ÙÄû È¸Àü */
    .pickcard.pcspin { animation: pickSpin 1s cubic-bezier(.16,.72,.2,1) both; }
    /* ½ºÇÉ Áß¿¡´Â ÆÞ½º Å×µÎ¸® Á¤Áö ¡æ µ¿½Ã ¾Ö´Ï¸ÞÀÌ¼Ç ºÎÇÏ¡¤±ôºýÀÓ °¨¼Ò */
    .pickcard.pcspin::before { animation: none; opacity: 0; }
    @keyframes pickSpin { 0% { transform: perspective(1100px) rotateY(0deg); } 100% { transform: perspective(1100px) rotateY(360deg); } }
    .pickcard__tap {
      position: absolute;
      left: 50%;
      bottom: 16px;
      z-index: 3;
      transform: translateX(-50%);
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 10px 20px;
      border-radius: 999px;
      background: rgba(9, 17, 8, .84);
      border: 1px solid rgba(20, 200, 230, .55);
      color: #ffffff;
      font-size: 14px;
      font-weight: 900;
      white-space: nowrap;
    }
    .pickcard__tap::before { content: "??"; font-size: 15px; }
    @keyframes pickPulse { 0%, 100% { opacity: 0; transform: scale(.985); } 50% { opacity: .9; transform: scale(1.012); } }

    .facts { padding: 42px 0 110px; background: transparent; }
    .facts__grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 26px;
      background: rgba(255, 255, 255,.018);
    }
    .fact { min-height: 210px; padding: 38px 34px; border-right: 1px solid var(--line); }
    .fact:last-child { border-right: 0; }
    .fact__no { color: var(--lime-ink); font-size: 13px; font-weight: 1000; letter-spacing: .13em; }
    .fact strong { display: block; margin: 22px 0 10px; font-size: clamp(23px, 2.3vw, 32px); letter-spacing: -.05em; line-height: 1.15; }
    .fact p { max-width: 310px; margin: 0; color: var(--muted); font-size: 15px; line-height: 1.65; }
    .fileball-flow {
      display: grid;
      grid-template-columns: minmax(0,.82fr) 32px minmax(0,.82fr) 32px minmax(0,1.36fr);
      align-items: stretch;
      margin-top: 18px;
      padding: 10px;
      border: 1px solid rgba(20, 200, 230,.28);
      border-radius: 22px;
      background: linear-gradient(110deg, rgba(20, 200, 230,.08), rgba(255, 255, 255,.018) 55%, rgba(20, 200, 230,.035));
    }
    .fileball-step {
      min-width: 0;
      min-height: 108px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 10px;
      padding: 21px 22px;
      border-radius: 15px;
      background: rgba(255, 255, 255,.5);
    }
    .fileball-step span { color: var(--lime-ink); font-size: 13px; font-weight: 1000; letter-spacing: .14em; }
    .fileball-step strong { font-size: clamp(15px, 1.55vw, 19px); line-height: 1.35; letter-spacing: -.025em; text-wrap: balance; }
    .fileball-arrow { display: grid; place-items: center; color: var(--lime-ink); font-size: 19px; font-style: normal; opacity: .72; }

    .closing { padding: 90px 0; }
    .closing__box {
      position: relative;
      overflow: visible;
      padding: 72px 74px;
      border-radius: 34px;
      background: #8defff;
      color: #080b08;
    }
    .closing__box::after {
      content: "AUG";
      position: absolute;
      right: 8px;
      bottom: 4px;
      color: rgba(255, 255, 255,.08);
      font-size: clamp(150px, 22vw, 310px);
      font-weight: 1000;
      letter-spacing: -.1em;
      line-height: .8;
    }
    .closing__content { position: relative; z-index: 2; max-width: 700px; }
    .closing__label { font-size: 16px; font-weight: 1000; letter-spacing: .16em; }
    .closing h2 { margin: 15px 0 18px; font-size: clamp(36px, 5.5vw, 60px); font-weight: 600; line-height: .98; letter-spacing: -.065em; }
    .closing p { margin: 0; font-size: 17px; font-weight: 680; line-height: 1.55; }
    .closing__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
    .closing .primary-cta { background: #080b08; color: white; box-shadow: none; }
    .closing .primary-cta:hover { background: #7a3df0; }
    .closing .secondary-cta { border-color: rgba(255, 255, 255,.24); background: rgba(255, 255, 255,.24); color: #080b08; }
    .closing .secondary-cta::after { color: #080b08; }

    .footer { padding: 0 0 30px; color: #6c6885; font-size: 13px; line-height: 1.7; background: #fff; }
    .footer__inner { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 18px 30px; padding-top: 26px; }
    .footer strong { color: #6c6885; }
    .footer__notice { grid-column: 1 / -1; padding-top: 17px; border-top: 1px solid rgba(255, 255, 255,.08); color: #6c6885; font-size: 13px; }
    .footer__notice b { color: var(--lime-ink); }

    .modal {
      position: fixed;
      inset: 0;
      z-index: 100;
      display: none;
      place-items: center;
      padding: 20px;
      background: rgba(0, 0, 0, .78);
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
    }
    .modal:target { display: grid; }
    @supports selector(body:has(.modal:target)) { body:has(.modal:target) { overflow: hidden; } }
    .modal__backdrop { position: absolute; inset: 0; cursor: default; }
    .modal__card {
      position: relative;
      z-index: 2;
      width: min(100%, 510px);
      max-height: calc(100vh - 40px);
      overflow: auto;
      padding: 34px;
      border: 1px solid rgba(255, 255, 255,.18);
      border-radius: 28px;
      background: #ffffff;
      box-shadow: 0 40px 120px rgba(0,0,0,.7);
      -webkit-overflow-scrolling: touch;
    }
    .modal__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
    .modal__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--lime); color: #080b08; font-size: 22px; font-weight: 1000; }
    .modal__close { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; color: #6c6885; background: rgba(255, 255, 255,.07); font-size: 23px; }
    .modal h2 { margin: 28px 0 12px; font-size: clamp(29px, 6vw, 40px); line-height: 1.05; letter-spacing: -.055em; }
    .modal__desc { margin: 0; color: #6c6885; font-size: 15px; line-height: 1.65; }
    .modal__benefits { display: grid; gap: 9px; margin: 25px 0; }
    .modal__benefit { display: flex; align-items: center; gap: 11px; min-height: 48px; padding: 0 15px; border-radius: 13px; background: rgba(255, 255, 255,.055); font-size: 13px; font-weight: 760; }
    .modal__benefit b { color: var(--lime-ink); }
    .modal-cta, .submit-btn { width: 100%; min-height: 56px; background: var(--lime); color: #080b08; }
    .modal__subcta { width: 100%; min-height: 50px; display: flex; justify-content: center; align-items: center; margin-top: 8px; color: #6c6885; font-size: 13px; font-weight: 800; }
    .prototype-note { margin: 15px 0 0; color: #6c6885; font-size: 13px; line-height: 1.6; text-align: center; }

    @media (max-width: 980px) {
      .hero { min-height: auto; padding-top: 62px; }
      .hero__grid { grid-template-columns: 1fr; gap: 0; }
      .hero__copy { max-width: 760px; padding-bottom: 0; }
      .drop-visual { min-height: 560px; margin-top: 22px; }
      .drop-word { right: 8%; }
      .event-grid { grid-template-columns: 1fr; }
      .event-panel { min-height: 650px; }
    }

    @media (max-width: 700px) {
      .wrap { width: min(100% - 32px, 1200px); }
      .topbar__inner { min-height: 62px; }
      .brand__name span, .open-date { display: none; }
      .mini-cta { min-height: 44px; padding: 0 15px; }
      .hero { padding: 96px 0 45px; }
      .hero__date { left: -18px; bottom: -10px; font-size: 45vw; }
      .hero h1 { margin-top: 18px; font-size: clamp(44px, 13vw, 84px); }
      .hero__lead { font-size: 17px; line-height: 1.55; }
      .hero__actions { display: grid; grid-template-columns: 1fr; margin-top: 28px; }
      .primary-cta, .secondary-cta { width: 100%; min-height: 56px; padding-inline: 17px; }
      .drop-visual { min-height: 440px; margin: 14px -10px 0; }
      .drop-word { top: 38px; right: 1%; font-size: 68px; }
      .card-back { width: 166px; border-radius: 13px; }
      .card-back--one { transform: translate(-78px, 12px) rotate(-12deg); }
      .card-back--two { transform: translate(68px, -20px) rotate(9deg); }
      .hit-card { width: 166px; border-radius: 13px; }
      .hit-card img { border-radius: 8px; }
      .hit-card::after { right: -20px; padding: 6px 9px; font-size: 13px; }
      .dv-caption { padding: 10px 15px; transform: translate(calc(-50% + 8px), calc(-50% - 92px)) rotate(1deg); }
      .dv-caption span { font-size: 18px; }
      .dv-caption strong { font-size: 17px; }
      .visual-ticket { left: 4px; bottom: 16px; width: 172px; padding: 13px 14px; }
      .visual-ticket strong { font-size: 14px; }
      .ticker__line { min-height: 44px; justify-content: flex-start; gap: 14px; font-size: 13px; overflow: hidden; }
      .ticker__line span:nth-of-type(3) { display: none; }
      .event-stage { padding: 40px 0;  }
      .section-head { display: block; margin-bottom: 28px; }
      .section-head p { margin-top: 15px; text-align: left; }
      .event-panel { min-height: 570px; border-radius: 24px; }
      .event-panel__copy { padding: 30px 27px; }
      .event-panel__hook { font-size: 16px; }
      .box-product { left: 12px; bottom: 28px; width: 178px; }
      .oripa-mini-back { right: 22px; bottom: 72px; width: 146px; }
      .pick-badge { right: 12px; bottom: 25px; width: 98px; }
      .pick-badge strong { font-size: 25px; }
      .slab-stage { inset: 200px 10px 0; }
      .slab { width: 225px; padding: 12px 12px 18px; border-radius: 16px; }
      .slab__label { min-height: 58px; margin-bottom: 9px; padding: 7px 9px; }
      .slab__label small { font-size: 13px; }
      .slab__label strong { font-size: 13px; }
      .grade { font-size: 28px; }
      .lot-stamp { left: 50%; right: auto; top: 88px; bottom: auto; transform: translateX(-50%) rotate(-5deg); padding: 11px 13px; }
      .lot-stamp strong { font-size: 15px; }
      .facts { padding: 30px 0 80px; }
      .facts__grid { grid-template-columns: 1fr; }
      .fact { min-height: 0; padding: 29px 25px; border-right: 0; border-bottom: 1px solid var(--line); }
      .fact:last-child { border-bottom: 0; }
      .fact strong { margin-top: 13px; }
      .fileball-flow { grid-template-columns: 1fr; margin-top: 14px; padding: 9px; }
      .fileball-step { min-height: 91px; padding: 19px 20px; }
      .fileball-step strong { font-size: 16px; }
      .fileball-arrow { min-height: 24px; transform: rotate(90deg); }
      .closing { padding: 30px 0; }
      .closing p { font-size: 15px; }
      .closing__box { padding: 48px 26px 42px; border-radius: 25px; }
      .closing__box::after { right: 6px; bottom: 4px; }
      .closing__actions { display: grid; }
      .footer__inner { display: block; }
      .footer__inner > * + * { margin-top: 14px; }
      .footer__notice { padding-top: 14px; }
      .modal { padding: 12px; place-items: end center; }
      .modal__card { width: 100%; max-height: calc(100dvh - 24px); padding: 26px 22px calc(24px + env(safe-area-inset-bottom)); border-radius: 25px 25px 18px 18px; }
      .modal h2 { margin-top: 23px; }
    }

    @media (prefers-reduced-motion: no-preference) {
      .primary-cta, .secondary-cta, .mini-cta { transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
      .hit-card { animation: float-card 4.8s ease-in-out infinite; }
      @keyframes float-card { 0%, 100% { transform: translate(12px, -6px) rotate(1deg); } 50% { transform: translate(12px, -17px) rotate(1deg); } }
    }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
      .brand__logo { height: 40px; width: auto; display: block; }
      /* AUG background watermarks (re-enabled) */
      /* prettier step cards + icons */
      .fileball-step { min-width: 0; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 26px 20px; border-radius: 18px; background: #ffffff; border: 1px solid var(--line); box-shadow: 0 10px 26px rgba(255,255,255,.07); }
      .fileball-step .fileball-step__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; font-size: 27px; line-height: 1; background: radial-gradient(circle at 50% 38%, rgba(20,200,230,.30), rgba(20,200,230,.12)); border: 1px solid rgba(20,200,230,.45); box-shadow: 0 5px 16px rgba(20,200,230,.20); margin-bottom: 2px; }
      .fileball-step span:not(.fileball-step__icon) { color: var(--lime-ink); font-size: 13px; font-weight: 1000; letter-spacing: .14em; }
      .fileball-step strong { color: #16141f; }
      .fileball-arrow { color: var(--lime-ink) !important; opacity: .5; }
      /* SECTION1 (hero) light holo background + dark text */
      .hero { background: #ecebf9; }
      .hero h1 { color: #ffffff; }
      .hero h1 em { color: #7ceaff; }
      .hero__lead { color: rgba(255,255,255,.95); }
      .hero .eyebrow { color: #fff; }
      .hero__note { color: rgba(255,255,255,.85); }
      .hero .secondary-cta {font-size: 20px; border-color: rgba(20,18,40,.20) !important; background: rgba(255,255,255,.72) !important; color: #16141f !important; }
      .hero .secondary-cta::after { color: #d4179a !important; }
      .hero .secondary-cta:hover { border-color: #7a3df0 !important; background: rgba(122,61,240,.10) !important; color: #7a3df0 !important; }
      /* hero ÅØ½ºÆ®: ´ÙÃ¤·Î¿î ¹è°æ À§¿¡¼­µµ Àß º¸ÀÌ°Ô Èò»ö ÇìÀÏ·Î */
      .hero h1, .hero__lead, .hero__note, .hero .eyebrow { text-shadow: 0 2px 5px rgba(20,18,40,.45); }
      .fileball-step__icon img { width: 30px; height: 30px; object-fit: contain; display: block; }
      /* hero: light lavender base + faded w_top_bg2 image */
   .hero { background: transparent;
}
      /* »ó´Ü ¹è°æ: ÀÌ¹ÌÁö(°¡¿îµ¥ 1920px °íÁ¤, ÁÂ¿ì Åõ¸í ÆäÀÌµå)¸¦ ±×¶óµ¥ÀÌ¼Ç(ÀüÃ¼ Æø)ÀÌ µ¤À½ ¡æ ³ÐÈ÷¸é ¾ç¿·ÀÌ ±×¶óµ¥ÀÌ¼ÇÀ¸·Î ÀÚ¿¬ ¿¬°á */
      .hero-imgbg {
        position: absolute;
        inset: 0;
        z-index: -4;
        background: url(/_template/service/images/07event_images/2026/08_pokemon/w_top_bg2.jpg) center top / 1920px auto no-repeat;
        -webkit-mask-image: linear-gradient(to right, transparent 0, #000 12%, #000 88%, transparent 100%);
        -webkit-mask-size: 1920px 100%;
        -webkit-mask-position: center top;
        -webkit-mask-repeat: no-repeat;
        mask-image: linear-gradient(to right, transparent 0, #000 12%, #000 88%, transparent 100%);
        mask-size: 1920px 100%;
        mask-position: center top;
        mask-repeat: no-repeat;
        pointer-events: none;
      }
      .hero-tint {
        position: absolute;
        inset: 0;
        z-index: -1;
        background: linear-gradient(rgb(39 12 31 / 68%), rgba(122, 61, 240, 0.82));
        pointer-events: none;
      }
      /* DAILY HIT card: hover spin + background3 video overlay */
      .hit-card { position: relative; perspective: 700px; }
      .hit-card img { backface-visibility: visible; }
      .hit-card:hover img { animation: hcSpin 1.4s linear infinite; }
      @keyframes hcSpin { to { transform: rotateY(360deg); } }
      .hc-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 5; opacity: 0; pointer-events: none; mix-blend-mode: screen; border-radius: 11px; transition: opacity .2s ease; }
      .hit-card:hover .hc-video { opacity: 1; }
      /* DAILY HIT card: auto spin (whole card + white frame) then rest, video during spin */
      .hit-card { animation: hcAuto 4.5s ease-in-out infinite !important; }
      @keyframes hcAuto {
        0%   { transform: perspective(820px) translateY(0) rotateY(0deg); }
        22%  { transform: perspective(820px) translateY(-6px) rotateY(360deg); }
        55%  { transform: perspective(820px) translateY(3px) rotateY(360deg); }
        100% { transform: perspective(820px) translateY(0) rotateY(360deg); }
      }
      .hit-card:hover img { animation: none; }
      .hc-video { animation: hcVidShow 4.5s ease-in-out infinite; }
      @keyframes hcVidShow { 0%{opacity:.85} 20%{opacity:.85} 40%{opacity:0} 100%{opacity:0} }
      .hit-card:hover .hc-video { opacity: 0; }
      /* DAILY HIT: spin once (viewport-triggered) + video around the card */
      .hit-card { animation: none !important; }
      .hit-card.spin { animation: hitSpinOnce .95s cubic-bezier(.16,.72,.2,1) both; }
      @keyframes hitSpinOnce {
        0%   { transform: translate(12px,-6px) rotate(1deg) rotateY(-1440deg); }
        100% { transform: translate(12px,-6px) rotate(1deg) rotateY(0deg); }
      }
      .hit-card:hover img { animation: none; }
      .drop-visual .hc-video { position: absolute; inset: auto; left: 50%; top: 50%; transform: translate(calc(-50% + 12px), calc(-50% - 6px)); width: 400px; height: 400px; object-fit: cover; z-index: 4; pointer-events: none; mix-blend-mode: screen; opacity: 0; transition: opacity .3s ease; animation: none !important; border-radius: 0; }
      .drop-visual .hc-video.play { opacity: 1; }
      /* fix: remove drop-visual isolation so video screen-blend reaches the bg (no black box) */
      .drop-visual { perspective: none; }
      @keyframes hitSpinOnce {
        0%   { transform: translate(12px,-6px) rotate(1deg) perspective(820px) rotateY(-1440deg); }
        100% { transform: translate(12px,-6px) rotate(1deg) perspective(820px) rotateY(0deg); }
      }
      /* fix: card actually spins (beat the animation:none !important) */
      .hit-card.spin { animation: hitSpinOnce .95s cubic-bezier(.16,.72,.2,1) both !important; }
      /* fix: kill the black box ? fade video edges to transparent + screen removes dark */
      .drop-visual .hc-video { -webkit-mask-image: radial-gradient(circle at 50% 50%, #000 38%, rgba(0,0,0,.35) 58%, transparent 72%); mask-image: radial-gradient(circle at 50% 50%, #000 38%, rgba(0,0,0,.35) 58%, transparent 72%); }
      /* sticky header + scroll-to-top button */
      .topbar { position: sticky; top: 0; }
      .to-top { position: fixed; right: max(16px, calc((100vw - 1200px) / 2 - 60px)); left: auto; bottom: 26px; z-index: 45; width: 48px; height: 48px; border-radius: 50%; background: var(--lime-ink); color: #fff; border: 0; font-size: 22px; line-height: 1; cursor: pointer; opacity: 0; pointer-events: none; transition: opacity .25s ease, transform .2s ease; box-shadow: 0 10px 26px rgba(255,255,255,.28); }
      .to-top.show { opacity: 1; pointer-events: auto; }
      .to-top:hover { transform: translateY(-2px); }
      /* ÆË¾÷(Ä«µå °³ºÀ) ³ëÃâ ½Ã Å¾¹öÆ° ¼û±è */
      body:has(.modalback.open) .to-top { opacity: 0 !important; pointer-events: none !important; }
      /* new content from 2¹ø: warning boxes (light-theme adapted) */
      .fileball-warning { display: flex; justify-content: space-between; gap: 28px; margin-top: 12px; padding: 20px 24px; border: 1px solid rgba(255,154,55,.5); border-radius: 17px; background: rgba(255,154,55,.1); color: #d8cbb0; font-size: 13px; line-height: 1.6; }
      .fileball-warning strong { flex: 0 0 auto; color: #ff8a63; }
      .fileball-warning span { max-width: 720px; }
      @media (max-width: 640px){ .fileball-warning { display: block; padding: 18px 20px; } .fileball-warning strong { display: block; margin-bottom: 5px; } }
      .modal__warning { margin: 4px 0 18px; padding: 13px 15px; border: 1px solid rgba(255,154,55,.45); border-radius: 12px; background: rgba(255,154,55,.1); color: #e0b878; font-size: 12px; font-weight: 720; line-height: 1.6; }
      /* hero visual: side cards slide-in from sides + visual-ticket stamp slam (on load / scroll back to top) */
      @media (prefers-reduced-motion: no-preference) {
        .card-back { transition: transform .85s cubic-bezier(.16,.82,.28,1), opacity .6s ease; }
        .drop-visual:not(.reveal) .card-back--one { transform: translate(-380px, 14px) rotate(-18deg); opacity: 0; }
        .drop-visual:not(.reveal) .card-back--two { transform: translate(360px, -30px) rotate(15deg); opacity: 0; }
        .drop-visual.reveal .card-back--two { transition-delay: .06s; }
        .drop-visual:not(.reveal) .visual-ticket { opacity: 0; }
        .visual-ticket { transform-origin: 50% 50%; }
        .visual-ticket::before { content: ""; position: absolute; inset: -5px; border-radius: inherit; border: 3px solid var(--lime); opacity: 0; pointer-events: none; }
        .drop-visual.reveal .visual-ticket { animation: ticketStamp .8s cubic-bezier(.2,.86,.3,1) both; }
        .drop-visual.reveal .visual-ticket::before { animation: stampRing .8s ease-out both; }
        @keyframes stampRing { 0%,40% { opacity: 0; transform: scale(.6); } 47% { opacity: .95; transform: scale(1); } 100% { opacity: 0; transform: scale(1.7); } }
        @keyframes ticketStamp {
          0%   { opacity: 0; transform: scale(2.9) rotate(-15deg); box-shadow: 0 60px 90px rgba(0,0,0,0); }
          38%  { opacity: 1; }
          46%  { transform: scale(.76) rotate(-1deg); box-shadow: 0 8px 22px rgba(0,0,0,.55); }
          56%  { transform: scale(1.16) rotate(-9deg); }
          66%  { transform: scale(.9) rotate(-1deg); }
          76%  { transform: scale(1.06) rotate(-6deg); }
          86%  { transform: scale(.97) rotate(-3deg); }
          100% { opacity: 1; transform: scale(1) rotate(-4deg); box-shadow: 0 20px 60px rgba(0,0,0,.35); }
        }
      }
      /* closing: 5-card hand fan-out (center = video) */
      .closing__fan { position: absolute; top: 60px; right: 20px; transform: translateY(-42%); width: 420px; height: 600px; z-index: 1; pointer-events: none; }
      .closing__fan .fcard { position: absolute; left: 50%; top: 50%; width: 240px; aspect-ratio: .716; margin: -168px 0 0 -120px; border-radius: 18px; overflow: hidden; background: #ffffff; box-shadow: 0 18px 40px rgba(0,0,0,.42), 0 0 0 1px rgba(8,11,8,.12); transform-origin: 50% 135%; transform: rotate(0deg); transition: transform .6s cubic-bezier(.2,.8,.3,1); }
      .closing__fan .fcard img, .closing__fan .fcard video { width: 100%; height: 100%; object-fit: cover; display: block; }
      .closing__fan .fcard:nth-of-type(1){ z-index: 1; }
      .closing__fan .fcard:nth-of-type(2){ z-index: 2; }
      .closing__fan .fcard:nth-of-type(3){ z-index: 5; }
      .closing__fan .fcard:nth-of-type(4){ z-index: 2; }
      .closing__fan .fcard:nth-of-type(5){ z-index: 1; }
      .closing.reveal .closing__fan .fcard:nth-of-type(1){ transform: rotate(-42deg); transition-delay: .10s; }
      .closing.reveal .closing__fan .fcard:nth-of-type(2){ transform: rotate(-21deg); transition-delay: .05s; }
      .closing.reveal .closing__fan .fcard:nth-of-type(3){ transform: rotate(0deg); }
      .closing.reveal .closing__fan .fcard:nth-of-type(4){ transform: rotate(21deg); transition-delay: .05s; }
      .closing.reveal .closing__fan .fcard:nth-of-type(5){ transform: rotate(42deg); transition-delay: .10s; }
      @media (prefers-reduced-motion: reduce) { .closing__fan .fcard { transition: none; } }
      @media (max-width: 900px) {
        
        .ticker__stats .tstat {
          padding: 8px;
        }
        .closing { padding: 30px 0; }
        .closing__box { padding-bottom: 330px; }
        .closing__fan { display: block; top: auto; bottom: 24px; left: 50%; right: auto; transform: translateX(-50%) scale(.55); transform-origin: center bottom; }
      }
      .slab-photo { width: min(180px, 82%); aspect-ratio: 717/1200; object-fit: cover; border-radius: 16px; box-shadow: var(--shadow); border: 1px solid rgba(0,0,0,.22); }
  .closing__fan .fcard--main { background: #10140f url("/_template/service/images/07event_images/2026/08_pokemon/today_hit.png") center / cover !important; }
  .closing__fan .fan-video { position: absolute; left: 50%; top: 50%; width: 440px; height: 440px; transform: translate(-50%, -50%); object-fit: cover; z-index: 6; pointer-events: none; mix-blend-mode: screen; opacity: 0; transition: opacity .5s ease; -webkit-mask-image: radial-gradient(circle at 50% 50%, #000 36%, rgba(0,0,0,.35) 56%, transparent 72%); mask-image: radial-gradient(circle at 50% 50%, #000 36%, rgba(0,0,0,.35) 56%, transparent 72%); }
  .closing.reveal .closing__fan .fan-video { opacity: 1; }
      /* ¿À´ÃÀÇ ¿À¸®ÆÄ Ä«µå: ¹Ú½º¿¡ ¼û¾î ÀÖ´Ù ºÎÃ¤Ã³·³ ÆîÃÄÁ® ³ª¿È (½ºÇÉ ¾øÀ½) */
      .oripa-mini-back { transform-origin: 15% 92%; opacity: 0; transform: translate(-110px, 26px) rotate(-22deg) scale(.72); animation: none !important; }
      .oripa-mini-back.spin { animation: oripaFanOut .9s cubic-bezier(.2,.82,.25,1) both !important; }
      @keyframes oripaFanOut {
        0%   { transform: translate(-110px, 26px) rotate(-22deg) scale(.72); opacity: 0; }
        55%  { opacity: 1; }
        100% { transform: translate(0, 0) rotate(9deg) scale(1); opacity: 1; }
      }

      /* ===================================================================== */
      /* ===== POKEMON SEAL / CARD-OPENING POPUP (ported from event02) ======= */
      /* ===== .modal -> .pkm  ¡¤  .card-back -> .pk-card-back (renamed) ======= */
      /* ===================================================================== */
      .cta {
        border: 0;
        border-radius: 10px;
        background: var(--acid);
        color: #111608;
        padding: 14px 19px;
        font-weight: 800;
        cursor: pointer;
      }
      .modalback {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.8);
        backdrop-filter: blur(8px);
        display: none;
        align-items: center;
        justify-content: center;
        padding: 18px;
        z-index: 30;
      }
      .modalback.open {
        display: flex;
      }
      .pkm {
        width: min(900px, 100%);
        max-height: calc(100vh - 36px);
        overflow-y: auto;
        background: #ffffff;
        border: 1px solid rgba(255,255,255,.14);
        border-radius: 20px;
        padding: 24px;
        animation: up 0.22s;
      }
      .pkm.wide {
        width: min(1080px, 100%);
      }
      @keyframes up {
        from {
          opacity: 0;
          transform: translateY(12px);
        }
      }
      .mtop {
        display: flex;
        justify-content: space-between;
      }
      .mtop h2 {
        font: 400 28px 'Pretendard';
        margin: 6px 0;
      }
      .close {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        border: 1px solid rgba(255, 255, 255, .35);
        background: #000;
        color: #ffffff;
        font-size: 20px;
        line-height: 1;
        cursor: pointer;
        box-shadow: 0 4px 16px rgba(0, 0, 0, .55);
      }
      .seal {
        height: 500px;
        margin: 16px 0;
        background: radial-gradient(circle at 50% 42%, #ffffff, #e4dcf6 72%);
        border: 0;
        border-radius: 12px;
        display: grid;
        place-items: center;
        text-align: center;
        position: relative;
        overflow: hidden;
      }
      .seal:before {
        content: "";
        position: absolute;
        inset: -70%;
        background: repeating-conic-gradient(from 0deg,
          rgba(20,200,230,0) 0deg 9deg,
          rgba(20,200,230,.30) 11deg 12deg,
          rgba(255,238,160,.62) 13deg 14deg,
          rgba(20,200,230,.30) 15deg 16deg,
          rgba(20,200,230,0) 18deg 24deg);
        animation: turn 7s linear infinite;
      }
      .seal:after {
        content: "";
        position: absolute;
        inset: -70%;
        background:
          conic-gradient(from 0deg, transparent, rgba(255,255,255,.42), transparent 16%),
          conic-gradient(from 150deg, transparent, rgba(20,200,230,.55), transparent 15%),
          conic-gradient(from 280deg, transparent, rgba(20,200,230,.48), transparent 14%);
        mix-blend-mode: screen;
        animation: turnRev 4.5s linear infinite;
      }
      @keyframes turnRev { to { transform: rotate(-360deg); } }
      @keyframes turn {
        to {
          transform: rotate(360deg);
        }
      }
      .seal b {
        font: 400 62px 'Pretendard';
        z-index: 1;
      }
      .seal small {
        display: block;
        color: var(--acid-ink);
        font: 10px 'Pretendard';
        letter-spacing: 0.15em;
        margin-top: 6px;
      }
      .mactions {
        display: flex;
        gap: 9px;
        margin-top: 18px;
      }
      .mactions button {
        flex: 1;
      }
      .secondary {
        border: 1px solid rgba(255,255,255,.14);
        background: #ffffff;
        color: #16141f;
        border-radius: 10px;
        padding: 13px;
        font-weight: 700;
        cursor: pointer;
      }
      .result {
        text-align: center;
      }
      .burst {
        width: 110px;
        height: 110px;
        border-radius: 50%;
        background: rgba(20,200,230, 0.09);
        border: 1px solid rgba(20,200,230, 0.32);
        display: grid;
        place-items: center;
        margin: 14px auto;
        font: 400 38px 'Pretendard';
        box-shadow: 0 0 50px rgba(20,200,230, 0.12);
      }
      .result h2 {
        font: 400 34px 'Pretendard';
        margin: 5px;
      }
      .result p,
      .pkm p {
        font-size: 13px;
        color: #6c6885;
        line-height: 1.7;
      }
      .toast {
        position: fixed;
        left: 50%;
        bottom: 20px;
        background: var(--acid);
        color: #101409;
        border-radius: 9px;
        padding: 12px 16px;
        font-size: 13px;
        font-weight: 800;
        transform: translate(-50%, 70px);
        opacity: 0;
        transition: 0.25s;
        /* »Ì±â ·¹ÀÌ¾î(¸ð¹ÙÀÏ z-index 9500) À§¿¡¼­µµ º¸ÀÌ°Ô */
        z-index: 9600;
      }
      .toast.show {
        transform: translate(-50%, 0);
        opacity: 1;
      }
      @media (max-width: 520px) {
        .pkm { padding: 18px; }
        .mtop h2 { font-size: 23px; }
      }
      /* ===== card-squeeze reveal ===== */
      .seal.dragging:before { animation-duration: 2s; filter: brightness(1.3) saturate(1.2); }
      .seal.dragging:after { animation-duration: 1.5s; filter: brightness(1.5) saturate(1.35); }
      .seal-glow { position:absolute; inset:-25%; z-index:0; pointer-events:none; filter:blur(8px);
        background: radial-gradient(circle at 50% 58%, rgba(212,23,154,.5), transparent 62%);
        opacity: calc(.22 + var(--p,0) * .78); transition: opacity .1s linear; }
      .card-stage { position:relative; width:150px; height:210px; margin:0 auto; z-index:2; perspective:1000px;
        touch-action:none; user-select:none; -webkit-user-select:none; }
      .card-layer { position:absolute; inset:0; border-radius:12px; overflow:hidden; box-shadow:0 12px 26px rgba(0,0,0,.3); }
      .card-front { background:#fff; z-index:1; isolation:isolate; backface-visibility:hidden; }
      .card-front:after { content:""; position:absolute; inset:0; pointer-events:none; background:rgba(14,16,24,.62); -webkit-backdrop-filter:blur(11px); backdrop-filter:blur(11px); opacity: calc(.74 + var(--p,0) * .26); transition: opacity .12s linear; }
      .card-front img { width:100%; height:100%; object-fit:cover; display:block; }
      .card-front .shine { position:absolute; inset:0; pointer-events:none; transform:translateX(-130%);
        background:linear-gradient(115deg, transparent 32%, rgba(255,255,255,.85) 48%, transparent 62%); }
      .card-front.revealed { animation: flipInReveal .62s cubic-bezier(.2,.8,.25,1.15) both; }
      .card-front.revealed .shine { animation: shineSweep .7s .08s ease-out forwards; }
      @keyframes cardpop { 0%{transform:scale(.92)} 42%{transform:scale(1.08)} 100%{transform:scale(1)} }
      @keyframes flipInReveal { 0%{transform:rotateY(-180deg) scale(.9);opacity:0} 50%{opacity:1} 100%{transform:rotateY(0deg) scale(1);opacity:1} }
      @keyframes shineSweep { to { transform: translateX(130%); } }
      .pk-card-back { z-index:3; cursor:grab; touch-action:none; will-change:transform; backface-visibility:hidden;
        background: var(--oripa-card-back) center/cover no-repeat;
        border:1px solid #cfc7e6; box-shadow:0 12px 26px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.15); }
      .pk-card-back.grabbing { cursor:grabbing; }
      .pk-card-back.snap { transition: transform .4s cubic-bezier(.34,1.56,.64,1); }
      .pk-card-back.gone { transform: rotateY(180deg) scale(.9) !important; opacity:0;
        transition: transform .55s cubic-bezier(.4,0,.2,1), opacity .5s ease-out; }
      .seal-burst { position:absolute; left:50%; top:50%; width:8px; height:8px; z-index:5; border-radius:50%;
        transform:translate(-50%,-50%); pointer-events:none; opacity:0; }
      .seal-burst.go { animation: sealBurst .6s ease-out; }
      @keyframes sealBurst { 0%{opacity:1; box-shadow:0 0 0 0 rgba(212,23,154,.95), 0 0 12px 6px rgba(212,23,154,.7);}
        100%{opacity:0; box-shadow:0 0 60px 50px rgba(212,23,154,0), 0 0 120px 90px rgba(212,23,154,0);} }
      .drag-hint { position:absolute; left:0; right:0; bottom:6px; text-align:center; z-index:4; pointer-events:none;
        color:var(--acid-ink); font:800 13px 'Pretendard'; letter-spacing:.05em; }
      .seal.dragging .drag-hint, .card-stage.opened ~ .drag-hint { opacity:0; }
      .seal-impact { position:absolute; inset:0; z-index:6; pointer-events:none; }
      .seal-bg { position:absolute; inset:0; z-index:1; background:url("/_template/service/images/07event_images/2026/08_pokemon/background.png") center/cover no-repeat; opacity:0; transition:opacity .55s ease; pointer-events:none; }
      .seal-bg.show { opacity:1; }
      /* ===== bling enhancement (multi-color + glitter + live background.png) ===== */
      .seal:before { background: repeating-conic-gradient(from 0deg,
          rgba(212,23,154,0) 0deg 6deg,
          rgba(212,23,154,.5) 7deg 8deg,
          rgba(255,255,255,.65) 8deg 9deg,
          rgba(20,200,230,.45) 10deg 12deg,
          rgba(255,255,255,.35) 12deg 13deg,
          rgba(212,23,154,0) 15deg 20deg); }
      .seal:after { background:
          conic-gradient(from 0deg, transparent, rgba(255,255,255,.6), transparent 13%),
          conic-gradient(from 90deg, transparent, rgba(20,200,230,.62), transparent 13%),
          conic-gradient(from 180deg, transparent, rgba(212,23,154,.68), transparent 13%),
          conic-gradient(from 270deg, transparent, rgba(224,24,127,.5), transparent 12%); }
      .seal-glow { background:
          radial-gradient(circle at 50% 60%, rgba(212,23,154,.55), transparent 60%),
          radial-gradient(circle at 28% 32%, rgba(20,200,230,.42), transparent 55%),
          radial-gradient(circle at 72% 40%, rgba(224,24,127,.30), transparent 55%); }
      .seal-bg { opacity: calc(.30 + var(--p,0) * .55); transition: opacity .3s ease;
          animation: bgPulse 3.4s ease-in-out infinite; }
      .seal-bg.show { opacity: 1; }
      .seal-sparkle { position:absolute; inset:0; z-index:7; pointer-events:none; mix-blend-mode:screen;
          background-image:
            radial-gradient(circle, #ffffff 0 1.2px, transparent 2px),
            radial-gradient(circle, #14c8e6 0 1.2px, transparent 2px),
            radial-gradient(circle, #14c8e6 0 1px, transparent 2px),
            radial-gradient(circle, #e0187f 0 1px, transparent 2px),
            radial-gradient(circle, #ffffff 0 1px, transparent 2px);
          background-size: 70px 70px, 100px 100px, 130px 130px, 90px 90px, 55px 55px;
          background-position: 12px 20px, 45px 65px, 8px 95px, 65px 35px, 30px 120px;
          opacity:.55; animation: twinkle 1.3s ease-in-out infinite, sparkleDrift 6s linear infinite; }
      .seal.dragging .seal-sparkle { animation-duration: .7s, 4s; filter: brightness(1.6) drop-shadow(0 0 3px #fff); }
      @keyframes twinkle { 0%,100%{opacity:.25} 50%{opacity:.95} }
      @keyframes sparkleDrift { to { background-position: 12px -50px, 45px -5px, 8px 25px, 65px -35px, 30px 50px; } }
      @keyframes bgPulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.06)} }
      @keyframes sealBurst {
        0%{opacity:1; box-shadow:0 0 0 0 rgba(255,255,255,.95), 0 0 16px 8px rgba(212,23,154,.85);}
        50%{box-shadow:0 0 42px 26px rgba(20,200,230,.45), 0 0 74px 44px rgba(212,23,154,.4);}
        100%{opacity:0; box-shadow:0 0 96px 74px rgba(20,200,230,0), 0 0 150px 110px rgba(224,24,127,0);} }
      /* ===== multi-spin reveal + 360 background ===== */
      .card-front.revealed { animation: flipInReveal .95s cubic-bezier(.15,.72,.2,1) both; }
      @keyframes flipInReveal {
        0%   { transform: rotateY(-1080deg) scale(.72); opacity: 0; }
        18%  { opacity: .4; }
        78%  { opacity: 1; }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .seal-bg { inset: auto; left: 50%; top: 50%; width: 1040px; height: 1040px;
        background: url("/_template/service/images/07event_images/2026/08_pokemon/background.png") center/cover no-repeat; z-index: 1; pointer-events: none;
        opacity: calc(.30 + var(--p,0) * .55); transition: opacity .3s ease;
        -webkit-mask-image:radial-gradient(circle closest-side, #000 62%, transparent 98%); mask-image:radial-gradient(circle closest-side, #000 62%, transparent 98%);
        transform: translate(-50%,-50%); animation: bgSpin 12s linear infinite; }
      .seal-bg.show { opacity: 1; }
      @keyframes bgSpin { from { transform: translate(-50%,-50%) rotate(0deg); } to { transform: translate(-50%,-50%) rotate(360deg); } }
      /* ===== vivid + soft lines + faster flip ===== */
      .seal:before { filter: blur(2.5px); background: repeating-conic-gradient(from 0deg,
          rgba(212,23,154,0) 0deg 5deg,
          rgba(212,23,154,.5) 6deg 7deg,
          rgba(255,255,255,.6) 7deg 8deg,
          rgba(20,200,230,.5) 9deg 11deg,
          rgba(224,24,127,.45) 12deg 14deg,
          rgba(62,220,190,.4) 15deg 16deg,
          rgba(212,23,154,0) 18deg 22deg); }
      .seal:after { filter: blur(3px); background:
          conic-gradient(from 0deg, transparent, rgba(255,255,255,.6), transparent 12%),
          conic-gradient(from 72deg, transparent, rgba(20,200,230,.62), transparent 12%),
          conic-gradient(from 144deg, transparent, rgba(212,23,154,.68), transparent 12%),
          conic-gradient(from 216deg, transparent, rgba(224,24,127,.55), transparent 12%),
          conic-gradient(from 288deg, transparent, rgba(62,220,190,.5), transparent 11%); }
      .seal-glow { filter: blur(16px); background:
          radial-gradient(circle at 50% 60%, rgba(212,23,154,.55), transparent 60%),
          radial-gradient(circle at 28% 32%, rgba(20,200,230,.48), transparent 55%),
          radial-gradient(circle at 72% 40%, rgba(224,24,127,.42), transparent 55%),
          radial-gradient(circle at 55% 78%, rgba(62,220,190,.36), transparent 55%); }
      .seal.dragging:before { filter: blur(2px) brightness(1.35) saturate(1.35); animation-duration: 1.2s; }
      .seal.dragging:after { filter: blur(2.5px) brightness(1.55) saturate(1.4); animation-duration: .9s; }
      @keyframes sealBurst {
        0%{opacity:1; box-shadow:0 0 0 0 rgba(255,255,255,.95), 0 0 18px 9px rgba(212,23,154,.9);}
        45%{box-shadow:0 0 46px 28px rgba(224,24,127,.5), 0 0 80px 48px rgba(62,220,190,.42);}
        100%{opacity:0; box-shadow:0 0 104px 80px rgba(20,200,230,0), 0 0 160px 120px rgba(224,24,127,0);} }
      .card-front.revealed { animation: flipInReveal .6s cubic-bezier(.12,.7,.2,1) both; }
      /* drag-accelerated background rotation (JS-driven) */
      .seal:before { animation: none !important; transform: rotate(var(--spinA, 0deg)); }
      .seal:after { animation: none !important; transform: rotate(calc(var(--spinA, 0deg) * -1)); }
      .seal-bg { animation: none !important; transform: translate(-50%, -50%) rotate(var(--spinBg, 0deg)); }
      .seal-bg2 { position:absolute; inset:auto; left:50%; top:50%; width:1240px; height:827px;
        /*background:url("/_template/service/images/07event_images/2026/08_pokemon/background2.png") center/contain no-repeat; */z-index:1; pointer-events:none; mix-blend-mode:screen;
        -webkit-mask-image:radial-gradient(circle closest-side, #000 58%, transparent 97%); mask-image:radial-gradient(circle closest-side, #000 58%, transparent 97%);
        opacity: calc(.22 + var(--p,0) * .5); transition:opacity .3s ease;
        transform: translate(-50%,-50%) rotate(calc(var(--spinBg,0deg) * -1)); }
      .seal-bg2.show { opacity: .92 !important; }
      @keyframes flipInReveal {
        0%   { transform: rotateY(-1800deg) scale(.66); opacity: 0; }
        14%  { opacity: .35; }
        80%  { opacity: 1; }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .card-front.revealed { animation: flipInReveal .85s cubic-bezier(.14,.72,.2,1) both; }
      /* background2 to front */
      .seal-bg2 { z-index: 8; }
      .seal-bg2.show { opacity: .8 !important; }
      /* card flip: fast spin -> gradual slow-down landing */
      @keyframes flipInReveal {
        0%   { transform: rotateY(-1800deg) scale(.62); opacity: 0; }
        12%  { opacity: .4; }
        40%  { opacity: 1; }
        50%  { transform: rotateY(-540deg) scale(.9); }
        75%  { transform: rotateY(-180deg) scale(.97); }
        90%  { transform: rotateY(-55deg) scale(.99); }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .card-front.revealed { animation: flipInReveal 1.05s linear both; }
      .card-front.revealed:after { opacity: 0 !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
      /* both background images behind the front card */
      .seal-bg2 { z-index: 1; }
      .seal-bg2.show { opacity: .9 !important; }
      /* background2 in front of card face, translucent glare */
      .seal-bg2 { z-index: 8; opacity: calc(.18 + var(--p,0) * .32); }
      .seal-bg2.show { opacity: .45 !important; }
      /* background2 blinks while dragging; background.png flashes in on reveal */
      .seal-bg { opacity: 0; }
      .seal-bg.show { animation: bgFlash .95s ease-out both !important; }
      @keyframes bgFlash { 0%,68%{opacity:0} 80%{opacity:1} 100%{opacity:1} }
      .seal.dragging .seal-bg2 { animation: bg2Blink .3s steps(1,end) infinite; }
      @keyframes bg2Blink { 0%,44%{opacity:.6} 48%,100%{opacity:0} }
      /* steady background2 (no blink) */
      .seal-bg2 { opacity: .35; }
      .seal.dragging .seal-bg2 { animation: none; }
      /* soft/hazy background.png */
      .seal-bg { filter: blur(8px); }
      /* background2 behind the front card */
      .seal-bg2 { z-index: 1; }
      /* background pop (shrink->grow) driven by --bgScale */
      .seal-bg { transform: translate(-50%,-50%) rotate(var(--spinBg,0deg)) scale(var(--bgScale,1)); }
      .seal-bg2 { transform: translate(-50%,-50%) rotate(calc(var(--spinBg,0deg) * -1)) scale(var(--bgScale,1)); }
      .seal-bg2.show { opacity: 1 !important; }
      /* background2: in front of back card while dragging, behind once opened */
      .seal-bg2 { z-index: 8; }
      .seal-bg2.show { z-index: 1; }
      /* background2 rotates slightly slower */
      .seal-bg2 { transform: translate(-50%,-50%) rotate(calc(var(--spinBg,0deg) * -0.8)) scale(var(--bgScale,1)); }
      /* soften rotating background image (background.png) - paler than gold */
      .seal-bg { filter: saturate(1.4) brightness(1.15) hue-rotate(198deg) !important; }
      /* burst badge to the left of the title, sized to the text */
      .result { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px; }
      .burst { width: 40px; height: 40px; margin: 0; font: 700 19px 'Pretendard'; box-shadow: 0 0 22px rgba(212,23,154,.18); }
      .result h2 { margin: 0; }
      .result p { flex-basis: 100%; margin-top: 8px; }
      /* white flash on reveal */
      .seal-flash { position:absolute; inset:0; z-index:9; background:#fff; opacity:0; pointer-events:none; }
      .seal-flash.go { animation: sealFlash .66s ease-out; }
      @keyframes sealFlash { 0%{opacity:0} 30%{opacity:1} 46%{opacity:1} 100%{opacity:0} }
      /* spinning impact background: gold + white only */
      .seal:before { background: repeating-conic-gradient(from 0deg,
          rgba(20,200,230,0) 0deg 5deg,
          rgba(20,200,230,.55) 6deg 7deg,
          rgba(255,255,255,.72) 8deg 9deg,
          rgba(20,200,230,.5) 10deg 11deg,
          rgba(255,255,255,.4) 12deg 13deg,
          rgba(20,200,230,0) 16deg 21deg); }
      .seal:after { background:
          conic-gradient(from 0deg,   transparent, rgba(20,200,230,.70), transparent 12%),
          conic-gradient(from 60deg,  transparent, rgba(122,61,240,.62), transparent 12%),
          conic-gradient(from 120deg, transparent, rgba(255,255,255,.62), transparent 12%),
          conic-gradient(from 180deg, transparent, rgba(212,23,154,.60), transparent 12%),
          conic-gradient(from 240deg, transparent, rgba(224,24,127,.55), transparent 12%),
          conic-gradient(from 300deg, transparent, rgba(122,61,240,.52), transparent 12%); }
      .seal-glow { background:
          radial-gradient(circle at 50% 60%, rgba(20,200,230,.55), transparent 60%),
          radial-gradient(circle at 30% 34%, rgba(122,61,240,.46), transparent 55%),
          radial-gradient(circle at 70% 40%, rgba(212,23,154,.40), transparent 55%),
          radial-gradient(circle at 55% 80%, rgba(224,24,127,.34), transparent 55%); }
      /* longer white flash */
      .seal-flash.go { animation: sealFlash 1.15s ease-out; }
      @keyframes sealFlash { 0%{opacity:0} 18%{opacity:1} 52%{opacity:1} 100%{opacity:0} }
      /* multi-color pinwheel rays (cyan ¡¤ purple ¡¤ magenta ¡¤ pink) */
      .seal:before { background: repeating-conic-gradient(from 0deg,
          rgba(20,200,230,0) 0deg 4deg,
          rgba(20,200,230,.58) 5deg 9deg,
          rgba(122,61,240,.52) 10deg 14deg,
          rgba(255,255,255,.6) 15deg 17deg,
          rgba(212,23,154,.5) 18deg 22deg,
          rgba(224,24,127,.45) 23deg 27deg,
          rgba(20,200,230,0) 30deg 36deg); }
      /* obscured card a bit more visible (less black) */
      .card-front:after { background:rgba(22,24,34,.46); -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); opacity: calc(.4 + var(--p,0) * .28); }
      /* reveal video (black bg -> transparent via screen) */
      .seal-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:10; opacity:0; pointer-events:none; mix-blend-mode:screen; transition:opacity .18s ease; }
      .seal-video.go { opacity:1; }
      /* pre-open bg video (02_bg01) + result/complete bg video (02_bg03) */
      .seal-bgvideo, .seal-resultvideo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; pointer-events:none; transition:opacity .4s ease; }
      .seal-bgvideo { opacity:1; }
      @keyframes sealVidFade { from { opacity:0; } }
      .seal-bgvideo { animation: sealVidFade .55s ease; }
      .seal:has(.card-stage.opened) .seal-bgvideo { opacity:0; }
      .seal-resultvideo { opacity:0; }
      .seal:has(.card-stage.opened) .seal-resultvideo { opacity:1; }
      /* bigger reveal card */
      .seal { height: 400px; }
      .card-stage { width: 230px; height: 322px; }
      /* card frame back to pokemon ratio so front shows right & back (cover) fully hides it */
      .card-stage { width: 230px; height: 322px; }
      /* keep card visible while spinning; flash only briefly at landing */
      @keyframes flipInReveal {
        0%   { transform: rotateY(-2160deg) scale(.68); opacity: 0; }
        55%  { opacity: 0; }
        72%  { opacity: .35; }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .card-front.revealed { animation: flipInReveal 0.55s cubic-bezier(.2,.78,.25,1) both; }
      @keyframes flipInReveal {
        0%   { transform: rotateY(-1440deg) scale(.75); opacity: 0; }
        18%  { opacity: 1; }
        55%  { transform: rotateY(-360deg) scale(.95); }
        80%  { transform: rotateY(-120deg) scale(.98); }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .card-front.revealed { animation: flipInReveal 0.85s cubic-bezier(.15,.72,.2,1) both; }
      @keyframes flipInReveal {
        0%   { transform: rotateY(-1800deg) scale(.62); opacity: 0; }
        12%  { opacity: .4; }
        40%  { opacity: 1; }
        50%  { transform: rotateY(-540deg) scale(.9); }
        75%  { transform: rotateY(-180deg) scale(.97); }
        90%  { transform: rotateY(-55deg) scale(.99); }
        100% { transform: rotateY(0deg) scale(1); opacity: 1; }
      }
      .card-front.revealed { animation: flipInReveal 1.05s linear both; }
      .card-front { backface-visibility: visible !important; }
      .pk-card-back { backface-visibility: visible !important; }
      .seal-flash.go { animation: sealFlash 0.5s ease-out; }
      @keyframes sealFlash { 0%{opacity:0} 30%{opacity:1} 45%{opacity:1} 100%{opacity:0} }
      .seal-subtitle { text-align: center; color: #6c6885; font-size: 13px; font-weight: 700; margin: 0 0 10px; }
      /* card BACK image -> card.png */
      .pk-card-back { background: url("/_template/service/images/07event_images/2026/08_pokemon/card.png?v=20260831") center / cover no-repeat; }
      /* full-screen seal layout (the popup takes over the whole viewport) */
      .modalback:has(#seal){padding:0 !important;background:#ecebf9 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
      .pkm:has(#seal){position:fixed !important;inset:0 !important;width:100vw !important;height:100vh !important;max-width:none !important;max-height:none !important;min-height:100vh !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:radial-gradient(circle at 50% 40%, #ffffff, #e4dcf6 74%) !important;overflow:hidden !important;display:flex !important;align-items:center !important;justify-content:center !important;animation:none !important;}
      .pkm:has(#seal) .seal{position:absolute !important;inset:0 !important;width:100vw !important;height:100vh !important;box-sizing:border-box !important;padding-top:68px !important;padding-bottom:68px !important;margin:0 !important;border-radius:0 !important;overflow:hidden !important;display:grid !important;place-items:center !important;grid-template:1fr/1fr !important;perspective:1400px !important;}
      @keyframes resultPop{0%{opacity:0;transform:scale(.4) rotateY(-720deg);}40%{opacity:1;}100%{opacity:1;transform:scale(1) rotateY(0deg);}}
      .pkm.show-result:has(#seal) .card-stage.result-pop{animation:resultPop .9s cubic-bezier(.16,.8,.28,1.04) both;}
      .pkm:has(#seal) .card-stage{grid-area:1/1 !important;width:min(78vw,360px) !important;height:auto !important;aspect-ratio:63/88 !important;place-self:center !important;margin:0 !important;}
      /* drag hint: front card stays put, only the BACK card slides up/down (drag signal) */
      .pkm:has(#seal) .seal:not(.dragging) .pk-card-back:not(.gone){animation:backNudge 1.25s ease-in-out infinite;}
      @keyframes backNudge{0%,100%{transform:translateY(-9px);}50%{transform:translateY(9px);}}
      /* fixed (non-animated) up/down arrows: thin shaft, thick head */
      .pkm:has(#seal) .drag-arrows{position:relative;grid-area:1/1;place-self:center;width:min(78vw,360px);aspect-ratio:63/88;pointer-events:none;z-index:9;transition:opacity .25s ease;}
      .drag-arrows .drag-arrow{position:absolute;left:50%;width:32px;height:42px;filter:drop-shadow(0 2px 5px rgba(0,0,0,.6));}
      .drag-arrows .ar-shaft{stroke:#eafff0;stroke-width:6;stroke-linecap:round;fill:none;}
      .drag-arrows .ar-head{fill:#eafff0;}
      .drag-arrows .up{bottom:100%;margin-bottom:12px;transform:translateX(-50%);}
      .drag-arrows .down{top:100%;margin-top:12px;transform:translateX(-50%) rotate(180deg);}
      .seal.dragging .drag-arrows, .card-stage.opened ~ .drag-arrows{opacity:0;}
      .pkm:has(#seal) .mtop{position:absolute !important;top:16px !important;left:0 !important;right:0 !important;margin:0 !important;padding:0 20px !important;justify-content:center !important;z-index:30 !important;}
      .pkm:has(#seal) .mtop h2{font-size:20px !important;font-weight:800 !important;text-align:center !important;color:#fff !important;}
      .pkm:has(#seal) .mtop > div{width:auto !important;max-width:calc(100% - 96px) !important;text-align:center !important;background:rgba(4,17,5,.62) !important;padding:7px 20px !important;border-radius:16px !important;}
      .pkm:has(#seal) .mtop h2,.pkm:has(#seal) .mtop .eyebrow{text-shadow:0 1px 5px rgba(0,0,0,.7) !important;}
      .pkm:has(#seal) .mtop .eyebrow{display:block !important;text-align:center !important;color:#d4179a !important;}
      .pkm:has(#seal) .mtop .close{position:fixed !important;top:16px !important;right:16px !important;left:auto !important;z-index:70 !important;width:40px !important;height:40px !important;display:grid !important;place-items:center !important;padding:0 !important;background:#000 !important;color:#fff !important;border:1px solid rgba(255,255,255,.4) !important;border-radius:50% !important;box-shadow:0 4px 16px rgba(0,0,0,.55) !important;}
      /* result view: card + backgrounds auto-center in the space above the result panel */
      .pkm.show-result:has(#seal) .card-stage{width:min(78vw,360px) !important;}
      .pkm.show-result:has(#seal) #postReveal{position:absolute !important;left:0 !important;right:0 !important;bottom:0 !important;display:block !important;width:100% !important;box-sizing:border-box !important;z-index:20 !important;overflow-y:auto !important;padding:12px 22px calc(14px + env(safe-area-inset-bottom)) !important;background:linear-gradient(to top, rgba(4,17,5,.95) 84%, rgba(4,17,5,.55) 94%, rgba(4,17,5,0)) !important;text-align:center !important;}
      /* °á°ú ÆÐ³Î(°ËÁ¤ ÇÏ´Ü ¹è°æ) »ç¿ë ¾È ÇÔ ? ¿ÏÀüÈ÷ ¼û±è */
      .pkm.show-result:has(#seal) #postReveal{display:none !important;background:none !important;padding:0 !important;}
      .pkm.show-result:has(#seal) #postReveal .result{margin:0 !important;gap:9px !important;}
      .pkm.show-result:has(#seal) #postReveal .result .burst{width:40px !important;height:40px !important;font-size:17px !important;margin:0 !important;box-shadow:0 0 20px rgba(20,200,230,.12) !important;}
      .pkm.show-result:has(#seal) #postReveal .result h2{font-weight:800 !important;font-size:23px !important;margin:0 !important;}
      .pkm.show-result:has(#seal) #postReveal .result p{font-weight:700 !important;color:#e9f3ea !important;font-size:13px !important;line-height:1.4 !important;margin:1px 0 0 !important;white-space:nowrap !important;}
      /* buttons as small as possible, pushed to the right (PC) */
      .pkm.show-result:has(#seal) #postReveal .mactions{max-width:360px !important;margin:8px auto 0 !important;gap:8px !important;justify-content:center !important;}
      .pkm.show-result:has(#seal) #postReveal .mactions button{flex:0 0 auto !important;width:auto !important;padding:8px 14px !important;font-size:13px !important;}
      /* mobile: clean & tight */
      @media (max-width:600px){
        .pkm.show-result:has(#seal) .card-stage{width:min(78vw,360px) !important;}
        .pkm.show-result:has(#seal) #postReveal{padding:10px 14px calc(10px + env(safe-area-inset-bottom)) !important;}
        .pkm.show-result:has(#seal) #postReveal .result .burst{width:36px !important;height:36px !important;font-size:15px !important;margin:0 !important;}
        .pkm.show-result:has(#seal) #postReveal .result h2{font-size:19px !important;}
        .pkm.show-result:has(#seal) #postReveal .result p{font-size:11px !important;white-space:normal !important;}
        .pkm.show-result:has(#seal) #postReveal .mactions{justify-content:center !important;gap:8px !important;}
        .pkm.show-result:has(#seal) #postReveal .mactions button{padding:8px 10px !important;font-size:12px !important;}
      }
      /* mobile: images 1 & 2 a bit smaller */
      @media (max-width:600px){
        .seal-bg{width:720px !important;height:720px !important;}
        .seal-bg2{width:880px !important;height:587px !important;}
      }
      .pkm:has(#seal) .drag-hint{opacity:1 !important;color:#eafff0 !important;font-size:15px !important;font-weight:800 !important;letter-spacing:.02em !important;text-shadow:0 2px 6px rgba(0,0,0,.85) !important;bottom:26px !important;left:50% !important;right:auto !important;transform:translateX(-50%) !important;width:max-content !important;background:rgba(0,0,0,.4) !important;padding:7px 15px !important;border-radius:999px !important;}
      .pkm:has(#seal) .seal.dragging .drag-hint, .pkm:has(#seal) .card-stage.opened ~ .drag-hint{opacity:0 !important;}
      /* ===== casino-grade reveal FX ===== */
      .seal.fx-shake{animation:fxShake .58s cubic-bezier(.36,.07,.19,.97) both;}
      @keyframes fxShake{0%{transform:translate(0,0) scale(1.06)}12%{transform:translate(-8px,6px) scale(1.045)}24%{transform:translate(9px,-7px) scale(1.032)}36%{transform:translate(-10px,7px) scale(1.022)}48%{transform:translate(8px,-6px) scale(1.015)}60%{transform:translate(-6px,5px) scale(1.009)}72%{transform:translate(5px,-4px) scale(1.005)}84%{transform:translate(-3px,3px) scale(1.002)}100%{transform:translate(0,0) scale(1)}}
      .fx-vignette{position:absolute;inset:0;z-index:11;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 46%,transparent 40%,rgba(0,0,0,.52) 100%);transition:opacity .6s ease;}
      .seal.fx-lit .fx-vignette{opacity:1;}
      .fx-charge{position:absolute;left:50%;top:50%;width:min(86vw,440px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) scale(calc(.5 + var(--p,0)*.75));opacity:calc(var(--p,0)*.9);pointer-events:none;z-index:1;background:radial-gradient(circle,rgba(122,61,240,.6) 0%,rgba(224,24,127,.3) 36%,transparent 66%);mix-blend-mode:screen;filter:blur(3px);transition:opacity .12s linear;}
      .seal.fx-lit .fx-charge{opacity:0 !important;transition:opacity .45s ease;}
      .fx-shockwave{position:absolute;left:50%;top:50%;width:64px;height:64px;border-radius:50%;transform:translate(-50%,-50%) scale(.15);pointer-events:none;z-index:12;border:3px solid rgba(122,61,240,.95);box-shadow:0 0 52px 12px rgba(224,24,127,.55),inset 0 0 34px rgba(224,24,127,.45);opacity:0;}
      .fx-shockwave.go{animation:fxShock .72s cubic-bezier(.15,.75,.25,1) forwards;}
      @keyframes fxShock{0%{opacity:0;transform:translate(-50%,-50%) scale(.15);}10%{opacity:1;}100%{opacity:0;transform:translate(-50%,-50%) scale(12);border-width:1px;}}
      .fx-particle{position:absolute;left:50%;top:50%;width:var(--sz,8px);height:var(--sz,8px);border-radius:50%;pointer-events:none;z-index:13;background:radial-gradient(circle at 38% 32%,#ffffff,#e0187f 52%,#7a3df0 100%);box-shadow:0 0 10px 2px rgba(224,24,127,.85);opacity:0;}
      .fx-particle.go{animation:fxPart var(--dur,.9s) cubic-bezier(.1,.65,.28,1) forwards;}
      @keyframes fxPart{0%{opacity:1;transform:translate(-50%,-50%);}70%{opacity:1;}100%{opacity:0;transform:translate(calc(-50% + var(--tx,0px)),calc(-50% + var(--ty,0px))) scale(.25);}}
      .card-front.fx-rim{box-shadow:0 0 0 2px rgba(122,61,240,.95),0 0 46px 9px rgba(224,24,127,.62),0 14px 34px rgba(0,0,0,.45) !important;}
      @media (prefers-reduced-motion: reduce){.seal.fx-shake{animation:none !important;}}
      /* ===== NEW cinematic full-screen reveal (multi-phase, European casino style) ===== */
      .cine{position:absolute;inset:0;z-index:9999;overflow:hidden;pointer-events:none;font-family:'Pretendard';}
      /* darken surroundings */
      .cine-back{position:absolute;inset:0;z-index:0;opacity:0;background:#000;transition:opacity .35s ease;}
      .cine.run .cine-back{opacity:1;}
      .cine.reveal .cine-back,.cine.out .cine-back{opacity:0;transition:opacity .5s ease;}
      /* 02_bg01.mp4 as the cinematic backdrop */
      .cine-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;pointer-events:none;transition:opacity .5s ease;}
      .cine.run .cine-video{opacity:.85;}
      .cine.charge .cine-video{opacity:1;}
      .cine.white .cine-video,.cine.reveal .cine-video,.cine.out .cine-video{opacity:0;}
      /* spotlight cone from top onto the card */
      .cine-spot{position:absolute;left:50%;top:-10%;width:min(128vw,720px);height:122%;transform:translateX(-50%);opacity:0;z-index:2;pointer-events:none;mix-blend-mode:screen;transition:opacity .6s ease;
        background:radial-gradient(ellipse 58% 62% at 50% 24%, rgba(235,240,255,.6), rgba(255,231,158,.26) 50%, transparent 78%);clip-path:polygon(28% 0,72% 0,99% 100%,1% 100%);}
      .cine.run .cine-spot{opacity:.95;}
      .cine.white .cine-spot,.cine.reveal .cine-spot,.cine.out .cine-spot{opacity:0;} 
      /* light.mp4 shining from above (replaces spotlight) */
      .cine-light{position:absolute;left:50%;top:0;width:min(120vw,780px);height:100%;transform:translateX(-50%);object-fit:cover;object-position:center top;opacity:0;z-index:2;pointer-events:none;mix-blend-mode:screen;transition:opacity .5s ease;filter:blur(9px);-webkit-mask-image:radial-gradient(ellipse 74% 80% at 50% 24%, #000 28%, transparent 96%);mask-image:radial-gradient(ellipse 74% 80% at 50% 24%, #000 28%, transparent 96%);}
      .cine.run .cine-light{opacity:.8;}
      .cine.white .cine-light,.cine.reveal .cine-light,.cine.out .cine-light{opacity:0;} 
      /* rotating radiant rays (build up) */
      .cine-rays{position:absolute;left:50%;top:44%;width:230vmax;height:230vmax;margin-left:-115vmax;margin-top:-115vmax;opacity:0;mix-blend-mode:screen;filter:blur(1px);animation:cineSpin 9s linear infinite;transition:opacity .6s ease;
        background:repeating-conic-gradient(from 0deg, rgba(224,24,127,0) 0deg 6deg, rgba(20,200,230,.28) 7deg 9deg, rgba(160,225,245,.55) 9.4deg 10.6deg, rgba(20,200,230,.28) 11deg 12deg, rgba(224,24,127,0) 13deg 18deg);}
      .cine.build .cine-rays{opacity:.55;}
      .cine.charge .cine-rays{opacity:.95;animation-duration:2.4s;} 
      .cine.white .cine-rays,.cine.out .cine-rays{opacity:0;}
      @keyframes cineSpin{to{transform:rotate(360deg);}}
      /* glowing aura behind card */
      .cine-halo{position:absolute;left:50%;top:47%;width:min(110vw,640px);height:min(110vw,640px);opacity:0;z-index:3;pointer-events:none;mix-blend-mode:screen;transform:translate(-50%,-50%) scale(.85);
        background:radial-gradient(circle, rgba(122,61,240,.7), rgba(224,24,127,.28) 42%, transparent 66%);transition:opacity .5s ease;}
      .cine.build .cine-halo{opacity:.7;animation:haloPulse 1s ease-in-out infinite;}
      .cine.charge .cine-halo{opacity:1;animation:haloPulse .42s ease-in-out infinite;}
      .cine.white .cine-halo,.cine.out .cine-halo{opacity:0;animation:none;}
      @keyframes haloPulse{0%,100%{transform:translate(-50%,-50%) scale(.85);}50%{transform:translate(-50%,-50%) scale(1.12);}}
      /* full-screen fluorescent glow flooding in as it charges */
      .cine-fluor{position:absolute;inset:0;z-index:5;opacity:0;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle at 50% 44%, rgba(200,230,250,.55), rgba(224,24,127,.14) 46%, transparent 74%);}
      .cine.charge .cine-fluor{animation:fluorPulse .4s ease-in-out infinite;}
      .cine.vanish .cine-fluor{opacity:1;transition:opacity .3s ease;}
      .cine.white .cine-fluor,.cine.out .cine-fluor{opacity:0;}
      @keyframes fluorPulse{0%,100%{opacity:.25;}50%{opacity:.72;}}
      /* face-down mystery card: appears, shakes L-R harder, then spins away & vanishes */
      .cine-cardback{position:absolute;left:50%;top:47%;width:min(72vw,340px);aspect-ratio:63/88;z-index:6;border-radius:14px;overflow:hidden;opacity:0;transform:translate(-50%,-50%) scale(.55);
        background:var(--oripa-card-back) center/cover no-repeat, linear-gradient(145deg,#f3ebfb,#ffffff);border:1px solid rgba(122,61,240,.55);box-shadow:0 18px 46px rgba(0,0,0,.6);transition:opacity .4s ease, transform .4s cubic-bezier(.2,.9,.3,1.2);}
      .cine.run .cine-cardback{opacity:1;transform:translate(-50%,-50%) scale(1);}
      .cine.build .cine-cardback{animation:cardShakeLR .5s ease-in-out infinite;}
      .cine.charge .cine-cardback{animation:cardShakeLR .13s ease-in-out infinite;box-shadow:0 0 46px 10px rgba(224,24,127,.65),0 18px 46px rgba(0,0,0,.6);}
      .cine.frenzy .cine-cardback{animation:cardShakeHard .05s linear infinite;filter:blur(.5px);box-shadow:0 0 66px 18px rgba(224,24,127,.85),0 18px 46px rgba(0,0,0,.6);}
      .cine.vanish .cine-cardback{animation:cardVanish .5s cubic-bezier(.5,0,.85,.35) forwards;}
      @keyframes cardShakeLR{0%{transform:translate(-50%,-50%) translateX(-8px) rotate(-3deg);}50%{transform:translate(-50%,-50%) translateX(8px) rotate(3deg);}100%{transform:translate(-50%,-50%) translateX(-8px) rotate(-3deg);}}
      @keyframes cardShakeHard{0%{transform:translate(-50%,-50%) translateX(-13px) rotate(-5deg);}50%{transform:translate(-50%,-50%) translateX(13px) rotate(5deg);}100%{transform:translate(-50%,-50%) translateX(-13px) rotate(-5deg);}}
      @keyframes cardVanish{0%{opacity:1;transform:translate(-50%,-50%) scale(1) rotateY(0deg);}70%{opacity:1;}100%{opacity:0;transform:translate(-50%,-50%) scale(.12) rotateY(1080deg);}}
      /* round light that explodes right before the white-out */
      .cine-orb{position:absolute;left:50%;top:44%;width:64px;height:64px;border-radius:50%;transform:translate(-50%,-50%) scale(.1);opacity:0;z-index:19;background:radial-gradient(circle,#fff 0%,#ffffff 34%,rgba(224,24,127,.6) 60%,transparent 73%);box-shadow:0 0 90px 34px rgba(20,200,230,.7);}
      .cine-orb.go{animation:cineOrb .55s cubic-bezier(.42,0,.7,.42) forwards;}
      @keyframes cineOrb{0%{opacity:0;transform:translate(-50%,-50%) scale(.1);}18%{opacity:1;}100%{opacity:1;transform:translate(-50%,-50%) scale(28);}}
      /* the 1-second pure WHITE-OUT */
      .cine-white{position:absolute;inset:0;z-index:20;background:#fff;opacity:0;}
      .cine.white .cine-white{opacity:0;}
      .cine.reveal .cine-white{opacity:0;}
      /* the real card front: spins out of the white */
      .cine-cardfront{position:absolute;left:50%;top:44%;width:min(62vw,290px);aspect-ratio:63/88;z-index:24;border-radius:14px;overflow:hidden;opacity:0;transform:translate(-50%,-50%) scale(.3) rotateY(-1080deg);box-shadow:0 22px 58px rgba(0,0,0,.5);}
      .cine-cardfront img{width:100%;height:100%;object-fit:cover;display:block;}
      .cine.reveal .cine-cardfront{animation:cardOut 1.05s cubic-bezier(.16,.8,.28,1.04) .12s both;}
      @keyframes cardOut{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotateY(-1080deg);}26%{opacity:1;}100%{opacity:1;transform:translate(-50%,-50%) scale(1) rotateY(0deg);box-shadow:0 0 0 2px rgba(122,61,240,.95),0 0 56px 10px rgba(224,24,127,.6),0 22px 52px rgba(0,0,0,.5);}}
      .cine.out .cine-cardfront{opacity:0;transition:opacity .4s ease;}
      /* burst flash + title stamp on reveal */
      .cine-flash{position:absolute;inset:0;z-index:22;opacity:0;background:radial-gradient(circle at 50% 44%, #fff, rgba(235,240,255,.75) 38%, transparent 68%);}
      .cine-flash.go{animation:cineFlash .55s ease-out;}
      @keyframes cineFlash{0%{opacity:0;}10%{opacity:1;}100%{opacity:0;}}
      .cine-title{position:absolute;left:0;right:0;top:61%;text-align:center;z-index:26;font-weight:800;font-size:min(9.5vw,46px);color:#fff;letter-spacing:.02em;opacity:0;transform:scale(2.4);text-shadow:0 2px 0 #e4dcf6,0 0 28px rgba(224,24,127,.9),0 8px 24px rgba(0,0,0,.6);}
      .cine-title.go{animation:cineStamp .55s cubic-bezier(.2,1.45,.35,1) forwards;}
      @keyframes cineStamp{0%{opacity:0;transform:scale(2.6);}58%{opacity:1;transform:scale(.9);}100%{opacity:1;transform:scale(1);}}
      .cine.out .cine-title{opacity:0;transition:opacity .3s ease;}
      .cine.shake{animation:fxShake .55s cubic-bezier(.36,.07,.19,.97) both;}
      .cine-part{position:absolute;left:50%;top:44%;width:10px;height:10px;border-radius:50%;z-index:25;opacity:0;background:radial-gradient(circle at 38% 32%,#ffffff,#e0187f 52%,#7a3df0);box-shadow:0 0 11px 2px rgba(224,24,127,.85);}
      .cine-part.go{animation:cinePart var(--dur,1s) cubic-bezier(.1,.65,.28,1) forwards;}
      @keyframes cinePart{0%{opacity:1;transform:translate(-50%,-50%);}72%{opacity:1;}100%{opacity:0;transform:translate(calc(-50% + var(--tx,0px)),calc(-50% + var(--ty,0px))) scale(.3);}}
      .cine-conf{position:absolute;left:50%;top:42%;width:10px;height:15px;border-radius:2px;z-index:25;opacity:0;background:hsl(var(--hue,45deg) 92% 60%);box-shadow:0 0 6px rgba(0,0,0,.2);}
      .cine-conf.go{animation:cineConf var(--dur,1.3s) cubic-bezier(.2,.55,.3,1) forwards;}
      @keyframes cineConf{0%{opacity:1;transform:translate(-50%,-50%) rotate(0deg);}12%{opacity:1;}100%{opacity:0;transform:translate(calc(-50% + var(--tx,0px)),calc(-50% + var(--ty,0px) + 300px)) rotate(var(--rot,540deg));}}
      @media (prefers-reduced-motion: reduce){.cine.shake{animation:none !important;}.cine-cardback{animation:none !important;}}
      /* ===== light theme override (event02 parity) ===== */
      .modalback:has(#seal){background:#ecebf9 !important;}
      .pkm:has(#seal){background:radial-gradient(circle at 50% 40%,#ffffff 0%,#f2ecfc 56%,#e6dff7 100%) !important;}
      .card-front:after{background:rgba(238,234,250,.5) !important;}
      .cine-back{background:#ecebf9 !important;}
      .cine-white{background:#fff !important;}
      .cine-title{color:#16141f !important;text-shadow:0 0 16px rgba(20,200,230,.6),0 0 34px rgba(224,24,127,.4),0 2px 0 #fff !important;}
      .cine-conf{background:hsl(calc(var(--hue,45deg) + 250deg) 88% 58%) !important;}
      .fx-vignette{background:radial-gradient(ellipse at 50% 46%,transparent 42%,rgba(20,18,40,.22) 100%) !important;}
      /* ===== END POKEMON SEAL POPUP ===== */

      /* ===== ÆäÀÌÁö ¹è°æ ÆÄ¶ö·º½º (bg_new2, new02 ¹æ½Ä) ===== */
      body::before {
        content: "";
        position: fixed;
        top: -80vh; left: -40px; right: -40px; height: 300vh;
        z-index: -1;
        background: url("/_template/service/images/07event_images/2026/08_pokemon/bg_new2.jpg") center center / 1920px auto no-repeat;
        filter: blur(10px);
        opacity: .3;
        transform: translate3d(0, var(--bgY, 0px), 0);
        will-change: transform; 
        pointer-events: none;
      }
      /* ===== resale ¼½¼Ç : new02 ¶óÀÌÆ® È¦·Î ½ºÅ² ===== */ 
      .resale {
        position: relative;
        z-index: 1;
        padding: 60px 0;
        color: #16141f;
        background: linear-gradient(180deg, rgba(236,235,249,.55), rgba(255,255,255,.5));
        border-top: 1px solid rgba(20,18,40,.12);
        border-bottom: 1px solid rgba(20,18,40,.12);
        font-family: Pretendard, "Apple SD Gothic Neo", sans-serif; 
        letter-spacing: -.02em;
      }
      .resale .wrap { position: relative; z-index: 1; } 
      .resale-head { display: grid; grid-template-columns: 1fr; align-items: start; gap: 12px; margin-bottom: 31px; }
      .resale .micro { font-size: 12px; font-weight: 900; letter-spacing: .16em; color: #d4179a; }
      .resale h2 { font-size: clamp(34px, 5vw, 50px); font-weight: 600; line-height: 1.02; letter-spacing: -.05em; margin: 10px 0 0; color: #16141f; }
      .resale-lead { font-size: 17px; margin: 0 0 5px; line-height: 1.5; text-align: left; }
      .decision-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
      .decision {
        position: relative; min-height: 186px; padding: 24px; 
        background: linear-gradient(180deg, #ffffff, #faf9fe);
        border: 1px solid rgba(20,18,40,.12);
        border-radius: 15px;
        box-shadow: 0 12px 28px rgba(20,18,40,.08);
        transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
      }
      .decision:hover { transform: translateY(-4px); border-color: rgba(20,200,230,.55); box-shadow: 0 18px 38px rgba(122,61,240,.16); }
      .decision-no { font-size: 11px; font-weight: 900; letter-spacing: .15em; color: #d4179a; }
      .decision h3 { font-size: 25px; font-weight: 600; letter-spacing: -.04em; margin: 20px 0 8px; color: #16141f; }
      .decision p { margin: 0; color: #6c6885; font-size: 14px; line-height: 1.55; }
      .deadline {
        display: flex; justify-content: space-between; align-items: center; gap: 24px;
        margin-top: 18px; padding: 18px 22px; border-radius: 13px;
        background: linear-gradient(90deg, #14c8e6, #7a3df0); color: #fff;
        box-shadow: 0 10px 26px rgba(122,61,240,.28);
      }
      .deadline strong { font-size: 19px; }
      .deadline span { font-size: 13px; font-weight: 800; text-align: right; opacity: .95; }
      .resale-actions { display: flex; justify-content: flex-end; margin-top: 18px; }
      .resale .btn { cursor: pointer; border: 0; border-radius: 999px; padding: 13px 24px; font-weight: 800; font-size: 14px; font-family: inherit; }
      .resale .btn-sub { background: #fff; color: #16141f; border: 1px solid rgba(20,18,40,.16); box-shadow: 0 6px 18px rgba(20,18,40,.08); }
      .resale .btn-sub:hover { border-color: #7a3df0; color: #7a3df0; }
      @media (max-width: 780px) {
        .pickzone { padding: 30px 0 30px; }
        .resale { padding: 30px 0; }
        .resale-head { grid-template-columns: 1fr; gap: 12px; margin-bottom: 24px; }
        .resale h2 { font-size: 40px; }
        .resale-lead { font-size: 15px; }
        .decision-grid { grid-template-columns: 1fr; }
        .decision { min-height: 132px; padding: 20px 14px; }
        .decision h3 { font-size: 23px; margin: 7px 0 5px; }
        .deadline { display: block; padding: 17px; }
        .deadline strong { display: block; font-size: 18px; }
        .deadline span { display: block; text-align: left; margin-top: 7px; }
        .resale-actions { justify-content: stretch; }
        .resale .btn { width: 100%; text-align: center; } 
      } 
      /* ÀçÆÇ¸Å ÀÌ¿ë¹æ¹ý ÆË¾÷(resale-modal) »ó¼¼ ¸®½ºÆ® */  
      .modal__detail-list { list-style: none; margin: 22px 0 0; padding: 0; }
      .modal__detail-list li { padding: 14px 0; border-top: 1px solid rgba(20,18,40,.1); font-size: 14px; line-height: 1.55; color: #6c6885; }
      .modal__detail-list li:first-child { border-top: 0; } 
      .modal__detail-list strong { display: block; margin-bottom: 4px; color: #16141f; }
      .modal__detail-alert { margin-top: 16px; padding: 14px 15px; border-left: 3px solid #14c8e6; border-radius: 8px; background: rgba(20,200,230,.08); font-size: 13px; line-height: 1.55; color: #16141f; }
      .modal__eyebrow { align-self: center; font-size: 12px; font-weight: 950; letter-spacing: .16em; text-transform: uppercase; color: var(--lime-ink); }
      /* µÎ ÀÌº¥Æ® ¹Ì¸®º¸±â: ¿À¹ö ½Ã ÆÄ¶õ»öÀ¸·Î (¹è°æ¿¡ ¹¯È÷Áö ¾Ê°Ô) */
      .hero .secondary-cta:hover, .secondary-cta:hover { border-color: #2f6bff !important; background: #2f6bff !important; color: #ffffff !important; }
      .hero .secondary-cta:hover::after, .secondary-cta:hover::after { color: #ffffff !important; }
      /* Ä«Ä«¿ÀÃ¤³Î·Î ¿ÀÇÂ ¼Ò½Ä ¹Þ±â ¹öÆ° (È¸¿ø°¡ÀÔ ÆË¾÷) */
      .modal-cta--kakao { margin-top: 9px; background: #fee500; color: #191600; }
      .modal-cta--kakao:hover { background: #ffe14d; color: #191600; box-shadow: 0 12px 30px rgba(254,229,0,.28); transform: translateY(-2px); }
      /* ===== ÇÙ½É Á¤º¸ ¹Ù(ticker) : 4°³ ½ºÅÈ ===== */
      .ticker__stats { display: grid; grid-template-columns: repeat(4, 1fr); width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
      .ticker__stats .tstat { padding: 7px 18px; text-align: center; border-left: 1px solid rgba(255,255,255,.22); }
      .ticker__stats .tstat:first-child { border-left: 0; }
      .ticker__stats b { display: block; font-size: 22px; font-weight: 1000; letter-spacing: -.02em; }
      .ticker__stats span { display: block; margin-top: 3px; font-size: 12px; font-weight: 800; opacity: .92; }
      @media (max-width: 700px) {
        .ticker__stats { width: inherit; grid-template-columns: 1fr 1fr; }
        .ticker__stats .tstat:nth-child(odd) { border-left: 0; }
        .ticker__stats .tstat:nth-child(n+3) { border-top: 1px solid rgba(255,255,255,.22); }
        .ticker__stats b { font-size: 19px; }
      }
      /* ÀÌº¥Æ® ¹Ì¸®º¸±â ¾ÞÄ¿ ½ºÅ©·Ñ ¿©¹é(½ºÆ¼Å° Çì´õ º¸Á¤) */
      #events { scroll-margin-top: 84px; }
      /* ===== ÀÌº¥Æ® Ä«µå : ÅÂ±× ¡æ Á¤Ã¥ ¸®½ºÆ® + ºñÁÖ¾ó ÇÏ´Ü ¹èÄ¡ ===== */
      .event-panel { min-height: 0; }
      .oripa-showcase, .slab-stage { position: relative; inset: auto; height: 372px; margin: 8px 24px 8px; }
      .box-product { width: 210px; left: 52px; bottom: 12px; }
      .oripa-mini-back { width: 172px; right: 48px; bottom: 42px; }
      .pick-badge { width: 106px; right: 8px; bottom: 12px; }
      .pick-badge strong { font-size: 26px; }
      .slab { width: 168px; padding: 10px 10px 14px; }
      .slab__label { min-height: 52px; margin-bottom: 8px; padding: 7px 9px; }
      .slab__label small { font-size: 11px; }
      .slab__label strong { font-size: 12px; margin-top: 3px; }
      .grade { font-size: 24px; }
      .lot-stamp { top: 66px; padding: 9px 12px; }
      .lot-stamp strong { font-size: 14px; }
      .event-panel { display: flex; flex-direction: column; }
      .event-panel .policy { list-style: none; margin: 6px 0 0; padding: 0 42px 42px; flex: 1 1 auto; display: flex; flex-direction: column; }
      .event-panel .policy li { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 5px 0; border-top: 1px solid rgba(20,18,40,.1); font-size: 13px; line-height: 1.5; color: #6c6885; }
      .event-panel .policy li:first-child { border-top: 0; }
      .event-panel .policy > li > span { flex: 0 0 auto; }
      .event-panel .policy strong { font-size: 14px; color: #16141f; text-align: right; font-weight: 800; }
      .event-panel .policy .policy-note { display: block; margin-top: auto; padding: 13px 15px; border-top: 0; border-radius: 10px; background: rgba(255,123,69,.09); color: #16141f; line-height: 1.55; }
      /* ³ëÆ® À§ ½ºÆå Çà¿¡ ¿©¹é ¡æ margin-top:auto(ÇÏ´Ü Á¤·Ä) À¯ÁöÇÏ¸é¼­ ³ëÆ® À§ °£°Ý È®º¸ (PC¡¤¸ð¹ÙÀÏ °øÅë) */
      .event-panel .policy li:nth-last-child(2) { margin-bottom: 10px; }
      /* ¿À´ÃÀÇ ¿À¸®ÆÄ Ä«µå ³ëÆ®: Ã»·Ï Å×¸¶ */
      .event-panel--oripa .policy .policy-note { border-left-color: #14c8e6; background: rgba(20,200,230,.09); }
      .event-panel .policy .policy-note strong { display: block; text-align: left; margin-bottom: 3px; }
      @media (max-width: 700px) {
        .oripa-showcase, .slab-stage { inset: auto; height: 280px; margin: 6px 16px 20px; }
        .box-product { width: 146px; left: 6px; bottom: 10px; }
        .oripa-mini-back { width: 120px; right: 6px; bottom: 28px; }
        .pick-badge { width: 92px; right: 6px; bottom: 10px; }
        .slab { width: 150px; }
        .slab-photo { width: min(120px, 55%); }
        .lot-stamp { top: 54px; }
        .event-panel .policy { padding: 0 27px 28px; }
      }

      /* ===== ¸ð¹ÙÀÏ ¼º´É: Ä«µå°³ºÀ(¾Á) ÆË¾÷ °æ·®È­ ? ¹ö¹÷ÀÓ¡¤±ôºýÀÓ °³¼± ===== */
      @media (max-width: 700px) {
        /* mix-blend-mode(screen)¡¤filter(blur/hue) Á¦°Å: ¸ð¹ÙÀÏ GPU °úºÎÇÏÀÇ ÁÖ¿øÀÎ */
        .seal-sparkle, .seal-bg2 { mix-blend-mode: normal !important; }
        .seal-bg, .seal:before, .seal:after { filter: none !important; }
        .seal-glow { filter: blur(10px) !important; }
        /* ´ëÇü ¹è°æ ÀÌ¹ÌÁö(background.png/background2.png) È¸Àü¡¤½ºÄÉÀÏ Á¤Áö ¡æ ÇÁ·¹ÀÓ¸¶´Ù ÀçÇÕ¼º Á¦°Å */
        .seal-bg  { transform: translate(-50%, -50%) !important; animation: none !important; }
        .seal-bg2 { transform: translate(-50%, -50%) !important; animation: none !important; }
        /* ¹«ÇÑ ¹ÝÂ¦ÀÓ/³ÓÁö ¾Ö´Ï¸ÞÀÌ¼Ç Á¤Áö */
        .seal-sparkle { animation: none !important; opacity: .4 !important; }
        .pkm:has(#seal) .seal:not(.dragging) .pk-card-back:not(.gone) { animation: none !important; }
        /* Ä«µå ¿ÀÇÂ ÇÃ¸³: È¸Àü¼ö(-1800¡Æ¡æ-720¡Æ)¡¤½Ã°£ Ãà¼Ò·Î °¡º±°Ô */
        .card-front.revealed { animation: flipInReveal .7s cubic-bezier(.15,.72,.2,1) both !important; }
        @keyframes flipInReveal {
          0%   { transform: rotateY(-720deg) scale(.72); opacity: 0; }
          40%  { opacity: 1; }
          100% { transform: rotateY(0deg) scale(1); opacity: 1; }
        }
        /* GPU ·¹ÀÌ¾î ½Â°Ý ÈùÆ® */
        .card-stage, .card-front, .pk-card-back { will-change: transform; }
      }

      /* Ä«µå ¿ÀÇÂ ¸¶Áö¸· ÇÏ¾á ÀüÃ¼ ¼¶±¤(seal-flash) Á¦°Å */
      .seal-flash, .seal-flash.go { animation: none !important; opacity: 0 !important; }

      /* Ä«µå »Ì±â Ã¼Çè ÆË¾÷: '´ç°Ü °³ºÀ' ¾È³» ¹Ù·Î À§ µ¥¸ð °íÁö ¹®±¸ */
      .seal-disclaimer {
        display: none;           /* ÃÊ±â 'Ä«µå¸¦ À§¾Æ·¡·Î ´ç°Ü °³ºÀ' È­¸é¿¡¼­´Â ¼û±è */
        position: absolute;
        left: 14px;
        right: 14px;
        bottom: 70px;
        z-index: 5;
        pointer-events: none;
        text-align: center;
        font: 600 12px 'Pretendard', sans-serif;
        line-height: 1.45;
        color: #ffffff;
        text-shadow: 0 1px 3px rgba(0, 0, 0, .7), 0 0 3px rgba(0, 0, 0, .6);
      }
      /* 'Ä«µå¸¦ À§¾Æ·¡·Î ´ç°Ü °³ºÀ'(drag-hint)ÀÌ »ç¶óÁö´Â ¼ø°£(=Ä«µå °³ºÀ)¿¡ ¹Ù·Î ³ëÃâ */
      .card-stage.opened ~ .seal-disclaimer {
        display: block;
      }
      .seal-disclaimer b {
        display: block;
        margin-bottom: 2px;
        font-size: 15px;
        font-weight: 800;
      }

      /* ÇªÅÍ ÀÌ¿ë ¾È³» ¹× À¯ÀÇ»çÇ× ¸ñ·Ï */ 
      .footer__terms {
        grid-column: 1 / -1;
        margin: 0;
        padding: 17px 0 0;
        border-top: 1px solid rgba(20, 18, 40, .10);
        list-style: none;
        color: #6c6885;
        font-size: 13px;
        line-height: 1.7;
      }
      .footer__terms li {
        position: relative;
        padding-left: 12px;
      }
      .footer__terms li::before {
        content: "¡¤";
        position: absolute;
        left: 3px;
      }
      .footer__terms li b {
        color: #16141f;
        font-weight: 700;
      }

      /* ¸ð¹ÙÀÏ: ºê·£µå ·Î°í¡¤ÀÌ¸§ Ãà¼Ò, »ó´Ü CTA´Â 'È¸¿ø°¡ÀÔ'À¸·Î ´ÜÃà */
      @media (max-width: 640px) {
        .brand__logo { height: 30px; }
        .brand__name { font-size: 12px; letter-spacing: .04em; }
        .mini-cta__free { display: none; }
      }
  


/* [info-block] Ãß°¡ ¼½¼Ç(¿À´ÃÀÇ HIT¡¤Âü¿©¹æ¹ý¡¤ÈÄ±â) °£°Ý - ±âÁ¸ ¼½¼Ç°ú µ¿ÀÏ */
.info-block { padding: 60px 0; }
@media (max-width: 700px){ .info-block { padding: 40px 0; } }


/* [hit-cards] TODAY'S HIT ½ÉÇÃ Ä«µå ¼îÄÉÀÌ½º */
.hit-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; justify-items: center; }
.hit-card-item { position: relative; margin: 0 auto; max-width: 190px; width: 100%; }
.hit-card-item img { width: 100%; display: block; border-radius: 14px; box-shadow: 0 14px 30px rgba(20,18,40,.16); }
.hit-grade { position: absolute; top: 10px; left: 10px; z-index: 2; padding: 5px 11px; border-radius: 999px; background: #d4179a; color: #fff; font-size: 12px; font-weight: 900; letter-spacing: .04em; box-shadow: 0 4px 12px rgba(212,23,154,.35); }
.hit-note { margin: 18px 0 0; color: #6c6885; font-size: 13px; line-height: 1.6; }

/* [review-cards] REAL WINNERS ¸®ºä Ä«µå */
.review-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.review-card { display: flex; flex-direction: column; gap: 12px; padding: 22px; border-radius: 18px; background: #ffffff; border: 1px solid rgba(20,18,40,.10); box-shadow: 0 12px 30px rgba(20,18,40,.08); }
.rc-head { display: flex; align-items: center; gap: 11px; }
.rc-ava { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg,#14c8e6,#7a3df0); color: #fff; font-weight: 900; font-size: 15px; flex: 0 0 auto; }
.rc-meta { display: flex; flex-direction: column; gap: 2px; }
.rc-meta b { font-size: 14px; color: #16141f; }
.rc-stars { color: #ffb638; font-size: 13px; letter-spacing: 1px; }
.rc-body { margin: 0; color: #302e5c; font-size: 14px; line-height: 1.6; flex: 1 1 auto; }
.rc-card { display: flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 12px; border-top: 1px solid rgba(20,18,40,.08); }
.rc-card img { width: 40px; height: 56px; object-fit: cover; border-radius: 6px; flex: 0 0 auto; }
.rc-card span { color: #6c6885; font-size: 12px; font-weight: 800; }
@media (max-width: 700px){ .hit-cards, .review-cards { grid-template-columns: 1fr; } }


/* [hit-layout] TODAY'S HIT - ¼³¸í + Ä«µå ºÎÃ¤²Ã */
.hit-layout { display: grid; grid-template-columns: 42% 1fr; gap: 44px; align-items: center; }
.hit-copy .eyebrow { display: inline-block; margin-bottom: 12px; }
.hit-copy h2 { margin: 0; font-size: clamp(30px, 4vw, 44px); font-weight: 600; line-height: 1.08; letter-spacing: -.05em; }
.hit-lead { margin: 14px 0 20px; color: #302e5c; font-size: 15px; line-height: 1.65; }
.hit-grades { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 9px; }
.hit-grades li { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border: 1px solid rgba(20,18,40,.10); border-radius: 14px; background: linear-gradient(180deg,#ffffff,#f7f5ff); box-shadow: 0 4px 14px rgba(20,18,40,.05); }
.hit-grades b { display: inline-grid; place-items: center; min-width: 50px; height: 26px; border-radius: 999px; background: linear-gradient(135deg,#14c8e6,#7a3df0); color: #fff; font-weight: 900; font-size: 12px; letter-spacing: .04em; }
.hit-grades span { color: #6c6885; font-size: 14px; font-weight: 700; }
.hit-cards-fan { display: flex; justify-content: center; align-items: center; padding: 18px 0; }
.hit-cards-fan .hit-card-item { width: 160px; max-width: none; margin: 0 0 0 -42px; filter: drop-shadow(0 18px 26px rgba(20,18,40,.28)); transition: transform .25s ease; }
.hit-cards-fan .hit-card-item:first-child { margin-left: 0; }
.hit-cards-fan .hit-card-item:nth-child(1) { transform: rotate(-8deg) translateY(6px); z-index: 1; }
.hit-cards-fan .hit-card-item:nth-child(2) { transform: translateY(-16px) scale(1.08); z-index: 3; }
.hit-cards-fan .hit-card-item:nth-child(3) { transform: rotate(8deg) translateY(6px); z-index: 2; }
.hit-cards-fan .hit-card-item img { border-radius: 12px; box-shadow: none; }
.hit-cards-fan .hit-grade { display: none; }
.hit-cards-fan:hover .hit-card-item:nth-child(2) { transform: translateY(-24px) scale(1.11); }
@media (max-width: 820px){ .hit-layout { grid-template-columns: 1fr; gap: 26px; } .hit-cards-fan .hit-card-item { width: 132px; margin-left: -34px; } }

/* Ãß°¡ ¼½¼Ç: ¼ÒÅ¸ÀÌÆ²À» Å¸ÀÌÆ² ¹ØÀ¸·Î (¾ç¿· -> ¼¼·Î) */
.info-block .section-head { display: block; }
.info-block .section-head p { max-width: none; margin: 14px 0 0; text-align: left; }


/* [lucky reel] ·°Å° Ä«µå - Ä«µå ·ê·¿ ÈÄ ÇÑ Àå ¼±ÅÃ (tcg-main-design Âü°í) */
.lz-stage { position: relative; display: grid; place-items: center; overflow: visible; }
.lz-reel { position: relative; width: 140px; height: 330px; overflow: hidden; border-radius: 12px; }
.lz-reel__strip { display: flex; flex-direction: column; }
.lz-reel__strip img { display: block; width: 100%; height: 194px; object-fit: cover; }
.lz-winner { position: absolute; left: 50%; top: 50%; width: 185px; z-index: 5; border-radius: 8px; filter: drop-shadow(0 16px 22px rgba(212,23,154,.5)); opacity: 0; transform: translate(-50%,-50%) scale(1); }
@keyframes lzSpin { 0% { transform: translateY(0); animation-timing-function: cubic-bezier(.4,.02,.3,1); } 30% { transform: translateY(-1484px); } 100% { transform: translateY(-1484px); } }
@keyframes lzFade { 0%,32% { opacity:1; } 42%,100% { opacity:0; } }
@keyframes lzWin { 0%,30% { opacity:0; transform:translate(-50%,-50%) scale(.94); } 33% { opacity:1; transform:translate(-50%,-50%) scale(1); animation-timing-function: cubic-bezier(.2,.75,.25,1); } 44% { opacity:1; transform:translate(-50%,-50%) scale(1.13); } 50% { transform:translate(-50%,-50%) scale(1.09); } 56%,100% { opacity:1; transform:translate(-50%,-50%) scale(1.11); } }

/* [memory flip] °°Àº ±×¸² Ã£±â - Ä«µå µÚÁý¾î °ø°³ (±â¾ï·Â) */
.mz-stage { display: grid; place-items: center; }
.mz-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; width: 320px; perspective: 1000px; }
.mz-card { position: relative; aspect-ratio: .72; transform-style: preserve-3d; }
.mz-card > span { position: absolute; inset: 0; border-radius: 8px; backface-visibility: hidden; -webkit-backface-visibility: hidden; overflow: hidden; box-shadow: 0 6px 14px rgba(20,18,40,.18); }
.mz-front { background: url("/_template/service/images/07event_images/2026/08_pokemon/card.png?v=20260831") center / cover, linear-gradient(135deg,#7a3df0,#14c8e6); }
.mz-front::after { content: none; }
.mz-back { transform: rotateY(180deg); }
.mz-back img { width: 100%; height: 100%; object-fit: cover; display: block; }
.event-panel--memory.in-view .mz-card.mz-match { animation: mzMatch 6s infinite; }
.event-panel--memory.in-view .mz-match .mz-back { animation: mzGlow 6s infinite; }
.event-panel--memory.in-view .mz-card.mz-m2 { animation: mzMatch2 6s infinite; }
@keyframes mzFlip { 0%,8% { transform: rotateY(0); } 20%,38% { transform: rotateY(180deg); } 50%,100% { transform: rotateY(0); } }
@keyframes mzMatch { 0%,8% { transform: rotateY(0); } 20%,38% { transform: rotateY(180deg); } 50%,60% { transform: rotateY(0); } 66%,84% { transform: rotateY(180deg); } 91%,100% { transform: rotateY(0); } }
@keyframes mzMatch2 { 0%,8% { transform: rotateY(0); } 20%,38% { transform: rotateY(180deg); } 50%,66% { transform: rotateY(0); } 72%,84% { transform: rotateY(180deg); } 91%,100% { transform: rotateY(0); } }
@keyframes mzGlow { 0%,64% { box-shadow: 0 6px 14px rgba(20,18,40,.18); } 74%,82% { box-shadow: 0 0 0 4px #ffe14d, 0 0 22px rgba(255,225,77,.65); } 90%,100% { box-shadow: 0 6px 14px rgba(20,18,40,.18); } }
@media (prefers-reduced-motion: reduce){ .lz-reel__strip, .lz-winner, .lz-reel, .mz-card { animation: none !important; } .lz-winner { opacity:1 !important; transform: translate(-50%,-50%) scale(1.12) !important; } }

/* ÀÌº¥Æ® ¾Ö´Ï¸ÞÀÌ¼Ç: È­¸é¿¡ º¸ÀÏ ¶§(.in-view)¸¸ µ¿ÀÛ */
.event-panel--memory.in-view .mz-card { animation: mzFlip 6s infinite; }
.event-panel--lucky.in-view .lz-reel { animation: lzFade 6s infinite; }
.event-panel--lucky.in-view .lz-reel__strip { animation: lzSpin 6s infinite; }
.event-panel--lucky.in-view .lz-winner { animation: lzWin 6s infinite; }



/* 320~360px ¼ÒÇü ´Ü¸»: °íÁ¤Æø ¿ä¼Ò°¡ .wrap(È­¸é-32px) À» ³Ñ¾î °¡·Î ½ºÅ©·ÑÀÌ »ý±â´ø °Í º¸Á¤ */
@media (max-width: 360px) {
  .mz-grid { width: 100%; }
  .hit-cards-fan .hit-card-item { width: 108px; margin-left: -30px; }
  .hit-cards-fan .hit-card-item:first-child { margin-left: 0; }
}

/* ===== Ä«µå»Ì±â Ã¼Çè: ½ÇÁ¦ »Ì±â(tcg-drop)ÀÇ ¿µ»ó °³ºÀ ¿¬ÃâÀ» ±×´ë·Î °¡Á®¿Â´Ù ===== */

/* ===== »Ì±â 2¾È: ¿µ»ó °³ºÀ (?fx=2) ===== */
.fx2-stage{position:relative;width:100%;aspect-ratio:16/9;max-height:72vh;border-radius:14px;overflow:hidden;background:#000;}
.fx2-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;}
.fx2-burst{position:absolute;left:50%;top:50%;width:10px;height:10px;z-index:1;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:0;}
.fx2-burst.go{animation:fx2Burst .75s ease-out both;}
.fx2-burst.go::before{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);animation:fx2BurstRing .8s .05s ease-out both;}
@keyframes fx2Burst{0%{opacity:1;box-shadow:0 0 0 0 rgba(255,255,255,.95),0 0 26px 14px rgba(224,24,127,.85),0 0 60px 30px rgba(122,61,240,.6);}100%{opacity:0;box-shadow:0 0 130px 100px rgba(255,255,255,0),0 0 230px 160px rgba(224,24,127,0),0 0 330px 230px rgba(122,61,240,0);}}
@keyframes fx2BurstRing{0%{opacity:.9;width:12px;height:12px;box-shadow:0 0 0 3px rgba(255,255,255,.9),0 0 18px 6px rgba(224,24,127,.5);}100%{opacity:0;width:min(92%,560px);height:min(92%,560px);box-shadow:0 0 0 2px rgba(255,255,255,0),0 0 30px 12px rgba(224,24,127,0);}}
/* Ä«µå µîÀå ½Ã Áß¾Ó¿¡¼­ ¹ÛÀ¸·Î »¸´Â ¹ø°³ (°¢µµ --a, Å©±â --s ´Â JS ÀÎ¶óÀÎ) */
.fx2-reveal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:translateY(-5px);opacity:0;pointer-events:none;}
.fx2-reveal.show{opacity:1;animation:fx2CardPop .7s cubic-bezier(.18,.85,.3,1.15) both;}
.fx2-reveal.has-acts{pointer-events:auto;}
/* °ø°³ Ä«µå¿¡ ¿Ã¸®¸é º¸°ü/Áï½ÃÆÇ¸Å ¹öÆ°ÀÌ Ä«µå À§·Î ¶á´Ù */
.fx2-acts{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(46%,325px);aspect-ratio:63/88;z-index:5;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;border-radius:12px;background:rgba(10,8,20,.58);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .22s;}
.fx2-reveal.has-acts img:hover~.fx2-acts,.fx2-acts:hover,.fx2-reveal.acts-on .fx2-acts{opacity:1;pointer-events:auto;}
.fx2-act{border:0;border-radius:999px;min-width:172px;padding:12px 18px;font:800 14px Pretendard,'Malgun Gothic',sans-serif;cursor:pointer;}
.fx2-act.keep{background:linear-gradient(90deg,#0a9fbe,#6a2fe0);color:#fff;box-shadow:0 8px 20px rgba(122,61,240,.35);}
.fx2-act.sell{background:#fff;color:#16141f;}
@media(max-width:700px){.fx2-acts{width:min(62%,260px);}}
.fx2-reveal img{width:min(46%,325px);border-radius:12px;box-shadow:0 0 0 2px rgba(122,61,240,.9),0 0 60px 14px rgba(224,24,127,.55),0 24px 54px rgba(0,0,0,.55);}
.fx2-reveal b{width:min(46%,325px);aspect-ratio:63/88;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;border-radius:14px;background:linear-gradient(160deg,#1d1633,#0d0a1c);color:#fff;font-size:clamp(16px,2.4vw,26px);line-height:1.45;word-break:keep-all;box-shadow:0 0 0 2px rgba(122,61,240,.9),0 0 60px 14px rgba(224,24,127,.55),0 24px 54px rgba(0,0,0,.55);}
.fx2-result{min-height:52px;margin-top:12px;display:flex;flex-direction:column;justify-content:center;text-align:center;color:#637589;font-size:14px;line-height:1.6;}
@keyframes fx2CardPop{0%{transform:scale(.25) rotate(-8deg);opacity:0;}55%{opacity:1;}78%{transform:scale(1.07) rotate(1.5deg);}100%{transform:scale(1) rotate(0);opacity:1;}}
@media(max-width:700px){.fx2-stage{aspect-ratio:9/14;}.fx2-reveal img{width:min(62%,260px);}}
/* ·£µù ¸ð´ÞÀº .pkm - ¸ð¹ÙÀÏ¿¡¼­ ¿µ»ó °³ºÀÀ» È­¸é °¡µæ Ã¤¿î´Ù */
@media(max-width:900px){
  /* bm °íÁ¤ Çì´õ(z900)º¸´Ù À§·Î ¿Ã·Á »Ì±â ·¹ÀÌ¾î°¡ °¡¸®Áö ¾Ê°Ô ÇÑ´Ù */
  .modalback{z-index:9500 !important}
  .modalback:has(.fx2-stage){padding:0 !important}
  .pkm:has(.fx2-stage){width:100vw !important;max-width:none !important;min-height:100vh !important;min-height:100dvh !important;max-height:none !important;margin:0 !important;border-radius:0 !important}
}
/* µ¥¸ð Àü¿ë: °á°ú Ä­ÀÇ ¾È³» ¹®±¸¿Í ¹öÆ° */
.fx2-demo-note{display:block;margin-top:6px;color:#8b93a3;font-size:12px;font-weight:600}
.fx2-demo-acts{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.fx2-demo-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfd4de;border-radius:999px;padding:10px 18px;background:#fff;color:#16141f;font:800 13px Pretendard,'Malgun Gothic',sans-serif;text-decoration:none;cursor:pointer}
.fx2-demo-btn.primary{border:0;background:linear-gradient(90deg,#0a9fbe,#6a2fe0);color:#fff}
