@font-face {
  font-family: "LilitaOne-Regular";
  src: url("/media/games/nuclear-war/fonts/LilitaOne-Regular.ttf");
}
@keyframes nwLogoDrop {
  0% {
    transform: translateY(-160px) scale(0.5) rotate(-18deg);
    opacity: 0;
  }
  55% {
    transform: translateY(14px) scale(1.06) rotate(4deg);
    opacity: 1;
  }
  75% {
    transform: translateY(-8px) scale(0.98) rotate(-2deg);
  }
  100% {
    transform: translateY(0) scale(1) rotate(0);
  }
}
@keyframes nwLogoIdle {
  0%, 100% {
    transform: translateY(0) rotate(-1deg);
  }
  50% {
    transform: translateY(-10px) rotate(1deg);
  }
}
@keyframes nwSlideUp {
  from {
    transform: translateY(80px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes nwSlideIn {
  from {
    transform: translateX(-80px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes nwSlideRight {
  from {
    transform: translateX(120px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes nwPop {
  0% {
    transform: scale(0) rotate(-20deg);
    opacity: 0;
  }
  60% {
    transform: scale(1.2) rotate(5deg);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
@keyframes nwPopCenter {
  0% {
    transform: translate(-50%, -50%) scale(0);
    opacity: 0;
  }
  60% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes nwRingWave {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.7;
  }
  100% {
    transform: translate(-50%, -50%) scale(2.2);
    opacity: 0;
  }
}
@keyframes nwRingWaveIn {
  0% {
    transform: scale(1);
    opacity: 0.7;
  }
  100% {
    transform: scale(2.2);
    opacity: 0;
  }
}
@keyframes nwShake {
  0%, 60%, 100% {
    transform: translateX(0) rotate(0);
  }
  8% {
    transform: translateX(-5px) rotate(-1.5deg);
  }
  16% {
    transform: translateX(5px) rotate(1.5deg);
  }
  24% {
    transform: translateX(-4px) rotate(-1deg);
  }
  32% {
    transform: translateX(4px) rotate(1deg);
  }
  40% {
    transform: translateX(-2px);
  }
  48% {
    transform: translateX(2px);
  }
}
@keyframes nwBanner {
  0% {
    transform: scale(0.3);
    opacity: 0;
  }
  14% {
    transform: scale(1.08);
    opacity: 1;
  }
  22% {
    transform: scale(1);
  }
  78% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(1.4);
    opacity: 0;
  }
}
@keyframes nwRays {
  from {
    transform: translate(-50%, -50%) rotate(0);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes nwEnvPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 70, 70, 0.9);
  }
  70% {
    box-shadow: 0 0 0 22px rgba(255, 70, 70, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 70, 70, 0);
  }
}
@keyframes nwTabPulse {
  0% {
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.5), 0 0 0 0 rgba(207, 224, 122, 0.7);
  }
  100% {
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.5), 0 0 0 16px rgba(207, 224, 122, 0);
  }
}
@keyframes nwBob {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}
@keyframes nwBuyFlash {
  0% {
    transform: scale(1);
    background: #2ecc71;
  }
  30% {
    transform: scale(1.12);
    background: #fff;
    color: #063;
  }
  100% {
    transform: scale(1);
    background: #2ecc71;
  }
}
@keyframes nwInvPulse {
  0% {
    transform: scale(1);
  }
  35% {
    transform: scale(1.18);
    box-shadow: 0 0 0 8px rgba(142, 245, 142, 0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes nwEndPulse {
  0% {
    box-shadow: 0 8px 0 #6e1c14, 0 0 0 0 rgba(255, 107, 107, 0.8);
  }
  100% {
    box-shadow: 0 8px 0 #6e1c14, 0 0 0 18px rgba(255, 107, 107, 0);
  }
}
@keyframes nwTapHint {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(-4px, -4px) scale(0.9);
  }
}
@keyframes nwRowGlow {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 204, 0, 0.7);
  }
  100% {
    box-shadow: 0 0 0 14px rgba(255, 204, 0, 0);
  }
}
@keyframes nwTrayGlow {
  0% {
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.6), 0 20px 50px rgba(0, 0, 0, 0.6), 0 0 0 0 rgba(255, 204, 0, 0.6);
  }
  100% {
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.6), 0 20px 50px rgba(0, 0, 0, 0.6), 0 0 0 16px rgba(255, 204, 0, 0);
  }
}
@keyframes nwFallOff {
  0% {
    transform: translate(-50%, -50%) rotate(0);
    opacity: 1;
  }
  20% {
    transform: translate(-50%, -90%) rotate(-8deg) scale(1.15);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, 900px) rotate(40deg) scale(0.9);
    opacity: 0;
  }
}
@keyframes nwLeaderFall {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  25% {
    transform: translate(-50%, -80%) scale(1.2);
    opacity: 1;
  }
  45% {
    transform: translate(-50%, -80%) scale(1.2);
  }
  100% {
    transform: translate(-50%, 900px) rotate(35deg) scale(0.8);
    opacity: 0;
  }
}
@keyframes nwBlink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
@keyframes nwFadeOut {
  to {
    opacity: 0;
  }
}
@keyframes nwDots {
  0%, 80%, 100% {
    transform: scale(0.6);
    opacity: 0.4;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes nwPhoneShake {
  0%, 60%, 100% {
    transform: translateX(0) rotate(0);
  }
  8% {
    transform: translateX(-4px) rotate(-1deg);
  }
  16% {
    transform: translateX(4px) rotate(1deg);
  }
  24% {
    transform: translateX(-3px) rotate(-0.6deg);
  }
  32% {
    transform: translateX(3px) rotate(0.6deg);
  }
}
@keyframes nwToastIn {
  from {
    transform: translateX(-80px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
#full-area {
  width: 100%;
  height: 100vh;
  background: #04081c;
  position: absolute;
  overflow: hidden;
  user-select: none;
  font-family: "LilitaOne-Regular", "Lilita One", "Arial Black", sans-serif;
  color: #fff;
}
#full-area #game-area {
  position: absolute;
  width: 1920px;
  height: 1080px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #0a2a8a;
  overflow: hidden;
}
#full-area #nw-stage {
  position: absolute;
  top: 0;
  left: 0;
  width: 1920px;
  height: 1080px;
  overflow: hidden;
}
#full-area #nw-map {
  position: absolute;
  inset: 0;
  width: 1920px;
  height: 1080px;
  opacity: 0.88;
}
#full-area #nw-scrim {
  position: absolute;
  inset: 0;
  background: rgba(2, 6, 24, 0.18);
}
#full-area #nw-scrim::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(2, 6, 24, 0.45), rgba(2, 6, 24, 0) 20%, rgba(2, 6, 24, 0) 72%, rgba(2, 6, 24, 0.55));
}
#full-area .nw-screen {
  position: absolute;
  inset: 0;
}
#full-area #nw-caption {
  position: absolute;
  left: 50%;
  top: 30px;
  transform: translateX(-50%);
  max-width: 1180px;
  padding: 14px 34px;
  border-radius: 10px;
  background: rgba(16, 22, 14, 0.96);
  border: 4px solid #ffcc00;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.6), 0 14px 34px rgba(0, 0, 0, 0.75);
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 30px;
  line-height: 1.32;
  text-align: center;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.9);
  z-index: 120;
  pointer-events: none;
  display: none;
}
#full-area #nw-caption.selection {
  top: 747px;
  transform: translate(-50%, -50%);
}
#full-area img {
  pointer-events: none;
}
#full-area .nw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  font-size: 40px;
  letter-spacing: 0.06em;
  padding: 18px 56px;
  border-radius: 12px;
  cursor: pointer;
  white-space: nowrap;
  transition: transform 0.12s, filter 0.12s;
}
#full-area .nw-btn:hover {
  filter: brightness(1.08);
}
#full-area .nw-btn:active {
  transform: translateY(4px);
}
#full-area .nw-btn img {
  height: 40px;
  object-fit: contain;
}
#full-area .nw-btn-green {
  background: #2ecc71;
  color: #063;
  border: 4px solid #8ef58e;
  box-shadow: 0 10px 0 #1a8a4a;
}
#full-area .nw-btn-dark {
  background: rgba(16, 22, 14, 0.96);
  color: #ffcc00;
  border: 4px solid #6b7a3a;
  box-shadow: 0 10px 0 #0a0d08;
}
#full-area .nw-btn-red {
  background: #c0392b;
  color: #fff;
  border: 3px solid #ff8f7a;
  box-shadow: 0 8px 0 #6e1c14;
}
#full-area .nw-hazard {
  position: absolute;
  left: -4px;
  right: -4px;
  top: -14px;
  height: 12px;
  background: repeating-linear-gradient(-45deg, #ffcc00 0 14px, #111 14px 28px);
  border: 2px solid #111;
}
#full-area .nw-kicker {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.22em;
  color: #a5b36a;
}
#full-area .nw-kicker.dim {
  color: #7f8a5a;
  font-size: 14px;
  letter-spacing: 0.14em;
}
#full-area .nw-panel {
  position: absolute;
  border-radius: 10px;
  background: rgba(16, 22, 14, 0.96);
  border: 4px solid #6b7a3a;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.6), 0 30px 80px rgba(0, 0, 0, 0.7);
  padding: 24px 28px 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  animation: nwSlideUp 0.35s cubic-bezier(0.2, 0.9, 0.3, 1.1) both;
}
#full-area .nw-panel h2 {
  font-size: 48px;
  line-height: 1;
  margin: 0;
  font-weight: 400;
}
#full-area .nw-center-panel {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  animation: nwPopCenter 0.35s cubic-bezier(0.2, 0.9, 0.3, 1.2) both;
}
#full-area .nw-close {
  position: absolute;
  right: -18px;
  top: -18px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: #c0392b;
  border: 3px solid #fff;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.5);
  z-index: 3;
}
#full-area .nw-close:hover {
  background: #e74c3c;
}
#full-area .nw-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 8, 30, 0.55);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
#full-area .nw-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 4px;
}
#full-area .nw-title-row {
  display: flex;
  align-items: center;
  gap: 18px;
}
#full-area .nw-title-row img {
  height: 70px;
  width: 80px;
  object-fit: contain;
}
#full-area .nw-balance-capsule {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 30px;
  color: #8ef58e;
  padding: 8px 22px 8px 12px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.5);
  border: 3px solid #3a4528;
  white-space: nowrap;
}
#full-area .nw-balance-capsule img {
  height: 32px;
  width: 36px;
  object-fit: contain;
}
#full-area .nw-balance-capsule small {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.14em;
  color: #a5b36a;
}
#full-area #nw-home::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 580px;
  transform: translateX(-50%);
  width: 1560px;
  height: 300px;
  background: radial-gradient(ellipse at center, rgba(2, 6, 20, 0.92) 0%, rgba(2, 6, 20, 0.82) 45%, rgba(2, 6, 20, 0) 78%);
  pointer-events: none;
}
#full-area #nw-home #nw-logo {
  position: absolute;
  left: 630px;
  top: -10px;
  width: 660px;
  height: 660px;
  object-fit: contain;
  filter: drop-shadow(0 30px 40px rgba(0, 0, 0, 0.6));
}
#full-area #nw-home #nw-logo.drop {
  animation: nwLogoDrop 1.2s cubic-bezier(0.2, 0.9, 0.3, 1.2) both, nwLogoIdle 4s ease-in-out 1.2s infinite;
}
#full-area #nw-home .nw-home-tag {
  position: absolute;
  left: 0;
  right: 0;
  top: 636px;
  text-align: center;
  font-size: 52px;
  letter-spacing: 0.06em;
  color: #ffcc00;
  text-shadow: 0 4px 0 rgba(0, 0, 0, 0.85), 0 0 18px rgba(0, 0, 0, 0.95), 0 8px 24px rgba(0, 0, 0, 0.9);
}
#full-area #nw-home .nw-home-copy {
  position: absolute;
  left: 0;
  right: 0;
  top: 708px;
  text-align: center;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 34px;
  line-height: 1.4;
  color: #fff;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.9), 0 0 14px rgba(0, 0, 0, 0.95), 0 4px 18px rgba(0, 0, 0, 0.9);
  padding: 0 240px;
}
#full-area #nw-home .nw-home-btns {
  position: absolute;
  left: 0;
  right: 0;
  top: 824px;
  display: flex;
  justify-content: center;
  gap: 24px;
}
#full-area #nw-home .nw-home-btns .nw-btn {
  font-size: 48px;
  padding: 18px 70px;
}
#full-area #nw-home .nw-home-btns .nw-btn-dark {
  font-size: 40px;
  padding: 18px 44px;
}
#full-area #nw-choose {
  background: rgba(3, 8, 30, 0.82);
}
#full-area #nw-choose h1 {
  position: absolute;
  left: 0;
  right: 0;
  top: 50px;
  margin: 0;
  text-align: center;
  font-size: 84px;
  font-weight: 400;
  letter-spacing: 0.04em;
  text-shadow: 0 8px 0 rgba(0, 0, 0, 0.5);
}
#full-area #nw-choose #nw-nation-tiles {
  position: absolute;
  left: 80px;
  right: 80px;
  top: 200px;
  display: flex;
  gap: 30px;
  justify-content: center;
}
#full-area #nw-choose .nw-tile {
  width: 320px;
  height: 470px;
  border-radius: 28px;
  background: linear-gradient(180deg, #16224a 0%, #080d26 100%);
  border: 6px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.55);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s;
  animation: nwSlideUp 0.5s both;
}
#full-area #nw-choose .nw-tile:nth-child(1) {
  animation-delay: 80ms;
}
#full-area #nw-choose .nw-tile:nth-child(2) {
  animation-delay: 160ms;
}
#full-area #nw-choose .nw-tile:nth-child(3) {
  animation-delay: 240ms;
}
#full-area #nw-choose .nw-tile:nth-child(4) {
  animation-delay: 320ms;
}
#full-area #nw-choose .nw-tile:nth-child(5) {
  animation-delay: 400ms;
}
#full-area #nw-choose .nw-tile::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 232px;
  height: 84px;
  background: linear-gradient(rgba(8, 13, 38, 0), rgba(8, 13, 38, 0.96));
  pointer-events: none;
}
#full-area #nw-choose .nw-tile video {
  width: 100%;
  height: 316px;
  object-fit: cover;
  display: block;
  background: #0f1a3c;
  pointer-events: none;
}
#full-area #nw-choose .nw-tile .nw-tile-flag {
  position: absolute;
  top: 18px;
  left: 18px;
  width: 84px;
  height: 56px;
  object-fit: cover;
  border-radius: 8px;
  border: 3px solid #fff;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.6);
  z-index: 2;
}
#full-area #nw-choose .nw-tile .nw-tile-body {
  position: relative;
  z-index: 1;
  flex: 1;
  padding: 16px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: rgba(6, 10, 32, 0.92);
  border-top: 3px solid rgba(255, 255, 255, 0.1);
}
#full-area #nw-choose .nw-tile .nw-tile-name {
  font-size: 48px;
  line-height: 1;
  text-shadow: 0 4px 0 rgba(0, 0, 0, 0.5);
}
#full-area #nw-choose .nw-tile .nw-tile-leader {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 22px;
  color: #a5b36a;
}
#full-area #nw-choose .nw-tile:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 255, 255, 0.3);
}
#full-area #nw-choose .nw-tile.selected {
  border-color: #ffb347;
  transform: translateY(-22px) scale(1.04);
  box-shadow: 0 0 0 12px rgba(255, 179, 71, 0.25), 0 30px 60px rgba(0, 0, 0, 0.6);
}
#full-area #nw-choose .nw-tile.selected .nw-tile-body {
  background: rgba(38, 24, 6, 0.92);
  border-top-color: rgba(255, 179, 71, 0.5);
}
#full-area #nw-choose .nw-tile.selected .nw-tile-leader {
  color: #ffd166;
}
#full-area #nw-choose .nw-choose-foot {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 140px;
  display: flex;
  justify-content: center;
}
#full-area #nw-choose #nw-play-as {
  font-size: 48px;
  padding: 18px 70px;
}
#full-area #nw-choose #nw-play-as img {
  width: 56px;
  height: 38px;
  object-fit: cover;
  border-radius: 6px;
  border: 3px solid #fff;
}
#full-area #nw-nations, #full-area #nw-lines, #full-area #nw-fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
#full-area #nw-nations {
  z-index: 4;
}
#full-area #nw-lines {
  z-index: 3;
}
#full-area #nw-fx {
  z-index: 14;
}
#full-area #nw-play.resolving #nw-nations {
  z-index: 36;
}
#full-area #nw-play.resolving #nw-fx {
  z-index: 37;
}
#full-area #nw-play.resolving .nw-call-wrap, #full-area #nw-play.resolving .nw-placed-bomb, #full-area #nw-play.resolving .nw-stamp {
  pointer-events: none;
}
#full-area .nw-nation {
  position: absolute;
  inset: 0;
}
#full-area .nw-nation.falling .nw-marker, #full-area .nw-nation.falling .nw-chip, #full-area .nw-nation.falling .nw-call-wrap {
  visibility: hidden;
}
#full-area .nw-marker {
  position: absolute;
  width: 140px;
  height: 140px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 7px solid rgba(255, 255, 255, 0.85);
  background: #0f1a3c;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.6);
  pointer-events: auto;
}
#full-area .nw-marker img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
#full-area .nw-marker .nw-talking {
  position: absolute;
  left: 50%;
  top: -34px;
  transform: translateX(-50%);
  width: 120px;
  height: 56px;
  object-fit: contain;
  display: none;
}
#full-area .nw-marker.talking .nw-talking {
  display: block;
}
#full-area .nw-marker.talking {
  border-color: #2ecc71;
  box-shadow: 0 0 30px rgba(46, 204, 113, 0.8);
}
#full-area .nw-marker.ringing::before, #full-area .nw-marker.ringing::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 170px;
  height: 170px;
  margin: -85px 0 0 -85px;
  border-radius: 50%;
  border: 6px solid #2ecc71;
  animation: nwRingWaveIn 1.4s ease-out infinite;
}
#full-area .nw-marker.ringing::after {
  animation-delay: 0.7s;
}
#full-area .nw-marker .nw-stamp {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 150px;
  height: 150px;
  margin: -75px 0 0 -75px;
  transform: rotate(-14deg);
  animation: nwPop 0.4s both;
  cursor: pointer;
}
#full-area .nw-marker .nw-stamp img {
  width: 150px;
  height: 150px;
  object-fit: contain;
  filter: drop-shadow(0 6px 10px rgba(0, 0, 0, 0.7));
  border-radius: 0;
}
#full-area .nw-marker .nw-stamp span {
  position: absolute;
  right: -4px;
  top: -4px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #e74c3c;
  border: 2px solid #fff;
  color: #fff;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  transform: rotate(14deg);
}
#full-area .nw-nation.mine .nw-marker {
  border-color: #ffb347;
}
#full-area .nw-call-wrap {
  position: absolute;
  transform: translate(-50%, 0);
  pointer-events: auto;
}
#full-area #nw-play.in-call .nw-call-wrap {
  display: none;
}
#full-area .nw-call {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 22px 8px 14px;
  border-radius: 999px;
  background: #2ecc71;
  border: 4px solid #fff;
  box-shadow: 0 6px 0 #1a8a4a, 0 10px 20px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  font-size: 28px;
  color: #063;
  white-space: nowrap;
  transition: transform 0.12s;
}
#full-area .nw-call img {
  width: 34px;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(15%) sepia(60%) saturate(800%) hue-rotate(100deg);
}
#full-area .nw-call:hover {
  transform: scale(1.06);
}
#full-area .nw-chip {
  position: absolute;
  width: 74px;
  height: 74px;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
