/* ================================================
   NA WĘDKĘ PORTAL v3 — main.css
   ================================================ */

:root {
  --deep:   #060d18;
  --dark:   #0a1628;
  --navy:   #0d2040;
  --blue:   #1a3a6b;
  --cyan:   #4fc3f7;
  --gold:   #c9922a;
  --gold-l: #f0b84a;
  --gold-b: #ffd166;
  --white:  #f2f0eb;
  --gray:   #8a9ab0;
  --light:  #c5cdd8;
  --red:    #e53935;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
  background: var(--deep);
  color: var(--white);
  font-family: 'Barlow', sans-serif;
  overflow-x: hidden;
}

/* ── GeneratePress reset ────────────────── */
.site-header,
.main-navigation,
.site-footer,
#page {
  display: none !important;
}

/* ── HEADER ────────────────────────────── */
.nw-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  background: rgba(6,13,24,0.97);
  border-bottom: 1px solid rgba(201,146,42,0.18);
  backdrop-filter: blur(12px);
  transition: all 0.3s;
}

.nw-header-in {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.nw-logo-link { display: flex; align-items: center; text-decoration: none; }
.nw-logo { height: 48px; width: auto; filter: drop-shadow(0 0 12px rgba(201,146,42,0.4)); transition: filter 0.3s; }
.nw-logo:hover { filter: drop-shadow(0 0 20px rgba(240,184,74,0.7)); }

.nw-nav {
  display: flex;
  align-items: center;
  gap: 28px;
}

.nw-nav a {
  color: var(--light);
  text-decoration: none;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  transition: color 0.2s;
  position: relative;
  padding-bottom: 2px;
}

.nw-nav a::after {
  content: '';
  position: absolute;
  bottom: -2px; left: 0; right: 0;
  height: 1px;
  background: var(--gold-l);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s;
}

.nw-nav a:hover { color: var(--gold-b); }
.nw-nav a:hover::after { transform: scaleX(1); }

.nw-nav-cta {
  background: var(--gold) !important;
  color: var(--deep) !important;
  padding: 8px 18px !important;
  border-radius: 3px !important;
  font-weight: 700 !important;
}
.nw-nav-cta::after { display: none !important; }
.nw-nav-cta:hover { background: var(--gold-l) !important; color: var(--deep) !important; }

/* Hamburger */
.nw-burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}
.nw-burger span {
  display: block;
  width: 24px; height: 2px;
  background: var(--white);
  border-radius: 2px;
  transition: all 0.3s;
}

/* Menu mobile */
.nw-mobile-menu {
  display: none;
  flex-direction: column;
  background: rgba(6,13,24,0.99);
  border-top: 1px solid rgba(255,255,255,0.06);
  padding: 16px 0;
}
.nw-mobile-menu.open { display: flex; }
.nw-mobile-menu a {
  color: var(--light);
  text-decoration: none;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 14px 32px;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: color 0.2s;
}
.nw-mobile-menu a:hover { color: var(--gold-b); }
.nw-mobile-menu .nw-nav-cta { color: var(--gold-b) !important; background: none !important; }

/* ── HERO ────────────────────────────────── */
.nw-hero {
  height: 100vh;
  min-height: 600px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding-top: 68px;
}

.nw-hero-bg {
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(6,13,24,0.15) 0%, rgba(6,13,24,0.05) 30%, rgba(6,13,24,0.6) 70%, #060d18 100%),
    url('http://www.nawedke.pl/wp-content/uploads/2026/05/gpt.png') 20% center/cover no-repeat;
}

.nw-hero-wave {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 120px;
  overflow: hidden;
  z-index: 2;
  pointer-events: none;
}

.nw-hero-wave svg {
  position: absolute;
  bottom: 0;
  width: 200%;
  height: 100%;
}

.nw-wave-1 {
  animation: nwWaveAnim 8s linear infinite;
  opacity: 0.7;
}

.nw-wave-2 {
  animation: nwWaveAnim 12s linear infinite reverse;
  opacity: 0.4;
}

.nw-wave-3 {
  animation: nwWaveAnim 6s linear infinite;
  opacity: 0.9;
}

@keyframes nwWaveAnim {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.nw-hero-content {
  position: relative; z-index: 3;
  text-align: center; padding: 0 24px;
  animation: nwIn 1s ease-out;
}
@keyframes nwIn { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }

.nw-hero-logo {
  height: 140px; width: auto;
  filter: drop-shadow(0 8px 32px rgba(0,0,0,0.9)) drop-shadow(0 0 60px rgba(201,146,42,0.5)) drop-shadow(0 4px 8px rgba(0,0,0,1));
  margin-bottom: 16px;
}

.nw-hero-tag {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: clamp(16px, 2.5vw, 22px);
  font-weight: 700;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 48px;
  text-shadow: 0 2px 12px rgba(0,0,0,0.9), 0 0 30px rgba(0,0,0,0.8);
}

.nw-hero-h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(34px, 5vw, 66px);
  font-weight: 900; line-height: 1.1;
  color: var(--white); margin-bottom: 18px;
}
.nw-hero-h1 span { color: var(--gold-b); }

.nw-hero-desc {
  font-size: clamp(14px, 2vw, 17px);
  font-weight: 300; color: var(--light);
  max-width: 500px; margin: 0 auto 28px; line-height: 1.7;
}

/* ── KAFELKI HERO ───────────────────────── */
.nw-hero-btns {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 32px;
}

.nw-hero-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 140px;
  height: 120px;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.25s;
  border: 2px solid transparent;
  backdrop-filter: blur(8px);
}

.nw-hero-tile:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.5);
  text-decoration: none;
}

.nw-tile-gold {
  background: rgba(201,146,42,0.85);
  border-color: var(--gold-b);
  color: var(--deep);
}
.nw-tile-gold:hover { background: var(--gold-b); color: var(--deep); }

.nw-tile-navy {
  background: rgba(13,32,64,0.85);
  border-color: rgba(79,195,247,0.4);
  color: var(--white);
}
.nw-tile-navy:hover { background: rgba(13,32,64,0.98); border-color: var(--cyan); color: var(--white); }

.nw-tile-dark {
  background: rgba(6,13,24,0.85);
  border-color: rgba(201,146,42,0.4);
  color: var(--white);
}
.nw-tile-dark:hover { background: rgba(6,13,24,0.98); border-color: var(--gold-b); color: var(--gold-b); }

.nw-tile-cyan {
  background: rgba(26,58,107,0.85);
  border-color: rgba(79,195,247,0.5);
  color: var(--white);
}
.nw-tile-cyan:hover { background: rgba(26,58,107,0.98); border-color: var(--cyan); color: var(--cyan); }

.nw-tile-icon {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 10px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

.nw-tile-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-align: center;
}

@media (max-width: 600px) {
  .nw-hero-tile { width: 130px; height: 110px; }
  .nw-tile-icon { font-size: 34px; }
  .nw-tile-label { font-size: 11px; }
}

/* ── PRZYCISKI ──────────────────────────── */
.nw-btn-gold {
  background: var(--gold); color: var(--deep);
  padding: 13px 28px; border: none; border-radius: 3px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase;
  cursor: pointer; text-decoration: none;
  display: inline-block; transition: all 0.2s;
}
.nw-btn-gold:hover { background: var(--gold-b); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(201,146,42,0.4); color: var(--deep); text-decoration: none; }

.nw-btn-outline {
  background: transparent; color: var(--white);
  padding: 13px 28px; border: 1px solid rgba(255,255,255,0.22); border-radius: 3px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  cursor: pointer; text-decoration: none;
  display: inline-block; transition: all 0.2s;
}
.nw-btn-outline:hover { border-color: var(--cyan); color: var(--cyan); transform: translateY(-2px); text-decoration: none; }

/* ── STATYSTYKI ─────────────────────────── */
.nw-stats { background: var(--gold); padding: 22px 32px; }
.nw-stats-in { max-width: 1400px; margin: 0 auto; display: flex; justify-content: space-around; align-items: center; flex-wrap: wrap; gap: 16px; }
.nw-stat { text-align: center; }
.nw-stat-n { font-family: 'Playfair Display', serif; font-size: 32px; font-weight: 900; color: var(--deep); line-height: 1; }
.nw-stat-l { font-family: 'Barlow Condensed', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: rgba(6,13,24,0.6); margin-top: 3px; }

/* ── SEKCJE ─────────────────────────────── */
.nw-sec { width: 100%; background: var(--deep); }
.nw-sec-dark { background: var(--dark); }
.nw-sec-in { max-width: 1400px; margin: 0 auto; padding: 68px 32px; }

.nw-sec-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 4px; text-transform: uppercase;
  color: var(--gold); margin-bottom: 6px;
  display: flex; align-items: center; gap: 10px;
}
.nw-sec-label::before { content:''; width:24px; height:1px; background:var(--gold); flex-shrink:0; }

.nw-sec-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(24px, 3.5vw, 40px);
  font-weight: 700; color: var(--white);
  margin-bottom: 36px; line-height: 1.2;
}

.nw-center { text-align: center; margin-top: 32px; }

/* ── ARTYKUŁY ───────────────────────────── */
.nw-art-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }

.nw-art-card {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 6px; overflow: hidden;
  transition: all 0.3s; text-decoration: none;
  display: block; color: inherit;
}
.nw-art-card:hover { transform: translateY(-5px); border-color: rgba(201,146,42,0.3); box-shadow: 0 14px 36px rgba(0,0,0,0.4); text-decoration: none; color: inherit; }

.nw-art-featured { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
.nw-art-featured .nw-art-img-wrap { height: 100%; min-height: 260px; aspect-ratio: unset; }
.nw-art-featured .nw-art-body { padding: 28px; display: flex; flex-direction: column; justify-content: center; }
.nw-art-featured .nw-art-title { font-size: clamp(18px, 2.5vw, 26px); }

.nw-art-img-wrap { overflow: hidden; aspect-ratio: 16 / 9; height: auto; width: 100%; border-radius: 8px 8px 0 0; }
.nw-art-img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; transition: transform 0.5s; background: var(--blue); }
.nw-art-card:hover .nw-art-img { transform: scale(1.04); }

.nw-art-body { padding: 18px; }
.nw-art-cat { font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold-l); margin-bottom:7px; }
.nw-art-title { font-family:'Playfair Display',serif; font-size:17px; font-weight:700; color:var(--white); margin-bottom:9px; line-height:1.3; }
.nw-art-excerpt { font-size:13px; color:var(--gray); line-height:1.6; margin-bottom:12px; }
.nw-art-meta { font-size:11px; color:var(--gray); display:flex; gap:10px; }

/* ── GALERIA ────────────────────────────── */
.nw-galeria { columns: 4; column-gap: 10px; }
.nw-gal-item { break-inside: avoid; margin-bottom: 10px; position: relative; border-radius: 4px; overflow: hidden; cursor: pointer; }
.nw-gal-item img { width: 100%; display: block; transition: transform 0.5s; }
.nw-gal-item:hover img { transform: scale(1.05); }
.nw-gal-over { position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,13,24,0.92) 0%,transparent 55%); opacity:0; transition:opacity 0.3s; display:flex; flex-direction:column; justify-content:flex-end; padding:12px; }
.nw-gal-item:hover .nw-gal-over { opacity: 1; }
.nw-gal-gat { font-family:'Playfair Display',serif; font-size:14px; font-weight:700; color:var(--white); margin-bottom:2px; }
.nw-gal-wynik { font-family:'Barlow Condensed',sans-serif; font-size:19px; font-weight:700; color:var(--gold-b); margin-bottom:3px; }
.nw-gal-info { font-size:11px; color:var(--gray); }
.nw-gal-met { font-size:11px; color:var(--cyan); margin-top:2px; }

/* ── RANKING ────────────────────────────── */
.nw-ranking-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: start; }

.nw-rank-slider { position: relative; border-radius: 8px; overflow: hidden; aspect-ratio: 4/3; }
.nw-rank-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 0.8s; }
.nw-rank-slide.active { opacity: 1; }
.nw-rank-slide-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.nw-rank-slide-ov { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(6,13,24,0.95) 0%, transparent 55%); }
.nw-rank-slide-info { position: absolute; bottom: 0; left: 0; right: 0; padding: 24px; }
.nw-rank-slide-gat { font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold-l); margin-bottom:3px; }
.nw-rank-slide-wed { font-family:'Playfair Display',serif; font-size:20px; font-weight:700; color:var(--white); margin-bottom:6px; }
.nw-rank-slide-res { font-family:'Barlow Condensed',sans-serif; font-size:42px; font-weight:700; color:var(--gold-b); line-height:1; }
.nw-rank-slide-res span { font-size:18px; color:var(--gray); }
.nw-rank-slide-low { font-size:12px; color:var(--gray); margin-top:6px; }
.nw-rank-dots { position:absolute; bottom:12px; right:12px; display:flex; gap:5px; z-index:5; }
.nw-rank-dot { width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,0.25); cursor:pointer; transition:background 0.3s; }
.nw-rank-dot.active { background: var(--gold-b); }

