/*
Theme Name: Battle City Online
Theme URI: https://battlecityonline.com/
Description: Lean child theme of Kadence for BattleCityOnline.com. Two indexable landing documents (EN "/" and RU "/ru/"), direct Unity WebGL integration, self-contained SEO head. No page builder, no jQuery, no runtime frameworks.
Author: BattleCityOnline
Template: kadence
Version: 1.0.0
Text Domain: battlecity-child
*/

/* ===== fonts (subset: Oswald 500/600, IBM Plex Sans 400, IBM Plex Mono 500/600 — latin + cyrillic) ===== */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-mono-600-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-mono-600-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-mono-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-mono-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-sans-400-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-sans-400-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-sans-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-sans-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/oswald-500-600-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/oswald-500-600-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/oswald-500-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/oswald-500-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/oswald-500-600-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/oswald-500-600-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/oswald-500-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/oswald-500-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ===== base ===== */

  *, *::before, *::after { box-sizing: border-box; }
  html { scroll-behavior: smooth; scroll-padding-top: 64px; -webkit-text-size-adjust: 100%; }
  body { margin: 0; background: #0A0B0D; color: #E7E8EA; font-family: 'IBM Plex Sans', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: #E9B72C; text-decoration: none; }
  a:hover { color: #F6D26A; }
  summary::-webkit-details-marker { display: none; }
  summary::marker { content: ''; }
  details[open] span[data-fq] { transform: rotate(45deg); color: #E9B72C; }
  ::selection { background: #E9B72C; color: #101112; }

/* ===== hover/active states (from approved design) ===== */
.bc-h0:hover{color:#E9B72C}
.bc-h1:hover{border-color:rgba(233,183,44,.5);color:#E9B72C}
.bc-h2:hover{background:#F3C441;transform:translateY(-1px);box-shadow:0 0 0 1px rgba(233,183,44,.55),0 18px 54px rgba(233,183,44,.28)}
.bc-h2:active{transform:translateY(1px)}
.bc-h3:hover{color:#E9B72C;border-color:rgba(233,183,44,.5)}
.bc-h4:hover{border-color:rgba(233,183,44,.4);background:#171A1E}

/* language switch + misc interactive states */
.bc-langlink{cursor:pointer}
.bc-langlink:hover{color:#E9B72C}
/* keyboard-first notice appears on narrow screens (matches prototype vw<900 rule) */
@media (max-width:899px){[data-bc-mnote]{display:flex !important}}
/* Unity canvas fills the reserved stage */
#unity-container canvas{display:block;width:100% !important;height:100% !important;outline:none}
img{max-width:100%;height:auto}
/* RU hero subtitle: keep it on one line on desktop; wrap naturally on narrow screens */
.bc-ru-sub{max-width:none}
@media (min-width:1024px){.bc-ru-sub{white-space:nowrap}}

/* ===== screenshots gallery (feels like a continuation of the game block) ===== */
.bc-shots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(8px,1.2vw,12px)}
@media (max-width:820px){.bc-shots-grid{grid-template-columns:repeat(2,1fr)}}
.bc-shot{display:block;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#131619;overflow:hidden;cursor:pointer;transition:border-color .18s,background .18s}
.bc-shot:hover{border-color:rgba(233,183,44,.4);background:#171A1E}
.bc-shot img{display:block;width:100%;height:auto}

/* ===== lightbox ===== */
body.bc-lb-open{overflow:hidden}
.bc-lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(6,7,9,.92);padding:clamp(12px,3vw,40px);opacity:0;transition:opacity .18s;-webkit-tap-highlight-color:transparent}
/* when closed the overlay must leave the layout entirely — otherwise its display:flex
   overrides the UA [hidden] rule and the fixed full-screen box swallows every click */
.bc-lb[hidden]{display:none}
.bc-lb.is-open{opacity:1}
.bc-lb__fig{margin:0;max-width:min(1180px,96vw);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:12px}
.bc-lb__img{max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#000;box-shadow:0 24px 70px rgba(0,0,0,.6)}
.bc-lb__cap{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#9BA1A8;text-align:center;margin:0}
.bc-lb__btn{position:absolute;background:rgba(20,23,26,.86);border:1px solid rgba(255,255,255,.14);color:#C9CDD2;width:44px;height:44px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:22px;line-height:1;transition:border-color .18s,color .18s}
.bc-lb__btn:hover{border-color:rgba(233,183,44,.55);color:#E9B72C}
.bc-lb__close{top:clamp(10px,2vw,20px);right:clamp(10px,2vw,20px)}
.bc-lb__prev{left:clamp(8px,2vw,20px);top:50%;transform:translateY(-50%)}
.bc-lb__next{right:clamp(8px,2vw,20px);top:50%;transform:translateY(-50%)}
@media (max-width:640px){
  .bc-lb__prev{top:auto;bottom:clamp(10px,4vw,18px);left:clamp(12px,8vw,28px);transform:none}
  .bc-lb__next{top:auto;bottom:clamp(10px,4vw,18px);right:clamp(12px,8vw,28px);transform:none}
}