#full-area .nw-chip:has(.nw-placed-bomb) {
  z-index: 2;
}
#full-area .nw-chip .nw-chip-name {
  position: absolute;
  left: 50%;
  bottom: 100%;
  margin-bottom: 8px;
  transform: translateX(-50%);
  padding: 2px 10px;
  border-radius: 999px;
  background: rgba(8, 14, 40, 0.92);
  border: 2px solid rgba(255, 255, 255, 0.35);
  font-size: 15px;
  white-space: nowrap;
  letter-spacing: 0.03em;
  z-index: 2;
}
#full-area .nw-chip .nw-chip-name.dead {
  background: rgba(120, 0, 0, 0.9);
  border-color: #ff6b6b;
  text-decoration: line-through;
  color: #ffb0b0;
}
#full-area .nw-chip .nw-chip-circle {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  background: rgba(8, 14, 40, 0.92);
  border: 3px solid rgba(255, 255, 255, 0.45);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}
#full-area .nw-chip .nw-chip-circle img {
  height: 54px;
  max-width: 60px;
  object-fit: contain;
}
#full-area .nw-chip .nw-chip-circle .nw-shield-tint {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.55), rgba(94, 200, 255, 0.35) 45%, rgba(40, 120, 220, 0.55));
  display: none;
}
#full-area .nw-chip .nw-chip-circle .nw-ruin-gif {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 48px;
  height: 48px;
  transform: translate(-50%, -50%);
  max-width: none;
}
#full-area .nw-chip.shielded .nw-chip-circle {
  border-color: #5ec8ff;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.5), 0 0 18px rgba(94, 200, 255, 0.7);
}
#full-area .nw-chip.shielded .nw-chip-circle .nw-shield-tint {
  display: block;
}
#full-area .nw-chip .nw-shield-badge {
  position: absolute;
  right: -14px;
  top: -6px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #5ec8ff;
  border: 3px solid #fff;
  color: #062a4a;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.5);
  z-index: 2;
}
#full-area .nw-chip .nw-mags {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  display: flex;
  gap: 17px;
  margin-top: -8px;
  width: 118px;
  justify-content: center;
}
#full-area .nw-chip .nw-mag {
  width: 28px;
  height: 28px;
  object-fit: contain;
  opacity: 0.25;
  filter: grayscale(1);
}
#full-area .nw-chip .nw-mag:nth-child(2) {
  margin-top: 22px;
}
#full-area .nw-chip .nw-mag.on {
  opacity: 1;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.6));
}
#full-area .nw-chip.ruin .nw-chip-circle {
  border-color: #ff6b6b;
  background: rgba(0, 0, 0, 0.7);
}
#full-area .nw-chip.ruin .nw-chip-circle > img:first-child {
  filter: grayscale(1) brightness(0.5);
}
#full-area .nw-chip .nw-placed-bomb {
  position: absolute;
  pointer-events: auto;
  right: -34px;
  bottom: -18px;
  width: 56px;
  height: 56px;
  cursor: pointer;
  animation: nwPop 0.4s both;
  z-index: 3;
}
#full-area .nw-chip .nw-placed-bomb img {
  width: 56px;
  height: 56px;
  object-fit: contain;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.7));
}
#full-area .nw-chip .nw-placed-bomb b {
  position: absolute;
  left: -6px;
  bottom: -4px;
  background: #ff6b6b;
  color: #3a0000;
  border: 2px solid #fff;
  border-radius: 999px;
  font-size: 16px;
  padding: 0 7px;
}
#full-area .nw-chip .nw-placed-bomb span {
  position: absolute;
  right: -10px;
  top: -10px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #e74c3c;
  border: 2px solid #fff;
  color: #fff;
  font-size: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area .nw-line {
  position: absolute;
  height: 0;
  border-top: 6px dashed #ff6b6b;
  transform-origin: 0 0;
  opacity: 0.9;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.8));
}
#full-area .nw-rocket {
  position: absolute;
  width: 110px;
  height: 110px;
  object-fit: contain;
  transition: left 1.5s ease-in, top 1.5s ease-in;
  filter: drop-shadow(0 0 20px rgba(255, 140, 0, 0.9));
  z-index: 13;
}
#full-area .nw-boom {
  position: absolute;
  width: 260px;
  transform: translate(-50%, -88%);
  z-index: 14;
  animation: nwPop 0.3s both;
}
#full-area .nw-absorb {
  position: absolute;
  width: 110px;
  height: 110px;
  margin: -55px 0 0 -55px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.9), rgba(94, 200, 255, 0.6) 50%, rgba(94, 200, 255, 0));
  animation: nwRingWaveIn 1.2s ease-out both;
}
#full-area .nw-shield-pop {
  position: absolute;
  width: 130px;
  transform: translate(-50%, -50%);
  animation: nwShieldPop 1.2s ease-out both;
}
@keyframes nwShieldPop {
  0% {
    transform: translate(-50%, -50%) scale(0.8);
    opacity: 0.9;
  }
  25% {
    transform: translate(-50%, -50%) scale(1.25);
    opacity: 1;
    filter: brightness(2);
  }
  100% {
    transform: translate(-50%, -50%) scale(1.9);
    opacity: 0;
  }
}
#full-area .nw-fall {
  position: absolute;
  width: 74px;
  height: 74px;
  animation: nwFallOff 1.6s cubic-bezier(0.4, 0, 0.8, 0.4) 0.5s both;
}
#full-area .nw-fall .nw-chip-circle {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  background: rgba(8, 14, 40, 0.95);
  border: 3px solid #ff6b6b;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