.nw-rank-tabs { display:flex; flex-wrap:wrap; gap:0; border-bottom:1px solid rgba(255,255,255,0.08); margin-bottom:18px; }
.nw-rank-tab { font-family:'Barlow Condensed',sans-serif; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--gray); padding:9px 14px; cursor:pointer; border:none; border-bottom:2px solid transparent; background:none; transition:all 0.2s; white-space:nowrap; }
.nw-rank-tab.active, .nw-rank-tab:hover { color:var(--gold-l); border-bottom-color:var(--gold); }
.nw-rank-panel { display: none; }
.nw-rank-panel.active { display: block; }
.nw-ranking { display: flex; flex-direction: column; }
.nw-rank-row { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,0.05); transition:padding-left 0.2s; }
.nw-rank-row:hover { padding-left: 5px; }
.nw-rank-pos { font-family:'Playfair Display',serif; font-size:20px; font-weight:900; min-width:32px; text-align:center; }
.nw-rank-pos.gold   { color: #ffd700; }
.nw-rank-pos.silver { color: #c0c0c0; }
.nw-rank-pos.bronze { color: #cd7f32; }
.nw-rank-pos.other  { color: var(--gray); font-size:14px; }
.nw-rank-info { flex: 1; }
.nw-rank-name { font-size:14px; font-weight:600; color:var(--white); }
.nw-rank-low  { font-size:11px; color:var(--gray); margin-top:2px; }
.nw-rank-wynik { font-family:'Barlow Condensed',sans-serif; font-size:22px; font-weight:700; color:var(--gold-b); text-align:right; }
.nw-rank-wynik span { font-size:11px; color:var(--gray); display:block; text-align:right; }
.nw-empty { color:var(--gray); font-size:13px; padding:18px 0; text-align:center; }
.nw-empty a { color:var(--gold-l); }

/* ── ŁOWISKA ────────────────────────────── */
.nw-low-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.nw-low-card { background:var(--dark); border:1px solid rgba(255,255,255,0.06); border-radius:6px; overflow:hidden; transition:all 0.3s; text-decoration:none; display:block; color:inherit; }
.nw-low-card:hover { border-color:rgba(201,146,42,0.3); transform:translateY(-4px); box-shadow:0 12px 32px rgba(0,0,0,0.4); text-decoration:none; color:inherit; }
.nw-low-img { height:180px; overflow:hidden; }
.nw-low-img-bg { width:100%; height:180px; background-size:cover; background-position:center; transition:transform 0.5s; }
.nw-low-card:hover .nw-low-img-bg { transform: scale(1.05); }
.nw-low-body { padding: 18px; }
.nw-low-okrag { font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--cyan); margin-bottom:5px; }
.nw-low-name { font-family:'Playfair Display',serif; font-size:18px; font-weight:700; color:var(--white); margin-bottom:7px; }
.nw-low-desc { font-size:13px; color:var(--gray); line-height:1.6; margin-bottom:11px; }
.nw-low-tags { display:flex; flex-wrap:wrap; gap:5px; }
.nw-low-tag { background:rgba(79,195,247,0.07); border:1px solid rgba(79,195,247,0.2); color:var(--cyan); font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:600; letter-spacing:1px; padding:3px 7px; border-radius:2px; text-transform:uppercase; }

/* ── CTA ────────────────────────────────── */
.nw-cta { background:linear-gradient(135deg,var(--navy) 0%,var(--blue) 100%); padding:80px 32px; text-align:center; position:relative; overflow:hidden; }
.nw-cta::before { content:'🎣'; position:absolute; font-size:360px; opacity:0.025; top:50%; left:50%; transform:translate(-50%,-50%); pointer-events:none; }
.nw-cta-in { position:relative; z-index:1; max-width:560px; margin:0 auto; }

/* ── FOOTER ─────────────────────────────── */
.nw-footer { background:#03070e; border-top:1px solid rgba(201,146,42,0.1); padding:52px 32px 28px; }
.nw-footer-grid { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:36px; margin-bottom:36px; }
.nw-footer-logo { height:52px; width:auto; filter:drop-shadow(0 0 12px rgba(201,146,42,0.25)); margin-bottom:12px; }
.nw-footer-desc { font-size:13px; color:var(--gray); line-height:1.7; }
.nw-footer-col-title { font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold-l); margin-bottom:16px; }
.nw-footer-links { list-style:none; display:flex; flex-direction:column; gap:9px; }
.nw-footer-links a { color:var(--gray); text-decoration:none; font-size:13px; transition:color 0.2s; }
.nw-footer-links a:hover { color:var(--white); }
.nw-footer-bottom { max-width:1400px; margin:0 auto; padding-top:20px; border-top:1px solid rgba(255,255,255,0.06); display:flex; justify-content:space-between; align-items:center; }
.nw-footer-copy { font-size:11px; color:var(--gray); }

/* ── FORMULARZ ──────────────────────────── */
.nw-form-wrap { max-width: 760px; margin: 0 auto; }
.nw-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.nw-fg { display: flex; flex-direction: column; gap: 5px; }
.nw-fg-full { grid-column: 1 / -1; }
.nw-fg label { font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--gold-l); }
.nw-fg input, .nw-fg select, .nw-fg textarea { background:rgba(13,32,64,0.8); border:1px solid rgba(255,255,255,0.1); border-radius:4px; color:var(--white); font-family:'Barlow',sans-serif; font-size:14px; padding:11px 14px; outline:none; transition:border-color 0.2s; width:100%; }
.nw-fg input:focus, .nw-fg select:focus, .nw-fg textarea:focus { border-color: var(--gold); }
.nw-fg select option { background: var(--navy); }
.nw-fg small { font-size:11px; color:var(--gray); }
.nw-check { display:flex; align-items:center; gap:9px; cursor:pointer; font-size:13px; color:var(--gray); }
.nw-check input { width:17px; height:17px; accent-color:var(--gold); }
.nw-ok  { color:#81c784; padding:10px; background:rgba(129,199,132,0.1); border-radius:4px; margin-top:12px; }
.nw-err { color:#ef9a9a; padding:10px; background:rgba(239,154,154,0.1); border-radius:4px; margin-top:12px; }

/* ── DOLNY PASEK MOBILE ─────────────────── */
.nw-mobile-nav {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 9998;
  background: rgba(6,13,24,0.98);
  border-top: 1px solid rgba(201,146,42,0.2);
  backdrop-filter: blur(12px);
  padding: 0 0 env(safe-area-inset-bottom);
}

.nw-mn-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  text-decoration: none;
  color: var(--gray);
  flex: 1;
  transition: color 0.2s;
  min-height: 56px;
}
.nw-mn-item:hover, .nw-mn-item.active { color: var(--gold-b); text-decoration: none; }

.nw-mn-icon { font-size: 20px; line-height: 1; }
.nw-mn-label { font-family:'Barlow Condensed',sans-serif; font-size:9px; font-weight:700; letter-spacing:1px; text-transform:uppercase; margin-top:2px; }

.nw-mn-add {
  background: var(--gold);
  color: var(--deep) !important;
  border-radius: 50%;
  width: 52px; height: 52px;
  margin: -16px auto 0;
  box-shadow: 0 4px 16px rgba(201,146,42,0.5);
  flex: 0 0 52px;
  position: relative;
  z-index: 1;
}
.nw-mn-add .nw-mn-icon { font-size: 22px; }
.nw-mn-add .nw-mn-label { display: none; }

/* ── RESPONSIVE ─────────────────────────── */
@media (max-width: 1024px) {
  .nw-sec-in { padding: 52px 24px; }
  .nw-art-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-art-featured { grid-template-columns: 1fr; }
  .nw-art-featured .nw-art-img-wrap { height: auto; min-height: unset; aspect-ratio: 16 / 9; }
  .nw-ranking-wrap { grid-template-columns: 1fr; }
  .nw-galeria { columns: 3; }
  .nw-low-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
  .nw-nav { display: none; }
  .nw-burger { display: flex; }
  .nw-mobile-nav { display: flex; }

  /* Hero na mobile — wędkarz na górze, kafelki na dole */
  .nw-hero {
    justify-content: flex-end;
    padding-bottom: 72px;
    align-items: center;
  }

  .nw-hero-content {
    width: 100%;
    padding: 0 16px 8px;
    background: linear-gradient(0deg, rgba(6,13,24,0.85) 0%, transparent 100%);
    padding-top: 24px;
  }

  .nw-hero-logo { height: 140px; margin-bottom: 6px; }

  .nw-hero-tag {
    font-size: 11px;
    letter-spacing: 3px;
    margin-bottom: 16px;
  }

  /* Kafelki — 2 kolumny na mobile */
  .nw-hero-btns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 0;
    width: 100%;
  }

  .nw-hero-tile {
    width: 100%;
    height: 72px;
    border-radius: 10px;
    flex-direction: row;
    gap: 10px;
    padding: 0 14px;
    justify-content: flex-start;
  }

  .nw-tile-icon { font-size: 26px; margin-bottom: 0; }
  .nw-tile-label { font-size: 11px; text-align: left; }

  /* Reszta mobile */
  .nw-galeria { columns: 2; }
  .nw-art-grid { grid-template-columns: 1fr; }
  .nw-low-grid { grid-template-columns: 1fr; }
  .nw-form-grid { grid-template-columns: 1fr; }
  .nw-footer { padding: 36px 20px 24px; }
  .nw-footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .nw-footer-bottom { flex-direction: column; gap: 8px; text-align: center; }
  .nw-cta { padding: 60px 20px; }
  body { padding-bottom: 56px; }
  .nw-header-in { padding: 0 20px; }
  .nw-sec-in { padding: 48px 16px; }
}

@media (max-width: 480px) {
  .nw-galeria { columns: 1; }
  .nw-stats-in { gap: 12px; }
  .nw-stat-n { font-size: 26px; }
}

/* ── PASEK SPONSORÓW ────────────────────── */
.nw-sponsor-bar {
  background: var(--gold);
  overflow: hidden;
  height: 36px;
  display: flex;
  align-items: center;
}

.nw-sponsor-bar-link {
  display: block;
  width: 100%;
  overflow: hidden;
  text-decoration: none;
}

.nw-marquee {
  display: inline-block;
  white-space: nowrap;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--deep);
  animation: nwMarquee 20s linear infinite;
  padding-left: 100%;
}

@keyframes nwMarquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.nw-sponsor-bar:hover .nw-marquee { animation-play-state: paused; }

/* ── PASEK INFORMACYJNY ─────────────────── */
.nw-info-bar {
  background: rgba(6,13,24,0.98);
  border-bottom: 1px solid rgba(201,146,42,0.15);
  padding: 6px 0;
}

.nw-info-bar-in {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  color: var(--light);
  flex-wrap: wrap;
}

.nw-info-sep { color: rgba(255,255,255,0.2); }

/* ── KAFELKI HERO ───────────────────────── */
.nw-hero-tiles {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 32px;
}

.nw-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 130px;
  height: 110px;
  border-radius: 14px;
  text-decoration: none;
  transition: all 0.25s;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(255,255,255,0.1);
  cursor: pointer;
}

.nw-tile:hover {
  transform: translateY(-8px) scale(1.05);
  box-shadow: 0 20px 40px rgba(0,0,0,0.5);
  text-decoration: none;
  border-color: rgba(255,255,255,0.3);
}

.nw-tile-gold  { background: rgba(201,146,42,0.88); color: var(--deep); border-color: var(--gold-b); }
.nw-tile-navy  { background: rgba(13,32,64,0.88); color: var(--white); }
.nw-tile-dark  { background: rgba(6,13,24,0.88); color: var(--white); border-color: rgba(201,146,42,0.3); }
.nw-tile-blue  { background: rgba(26,58,107,0.88); color: var(--white); }
.nw-tile-cyan  { background: rgba(10,40,80,0.88); color: var(--cyan); border-color: rgba(79,195,247,0.3); }
.nw-tile-red   { background: rgba(180,30,30,0.88); color: var(--white); }
.nw-tile-gray  { background: rgba(40,50,70,0.88); color: var(--light); }

.nw-tile-gold:hover  { background: var(--gold-b); color: var(--deep); }
.nw-tile-navy:hover  { background: rgba(13,32,64,0.98); }
.nw-tile-dark:hover  { background: rgba(6,13,24,0.98); color: var(--gold-b); }
.nw-tile-blue:hover  { background: rgba(26,58,107,0.98); }
.nw-tile-cyan:hover  { background: rgba(10,40,80,0.98); color: var(--white); }
.nw-tile-red:hover   { background: rgba(200,40,40,0.98); }
.nw-tile-gray:hover  { background: rgba(40,50,70,0.98); color: var(--white); }

.nw-tile-icon  { font-size: 36px; line-height: 1; margin-bottom: 8px; }
.nw-tile-label { font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; text-align:center; }

/* ── REKORDY ────────────────────────────── */
.nw-rek-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 24px;
  overflow-x: auto;
}

.nw-rek-tab {
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px; font-weight:700;
  letter-spacing:2px; text-transform:uppercase;
  color:var(--gray); padding:10px 16px;
  cursor:pointer; border:none;
  border-bottom:2px solid transparent;
  background:none; transition:all 0.2s;
  white-space:nowrap;
}
.nw-rek-tab.active, .nw-rek-tab:hover { color:var(--gold-l); border-bottom-color:var(--gold); }

.nw-rek-panel { display:none; }
.nw-rek-panel.active { display:block; }

.nw-rek-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.nw-rek-col { }

.nw-rek-col-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px; font-weight:700;
  letter-spacing:2px; text-transform:uppercase;
  color:var(--gold-l);
  margin-bottom:16px;
  padding-bottom:8px;
  border-bottom:1px solid rgba(201,146,42,0.2);
}

.nw-rek-empty {
  display:flex; flex-direction:column;
  align-items:center; padding:32px 0;
  gap:8px;
}
.nw-rek-empty-icon { font-size:48px; opacity:0.4; }
.nw-rek-empty-text { font-family:'Barlow Condensed',sans-serif; font-size:16px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--gray); }

.nw-rank-thumb { width:44px; height:44px; border-radius:4px; object-fit:cover; flex-shrink:0; }

/* ── SPONSORZY ──────────────────────────── */
.nw-sponsors-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
}

.nw-sponsor-card {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s;
}
.nw-sponsor-card:hover { border-color:rgba(201,146,42,0.3); transform:translateY(-4px); box-shadow:0 12px 32px rgba(0,0,0,0.4); }

.nw-sponsor-logo { padding:20px; background:rgba(255,255,255,0.04); text-align:center; }
.nw-sponsor-logo img { max-height:80px; max-width:180px; object-fit:contain; filter:drop-shadow(0 2px 8px rgba(0,0,0,0.3)); }

.nw-sponsor-body { padding:16px; }
.nw-sponsor-name { font-family:'Playfair Display',serif; font-size:17px; font-weight:700; color:var(--white); margin-bottom:8px; }
.nw-sponsor-nagroda { font-size:13px; color:var(--gold-l); margin-bottom:6px; }
.nw-sponsor-konkurs { font-size:12px; color:var(--gray); }

.nw-sponsors-empty { text-align:center; padding:48px 0; color:var(--gray); font-size:14px; }
.nw-sponsors-empty a { color:var(--gold-l); }

/* ── HERO TAG większy ───────────────────── */
.nw-hero-tag {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(18px, 3vw, 32px) !important;
  font-weight: 700 !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  color: var(--gold-b) !important;
  margin-bottom: 32px !important;
  text-shadow: 0 3px 16px rgba(0,0,0,0.95), 0 0 40px rgba(0,0,0,0.9) !important;
}

/* ── MOBILE KAFELKI ─────────────────────── */
@media (max-width: 768px) {
  .nw-hero-tiles {
    gap: 8px;
    margin-top: 20px;
    padding: 0 8px;
  }

  .nw-tile {
    width: calc(33.333% - 8px);
    min-width: 90px;
    height: 88px;
    border-radius: 10px;
  }

  .nw-tile-icon { font-size: 28px; margin-bottom: 5px; }
  .nw-tile-label { font-size: 9px; letter-spacing: 0.5px; }

  .nw-rek-grid { grid-template-columns: 1fr; gap: 16px; }
  .nw-sponsors-grid { grid-template-columns: 1fr; }
  .nw-info-bar-in { padding: 0 16px; font-size: 11px; gap: 6px; }
}

@media (max-width: 480px) {
  .nw-tile {
    width: calc(50% - 6px);
    height: 82px;
  }
}

/* ── ANIMACJA POWITALNA ─────────────────── */
.nw-intro {
  position: fixed;
  inset: 0;
  background: var(--deep);
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  animation: nwIntroFade 0.6s ease-out 2.2s forwards;
  pointer-events: none;
}

@keyframes nwIntroFade {
  0%   { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.05); display: none; }
}

.nw-intro-logo {
  height: 180px;
  filter: drop-shadow(0 0 40px rgba(201,146,42,0.7));
  animation: nwIntroLogo 1s ease-out forwards;
}

@keyframes nwIntroLogo {
  0%   { opacity: 0; transform: scale(0.8) translateY(20px); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

.nw-intro-text {
  font-family: 'Playfair Display', serif;
  font-size: clamp(20px, 4vw, 36px);
  font-weight: 900;
  color: var(--gold-b);
  text-align: center;
  margin-top: 24px;
  text-shadow: 0 0 40px rgba(201,146,42,0.5);
  animation: nwIntroText 0.8s ease-out 0.5s both;
  letter-spacing: 2px;
}

@keyframes nwIntroText {
  0%   { opacity: 0; transform: translateY(16px); }
  100% { opacity: 1; transform: translateY(0); }
}

.nw-intro-sub {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gray);
  margin-top: 10px;
  animation: nwIntroText 0.8s ease-out 0.9s both;
}

/* ── LICZNIK KOŃCA MIESIĄCA ─────────────── */
.nw-countdown-bar {
  background: linear-gradient(90deg, var(--navy), var(--blue), var(--navy));
  border-bottom: 1px solid rgba(201,146,42,0.2);
  padding: 8px 32px;
  text-align: center;
}

.nw-countdown-in {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--light);
  flex-wrap: wrap;
}

.nw-countdown-label {
  color: var(--gold-l);
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 11px;
}

.nw-countdown-timer {
  display: flex;
  gap: 8px;
  align-items: center;
}

