/* 우측 전용 게임 시작 버튼 */
.site-header .brand {
  min-width: 108px;
  gap: 0;
}

@media (min-width: 851px) {
  .site-header {
    width: calc(100% - 28px);
    max-width: none;
    margin: 14px 14px 0;
    padding-right: 286px;
  }

  .site-header nav {
    justify-content: center;
  }

  .account-nav {
    margin-left: auto;
  }

  .launch-art-button {
    position: absolute;
    top: 7px;
    right: 8px;
    width: 265px;
    height: 66px;
  }
}

.launch-art-button {
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  padding: 8px 18px;
  border: 1px solid rgba(255, 211, 78, .72);
  border-radius: 15px;
  color: #fff;
  background-image:
    linear-gradient(90deg, rgba(4, 13, 32, .05) 0%, rgba(4, 13, 32, .18) 46%, rgba(4, 13, 32, .06) 100%),
    url('/assets/images/game-start-impmon-v2.png');
  background-position: center, center;
  background-size: cover, cover;
  box-shadow: 0 0 0 1px rgba(255, 184, 45, .12) inset, 0 10px 26px rgba(0, 0, 0, .38), 0 0 23px rgba(255, 184, 45, .17);
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, filter .2s ease;
  animation: launchAura 2.6s ease-in-out infinite;
}

.launch-art-button::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(4, 12, 29, .95) 0%, rgba(4, 15, 35, .73) 49%, rgba(4, 15, 35, .08) 76%);
}

.launch-art-button::after {
  content: '';
  position: absolute;
  z-index: 2;
  top: -45%;
  left: -42%;
  width: 26%;
  height: 190%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.78), transparent);
  filter: blur(1px);
  transform: skewX(-20deg);
  animation: launchSweep 3.2s ease-in-out infinite;
  pointer-events: none;
}

.launch-art-button:hover {
  transform: translateY(-2px) scale(1.015);
  border-color: #ffe78d;
  filter: brightness(1.12) saturate(1.08);
  box-shadow: 0 0 0 1px rgba(255, 225, 118, .2) inset, 0 14px 30px rgba(0, 0, 0, .45), 0 0 30px rgba(255, 187, 43, .3);
}

.launch-copy {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.05;
  text-shadow: 0 2px 8px rgba(0, 0, 0, .95);
}

.launch-copy::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 112px;
  height: 1px;
  background: linear-gradient(90deg, #ffd34e, rgba(255,211,78,0));
  box-shadow: 0 0 9px #ffb12e;
}

.launch-copy small {
  margin-bottom: 2px;
  color: #78ddff;
  font-size: 7px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .15em;
}

.launch-copy strong {
  color: #fff4bb;
  font-size: 19px;
  font-weight: 900;
  letter-spacing: .035em;
}

.launch-copy em {
  margin-top: 3px;
  color: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
}

