{"html":[" \n \n \n Общее \n Конструктор \n Что и когда строить \n Мета шаблоны \n \n\n \n \n Гайд • Мета шаблоны танков • Все DLC \n Мета шаблоны танков \n Правильный конструктор превращает посредственную машину в оружие победы. Изучите, как создавать идеальные танки под любую задачу. \n \n +29% Софт-атака \n +42% Прорыв \n +43% Надёжность \n \n \n \n \n \n \n Зачем нужна техника \n \n Только бронетехника даёт хорошую броню и прорыв, позволяя ломать фронт сильного врага. ЗСУ снижает дебафф от вражеской авиации, а ПТ-САУ уничтожает вражеские танки. В одиночной игре бот не строит серьёзных самолётов или танков, поэтому танков и САУ хватает с головой — без техники эффективно давить противника невозможно. Настоятельно рекомендую ознакомится с Лучшими шаблонами дивизий → \n \n \n \n \n Как правильно их строить \n \n Каждой стране желательно иметь танки или САУ, но реальность диктует возможности. Миноры получают адекватные танковые дивизии лишь к 1940–1943 году, мажоры же штампуют их массово. Производство техники запускайте только после налаженного выпуска авиации и отсутствия острого дефицита пехотного снаряжения — танки не нужны, если пехота безоружна. Не гонитесь за топовыми дивизиями за минора до крупной войны; за мажора старайтесь иметь несколько готовых дивизий перед любым конфликтом. Промышленность — основа всего, изучите гайд по промышленности . \n \n \n \n \n Главные правила \n \n \n 1. Не делайте дешёвые и слабые танки против мажора. Против минора ещё допустимо, против сильного врага — нет. \n 2. Следите за надёжностью. Низкая надёжность при плохом снабжении ведёт к огромным потерям техники. Разберитесь в механике снабжения . \n 3. Не завышайте уровни брони и двигателя. Против бота они бесполезны. \n 4. Средние танки — короли. При выборе между ЛТ, СТ и ТТ всегда берите средний. \n 5. Не вешайте слабое КБ. Вешайте лучшее из доступного, дающее максимум полезных баффов. \n \n \n \n \n \n Частые вопросы \n \n \n Почему средние танки лучше лёгких и тяжёлых? + Ответ: Средние танки — золотая середина. Они дают 80% эффективности тяжёлых за 50% их цены. Лёгкие дёшевы, но к 1940 году устаревают. Тяжёлые дороги, медленны и жрут снабжение. Средние — лучший выбор для 90% ситуаций. \n Нужно ли строить ПТ-САУ и ЗСУ в одиночной игре? + Ответ: В 99% случаев — нет. ИИ не умеет строить топовые танки и самолёты. Обычных средних танков достаточно. \n Сколько заводов выделять на танки? + Ответ: Примерно 30-60% военных заводов выделяем на бронетехнику. \n Какой двигатель выбрать — бензиновый или дизельный? + Ответ: Почти всегда бензиновый. Он даёт больше скорости. Дизель берите только если надёжность ниже 70% и её нечем поднять. Лучше поставьте «Простоту в обслуживании» или «Влажное хранилище». \n Стоит ли улучшать броню выше 4 уровня? + Ответ: Против ИИ — нет. 4 уровня клёпаной брони (~65–70 мм) хватает, чтобы не умирать от ПТО ботов. Выше — переплата за ресурсы. Против человека — смотрите по его пробитию, чаще всего необходимо 4+ брони. \n Зачем нужна ЗСУ, если есть истребители? + Ответ: Не нужны, если у вас есть превосходство в воздухе. ЗСУ — это дешёвая замена авиации для миноров. Истребители дают господство в воздухе, а ЗСУ просто снижает дебафф от бомбёжек. \n Какой модуль даёт больше всего прорыва? + Ответ: Больше всего прорыва даёт башня (например, «Трёхместное среднее орудие») и подвеска «Шахматное расположение катков». Также прорыв повышает радиостанция (особенно 2–3 уровня). \n Стоит ли делать дешёвые танки против мажора? + Ответ: Нет. Против мажора (Германия, СССР, США) дешёвый танк с низкой броней и плохой пушкой просто не пройдёт их оборону. Делайте качественный средний танк с хорошей гаубицей и броней 4 уровня. \n Что выбрать, САУ или танки? + Ответ: В идеале смешивать в дивизии 50/50. Есть также вариант использовать либо танки, либо САУ - против бота не критично. САУ дает большую софт атаку и есть много снабжения, танки дают прорыв и софт атаку, и едят меньше снабжения. Выбирайте под свой вкус. \n Когда переходить с лёгких танков на средние? + Ответ: Идеальное время — когда вы исследовали «Улучшенную среднюю гаубицу» и «Улучшенный средний корпус» (обычно 1939–1940). Лёгкие танки хороши тогда, когда у бота слабые войска, но для прорыва фронта против сильного мажора нужны средние танки. \n \n \n \n \n \n Разница в шаблонах \n \n Сравнение среднего танка новичка и собранного по гайду. \n \n Стат Новичок По гайду \n \n Софт-атака 41 53 \n Прорыв 33 47 \n Надёжность 53 76 \n Цена 15.25 17.56 \n \n \n \n \n \n\n \n \n \n \n \n Башня: выбираем вместительность \n \n Башня определяет, насколько тяжелое и мощное можно будет поставить орудие. \n Для танков, САУ и ЗСУ почти всегда берите трёхместное среднее орудие — оно даёт три слота под вооружение и модули. \n На лёгких шасси ставьте трёхместное лёгкое орудие : места чуть меньше, но для ЛТ и САУ на их базе достаточно. \n Для ПТ-САУ и огнемётных танков используйте лёгкую фиксированную надстройку — она отнимает прорыв, но понижает стоимость. \n \n \n \n \n Орудие: сердце машины \n \n Улучшенная средняя гаубица — королева по соотношению цена/качество, ставьте на СТ и САУ. \n На лёгкие танки и лёгкие САУ вешайте орудие непосредственной поддержки — лучшее орудие на легком корпусе. \n ПТ-САУ обязана нести улучшенную среднюю пушку ради хард‑атаки + бронебойности. \n Для ЗСУ берите улучшенное зенитное орудие — только оно даст достаточную воздушную атаку. \n Тяжёлым танкам, если вы всё же решитесь их строить, подойдёт та же улучшенная средняя пушка. \n \n \n \n \n Дополнительные модули: что ставить в слоты \n \n Первым делом — радиостанция 2–3 уровня , она значительно поднимает прорыв. \n Затем простота в обслуживании (надёжность + снижение стоимости) или тяжёлый пулемёт (софт‑атака). \n В оставшиеся слоты — влажное хранилище боеприпасов (надёжность) и стабилизатор или автозарядник (прорыв). \n У мажоров слоты заполняются плотнее, у миноров — только самое необходимое. Не забывайте про правильные доктрины , они тоже дают существенный прорыв. \n \n \n \n \n Подвеска: баланс скорости и огня \n \n Забудьте про колёсный ход - это плохо. \n Подвеска Кристи — выбор для быстрых прорывов, даёт максимальную скорость. \n Шахматное расположение катков — для упора в прорыв, ставьте мажорам на средние и тяжёлые машины. \n Торсионная подвеска выручает, когда надёжность хромает. \n Балансированная подвеска — универсал для миноров и тех, кто хочет всего понемногу. \n \n \n \n \n Двигатель: бензин или дизель \n \n В 90% случаев — бензиновый двигатель с уровнем не выше 9. Он даёт хорошую скорость без лишней цены. \n Дизельный оправдан только если надёжность упала ниже 60% — он снижает скорость, но заметно повышает надежность. \n Не гонитесь за высокими уровнями: в плохом снабжении скорость всё равно режется, а стоимость растёт. \n \n \n \n \n Броня: клепать или варить \n \n Мажорам доступна сварная броня — лучшая, но требует хром. \n Миноры сидят на клёпанной . \n Уровень брони против бота поднимайте до 4, против игрока — до 9+. Выше не лезьте: переплата за тонну стали не окупается в бою. \n \n \n \n \n Тир-лист модулей \n \n Субъективное мнение автора по соотношению цены и выгоды. \n \n S Трёхместное среднее орудие Орудие непосредственной поддержки Улучшенное зенитное орудие Улучшенная средняя пушка Улучшенная средняя гаубица Модернизированная радиостанция Тяжёлый пулемёт Простота в обслуживании Шахматное расположение катков Бензиновый двигатель \n A Лёгкая фиксированная надстройка Трёхместное лёгкое орудие Улучшенная скорострельная пушка Улучшенная реактивная установка Тяжёлая гаубица Улучшенная радиостанция Дополнительные пулемёты Стабилизатор Влажное хранилище боеприпасов Торсионная подвеска Сварная броня Дизельный двигатель Подвеска Кристи \n B Базовая скорострельная пушка Средняя пушка Средняя гаубица Реактивная установка Модернизированное зенитное орудие Модернизированная скорострельная пушка Базовая радиостанция Малая пушка Устройство для плавания Наклонная броня Автозарядник Балансированная подвеска Клёпанная броня \n C Тяжёлая фиксированная надстройка Двухместное тяжёлое орудие Трёхместное тяжёлое орудие Сверхтяжёлая пушка Автоматическое орудие Дополнительное хранилище боеприпасов Бензино-электрический двигатель Бочка с топливом \n D Средняя фиксированная надстройка Одноместное среднее орудие Двухместное среднее орудие Базовое зенитное орудие Дымовые установки Конусный адаптер \n F Одноместное лёгкое орудие Двухместное лёгкое орудие Бульдозерный отвал Литая броня \n \n \n \n \n\n \n \n \n \n \n Танки \n \n Стройте практически в каждой партии, если играете через танки. Четыре типа: лёгкие, средние, тяжёлые, современные. \n \n Лёгкие танки (ЛТ): мажоры в 1938–39 против слабых врагов (например, Германия против Польши/Франции). Минорам нецелесообразно — не успеют. \n Средние танки (СТ): и миноры, и мажоры. Миноры садятся сразу на СТ. Мажоры производят против финальных сильных врагов (Германия против СССР). \n Тяжёлые и современные танки: не стройте — слишком дороги, прожорливы, СТ/САУ заменяют их. \n \n Упор делайте на прорыв и софт-атаку. \n \n \n \n \n САУ \n \n Строим в каждой партии. Идеально смешивать с танками 50/50: танки дают прорыв, САУ — софт-атаку. Можно как вариант использовать только танки или только САУ. В мультиплеере только чем-то одним не обойтись — нужны и танки, и иногда ЗСУ с ПТ-САУ. \n \n Миноры: сразу средние САУ. \n Мажоры: сначала лёгкие САУ, затем средние. \n Тяжёлые и современные САУ: избегать — снабжение не вытянет. \n \n Упор на софт-атаку. \n \n \n \n \n ПТ-САУ \n \n Стройте только против гипер-мажора с танками (например, Германия) или в мультиплеере. В ванильной одиночке не нужны — ни разу не пригодились. Упор на бронебойность и хард-атаку. В танковую дивизию добавляются в мультиплеере. \n \n \n \n \n ЗСУ \n \n Аналогично ПТ-САУ — только мультиплеер. В одиночной игре достаточно нескольких сотен топовых истребителей. Снижает дебафф от авиации, но в одиночке оправдана лишь очень дешёвая версия. Упор на воздушную атаку. \n \n \n \n \n Что и когда строить \n \n \n Название Когда строить На какой стат упор \n \n Танк Когда нужно прорвать линию фронта Прорыв, софт-атака \n САУ Когда против врага одна пехота Софт-атака \n ПТ-САУ Когда у врага огромные танковые войска Бронебойность, хард-атака \n ЗСУ Когда у врага тотальное превосходство в воздухе Воздушная атака \n \n \n \n \n \n\n \n \n \n Танк \n САУ \n ПТ-САУ \n ЗСУ \n \n \n Лёгкий \n Средний \n Тяжёлый \n Современный \n \n \n Для минора \n Для мажора \n \n \n \n \n\n \n \n \n От автора \n \n Гайд основан на сотнях часов игры и анализе актуальной меты. Шаблоны отобраны под возможности обычной партии без надрыва. Используйте эти знания, чтобы ваша бронетехника всегда доминировала на поле боя. \n Актуально на 2026 год, версия 1.19+, все DLC, одиночка. \n \n "],"css":["* {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n}\n\nhtml, body {\n width: 100%;\n overflow-x: hidden !important;\n scroll-behavior: smooth;\n}\n\nbody {\n --bg-deep: #0d0c09;\n --gold-light: #f5d98b;\n --gold: #e2b660;\n --gold-dim: #b5943e;\n --green: #7aad7e;\n --green-glow: rgba(122, 173, 126, 0.5);\n --red: #c56a6a;\n --card-bg: rgba(22, 21, 18, 0.8);\n --card-border: rgba(226, 182, 96, 0.15);\n --text-primary: #f0ead8;\n --text-secondary: #c8c0a8;\n --text-muted: #908870;\n --shadow-gold: 0 0 20px rgba(226, 182, 96, 0.2);\n --shadow-card: 0 12px 28px rgba(0,0,0,0.6), 0 0 0 1px rgba(226,182,96,0.08);\n background: radial-gradient(ellipse at 50% 20%, rgba(226, 182, 96, 0.08) 0%, #0a0906 80%);\n background-attachment: fixed;\n color: #f0ead8;\n font-family: 'Segoe UI', 'Inter', system-ui, sans-serif;\n line-height: 1.6;\n -webkit-font-smoothing: antialiased;\n min-height: 100vh;\n position: relative;\n}\n\ncanvas#particles-canvas {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n pointer-events: none;\n}\n\n.volunteer-guide {\n max-width: 1200px;\n margin: 0 auto;\n padding: 37.5px 25px;\n user-select: text;\n position: relative;\n z-index: 1;\n}\n\n.guide-tabs {\n position: sticky;\n top: 73px;\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n gap: 10px;\n background: rgba(12, 11, 8, 0.9);\n backdrop-filter: blur(20px);\n padding: 12.5px 12.5px;\n border-radius: 20px;\n border: 1px solid rgba(226, 182, 96, 0.35);\n box-shadow: 0 12px 40px rgba(0,0,0,0.8), 0 0 30px rgba(226,182,96,0.1), inset 0 1px 0 rgba(255,255,255,0.05);\n z-index: 1000;\n margin-bottom: 37.5px;\n}\n\n.guide-tab {\n background: transparent;\n border: 1px solid transparent;\n color: #b8b098;\n padding: 15px 27.5px;\n font-size: 15.9px;\n font-weight: 600;\n border-radius: 14px;\n cursor: pointer;\n transition: all 0.3s cubic-bezier(0.2, 0.9, 0.4, 1);\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n text-align: center;\n min-width: 110px;\n letter-spacing: 0.3px;\n}\n\n.guide-tab::before {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: 14px;\n padding: 1px;\n background: linear-gradient(135deg, transparent, rgba(226,182,96,0.6), transparent);\n -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.guide-tab:hover::before {\n opacity: 0.8;\n}\n\n.guide-tab:hover {\n color: #f5e6c7;\n background: rgba(226, 182, 96, 0.12);\n text-shadow: 0 0 8px rgba(226,182,96,0.4);\n}\n\n.guide-tab.active {\n color: #f7e3a8;\n background: rgba(226, 182, 96, 0.2);\n border-color: rgba(226, 182, 96, 0.6);\n box-shadow: 0 0 30px rgba(226, 182, 96, 0.4), inset 0 0 15px rgba(226,182,96,0.15);\n text-shadow: 0 0 12px rgba(226,182,96,0.6);\n}\n\n.guide-tab.active::before {\n opacity: 1;\n background: linear-gradient(135deg, rgba(226,182,96,0.8), rgba(226,182,96,0.2), rgba(226,182,96,0.8));\n}\n\n.tab-panel {\n display: none;\n}\n\n.tab-panel.active {\n display: block;\n}\n\n.hero-card {\n background: linear-gradient(145deg, rgba(226, 182, 96, 0.18) 0%, rgba(20, 18, 13, 1) 100%);\n border: 1px solid rgba(226,182,96,0.35);\n border-radius: 28px;\n padding: 68.75px 50px;\n text-align: center;\n margin-bottom: 50px;\n position: relative;\n overflow: hidden;\n box-shadow: 0 25px 60px rgba(0,0,0,0.8), 0 0 50px rgba(226,182,96,0.15), inset 0 2px 0 rgba(255,255,255,0.05);\n backdrop-filter: blur(12px);\n}\n\n.hero-card::before {\n content: '';\n position: absolute;\n top: -80px;\n right: -80px;\n width: 300px;\n height: 300px;\n background: radial-gradient(circle, rgba(226,182,96,0.25) 0%, transparent 70%);\n border-radius: 50%;\n z-index: 0;\n}\n\n.hero-card::after {\n content: '';\n position: absolute;\n bottom: -80px;\n left: -80px;\n width: 280px;\n height: 280px;\n background: radial-gradient(circle, rgba(196, 152, 64, 0.15) 0%, transparent 70%);\n border-radius: 50%;\n z-index: 0;\n}\n\n.hero-badge {\n display: inline-block;\n background: rgba(226, 182, 96, 0.25);\n color: #f7e3a8;\n padding: 12.5px 35px;\n border-radius: 40px;\n font-size: 15.1px;\n font-weight: 600;\n margin-bottom: 27.5px;\n letter-spacing: 0.6px;\n backdrop-filter: blur(8px);\n border: 1px solid rgba(226, 182, 96, 0.5);\n box-shadow: 0 0 25px rgba(226,182,96,0.3);\n position: relative;\n z-index: 1;\n}\n\n.hero-title {\n font-size: 3.02rem;\n font-weight: 800;\n margin-bottom: 20px;\n color: #faeec8;\n line-height: 1.2;\n position: relative;\n z-index: 1;\n text-shadow: 0 4px 20px rgba(0,0,0,0.8), 0 0 50px rgba(226,182,96,0.3);\n}\n\n.hero-sub {\n font-size: 1.23rem;\n color: #d9d0b5;\n margin-bottom: 37.5px;\n position: relative;\n z-index: 1;\n font-weight: 400;\n text-shadow: 0 2px 10px rgba(0,0,0,0.6);\n}\n\n.hero-grid {\n display: flex;\n justify-content: center;\n gap: 62.5px;\n flex-wrap: wrap;\n margin-top: 37.5px;\n position: relative;\n z-index: 1;\n}\n\n.hero-stat {\n position: relative;\n flex: 1 1 0;\n min-width: 150px;\n text-align: center;\n border-radius: 20px;\n padding: 30px 20px;\n backdrop-filter: blur(10px);\n border: 1px solid rgba(226, 182, 96, 0.2);\n background: rgba(20, 18, 13, 0.5);\n transition: all 0.3s ease;\n box-shadow: 0 6px 18px rgba(0,0,0,0.6);\n}\n\n.hero-stat:hover {\n transform: translateY(-8px);\n border-color: rgba(226, 182, 96, 0.6);\n box-shadow: 0 12px 28px rgba(226,182,96,0.3), 0 16px 40px rgba(0,0,0,0.7);\n background: rgba(25, 22, 15, 0.7);\n}\n\n.hero-stat + .hero-stat::before {\n content: '';\n position: absolute;\n left: -31.25px;\n top: 20%;\n bottom: 20%;\n width: 1px;\n background: linear-gradient(to bottom, transparent, rgba(226,182,96,0.5), transparent);\n}\n\n.hero-stat-num {\n display: block;\n font-size: 2.46rem;\n font-weight: 700;\n color: #f5d78c;\n line-height: 1.2;\n margin-bottom: 10px;\n text-shadow: 0 0 20px rgba(226, 182, 96, 0.6);\n}\n\n.hero-stat-label {\n font-size: 0.95rem;\n color: #b0a890;\n font-weight: 500;\n}\n\n.cards-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(480px, 1fr));\n gap: 35px;\n margin-bottom: 50px;\n align-items: stretch;\n}\n\n.full-width {\n grid-column: 1 / -1;\n}\n\n.center-single-card {\n display: grid;\n grid-template-columns: 1fr;\n max-width: 600px;\n margin: 0 auto 50px;\n justify-self: center;\n}\n\n.card {\n background: linear-gradient(160deg, rgba(30, 28, 22, 0.95) 0%, rgba(20, 18, 13, 0.98) 100%);\n border: 1px solid rgba(226, 182, 96, 0.2);\n border-radius: 22px;\n padding: 35px;\n box-shadow: var(--shadow-card);\n transition: all 0.35s ease;\n overflow: hidden;\n position: relative;\n backdrop-filter: blur(4px);\n}\n\n.card::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: radial-gradient(circle at 30% 10%, rgba(226,182,96,0.03), transparent 60%);\n pointer-events: none;\n}\n\n.card-animate {\n opacity: 0;\n transition: opacity 1.2s ease, transform 1.2s ease;\n}\n\n.card:hover {\n border-color: rgba(226, 182, 96, 0.5);\n box-shadow: 0 18px 40px rgba(0,0,0,0.8), 0 0 35px rgba(226,182,96,0.15);\n}\n\n.card-header {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 15px;\n margin-bottom: 27.5px;\n padding-bottom: 17.5px;\n border-bottom: 1px solid rgba(226, 182, 96, 0.25);\n}\n\n.card-header h2 {\n font-size: 1.80rem;\n font-weight: 700;\n color: #faeec8;\n margin: 0;\n text-shadow: 0 0 16px rgba(226,182,96,0.3);\n letter-spacing: 0.5px;\n}\n\n.card-icon {\n flex-shrink: 0;\n filter: drop-shadow(0 0 10px rgba(226, 182, 96, 0.6));\n transition: transform 0.3s ease;\n}\n\n.card-icon:hover {\n transform: rotate(-8deg) scale(1.2);\n}\n\n.card p {\n color: #c8c0a8;\n font-size: 16.1px;\n line-height: 1.75;\n margin-bottom: 20px;\n}\n\n.card h3 {\n font-size: 1.32rem;\n color: #e2b660;\n margin-bottom: 0.6em;\n text-shadow: 0 0 8px rgba(226,182,96,0.3);\n}\n\n.card ul:not(.styled-list) {\n list-style: none;\n padding: 0;\n}\n\n.card ul:not(.styled-list) li {\n position: relative;\n padding: 7.5px 0 7.5px 32.5px;\n color: #c8c0a8;\n font-size: 15.1px;\n line-height: 1.65;\n border-bottom: 1px solid rgba(226, 182, 96, 0.08);\n}\n\n.card ul:not(.styled-list) li::before {\n content: '›';\n position: absolute;\n left: 7.5px;\n color: #e2b660;\n font-size: 21px;\n line-height: 1;\n}\n\n.styled-list {\n list-style: none;\n padding: 0;\n}\n\n.styled-list li {\n background: rgba(35, 33, 26, 0.8);\n border: 1px solid rgba(226,182,96,0.2);\n border-radius: 10px;\n padding: 17.5px 22.5px;\n margin-bottom: 12.5px;\n color: #c0b898;\n font-size: 16.1px;\n transition: all 0.25s ease;\n backdrop-filter: blur(6px);\n line-height: 1.65;\n}\n\n.styled-list li:hover {\n background: rgba(50, 47, 37, 0.9);\n border-color: rgba(226,182,96,0.5);\n box-shadow: 0 0 20px rgba(226,182,96,0.15);\n}\n\n.faq-accordion {\n border: 1px solid rgba(226,182,96,0.3);\n border-radius: 14px;\n overflow: hidden;\n background: rgba(18, 17, 12, 0.9);\n backdrop-filter: blur(8px);\n margin-top: 12.5px;\n box-shadow: 0 6px 18px rgba(0,0,0,0.6);\n}\n\n.faq-item {\n border-bottom: 1px solid rgba(226,182,96,0.2);\n}\n\n.faq-item:last-child {\n border-bottom: none;\n}\n\n.faq-question {\n background: none;\n border: none;\n width: 100%;\n text-align: left;\n padding: 20px 27.5px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n color: #f0ead8;\n font-size: 16.1px;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.25s ease;\n}\n\n.faq-question:hover {\n background: rgba(226,182,96,0.12);\n}\n\n.faq-answer {\n max-height: 0;\n overflow: hidden;\n opacity: 0;\n padding: 0 27.5px;\n color: #c0b898;\n transition: max-height 0.45s ease, opacity 0.45s ease, padding 0.45s ease;\n background: rgba(0,0,0,0.3);\n}\n\n.faq-item.open .faq-answer {\n max-height: 400px;\n opacity: 1;\n padding: 20px 27.5px;\n}\n\n.faq-icon {\n font-size: 25px;\n color: #e2b660;\n transition: transform 0.35s ease;\n filter: drop-shadow(0 0 6px rgba(226,182,96,0.5));\n}\n\n.faq-item.open .faq-icon {\n transform: rotate(45deg);\n}\n\n.doctrine-table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0 12.5px;\n margin: 27.5px 0;\n font-size: 14.2px;\n}\n\n.doctrine-table thead th {\n background: rgba(226, 182, 96, 0.2);\n color: #f5d78c;\n font-weight: 700;\n padding: 17.5px 20px;\n text-align: left;\n border-radius: 12px 12px 0 0;\n border: 1px solid rgba(226, 182, 96, 0.3);\n border-bottom: none;\n text-shadow: 0 0 8px rgba(226,182,96,0.3);\n}\n\n.doctrine-table tbody td {\n background: rgba(18, 17, 12, 0.9);\n color: #c8c0a8;\n padding: 15px 20px;\n border: 1px solid rgba(226, 182, 96, 0.15);\n border-top: none;\n transition: background 0.25s;\n}\n\n.doctrine-table tbody tr:first-child td {\n border-top: 1px solid rgba(226, 182, 96, 0.2);\n}\n\n.doctrine-table tbody tr:hover td {\n background: rgba(30, 28, 20, 0.95);\n border-color: rgba(226, 182, 96, 0.4);\n}\n\n.positive-value {\n color: #7aad7e;\n font-weight: 700;\n text-shadow: 0 0 8px rgba(122, 173, 126, 0.5);\n}\n\n.negative-value {\n color: #c56a6a;\n font-weight: 700;\n text-shadow: 0 0 6px rgba(200, 80, 80, 0.5);\n}\n\n.moderate-value {\n color: #d4a83c;\n font-weight: 700;\n text-shadow: 0 0 6px rgba(212, 168, 60, 0.5);\n}\n\n.accent {\n color: #e2b660;\n font-weight: 600;\n text-shadow: 0 0 8px rgba(226, 182, 96, 0.5);\n}\n\n.author-card {\n background: linear-gradient(145deg, #1f1d18 0%, #151410 100%);\n border: 1px solid rgba(226,182,96,0.3);\n border-radius: 22px;\n padding: 37.5px;\n text-align: center;\n margin-top: 50px;\n box-shadow: 0 14px 36px rgba(0,0,0,0.6), 0 0 28px rgba(226,182,96,0.08);\n backdrop-filter: blur(12px);\n}\n\n.author-card .card-header {\n justify-content: center;\n border-bottom: none;\n margin-bottom: 22.5px;\n}\n\n.author-date {\n color: #908870;\n font-size: 12.5px;\n margin-top: 15px;\n}\n\n.meta-templates-card {\n text-align: center;\n}\n\n.meta-tabs-level1,\n.meta-tabs-level2,\n.meta-tabs-level3 {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n gap: 10px;\n margin-bottom: 20px;\n}\n\n.meta-tab,\n.meta-subtab,\n.meta-nationtab {\n background: transparent;\n border: 1px solid rgba(226, 182, 96, 0.3);\n color: #b8b098;\n padding: 10px 25px;\n font-size: 15px;\n font-weight: 600;\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.25s ease;\n white-space: nowrap;\n}\n\n.meta-tab:hover,\n.meta-subtab:hover,\n.meta-nationtab:hover {\n color: #f5e6c7;\n background: rgba(226, 182, 96, 0.12);\n border-color: rgba(226, 182, 96, 0.6);\n}\n\n.meta-tab.active,\n.meta-subtab.active,\n.meta-nationtab.active {\n color: #f7e3a8;\n background: rgba(226, 182, 96, 0.25);\n border-color: rgba(226, 182, 96, 0.7);\n box-shadow: 0 0 12px rgba(226, 182, 96, 0.3);\n}\n\n.meta-template-content {\n margin-top: 30px;\n text-align: left;\n}\n\n.template-details {\n max-width: 800px;\n margin: 0 auto;\n padding: 28px 24px;\n background: rgba(18, 17, 12, 0.85);\n border: 1px solid rgba(226, 182, 96, 0.3);\n border-radius: 20px;\n box-shadow: 0 18px 40px rgba(0,0,0,0.6), 0 0 30px rgba(226,182,96,0.08);\n backdrop-filter: blur(12px);\n}\n\n.template-details h3 {\n text-align: center;\n font-size: 1.6rem;\n color: #f5d78c;\n margin-bottom: 24px;\n letter-spacing: 0.5px;\n}\n\n.template-categories {\n display: flex;\n flex-wrap: wrap;\n gap: 18px;\n justify-content: center;\n margin-bottom: 24px;\n}\n\n.template-category {\n flex: 1 1 280px;\n min-width: 250px;\n background: rgba(30, 28, 22, 0.7);\n border: 1px solid rgba(226, 182, 96, 0.25);\n border-radius: 14px;\n padding: 16px;\n backdrop-filter: blur(8px);\n transition: border-color 0.3s, box-shadow 0.3s;\n}\n\n.template-category:hover {\n border-color: rgba(226, 182, 96, 0.55);\n box-shadow: 0 0 20px rgba(226,182,96,0.15);\n}\n\n.template-category > strong {\n display: block;\n margin-bottom: 12px;\n font-size: 1.1rem;\n color: #f5d78c;\n text-transform: uppercase;\n letter-spacing: 1px;\n border-bottom: 1px solid rgba(226,182,96,0.25);\n padding-bottom: 6px;\n}\n\n.module-chips {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.module-chip {\n display: inline-flex;\n align-items: center;\n background: rgba(226, 182, 96, 0.12);\n border: 1px solid rgba(226, 182, 96, 0.3);\n border-radius: 20px;\n padding: 6px 14px;\n font-size: 14px;\n color: #e0c880;\n transition: all 0.2s ease;\n cursor: default;\n}\n\n.module-chip:hover {\n background: rgba(226, 182, 96, 0.22);\n border-color: #e2b660;\n transform: translateY(-2px);\n box-shadow: 0 4px 12px rgba(226,182,96,0.2);\n}\n\n.module-chip img.tier-icon {\n width: 20px;\n height: 20px;\n margin-right: 8px;\n border-radius: 2px;\n object-fit: cover;\n}\n\n.template-main-image {\n display: block;\n max-width: 100%;\n margin: 20px auto 0;\n border-radius: 10px;\n border: 1px solid rgba(226,182,96,0.3);\n cursor: pointer;\n transition: transform 0.3s, box-shadow 0.3s;\n}\n\n.template-main-image:hover {\n transform: scale(1.02);\n box-shadow: 0 8px 25px rgba(0,0,0,0.5), 0 0 20px rgba(226,182,96,0.15);\n}\n\n.tier-list {\n margin-top: 15px;\n}\n\n.tier-row {\n display: flex;\n align-items: stretch;\n margin-bottom: 8px;\n border-radius: 8px;\n overflow: hidden;\n box-shadow: 0 4px 10px rgba(0,0,0,0.3);\n}\n\n.tier-label {\n width: 50px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 1.6rem;\n font-weight: 800;\n color: #fff;\n flex-shrink: 0;\n}\n\n.tier-s .tier-label { background: #c49840; color: #1a1814; }\n.tier-a .tier-label { background: #7aad7e; }\n.tier-b .tier-label { background: #6b9a9a; }\n.tier-c .tier-label { background: #5a7a9a; }\n.tier-d .tier-label { background: #7a7a8a; }\n.tier-f .tier-label { background: #5a5a6a; }\n\n.tier-items {\n padding: 10px 14px;\n background: rgba(15, 14, 12, 0.8);\n backdrop-filter: blur(4px);\n flex: 1;\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n align-items: center;\n}\n\n.tier-tag {\n display: inline-flex;\n align-items: center;\n padding: 4px 12px;\n border-radius: 16px;\n font-size: 14.4px;\n font-weight: 500;\n white-space: nowrap;\n border: 1px solid transparent;\n transition: all 0.2s ease;\n}\n\n.tier-tag:hover {\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(0,0,0,0.4);\n}\n\n.tier-icon,\n.doctrine-inline-icon {\n width: 22px;\n height: 22px;\n vertical-align: middle;\n margin-right: 6px;\n border-radius: 3px;\n object-fit: cover;\n}\n\n.tier-tag-s { background: rgba(196, 152, 64, 0.15); color: #e0c880; border-color: rgba(196, 152, 64, 0.3); }\n.tier-tag-a { background: rgba(122, 173, 126, 0.15); color: #a0d0a0; border-color: rgba(122, 173, 126, 0.3); }\n.tier-tag-b { background: rgba(107, 154, 154, 0.15); color: #8cc0c0; border-color: rgba(107, 154, 154, 0.3); }\n.tier-tag-c { background: rgba(90, 122, 154, 0.15); color: #8aa0c0; border-color: rgba(90, 122, 154, 0.3); }\n.tier-tag-d { background: rgba(122, 122, 138, 0.15); color: #a0a0b0; border-color: rgba(122, 122, 138, 0.3); }\n.tier-tag-f { background: rgba(90, 90, 106, 0.15); color: #808090; border-color: rgba(90, 90, 106, 0.3); }\n\n.card-animate.visible {\n opacity: 1;\n transform: translateY(0);\n}\n\n.ripple {\n position: absolute;\n border-radius: 50%;\n background: rgba(226, 182, 96, 0.5);\n transform: scale(0);\n animation: ripple 0.6s linear;\n pointer-events: none;\n}\n\n@keyframes ripple {\n to { transform: scale(4); opacity: 0; }\n}\n\n.volunteer-guide a,\n.guide-link {\n color: #e2b660;\n text-decoration: none;\n font-weight: 600;\n border-bottom: 1px solid rgba(226, 182, 96, 0.4);\n transition: color 0.2s, border-color 0.2s, text-shadow 0.2s;\n}\n\n.volunteer-guide a:hover,\n.guide-link:hover {\n color: #f5d98b;\n border-bottom-color: #f5d98b;\n text-shadow: 0 0 8px rgba(226, 182, 96, 0.4);\n}\n\n.card-img {\n display: block;\n max-width: 100%;\n height: auto;\n margin: 20px auto 0;\n border-radius: 8px;\n border: 1px solid rgba(226, 182, 96, 0.2);\n}\n\n@media (max-width: 768px) {\n .guide-tabs {\n position: static;\n margin-bottom: 25px;\n flex-wrap: nowrap;\n overflow-x: auto;\n white-space: nowrap;\n justify-content: flex-start;\n gap: 7.5px;\n padding: 10px 10px;\n -webkit-overflow-scrolling: touch;\n }\n\n .guide-tab {\n font-size: 13.2px;\n padding: 12.5px 20px;\n min-width: auto;\n flex-shrink: 0;\n }\n\n .hero-card {\n padding: 40px 20px;\n border-radius: 20px;\n }\n\n .hero-title {\n font-size: 1.9rem;\n }\n\n .hero-sub {\n font-size: 0.95rem;\n }\n\n .hero-grid {\n gap: 25px;\n }\n\n .hero-stat {\n min-width: 120px;\n padding: 20px 12.5px;\n }\n\n .hero-stat + .hero-stat::before { display: none; }\n\n .hero-stat-num { font-size: 1.9rem; }\n .hero-stat-label { font-size: 0.85rem; }\n\n .cards-grid,\n .center-single-card {\n grid-template-columns: 1fr;\n max-width: 100%;\n margin: 0 0 40px 0;\n gap: 25px;\n }\n\n .full-width { grid-column: 1 / -1; }\n\n .card {\n padding: 25px;\n overflow-x: auto;\n overflow-y: visible;\n }\n\n .card-header h2 {\n font-size: 1.42rem;\n word-break: break-word;\n }\n\n .card p { font-size: 14.2px; }\n .styled-list li { font-size: 14.2px; padding: 15px; }\n\n .doctrine-table {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n border-spacing: 0 8px;\n margin: 20px 0;\n }\n\n .doctrine-table thead,\n .doctrine-table tbody,\n .doctrine-table tr,\n .doctrine-table th,\n .doctrine-table td {\n white-space: nowrap;\n }\n\n .doctrine-table tbody td { padding: 10px 12px; }\n .doctrine-table thead th { padding: 12px 12px; }\n\n .meta-tabs-level1,\n .meta-tabs-level2,\n .meta-tabs-level3 {\n flex-wrap: nowrap;\n overflow-x: auto;\n justify-content: flex-start;\n padding-bottom: 5px;\n -webkit-overflow-scrolling: touch;\n }\n\n .meta-tab,\n .meta-subtab,\n .meta-nationtab {\n font-size: 13px;\n padding: 8px 16px;\n flex-shrink: 0;\n }\n\n .template-category {\n flex: 1 1 100%;\n min-width: 0;\n }\n\n .tier-row { flex-direction: column; }\n .tier-label { width: 100%; height: 36px; font-size: 1.2rem; }\n .tier-items { justify-content: center; }\n\n .faq-question { font-size: 15px; padding: 15px 20px; }\n .faq-answer { padding: 0 20px; }\n .faq-item.open .faq-answer { padding: 15px 20px; }\n\n .card-img { max-width: 100%; height: auto; }\n .card svg { max-width: 100%; height: auto; }\n .author-card { padding: 25px; }\n}\n\n@media (max-width: 480px) {\n .volunteer-guide { padding: 20px 10px; }\n .hero-card { padding: 30px 15px; border-radius: 16px; }\n .hero-badge { font-size: 13.2px; padding: 8px 20px; }\n .hero-title { font-size: 1.61rem; }\n .hero-sub { font-size: 0.9rem; }\n .hero-stat-num { font-size: 1.7rem; }\n .guide-tab { font-size: 12px; padding: 10px 15px; }\n .card { padding: 20px 15px; border-radius: 16px; }\n .card-header h2 { font-size: 1.2rem; }\n .card p { font-size: 13px; }\n .styled-list li { font-size: 13px; padding: 12px; }\n .doctrine-table tbody td,\n .doctrine-table thead th { font-size: 12px; padding: 8px 10px; }\n .meta-tab,\n .meta-subtab,\n .meta-nationtab { font-size: 11px; padding: 6px 12px; }\n}"],"js":["(function () {\n 'use strict';\n\n if (window.__tankGuideInitialized) return;\n window.__tankGuideInitialized = true;\n\n if (!document.getElementById('tank-guide-modal-styles')) {\n var styleEl = document.createElement('style');\n styleEl.id = 'tank-guide-modal-styles';\n styleEl.textContent = '.template-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.85);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;cursor:pointer}.template-modal-content{position:relative;max-width:90vw;max-height:90vh;overflow:auto;background:#1a1915;border:1px solid rgba(226,182,96,0.4);border-radius:12px;padding:16px;box-shadow:0 25px 60px rgba(0,0,0,0.9);display:flex;flex-direction:column;align-items:center}.template-modal-content img{max-width:100%;height:auto;display:block;border-radius:4px}.template-modal-close{align-self:flex-end;font-size:32px;color:#e2b660;cursor:pointer;line-height:1;margin-bottom:8px;transition:color 0.2s}.template-modal-close:hover{color:#f5d98b}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-10px)}}.template-fade-in{animation:fadeInUp 0.4s ease forwards}.template-fade-out{animation:fadeOut 0.25s ease forwards}';\n document.head.appendChild(styleEl);\n }\n\n var moduleIcons = {\n 'Трёхместное маленькое орудие': 'icon_three_man_light_turret.png',\n 'Трёхместное среднее орудие': 'icon_three_man_medium_turret.png',\n 'Трёхместное тяжёлое орудие': 'icon_three_man_heavy_turret.png',\n 'Лёгкая фиксированная надстройка': 'icon_light_fixed_superstructure.png',\n 'Орудие непосредственной поддержки': 'icon_close_support_gun.png',\n 'Улучшенная средняя гаубица': 'icon_improved_medium_howitzer.png',\n 'Улучшенная средняя пушка': 'icon_improved_medium_cannon.png',\n 'Улучшенное зенитное орудие': 'icon_improved_aa_gun.png',\n 'Модернизированное зенитное орудие': 'icon_modern_aa_gun.png',\n 'Тяжёлый пулемёт': 'icon_heavy_mg.png',\n 'Дополнительный пулемёт': 'icon_extra_mg.png',\n 'Базовая радиостанция': 'icon_basic_radio.png',\n 'Улучшенная радиостанция': 'icon_improved_radio.png',\n 'Модернизированная радиостанция': 'icon_modern_radio.png',\n 'Усовершенствованная радиостанция': 'icon_modern_radio.png',\n 'Влажное хранилище боеприпасов': 'icon_wet_ammo_storage.png',\n 'Стабилизатор': 'icon_stabilizer.png',\n 'Простота в обслуживании': 'icon_easy_maintenance.png',\n 'Автозарядник': 'icon_autoloader.png',\n 'Конусный адаптер': 'icon_cone_adaptor.png',\n 'Шахматное расположение катков': 'icon_interleaved_suspension.png',\n 'Балансированная подвеска': 'icon_balanced_suspension.png',\n 'Торсионная подвеска': 'icon_torsion_bar_suspension.png',\n 'Подвеска Кристи': 'icon_christie_suspension.png',\n 'Клёпанная броня': 'icon_riveted_armor.png',\n 'Клёпаная броня': 'icon_riveted_armor.png',\n 'Сварная броня': 'icon_welded_armor.png',\n 'Бензиновый двигатель': 'icon_gasoline_engine.png',\n 'Дизельный двигатель': 'icon_diesel_engine.png',\n 'Литая броня': 'icon_cast_armor.png',\n 'Тяжёлое трёхместное орудие': 'icon_three_man_heavy_turret.png',\n 'Усовершенствованная высокоскоростная пушка': 'icon_improved_medium_cannon.png'\n };\n\n function getIconPath(rawName) {\n var clean = rawName.replace(/\\s*\\(.*?\\)/, '').trim();\n var file = moduleIcons[clean];\n return file ? '/public/themes/hoi4/armor_designer/' + file : '';\n }\n\n var templatesData = {\n tank: { light: { minor: { image: '/public/themes/hoi4/armor_designer/lt_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Орудие непосредственной поддержки'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Тяжёлый пулемёт'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/lt.ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Орудие непосредственной поддержки'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт', 'Дополнительный пулемёт (x2)'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, medium: { minor: { image: '/public/themes/hoi4/armor_designer/mt_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Влажное хранилище боеприпасов'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (7 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/mt_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт (x2)', 'Влажное хранилище боеприпасов'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, heavy: { minor: { image: '/public/themes/hoi4/armor_designer/ht_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/ht_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Улучшенная радиостанция'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Сварная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, modern: { minor: { image: '/public/themes/hoi4/armor_designer/mo_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (7 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/mo_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Стабилизатор', 'Простота в обслуживании', 'Автозарядник'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (7 уровней)'] }] } } },\n spg: { light: { minor: { image: '/public/themes/hoi4/armor_designer/la_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Орудие непосредственной поддержки'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/la_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Орудие непосредственной поддержки'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт', 'Дополнительный пулемёт (x2)'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, medium: { minor: { image: '/public/themes/hoi4/armor_designer/ma_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Влажное хранилище боеприпасов'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/ma_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Влажное хранилище боеприпасов', 'Тяжёлый пулемёт (x2)'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, heavy: { minor: { image: '/public/themes/hoi4/armor_designer/ha_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/ha_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт (x3)'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, modern: { minor: { image: '/public/themes/hoi4/armor_designer/moa_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/moa_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя гаубица'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Автозарядник', 'Стабилизатор', 'Простота в обслуживании'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } } },\n td: { light: { minor: { image: '/public/themes/hoi4/armor_designer/ltd_m.jpg', categories: [{ title: 'Башня', items: ['Лёгкая фиксированная надстройка'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Конусный адаптер'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (2 уровня)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/ltd_ma.jpg', categories: [{ title: 'Башня', items: ['Лёгкая фиксированная надстройка'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт', 'Конусный адаптер'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (2 уровня)'] }] } }, medium: { minor: { image: '/public/themes/hoi4/armor_designer/mtd_m.jpg', categories: [{ title: 'Башня', items: ['Лёгкая фиксированная надстройка'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Конусный адаптер'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (0 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/mtd_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Конусный адаптер', 'Тяжёлый пулемёт (x2)'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (4 уровня)'] }] } }, heavy: { minor: { image: '/public/themes/hoi4/armor_designer/htd_m.jpg', categories: [{ title: 'Башня', items: ['Лёгкая фиксированная надстройка'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Базовая радиостанция', 'Конусный адаптер'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (2 уровня)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/htd_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Конусный адаптер', 'Тяжёлый пулемёт (x2)'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (5 уровней)'] }] } }, modern: { minor: { image: '/public/themes/hoi4/armor_designer/motd_m.jpg', categories: [{ title: 'Башня', items: ['Лёгкая фиксированная надстройка'] }, { title: 'Пушка', items: ['Улучшенная средняя пушка'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Конусный адаптер'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (2 уровня)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/motd_ma.jpg', categories: [{ title: 'Башня', items: ['Тяжёлое трёхместное орудие'] }, { title: 'Пушка', items: ['Усовершенствованная высокоскоростная пушка'] }, { title: 'Прочее', items: ['Усовершенствованная радиостанция', 'Конусный адаптер', 'Автозарядник', 'Простота в обслуживании'] }, { title: 'Подвеска', items: ['Шахматное расположение катков'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (6 уровней)'] }] } } },\n aa: { light: { minor: { image: '/public/themes/hoi4/armor_designer/laa_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (0 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/laa_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Улучшенная радиостанция', 'Тяжёлый пулемёт'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (0 уровней)'] }] } }, medium: { minor: { image: '/public/themes/hoi4/armor_designer/maa_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (1 уровень)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/maa_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Улучшенная радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (4 уровня)'] }] } }, heavy: { minor: { image: '/public/themes/hoi4/armor_designer/haa_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Базовая радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (4 уровня)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (0 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/haa_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Улучшенная радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (9 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (9 уровней)'] }] } }, modern: { minor: { image: '/public/themes/hoi4/armor_designer/moaa_m.jpg', categories: [{ title: 'Башня', items: ['Трёхместное маленькое орудие'] }, { title: 'Пушка', items: ['Улучшенное зенитное орудие'] }, { title: 'Прочее', items: ['Улучшенная радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (0 уровней)'] }] }, major: { image: '/public/themes/hoi4/armor_designer/moaa_ma.jpg', categories: [{ title: 'Башня', items: ['Трёхместное среднее орудие'] }, { title: 'Пушка', items: ['Модернизированное зенитное орудие'] }, { title: 'Прочее', items: ['Модернизированная радиостанция'] }, { title: 'Подвеска', items: ['Балансированная подвеска'] }, { title: 'Броня', items: ['Клёпанная броня (0 уровней)'] }, { title: 'Двигатель', items: ['Бензиновый двигатель (2 уровня)'] }] } } }\n };\n\n function initParticles() {\n if (window.__guideParticlesInitialized) return;\n window.__guideParticlesInitialized = true;\n var canvas = document.getElementById('particles-canvas');\n if (!canvas || canvas.dataset.initialized === 'true') return;\n canvas.dataset.initialized = 'true';\n var ctx = canvas.getContext('2d');\n var particles = [];\n var maxParticles = 28;\n var mouseX = window.innerWidth / 2;\n var mouseY = window.innerHeight / 2;\n\n function resizeCanvas() { canvas.width = window.innerWidth; canvas.height = window.innerHeight; initParticlesArray(); }\n var goldColors = ['rgba(226,182,96,0.25)','rgba(196,152,64,0.30)','rgba(212,168,84,0.20)','rgba(180,140,50,0.22)'];\n\n function drawTarget(x,y,s,c,a) {\n ctx.save(); ctx.translate(x,y); ctx.rotate(a); var h=s*0.35;\n ctx.strokeStyle=c; ctx.lineWidth=0.8;\n ctx.beginPath(); ctx.moveTo(0,-h); ctx.lineTo(h,0); ctx.lineTo(0,h); ctx.lineTo(-h,0); ctx.closePath(); ctx.stroke();\n ctx.beginPath(); ctx.moveTo(-h*0.6,0); ctx.lineTo(h*0.6,0); ctx.moveTo(0,-h*0.6); ctx.lineTo(0,h*0.6); ctx.stroke();\n ctx.restore();\n }\n\n function Particle() { this.init(); }\n Particle.prototype.init = function() {\n this.x=Math.random()*canvas.width; this.y=Math.random()*canvas.height; this.size=Math.random()*18+12;\n this.baseSpeedX=(Math.random()-0.5)*0.1; this.baseSpeedY=(Math.random()-0.5)*0.1;\n this.rotationSpeed=(Math.random()-0.5)*0.005; this.angle=Math.random()*Math.PI*2;\n this.opacity=Math.random()*0.6+0.2; this.pulseSpeed=Math.random()*0.006+0.003;\n this.pulseOffset=Math.random()*Math.PI*2; this.color=goldColors[Math.floor(Math.random()*goldColors.length)]; this.time=0;\n };\n Particle.prototype.update = function() {\n var dx=mouseX-canvas.width/2, dy=mouseY-canvas.height/2;\n this.speedX=this.baseSpeedX+dx*0.00015; this.speedY=this.baseSpeedY+dy*0.00015;\n this.x+=this.speedX; this.y+=this.speedY; this.angle+=this.rotationSpeed; this.time+=this.pulseSpeed;\n if(this.x canvas.width+this.size*2)this.x=-this.size;\n if(this.y canvas.height+this.size*2)this.y=-this.size;\n };\n Particle.prototype.draw = function() {\n var pulse=0.5+0.5*Math.sin(this.time+this.pulseOffset), alpha=this.opacity*(0.5+0.5*pulse);\n ctx.globalAlpha=alpha; drawTarget(this.x,this.y,this.size,this.color,this.angle); ctx.globalAlpha=1;\n };\n\n function initParticlesArray() { particles=[]; for(var i=0;i × ';\n document.body.appendChild(overlay);\n }\n\n function getActiveMetaValues() {\n var typeEl=document.querySelector('.meta-tab.active'), weightEl=document.querySelector('.meta-subtab.active'), nationEl=document.querySelector('.meta-nationtab.active');\n return {type:typeEl?typeEl.getAttribute('data-type'):'tank', weight:weightEl?weightEl.getAttribute('data-weight'):'light', nation:nationEl?nationEl.getAttribute('data-nation'):'minor'};\n }\n\n function renderMetaTemplate() {\n var container=document.getElementById('meta-template-content'); if(!container)return;\n var meta=getActiveMetaValues();\n var data=templatesData[meta.type]&&templatesData[meta.type][meta.weight]&&templatesData[meta.type][meta.weight][meta.nation];\n\n function insertNewContent() {\n var wrapper=document.createElement('div'); wrapper.className='template-wrapper'; wrapper.style.opacity='0';\n if(!data) { wrapper.innerHTML=' Нет данных для выбранной комбинации. '; }\n else {\n var html=' Составляющие ';\n for(var i=0;i '+cat.title+' ';\n for(var j=0;j ';\n if(iconSrc) html+=' ';\n html+=moduleName+' ';\n }\n html+=' ';\n }\n html+=' ';\n wrapper.innerHTML=html;\n }\n container.appendChild(wrapper);\n requestAnimationFrame(function(){ wrapper.style.opacity=''; wrapper.classList.add('template-fade-in'); });\n }\n\n var oldWrapper=container.querySelector('.template-wrapper');\n if(oldWrapper){\n oldWrapper.classList.add('template-fade-out');\n oldWrapper.addEventListener('animationend', function handler(){\n oldWrapper.removeEventListener('animationend', handler);\n if(container.contains(oldWrapper)) container.removeChild(oldWrapper);\n insertNewContent();\n });\n } else { container.innerHTML=''; insertNewContent(); }\n }\n\n function setActiveMetaTab(level, element) {\n var selector = level===1?'.meta-tab':level===2?'.meta-subtab':'.meta-nationtab';\n var siblings=document.querySelectorAll(selector);\n for(var i=0;i 0){ stats[i].style.visibility='visible'; animateValue(stats[i],0,parsed.number,750,parsed.prefix,parsed.suffix); }\n }\n }\n\n function typeWriter(element, text, speed, delay) {\n var i=0; element.textContent='';\n function type(){ if(i