.nw-cd-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: rgba(0,0,0,0.3);
  border-radius: 6px;
  padding: 4px 10px;
  min-width: 48px;
}

.nw-cd-num {
  font-family: 'Playfair Display', serif;
  font-size: 22px;
  font-weight: 900;
  color: var(--gold-b);
  line-height: 1;
}

.nw-cd-label {
  font-size: 8px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--gray);
  margin-top: 2px;
}

.nw-cd-sep {
  font-size: 20px;
  color: var(--gold);
  font-weight: 700;
  margin-bottom: 8px;
}

/* ── KAFELKI MOBILE — poziomy scroll ────── */
@media (max-width: 768px) {
  .nw-hero-tiles {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 12px !important;
    margin-top: 20px !important;
    padding: 8px 20px 16px !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    justify-content: flex-start !important;
    position: relative !important;
    z-index: 10 !important;
  }

  .nw-hero-tiles::-webkit-scrollbar { display: none; }

  .nw-tile {
    flex: 0 0 60vw !important;
    max-width: 240px !important;
    height: 100px !important;
    scroll-snap-align: start !important;
    border-radius: 14px !important;
    flex-direction: row !important;
    gap: 14px !important;
    padding: 0 20px !important;
    justify-content: flex-start !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 10 !important;
    -webkit-tap-highlight-color: rgba(201,146,42,0.3) !important;
    touch-action: manipulation !important;
  }

  .nw-tile-icon { font-size: 32px !important; margin-bottom: 0 !important; }
  .nw-tile-label { font-size: 13px !important; text-align: left !important; letter-spacing: 1px !important; }
}

/* Sekcje napisy większe */
.nw-sec-label {
  font-size: 12px !important;
  letter-spacing: 5px !important;
}

.nw-sec-title {
  font-size: clamp(26px, 4vw, 44px) !important;
}

/* ── LISTA REKORDÓW NA STRONIE GŁÓWNEJ ─── */
.nw-rek-lista {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 700px;
  margin: 0 auto;
}

.nw-rek-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  transition: padding-left 0.2s, background 0.2s;
  border-radius: 4px;
}

.nw-rek-row:hover {
  padding-left: 8px;
  background: rgba(255,255,255,0.02);
}

.nw-junior-badge {
  display: inline-block;
  background: rgba(79,195,247,0.15);
  border: 1px solid rgba(79,195,247,0.3);
  color: var(--cyan);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 2px 6px;
  border-radius: 3px;
  text-transform: uppercase;
  vertical-align: middle;
  margin-left: 4px;
}

.nw-rek-empty-main {
  padding: 48px 24px;
  text-align: center;
}

/* ── NAPRAWIAM INFO BAR NA MOBILE ───────── */
@media (max-width: 768px) {
  .nw-countdown-bar { padding: 8px 16px; }
  .nw-countdown-in { font-size: 11px; gap: 8px; }
  .nw-cd-num { font-size: 18px; }
  .nw-info-bar-in { font-size: 10px; }
}

/* ── DATA W HEADERZE ────────────────────── */
.nw-header-date {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  color: var(--gold-l);
  white-space: nowrap;
}

@media (max-width: 768px) {
  .nw-header-date { display: none; }
}

/* ── NAJLEPSI Z NAJLEPSZYCH ─────────────── */
.nw-best-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 16px;
}

.nw-best-card {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s;
  position: relative;
}

.nw-best-card:hover {
  border-color: rgba(201,146,42,0.4);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.5);
}

.nw-best-img-wrap {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
}

.nw-best-img-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s;
}

.nw-best-card:hover .nw-best-img-bg { transform: scale(1.06); }

.nw-best-no-img {
  background: linear-gradient(135deg, var(--blue), var(--navy));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 48px;
}

.nw-best-img-ov {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(6,13,24,0.85) 0%, transparent 60%);
}

.nw-best-crown {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 24px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
  z-index: 2;
}

.nw-best-body {
  padding: 14px;
}

.nw-best-gatunek {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-l);
  margin-bottom: 4px;
}

.nw-best-wynik {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  font-weight: 900;
  color: var(--gold-b);
  line-height: 1;
  margin-bottom: 8px;
}

.nw-best-wynik span {
  font-size: 14px;
  color: var(--gray);
  font-family: 'Barlow', sans-serif;
  font-weight: 400;
}

.nw-best-lowca {
  font-size: 12px;
  color: var(--gray);
  margin-bottom: 3px;
}

.nw-best-lowca strong {
  color: var(--white);
  font-weight: 600;
}

.nw-best-data {
  font-size: 11px;
  color: rgba(255,255,255,0.3);
  font-family: 'Barlow Condensed', sans-serif;
  letter-spacing: 1px;
}

/* ── KAFELEK WYMIARY OCHRONNE ───────────── */
.nw-tile-green {
  background: rgba(20,80,40,0.88);
  color: #81c784;
  border-color: rgba(129,199,132,0.3);
}
.nw-tile-green:hover {
  background: rgba(20,80,40,0.98);
  color: #a5d6a7;
  border-color: rgba(129,199,132,0.6);
}

/* ── FORMULARZ ZGŁOSZENIA ───────────────── */
.nw-form-section {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px;
  padding: 24px;
  margin-bottom: 16px;
}

.nw-form-section-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-l);
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(201,146,42,0.2);
}

.nw-upload-area {
  border: 2px dashed rgba(201,146,42,0.4);
  border-radius: 8px;
  padding: 32px;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s;
  background: rgba(201,146,42,0.03);
}

.nw-upload-area:hover {
  border-color: var(--gold);
  background: rgba(201,146,42,0.07);
}

.nw-upload-area input[type="file"] {
  display: none;
}

.nw-upload-icon { font-size: 40px; margin-bottom: 8px; }
.nw-upload-text { font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:700; letter-spacing:1px; color:var(--white); margin-bottom:6px; }
.nw-upload-sub  { font-size:12px; color:var(--gray); }

.nw-form-optional-toggle {
  text-align: center;
  margin: 16px 0;
  cursor: pointer;
}

.nw-form-optional-toggle span {
  display: inline-block;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-b);
  background: rgba(201,146,42,0.1);
  border: 2px dashed rgba(201,146,42,0.5);
  border-radius: 6px;
  padding: 10px 24px;
  transition: all 0.2s;
}

.nw-form-optional-toggle:hover span {
  background: rgba(201,146,42,0.2);
  border-color: var(--gold);
  color: var(--white);
}

.nw-submit-btn {
  width: 100%;
  padding: 16px;
  font-size: 15px;
  margin-top: 8px;
  border-radius: 6px;
}

/* ── STRONA WYMIARY OCHRONNE ────────────── */
.nw-wymiary-page { max-width: 900px; margin: 0 auto; padding: 40px 24px; }

.nw-wymiary-info {
  background: rgba(201,146,42,0.1);
  border: 1px solid rgba(201,146,42,0.3);
  border-radius: 6px;
  padding: 16px 20px;
  font-size: 13px;
  color: var(--light);
  line-height: 1.6;
  margin-bottom: 32px;
}

.nw-wymiary-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  font-size: 14px;
}

.nw-wymiary-table thead tr {
  background: var(--gold);
  color: var(--deep);
}

.nw-wymiary-table th {
  padding: 12px 16px;
  text-align: left;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 11px;
}

.nw-wymiary-table td {
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  color: var(--light);
}

.nw-wymiary-table tbody tr:nth-child(odd) {
  background: rgba(13,32,64,0.4);
}

.nw-wymiary-table tbody tr:hover {
  background: rgba(201,146,42,0.08);
}

@media (max-width: 600px) {
  .nw-wymiary-table { font-size: 12px; }
  .nw-wymiary-table th, .nw-wymiary-table td { padding: 10px 10px; }
}

/* ── CIEMNE TŁO DLA CAŁEGO SERWISU ─────── */
body {
  background: var(--deep) !important;
  color: var(--white) !important;
}

.site-content,
.content-area,
#primary,
.entry-content,
article,
.hentry {
  background: transparent !important;
  color: var(--white) !important;
}

/* Tytuł strony */
.entry-title,
h1, h2, h3, h4, h5, h6 {
  color: var(--white) !important;
  font-family: 'Playfair Display', serif !important;
}

/* Tekst */
p, li, td, th, label, span {
  color: var(--light) !important;
}

/* Linki */
a { color: var(--gold-l) !important; }
a:hover { color: var(--gold-b) !important; }

/* Kontener treści */
.ast-container,
.site-content .ast-container {
  max-width: 1200px !important;
  padding: 40px 32px !important;
}

/* Formularz na podstronie */
.nw-form-wrap {
  max-width: 780px;
  margin: 0 auto;
  padding: 20px 0;
}

/* ── PODSTRONY ──────────────────────────── */
.nw-header-solid {
  position: relative !important;
  background: rgba(6,13,24,0.99) !important;
}

.nw-page-main {
  min-height: 80vh;
  background: var(--deep);
  padding-top: 20px;
  padding-bottom: 60px;
}

.nw-page-container {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 32px;
}

.nw-page-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(28px, 4vw, 48px) !important;
  font-weight: 900 !important;
  color: var(--white) !important;
  margin-bottom: 32px !important;
  padding-bottom: 16px !important;
  border-bottom: 2px solid rgba(201,146,42,0.3) !important;
}

.nw-page-content {
  color: var(--light) !important;
  line-height: 1.7 !important;
}

.nw-page-content p {
  color: var(--light) !important;
  margin-bottom: 16px !important;
}

@media (max-width: 768px) {
  .nw-page-container { padding: 24px 16px; }
  body.nw-subpage { padding-bottom: 56px; }
}

/* ── IKONKA LOGOWANIA ───────────────────── */
.nw-login-mascot {
  position: fixed;
  bottom: 80px;
  right: 16px;
  z-index: 9990;
  cursor: pointer;
  transition: transform 0.3s;
  opacity: 0.85;
}

.nw-login-mascot:hover {
  transform: scale(1.15) rotate(-5deg);
  opacity: 1;
}

.nw-login-mascot img {
  width: 140px;
  height: 140px;
  object-fit: contain;
  filter: drop-shadow(0 4px 12px rgba(201,146,42,0.5));
}

.nw-login-mascot-tooltip {
  position: absolute;
  bottom: 70px;
  right: 0;
  background: rgba(6,13,24,0.95);
  border: 1px solid rgba(201,146,42,0.3);
  border-radius: 6px;
  padding: 6px 12px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--gold-l);
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.2s;
  pointer-events: none;
}

.nw-login-mascot:hover .nw-login-mascot-tooltip {
  opacity: 1;
}

@media (max-width: 768px) {
  .nw-login-mascot { bottom: 70px; right: 8px; }
  .nw-login-mascot img { width: 80px; height: 80px; }
}

/* ── POPRAWKI MOBILE iPhone/Android ─────── */

/* Safe area iPhone */
.nw-mobile-nav {
  padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
}

body {
  padding-bottom: calc(56px + env(safe-area-inset-bottom)) !important;
}

/* Licznik widoczny na mobile */
@media (max-width: 768px) {
  .nw-countdown-bar {
    position: relative;
    z-index: 100;
    margin-top: 0;
  }

  /* Logo mniejsze na mobile */
  .nw-hero-logo {
    height: 80px !important;
    margin-bottom: 8px !important;
  }

  /* Wędkarz bardziej widoczny - przesuń tło */
  .nw-hero-bg {
    background-position: left center !important;
  }

  /* Ikonka logowania na mobile - ukryj */
  .nw-login-mascot {
    display: none !important;
  }
}

/* Ikonka logowania w headerze na mobile */
.nw-header-login {
  display: none;
}

@media (max-width: 768px) {
  .nw-header-login {
    display: flex;
    align-items: center;
    margin-right: 8px;
  }

  .nw-header-login img {
    height: 40px;
    width: auto;
    filter: drop-shadow(0 0 8px rgba(201,146,42,0.4));
  }
}

/* Kafelki — pewność że są klikalne */
.nw-hero-tiles a,
.nw-tile {
  cursor: pointer !important;
  -webkit-tap-highlight-color: rgba(201,146,42,0.2) !important;
  touch-action: manipulation !important;
}

/* ── GALERIA FILTRY ─────────────────────── */
.nw-galeria-filtry {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}

.nw-filtr {
  background: rgba(13,32,64,0.8);
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--gray);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 7px 14px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s;
}

.nw-filtr:hover,
.nw-filtr.active {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--deep);
  text-decoration: none;
}

/* ── RANKING OKRESY ─────────────────────── */
.nw-ranking-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 8px;
}

.nw-ranking-okresy {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 16px;
}

.nw-okres-tab {
  background: rgba(13,32,64,0.8);
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--gray);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 10px 18px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s;
}

.nw-okres-tab:hover,
.nw-okres-tab.active {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--deep);
}

.nw-okres-panel { display: none; }
.nw-okres-panel.active { display: block; }

/* ── NOWY FORMULARZ ─────────────────────── */

/* Selecty i inputy bardziej widoczne */
.nw-select-visible {
  background: rgba(13,32,64,0.95) !important;
  border: 2px solid rgba(201,146,42,0.5) !important;
  color: var(--white) !important;
}
.nw-select-visible:focus {
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(201,146,42,0.2) !important;
}

/* Kategoria Senior/Junior jako przyciski */
.nw-kategoria-wrap {
  display: flex;
  gap: 12px;
}

.nw-kategoria-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px;
  background: rgba(13,32,64,0.8);
  border: 2px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--gray);
}

.nw-kategoria-btn input[type="radio"] {
  display: none;
}

.nw-kategoria-btn:has(input:checked) {
  background: rgba(201,146,42,0.2);
  border-color: var(--gold);
  color: var(--gold-b);
}

.nw-kategoria-btn:hover {
  border-color: rgba(201,146,42,0.4);
  color: var(--light);
}

/* Info o rankingu */
.nw-ranking-info {
  padding: 12px 16px;
  border-radius: 6px;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 8px;
}

.nw-ranking-info-success {
  background: rgba(46,125,50,0.15);
  border: 1px solid rgba(129,199,132,0.4);
  color: #a5d6a7;
}

.nw-ranking-info-neutral {
  background: rgba(13,32,64,0.8);
  border: 1px solid rgba(79,195,247,0.3);
  color: var(--cyan);
}

.nw-ranking-info-error {
  background: rgba(198,40,40,0.15);
  border: 1px solid rgba(239,154,154,0.4);
  color: #ef9a9a;
}

/* ── MISTRZ ROKU / HALL OF FAME ─────────── */
.nw-mistrz-roku {
  background: linear-gradient(135deg, rgba(201,146,42,0.15), rgba(6,13,24,0.8));
  border: 2px solid var(--gold);
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 32px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.nw-mistrz-roku::before {
  content: '👑';
  position: absolute;
  font-size: 120px;
  opacity: 0.05;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
}

.nw-mistrz-roku-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold-l);
  margin-bottom: 8px;
}

.nw-mistrz-roku-name {
  font-family: 'Playfair Display', serif;
  font-size: clamp(24px, 4vw, 40px);
  font-weight: 900;
  color: var(--gold-b);
  margin-bottom: 4px;
}

.nw-mistrz-roku-wynik {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: var(--white);
}

.nw-mistrze-lista {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  margin-top: 24px;
}

.nw-mistrz-card {
  background: var(--navy);
  border: 1px solid rgba(201,146,42,0.2);
  border-radius: 8px;
  padding: 16px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.nw-mistrz-miesiac {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-l);
  margin-bottom: 4px;
}

.nw-mistrz-imie {
  font-size: 15px;
  font-weight: 600;
  color: var(--white);
}

.nw-mistrz-ryba {
  font-size: 12px;
  color: var(--gray);
  margin-top: 2px;
}