#full-area .nw-fall .nw-chip-circle > img:first-child {
  height: 54px;
  max-width: 60px;
  object-fit: contain;
  filter: grayscale(1) brightness(0.6);
}
#full-area .nw-fall .nw-chip-circle .nw-ruin-gif {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 64px;
  height: 64px;
  transform: translate(-50%, -50%);
  max-width: none;
}
#full-area .nw-elim {
  position: absolute;
  z-index: 16;
  animation: nwLeaderFall 2.6s cubic-bezier(0.4, 0, 0.8, 0.4) both;
}
#full-area .nw-elim img {
  width: 260px;
  height: 260px;
  object-fit: contain;
  filter: drop-shadow(0 0 4px #ff6b6b) drop-shadow(0 20px 30px rgba(0, 0, 0, 0.7));
  margin: -60px 0 0 -55px;
}
#full-area .nw-elim .nw-elim-bubble {
  position: absolute;
  left: 120px;
  top: -60px;
  padding: 12px 22px;
  border-radius: 24px 24px 24px 6px;
  background: #fff;
  color: #111;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 30px;
  white-space: nowrap;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
}
#full-area #nw-topleft {
  position: absolute;
  left: 40px;
  top: 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 20;
}
#full-area .nw-row {
  display: flex;
  align-items: center;
  gap: 14px;
}
#full-area .nw-pill {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 24px 8px 14px;
  border-radius: 8px;
  background: rgba(16, 22, 14, 0.92);
  border: 3px solid #6b7a3a;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.5), 0 6px 16px rgba(0, 0, 0, 0.5);
  font-size: 34px;
  white-space: nowrap;
}
#full-area .nw-pill img {
  height: 44px;
  object-fit: contain;
}
#full-area .nw-pill small {
  color: rgba(255, 255, 255, 0.45);
  font-size: 24px;
}
#full-area .nw-pill.nw-round span {
  color: #ffb347;
  margin-left: 8px;
}
#full-area .nw-pill.nw-money span {
  color: #8ef58e;
}
#full-area .nw-pill.nw-rank-btn {
  cursor: pointer;
  font-size: 28px;
  letter-spacing: 0.06em;
}
#full-area .nw-pill.nw-rank-btn span {
  color: #ffcc00;
  font-size: 22px;
}
#full-area .nw-pill.nw-rank-btn:hover {
  background: #3a4528;
}
#full-area .nw-pill.nw-env .nw-env-bar {
  width: 160px;
  height: 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  overflow: hidden;
}
#full-area .nw-pill.nw-env #nw-env-fill {
  width: 66%;
  height: 100%;
  background: linear-gradient(90deg, #8ef58e, #2ecc71);
  transition: width 0.5s ease;
}
#full-area .nw-pill.nw-env span {
  color: #8ef58e;
}
#full-area .nw-pill.nw-env.bad {
  border-color: #c0392b;
  animation: nwEnvPulse 1.6s ease-out infinite;
}
#full-area .nw-pill.nw-env.bad span {
  color: #ff6b6b;
}
#full-area .nw-pill.nw-env.bad #nw-env-fill {
  background: linear-gradient(90deg, #ff6b6b, #ff3b3b);
}
#full-area .nw-circle-btn {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(16, 22, 14, 0.92);
  border: 3px solid #6b7a3a;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.5), 0 6px 16px rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 38px;
  color: #ffcc00;
  cursor: pointer;
}
#full-area .nw-circle-btn:hover {
  background: #3a4528;
}
#full-area #nw-toasts {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 292px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  z-index: 45;
  pointer-events: none;
}
#full-area .nw-toast {
  padding: 12px 24px;
  border-radius: 6px;
  background: rgba(16, 22, 14, 0.94);
  border: 3px solid #8a9a3c;
  border-left: 12px solid #ffcc00;
  font-size: 26px;
  white-space: nowrap;
  animation: nwSlideUp 0.35s both;
  display: flex;
  gap: 12px;
  align-items: center;
}
#full-area .nw-toast img {
  height: 34px;
  width: 34px;
  object-fit: contain;
}
#full-area .nw-toast.out {
  animation: nwFadeOut 0.5s both;
}
#full-area #nw-hero {
  position: absolute;
  left: -20px;
  bottom: 100px;
  width: 380px;
  height: 400px;
  z-index: 25;
  pointer-events: none;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.6, 1);
}
#full-area #nw-hero.dip {
  transform: translateY(460px);
}
#full-area #nw-hero #nw-hero-img {
  position: absolute;
  left: 0;
  bottom: 8px;
  width: 380px;
  height: 380px;
  object-fit: contain;
  object-position: bottom;
  filter: drop-shadow(0 0 3px #ffcc00) drop-shadow(0 0 3px #ffcc00) drop-shadow(0 14px 30px rgba(0, 0, 0, 0.7));
}
#full-area #nw-hero .nw-hero-label {
  position: absolute;
  left: 70px;
  bottom: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}
