/* ============================================================
   IMPERIAWORLD 2 — REDESIGN V2 (tenant imperiaworld2 only)
   Metin2 fantasy soul · Lonvel layout · ice-blue + gold
   Scoped: body.theme-iw2 (frontend) / body.theme-iw2-shop (shop)
   Zenthara NON usa questo file.
   ============================================================ */

body.theme-iw2 {
  --iw2-accent: #4aa3ff;
  --iw2-accent-bright: #8fd0ff;
  --iw2-accent-soft: rgba(74, 163, 255, 0.12);
  --iw2-accent-line: rgba(74, 163, 255, 0.4);
  --iw2-gold: #c9a96e;
  --iw2-gold-bright: #ecd9ad;
  --iw2-gold-line: rgba(201, 169, 110, 0.4);
  --iw2-glow: 0.7;

  --iw2-bg: #080c14;
  --iw2-bg-panel: linear-gradient(160deg, #101724 0%, #0a0f1a 100%);
  --iw2-line: rgba(120, 150, 200, 0.16);
  --iw2-ink: #eef2f8;
  --iw2-ink-dim: #b4c0d4;
  --iw2-ink-faint: #707e98;

  --iw2-display: 'Cinzel', serif;
  --iw2-body: 'Alegreya Sans', sans-serif;
}

/* ---------- base ---------- */
body.theme-iw2 {
  background-color: var(--iw2-bg) !important;
  background-image: none !important;
  color: var(--iw2-ink) !important;
  font-family: var(--iw2-body);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.theme-iw2::before {
  /* sostituisce il dark overlay dell'app layout: ambient glow v2 */
  content: '';
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background:
    radial-gradient(ellipse 70% 45% at 50% -5%, rgba(74, 163, 255, calc(0.13 * var(--iw2-glow))) 0%, transparent 60%),
    radial-gradient(ellipse 40% 30% at 85% 15%, rgba(201, 169, 110, 0.05) 0%, transparent 70%) !important;
}
body.theme-iw2 ::selection { background: var(--iw2-accent); color: #fff; }
body.theme-iw2::-webkit-scrollbar { width: 11px; }
body.theme-iw2::-webkit-scrollbar-track { background: #060910; }
body.theme-iw2::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #2a3548, #1a2233);
  border-radius: 6px; border: 2px solid #060910;
}
body.theme-iw2::-webkit-scrollbar-thumb:hover { background: #34415c; }
body.theme-iw2 :focus-visible { outline: 2px solid var(--iw2-accent-line); outline-offset: 2px; border-radius: 4px; }

body.theme-iw2 h1, body.theme-iw2 h2, body.theme-iw2 h3, body.theme-iw2 h4,
body.theme-iw2 .font-cinzel {
  font-family: var(--iw2-display) !important;
}

/* ---------- floating embers (ice sparks) ---------- */
.iw2-ember {
  position: fixed; bottom: -10px; border-radius: 50%;
  background: var(--iw2-accent-bright);
  pointer-events: none; z-index: 0;
  opacity: 0;
  animation: iw2EmberRise linear infinite;
}
@keyframes iw2EmberRise {
  0% { transform: translateY(0) translateX(0); opacity: 0; }
  12% { opacity: calc(0.55 * var(--iw2-glow, 0.7)); }
  85% { opacity: calc(0.25 * var(--iw2-glow, 0.7)); }
  100% { transform: translateY(-105vh) translateX(40px); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .iw2-ember { display: none; } }

/* ============================================================
   NAV (restyle del markup esistente navigation.blade.php)
   ============================================================ */
body.theme-iw2 div[x-data*="isOpen"][style*="linear-gradient(180deg, rgba(15,10,5,0.98)"] {
  background: rgba(6, 9, 16, 0.96) !important;
  border-bottom: 1px solid var(--iw2-line) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  position: sticky !important; top: 0; z-index: 100 !important;
  box-shadow: 0 1px 0 rgba(201, 169, 110, 0.18);
}
body.theme-iw2 .nav a, body.theme-iw2 .nav button {
  font-family: var(--iw2-display) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  color: #d6deeb !important;
  background-image: none !important;
  background-color: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  transition: color 0.18s, background 0.18s, border-color 0.18s !important;
}
body.theme-iw2 .nav a span, body.theme-iw2 .nav button span {
  color: inherit !important;
  font-size: 0.78rem !important;
  text-shadow: none !important;
  font-family: inherit !important;
}
body.theme-iw2 .nav a svg, body.theme-iw2 .nav a i { color: currentColor !important; opacity: 0.75; }
body.theme-iw2 .nav a:hover {
  color: var(--iw2-gold-bright) !important;
  background-color: rgba(201, 169, 110, 0.06) !important;
  border-color: var(--iw2-gold-line) !important;
}
/* Active page link (legacy active = shadow 0_0_15px/0.4) → box blu freddo (niente oro/marrone nel menu) */
body.theme-iw2 .nav a.bg-gradient-to-r {
  color: var(--iw2-accent-bright) !important;
  background-color: rgba(74, 163, 255, 0.12) !important;
  border-color: var(--iw2-accent-line) !important;
}
body.theme-iw2 .nav a.bg-gradient-to-r svg, body.theme-iw2 .nav a.bg-gradient-to-r i { color: var(--iw2-accent-bright) !important; opacity: 1; }
/* Download GAME button ONLY (classe unica shadow-[0_0_20px_rgba(201,169,110,0.3)]) → btn-primary BLU
   (il gradiente oro scuro risultava marrone e stonava col tema freddo). */
body.theme-iw2 .nav a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] {
  background-image: linear-gradient(160deg, #2c6fd1 0%, #1a4fa8 55%, #143c82 100%) !important;
  background-color: transparent !important;
  color: #f2f8ff !important;
  border: 1px solid rgba(143, 208, 255, 0.55) !important;
  box-shadow: 0 0 calc(28px * var(--iw2-glow)) rgba(74, 163, 255, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
  text-shadow: 0 1px 6px rgba(0, 20, 60, 0.6) !important;
}
body.theme-iw2 .nav a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] svg,
body.theme-iw2 .nav a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] span { color: #f2f8ff !important; opacity: 1; }
body.theme-iw2 .nav a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"]:hover { filter: brightness(1.12); }
/* language chip */
body.theme-iw2 .nav button[class*="bg-[#1a1408]"] {
  background: rgba(5, 8, 14, 0.4) !important;
  border: 1px solid var(--iw2-line) !important;
  color: var(--iw2-ink-dim) !important;
  border-radius: 7px !important;
}
body.theme-iw2 .nav button[class*="bg-[#1a1408]"]:hover { border-color: var(--iw2-gold-line) !important; color: var(--iw2-gold-bright) !important; }
/* dropdown lingua / menu mobile container */
body.theme-iw2 [x-show="open"][style*="linear-gradient(135deg, #2a1f0f"],
body.theme-iw2 [x-show="isOpen"][style*="linear-gradient(135deg, #2a1f0f"] {
  background: linear-gradient(160deg, #131b2b 0%, #0a0f1a 100%) !important;
  border: 1px solid var(--iw2-gold-line) !important;
  border-radius: 9px !important;
  box-shadow: 0 22px 50px -12px rgba(0, 0, 0, 0.85), 0 0 calc(28px * var(--iw2-glow)) rgba(74, 163, 255, 0.08) !important;
}
body.theme-iw2 [x-show="open"] a, body.theme-iw2 [x-show="isOpen"] a {
  color: var(--iw2-ink-dim) !important;
  border-radius: 6px !important;
}
body.theme-iw2 [x-show="open"] a:hover,
body.theme-iw2 [x-show="open"] a[class*="bg-[#78350f]"] {
  background: rgba(201, 169, 110, 0.1) !important;
  color: var(--iw2-gold-bright) !important;
}
/* menu mobile: hover blu freddo (era oro) */
body.theme-iw2 [x-show="isOpen"] a:hover { background: rgba(74, 163, 255, 0.1) !important; color: var(--iw2-accent-bright) !important; }
body.theme-iw2 [x-show="isOpen"] a.bg-gradient-to-r {
  background: var(--iw2-accent-soft) !important;
  border-color: var(--iw2-accent-line) !important;
  color: var(--iw2-accent-bright) !important;
}
body.theme-iw2 [x-show="isOpen"] a.bg-gradient-to-r svg,
body.theme-iw2 [x-show="isOpen"] a.bg-gradient-to-r i { color: var(--iw2-accent-bright) !important; }
/* menu mobile: bottone Download Game pieno BLU (era ambra) */
body.theme-iw2 [x-show="isOpen"] a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] {
  background-image: linear-gradient(160deg, #2c6fd1 0%, #1a4fa8 55%, #143c82 100%) !important;
  border-color: rgba(143, 208, 255, 0.55) !important;
  color: #f2f8ff !important;
}
body.theme-iw2 [x-show="isOpen"] a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] svg,
body.theme-iw2 [x-show="isOpen"] a[class*="shadow-[0_0_20px_rgba(201,169,110,0.3)"] span { color: #f2f8ff !important; }
/* server switcher (livewire) */
body.theme-iw2 .nav [class*="server-switcher"] button { border-color: var(--iw2-line) !important; }

/* online chip nel nav */
.iw2-online-chip {
  display: inline-flex; align-items: center; gap: 7px; flex: none;
  font-family: var(--iw2-body); font-size: 12.5px; font-weight: 700;
  color: #7be0a3 !important; letter-spacing: 0.03em;
  border: 1px solid rgba(123, 224, 163, 0.3) !important; border-radius: 999px;
  background: rgba(123, 224, 163, 0.07) !important;
  padding: 6px 12px; white-space: nowrap;
  text-transform: none !important;
}
.iw2-online-chip .iw2-od {
  width: 7px; height: 7px; border-radius: 50%; background: #7be0a3;
  box-shadow: 0 0 calc(10px * var(--iw2-glow, 0.7)) #7be0a3;
  animation: iw2Pulse 2s ease-in-out infinite;
}
.iw2-online-chip .iw2-ok { color: var(--iw2-ink-faint) !important; font-weight: 500; }
@keyframes iw2Pulse { 50% { opacity: 0.3; } }
@media (max-width: 640px) { .iw2-online-chip { display: none; } }

/* ============================================================
   HERO V2 (markup nuovo)
   ============================================================ */
.iw2-hero {
  position: relative; z-index: 1;
  display: flex; align-items: center; justify-content: center;
  text-align: center; overflow: hidden;
  padding: 44px 24px 84px;
  background:
    radial-gradient(ellipse 55% 85% at 50% -10%, rgba(74, 163, 255, 0.1), transparent 65%),
    linear-gradient(180deg, #0b1119 0%, #080c14 100%);
}
.iw2-hero-content { position: relative; z-index: 2; max-width: 860px; }
.iw2-hero-eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: var(--iw2-display); font-size: 11px; font-weight: 600;
  letter-spacing: 0.4em; text-transform: uppercase; color: var(--iw2-gold-bright);
  border: 1px solid var(--iw2-gold-line); border-radius: 999px;
  background: rgba(8, 12, 20, 0.55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  padding: 9px 20px 9px 16px;
}
.iw2-hero-eyebrow .iw2-dot {
  width: 6px; height: 6px; border-radius: 50%; background: var(--iw2-accent-bright);
  box-shadow: 0 0 calc(12px * var(--iw2-glow)) var(--iw2-accent-bright);
  animation: iw2Pulse 1.8s ease-in-out infinite;
}
/* animated logo */
.iw2-hero-logo { position: relative; margin: 24px auto 2px; max-width: min(440px, 78%); }
.iw2-hero-logo .iw2-logo-aura {
  position: absolute; inset: -22%; pointer-events: none; z-index: 0;
  background: radial-gradient(ellipse 55% 50% at 50% 52%,
    rgba(74, 163, 255, 0.32) 0%,
    rgba(74, 163, 255, 0.10) 45%,
    transparent 72%);
  filter: blur(6px);
  animation: iw2AuraBreath 4.6s ease-in-out infinite;
  opacity: calc(0.8 * var(--iw2-glow));
}
@keyframes iw2AuraBreath { 50% { transform: scale(1.12); opacity: calc(1.05 * var(--iw2-glow, 0.7)); } }
.iw2-hero-logo img {
  position: relative; z-index: 1;
  width: 100%; height: auto; display: block;
  filter: drop-shadow(0 0 calc(46px * var(--iw2-glow)) rgba(74, 163, 255, 0.45)) drop-shadow(0 14px 40px rgba(0,0,0,0.8));
  animation: iw2LogoFloat 6.5s ease-in-out infinite;
}
@keyframes iw2LogoFloat { 50% { transform: translateY(-7px); } }
.iw2-hero-logo .iw2-logo-shine {
  position: absolute; inset: 0; z-index: 2; pointer-events: none;
  -webkit-mask-image: var(--iw2-logo-url); mask-image: var(--iw2-logo-url);
  -webkit-mask-size: contain; mask-size: contain;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center; mask-position: center;
  background: linear-gradient(115deg,
    transparent 30%,
    rgba(255, 255, 255, 0.0) 40%,
    rgba(220, 240, 255, 0.55) 50%,
    rgba(143, 208, 255, 0.35) 54%,
    transparent 64%);
  background-size: 280% 100%;
  background-position: 120% 0;
  animation: iw2LogoSheen 5.2s ease-in-out infinite;
  mix-blend-mode: screen;
}
@keyframes iw2LogoSheen {
  0%, 55% { background-position: 120% 0; }
  75%, 100% { background-position: -60% 0; }
}
.iw2-hero-logo .iw2-logo-spark {
  position: absolute; z-index: 3; pointer-events: none;
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--iw2-accent-bright);
  box-shadow: 0 0 calc(10px * var(--iw2-glow)) var(--iw2-accent-bright), 0 0 calc(22px * var(--iw2-glow)) var(--iw2-accent);
  opacity: 0;
  animation: iw2SparkRise 3.4s ease-out infinite;
}
@keyframes iw2SparkRise {
  0% { opacity: 0; transform: translateY(6px) scale(0.6); }
  12% { opacity: 1; }
  60% { opacity: 0.7; }
  100% { opacity: 0; transform: translateY(-46px) scale(0.25); }
}
.iw2-hero-logo .iw2-logo-flash {
  position: absolute; inset: 0; z-index: 2; pointer-events: none;
  -webkit-mask-image: var(--iw2-logo-url); mask-image: var(--iw2-logo-url);
  -webkit-mask-size: contain; mask-size: contain;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center; mask-position: center;
  background: var(--iw2-accent-bright);
  mix-blend-mode: screen; opacity: 0;
}
.iw2-hero-logo .iw2-logo-flash.iw2-strike { animation: iw2LogoFlash 0.85s ease-out forwards; }
@keyframes iw2LogoFlash {
  0% { opacity: 0; }
  6% { opacity: 0.5; }
  14% { opacity: 0.1; }
  22% { opacity: 0.38; }
  100% { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .iw2-hero-logo img, .iw2-hero-logo .iw2-logo-aura, .iw2-hero-logo .iw2-logo-spark { animation: none; }
  .iw2-hero-logo .iw2-logo-shine { display: none; }
}
.iw2-hero-tag {
  font-size: clamp(15.5px, 1.8vw, 18px); font-weight: 400;
  color: #cfdaeb; letter-spacing: 0.02em; line-height: 1.55;
  max-width: 480px; margin: 14px auto 0;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.9);
  text-wrap: balance;
}
.iw2-hero-tag .iw2-em { color: var(--iw2-gold-bright); font-family: var(--iw2-display); font-weight: 700; font-size: 0.85em; letter-spacing: 0.1em; }
.iw2-hero-ctas { display: flex; gap: 14px; justify-content: center; margin-top: 26px; flex-wrap: wrap; }
.iw2-hero-note { margin-top: 16px; font-size: 13.5px; color: var(--iw2-ink-dim); }
.iw2-hero-note a { color: var(--iw2-accent-bright) !important; text-decoration: underline; text-underline-offset: 3px; }

/* ---------- lightning ---------- */
.iw2-bolt-layer { position: absolute; inset: 0; pointer-events: none; overflow: hidden; z-index: 1; }
.iw2-bolt {
  position: absolute; top: 0;
  width: 190px; height: 78%;
  opacity: 0;
}
.iw2-bolt svg { width: 100%; height: 100%; display: block; }
.iw2-bolt path {
  fill: none; stroke: var(--iw2-accent-bright); stroke-width: 2.6;
  stroke-linejoin: round; stroke-linecap: round;
  filter: drop-shadow(0 0 calc(7px * var(--iw2-glow)) var(--iw2-accent-bright))
          drop-shadow(0 0 calc(20px * var(--iw2-glow)) var(--iw2-accent));
}
.iw2-bolt path.iw2-branch { stroke-width: 1.4; opacity: 0.8; }
.iw2-bolt.iw2-strike { animation: iw2BoltFlash 0.85s ease-out forwards; }
@keyframes iw2BoltFlash {
  0% { opacity: 0; }
  6% { opacity: 1; }
  14% { opacity: 0.25; }
  22% { opacity: 0.95; }
  36% { opacity: 0.12; }
  48% { opacity: 0.5; }
  100% { opacity: 0; }
}
.iw2-sky-flash {
  position: absolute; inset: 0; pointer-events: none; opacity: 0; z-index: 0;
  background: radial-gradient(ellipse 60% 55% at var(--iw2-fx, 50%) 0%,
    rgba(143, 208, 255, 0.26) 0%,
    rgba(74, 163, 255, 0.10) 45%,
    transparent 75%);
}
.iw2-sky-flash.iw2-strike { animation: iw2SkyFlash 0.85s ease-out forwards; }
@keyframes iw2SkyFlash {
  0% { opacity: 0; }
  6% { opacity: 1; }
  16% { opacity: 0.2; }
  24% { opacity: 0.8; }
  100% { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .iw2-bolt.iw2-strike, .iw2-sky-flash.iw2-strike { animation: none; opacity: 0; }
}

/* ---------- countdown bar ---------- */
.iw2-count-bar {
  position: relative; z-index: 3;
  margin: -54px auto 0; max-width: 740px;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  background: linear-gradient(160deg, rgba(18, 26, 42, 0.94), rgba(10, 15, 26, 0.96));
  border: 1px solid var(--iw2-gold-line); border-radius: 12px;
  padding: 18px 28px;
  box-shadow: 0 26px 60px -18px rgba(0, 0, 0, 0.85), 0 0 calc(40px * var(--iw2-glow)) rgba(74, 163, 255, 0.12);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.iw2-count-info .iw2-t {
  font-family: var(--iw2-display); font-weight: 700; font-size: 14px;
  letter-spacing: 0.18em; text-transform: uppercase; color: var(--iw2-gold-bright);
}
.iw2-count-info .iw2-d { font-size: 13.5px; color: var(--iw2-ink-dim); margin-top: 3px; letter-spacing: 0.04em; }
.iw2-count-cells { display: flex; gap: 16px; align-items: center; }
.iw2-count-cell { text-align: center; min-width: 52px; }
.iw2-count-num {
  font-family: var(--iw2-display); font-weight: 700; font-size: 30px; line-height: 1;
  color: var(--iw2-accent-bright);
  text-shadow: 0 0 calc(22px * var(--iw2-glow)) rgba(74, 163, 255, 0.65);
  font-variant-numeric: tabular-nums;
}
.iw2-count-unit { font-size: 10.5px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--iw2-ink-faint); margin-top: 6px; }
.iw2-count-sep { font-family: var(--iw2-display); font-size: 24px; color: var(--iw2-ink-faint); padding-bottom: 14px; }
@media (max-width: 1080px) {
  .iw2-count-bar { flex-direction: column; gap: 14px; text-align: center; margin-top: -40px; }
}
@media (max-width: 640px) {
  .iw2-count-cells { gap: 10px; }
  .iw2-count-cell { min-width: 44px; }
}

/* ---------- buttons v2 ---------- */
.iw2-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  font-family: var(--iw2-display) !important; font-weight: 700; font-size: 13px;
  letter-spacing: 0.2em; text-transform: uppercase;
  text-decoration: none; cursor: pointer;
  border-radius: 6px; padding: 14px 28px;
  position: relative; overflow: hidden;
  transition: transform 0.2s, box-shadow 0.25s, filter 0.2s;
  white-space: nowrap; border: 1px solid transparent;
}
.iw2-btn:active { transform: translateY(1px); }
.iw2-btn-primary {
  background: linear-gradient(160deg, #2c6fd1 0%, #1a4fa8 55%, #143c82 100%) !important;
  color: #f2f8ff !important;
  border-color: rgba(143, 208, 255, 0.55) !important;
  box-shadow: 0 0 calc(34px * var(--iw2-glow, 0.7)) rgba(74, 163, 255, 0.4),
              inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
  text-shadow: 0 1px 6px rgba(0, 20, 60, 0.6);
}
.iw2-btn-primary:hover { filter: brightness(1.12); box-shadow: 0 0 calc(50px * var(--iw2-glow, 0.7)) rgba(74, 163, 255, 0.55), inset 0 1px 0 rgba(255,255,255,0.3) !important; transform: translateY(-1px); }
/* CTA secondario (hero DOWNLOAD CLIENT): ghost blu freddo invece dell'oro-marrone */
.iw2-btn-gold {
  background: rgba(74, 163, 255, 0.06) !important;
  color: var(--iw2-accent-bright) !important;
  border-color: var(--iw2-accent-line) !important;
  box-shadow: inset 0 1px 0 rgba(143, 208, 255, 0.15) !important;
}
.iw2-btn-gold:hover { background: rgba(74, 163, 255, 0.12) !important; border-color: rgba(143, 208, 255, 0.7) !important; transform: translateY(-1px); }
.iw2-btn .iw2-sheen {
  position: absolute; top: 0; bottom: 0; width: 40%;
  left: -60%; transform: skewX(-20deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
  animation: iw2Sheen 3.8s ease-in-out infinite;
}
@keyframes iw2Sheen { 0%, 60% { left: -60%; } 100% { left: 130%; } }
@media (prefers-reduced-motion: reduce) { .iw2-btn .iw2-sheen { animation: none; } }
@media (max-width: 640px) { .iw2-hero-ctas .iw2-btn { width: 100%; } }

/* ============================================================
   PANEL V2 (nuovi componenti features / steps / panel generico)
   ============================================================ */
.iw2-panel {
  position: relative;
  background: var(--iw2-bg-panel);
  border: 1px solid var(--iw2-line);
  border-radius: 10px;
}
.iw2-panel::before, .iw2-panel::after {
  content: ""; position: absolute; width: 14px; height: 14px; pointer-events: none;
  border-color: var(--iw2-gold-line); border-style: solid;
}
.iw2-panel::before { top: -1px; left: -1px; border-width: 1.5px 0 0 1.5px; border-radius: 10px 0 0 0; }
.iw2-panel::after { bottom: -1px; right: -1px; border-width: 0 1.5px 1.5px 0; border-radius: 0 0 10px 0; }
.iw2-panel-head {
  display: flex; align-items: center; gap: 10px;
  padding: 14px 18px 12px;
  border-bottom: 1px solid var(--iw2-line);
}
.iw2-panel-head .iw2-rune {
  width: 8px; height: 8px; transform: rotate(45deg); flex: none;
  background: linear-gradient(135deg, var(--iw2-gold-bright), var(--iw2-gold));
  box-shadow: 0 0 calc(10px * var(--iw2-glow)) rgba(201, 169, 110, 0.6);
}
.iw2-panel-title {
  font-family: var(--iw2-display) !important; font-weight: 700; font-size: 14px;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--iw2-gold-bright) !important;
  margin: 0;
}

/* ---------- server features ---------- */
.iw2-features-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.iw2-feature {
  display: flex; gap: 13px; align-items: flex-start;
  padding: 15px 18px;
  border-bottom: 1px solid rgba(120, 150, 200, 0.08);
}
.iw2-feature:nth-child(odd) { border-right: 1px solid rgba(120, 150, 200, 0.08); }
.iw2-feature:nth-last-child(-n+2) { border-bottom: none; }
.iw2-feature .iw2-gem {
  flex: none; width: 8px; height: 8px; transform: rotate(45deg); margin-top: 7px;
  background: linear-gradient(135deg, var(--iw2-gold-bright), var(--iw2-gold));
  box-shadow: 0 0 calc(9px * var(--iw2-glow)) rgba(201, 169, 110, 0.5);
}
.iw2-feature .iw2-t { font-family: var(--iw2-display); font-weight: 700; font-size: 13.5px; letter-spacing: 0.06em; color: var(--iw2-ink); }
.iw2-feature .iw2-t b { color: var(--iw2-accent-bright); font-weight: 700; }
.iw2-feature .iw2-d { font-size: 13.5px; color: var(--iw2-ink-dim); margin-top: 3px; line-height: 1.5; }

/* ---------- how to start steps ---------- */
.iw2-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.iw2-step { position: relative; padding: 20px 20px 22px; }
.iw2-step + .iw2-step { border-left: 1px solid rgba(120, 150, 200, 0.1); }
.iw2-step-n {
  font-family: var(--iw2-display); font-weight: 800; font-size: 30px; line-height: 1;
  background: linear-gradient(180deg, var(--iw2-gold-bright) 0%, var(--iw2-gold) 55%, #8a6d3b 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.iw2-step-t { font-family: var(--iw2-display); font-weight: 700; font-size: 14px; letter-spacing: 0.1em; text-transform: uppercase; margin-top: 10px; color: var(--iw2-ink); }
.iw2-step-d { font-size: 13.5px; color: var(--iw2-ink-dim); margin-top: 6px; line-height: 1.55; }
.iw2-step-d a { color: var(--iw2-accent-bright) !important; text-decoration: none; }
.iw2-step-d a:hover { text-decoration: underline; }
@media (max-width: 900px) {
  .iw2-features-grid, .iw2-steps { grid-template-columns: 1fr; }
  .iw2-feature:nth-child(odd) { border-right: none; }
  .iw2-step + .iw2-step { border-left: none; border-top: 1px solid rgba(120, 150, 200, 0.1); }
}

/* ============================================================
   FOOTER V2 (markup nuovo)
   ============================================================ */
.iw2-footer { position: relative; z-index: 1; margin-top: 72px; border-top: 1px solid var(--iw2-line); background: #060910 !important; }
.iw2-footer::before {
  content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent 10%, var(--iw2-gold-line) 50%, transparent 90%);
}
.iw2-footer-inner { max-width: 1140px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 36px 28px 30px; }
.iw2-footer-logo img { height: 54px; width: auto; opacity: 0.9; }
.iw2-footer-links { display: flex; gap: 8px 22px; flex-wrap: wrap; justify-content: center; }
.iw2-footer-link {
  font-family: var(--iw2-display) !important; font-size: 10.5px !important; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--iw2-ink-faint) !important; text-decoration: none; transition: color 0.15s;
}
.iw2-footer-link:hover { color: var(--iw2-gold-bright) !important; }
.iw2-footer-social { display: flex; gap: 10px; }
.iw2-footer-social a {
  width: 36px; height: 36px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--iw2-line) !important; color: var(--iw2-ink-dim) !important;
  background: rgba(5, 8, 14, 0.5) !important;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.iw2-footer-social a:hover { border-color: var(--iw2-gold-line) !important; color: var(--iw2-gold-bright) !important; background: rgba(201, 169, 110, 0.08) !important; }
.iw2-footer-note { font-size: 12.5px; color: var(--iw2-ink-faint) !important; text-align: center; }
.iw2-footer-note span { color: var(--iw2-gold) !important; }

/* ============================================================
   OVERRIDE LAYER — markup legacy Imperia (pannelli amber → v2)
   ============================================================ */

/* Pannelli principali (user-panel, top10, community, server-stats, ecc.) */
body.theme-iw2 [style*="linear-gradient(135deg, #2a1f0f 0%, #1a1408 50%, #0f0a05 100%)"] {
  background: linear-gradient(160deg, #101724 0%, #0a0f1a 100%) !important;
  border-color: var(--iw2-line) !important;
  box-shadow: 0 10px 32px -14px rgba(0, 0, 0, 0.7) !important;
}
body.theme-iw2 [style*="border: 2px solid #8b7355"] { border: 1px solid var(--iw2-line) !important; }
body.theme-iw2 .panel, body.theme-iw2 .ranking-panel, body.theme-iw2 .community-links-panel {
  background: linear-gradient(160deg, #101724 0%, #0a0f1a 100%) !important;
  border: 1px solid var(--iw2-line) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 32px -14px rgba(0, 0, 0, 0.7) !important;
  position: relative;
}
/* ornamenti oro angolari sui pannelli sidebar */
body.theme-iw2 .panel::before, body.theme-iw2 .ranking-panel::before, body.theme-iw2 .community-links-panel::before {
  content: ""; position: absolute; width: 14px; height: 14px; pointer-events: none; z-index: 2;
  top: -1px; left: -1px; border-style: solid; border-color: var(--iw2-gold-line);
  border-width: 1.5px 0 0 1.5px; border-radius: 10px 0 0 0;
}
body.theme-iw2 .panel::after, body.theme-iw2 .ranking-panel::after, body.theme-iw2 .community-links-panel::after {
  content: ""; position: absolute; width: 14px; height: 14px; pointer-events: none; z-index: 2;
  bottom: -1px; right: -1px; border-style: solid; border-color: var(--iw2-gold-line);
  border-width: 0 1.5px 1.5px 0; border-radius: 0 0 10px 0;
}

/* Barre decorative 4px amber → hairline oro */
body.theme-iw2 [style*="height: 4px"][style*="#78350f"] {
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, var(--iw2-gold-line) 30%, var(--iw2-gold) 50%, var(--iw2-gold-line) 70%, transparent 100%) !important;
}

/* Header pannelli */
body.theme-iw2 [style*="background: rgba(139,115,85,0.15)"] {
  background: transparent !important;
  border-bottom: 1px solid var(--iw2-line) !important;
}
body.theme-iw2 .panel h2, body.theme-iw2 .ranking-panel h2, body.theme-iw2 .community-links-panel h2 {
  font-family: var(--iw2-display) !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--iw2-gold-bright) !important;
}
body.theme-iw2 .panel h2 i, body.theme-iw2 .ranking-panel h2 i, body.theme-iw2 .community-links-panel h2 i { color: var(--iw2-gold) !important; }

/* Corpo pannelli scuro */
body.theme-iw2 [style*="linear-gradient(180deg, rgba(15,10,5,0.95)"] {
  background: transparent !important;
}
/* Card interne (stat, link community, eventi) */
body.theme-iw2 [style*="linear-gradient(135deg, #2a1f0f 0%, #1a1408 100%)"] {
  background: rgba(5, 8, 14, 0.45) !important;
  border-color: var(--iw2-line) !important;
}

/* Input fields (user panel login, register, forms) */
body.theme-iw2 [style*="background-color: #0f0a05"] {
  background-color: rgba(5, 8, 14, 0.7) !important;
  border-color: var(--iw2-line) !important;
}
body.theme-iw2 input[type="text"], body.theme-iw2 input[type="password"], body.theme-iw2 input[type="email"] {
  color: var(--iw2-ink) !important;
  font-family: var(--iw2-body) !important;
}
body.theme-iw2 input::placeholder { color: var(--iw2-ink-faint) !important; }

/* Bottoni submit + CTA amber → blu primario v2 */
body.theme-iw2 button[type="submit"],
body.theme-iw2 .auth-login-submit,
body.theme-iw2 [style*="linear-gradient(135deg, #92400e 0%, #d97706 50%, #f59e0b 100%)"],
body.theme-iw2 [style*="linear-gradient(135deg, #78350f 0%, #d97706 50%, #f59e0b 100%)"] {
  background: linear-gradient(160deg, #2c6fd1 0%, #1a4fa8 55%, #143c82 100%) !important;
  color: #f2f8ff !important;
  border: 1px solid rgba(143, 208, 255, 0.55) !important;
  border-radius: 6px !important;
  font-family: var(--iw2-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  box-shadow: 0 0 calc(28px * var(--iw2-glow)) rgba(74, 163, 255, 0.35), inset 0 1px 0 rgba(255,255,255,0.25) !important;
  text-shadow: 0 1px 6px rgba(0, 20, 60, 0.6) !important;
  transition: filter 0.2s, transform 0.2s, box-shadow 0.25s !important;
}
body.theme-iw2 button[type="submit"]:hover,
body.theme-iw2 [style*="linear-gradient(135deg, #92400e 0%, #d97706 50%, #f59e0b 100%)"]:hover {
  filter: brightness(1.12);
  box-shadow: 0 0 calc(44px * var(--iw2-glow)) rgba(74, 163, 255, 0.5), inset 0 1px 0 rgba(255,255,255,0.3) !important;
}
/* Cerchietti-icona + CTA amber 2-stop (sidebar stats/community, ranking, character) → BLU v2
   (erano resi marroni, stonavano col tema freddo) */
body.theme-iw2 a[style*="linear-gradient(135deg, #78350f 0%, #d97706 100%)"],
body.theme-iw2 button[style*="linear-gradient(135deg, #78350f 0%, #d97706 100%)"],
body.theme-iw2 div[style*="linear-gradient(135deg, #78350f 0%, #d97706 100%)"] {
  background: linear-gradient(160deg, #2c6fd1 0%, #143c82 100%) !important;
  color: #f2f8ff !important;
  border-color: rgba(143, 208, 255, 0.5) !important;
}
body.theme-iw2 [style*="linear-gradient(135deg, #78350f 0%, #d97706 100%)"] i,
body.theme-iw2 [style*="linear-gradient(135deg, #78350f 0%, #d97706 100%)"] svg { color: #f2f8ff !important; }

/* Palette testi legacy → v2 */
body.theme-iw2 [style*="color: #c9a96e"]:not(i):not(svg) { color: var(--iw2-ink-dim) !important; }
body.theme-iw2 [style*="color:#c9a96e"]:not(i):not(svg) { color: var(--iw2-ink-dim) !important; }
body.theme-iw2 [style*="color: #fcd34d"]:not(i):not(svg) { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 [style*="color:#fcd34d"]:not(i):not(svg) { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 [style*="color: #8b7355"]:not(i):not(svg) { color: var(--iw2-ink-faint) !important; }
body.theme-iw2 [style*="color: #f59e0b"]:not(i):not(svg) { color: var(--iw2-accent-bright) !important; }
body.theme-iw2 [style*="color: #d97706"]:not(i):not(svg) { color: var(--iw2-accent-bright) !important; }
body.theme-iw2 i[style*="#c9a96e"], body.theme-iw2 i[style*="#fcd34d"] { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 i[style*="#f59e0b"], body.theme-iw2 i[style*="#d97706"] { color: var(--iw2-gold) !important; }
body.theme-iw2 i[style*="#8b7355"] { color: var(--iw2-ink-faint) !important; }
body.theme-iw2 .text-\[\#c9a96e\] { color: var(--iw2-ink-dim) !important; }
body.theme-iw2 .text-\[\#fcd34d\] { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 [class*="text-[#c9a96e"] { color: var(--iw2-ink-dim) !important; }
body.theme-iw2 [class*="text-[#fcd34d"] { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 [class*="text-[#8b7355"] { color: var(--iw2-ink-faint) !important; }
body.theme-iw2 [class*="text-[#f59e0b"] { color: var(--iw2-accent-bright) !important; }

/* Bordi legacy → v2 */
body.theme-iw2 [style*="border: 1px solid #8b7355"] { border-color: var(--iw2-line) !important; }
body.theme-iw2 [style*="1px solid #8b7355"] { border-color: var(--iw2-line) !important; }
body.theme-iw2 [style*="rgba(139,115,85"] { border-color: var(--iw2-line) !important; }
body.theme-iw2 [style*="139, 115, 85"] { border-color: var(--iw2-line) !important; }
body.theme-iw2 [class*="border-[#8b7355"] { border-color: var(--iw2-line) !important; }
body.theme-iw2 [class*="border-[#c9a96e"] { border-color: var(--iw2-gold-line) !important; }
body.theme-iw2 [class*="bg-[#1a1408"] { background-color: rgba(10, 15, 26, 0.85) !important; }
body.theme-iw2 [class*="bg-[#78350f"] { background-color: rgba(74, 163, 255, 0.1) !important; }

/* Heading gradient amber → oro v2 */
body.theme-iw2 h1[style*="linear-gradient(135deg, #fcd34d 0%, #c9a96e 50%, #b45309 100%)"],
body.theme-iw2 [style*="linear-gradient(180deg, #f5d77e 0%, #c9a96e 50%, #a67c52 100%)"] {
  background: linear-gradient(180deg, var(--iw2-gold-bright) 0%, var(--iw2-gold) 55%, #8a6d3b 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-family: var(--iw2-display) !important;
  letter-spacing: 0.06em !important;
  filter: drop-shadow(0 0 calc(24px * var(--iw2-glow)) rgba(201, 169, 110, 0.25));
}
body.theme-iw2 hr[style*="linear-gradient(to right, transparent, #c9a96e 20%"] {
  background: linear-gradient(to right, transparent, var(--iw2-gold-line) 20%, var(--iw2-gold) 50%, var(--iw2-gold-line) 80%, transparent) !important;
}

/* News category pills */
body.theme-iw2 button[wire\:click^="setCategory"] {
  font-family: var(--iw2-display) !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 8px 14px !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  color: var(--iw2-ink-dim) !important;
  transition: color 0.15s, border-color 0.15s, background 0.15s !important;
}
body.theme-iw2 button[wire\:click^="setCategory"]:hover { color: var(--iw2-gold-bright) !important; }
body.theme-iw2 button[wire\:click^="setCategory"][style*="linear-gradient"] {
  color: var(--iw2-gold-bright) !important;
  border-color: var(--iw2-gold-line) !important;
  background: rgba(201, 169, 110, 0.08) !important;
}
/* news filter bar border */
body.theme-iw2 [style*="border-bottom: 1px solid rgba(139,115,85,0.35)"] {
  border-bottom-color: var(--iw2-line) !important;
}

/* Articoli news (page content) */
body.theme-iw2 .page {
  background: var(--iw2-bg-panel);
  border: 1px solid var(--iw2-line);
  border-radius: 10px;
  padding: 22px 24px;
}
body.theme-iw2 .page a { color: var(--iw2-accent-bright); }
body.theme-iw2 article[class*="from-gray-800"] {
  background: var(--iw2-bg-panel) !important;
  border: 1px solid var(--iw2-line) !important;
  border-radius: 10px !important;
}
body.theme-iw2 article [class*="bg-[#78350f]"] { background: transparent !important; border-bottom: 1px solid var(--iw2-line) !important; }

/* Empty state news */
body.theme-iw2 [style*="linear-gradient(135deg, rgba(26,20,8,0.7)"] {
  background: linear-gradient(160deg, rgba(16, 23, 36, 0.7), rgba(10, 15, 26, 0.7)) !important;
  border: 1px dashed var(--iw2-line) !important;
}

/* NOVA banner / shop incentive / alert banners → pannello v2 */
body.theme-iw2 [style*="linear-gradient(135deg, #1a0a05 0%, #2a1205 50%, #1a0a05 100%)"] {
  background: linear-gradient(160deg, #101724 0%, #0a0f1a 100%) !important;
  border: 1px solid var(--iw2-accent-line) !important;
  box-shadow: 0 0 calc(32px * var(--iw2-glow)) rgba(74, 163, 255, 0.15) !important;
}
body.theme-iw2 [style*="border: 2px solid #f97316"] { border: 1px solid var(--iw2-accent-line) !important; }
body.theme-iw2 [style*="linear-gradient(90deg, #dc2626, #f97316, #fbbf24, #f97316, #dc2626)"] {
  background: linear-gradient(90deg, transparent, var(--iw2-accent), var(--iw2-accent-bright), var(--iw2-accent), transparent) !important;
  height: 1px !important;
}
/* NOVA banner: icona fire (radial) + heading + barra fuoco + badge -> blu v2 */
body.theme-iw2 [style*="radial-gradient(circle at 30% 30%, #fde047 0%, #f97316 40%, #b91c1c 100%)"] {
  background: radial-gradient(circle at 35% 30%, #8fd0ff 0%, #2c6fd1 45%, #143c82 100%) !important;
  border-color: rgba(143, 208, 255, 0.6) !important;
  box-shadow: 0 0 28px rgba(74, 163, 255, 0.55), inset 0 2px 8px rgba(255,255,255,0.2) !important;
}
body.theme-iw2 [style*="linear-gradient(180deg, #fde047 0%, #f97316 50%, #b91c1c 100%)"] {
  background: linear-gradient(180deg, #8fd0ff 0%, #4aa3ff 50%, #1a4fa8 100%) !important;
  -webkit-background-clip: text !important; background-clip: text !important; -webkit-text-fill-color: transparent !important;
}
body.theme-iw2 [style*="linear-gradient(120deg, transparent 35%, rgba(251,146,60,0.18)"] {
  background: linear-gradient(120deg, transparent 35%, rgba(74,163,255,0.18) 50%, transparent 65%) !important;
}
/* badge/pill arancioni (NOVA pin hero + banner badge) -> blu */
body.theme-iw2 [style*="rgba(249,115,22,0.22)"] { background: rgba(74,163,255,0.18) !important; border-color: rgba(143,208,255,0.5) !important; color: var(--iw2-accent-bright) !important; }
body.theme-iw2 [style*="linear-gradient(135deg, rgba(220,38,38,0.22) 0%, rgba(251,146,60,0.25) 100%)"] {
  background: linear-gradient(135deg, rgba(44,111,209,0.22) 0%, rgba(74,163,255,0.25) 100%) !important;
  border-color: rgba(143,208,255,0.55) !important; color: var(--iw2-accent-bright) !important;
}
body.theme-iw2 [style*="background:#f97316"], body.theme-iw2 [style*="background: #f97316"] { background: var(--iw2-accent) !important; box-shadow: 0 0 8px var(--iw2-accent) !important; }
body.theme-iw2 [style*="color:#fdba74"], body.theme-iw2 [style*="color: #fdba74"],
body.theme-iw2 [style*="color:#fde047"], body.theme-iw2 [style*="color: #d4c4a8"] { color: var(--iw2-accent-bright) !important; }
/* watermark podio (#f59e0b) -> tenue blu */
body.theme-iw2 .podium-rank-watermark { color: rgba(74, 163, 255, 0.18) !important; }
/* barre decorative h-1 amber (nova/shop-incentive/hero) -> blu */
body.theme-iw2 [style*="linear-gradient(90deg, #78350f, #d97706, #f59e0b, #d97706, #78350f)"],
body.theme-iw2 [style*="linear-gradient(90deg, transparent, #d97706, #f59e0b, #d97706, transparent)"] {
  background: linear-gradient(90deg, transparent, var(--iw2-accent), var(--iw2-accent-bright), var(--iw2-accent), transparent) !important;
}

/* Podium (top10 ranking widget) */
body.theme-iw2 .podium-wrap, body.theme-iw2 [class*="podium-wrap"] {
  background: radial-gradient(at 50% 100%, rgba(74, 163, 255, 0.12) 0%, rgba(0, 0, 0, 0) 65%),
              linear-gradient(180deg, rgba(8, 12, 20, 0.7) 0%, rgba(16, 23, 36, 0.5) 100%) !important;
  border-bottom-color: var(--iw2-line) !important;
}
body.theme-iw2 .podium-skeleton-card {
  background: linear-gradient(180deg, rgba(16, 23, 36, 0.5), rgba(8, 12, 20, 0.5)) !important;
  border: 1px solid var(--iw2-line) !important;
}
body.theme-iw2 .podium-empty, body.theme-iw2 .podium-empty i { color: var(--iw2-ink-faint) !important; }

/* Tabelle (rank pages) */
body.theme-iw2 thead, body.theme-iw2 thead tr {
  background: linear-gradient(160deg, rgba(16, 23, 36, 0.85) 0%, rgba(10, 15, 26, 0.85) 100%) !important;
  border-bottom: 1px solid var(--iw2-gold-line) !important;
}
body.theme-iw2 thead th, body.theme-iw2 th {
  color: var(--iw2-gold-bright) !important;
  font-family: var(--iw2-display) !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-color: var(--iw2-line) !important;
}
body.theme-iw2 td { border-color: rgba(120, 150, 200, 0.08) !important; }
body.theme-iw2 tbody tr { border-bottom: 1px solid rgba(120, 150, 200, 0.08) !important; }
body.theme-iw2 tbody tr:hover { background: rgba(74, 163, 255, 0.05) !important; }

/* Sidebar items (rank page categorie) */
body.theme-iw2 .sidebar-item { color: var(--iw2-ink-dim) !important; border-radius: 6px !important; }
body.theme-iw2 .sidebar-item:hover { color: var(--iw2-gold-bright) !important; background: rgba(201, 169, 110, 0.08) !important; }
body.theme-iw2 .sidebar-item.active {
  color: var(--iw2-accent-bright) !important;
  background: var(--iw2-accent-soft) !important;
  border: 1px solid var(--iw2-accent-line) !important;
}
body.theme-iw2 .left-sidebar, body.theme-iw2 .main-content, body.theme-iw2 .download-container, body.theme-iw2 .gaming-card {
  background: linear-gradient(160deg, #101724 0%, #0a0f1a 100%) !important;
  border-color: var(--iw2-line) !important;
}

/* Pagination Livewire */
body.theme-iw2 nav[role="navigation"] span, body.theme-iw2 nav[role="navigation"] a { color: var(--iw2-ink-dim) !important; }
body.theme-iw2 nav[role="navigation"] a:hover { color: var(--iw2-gold-bright) !important; }

/* Barre decorative pagina (h-1 amber) */
body.theme-iw2 [style*="linear-gradient(90deg, transparent, #d97706, #f59e0b, #d97706, transparent)"] {
  background: linear-gradient(90deg, transparent 5%, var(--iw2-gold-line) 50%, transparent 95%) !important;
}

/* Card auth/register wrapper */
body.theme-iw2 [style*="background: rgba(15,10,5,0.8)"],
body.theme-iw2 [style*="background:rgba(15,10,5,0.8)"] {
  background: linear-gradient(160deg, rgba(16, 23, 36, 0.92), rgba(10, 15, 26, 0.95)) !important;
  border-color: var(--iw2-line) !important;
}
body.theme-iw2 label[style*="Cinzel"] {
  color: var(--iw2-ink-faint) !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-size: 0.68rem !important;
}

/* cookie-consent: bottone Accept ambra -> blu v2 */
body.theme-iw2 [style*="linear-gradient(135deg, #b45309 0%, #d97706 100%)"] {
  background: linear-gradient(160deg, #2c6fd1 0%, #143c82 100%) !important;
  border-color: rgba(143, 208, 255, 0.55) !important;
  box-shadow: 0 0 15px rgba(74, 163, 255, 0.4) !important;
}
/* cookie-consent: icona ambra -> blu v2 */
body.theme-iw2 [style*="background: rgba(245,158,11,0.2)"] {
  background: rgba(74, 163, 255, 0.15) !important;
  border-color: rgba(74, 163, 255, 0.4) !important;
}
body.theme-iw2 [style*="background: rgba(245,158,11,0.2)"] svg { color: var(--iw2-accent-bright) !important; }

/* Alert / error boxes mantengono i loro colori (rosso/verde) */

/* Scroll reveal */
@media (prefers-reduced-motion: no-preference) {
  .iw2-reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1); }
  .iw2-reveal.iw2-in { opacity: 1; transform: none; }
}

/* ============================================================
   SHOP (body.theme-iw2-shop) — Buy Coins e item shop
   ============================================================ */
body.theme-iw2-shop {
  background: #080c14 !important;
  color: #eef2f8 !important;
  font-family: 'Alegreya Sans', sans-serif;
}
body.theme-iw2-shop .main-box {
  background: linear-gradient(160deg, #101724 0%, #0a0f1a 100%) !important;
  border: 1px solid rgba(120, 150, 200, 0.16) !important;
  box-shadow: 0 30px 70px -20px rgba(0, 0, 0, 0.8) !important;
  border-radius: 10px;
}
body.theme-iw2-shop .top-bar {
  background: rgba(6, 9, 16, 0.96) !important;
  border-bottom: 1px solid rgba(120, 150, 200, 0.16) !important;
}
body.theme-iw2-shop h1, body.theme-iw2-shop h2, body.theme-iw2-shop h3 { font-family: 'Cinzel', serif !important; }
body.theme-iw2-shop [style*="linear-gradient(135deg, #2a1f0f 0%, #1a1408 50%, #0f0a05 100%)"] {
  background: linear-gradient(160deg, #131b2b 0%, #0a0f1a 100%) !important;
  border-color: rgba(120, 150, 200, 0.16) !important;
}
body.theme-iw2-shop [style*="border: 2px solid #8b7355"] { border: 1px solid rgba(120, 150, 200, 0.16) !important; }
body.theme-iw2-shop [style*="linear-gradient(180deg, rgba(15,10,5,0.95)"] { background: transparent !important; }
body.theme-iw2-shop [style*="color: #c9a96e"]:not(i):not(svg) { color: #b4c0d4 !important; }
body.theme-iw2-shop [style*="color: #fcd34d"]:not(i):not(svg) { color: #ecd9ad !important; }
body.theme-iw2-shop [style*="color: #8b7355"]:not(i):not(svg) { color: #707e98 !important; }
body.theme-iw2-shop [style*="color: #f59e0b"] { color: #8fd0ff !important; }
body.theme-iw2-shop [style*="linear-gradient(180deg, #f5d77e 0%, #c9a96e 50%, #a67c52 100%)"] {
  background: linear-gradient(180deg, #ecd9ad 0%, #c9a96e 55%, #8a6d3b 100%) !important;
  -webkit-background-clip: text !important; background-clip: text !important; -webkit-text-fill-color: transparent !important;
}
/* happy hour banner → oro v2 */
body.theme-iw2-shop [style*="linear-gradient(135deg, rgba(120,53,15,0.4)"] {
  background: linear-gradient(90deg, #c9a96e 0%, #ecd9ad 50%, #c9a96e 100%) !important;
  border: none !important;
  box-shadow: 0 0 34px rgba(201, 169, 110, 0.35) !important;
  animation: iw2HhPulse 2.4s ease-in-out infinite;
}
body.theme-iw2-shop [style*="linear-gradient(135deg, rgba(120,53,15,0.4)"] * { color: #3b2c08 !important; }
@keyframes iw2HhPulse { 50% { box-shadow: 0 0 54px rgba(201, 169, 110, 0.5); } }
@media (prefers-reduced-motion: reduce) { body.theme-iw2-shop [style*="linear-gradient(135deg, rgba(120,53,15,0.4)"] { animation: none; } }
/* payment gateway cards */
body.theme-iw2-shop a[style*="box-shadow: 0 0 15px rgba(139,115,85,0.15)"] {
  border: 1px solid rgba(120, 150, 200, 0.16) !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 40px -16px rgba(0, 0, 0, 0.8) !important;
}
body.theme-iw2-shop a[style*="box-shadow: 0 0 15px rgba(139,115,85,0.15)"]:hover {
  border-color: rgba(201, 169, 110, 0.4) !important;
  box-shadow: 0 16px 40px -16px rgba(0, 0, 0, 0.8), 0 0 26px rgba(201, 169, 110, 0.15) !important;
}
body.theme-iw2-shop [style*="rgba(201,169,110,0.15)"] { background: rgba(74, 163, 255, 0.1) !important; border-color: rgba(74, 163, 255, 0.4) !important; }
body.theme-iw2-shop input, body.theme-iw2-shop select, body.theme-iw2-shop textarea {
  background: rgba(5, 8, 14, 0.7) !important;
  border: 1px solid rgba(120, 150, 200, 0.16) !important;
  color: #eef2f8 !important;
}
body.theme-iw2-shop input:focus, body.theme-iw2-shop select:focus {
  border-color: rgba(74, 163, 255, 0.4) !important;
  box-shadow: 0 0 0 3px rgba(74, 163, 255, 0.12) !important;
  outline: none !important;
}
body.theme-iw2-shop button[type="submit"], body.theme-iw2-shop .btn-primary {
  background: linear-gradient(160deg, #2c6fd1 0%, #1a4fa8 55%, #143c82 100%) !important;
  color: #f2f8ff !important;
  border: 1px solid rgba(143, 208, 255, 0.55) !important;
  border-radius: 6px !important;
  font-family: 'Cinzel', serif !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  box-shadow: 0 0 28px rgba(74, 163, 255, 0.35), inset 0 1px 0 rgba(255,255,255,0.25) !important;
}
/* shop top-bar "Buy coins" CTA (shop.scss usa gradiente ambra) -> blu v2 */
body.theme-iw2-shop .buy-coins-button {
  background: linear-gradient(135deg, #2c6fd1 0%, #143c82 100%) !important;
  color: #f2f8ff !important;
  box-shadow: 0 4px 25px rgba(74, 163, 255, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}
body.theme-iw2-shop [style*="rgba(139,115,85"] { border-color: rgba(120, 150, 200, 0.16) !important; }