.nw-mistrz-dl {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--gold-b);
  margin-left: auto;
  white-space: nowrap;
}

/* Hall of Fame */
.nw-hof-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 20px;
}

.nw-hof-card {
  background: linear-gradient(135deg, var(--navy), var(--blue));
  border: 1px solid rgba(201,146,42,0.2);
  border-radius: 10px;
  padding: 20px;
  text-align: center;
  transition: all 0.3s;
}

.nw-hof-card:hover {
  border-color: var(--gold);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.4);
}

.nw-hof-rok {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-l);
  margin-bottom: 8px;
}

.nw-hof-korona { font-size: 32px; margin-bottom: 8px; }

.nw-hof-imie {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 4px;
}

.nw-hof-wynik {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: var(--gold-b);
}

/* ── POPRAWKI RANKINGU ──────────────────── */
.nw-rek-empty {
  padding: 32px 16px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.nw-rek-empty-icon { font-size: 40px; opacity: 0.6; }

.nw-rek-empty-text {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--light) !important;
}

.nw-rek-col-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-l) !important;
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 2px solid rgba(201,146,42,0.3) !important;
}

.nw-rek-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  padding: 16px 0;
}

/* Wyraźna linia między kolumnami */
.nw-rek-col:first-child {
  border-right: 1px solid rgba(255,255,255,0.08);
  padding-right: 24px;
}

.nw-rek-col:last-child {
  padding-left: 8px;
}

@media (max-width: 768px) {
  .nw-rek-grid { grid-template-columns: 1fr; }
  .nw-rek-col:first-child { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.08); padding-right: 0; padding-bottom: 24px; }
  .nw-rek-col:last-child { padding-left: 0; padding-top: 8px; }
}

/* ── POPRAWKA PRZYCISKÓW OKRESY ─────────── */
.nw-okres-tab {
  color: var(--white) !important;
}

.nw-okres-tab.active {
  color: var(--deep) !important;
}

.nw-rek-tab {
  color: var(--light) !important;
}

.nw-rek-tab.active,
.nw-rek-tab:hover {
  color: var(--gold-l) !important;
}

/* Licznik - widoczny tekst */
.nw-countdown-label {
  color: var(--gold-l) !important;
}

.nw-cd-num {
  color: var(--gold-b) !important;
}

.nw-cd-label {
  color: var(--light) !important;
}

/* ── NOWY RANKING ───────────────────────── */
.nw-rk-kategorie {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 16px;
}

.nw-rk-kat-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 16px 12px;
  min-height: 90px;
  width: 100%;
  background: rgba(13,32,64,0.8);
  border: 1px solid rgba(201,168,76,0.3);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.25s;
}

.nw-rk-kat-btn:hover {
  border-color: rgba(201,146,42,0.4);
  background: rgba(13,32,64,0.95);
}

.nw-rk-kat-btn.active {
  background: rgba(201,146,42,0.15);
  border-color: var(--gold);
  box-shadow: 0 0 20px rgba(201,146,42,0.2);
}

.nw-rk-kat-icon { font-size: 36px; line-height: 1; }
.nw-rk-kat-label { font-family:'Barlow Condensed',sans-serif; font-size:16px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--white); }
.nw-rk-kat-sub { font-size:11px; color:var(--gray); letter-spacing:1px; }

.nw-rk-kat-btn.active .nw-rk-kat-label { color: var(--gold-b); }

/* Gatunek wybór */
.nw-rk-gatunek-wrap { margin-bottom: 24px; }

.nw-rk-gatunek-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nw-rk-gat-btn {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--light);
  background: rgba(13,32,64,0.8);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  padding: 8px 16px;
  cursor: pointer;
  transition: all 0.2s;
}

.nw-rk-gat-btn:hover,
.nw-rk-gat-btn.active {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--deep);
}

.nw-rk-gatunek-select { display: none; width: 100%; }

@media (max-width: 768px) {
  .nw-rk-gatunek-btns { display: none; }
  .nw-rk-gatunek-select { display: block; }
  .nw-rk-kat-btn { padding: 14px; }
  .nw-rk-kat-icon { font-size: 28px; }
}

/* Tabela rankingu */
.nw-rk-lista { display: none; }
.nw-rk-lista.active { display: block; }

.nw-rk-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.nw-rk-table thead tr {
  background: rgba(13,32,64,0.9);
  border-bottom: 2px solid rgba(201,146,42,0.3);
}

.nw-rk-table th {
  padding: 12px 16px;
  text-align: left;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-l);
}

.nw-rk-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: background 0.15s;
}

.nw-rk-table tbody tr:hover {
  background: rgba(255,255,255,0.03);
}

.nw-rk-table tbody tr.gold { background: rgba(201,146,42,0.08); }
.nw-rk-table tbody tr.silver { background: rgba(180,180,180,0.06); }
.nw-rk-table tbody tr.bronze { background: rgba(180,100,40,0.06); }

.nw-rk-pos-cell {
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 100px;
}

.nw-rk-haslo {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--gray);
  white-space: nowrap;
}

.nw-rk-table td { padding: 10px 16px; color: var(--light); vertical-align: middle; }
.nw-rk-wedkarz { font-weight: 600; color: var(--white) !important; }
.nw-rk-lowisko { color: var(--gray) !important; font-size: 13px; }
.nw-rk-data { color: var(--gray) !important; font-size: 12px; white-space: nowrap; }
.nw-rk-dl { font-family:'Barlow Condensed',sans-serif; font-size:20px; font-weight:700; color:var(--gold-b) !important; white-space:nowrap; text-align:right; }
.nw-rk-dl span { font-size:12px; color:var(--gray); margin-left:2px; }

.nw-info-box {
  background: rgba(201,146,42,0.08);
  border: 1px solid rgba(201,146,42,0.2);
  border-radius: 8px;
  padding: 14px 20px;
  font-size: 13px;
  color: var(--light);
  line-height: 1.6;
}

@media (max-width: 768px) {
  .nw-rk-table th:nth-child(3),
  .nw-rk-table td:nth-child(3),
  .nw-rk-table th:nth-child(4),
  .nw-rk-table td:nth-child(4) { display: none; }
  .nw-rk-table { font-size: 13px; }
  .nw-rk-dl { font-size: 16px; }
}

/* ── POPRAWKA WIDOCZNOŚCI RANKINGU ──────── */
.nw-rk-kat-btn,
.nw-rk-kat-label,
.nw-rk-kat-sub,
.nw-rk-gat-btn,
.nw-rk-table th,
.nw-rk-table td,
.nw-rk-wedkarz,
.nw-rk-dl,
.nw-rek-empty-text,
.nw-rk-haslo {
  color: var(--white) !important;
}

.nw-rk-kat-sub { color: rgba(255,255,255,0.6) !important; }
.nw-rk-lowisko, .nw-rk-data { color: rgba(255,255,255,0.5) !important; }
.nw-rk-dl { color: var(--gold-b) !important; }
.nw-rk-dl span { color: rgba(255,255,255,0.4) !important; }

.nw-rk-kat-btn.active .nw-rk-kat-label { color: var(--gold-b) !important; }
.nw-rk-gat-btn.active { color: var(--deep) !important; }

.nw-okres-tab { color: var(--white) !important; }
.nw-okres-tab.active { color: var(--deep) !important; }

/* ── TEKST NA AKTYWNYCH PRZYCISKACH ── */
.nw-rk-kat-btn.active,
.nw-rk-kat-btn.active .nw-rk-kat-label,
.nw-rk-kat-btn.active .nw-rk-kat-icon {
  color: #c9a84c !important;
}

.nw-rk-gat-btn.active {
  color: #060d18 !important;
  font-weight: 900 !important;
}

.nw-okres-tab.active {
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Nieaktywne — białe */
.nw-rk-kat-btn:not(.active) .nw-rk-kat-label { color: var(--white) !important; }
.nw-rk-kat-btn:not(.active) .nw-rk-kat-sub { color: rgba(255,255,255,0.5) !important; }
.nw-rk-gat-btn:not(.active) { color: var(--white) !important; }
.nw-okres-tab:not(.active) { color: var(--white) !important; }

/* ── PRZYCISKI ZŁOTE — BIAŁY TEKST ──────── */
.nw-btn-gold,
.nw-btn-gold * {
  color: #060d18 !important;
  font-weight: 800 !important;
}

/* Wyjątek — gdy tekst jest bardzo mały */
.nw-btn-gold[style*="font-size:11px"] {
  color: #060d18 !important;
}

/* ── OSTATECZNA POPRAWKA ZŁOTYCH PRZYCISKÓW ── */
.nw-btn-gold,
a.nw-btn-gold,
button.nw-btn-gold {
  color: #060d18 !important;
}

/* ── SAFE AREA iPHONE ───────────────────── */
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .nw-mobile-nav {
    padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    height: calc(56px + env(safe-area-inset-bottom)) !important;
  }

  body.nw-home,
  body.nw-subpage {
    padding-bottom: calc(56px + env(safe-area-inset-bottom)) !important;
  }
}

/* ── LIPAR ──────────────────────────────── */
.nw-lipar-box {
  background: linear-gradient(135deg, rgba(201,146,42,0.08), rgba(13,32,64,0.5));
  border: 1px solid rgba(201,146,42,0.3);
  border-radius: 8px;
  padding: 16px !important;
  margin-top: 8px;
}

.nw-lipar-check span {
  font-size: 14px !important;
  color: var(--white) !important;
}

.nw-lipar-check strong { color: var(--gold-b) !important; }

.nw-lipar-info {
  font-size: 11px;
  color: var(--gray);
  margin-top: 6px;
  margin-left: 26px;
}

.nw-lipar-info a { color: var(--gold-l) !important; }

/* Zakładka Lipar w rankingu */
.nw-lipar-tab {
  background: linear-gradient(135deg, rgba(201,146,42,0.2), rgba(13,32,64,0.8)) !important;
  border-color: rgba(201,146,42,0.4) !important;
}

.nw-lipar-tab.active {
  background: var(--gold) !important;
}

.nw-lipar-header {
  text-align: center;
  padding: 24px 0;
  margin-bottom: 20px;
}

.nw-lipar-badge {
  display: inline-block;
  font-family: 'Playfair Display', serif;
  font-size: 36px;
  font-weight: 900;
  color: var(--gold-b);
  letter-spacing: 4px;
  text-shadow: 0 0 30px rgba(201,146,42,0.4);
  margin-bottom: 8px;
}

.nw-lipar-subtitle {
  font-size: 13px;
  color: var(--gray);
  margin-bottom: 8px;
}

.nw-lipar-link {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--gold-l) !important;
  text-transform: uppercase;
  text-decoration: none;
}

.nw-lipar-link:hover { color: var(--gold-b) !important; }

/* ── KAFELEK KAWA ───────────────────────── */
.nw-tile-coffee {
  background: linear-gradient(135deg, rgba(101,67,33,0.88), rgba(60,30,10,0.88));
  color: #f5d49a;
  border-color: rgba(245,212,154,0.3);
}
.nw-tile-coffee:hover {
  background: linear-gradient(135deg, rgba(120,80,40,0.98), rgba(80,40,10,0.98));
  color: #fff;
  border-color: rgba(245,212,154,0.6);
}

/* ── SEKCJA WSPARCIA ────────────────────── */
.nw-support-sec { background: var(--deep) !important; }

.nw-support-wrap {
  max-width: 560px;
  margin: 0 auto;
  padding: 20px 0;
}

.nw-support-icon {
  font-size: 56px;
  margin-bottom: 16px;
  filter: drop-shadow(0 0 20px rgba(245,212,154,0.4));
}

.nw-support-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  font-weight: 900 !important;
  color: var(--white) !important;
  margin-bottom: 12px !important;
}

.nw-support-text {
  color: var(--gray) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin-bottom: 24px !important;
}

.nw-support-btn {
  display: inline-block;
  background: linear-gradient(135deg, #8B5E3C, #6B3F1F);
  color: #f5d49a !important;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 16px 40px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s;
  border: 1px solid rgba(245,212,154,0.3);
}

.nw-support-btn:hover {
  background: linear-gradient(135deg, #a06a42, #7a4a22);
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(101,67,33,0.4);
  text-decoration: none;
}

/* ── KAFELEK LIPAR ──────────────────────── */
.nw-tile-lipar {
  background: linear-gradient(135deg, rgba(20,60,20,0.88), rgba(10,40,10,0.88));
  color: var(--gold-l);
  border-color: rgba(201,146,42,0.3);
}
.nw-tile-lipar:hover {
  background: linear-gradient(135deg, rgba(30,80,30,0.98), rgba(15,55,15,0.98));
  color: var(--gold-b);
  border-color: rgba(201,146,42,0.6);
}

/* ── ŁOWISKA ────────────────────────────── */
.nw-lowiska-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
}

.nw-lowisko-card {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 20px;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.nw-lowisko-card:hover {
  border-color: rgba(201,146,42,0.3);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.4);
}

.nw-lowisko-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.nw-lowisko-icon {
  font-size: 28px;
  flex-shrink: 0;
}

.nw-lowisko-nazwa {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 4px;
}

.nw-lowisko-miasto {
  font-size: 12px;
  color: var(--gold-l);
  font-family: 'Barlow Condensed', sans-serif;
  letter-spacing: 1px;
}

.nw-lowisko-opis {
  font-size: 13px;
  color: var(--gray);
  line-height: 1.6;
  flex: 1;
}

.nw-lowisko-footer {
  display: flex;
  gap: 10px;
  margin-top: auto;
  flex-wrap: wrap;
}

.nw-lowisko-mapa,
.nw-lowisko-dodaj {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 8px 14px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s;
}

.nw-lowisko-mapa {
  background: rgba(79,195,247,0.1);
  border: 1px solid rgba(79,195,247,0.3);
  color: var(--cyan) !important;
}

.nw-lowisko-mapa:hover {
  background: rgba(79,195,247,0.2);
  color: #fff !important;
  text-decoration: none;
}

.nw-lowisko-dodaj {
  background: rgba(201,146,42,0.1);
  border: 1px solid rgba(201,146,42,0.3);
  color: var(--gold-l) !important;
}

.nw-lowisko-dodaj:hover {
  background: rgba(201,146,42,0.2);
  color: var(--gold-b) !important;
  text-decoration: none;
}

/* ── OKRĘG W HEADERZE ───────────────────── */
.nw-header-okreg {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--gold-l);
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 4px;
}

@media (max-width: 900px) {
  .nw-header-okreg { display: none; }
}

/* ── OKRĘG W HERO ───────────────────────── */
.nw-hero-okreg {
  display: inline-block;
  background: rgba(13,32,64,0.85);
  border: 2px solid var(--gold);
  border-radius: 30px;
  padding: 8px 24px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-b);
  margin-bottom: 24px;
  backdrop-filter: blur(10px);
  box-shadow: 0 0 20px rgba(201,146,42,0.2);
}

@media (max-width: 768px) {
  .nw-hero-okreg {
    font-size: 11px;
    letter-spacing: 2px;
    padding: 6px 16px;
    margin-bottom: 16px;
  }
}

/* ── NEWSLETTER SEKCJA ──────────────────── */
.nw-newsletter-wrap {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 48px;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
}

.nw-newsletter-img img {
  width: 100%;
  border-radius: 12px;
  filter: drop-shadow(0 8px 32px rgba(0,0,0,0.5));
}