#full-area #nw-hero .nw-hero-kicker {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 900;
  font-size: 20px;
  letter-spacing: 0.18em;
  color: #1a1200;
  background: #ffcc00;
  border-radius: 999px;
  padding: 3px 14px;
  align-self: flex-start;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.6);
}
#full-area #nw-hero .nw-hero-name {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 18px 6px 8px;
  border-radius: 999px;
  background: rgba(16, 22, 14, 0.94);
  border: 3px solid #6b7a3a;
  font-size: 24px;
  white-space: nowrap;
}
#full-area #nw-hero .nw-hero-name img {
  width: 34px;
  height: 24px;
  object-fit: cover;
  border-radius: 4px;
}
#full-area #nw-hero .nw-hero-rank {
  display: none;
  order: -1;
  align-items: center;
  justify-content: center;
  gap: 2px;
  width: 74px;
  height: 74px;
  margin-left: 4px;
  border-radius: 50%;
  background: rgba(16, 22, 14, 0.94);
  border: 4px solid #ffd166;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.5), 0 6px 16px rgba(0, 0, 0, 0.6);
  color: #ffd166;
  line-height: 1;
}
#full-area #nw-hero .nw-hero-rank.on {
  display: flex;
}
#full-area #nw-hero .nw-hero-rank b {
  font-family: "LilitaOne-Regular", "Lilita One", "Arial Black", sans-serif;
  font-weight: 400;
  font-size: 38px;
  line-height: 1;
}
#full-area #nw-hero .nw-hero-rank i {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-style: normal;
  font-weight: 900;
  font-size: 16px;
  line-height: 1;
  align-self: flex-start;
  margin-top: 14px;
}
#full-area #nw-hero.sanctioned::after {
  content: "";
  position: absolute;
  left: 110px;
  top: 60px;
  width: 160px;
  height: 160px;
  background: url("/media/games/nuclear-war/images/sanction-stamp.png") center/contain no-repeat;
  transform: rotate(-14deg);
  filter: drop-shadow(0 6px 10px rgba(0, 0, 0, 0.7));
}
#full-area #nw-tray-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 110px;
  display: flex;
  justify-content: center;
  pointer-events: none;
  z-index: 20;
}
#full-area #nw-tray {
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 20px;
  border-radius: 10px;
  background: rgba(16, 22, 14, 0.94);
  border: 4px solid #6b7a3a;
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.6), 0 20px 50px rgba(0, 0, 0, 0.6);
  position: relative;
}
#full-area #nw-tray.glow {
  animation: nwTrayGlow 1.8s ease-in-out infinite;
}
#full-area #nw-armory-hint {
  position: absolute;
  left: 82px;
  bottom: 100%;
  margin-bottom: 26px;
  transform: translateX(-50%);
  display: none;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  pointer-events: none;
  animation: nwSlideUp 0.4s both;
}
#full-area .nw-hint-bubble {
  padding: 12px 26px;
  border-radius: 8px;
  background: #ffcc00;
  color: #1a1200;
  border: 3px solid #111;
  font-size: 26px;
  letter-spacing: 0.04em;
  white-space: nowrap;
  line-height: 1.3;
}
#full-area .nw-hint-arrow {
  font-size: 34px;
  color: #ffcc00;
  line-height: 1;
  animation: nwBob 1s ease-in-out infinite;
}
#full-area .nw-hint-arrow.side {
  animation: none;
}
#full-area #nw-armory-tab {
  position: relative;
  flex: none;
  width: 120px;
  height: 120px;
  margin-bottom: 22px;
  margin-right: 10px;
  border-radius: 8px;
  background: #8a9a3c;
  color: #10140a;
  border: 3px solid #cfe07a;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  cursor: pointer;
  animation: nwTabPulse 1.8s ease-out infinite;
  transition: background 0.15s, transform 0.12s;
}
#full-area #nw-armory-tab img {
  height: 62px;
  max-width: 80px;
  object-fit: contain;
}
#full-area #nw-armory-tab .nw-slot-label {
  color: #cfe07a;
}
#full-area #nw-armory-tab:hover {
  background: #b7ca5a;
  transform: translateY(-6px);
}
#full-area .nw-slot {
  position: relative;
  width: 120px;
  height: 120px;
  margin-bottom: 22px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  border: 3px solid #3a4528;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.12s, border-color 0.12s;
}
#full-area .nw-slot > img {
  height: 76px;
  max-width: 96px;
  object-fit: contain;
}
#full-area .nw-slot:hover {
  transform: translateY(-6px);
  border-color: #8ef58e;
}
#full-area .nw-slot.pulse {
  animation: nwInvPulse 0.55s ease-out;
}
#full-area .nw-slot .nw-count {
  position: absolute;
  right: -10px;
  top: -10px;
  min-width: 36px;
  height: 36px;
  padding: 0 8px;
  border-radius: 999px;
  background: #5ec8ff;
  border: 3px solid #fff;
  color: #062a4a;
  font-size: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#full-area .nw-slot[data-item=bomb] .nw-count {
  background: #ff6b6b;
  color: #3a0000;
}
#full-area .nw-slot[data-item=sanction] .nw-count {
  background: #ff3b3b;
  color: #fff;
}
#full-area .nw-slot[data-item=research] .nw-count {
  background: #ffd166;
  color: #3a2a00;
}
#full-area .nw-slot .nw-slot-label {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -26px;
  text-align: center;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 0.18em;
  color: #a5b36a;
  white-space: nowrap;
}
#full-area .nw-slot .nw-lock {
  display: none;
  position: absolute;
  inset: 0;
  align-items: center;
  justify-content: center;
  font-size: 36px;
}
#full-area .nw-slot.locked > img {
  opacity: 0.4;
  filter: grayscale(1);
}
#full-area .nw-slot.locked .nw-lock {
  display: flex;
}
#full-area .nw-slot.has::after {
  content: "";
  position: absolute;
  right: -6px;
  bottom: -6px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #ffcc00;
  border: 3px solid #111;
  animation: nwTapHint 1.2s ease-in-out infinite;
}
#full-area #nw-end-round {
  position: absolute;
  right: 40px;
  bottom: 130px;
  z-index: 20;
  font-size: 34px;
  padding: 12px 34px;
  gap: 14px;
}
#full-area #nw-end-round span {
  display: inline-block;
}
#full-area #nw-end-round.ready {
  animation: nwEndPulse 1.6s ease-out infinite;
}
#full-area #nw-end-round.ready span {
  animation: nwBob 1.2s ease-in-out infinite;
}
#full-area #nw-end-round:hover {
  background: #e74c3c;
}
#full-area #nw-armory {
  position: absolute;
  inset: 0;
  z-index: 40;
}
#full-area #nw-armory .nw-backdrop {
  background: rgba(3, 8, 30, 0.35);
}
#full-area #nw-armory-panel {
  left: 550px;
  bottom: 380px;
  width: 820px;
  padding: 16px 20px 18px;
  gap: 8px;
  transform-origin: 50% 100%;
}
#full-area .nw-arow {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 8px 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 3px solid #3a4528;
}
#full-area .nw-arow > img {
  height: 58px;
  width: 58px;
  object-fit: contain;
  flex: none;
  filter: drop-shadow(0 6px 10px rgba(0, 0, 0, 0.5));
}
#full-area .nw-arow .nw-arow-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
#full-area .nw-arow .nw-arow-title {
  font-size: 28px;
  line-height: 1;
}
#full-area .nw-arow .nw-arow-title small {
  font-size: 14px;
  color: #ffcc00;
  letter-spacing: 0.06em;
}
#full-area .nw-arow .nw-arow-sub {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #b8c1d6;
  line-height: 1.3;
}
#full-area .nw-arow.glow {
  border-color: #ffcc00;
  animation: nwRowGlow 1.4s ease-out infinite;
}
#full-area .nw-arow.locked {
  opacity: 0.55;
}
#full-area .nw-stepper {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: none;
}
#full-area .nw-stepper div {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  border: 2px solid #6b7a3a;
  font-size: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
#full-area .nw-stepper div:hover {
  background: rgba(255, 255, 255, 0.2);
}
#full-area .nw-stepper b {
  min-width: 44px;
  text-align: center;
  font-size: 34px;
  line-height: 1;
  font-weight: 400;
}
#full-area .nw-buy, #full-area .nw-owned {
  flex: none;
  width: 180px;
  padding: 10px 8px;
  white-space: nowrap;
  border-radius: 8px;
  font-size: 24px;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