.launch-arrow {
  position: relative;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  margin-left: 9px;
  border: 1px solid rgba(255, 229, 135, .8);
  border-radius: 50%;
  color: #1a1022;
  background: linear-gradient(135deg, #fff39d, #ffad2e);
  box-shadow: 0 0 14px rgba(255, 188, 45, .55);
  font-size: 9px;
  animation: launchArrow 1.4s ease-in-out infinite;
}

.launch-sparkles,
.launch-sparkles i {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.launch-sparkles i::before,
.launch-sparkles i::after {
  content: '';
  position: absolute;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #fff7b0;
  box-shadow: 0 0 4px #fff, 0 0 11px #ffd34e;
  animation: launchTwinkle 1.8s ease-in-out infinite;
}

.launch-sparkles i:nth-child(1)::before { left: 10%; top: 18%; animation-delay: -.2s; }
.launch-sparkles i:nth-child(1)::after { left: 48%; top: 72%; animation-delay: -.9s; }
.launch-sparkles i:nth-child(2)::before { left: 64%; top: 14%; animation-delay: -1.3s; }
.launch-sparkles i:nth-child(2)::after { left: 82%; top: 64%; animation-delay: -.5s; }
.launch-sparkles i:nth-child(3)::before { left: 34%; top: 38%; animation-delay: -1.6s; }
.launch-sparkles i:nth-child(3)::after { left: 73%; top: 42%; animation-delay: -.1s; }
.launch-sparkles i:nth-child(4)::before { left: 91%; top: 22%; animation-delay: -1s; }
.launch-sparkles i:nth-child(4)::after { left: 57%; top: 87%; animation-delay: -.7s; }

@keyframes launchAura {
  0%, 100% { box-shadow: 0 0 0 1px rgba(255,184,45,.12) inset, 0 10px 26px rgba(0,0,0,.38), 0 0 15px rgba(255,184,45,.13); }
  50% { box-shadow: 0 0 0 1px rgba(255,225,118,.3) inset, 0 10px 28px rgba(0,0,0,.42), 0 0 32px rgba(255,184,45,.38); }
}

@keyframes launchSweep {
  0%, 55% { left: -42%; opacity: 0; }
  62% { opacity: .9; }
  88%, 100% { left: 122%; opacity: 0; }
}

@keyframes launchTwinkle {
  0%, 100% { opacity: .12; transform: scale(.45); }
  48% { opacity: 1; transform: scale(1.65); }
}

@keyframes launchArrow {
  0%, 100% { transform: scale(1); box-shadow: 0 0 9px rgba(255,188,45,.4); }
  50% { transform: scale(1.1); box-shadow: 0 0 20px rgba(255,220,91,.85); }
}

.installer-card { position: relative; overflow: hidden; }
.install-path-warning { display: flex; align-items: center; gap: 18px; margin: 0 0 18px; padding: 15px 20px; border: 1px solid rgba(255,186,55,.55); border-radius: 15px; color: #ffe9a6; background: linear-gradient(90deg,rgba(255,164,32,.16),rgba(255,100,45,.08)); box-shadow: 0 10px 28px rgba(0,0,0,.18), inset 0 0 20px rgba(255,190,44,.04); }
.install-path-warning strong { flex: 0 0 auto; color: #ffd34e; font-size: 15px; }
.install-path-warning span { color: #d9e6f6; font-size: 13px; }
.install-path-warning code { padding: 3px 7px; border-radius: 6px; color: #fff3ae; background: rgba(0,0,0,.28); font-family: Consolas,monospace; }
.installer-card::after { content: ''; position: absolute; right: -55px; top: -75px; width: 210px; height: 210px; border-radius: 50%; background: rgba(49,168,255,.14); filter: blur(20px); pointer-events: none; }
.installer-download-button { position: relative; z-index: 1; width: min(420px,100%); min-height: 76px; margin: 18px 0 10px; gap: 15px; justify-content: flex-start; padding: 13px 22px; border: 1px solid rgba(255,235,147,.65); box-shadow: 0 12px 35px rgba(255,174,35,.28); }
.installer-download-button .windows-mark { font-size: 34px; line-height: 1; }
.installer-download-button span:last-child { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.35; }
.installer-download-button b { font-size: 17px; }
.installer-download-button small { font-size: 11px; font-weight: 700; opacity: .7; }

@media (prefers-reduced-motion: reduce) {
  .launch-art-button,
  .launch-art-button::after,
  .launch-arrow,
  .launch-sparkles i::before,
  .launch-sparkles i::after { animation: none !important; }
}

@media (max-width: 650px) {
  .install-path-warning { align-items: flex-start; flex-direction: column; gap: 5px; }
}

@media (max-width: 850px) {
  .account-nav {
    display: flex;
    order: 3;
  }

  .account-nav .ghost-btn {
    display: none;
  }

  .launch-art-button {
    width: 190px;
    height: 54px;
    padding: 7px 12px;
  }

  .launch-copy small {
    display: none;
  }

  .launch-copy strong {
    font-size: 15px;
  }

  .launch-copy em {
    font-size: 9px;
  }
}

@media (max-width: 560px) {
  .launch-art-button {
    width: 150px;
  }

  .launch-copy em,
  .launch-arrow {
    display: none;
  }
}