@media (max-width: 768px) {
  .nw-newsletter-wrap {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .nw-newsletter-img {
    max-width: 200px;
    margin: 0 auto;
  }
  .nw-newsletter-content .nw-sec-title {
    text-align: center !important;
  }
}

/* ── STYLE ARTYKUŁÓW ────────────────────── */
.single-post body,
.blog body {
  background: var(--deep) !important;
}

/* Główny kontener artykułu */
.single-post .site-content,
.single-post .content-area,
.single-post .site-main,
.single-post article {
  background: transparent !important;
}

.single-post .entry-content,
.single-post .entry-header {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Nagłówek artykułu */
.single-post .entry-header {
  padding-top: 100px;
  padding-bottom: 40px;
  text-align: center;
}

.single-post .entry-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(28px, 4vw, 48px) !important;
  font-weight: 900 !important;
  color: var(--white) !important;
  line-height: 1.2 !important;
  margin-bottom: 16px !important;
}

.single-post .entry-meta {
  color: var(--gold-l) !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 13px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

.single-post .entry-meta a {
  color: var(--gold-l) !important;
}

/* Obraz wyróżniający */
.single-post .post-thumbnail {
  max-width: 900px;
  margin: 0 auto 48px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 16px 48px rgba(0,0,0,0.5);
}

.single-post .post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}

/* Treść artykułu */
.single-post .entry-content {
  color: rgba(255,255,255,0.82) !important;
  font-family: 'Barlow', sans-serif !important;
  font-size: 17px !important;
  line-height: 1.85 !important;
}

.single-post .entry-content p {
  margin-bottom: 24px !important;
  color: rgba(255,255,255,0.82) !important;
}

.single-post .entry-content h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  font-weight: 900 !important;
  color: var(--gold-b) !important;
  margin: 48px 0 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(201,146,42,0.3) !important;
}

.single-post .entry-content h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(18px, 2.5vw, 24px) !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  margin: 36px 0 16px !important;
}

.single-post .entry-content a {
  color: var(--gold-l) !important;
  text-decoration: underline !important;
}

.single-post .entry-content a:hover {
  color: var(--gold-b) !important;
}

.single-post .entry-content strong {
  color: var(--white) !important;
  font-weight: 700 !important;
}

.single-post .entry-content em {
  color: var(--gold-l) !important;
}

.single-post .entry-content blockquote {
  border-left: 4px solid var(--gold) !important;
  background: rgba(201,146,42,0.06) !important;
  padding: 20px 24px !important;
  margin: 32px 0 !important;
  border-radius: 0 8px 8px 0 !important;
  color: rgba(255,255,255,0.9) !important;
  font-style: italic !important;
  font-size: 18px !important;
}

.single-post .entry-content ul,
.single-post .entry-content ol {
  padding-left: 24px !important;
  margin-bottom: 24px !important;
}

.single-post .entry-content li {
  margin-bottom: 8px !important;
  color: rgba(255,255,255,0.82) !important;
}

.single-post .entry-content img {
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;
  max-width: 100% !important;
}

/* Separator */
.single-post .entry-content hr {
  border: none !important;
  border-top: 1px solid rgba(201,146,42,0.3) !important;
  margin: 40px 0 !important;
}

/* Nawigacja po artykułach */
.single-post .post-navigation {
  max-width: 780px;
  margin: 48px auto;
  padding: 24px;
  border-top: 1px solid rgba(255,255,255,0.08);
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.single-post .nav-previous a,
.single-post .nav-next a {
  color: var(--gold-l) !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

/* Lista artykułów (blog) */
.blog .site-content {
  background: transparent !important;
}

.blog article {
  background: var(--navy) !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  border-radius: 10px !important;
  margin-bottom: 24px !important;
  padding: 24px !important;
  transition: all 0.3s !important;
}

.blog article:hover {
  border-color: rgba(201,146,42,0.3) !important;
  transform: translateY(-2px) !important;
}

.blog .entry-title a {
  font-family: 'Playfair Display', serif !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

.blog .entry-title a:hover {
  color: var(--gold-l) !important;
}

.blog .entry-summary {
  color: var(--gray) !important;
}

/* ── ZAWODY / KONKURSY — zakładki i karty ──────────────────── */
.nw-zaw-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 32px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding-bottom: 0;
}

.nw-zaw-tab {
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  color: var(--gray);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 12px 20px;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: -1px;
}

.nw-zaw-tab:hover { color: var(--white); }
.nw-zaw-tab.active { color: var(--gold-b); border-bottom-color: var(--gold); }

.nw-zaw-count {
  background: var(--gold);
  color: var(--deep);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 10px;
}

.nw-zaw-count-gray {
  background: rgba(255,255,255,0.12);
  color: var(--gray);
}

.nw-zaw-panel { display: none; }
.nw-zaw-panel.active { display: block; }

.nw-zaw-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
}

.nw-zaw-card {
  background: var(--navy);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s;
}

.nw-zaw-card:hover {
  border-color: rgba(201,146,42,0.35);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.4);
}

.nw-zaw-card-arch { opacity: 0.7; }
.nw-zaw-card-arch:hover { opacity: 1; }

.nw-zaw-plakat {
  position: relative;
  overflow: hidden;
  aspect-ratio: 210 / 297; /* A4 pionowy */
  background: var(--dark);
}

.nw-zaw-plakat img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
  transition: transform 0.4s;
}

.nw-zaw-card:hover .nw-zaw-plakat img { transform: scale(1.03); }

.nw-zaw-plakat-over {
  position: absolute;
  inset: 0;
  background: rgba(6,13,24,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 0.3s;
}

.nw-zaw-card:hover .nw-zaw-plakat-over { opacity: 1; }

.nw-zaw-body { padding: 20px; }

.nw-zaw-arch-badge {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gray);
  margin-bottom: 8px;
}

.nw-zaw-title {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 14px;
  line-height: 1.3;
}

.nw-zaw-meta { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; }

.nw-zaw-meta-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  color: var(--light);
  line-height: 1.4;
}

.nw-zaw-icon { font-size: 14px; flex-shrink: 0; margin-top: 1px; }

.nw-zaw-countdown {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 16px;
}

.nw-zaw-btn {
  display: inline-block;
  background: var(--gold);
  color: var(--deep);
  padding: 10px 20px;
  border-radius: 4px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.2s;
}

.nw-zaw-btn:hover {
  background: var(--gold-b);
  color: var(--deep);
  text-decoration: none;
  transform: translateY(-2px);
}

.nw-zaw-empty {
  text-align: center;
  padding: 60px 24px;
  color: var(--gray);
}

.nw-zaw-empty h3 {
  font-family: 'Playfair Display', serif;
  color: var(--white);
  margin-bottom: 12px;
  font-size: 22px;
}

.nw-zaw-empty p { font-size: 14px; line-height: 1.7; }

@media (max-width: 600px) {
  .nw-zaw-grid { grid-template-columns: 1fr; }
  .nw-zaw-tab { padding: 10px 14px; font-size: 12px; }
}

/* ── ZASADY POŁOWÓW — shortcode [zasady_polowow] ──────────── */
.nw-zasady-wrap {
    background: var(--navy);
    border: 1px solid rgba(201,168,76,0.2);
    border-radius: 12px;
    padding: 32px;
    margin: 24px 0;
}

.nw-zasady-title {
    font-family: 'Playfair Display', serif;
    font-size: 22px;
    color: var(--white);
    margin-bottom: 12px;
}

.nw-zasady-desc {
    color: var(--gray);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 24px;
}

.nw-zasady-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.nw-zasady-table thead tr {
    border-bottom: 2px solid rgba(201,168,76,0.3);
}

.nw-zasady-table th {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-l);
    padding: 10px 14px;
    text-align: left;
}

.nw-zasady-table td {
    padding: 10px 14px;
    font-size: 14px;
    color: var(--light);
    border-bottom: 1px solid rgba(255,255,255,0.05);
}

.nw-zasady-table tbody tr:hover td {
    background: rgba(255,255,255,0.03);
}

.nw-zasady-prog {
    background: rgba(201,168,76,0.15);
    color: var(--gold-b);
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 4px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    letter-spacing: 1px;
}

.nw-zasady-przyklad {
    color: var(--gray);
    font-size: 13px;
}

.nw-zasady-note {
    font-size: 13px;
    color: var(--gray);
    line-height: 1.7;
    border-top: 1px solid rgba(255,255,255,0.06);
    padding-top: 16px;
    margin: 0;
}

@media (max-width: 600px) {
    .nw-zasady-wrap { padding: 20px 16px; }
    .nw-zasady-table th:last-child,
    .nw-zasady-table td:last-child { display: none; }
}

/* Junior próg w tabeli zasad */
.nw-zasady-prog-junior { background: rgba(100,181,246,0.15); color: #90caf9; }
.nw-zasady-prog-note { font-size: 10px; opacity: 0.7; margin-left: 4px; }

/* ── REJESTRACJA / LOGOWANIE ────────────────────────────────── */
.nw-reg-wrap {
    max-width: 720px;
    margin: 0 auto;
}

.nw-reg-errors {
    margin-bottom: 20px;
}

.nw-reg-error {
    background: rgba(239,83,80,0.12);
    border: 1px solid rgba(239,83,80,0.3);
    color: #ef9a9a;
    padding: 10px 16px;
    border-radius: 6px;
    font-size: 14px;
    margin-bottom: 6px;
}

.nw-reg-success {
    background: rgba(129,199,132,0.1);
    border: 1px solid rgba(129,199,132,0.3);
    border-radius: 12px;
    padding: 40px 32px;
    text-align: center;
    max-width: 480px;
    margin: 0 auto;
}

.nw-reg-success h3 {
    font-family: 'Playfair Display', serif;
    color: var(--white);
    font-size: 24px;
    margin-bottom: 12px;
}

.nw-reg-success p {
    color: var(--gray);
    font-size: 15px;
    line-height: 1.7;
}

/* Siatka awatarów */
.nw-avatar-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    gap: 10px;
    margin-bottom: 8px;
}

.nw-avatar-option {
    cursor: pointer;
    border-radius: 8px;
    overflow: hidden;
    border: 3px solid transparent;
    transition: all 0.2s;
    aspect-ratio: 1;
    display: block;
}

.nw-avatar-option img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.2s;
}

.nw-avatar-option:hover {
    border-color: rgba(201,168,76,0.5);
    transform: scale(1.05);
}

.nw-avatar-option.selected {
    border-color: var(--gold);
    box-shadow: 0 0 0 2px var(--gold-b);
}

.nw-avatar-option.selected img {
    transform: scale(1.03);
}

/* Awatar w profilu mini */
.nw-profil-avatar-mini {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 3px solid var(--gold);
    object-fit: cover;
    display: block;
    margin: 0 auto 12px;
}

/* Zalogowany komunikat */
.nw-juz-zalogowany {
    text-align: center;
    padding: 32px;
    background: var(--navy);
    border-radius: 12px;
    border: 1px solid rgba(201,168,76,0.2);
    max-width: 400px;
    margin: 0 auto;
}

.nw-juz-zalogowany p {
    color: var(--light);
    font-size: 15px;
    margin-bottom: 8px;
}

@media (max-width: 600px) {
    .nw-avatar-grid { grid-template-columns: repeat(5, 1fr); gap: 6px; }
    .nw-reg-success { padding: 24px 16px; }
}

/* ── SINGLE ARTYKUŁ ─────────────────────────────────────────── */
.nw-article-container {
    max-width: 760px;
    padding: 40px 32px;
}

.nw-article-thumb {
    margin-bottom: 36px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0,0,0,0.4);
    aspect-ratio: 16/9;
}

.nw-article-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.nw-article-header {
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

.nw-article-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 3.5vw, 42px);
    font-weight: 700;
    color: var(--white);
    line-height: 1.25;
    margin-bottom: 20px;
}

.nw-article-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 13px;
    color: var(--gray);
}

.nw-article-author-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--gold);
    flex-shrink: 0;
}

.nw-article-author {
    color: var(--gold-l);
    font-weight: 600;
}

.nw-article-sep { color: rgba(255,255,255,0.2); }
.nw-article-updated { font-style: italic; }

/* Treść artykułu */
.nw-article-content {
    font-size: 16px;
    line-height: 1.85;
    color: var(--light);
    border-top: 1px solid rgba(255,255,255,0.06);
    padding-top: 32px;
    margin-bottom: 40px;
}

.nw-article-content h2 {
    font-family: 'Playfair Display', serif;
    font-size: 26px;
    color: var(--white);
    margin: 40px 0 16px;
}

.nw-article-content h3 {
    font-family: 'Playfair Display', serif;
    font-size: 20px;
    color: var(--white);
    margin: 32px 0 12px;
}

.nw-article-content p {
    margin-bottom: 20px;
}

.nw-article-content a {
    color: var(--gold-l);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.nw-article-content a:hover { color: var(--gold-b); }

.nw-article-content img {
    max-width: 100%;
    border-radius: 8px;
    margin: 24px 0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.3);
}

.nw-article-content blockquote {
    border-left: 4px solid var(--gold);
    margin: 24px 0;
    padding: 16px 24px;
    background: rgba(201,168,76,0.06);
    border-radius: 0 8px 8px 0;
    color: var(--light);
    font-style: italic;
}

.nw-article-content ul, .nw-article-content ol {
    padding-left: 24px;
    margin-bottom: 20px;
}

.nw-article-content li { margin-bottom: 8px; }

/* Tagi */
.nw-article-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 40px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,0.06);
}

.nw-article-tag {
    background: rgba(201,168,76,0.1);
    color: var(--gold-l);
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    text-decoration: none;
    transition: background 0.2s;
}

.nw-article-tag:hover {
    background: rgba(201,168,76,0.2);
    text-decoration: none;
}

/* Nawigacja poprzedni/następny */
.nw-article-nav {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding-top: 32px;
    border-top: 1px solid rgba(255,255,255,0.06);
    margin-bottom: 40px;
}

.nw-article-nav-btn {
    color: var(--gold-l);
    font-size: 14px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    text-decoration: none;
    max-width: 45%;
    line-height: 1.4;
    transition: color 0.2s;
}

.nw-article-nav-btn:hover { color: var(--gold-b); text-decoration: none; }
.nw-article-nav-next { text-align: right; }

@media (max-width: 600px) {
    .nw-article-title { font-size: 26px; }
    .nw-article-content { font-size: 15px; }
    .nw-article-nav { flex-direction: column; }
    .nw-article-nav-next { text-align: left; }
}

/* ── PODIUM WIZUALNE ────────────────────────────────────────── */
.nw-podium-wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 8px;
    margin: 32px 0 8px;
    padding: 0 16px;
}

.nw-podium-slot {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    max-width: 200px;
    min-width: 100px;
}

.nw-podium-empty { opacity: 0.3; }

.nw-podium-korona {
    font-size: 28px;
    margin-bottom: 4px;
    animation: nw-bounce 1.5s ease-in-out infinite;
}

@keyframes nw-bounce {
    0%,100% { transform: translateY(0); }
    50%      { transform: translateY(-6px); }
}

.nw-podium-avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid rgba(255,255,255,0.2);
    margin-bottom: 8px;
}

.nw-podium-avatar-1 {
    width: 80px;
    height: 80px;
    border-color: var(--gold);
    box-shadow: 0 0 20px rgba(201,168,76,0.5);
}