#full-area .nw-buy img, #full-area .nw-owned img {
  height: 22px;
  object-fit: contain;
}
#full-area .nw-buy {
  background: #2ecc71;
  color: #063;
  box-shadow: 0 5px 0 #1a8a4a;
  cursor: pointer;
}
#full-area .nw-buy:hover {
  background: #4ee38a;
}
#full-area .nw-buy:active {
  transform: translateY(4px);
  box-shadow: 0 1px 0 #1a8a4a;
}
#full-area .nw-buy.poor {
  opacity: 0.45;
}
#full-area .nw-buy.shake {
  animation: nwShake 0.5s ease-in-out;
}
#full-area .nw-buy.flash {
  animation: nwBuyFlash 0.45s ease-out;
}
#full-area .nw-owned {
  background: rgba(255, 255, 255, 0.1);
  color: #8ef58e;
}
#full-area .nw-owned img {
  height: 20px;
}
#full-area #nw-picker, #full-area #nw-tech-gate, #full-area #nw-rules, #full-area #nw-rankings, #full-area #nw-income {
  position: absolute;
  inset: 0;
  z-index: 50;
}
#full-area #nw-picker-panel {
  width: 900px;
  padding: 28px 34px 34px;
  gap: 22px;
}
#full-area #nw-picker-panel[data-item=bomb] {
  width: 1500px;
}
#full-area #nw-picker-panel[data-item=sanction] {
  width: 1120px;
}
#full-area #nw-picker-panel[data-item=sanction] .nw-panel-head {
  justify-content: center;
}
#full-area #nw-picker-panel[data-item=sanction] .nw-target-flag {
  display: none;
}
#full-area #nw-picker-targets {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  justify-content: center;
}
#full-area .nw-target {
  width: 250px;
  padding: 18px 14px 16px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.06);
  border: 3px solid #3a4528;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  position: relative;
  cursor: pointer;
  transition: transform 0.12s, border-color 0.12s, background 0.12s;
}
#full-area .nw-target:hover {
  transform: translateY(-6px);
  border-color: #8ef58e;
  background: rgba(46, 204, 113, 0.15);
}
#full-area .nw-target .nw-target-flag {
  position: absolute;
  left: 10px;
  top: 10px;
  width: 40px;
  height: 28px;
  object-fit: cover;
  border-radius: 4px;
  border: 2px solid #fff;
}
#full-area .nw-target .nw-target-img {
  height: 150px;
  width: 150px;
  object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(0, 0, 0, 0.6));
  border-radius: 16px;
}
#full-area .nw-target .nw-target-img.city {
  border-radius: 0;
}
#full-area .nw-target .nw-target-name {
  font-size: 26px;
  text-align: center;
  line-height: 1;
  white-space: nowrap;
}
#full-area .nw-target .nw-target-sub {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 15px;
  color: #a5b36a;
  letter-spacing: 0.06em;
}
#full-area .nw-target .nw-target-count {
  position: absolute;
  right: -10px;
  top: -10px;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px 10px 2px 4px;
  border-radius: 999px;
  background: #ffcc00;
  border: 3px solid #111;
  color: #1a1200;
  font-size: 20px;
}
#full-area .nw-target .nw-target-count img {
  height: 26px;
  width: 26px;
  object-fit: contain;
}
#full-area .nw-target .nw-target-stamp {
  position: absolute;
  left: 50%;
  top: 93px;
  width: 150px;
  height: 150px;
  transform: translate(-50%, -50%) rotate(-14deg);
  opacity: 0.95;
}
#full-area .nw-target .nw-lift {
  width: 100%;
  text-align: center;
  padding: 8px 0;
  border-radius: 8px;
  background: #c0392b;
  color: #fff;
  font-size: 22px;
  letter-spacing: 0.04em;
  border: 3px solid #ff8f7a;
  margin-top: 4px;
  cursor: pointer;
}
#full-area .nw-target .nw-lift:hover {
  background: #e74c3c;
}
#full-area .nw-target.maxed {
  opacity: 0.5;
  cursor: default;
}
#full-area .nw-target.maxed:hover {
  transform: none;
  border-color: #3a4528;
  background: rgba(255, 255, 255, 0.06);
}
#full-area .nw-target.sanctioned {
  cursor: default;
}
#full-area .nw-target.sanctioned:hover {
  transform: none;
  border-color: #3a4528;
  background: rgba(255, 255, 255, 0.06);
}
#full-area #nw-picker-panel[data-item=bomb] .nw-target {
  width: 210px;
}
#full-area #nw-picker-panel[data-item=bomb] .nw-target .nw-target-img {
  height: 110px;
  width: 110px;
}
#full-area #nw-picker-panel[data-item=sanction] .nw-target {
  width: 230px;
}
#full-area .nw-gate {
  width: 760px;
  align-items: center;
  gap: 18px;
  padding: 34px 40px 36px;
}
#full-area .nw-gate p {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 26px;
  color: #cfd6c0;
  text-align: center;
  margin: 0;
}
#full-area .nw-gate p b {
  color: #fff;
}
#full-area .nw-gate .nw-gate-icon {
  position: relative;
}
#full-area .nw-gate .nw-gate-icon img {
  height: 130px;
  object-fit: contain;
  filter: grayscale(1) brightness(0.6);
}
#full-area .nw-gate .nw-gate-icon span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 64px;
}
#full-area .nw-gate .nw-btn {
  font-size: 32px;
  padding: 14px 34px;
}
#full-area #nw-rankings.results .nw-close {
  display: none;
}
#full-area #nw-rankings-panel {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  animation: nwPopCenter 0.35s cubic-bezier(0.2, 0.9, 0.3, 1.2) both;
  width: 880px;
  padding: 24px 26px 30px;
  gap: 12px;
}
#full-area #nw-rankings-panel h2 {
  font-size: 46px;
  padding: 0 4px 6px;
}
#full-area .nw-rank-row {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 12px 22px 12px 16px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 3px solid #3a4528;
  animation: nwSlideRight 0.35s both;
}
#full-area .nw-rank-row .nw-rank-medal {
  width: 72px;
  height: 72px;
  object-fit: contain;
}
#full-area .nw-rank-row .nw-rank-face {
  width: 64px;
  height: 64px;
  border-radius: 12px;
  object-fit: cover;
}
#full-area .nw-rank-row .nw-rank-name {
  flex: 1;
  font-size: 38px;
  line-height: 1;
}
#full-area .nw-rank-row .nw-rank-pts {
  font-size: 46px;
  color: #ffd166;
  line-height: 1;
}
#full-area .nw-rank-row .nw-rank-pts small {
  font-size: 20px;
  color: #a5b36a;
  margin-left: 6px;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area .nw-rank-row.me {
  background: rgba(255, 204, 0, 0.14);
  border-color: #ffcc00;
}
#full-area .nw-rank-row.out {
  opacity: 0.45;
  filter: grayscale(0.7);
}
#full-area .nw-you {
  font-size: 19px;
  background: #ffcc00;
  color: #1a1200;
  padding: 3px 11px;
  border-radius: 999px;
  vertical-align: middle;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area .nw-you.blue {
  background: #5ec8ff;
  color: #062a4a;
}
#full-area .nw-out {
  font-size: 19px;
  color: #ff8f7a;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area #nw-next-round {
  margin-top: 14px;
  font-size: 48px;
  padding: 16px 0;
  animation: nwSlideIn 0.5s 0.5s both;
}
#full-area #nw-income-panel {
  width: 600px;
  padding: 26px 34px 30px;
  gap: 4px;
}
#full-area #nw-income-panel h2 {
  font-size: 52px;
  margin-bottom: 10px;
}
#full-area .nw-income-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-bottom: 2px solid #3a4528;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 28px;
  color: #cfd6c0;
  animation: nwSlideIn 0.4s both;
}
#full-area .nw-income-row b {
  font-family: "LilitaOne-Regular", "Lilita One", "Arial Black", sans-serif;
  font-weight: 400;
  font-size: 40px;
  color: #8ef58e;
}
#full-area .nw-income-row b.neg {
  color: #ff8f7a;
}
#full-area .nw-income-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0 0;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 26px;
  letter-spacing: 0.1em;
  animation: nwPop 0.5s both;
}
#full-area .nw-income-total .nw-total-val {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: "LilitaOne-Regular", "Lilita One", "Arial Black", sans-serif;
  font-weight: 400;
  font-size: 60px;
  color: #8ef58e;
}
#full-area .nw-income-total .nw-total-val img {
  height: 54px;
  object-fit: contain;
}
#full-area .nw-income-total .nw-total-val b {
  font-weight: 400;
}
#full-area .nw-skip {
  position: absolute;
  right: 40px;
  bottom: 124px;
  font-size: 30px;
  padding: 12px 30px;
  letter-spacing: 0.08em;
  gap: 12px;
  z-index: 61;
}
#full-area .nw-skip span {
  font-size: 22px;
}
#full-area .nw-skip:hover {
  background: #3a4528;
}
#full-area #nw-resolve {
  position: absolute;
  inset: 0;
  z-index: 130;
}
#full-area #nw-resolve .nw-skip {
  pointer-events: auto;
  top: 30px;
  right: 150px;
  bottom: auto;
}
#full-area .nw-resolve-scrim {
  position: absolute;
  inset: 0;
  background: rgba(3, 8, 30, 0.6);
}
#full-area .nw-resolve-title-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 230px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding-bottom: 126px;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.85) 57%, rgba(0, 0, 0, 0.85));
}
#full-area #nw-resolve-title {
  position: relative;
  padding: 14px 60px;
  border-radius: 8px;
  background: rgba(16, 22, 14, 0.97);
  border: 4px solid #ffcc00;
  font-size: 48px;
  letter-spacing: 0.08em;
  white-space: nowrap;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8);
  animation: nwSlideUp 0.4s both;
}
#full-area #nw-resolve-sub {
  position: relative;
  z-index: 2;
  display: none;
  align-items: center;
  gap: 16px;
  padding: 12px 30px 12px 14px;
  border-radius: 8px;
  background: rgba(16, 22, 14, 0.96);
  border: 4px solid #ffcc00;
  font-size: 34px;
  letter-spacing: 0.04em;
  white-space: nowrap;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8);
  opacity: 0;
}
#full-area #nw-resolve-sub img {
  height: 56px;
  width: 56px;
  object-fit: cover;
  border-radius: 12px;
}
#full-area #nw-resolve-sub.show {
  display: flex;
  animation: nwSlideUp 0.3s both;
}
#full-area #nw-resolve-sub.strike {
  border-color: #ff6b6b;
}
#full-area #nw-banner {
  position: absolute;
  inset: 0;
  z-index: 65;
  overflow: hidden;
}
#full-area .nw-banner-scrim {
  position: absolute;
  inset: 0;
  background: rgba(3, 8, 30, 0.6);
}
#full-area .nw-rays {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 2400px;
  height: 2400px;
  object-fit: cover;
  border-radius: 50%;
  opacity: 0.5;
  animation: nwRays 40s linear infinite;
}
#full-area .nw-banner-text {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
#full-area .nw-banner-text.go {
  animation: nwBanner 2.6s ease-in-out both;
}
#full-area .nw-banner-num {
  font-size: 240px;
  line-height: 1;
  text-shadow: 0 16px 0 #7a1a00, 0 30px 60px rgba(0, 0, 0, 0.6);
}
#full-area #nw-phone {
  position: absolute;
  inset: 0;
  z-index: 100;
  pointer-events: none;
}
#full-area .nw-phone-body {
  pointer-events: auto;
  position: absolute;
  left: 1400px;
  top: 82px;
  width: 400px;
  height: 730px;
  border-radius: 60px;
  background: #000;
  border: 10px solid #1c2233;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.7);
  overflow: hidden;
  animation: nwSlideUp 0.4s cubic-bezier(0.2, 0.9, 0.3, 1.1) both;
}
#full-area .nw-phone-body::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(#2a3350, #0b0f1c 60%);
}
#full-area .nw-phone-body .nw-phone-glow {
  position: absolute;
  inset: 0;
}
#full-area .nw-phone-body .nw-phone-glow img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.18;
  filter: blur(6px);
}
#full-area .nw-phone-body .nw-phone-notch {
  position: absolute;
  left: 50%;
  top: 14px;
  transform: translateX(-50%);
  width: 130px;
  height: 34px;
  border-radius: 999px;
  background: #000;
}
#full-area .nw-phone-body .nw-phone-status {
  position: absolute;
  left: 0;
  right: 0;
  top: 20px;
  padding: 0 30px;
  display: flex;
  justify-content: space-between;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 18px;
}
#full-area .nw-phone-body .nw-phone-contact {
  position: absolute;
  left: 0;
  right: 0;
  top: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
