/* NIKARINA Showcase — landing hub */
.nk-showcase {
  --nk-accent: #00c6ff;
  --nk-accent-2: #7c3bff;
  --nk-glass: rgba(8, 12, 28, 0.72);
  --nk-border: rgba(255, 255, 255, 0.08);
  margin: 2rem 0 0;
  padding: 0 1.5rem 2rem;
  max-height: min(70vh, 720px);
  overflow: auto;
  scrollbar-width: thin;
}

.nk-showcase__inner { max-width: 1200px; margin: 0 auto; }

.nk-showcase__title {
  font-family: inherit;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  margin: 0 0 0.35rem;
  background: linear-gradient(90deg, #fff, var(--nk-accent));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.nk-showcase__subtitle { opacity: 0.75; margin: 0 0 1rem; font-size: 0.95rem; }
.nk-showcase__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-bottom: 1.5rem; }

.nk-showcase__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1rem;
}

.nk-showcase__panel {
  background: var(--nk-glass);
  border: 1px solid var(--nk-border);
  border-radius: 12px;
  padding: 1rem 1.1rem;
  backdrop-filter: blur(8px);
}

.nk-showcase__panel-title {
  margin: 0 0 0.75rem;
  font-size: 0.85rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.85;
}

.nk-online-stat { text-align: center; padding: 0.5rem 0; }
.nk-online-stat__value { display: block; font-size: 2rem; font-weight: 700; color: var(--nk-accent); line-height: 1.1; }
.nk-online-stat__label { font-size: 0.8rem; opacity: 0.7; }

.nk-events__item { display: flex; gap: 0.65rem; align-items: flex-start; padding: 0.45rem 0; border-bottom: 1px solid var(--nk-border); }
.nk-events__item:last-child { border-bottom: 0; }
.nk-events__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--nk-color, var(--nk-accent)); margin-top: 0.45rem; flex-shrink: 0; box-shadow: 0 0 8px var(--nk-color, var(--nk-accent)); }
.nk-events__body strong { display: block; font-size: 0.92rem; }
.nk-events__timer { font-size: 0.78rem; opacity: 0.7; font-variant-numeric: tabular-nums; }

.nk-feed { list-style: none; margin: 0; padding: 0; max-height: 180px; overflow: auto; }
.nk-feed__item { padding: 0.4rem 0; font-size: 0.85rem; border-bottom: 1px dashed var(--nk-border); animation: nk-feed-in 0.4s ease; }
.nk-feed__item--enchant { color: #ffd166; }
.nk-feed__item--clan { color: #06d6a0; }
.nk-feed__item--pvp { color: #ef476f; }

@keyframes nk-feed-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

.nk-tops { list-style: none; margin: 0; padding: 0; counter-reset: nk-top; }
.nk-tops li { display: grid; grid-template-columns: 2rem 1fr auto; gap: 0.5rem; align-items: center; padding: 0.35rem 0; font-size: 0.88rem; }
.nk-tops__rank { font-weight: 700; color: var(--nk-accent); }
.nk-tops__val { opacity: 0.75; font-variant-numeric: tabular-nums; }

.nk-gallery { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.5rem; }
.nk-gallery__item { border-radius: 8px; overflow: hidden; aspect-ratio: 16/10; }
.nk-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.25s; }
.nk-gallery__item:hover img { transform: scale(1.05); }

.nk-streamers { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.nk-streamers__card {
  display: flex; align-items: center; gap: 0.5rem;
  padding: 0.45rem 0.65rem; border-radius: 999px;
  background: rgba(255,255,255,0.05); text-decoration: none; color: inherit; font-size: 0.85rem;
}
.nk-streamers__avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.nk-streamers__live { background: #e63946; color: #fff; font-size: 0.65rem; padding: 0.1rem 0.35rem; border-radius: 4px; font-weight: 700; }

.nk-social { display: flex; gap: 0.75rem; flex-wrap: wrap; margin-bottom: 0.75rem; }
.nk-social__link { color: var(--nk-accent); text-decoration: none; font-size: 0.9rem; }
.nk-discord-widget { border-radius: 8px; margin-top: 0.5rem; }

.nk-comparison { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
.nk-comparison th, .nk-comparison td { padding: 0.35rem 0.4rem; border-bottom: 1px solid var(--nk-border); text-align: left; }
.nk-comparison th:nth-child(2) { color: var(--nk-accent); }

.nk-roadmap { list-style: none; margin: 0; padding: 0; }
.nk-roadmap__item { display: flex; gap: 0.75rem; padding: 0.4rem 0; font-size: 0.85rem; align-items: center; }
.nk-roadmap__date { opacity: 0.65; min-width: 4.5rem; font-variant-numeric: tabular-nums; }
.nk-roadmap__item--done .nk-roadmap__title { text-decoration: line-through; opacity: 0.55; }
.nk-roadmap__item--current .nk-roadmap__title { color: var(--nk-accent); font-weight: 600; }

.nk-team { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.nk-team__member { text-align: center; width: 88px; font-size: 0.75rem; }
.nk-team__member img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; margin-bottom: 0.35rem; border: 2px solid var(--nk-border); }
.nk-team__member strong { display: block; font-size: 0.8rem; }

.nk-faq__item { border-bottom: 1px solid var(--nk-border); padding: 0.35rem 0; font-size: 0.85rem; }
.nk-faq__item summary { cursor: pointer; font-weight: 600; }
.nk-faq__item p { margin: 0.35rem 0 0; opacity: 0.8; }

.nk-donate-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 0.65rem; }
.nk-donate-card {
  text-align: center; padding: 0.65rem; border-radius: 10px;
  background: rgba(255,255,255,0.04); position: relative;
}
.nk-donate-card img { width: 40px; height: 40px; object-fit: contain; }
.nk-donate-card__badge { position: absolute; top: 4px; right: 4px; font-size: 0.6rem; background: #ffd166; color: #111; padding: 0.1rem 0.3rem; border-radius: 4px; }
.nk-donate-card a { display: inline-block; margin-top: 0.35rem; font-size: 0.75rem; color: var(--nk-accent); }

/* Season themes */
.nk-season--winter { --nk-accent: #a8dadc; --nk-accent-2: #457b9d; }
.nk-season--summer { --nk-accent: #06d6a0; --nk-accent-2: #ffd166; }
.nk-season--halloween { --nk-accent: #ff6b35; --nk-accent-2: #7209b7; }

/* Promo popup */
.nk-promo-popup { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; }
.nk-promo-popup[hidden] { display: none !important; }
.nk-promo-popup__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.65); }
.nk-promo-popup__box {
  position: relative; max-width: 420px; width: 92%; padding: 1.5rem;
  background: #12182b; border: 1px solid var(--nk-border); border-radius: 16px; text-align: center;
}
.nk-promo-popup__close { position: absolute; top: 0.5rem; right: 0.75rem; background: none; border: 0; color: #fff; font-size: 1.5rem; cursor: pointer; }
.nk-promo-popup__img { max-width: 100%; border-radius: 8px; margin-bottom: 1rem; }

/* LK widgets */
.nk-lk-vote { display: inline-flex; flex-direction: column; align-items: center; gap: 0.25rem; text-decoration: none; }
.nk-lk-vote img { width: 88px; height: 31px; object-fit: contain; }

@media (max-width: 768px) {
  .nk-showcase { padding: 0 0.75rem 1.5rem; max-height: none; }
}