.nw-podium-name {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: var(--white);
    text-align: center;
    margin-bottom: 4px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nw-podium-dl {
    font-size: 18px;
    font-weight: 700;
    color: var(--gold-b);
    font-family: 'Barlow Condensed', sans-serif;
    margin-bottom: 2px;
}

.nw-podium-pkt {
    font-size: 13px;
    color: var(--gold-l);
    font-family: 'Barlow Condensed', sans-serif;
    margin-bottom: 2px;
}

.nw-podium-sub {
    font-size: 11px;
    color: var(--gray);
    margin-bottom: 4px;
}

.nw-podium-blok {
    width: 100%;
    text-align: center;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 10px 0;
    border-radius: 6px 6px 0 0;
    margin-top: 8px;
}

.nw-podium-blok-1 {
    background: linear-gradient(135deg, #c9a84c, #f0d060);
    color: #060d18;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.nw-podium-blok-2 {
    background: linear-gradient(135deg, #8a9bb0, #b0c4d8);
    color: #060d18;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nw-podium-blok-3 {
    background: linear-gradient(135deg, #a0622a, #c8844c);
    color: #fff;
    min-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nw-rk-pkt {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    color: var(--gold-l);
}

@media (max-width: 600px) {
    .nw-podium-avatar { width: 48px; height: 48px; }
    .nw-podium-avatar-1 { width: 60px; height: 60px; }
    .nw-podium-name { font-size: 11px; }
    .nw-podium-dl { font-size: 15px; }
    .nw-podium-wrap { gap: 4px; padding: 0 4px; }
}

/* ── PODIUM Z OBRAZKIEM TŁA ─────────────────────────────────── */
.nw-podium-img-wrap {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: 24px auto 0;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.nw-podium-bg {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px 12px 0 0;
}

/* Kontener całego podium + lista */
.nw-podium-section {
    background: var(--navy, #0d2040);
    border-radius: 12px;
    overflow: hidden;
    margin: 24px 0 8px;
    border: 1px solid rgba(201,168,76,0.15);
}

.nw-podium-section .nw-rk-table {
    margin: 0;
    border-radius: 0;
}

.nw-podium-section .nw-rk-table thead tr th {
    background: rgba(6,13,24,0.6);
}

.nw-podium-lista-pod {
    padding: 0 0 8px;
}

/* Pozycje avatarów — w % względem szerokości/wysokości obrazka */
.nw-podium-pos {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(-50%);
}

/* Miejsce 1 — środek, najwyżej */
.nw-podium-pos-1 {
    left: 50%;
    bottom: 52%;
}

/* Miejsce 2 — lewo */
.nw-podium-pos-2 {
    left: 24%;
    bottom: 46%;
}

/* Miejsce 3 — prawo */
.nw-podium-pos-3 {
    left: 76%;
    bottom: 43%;
}

.nw-podium-korona-img {
    font-size: 22px;
    margin-bottom: 2px;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.8));
    animation: nw-bounce 1.5s ease-in-out infinite;
}

.nw-podium-face {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #c9a84c;
    box-shadow: 0 4px 12px rgba(0,0,0,0.7);
    background: rgba(6,13,24,0.6);
}

.nw-podium-face-1 {
    width: 70px;
    height: 70px;
    border-width: 4px;
    box-shadow: 0 4px 20px rgba(201,168,76,0.6);
}

.nw-podium-face-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    background: rgba(6,13,24,0.5);
    border-color: rgba(255,255,255,0.2);
}

.nw-podium-label {
    margin-top: 4px;
    text-align: center;
    background: rgba(6,13,24,0.75);
    border-radius: 6px;
    padding: 3px 8px;
    backdrop-filter: blur(4px);
    white-space: nowrap;
}

.nw-podium-lname {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.5px;
}

.nw-podium-ldl {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    color: #c9a84c;
    letter-spacing: 0.5px;
}

@media (max-width: 600px) {
    .nw-podium-face { width: 36px; height: 36px; border-width: 2px; }
    .nw-podium-face-1 { width: 46px; height: 46px; }
    .nw-podium-lname { font-size: 10px; }
    .nw-podium-ldl { font-size: 9px; }
    .nw-podium-korona-img { font-size: 16px; }
    .nw-podium-label { padding: 2px 5px; }
}

/* Gatunki — tylko dropdown, bez rzędu przycisków */
.nw-rk-gatunek-btns { display: none !important; }
.nw-rk-gatunek-select { display: block !important; }
.nw-rk-gatunek-wrap { margin-bottom: 20px; }

/* ── RANKING — nowy wygląd zakładek i przycisków ───────────── */

/* Zakładki główne — siatka 2 kolumny */
.nw-ranking-okresy {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 20px;
}

.nw-okres-tab {
    padding: 14px 10px;
    border-radius: 8px;
    border: 1px solid rgba(201,168,76,0.3);
    background: rgba(13,32,64,0.8);
    cursor: pointer;
    text-align: center;
    color: rgba(255,255,255,0.6);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.nw-okres-tab.active {
    border-color: #c9a84c;
    background: rgba(201,168,76,0.12);
    color: #c9a84c;
}

/* Złota ramka dla zakładki Mistrzowie Roku */
.nw-okres-tab[data-okres="rok"].active {
    border: 2px solid #c9a84c;
    box-shadow: 0 0 12px rgba(201,168,76,0.25), inset 0 0 12px rgba(201,168,76,0.06);
    background: linear-gradient(135deg, rgba(201,168,76,0.2), rgba(201,168,76,0.05));
    color: #f0d060;
}

/* Przyciski Senior/Junior — siatka, napisy wyśrodkowane */
.nw-rk-kategorie {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 16px;
}

.nw-rk-kat-btn {
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(13,32,64,0.5);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    text-align: center;
    transition: all 0.2s;
}

.nw-rk-kat-btn.active {
    border-color: #c9a84c;
    background: rgba(201,168,76,0.1);
}

.nw-rk-kat-icon { font-size: 20px; }

.nw-rk-kat-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #fff;
}

.nw-rk-kat-sub {
    font-size: 10px;
    color: rgba(255,255,255,0.4);
}

/* ── RANKING — redesign ─────────────────────────────────────── */

/* Ozdobny tytuł złoty */
.nw-rk-hero-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(32px, 5vw, 56px);
    font-weight: 900;
    text-align: center;
    color: var(--gold);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
    text-shadow: 0 2px 20px rgba(201,168,76,0.3);
}

/* Licznik — samo odliczanie, wyśrodkowane */
.nw-rk-countdown-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 28px;
}

.nw-rk-countdown .nw-cd-unit { min-width: 52px; }
.nw-rk-countdown .nw-cd-num {
    font-size: 28px;
    background: rgba(13,32,64,0.8);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 6px;
    padding: 6px 10px;
}

/* Zakładki — nowy styl */
.nw-ranking-okresy {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 16px;
}

.nw-okres-tab {
    padding: 16px 12px;
    border-radius: 8px;
    border: 1px solid rgba(201,168,76,0.25);
    background: rgba(13,32,64,0.6);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    transition: all 0.2s;
    color: rgba(255,255,255,0.5);
}

.nw-okres-tab:hover {
    border-color: rgba(201,168,76,0.5);
    color: rgba(255,255,255,0.8);
}

.nw-okres-tab.active {
    border-color: var(--gold);
    background: rgba(201,168,76,0.1);
    color: var(--gold-b);
}

.nw-okres-tab[data-okres="rok"].active {
    border: 2px solid var(--gold);
    background: linear-gradient(135deg, rgba(201,168,76,0.18), rgba(201,168,76,0.04));
    box-shadow: 0 0 16px rgba(201,168,76,0.2);
    color: #f0d060;
}

.nw-okres-tab-icon { font-size: 22px; }

.nw-okres-tab-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: inherit;
}

.nw-okres-tab-sub {
    font-size: 12px;
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.6);
    text-transform: uppercase;
}

.nw-okres-tab.active .nw-okres-tab-sub {
    color: rgba(201,168,76,0.8);
}

/* Senior/Junior — równe z zakładkami */
.nw-rk-kategorie {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 16px;
}

.nw-rk-kat-btn {
    padding: 16px 12px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.15);
    background: rgba(13,32,64,0.6);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    transition: all 0.2s;
    min-height: 80px;
}

.nw-rk-kat-btn.active {
    border-color: var(--gold);
    background: rgba(201,168,76,0.12);
}

.nw-rk-kat-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #fff;
}

.nw-rk-kat-sub {
    font-size: 11px;
    color: rgba(255,255,255,0.5);
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 1px;
}

