/* Ballandie — barvy podle skinu Mechanika: tmavá ocel, mosaz, měď a tyrkysová světla. Vždy světlá stránka. */
.ballandie-body {
  --bl-navy: #161D2E;
  --bl-navy-light: #2E3A5C;
  --bl-brass: #8A5A1C;
  --bl-cyan: #3FD0E0;
  --bl-yellow: #E2B65A;
  --bl-copper: #C46F36;
  --bl-bg: #EEF1F6;
  background: var(--bl-bg);
}
.ballandie-body .site-header { background: var(--bl-navy); border-bottom: 0; }
.ballandie-body .logo { color: #FFFFFF; }
.ballandie-body .logo-paw, .ballandie-body .logo-text b { color: var(--bl-cyan); }
.ballandie-body .lang-switch a:not([aria-current="page"]) { color: #DCE6F0; }
.ballandie-body .lang-switch a[aria-current="page"] { background: var(--bl-cyan); color: #081634; }
.ballandie-body :focus-visible { outline-color: var(--bl-brass); }
.ballandie-body .site-header :focus-visible { outline-color: var(--bl-cyan); }
.ballandie-body .site-footer { margin-top: 0; }

.bl-hero { background: radial-gradient(circle at 70% 30%, var(--bl-navy-light) 0%, var(--bl-navy) 55%, #0B0F1C 100%); color: #FFFFFF; }
.bl-hero-inner { display: grid; gap: 24px; align-items: center; grid-template-columns: 1fr; padding-top: 40px; padding-bottom: 40px; }
.bl-title { font-size: clamp(2.6rem, 11vw, 4.2rem); font-weight: 900; letter-spacing: .04em; color: #FFFFFF; margin: 0; text-transform: uppercase; text-shadow: 0 3px 0 var(--bl-copper); }
.bl-tagline { font-size: 1.2rem; font-weight: 700; margin: 8px 0 24px; max-width: 30rem; color: #DCE3EE; }
.bl-icon { width: min(45vw, 220px); height: auto; border-radius: 28%; box-shadow: 0 10px 30px rgba(0, 0, 0, .45), 0 0 40px rgba(226, 182, 90, .35); justify-self: center; }
@media (min-width: 40rem) {
  .bl-hero-inner { grid-template-columns: 1fr auto; }
}

.bl-btn { display: inline-block; font-weight: 800; font-size: 1.1rem; color: #2B1A04; background: linear-gradient(180deg, #F6DC98 0%, #D9A64A 50%, #9A681F 100%); border-radius: 999px; padding: 12px 22px; text-decoration: none; box-shadow: 0 4px 0 #3A2506; }
a.bl-btn:hover { transform: translateY(1px); box-shadow: 0 3px 0 #3A2506; }
.bl-btn.is-soon { cursor: default; }

.bl-section { padding-top: 8px; padding-bottom: 8px; }
.bl-section h2 { color: var(--bl-navy); }
.bl-features { list-style: none; padding: 0; margin: 0; display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); }
.bl-features li { background: #FFFFFF; border-radius: 16px; padding: 16px; border-top: 5px solid var(--bl-brass); color: #1B2638; }
.bl-features li { border-top-color: var(--bl-copper); }
.bl-features li:nth-child(3n + 2) { border-top-color: var(--bl-cyan); }
.bl-features li:nth-child(3n) { border-top-color: var(--bl-yellow); }
.bl-features h3 { margin: 0 0 6px; color: var(--bl-navy); }
.bl-features p { margin: 0; }
.ballandie-body .shots { max-width: 44rem; }

.bl-legal { display: flex; flex-wrap: wrap; gap: 8px 20px; padding-top: 32px; padding-bottom: 32px; }
.bl-legal a { color: var(--bl-brass); font-weight: 700; }

/* Další úrovně: sady s náhledy úrovní */
.bl-set { background: #FFFFFF; border-radius: 16px; padding: 16px 20px; margin: 16px 0; box-shadow: 0 2px 8px rgba(22, 29, 46, .12); }
.bl-set h2 { margin: 0 0 4px; }
.bl-set-meta { color: #5A6478; font-size: .9rem; margin: 4px 0 12px; }
.bl-set-levels { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
.bl-set-levels li { display: grid; gap: 4px; justify-items: center; font-size: .85rem; text-align: center; }
.bl-level { width: 72px; height: 120px; border-radius: 6px; }