#full-area .nw-phone-body .nw-phone-avatar {
  position: relative;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  border: 5px solid rgba(255, 255, 255, 0.25);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
}
#full-area .nw-phone-body .nw-phone-avatar img, #full-area .nw-phone-body .nw-phone-avatar video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
#full-area .nw-phone-body .nw-phone-avatar video {
  display: none;
}
#full-area .nw-phone-body .nw-phone-avatar .nw-ring-wave {
  display: none;
  position: absolute;
  inset: -18px;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, 0.5);
  animation: nwRingWaveIn 1.4s ease-out infinite;
}
#full-area .nw-phone-body .nw-phone-avatar .nw-ring-wave.d2 {
  animation-delay: 0.7s;
}
#full-area .nw-phone-body .nw-phone-name {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 34px;
  line-height: 1.15;
  margin-top: 10px;
  padding: 0 20px;
  text-align: center;
  max-width: 100%;
}
#full-area .nw-phone-body .nw-phone-sub {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 600;
  font-size: 22px;
  color: rgba(255, 255, 255, 0.7);
}
#full-area .nw-phone-body .nw-phone-state {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 24px;
  color: rgba(255, 255, 255, 0.85);
  margin-top: 6px;
}
#full-area .nw-phone-body .nw-phone-actions {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 104px;
  display: flex;
  justify-content: center;
  gap: 30px;
  padding: 0 16px;
}
#full-area .nw-phone-body .nw-phone-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
#full-area .nw-phone-body .nw-phone-action span {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 17px;
  letter-spacing: 0.08em;
}
#full-area .nw-phone-body .nw-phone-btn {
  width: 90px;
  height: 90px;
  flex: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid rgba(255, 255, 255, 0.15);
}
#full-area .nw-phone-body .nw-phone-btn svg {
  width: 44px;
  height: 44px;
  fill: #fff;
}
#full-area .nw-phone-body .nw-phone-btn.red {
  background: #e74c3c;
}
#full-area .nw-phone-body .nw-phone-btn.red svg {
  transform: rotate(135deg);
}
#full-area .nw-phone-body .nw-phone-btn.green {
  background: #2ecc71;
}
#full-area .nw-phone-body .nw-phone-btn.grey {
  background: rgba(255, 255, 255, 0.18);
}
#full-area .nw-phone-body .nw-phone-btn.grey.on {
  background: #fff;
}
#full-area .nw-phone-body .nw-phone-btn.grey.on svg {
  fill: #111;
}
#full-area .nw-phone-body .nw-phone-btn.bob {
  animation: nwBob 1s ease-in-out infinite;
}
#full-area #nw-phone.ringing .nw-phone-body {
  animation: nwSlideUp 0.4s cubic-bezier(0.2, 0.9, 0.3, 1.1) both, nwPhoneShake 1s ease-in-out 0.4s infinite;
}
#full-area #nw-phone.ringing .nw-phone-body .nw-ring-wave {
  display: block;
  border-color: rgba(46, 204, 113, 0.7);
}
#full-area #nw-phone.ringing .nw-phone-body .nw-phone-state {
  color: #8ef58e;
  animation: nwBlink 1.2s infinite;
}
#full-area #nw-phone.dialing .nw-phone-body {
  animation: nwSlideUp 0.4s cubic-bezier(0.2, 0.9, 0.3, 1.1) both, nwPhoneShake 1s ease-in-out 0.4s infinite;
}
#full-area #nw-phone.dialing .nw-phone-body .nw-ring-wave {
  display: block;
}
#full-area #nw-phone.dialing .nw-phone-body .nw-phone-state {
  animation: nwBlink 1.2s infinite;
}
#full-area #nw-phone.talking .nw-phone-avatar {
  border-color: #2ecc71;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), 0 0 24px rgba(46, 204, 113, 0.5);
}
#full-area #nw-chat {
  pointer-events: auto;
  position: absolute;
  left: 290px;
  bottom: 250px;
  width: 820px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 27px;
  line-height: 1.35;
  animation: nwSlideUp 0.5s 0.1s cubic-bezier(0.2, 0.9, 0.3, 1.1) both;
}
#full-area #nw-chat-lines {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-height: 520px;
  overflow-y: auto;
  padding: 6px 4px;
  scrollbar-width: none;
}
#full-area #nw-chat-lines::-webkit-scrollbar {
  display: none;
}
#full-area .nw-bubble {
  max-width: 700px;
  padding: 16px 24px;
  border-radius: 24px 24px 24px 6px;
  background: #16234a;
  color: #e8ecf5;
  border: 2px solid #2a4a8a;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  align-self: flex-start;
  animation: nwSlideUp 0.3s both;
}
#full-area .nw-bubble.mine {
  align-self: flex-end;
  border-radius: 24px 24px 6px 24px;
  background: rgba(255, 204, 0, 0.92);
  color: #1a1200;
  border-color: #111;
}
#full-area .nw-bubble.thinking {
  display: flex;
  gap: 8px;
  padding: 18px 26px;
}
#full-area .nw-bubble.thinking span {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #8ec5ff;
  animation: nwDots 1.2s infinite;
}
#full-area .nw-bubble.thinking span:nth-child(2) {
  animation-delay: 0.2s;
}
#full-area .nw-bubble.thinking span:nth-child(3) {
  animation-delay: 0.4s;
}
#full-area #nw-chat-controls {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 20px;
  display: none;
  align-items: center;
  gap: 10px;
  z-index: 2;
}
#full-area #nw-talk-btn {
  position: relative;
  flex: none;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #2a7fd6;
  border: 3px solid rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