/* Dropdown gatunku — wyśrodkowany */
.nw-rk-gatunek-wrap { margin-bottom: 16px; }
.nw-rk-gatunek-select {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 16px;
    background: rgba(13,32,64,0.8);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 8px;
    color: var(--white);
    font-size: 15px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

/* Puste wiersze tabeli */
.nw-rk-row-empty td { color: rgba(255,255,255,0.15); }

/* Zmiana koloru tabeli co 10 rzędów */
.nw-rk-row:nth-child(-n+10) { background: rgba(13,32,64,0.4); }
.nw-rk-row:nth-child(n+11):nth-child(-n+20) { background: rgba(6,20,48,0.5); }
.nw-rk-row:nth-child(n+21):nth-child(-n+30) { background: rgba(13,32,64,0.4); }
.nw-rk-row:nth-child(n+31):nth-child(-n+40) { background: rgba(6,20,48,0.5); }
.nw-rk-row:nth-child(n+41):nth-child(-n+50) { background: rgba(13,32,64,0.4); }
.nw-rk-row:nth-child(n+51):nth-child(-n+60) { background: rgba(6,20,48,0.5); }
.nw-rk-row:nth-child(n+61):nth-child(-n+70) { background: rgba(13,32,64,0.4); }
.nw-rk-row:nth-child(n+71):nth-child(-n+80) { background: rgba(6,20,48,0.5); }
.nw-rk-row:nth-child(n+81):nth-child(-n+90) { background: rgba(13,32,64,0.4); }
.nw-rk-row:nth-child(n+91):nth-child(-n+100) { background: rgba(6,20,48,0.5); }

/* ── RANKING poprawki widoczności ───────────────────────────── */

/* Podtytuł MAJ/ROK — większy i zawsze złoty */
.nw-okres-tab-sub {
    font-size: 13px !important;
    color: #c9a84c !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    opacity: 1 !important;
}

/* Mistrzowie Roku — grubsza złota ramka zawsze */
.nw-okres-tab[data-okres="rok"] {
    border: 2px solid rgba(201,168,76,0.5);
}

.nw-okres-tab[data-okres="rok"].active {
    border: 3px solid #c9a84c !important;
    box-shadow: 0 0 20px rgba(201,168,76,0.35), inset 0 0 16px rgba(201,168,76,0.08) !important;
}

/* Senior — taki sam rozmiar i widoczność jak Junior */
.nw-rk-kat-btn { width: 100% !important; min-height: 90px !important; }
.nw-rk-kat-label { color: #fff !important; font-size: 15px !important; }

/* ── RANKING — finalne poprawki (nadpisują wszystko wcześniejsze) ── */

/* Senior/Junior — wymuszone identyczne z zakładkami */
.nw-rk-kategorie { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; margin-bottom: 16px !important; }
.nw-rk-kat-btn { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 90px !important; padding: 16px 12px !important; border-radius: 8px !important; border: 1px solid rgba(201,168,76,0.3) !important; background: rgba(13,32,64,0.7) !important; cursor: pointer !important; gap: 6px !important; }
.nw-rk-kat-btn.active { border-color: #c9a84c !important; background: rgba(201,168,76,0.12) !important; }
.nw-rk-kat-label { font-family: 'Barlow Condensed', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: 3px !important; text-transform: uppercase !important; color: #ffffff !important; }
.nw-rk-kat-sub { font-size: 11px !important; color: rgba(255,255,255,0.55) !important; font-family: 'Barlow Condensed', sans-serif !important; }

/* Zakładki — podtytuły jasne i złote */
.nw-okres-tab { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 16px 12px !important; min-height: 90px !important; border-radius: 8px !important; cursor: pointer !important; gap: 4px !important; }
.nw-okres-tab-title { color: #ffffff !important; font-family: 'Barlow Condensed', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: 2px !important; text-transform: uppercase !important; }
.nw-okres-tab-sub { color: #c9a84c !important; font-family: 'Barlow Condensed', sans-serif !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 2px !important; text-transform: uppercase !important; }
.nw-okres-tab[data-okres="rok"] { border: 2px solid rgba(201,168,76,0.5) !important; }
.nw-okres-tab[data-okres="rok"].active { border: 3px solid #c9a84c !important; box-shadow: 0 0 24px rgba(201,168,76,0.3) !important; }

/* Licznik — biały/złoty tekst */
.nw-countdown-timer .nw-cd-num { color: #c9a84c !important; font-size: 24px !important; }
.nw-countdown-timer .nw-cd-label { color: rgba(255,255,255,0.6) !important; }
.nw-countdown-timer .nw-cd-sep { color: #c9a84c !important; }

/* Panel roczny — ciemno-złote tło */
.nw-panel-rok {
    background: linear-gradient(180deg, #1a1200 0%, #0f0c00 100%);
    border-radius: 12px;
    padding: 20px;
    margin: -8px -8px 0;
}

.nw-panel-rok .nw-rk-kat-btn {
    background: rgba(40,28,0,0.8) !important;
    border-color: rgba(201,168,76,0.4) !important;
}

.nw-panel-rok .nw-rk-kat-btn.active {
    background: rgba(201,168,76,0.18) !important;
    border-color: #c9a84c !important;
}

.nw-panel-rok .nw-rk-gatunek-select {
    background: rgba(30,20,0,0.9) !important;
    border-color: rgba(201,168,76,0.4) !important;
}

.nw-panel-rok .nw-podium-section {
    border-color: rgba(201,168,76,0.3) !important;
}

.nw-panel-rok .nw-rk-table thead tr {
    background: rgba(40,28,0,0.9) !important;
}


/* ── RANKING finalne poprawki ──────────────────────────── */
.nw-rk-hero-title{font-family:'Playfair Display',serif;font-size:clamp(28px,5vw,52px);font-weight:900;text-align:center;color:#c9a84c;letter-spacing:3px;text-transform:uppercase;margin-bottom:24px}
.nw-rk-countdown-wrap{display:flex;justify-content:center;margin-bottom:28px}
.nw-rk-countdown{display:flex;align-items:center;gap:4px}
.nw-rk-countdown .nw-cd-num{display:block;font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:700;color:#c9a84c;background:rgba(13,32,64,0.9);border:1px solid rgba(201,168,76,0.4);border-radius:6px;padding:6px 10px;text-align:center}
.nw-rk-countdown .nw-cd-label{display:block;font-size:10px;color:rgba(255,255,255,0.5);letter-spacing:2px;text-transform:uppercase;margin-top:3px;text-align:center}
.nw-rk-countdown .nw-cd-sep{font-size:24px;color:#c9a84c;font-weight:700;padding-bottom:16px;align-self:flex-end}
.nw-okres-tab-title{font-family:'Barlow Condensed',sans-serif!important;font-size:14px!important;font-weight:700!important;letter-spacing:2px!important;text-transform:uppercase!important;color:#fff!important}
.nw-okres-tab-sub{font-family:'Barlow Condensed',sans-serif!important;font-size:13px!important;font-weight:700!important;letter-spacing:2px!important;color:#c9a84c!important}
.nw-okres-tab-icon{font-size:22px;line-height:1}
.nw-rk-kat-label{color:#ffffff!important}
.nw-rk-kat-sub{color:rgba(255,255,255,0.5)!important}
.nw-rk-kat-icon{display:none!important}
.nw-rk-gatunek-btns{display:none!important}
.nw-rk-gatunek-select{display:block!important;width:100%!important;text-align:center!important}
.nw-panel-rok{background:linear-gradient(180deg,#1c1400 0%,#110d00 100%);border-radius:12px;padding:20px}
.nw-panel-rok .nw-rk-kat-btn{background:rgba(35,25,0,0.9)!important;border-color:rgba(201,168,76,0.4)!important}
.nw-panel-rok .nw-rk-kat-btn.active{background:rgba(201,168,76,0.18)!important;border-color:#c9a84c!important}
.nw-panel-rok .nw-rk-gatunek-select{background:rgba(25,18,0,0.9)!important}
.nw-podium-section .nw-rk-lista{display:block!important}
.nw-rk-row-empty td{color:rgba(255,255,255,0.15)}
.nw-okres-tab[data-okres="rok"].active{border:3px solid #c9a84c!important;box-shadow:0 0 24px rgba(201,168,76,0.3)!important;background:rgba(40,28,0,0.7)!important}


/* ── RANKING — ostatnie poprawki ──────────────────────────── */
/* Senior - biały napis */
.nw-rk-kat-btn:not(.active) .nw-rk-kat-label { color: #ffffff !important; }
.nw-rk-kat-btn .nw-rk-kat-label { color: #ffffff !important; }

/* Zegar - wymuszone style */
#nw-countdown-ranking { display: flex !important; align-items: center !important; gap: 4px !important; }
#nw-countdown-ranking .nw-cd-unit { text-align: center !important; min-width: 56px !important; }
#nw-countdown-ranking .nw-cd-num {
    display: block !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #c9a84c !important;
    background: rgba(13,32,64,0.9) !important;
    border: 1px solid rgba(201,168,76,0.4) !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    text-align: center !important;
    min-width: 56px !important;
}
#nw-countdown-ranking .nw-cd-label {
    display: block !important;
    font-size: 10px !important;
    color: rgba(255,255,255,0.5) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    margin-top: 3px !important;
}
#nw-countdown-ranking .nw-cd-sep {
    font-size: 28px !important;
    color: #c9a84c !important;
    font-weight: 700 !important;
    padding-bottom: 18px !important;
    align-self: flex-end !important;
}

/* Panel roczny - złote tło */
#panel-rok { background: linear-gradient(180deg, #1c1400 0%, #110d00 100%) !important; border-radius: 12px !important; padding: 20px !important; }
#panel-rok .nw-rk-kat-btn { background: rgba(35,25,0,0.9) !important; border-color: rgba(201,168,76,0.4) !important; }
#panel-rok .nw-rk-kat-btn.active { background: rgba(201,168,76,0.18) !important; border-color: #c9a84c !important; }
#panel-rok .nw-rk-gatunek-select { background: rgba(25,18,0,0.9) !important; border-color: rgba(201,168,76,0.4) !important; }
#panel-rok .nw-rk-table thead th { background: rgba(35,25,0,0.95) !important; }
#panel-rok .nw-podium-section { background: #1c1400 !important; border-color: rgba(201,168,76,0.3) !important; }
#panel-rok .nw-rk-row { background: rgba(30,20,0,0.5) !important; }
.nw-rk-countdown-wrap { display: flex !important; justify-content: center !important; margin-bottom: 28px !important; }
.nw-countdown-timer { display: flex !important; align-items: center !important; gap: 4px !important; }

/* ── STOPER ─────────────────────────────────────────────── */
.nw-stoper-wrap {
    text-align: center;
    margin-bottom: 28px;
    padding: 20px;
    background: rgba(13,32,64,0.5);
    border-radius: 10px;
    border: 1px solid rgba(201,168,76,0.15);
}
.nw-stoper-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.4);
    margin-bottom: 12px;
}
.nw-stoper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.nw-stoper-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.nw-stoper-num {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 44px;
    font-weight: 700;
    color: #c9a84c;
    background: rgba(6,13,24,0.8);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 8px;
    padding: 8px 16px;
    min-width: 70px;
    display: block;
    text-align: center;
    line-height: 1;
}
.nw-stoper-opis {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.35);
}
.nw-stoper-sep {
    font-size: 36px;
    color: rgba(201,168,76,0.5);
    font-weight: 700;
    padding-bottom: 18px;
    align-self: flex-end;
}
@media (max-width: 600px) {
    .nw-stoper-num { font-size: 28px; min-width: 46px; padding: 6px 10px; }
    .nw-stoper-sep { font-size: 24px; }
}

/* ── MINI STOPER NA KARTACH ─────────────────────────────── */
.nw-mini-stoper {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 4px 0;
}
.nw-ms-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
}
.nw-ms-unit b {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #c9a84c;
    background: rgba(6,13,24,0.6);
    border-radius: 4px;
    padding: 2px 6px;
    min-width: 28px;
    text-align: center;
    display: block;
}
.nw-ms-unit small {
    font-size: 8px;
    color: rgba(255,255,255,0.4);
    letter-spacing: 1px;
    text-transform: uppercase;
}
.nw-ms-sep {
    font-size: 16px;
    color: rgba(201,168,76,0.6);
    font-weight: 700;
    padding-bottom: 10px;
    align-self: flex-end;
}

/* ── COUNTDOWN TOP — licznik nad plakatem ──────────────── */
.nw-zaw-countdown-top {
    background: rgba(6,13,24,0.9);
    border-bottom: 1px solid rgba(201,168,76,0.2);
    padding: 10px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
}
.nw-cd-badge {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--gray);
}

/* ── DUŻY STOPER NA KARTACH ZAWODÓW/KONKURSÓW ───────────── */
.nw-card-stoper-wrap {
    background: rgba(6,13,24,0.95);
    border-bottom: 1px solid rgba(201,168,76,0.25);
    padding: 12px 8px;
}
.nw-card-stoper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.nw-cs-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.nw-cs-num {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 32px;
    font-weight: 700;
    color: #c9a84c;
    background: rgba(13,32,64,0.8);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 6px;
    padding: 4px 10px;
    min-width: 52px;
    text-align: center;
    line-height: 1;
    display: block;
}
.nw-cs-opis {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 9px;
    color: rgba(255,255,255,0.4);
    letter-spacing: 2px;
    text-transform: uppercase;
}
.nw-cs-sep {
    font-size: 24px;
    color: rgba(201,168,76,0.5);
    font-weight: 700;
    padding-bottom: 14px;
    align-self: flex-end;
}

/* ── STOPER KART — pełny jak w rankingu ─────────────────── */
.nw-card-stoper-wrap {
    background: rgba(6,13,24,0.95) !important;
    border-bottom: 1px solid rgba(201,168,76,0.25) !important;
    padding: 16px 8px !important;
}
.nw-card-stoper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}
.nw-cs-unit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 4px !important;
}
.nw-cs-num {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 40px !important;
    font-weight: 700 !important;
    color: #c9a84c !important;
    background: rgba(13,32,64,0.9) !important;
    border: 1px solid rgba(201,168,76,0.4) !important;
    border-radius: 6px !important;
    padding: 6px 14px !important;
    min-width: 64px !important;
    text-align: center !important;
    line-height: 1 !important;
    display: block !important;
}
.nw-cs-opis {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 10px !important;
    color: rgba(255,255,255,0.45) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}
.nw-cs-sep {
    font-size: 28px !important;
    color: rgba(201,168,76,0.5) !important;
    font-weight: 700 !important;
    padding-bottom: 18px !important;
    align-self: flex-end !important;
}

/* Plakat nieco mniejszy żeby zmieścił się stoper */
.nw-zaw-plakat { aspect-ratio: 3/4; }

.nw-cs-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.4);
    text-align: center;
    margin-bottom: 8px;
}

/* ── ZAWODY/KONKURSY NA STRONIE GŁÓWNEJ ─────────────────── */
.nw-zaw-home-wrap { margin-bottom: 8px; }
.nw-zaw-home-plakat { position: relative; }
.nw-zaw-home-cd {
    background: rgba(6,13,24,0.92);
    border-top: 1px solid rgba(201,168,76,0.2);
    border-radius: 0 0 12px 12px;
    padding: 14px 8px;
    text-align: center;
}

/* ── ZAWODY/KONKURSY — mały plakat + kafelek ────────────── */
.nw-zaw-home-row {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 8px;
}
.nw-zaw-home-mini {
    flex-shrink: 0;
    width: 80px;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,0.5);
    border: 2px solid rgba(201,168,76,0.3);
    transition: border-color 0.2s;
    display: block;
}
.nw-zaw-home-mini:hover { border-color: #c9a84c; }
.nw-zaw-home-mini img {
    width: 100%;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
}
.nw-zaw-home-tile {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 24px 16px;
    background: rgba(13,32,64,0.6);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.2s;
    min-height: 120px;
}
.nw-zaw-home-tile:hover {
    border-color: #c9a84c;
    background: rgba(201,168,76,0.1);
    text-decoration: none;
}
.nw-zaw-home-tile-icon { font-size: 32px; }
.nw-zaw-home-tile-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #c9a84c;
    text-align: center;
}

/* ── KAFELKI ZAWODY/KONKURSY NA GŁÓWNEJ ─────────────────── */
.nw-home-kafelki {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.nw-home-kafel-plakat {
    background: rgba(13,32,64,0.7);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 100px;
}
.nw-home-kafel-badge {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #c9a84c;
    white-space: nowrap;
}
.nw-home-mini-img {
    width: 60px;
    height: 85px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid rgba(201,168,76,0.4);
    display: block;
    flex-shrink: 0;
    transition: border-color 0.2s;
}
.nw-home-mini-img:hover { border-color: #c9a84c; }
.nw-home-kafel-link {
    background: rgba(13,32,64,0.5);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-decoration: none;
    transition: all 0.2s;
    min-height: 100px;
}
.nw-home-kafel-link:hover {
    border-color: #c9a84c;
    background: rgba(201,168,76,0.1);
    text-decoration: none;
}
.nw-home-kafel-link-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #c9a84c;
    text-align: center;
}

/* ── KAFELKI FIX ─────────────────────────────────────────── */
.nw-home-kafel-plakat {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
}
.nw-home-mini-img {
    width: 60px !important;
    height: 85px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    flex-shrink: 0 !important;
    order: 2 !important;
}
.nw-home-kafel-badge {
    font-size: 18px !important;
    order: 1 !important;
    flex: 1 !important;
}

.nw-home-kafel-plakat { justify-content: center !important; }
.nw-home-kafel-badge { flex: 0 !important; text-align: center !important; }

/* ── ŁOWISKA — nowe kafelki ─────────────────────────────── */
.nw-lowiska-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    margin-bottom: 32px;
}
.nw-lowisko-card-new {
    background: var(--navy);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none;
    display: block;
    transition: all 0.2s;
}
.nw-lowisko-card-new:hover {
    border-color: rgba(201,168,76,0.4);
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.3);
    text-decoration: none;
}
.nw-lowisko-img {
    aspect-ratio: 16/9;
    overflow: hidden;
}
.nw-lowisko-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}
.nw-lowisko-card-new:hover .nw-lowisko-img img { transform: scale(1.04); }
.nw-lowisko-img-empty {
    aspect-ratio: 16/9;
    background: rgba(13,32,64,0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
}
.nw-lowisko-body { padding: 14px 16px; }
.nw-lowisko-nazwa {
    font-family: 'Playfair Display', serif;
    font-size: 16px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 6px;
}
.nw-lowisko-lok { font-size: 12px; color: var(--gray); margin-bottom: 4px; }
.nw-lowisko-gat { font-size: 12px; color: var(--gold-l); margin-bottom: 4px; }
.nw-lowisko-warn { font-size: 11px; color: rgba(255,200,100,0.7); margin-bottom: 8px; }
.nw-lowisko-more {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--gold-l);
    text-transform: uppercase;
}

/* Kafelek zgłoś łowisko */
.nw-low-zglos-wrap { margin-bottom: 32px; }
.nw-low-zglos-btn {
    width: 100%;
    padding: 16px 20px;
    background: rgba(13,32,64,0.6);
    border: 1px dashed rgba(201,168,76,0.4);
    border-radius: 10px;
    color: var(--gold-l);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.2s;
}
.nw-low-zglos-btn:hover { border-color: var(--gold); background: rgba(201,168,76,0.08); }
.nw-low-zglos-form {
    background: rgba(13,32,64,0.6);
    border: 1px solid rgba(201,168,76,0.2);
    border-radius: 0 0 10px 10px;
    padding: 20px;
    margin-top: -1px;
}
.nw-form-row { margin-bottom: 10px; }

/* Strona pojedynczego łowiska */
.nw-low-sekcja {
    background: rgba(13,32,64,0.5);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 16px;
}
.nw-low-sekcja-tytul {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-l);
    margin-bottom: 10px;
}
.nw-low-sekcja-tresc {
    font-size: 15px;
    color: var(--light);
    line-height: 1.7;
}
.nw-low-wazne {
    border-color: rgba(255,200,100,0.2);
    background: rgba(40,30,0,0.4);
}
.nw-low-gatunki-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.nw-low-gatunek-tag {
    background: rgba(201,168,76,0.1);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 20px;
    padding: 4px 14px;
    font-size: 13px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    color: var(--gold-l);
    letter-spacing: 1px;
}
.nw-low-cta {
    background: rgba(13,32,64,0.6);
    border: 1px solid rgba(201,168,76,0.2);
    border-radius: 10px;
    padding: 24px;
    text-align: center;
    margin-top: 24px;
}
.nw-low-cta-text {
    font-size: 16px;
    color: var(--white);
    margin-bottom: 16px;
}

/* ── MINIATURY POŁOWÓW NA GŁÓWNEJ ───────────────────────── */
.nw-polowy-mini-kafel {
    display: flex;
    flex-direction: column;
    background: var(--navy);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none;
    transition: all 0.2s;
}
.nw-polowy-mini-kafel:hover {
    border-color: rgba(201,168,76,0.4);
    transform: translateY(-3px);
    text-decoration: none;
}
.nw-polowy-mini-img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
}
.nw-polowy-mini-empty {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    background: rgba(13,32,64,0.6);
}
.nw-polowy-mini-info {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.nw-polowy-mini-gat {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold-l);
}
.nw-polowy-mini-dl {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: var(--white);
}
.nw-polowy-mini-wed {
    font-size: 11px;
    color: var(--gray);
}

/* Kafelek Dodaj połów */
.nw-dodaj-kafel {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 24px 40px !important;
    max-width: 320px !important;
    margin: 0 auto !important;
}

@media (max-width: 600px) {
    .nw-home-kafelki[style*="repeat(4"] {
        grid-template-columns: 1fr 1fr !important;
    }
}

/* ── KARUZELA REKORDÓW ──────────────────────────────────── */
.nw-rek-karuzela-wrap {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
.nw-rek-prev, .nw-rek-next {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(201,168,76,0.4);
    background: rgba(13,32,64,0.8);
    color: #c9a84c;
    font-size: 22px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    line-height: 1;
}
.nw-rek-prev:hover, .nw-rek-next:hover {
    background: rgba(201,168,76,0.15);
    border-color: #c9a84c;
}
.nw-rek-track-wrap {
    flex: 1;
    overflow: hidden;
}
.nw-rek-track {
    display: flex;
    gap: 12px;
    transition: transform 0.35s ease;
}
.nw-rek-slide {
    flex-shrink: 0;
    width: calc(33.333% - 8px);
}
.nw-rek-kafel {
    display: block;
    background: var(--navy);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 10px;
    overflow: hidden;
    text-decoration: none;
    transition: all 0.2s;
    height: 100%;
}
.nw-rek-kafel:hover {
    border-color: rgba(201,168,76,0.4);
    transform: translateY(-2px);
    text-decoration: none;
}
.nw-rek-kafel-img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    display: block;
}
.nw-rek-kafel-empty {
    width: 100%;
    aspect-ratio: 4/3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    background: rgba(13,32,64,0.6);
}
.nw-rek-kafel-body { padding: 10px 12px; }
.nw-rek-kafel-gat {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold-l);
    margin-bottom: 2px;
}
.nw-rek-kafel-wynik {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 2px;
}
.nw-rek-kafel-wed {
    font-size: 11px;
    color: var(--gray);
}

/* Ciemniejszy złoty przycisk dodaj połów */
.nw-dodaj-ciemny {
    background: #a07828 !important;
}
.nw-dodaj-ciemny:hover { background: #c9a84c !important; }

@media (max-width: 600px) {
    .nw-rek-slide { width: calc(100% - 8px); }
}

/* ── 4 KAFELKI REKORDY ──────────────────────────────────── */
.nw-rek4-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.nw-rek4-kafel {
    display: flex;
    flex-direction: column;
    background: var(--navy);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 10px;
    overflow: hidden;
    text-decoration: none;
    transition: all 0.2s;
}
.nw-rek4-kafel:hover {
    border-color: rgba(201,168,76,0.4);
    transform: translateY(-3px);
    text-decoration: none;
}
.nw-rek4-img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
}
.nw-rek4-empty {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    background: rgba(13,32,64,0.6);
}
.nw-rek4-body { padding: 10px 12px; }
.nw-rek4-gat {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold-l);
    margin-bottom: 3px;
}
.nw-rek4-wynik {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 2px;
}
.nw-rek4-wed { font-size: 11px; color: var(--gray); }
.nw-rek4-all {
    align-items: center;
    justify-content: center;
    border-color: rgba(201,168,76,0.3) !important;
    background: rgba(13,32,64,0.5) !important;
    padding: 20px 12px;
}
@media (max-width: 600px) {
    .nw-rek4-grid { grid-template-columns: 1fr 1fr; }
}

/* Zmniejszone kafelki połowów i rekordów */
.nw-rek4-img,
.nw-rek4-empty {
    aspect-ratio: 4/3 !important;
    max-height: 160px !important;
}

/* Mniejszy obrazek w kafelku pustym */
.nw-rek4-empty {
    max-height: 100px !important;
    aspect-ratio: 16/9 !important;
}

/* Pionowe proporcje pustych kafelków */
.nw-rek4-empty {
    aspect-ratio: 3/4 !important;
    max-height: none !important;
}

/* Kwadratowe kafelki rekordów i połowów */
.nw-rek4-img,
.nw-rek4-empty {
    aspect-ratio: 1/1 !important;
    max-height: none !important;
}

/* ── STRONA REJESTRACJI ─────────────────────────────────── */
.nw-reg-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}
.nw-reg-form { }
.nw-reg-field { margin-bottom: 16px; }
.nw-reg-label {
    display: block;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-l);
    margin-bottom: 6px;
}
.nw-reg-input {
    width: 100%;
    padding: 12px 16px;
    background: rgba(13,32,64,0.8);
    border: 1px solid rgba(201,168,76,0.3);
    border-radius: 8px;
    color: #fff;
    font-size: 15px;
    transition: border-color 0.2s;
    box-sizing: border-box;
}
.nw-reg-input:focus {
    outline: none;
    border-color: #c9a84c;
}
.nw-reg-radio-wrap {
    display: flex;
    gap: 20px;
}
.nw-reg-radio {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--light);
    font-size: 14px;
    cursor: pointer;
}
.nw-reg-radio input { cursor: pointer; accent-color: #c9a84c; }

@media (max-width: 700px) {
    .nw-reg-layout { grid-template-columns: 1fr; }
    .nw-reg-right { order: -1; }
}

/* ── REJESTRACJA NA STRONIE GŁÓWNEJ — 3 kolumny ─────────── */
.nw-reg-home-layout {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1fr;
    gap: 24px;
    align-items: center;
    margin-top: 24px;
}
.nw-reg-home-img img { display: block; }
@media (max-width: 800px) {
    .nw-reg-home-layout { grid-template-columns: 1fr; }
    .nw-reg-home-img:last-child { display: none; }
}

/* Obrazki w sekcji rejestracji — równa wysokość z kafelkiem */
.nw-reg-home-img img {
    height: 100%;
    max-height: 180px;
    object-fit: cover;
    width: 100%;
}
.nw-reg-home-layout {
    align-items: stretch !important;
}
.nw-reg-home-img {
    overflow: hidden;
    border-radius: 12px;
}

/* Kwadratowe obrazki w sekcji rejestracji */
.nw-reg-home-img {
    overflow: hidden;
    border-radius: 12px;
    aspect-ratio: 1/1 !important;
}
.nw-reg-home-img img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}