#full-area #nw-talk-btn svg {
  width: 24px;
  height: 28px;
}
#full-area #nw-talk-btn.recording {
  background: #e74c3c;
}
#full-area #nw-talk-btn.recording::before {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 4px solid #ff6b6b;
  animation: nwRingWaveIn 1.2s ease-out infinite;
}
#full-area #nw-talk-btn.disabled {
  opacity: 0.4;
  pointer-events: none;
}
#full-area #nw-chat-input {
  flex: 1;
  min-width: 0;
  padding: 12px 20px;
  border-radius: 999px;
  background: rgba(8, 14, 40, 0.85);
  border: 3px solid rgba(255, 255, 255, 0.25);
  color: #fff;
  font: 600 20px "Nunito", "Segoe UI", Arial, sans-serif;
  outline: none;
}
#full-area #nw-chat-input::placeholder {
  color: rgba(255, 255, 255, 0.38);
}
#full-area #nw-rules-panel {
  left: 130px;
  top: 105px;
  width: 1660px;
  padding: 22px 44px 28px;
  gap: 14px;
}
#full-area #nw-rules-panel h2 {
  font-size: 52px;
}
#full-area .nw-rules-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 22px;
}
#full-area .nw-rule {
  display: flex;
  gap: 18px;
  align-items: center;
  padding: 10px 20px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 3px solid #3a4528;
}
#full-area .nw-rule .nw-rule-ico {
  flex: none;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5);
  border: 3px solid #6b7a3a;
  display: flex;
  align-items: center;
  justify-content: center;
}
#full-area .nw-rule .nw-rule-ico img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}
#full-area .nw-rule .nw-rule-tag {
  display: inline-block;
  padding: 4px 14px;
  border-radius: 999px;
  background: #a3b548;
  color: #10140a;
  font-size: 20px;
  letter-spacing: 0.1em;
  line-height: 1.2;
  margin-bottom: 6px;
}
#full-area .nw-rule p {
  margin: 0;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 23px;
  line-height: 1.35;
  color: #e2e8d4;
}
#full-area #nw-gameover {
  position: absolute;
  inset: 0;
  z-index: 80;
  overflow: hidden;
}
#full-area .nw-over-scrim {
  position: absolute;
  inset: 0;
  background: rgba(4, 12, 40, 0.96);
}
#full-area .nw-over-scrim::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 35%, rgba(60, 140, 255, 0.35), rgba(3, 8, 30, 0) 60%);
}
#full-area .nw-over-rays {
  position: absolute;
  left: 50%;
  top: 40%;
  width: 2600px;
  height: 2600px;
  border-radius: 50%;
  opacity: 0.35;
  background: repeating-conic-gradient(rgba(120, 180, 255, 0.35) 0 6deg, transparent 6deg 18deg);
  animation: nwRays 60s linear infinite;
}
#full-area .nw-over-content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 60px;
}
#full-area .nw-over-winner {
  font-size: 108px;
  line-height: 1;
  text-shadow: 0 12px 0 #123a7a, 0 30px 60px rgba(0, 0, 0, 0.6);
  animation: nwPop 0.9s 0.2s cubic-bezier(0.2, 0.9, 0.3, 1.3) both;
}
#full-area #nw-podium {
  display: flex;
  align-items: flex-end;
  gap: 40px;
  margin-top: 20px;
}
#full-area .nw-podium-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  animation: nwSlideUp 0.6s cubic-bezier(0.2, 0.9, 0.3, 1.2) both;
}
#full-area .nw-podium-col .nw-podium-face {
  position: relative;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  border: 8px solid #c0c8d8;
  background: #0f1a3c;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7);
}
#full-area .nw-podium-col .nw-podium-face > img:first-child {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
#full-area .nw-podium-col .nw-podium-face .nw-podium-medal {
  position: absolute;
  right: -30px;
  bottom: -24px;
  width: 96px;
  height: 96px;
  object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(0, 0, 0, 0.7));
}
#full-area .nw-podium-col .nw-podium-name {
  font-size: 34px;
  line-height: 1;
  margin-top: 14px;
}
#full-area .nw-podium-col .nw-podium-pts {
  font-size: 40px;
  color: #ffd166;
  line-height: 1;
}
#full-area .nw-podium-col .nw-podium-pts small {
  font-size: 16px;
  color: #a5b36a;
  margin-left: 6px;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area .nw-podium-col .nw-podium-step {
  width: 220px;
  height: 100px;
  border-radius: 10px 10px 0 0;
  background: linear-gradient(rgba(40, 90, 180, 0.9), rgba(8, 18, 50, 0.95));
  border: 4px solid #3a6bc0;
  border-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: 58px;
  color: rgba(255, 255, 255, 0.25);
}
#full-area .nw-podium-col.p1 {
  animation-delay: 0.6s;
}
#full-area .nw-podium-col.p1 .nw-podium-face {
  width: 200px;
  height: 200px;
  border-color: #ffd166;
}
#full-area .nw-podium-col.p1 .nw-podium-face .nw-podium-medal {
  width: 120px;
  height: 120px;
}
#full-area .nw-podium-col.p1 .nw-podium-name {
  font-size: 44px;
}
#full-area .nw-podium-col.p1 .nw-podium-pts {
  font-size: 52px;
}
#full-area .nw-podium-col.p1 .nw-podium-step {
  width: 260px;
  height: 150px;
  font-size: 68px;
}
#full-area .nw-podium-col.p2 {
  animation-delay: 1.1s;
}
#full-area .nw-podium-col.p3 {
  animation-delay: 1.6s;
}
#full-area .nw-podium-col.p3 .nw-podium-face {
  border-color: #c77b3a;
}
#full-area .nw-podium-col.p3 .nw-podium-step {
  height: 70px;
  font-size: 48px;
}
#full-area #nw-over-rest {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 280px;
  display: flex;
  justify-content: center;
  gap: 24px;
  animation: nwSlideUp 0.5s 2.1s both;
}
#full-area .nw-rest-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 10px 20px 10px 12px;
  border-radius: 8px;
  background: rgba(8, 18, 50, 0.94);
  border: 3px solid #2a4a8a;
  opacity: 0.85;
}
#full-area .nw-rest-row img {
  width: 44px;
  height: 44px;
  object-fit: contain;
}
#full-area .nw-rest-row img.face {
  border-radius: 10px;
  object-fit: cover;
}
#full-area .nw-rest-row span {
  font-size: 26px;
  min-width: 160px;
}
#full-area .nw-rest-row b {
  font-size: 28px;
  color: #ffd166;
  font-weight: 400;
}
#full-area .nw-rest-row.out {
  opacity: 0.5;
  filter: grayscale(0.7);
}
#full-area .nw-over-actions {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 130px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 34px;
  animation: nwSlideUp 0.5s 2.5s both;
}
#full-area .nw-over-btns {
  display: flex;
  gap: 40px;
}
#full-area .nw-over-btns img {
  height: 120px;
  object-fit: contain;
  filter: drop-shadow(0 14px 20px rgba(0, 0, 0, 0.6));
  cursor: pointer;
  pointer-events: auto;
  transition: transform 0.12s;
}
#full-area .nw-over-btns img:hover {
  transform: scale(1.05);
}
#full-area .nw-over-btns img:active {
  transform: scale(0.97);
}
@keyframes nwBankSpend {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.1);
    box-shadow: 0 0 0 10px rgba(142, 245, 142, 0.35);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes nwCsGlowGreen {
  0% {
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 0 0 rgba(46, 204, 113, 0.8);
  }
  100% {
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 0 22px rgba(46, 204, 113, 0);
  }
}
@keyframes nwCsGlowRed {
  0% {
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 0 0 rgba(255, 77, 77, 0.8);
  }
  100% {
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 0 22px rgba(255, 77, 77, 0);
  }
}
@keyframes nwCsSpeak {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
}
@keyframes nwCsBar {
  0%, 100% {
    transform: scaleY(0.35);
  }
  50% {
    transform: scaleY(1);
  }
}
@keyframes nwIntelRing {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 59, 59, 0.9), 0 6px 14px rgba(0, 0, 0, 0.5);
  }
  100% {
    box-shadow: 0 0 0 14px rgba(255, 59, 59, 0), 0 6px 14px rgba(0, 0, 0, 0.5);
  }
}
#full-area .nw-marker .nw-mood {
  position: absolute;
  left: 50%;
  bottom: -4px;
  transform: translateX(-50%);
  padding: 3px 12px;
  border-radius: 999px;
  border: 3px solid #fff;
  font-size: 17px;
  letter-spacing: 0.08em;
  line-height: 1.1;
  white-space: nowrap;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.6);
  z-index: 2;
  pointer-events: none;
}
#full-area .nw-marker .nw-mood.ignored {
  background: #c0392b;
  color: #fff;
}
#full-area .nw-marker .nw-mood.truce {
  background: #2ecc71;
  color: #063;
}
#full-area .nw-marker.talking .nw-mood {
  display: none;
}
#full-area .nw-chip .nw-intel {
  position: absolute;
  left: -22px;
  top: -6px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 4px 4px 2px;
  border-radius: 10px;
  background: #ff3b3b;
  border: 2px solid #fff;
  z-index: 3;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.6);
  animation: nwPop 0.4s both;
}
#full-area .nw-chip .nw-intel img {
  width: 28px;
  height: 19px;
  object-fit: cover;
  border-radius: 3px;
}
#full-area .nw-chip .nw-intel span {
  font-size: 10px;
  letter-spacing: 0.06em;
  line-height: 1;
  color: #fff;
}
#full-area .nw-chip:has(.nw-intel) .nw-chip-circle {
  border-color: #ff3b3b;
  animation: nwIntelRing 1.3s ease-out infinite;
}
#full-area .nw-pill.nw-rank-btn .nw-my-score {
  margin-left: 4px;
  padding: 2px 12px;
  border-radius: 999px;
  background: #ffd166;
  color: #1a1200;
  font-size: 22px;
  font-weight: 400;
}
#full-area .nw-pill.nw-rank-btn .nw-my-score span {
  color: inherit;
  font-size: inherit;
}
#full-area #nw-armory-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 34px 2px 4px;
}
#full-area #nw-armory-head h2 {
  font-size: 44px;
}
#full-area #nw-armory-bank {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 6px 22px 6px 12px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.55);
  border: 3px solid #2ecc71;
}
#full-area #nw-armory-bank img {
  height: 46px;
  width: 50px;
  object-fit: contain;
}
#full-area #nw-armory-bank div {
  display: flex;
  flex-direction: column;
  line-height: 1;
  gap: 2px;
}
#full-area #nw-armory-bank small {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: 0.16em;
  color: #a5b36a;
}
#full-area #nw-armory-bank b {
  font-weight: 400;
  font-size: 44px;
  color: #8ef58e;
}
#full-area #nw-armory-bank.spent {
  animation: nwBankSpend 0.5s ease-out;
}
#full-area #nw-armory-bank.short {
  border-color: #ff3b3b;
  animation: nwShake 0.5s ease-in-out;
}
#full-area #nw-armory-bank.short b {
  color: #ff6b6b;
}
#full-area #nw-rankings-panel {
  top: calc(50% - 30px);
  gap: 8px;
}
#full-area #nw-rankings-panel h2 {
  font-size: 42px;
  padding: 0 4px 2px;
}
#full-area #nw-rankings-rows {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#full-area .nw-rank-row {
  padding: 6px 22px 6px 14px;
}
#full-area .nw-rank-row .nw-rank-medal {
  width: 56px;
  height: 56px;
}
#full-area .nw-rank-row .nw-rank-face {
  width: 50px;
  height: 50px;
}
#full-area .nw-rank-row .nw-rank-name {
  font-size: 32px;
}
#full-area .nw-rank-row .nw-rank-pts {
  font-size: 40px;
}
#full-area #nw-next-round {
  margin-top: 6px;
  font-size: 42px;
  padding: 12px 0;
}
#full-area .nw-score-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 4px;
  padding: 10px 16px 12px;
  border-radius: 8px;
  background: rgba(255, 204, 0, 0.08);
  border: 3px solid #ffcc00;
  animation: nwSlideUp 0.4s 0.3s both;
}
#full-area .nw-score-card .nw-score-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-size: 28px;
  letter-spacing: 0.04em;
}
#full-area .nw-score-card .nw-score-head b {
  color: #ffd166;
  font-weight: 400;
  font-size: 38px;
  margin-left: 10px;
}
#full-area .nw-score-card .nw-score-head small {
  font-size: 16px;
  color: #a5b36a;
  margin-left: 4px;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}
#full-area .nw-score-card .nw-score-head em {
  font-style: normal;
  font-size: 24px;
  color: #8ef58e;
}
#full-area .nw-score-card .nw-score-head em.neg {
  color: #ff8f7a;
}
#full-area .nw-score-card .nw-score-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#full-area .nw-score-card .nw-score-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 3px 12px 3px 4px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.45);
  border: 2px solid #3a4528;
}
#full-area .nw-score-card .nw-score-chip b {
  min-width: 34px;
  text-align: center;
  padding: 2px 8px;
  border-radius: 999px;
  background: #ffd166;
  color: #1a1200;
  font-size: 20px;
  font-weight: 400;
}
#full-area .nw-score-card .nw-score-chip span {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 16px;
  color: #e2e8d4;
  white-space: nowrap;
}
#full-area .nw-score-card .nw-score-chip span i {
  font-style: normal;
  color: #a5b36a;
}
#full-area .nw-score-card .nw-score-chip[data-key=talk] b {
  background: #5ec8ff;
  color: #062a4a;
}
#full-area .nw-score-card .nw-score-chip[data-key=kill] b {
  background: #ff6b6b;
  color: #3a0000;
}
#full-area .nw-score-card .nw-score-chip.zero {
  opacity: 0.6;
}
#full-area .nw-score-card .nw-score-chip.zero b {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}
#full-area .nw-score-card .nw-score-help {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.3;
  color: #a5b36a;
}
#full-area #nw-play.call-live #nw-toasts {
  bottom: 430px;
}
#full-area #nw-talk-btn {
  width: 62px;
  height: 62px;
}
#full-area #nw-phone[data-turn=you] #nw-talk-btn {
  background: #2ecc71;
  border-color: #fff;
  animation: nwCsGlowGreen 1.2s ease-out infinite;
}
#full-area #nw-call-status {
  pointer-events: auto;
  position: absolute;
  left: 470px;
  top: 690px;
  width: 900px;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 16px 30px 16px 18px;
  border-radius: 24px;
  background: rgba(10, 16, 36, 0.96);
  border: 5px solid rgba(255, 255, 255, 0.35);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7);
  animation: nwSlideUp 0.3s both;
}
#full-area #nw-call-status .nw-cs-icon {
  position: relative;
  flex: none;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.12);
  border: 4px solid rgba(255, 255, 255, 0.8);
}
#full-area #nw-call-status .nw-cs-icon svg {
  width: 56px;
  height: 56px;
  fill: #fff;
  display: none;
}
#full-area #nw-call-status .nw-cs-icon .nw-cs-dots {
  display: none;
  gap: 8px;
}
#full-area #nw-call-status .nw-cs-icon .nw-cs-dots span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #8ec5ff;
  animation: nwDots 1.2s infinite;
}
#full-area #nw-call-status .nw-cs-icon .nw-cs-dots span:nth-child(2) {
  animation-delay: 0.2s;
}
#full-area #nw-call-status .nw-cs-icon .nw-cs-dots span:nth-child(3) {
  animation-delay: 0.4s;
}
#full-area #nw-call-status .nw-cs-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#full-area #nw-call-status .nw-cs-title {
  font-size: 54px;
  line-height: 1;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
#full-area #nw-call-status .nw-cs-sub {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 26px;
  line-height: 1.2;
  color: #fff;
}
#full-area #nw-call-status .nw-cs-left {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
}
#full-area #nw-call-status .nw-cs-level {
  display: none;
  flex: none;
  align-items: flex-end;
  gap: 6px;
  height: 84px;
}
#full-area #nw-call-status .nw-cs-level i {
  width: 13px;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.2);
  transform-origin: 50% 100%;
  transition: background 0.08s;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(1) {
  height: 32px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(2) {
  height: 40px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(3) {
  height: 48px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(4) {
  height: 56px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(5) {
  height: 64px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(6) {
  height: 72px;
}
#full-area #nw-call-status .nw-cs-level i:nth-child(7) {
  height: 80px;
}
#full-area #nw-call-status .nw-cs-level i.on {
  background: #fff;
}
#full-area #nw-phone[data-turn=thinking] #nw-call-status {
  border-color: #8ec5ff;
}
#full-area #nw-phone[data-turn=thinking] #nw-call-status .nw-cs-dots {
  display: flex;
}
#full-area #nw-phone[data-turn=thinking] #nw-call-status .nw-cs-icon {
  border-color: #8ec5ff;
}
#full-area #nw-phone[data-turn=thinking] #nw-call-status .nw-cs-title {
  color: #8ec5ff;
}
#full-area #nw-phone[data-turn=leader] #nw-call-status {
  border-color: #ffb347;
}
#full-area #nw-phone[data-turn=leader] #nw-call-status .nw-cs-icon {
  background: #ffb347;
  border-color: #fff;
  animation: nwCsSpeak 0.8s ease-in-out infinite;
}
#full-area #nw-phone[data-turn=leader] #nw-call-status .nw-cs-speaker {
  display: block;
  fill: #3a1f00;
}
#full-area #nw-phone[data-turn=leader] #nw-call-status .nw-cs-title {
  color: #ffb347;
}
#full-area #nw-phone[data-turn=you] #nw-call-status {
  cursor: pointer;
  border-color: #2ecc71;
  animation: nwSlideUp 0.3s both, nwCsGlowGreen 1.2s ease-out infinite;
}
#full-area #nw-phone[data-turn=you] #nw-call-status .nw-cs-icon {
  background: #2ecc71;
  border-color: #fff;
  animation: nwBob 1s ease-in-out infinite;
}
#full-area #nw-phone[data-turn=you] #nw-call-status .nw-cs-mic {
  display: block;
}
#full-area #nw-phone[data-turn=you] #nw-call-status .nw-cs-title {
  color: #8ef58e;
}
#full-area #nw-phone[data-turn=you] #nw-call-status:hover {
  background: rgba(14, 50, 30, 0.96);
}
#full-area #nw-phone[data-turn=listening] #nw-call-status {
  cursor: pointer;
  border-color: #ff4d4d;
  background: rgba(58, 8, 8, 0.96);
  animation: nwSlideUp 0.3s both, nwCsGlowRed 1s ease-out infinite;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status .nw-cs-icon {
  background: #e74c3c;
  border-color: #fff;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status .nw-cs-mic {
  display: block;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status .nw-cs-title {
  color: #ff9a9a;
  animation: nwBlink 1.2s infinite;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status .nw-cs-level {
  display: flex;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i {
  background: #fff;
  animation: nwCsBar 0.9s ease-in-out infinite;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(1) {
  animation-delay: 0.11s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(2) {
  animation-delay: 0.22s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(3) {
  animation-delay: 0.33s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(4) {
  animation-delay: 0.44s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(5) {
  animation-delay: 0.55s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(6) {
  animation-delay: 0.66s;
}
#full-area #nw-phone[data-turn=listening] #nw-call-status.nolevel .nw-cs-level i:nth-child(7) {
  animation-delay: 0.77s;
}
#full-area #nw-phone[data-turn=muted] #nw-call-status {
  border-color: #9aa0ad;
}
#full-area #nw-phone[data-turn=muted] #nw-call-status .nw-cs-mic {
  display: block;
  opacity: 0.45;
}
#full-area #nw-phone[data-turn=muted] #nw-call-status .nw-cs-title {
  color: #c5c9d2;
}
#full-area #nw-phone[data-turn=ending] #nw-call-status {
  border-color: #c0392b;
}
#full-area #nw-phone[data-turn=ending] #nw-call-status .nw-cs-speaker {
  display: block;
}
#full-area #nw-phone[data-turn=ending] #nw-call-status .nw-cs-icon {
  background: #c0392b;
}
#full-area #nw-phone[data-turn=ending] #nw-call-status .nw-cs-title {
  color: #ff8f7a;
}
/*# sourceMappingURL=style.css.map */