/* Kafelek rejestracji — tej samej wysokości co obrazki */
.nw-reg-home-kafel {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    aspect-ratio: 1/1;
    background: rgba(13,32,64,0.7);
    border: 2px solid rgba(201,168,76,0.4);
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.2s;
    padding: 20px;
    text-align: center;
}
.nw-reg-home-kafel:hover {
    border-color: #c9a84c;
    background: rgba(201,168,76,0.1);
    text-decoration: none;
    transform: translateY(-3px);
}
.nw-reg-home-kafel-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #c9a84c;
}
.nw-reg-home-kafel-sub {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
}

/* FIX — grid rejestracji nie nachodzi */
.nw-reg-home-layout {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 16px !important;
    align-items: stretch !important;
}
.nw-reg-home-img,
.nw-reg-home-kafel {
    min-width: 0 !important;
    width: 100% !important;
}

/* FIX kafelek rejestracji nie nachodzi */
.nw-reg-home-layout {
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) !important;
}
.nw-reg-home-kafel {
    box-sizing: border-box !important;
    overflow: hidden !important;
}


/* ── KAFELEK NEWSLETTER — nowy ──────────────────────────── */
.nw-nl-label { display: block; margin-bottom: 16px; cursor: pointer; }
.nw-nl-kafel {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    background: rgba(13,32,64,0.8);
    border: 2px solid rgba(255,255,255,0.1);
    border-radius: 8px;
    transition: all 0.25s;
}
.nw-nl-txt {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #fff;
}
.nw-nl-sub {
    font-size: 11px;
    color: rgba(255,255,255,0.4);
    letter-spacing: 1px;
    margin-top: 2px;
}
.nw-nl-box {
    width: 36px;
    height: 36px;
    border: 3px solid rgba(255,255,255,0.3);
    border-radius: 6px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 900;
    color: transparent;
    transition: all 0.25s;
}

/* Zaznaczony — zielony */
.nw-nl-label input:checked + .nw-nl-kafel {
    background: rgba(20,80,35,0.6);
    border-color: rgba(80,200,100,0.7);
}
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-txt {
    color: #7de890;
}
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-box {
    border-color: rgba(80,200,100,0.8);
    background: rgba(40,160,60,0.3);
    color: #7de890;
}
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-box::after {
    content: '✓';
    font-size: 24px;
    font-weight: 900;
    color: #7de890;
}

/* ── KAFELEK NEWSLETTER ─────────────────────────────────── */
.nw-nl-label { display: block; margin-bottom: 16px; cursor: pointer; user-select: none; }
.nw-nl-kafel {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    background: rgba(13,32,64,0.8);
    border: 2px solid rgba(255,255,255,0.25);
    border-radius: 8px;
    transition: all 0.25s;
}
.nw-nl-txt {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #fff;
    flex: 1;
}
.nw-nl-sub {
    font-size: 11px;
    color: rgba(255,255,255,0.4);
    letter-spacing: 1px;
    margin-top: 2px;
    display: block;
}
.nw-nl-box {
    width: 36px;
    height: 36px;
    border: 3px solid rgba(255,255,255,0.4);
    border-radius: 6px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.25s;
    background: transparent;
}
.nw-nl-label input:checked + .nw-nl-kafel {
    background: rgba(20,80,35,0.6);
    border-color: rgba(80,200,100,0.8);
}
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-txt { color: #7de890; }
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-box {
    border-color: rgba(80,200,100,0.9);
    background: rgba(40,160,60,0.3);
}
.nw-nl-label input:checked + .nw-nl-kafel .nw-nl-box::after {
    content: '✓';
    font-size: 22px;
    font-weight: 900;
    color: #7de890;
}

/* Duża data/godzina w headerze */
#nw-header-date {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    color: #fff !important;
    text-transform: uppercase !important;
}

/* ── STRONA SPONSORÓW ───────────────────────────────────── */
.nw-sp-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; margin-bottom: 24px; }
.nw-sp-kafel { border: 2.5px solid #c9a84c; border-radius: 10px; overflow: hidden; background: #0d2040; }
.nw-sp-main { display: flex; }
.nw-sp-left { flex: 1.6; padding: 14px; border-right: 2px solid #c9a84c; display: flex; flex-direction: column; gap: 10px; }
.nw-sp-logo-row { display: flex; align-items: center; gap: 10px; }
.nw-sp-logo-img { width: 48px; height: 48px; object-fit: contain; border-radius: 6px; flex-shrink: 0; background: #fff; padding: 4px; }
.nw-sp-logo-empty { width: 48px; height: 48px; background: #1a3060; border-radius: 6px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.nw-sp-name { font-size: 13px; font-weight: 700; color: #fff; margin-bottom: 2px; }
.nw-sp-url { font-size: 10px; color: rgba(201,168,76,0.6); }
.nw-sp-details { border-top: 1px solid rgba(201,168,76,0.12); padding-top: 8px; display: flex; flex-direction: column; gap: 4px; }
.nw-sp-row { display: flex; gap: 6px; }
.nw-sp-lbl { font-size: 9px; color: rgba(255,255,255,0.35); letter-spacing: 1px; text-transform: uppercase; width: 38px; flex-shrink: 0; padding-top: 1px; }
.nw-sp-val { font-size: 10px; color: rgba(255,255,255,0.7); }
.nw-sp-status-aktywny { font-size: 10px; color: #7de890; font-weight: 500; }
.nw-sp-status-arch { font-size: 10px; color: rgba(255,255,255,0.3); }
.nw-sp-btn { margin-top: auto; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #c9a84c; background: rgba(201,168,76,0.08); border: 1px solid rgba(201,168,76,0.3); border-radius: 4px; padding: 5px 10px; text-decoration: none; align-self: flex-start; display: inline-block; }
.nw-sp-right { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 14px 8px; gap: 4px; background: rgba(201,168,76,0.04); }
.nw-sp-count-lbl { font-size: 9px; color: rgba(201,168,76,0.5); letter-spacing: 1px; text-transform: uppercase; text-align: center; line-height: 1.4; }
.nw-sp-count-num { font-size: 52px; font-weight: 700; color: #c9a84c; line-height: 1; }
.nw-sp-count-sub { font-size: 9px; color: rgba(255,255,255,0.2); letter-spacing: 1px; text-transform: uppercase; }
.nw-sp-wspiera { background: rgba(201,168,76,0.12); border-top: 2px solid #c9a84c; padding: 8px 14px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.nw-sp-wspiera-txt { font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #c9a84c; }
.nw-sp-kafel-arch { filter: grayscale(70%) opacity(0.55); border-color: rgba(255,255,255,0.15); }
.nw-sp-kafel-arch .nw-sp-main .nw-sp-left { border-right-color: rgba(255,255,255,0.1); }
.nw-sp-kafel-arch .nw-sp-right { background: transparent; }
.nw-sp-kafel-arch .nw-sp-count-num { color: rgba(255,255,255,0.3); }
.nw-sp-arch-label { font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.2); margin: 20px 0 10px; display: flex; align-items: center; gap: 8px; }
@media (max-width: 600px) { .nw-sp-grid { grid-template-columns: 1fr; } }

/* ── NOWE KAFELKI SPONSORÓW ─────────────────────────────── */
.nw-sp-hero { padding: 20px 16px 14px; display: flex; flex-direction: column; align-items: center; gap: 10px; border-bottom: 1.5px solid rgba(201,168,76,0.2); background: rgba(201,168,76,0.02); }
.nw-sp-logo-big { width: 90px; height: 90px; object-fit: contain; border-radius: 10px; border: 2px solid rgba(201,168,76,0.3); background: #fff; padding: 6px; }
.nw-sp-logo-big-empty { width: 90px; height: 90px; background: #1a3060; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 32px; border: 2px solid rgba(201,168,76,0.2); }
.nw-sp-name-big { font-size: 15px; font-weight: 700; color: #fff; text-align: center; line-height: 1.35; }
.nw-sp-dane-btn { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 12px 16px; cursor: pointer; background: #1a4a8a; border-bottom: 1.5px solid rgba(80,140,220,0.3); transition: background 0.2s; }
.nw-sp-dane-btn:hover { background: #1e5499; }
.nw-sp-dane-txt { font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #f5f0e8; }
.nw-sp-arr { color: rgba(245,240,232,0.5); font-size: 16px; }
.nw-sp-dane-body { display: none; padding: 14px; border-bottom: 1.5px solid rgba(201,168,76,0.15); flex-direction: column; gap: 6px; }
.nw-sp-dane-body.open { display: flex; }
.nw-sp-opis { font-size: 10px; color: rgba(255,255,255,0.45); font-style: italic; line-height: 1.5; border-top: 1px solid rgba(255,255,255,0.06); padding-top: 6px; }
.nw-sp-link { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 9px; background: rgba(201,168,76,0.08); border: 1px solid rgba(201,168,76,0.3); border-radius: 6px; text-decoration: none; margin-top: 4px; color: #c9a84c; font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.nw-sp-count { padding: 16px; display: flex; flex-direction: column; align-items: center; gap: 4px; background: rgba(201,168,76,0.04); flex: 1; }
.nw-sp-count-label { font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #e8d48a; text-align: center; margin-bottom: 4px; }
.nw-sp-count-num { font-size: 52px; font-weight: 700; color: #c9a84c; line-height: 1; }

/* Poprawki kafelka sponsora */
.nw-sp-name-big {
    font-size: 18px !important;
    min-height: 2.7em !important;
    display: flex !important;
    align-items: center !important;
}
.nw-sp-status-aktywny { color: #7de890 !important; font-weight: 700 !important; }

/* ── FORMULARZ SPONSORA ─────────────────────────────────── */
.nw-sp-form-section {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold-l);
    margin: 20px 0 10px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(201,168,76,0.15);
}
.nw-url-prefix {
    background: rgba(13,32,64,0.9);
    border: 1px solid rgba(201,168,76,0.3);
    border-right: none;
    padding: 12px 10px;
    border-radius: 8px 0 0 8px;
    color: rgba(255,255,255,0.4);
    font-size: 13px;
    white-space: nowrap;
}

/* Duży nagłówek archiwum sponsorów */
.nw-sp-arch-label-big {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    font-weight: 700;
    color: var(--white);
    margin: 36px 0 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(201,168,76,0.3);
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Kafelek archiwum sponsorów */
.nw-sp-arch-divider {
    margin: 40px 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nw-sp-arch-divider-txt {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: #c9a84c;
    background: rgba(201,168,76,0.08);
    border: 2px solid rgba(201,168,76,0.3);
    border-radius: 10px;
    padding: 14px 40px;
    text-align: center;
    display: block;
    width: 100%;
}

/* Większe avatary na podium */
.nw-podium-face {
    width: 90px !important;
    height: 90px !important;
    border: 3px solid #c9a84c !important;
}
.nw-podium-face-1 {
    width: 110px !important;
    height: 110px !important;
    border-width: 4px !important;
}
@media (max-width: 600px) {
    .nw-podium-face { width: 60px !important; height: 60px !important; }
    .nw-podium-face-1 { width: 76px !important; height: 76px !important; }
}

/* Fix — lista roczna widoczna gdy active */
#panel-rok .nw-rk-lista.active { display: block !important; }
#panel-rok .nw-rk-lista { display: none; }
#panel-miesiac .nw-rk-lista.active { display: block !important; }

/* Fix — lista od 4 zawsze widoczna gdy rodzic jest active */
.nw-rk-lista.active .nw-podium-lista-pod { display: block !important; }
.nw-rk-lista.active .nw-podium-section { display: block !important; }
