<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:base="https://irontub.ru/" xml:lang="ru">
  <id>https://irontub.ru/kalkulyator-zavoda</id>
  <link href="https://irontub.ru/kalkulyator-zavoda.xml" rel="self"/>
  <title>Заводской калькулятор расчета брони</title>
  <subtitle type="html">
&lt;html lang="ru"&gt;
&lt;head&gt;
&lt;meta charset="UTF-8"&gt;
&lt;meta name="viewport" content="width=device-width, initial-scale=1"&gt;
&lt;title&gt;Калькулятор — Арсенал-Деталь · БТВТ 450 и C500&lt;/title&gt;
&lt;style&gt;
  :root {
    --bg:    #0a0a0a;
    --bg2:   #111111;
    --line:  #d4af37;
    --gold:  #d4af37;
    --goldB: #f0d060;
    --red:   #e74c3c;
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    background: var(--bg);
    color: var(--gold);
    line-height: 1.5;
    padding: 20px 14px;
  }
  ::selection { background: var(--gold); color: #000; }
  .wrap { max-width: 1300px; margin: 0 auto; }

  /* БЕГУЩАЯ СТРОКА */
  .ticker-block {
    display: flex;
    align-items: stretch;
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 14px;
    height: 44px;
  }
  .ticker-label {
    background: var(--gold);
    color: #0a0a0a;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: 1.5px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    white-space: nowrap;
  }
  .ticker-viewport { flex: 1; overflow: hidden; position: relative; }
  .ticker-track {
    display: inline-flex;
    align-items: center;
    height: 100%;
    white-space: nowrap;
    animation: tickerScroll 40s linear infinite;
    padding-left: 20px;
  }
  .ticker-item { color: var(--gold); font-size: 13px; padding: 0 10px; letter-spacing: .3px; }
  .ticker-item b { color: var(--goldB); font-weight: 700; }
  .ticker-dot { color: var(--gold); font-size: 10px; }
  @keyframes tickerScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  /* БАННЕРЫ */
  .banner-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 14px;
  }
  @media (max-width: 860px) { .banner-block { grid-template-columns: 1fr; } }
  .banner-card {
    border-radius: 12px;
    border: 1px solid var(--gold);
    padding: 22px 24px;
    min-height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
    transition: .25s;
    background: linear-gradient(135deg, #1a1408 0%, #0a0a0a 100%);
  }
  .banner-card:hover { transform: translateY(-3px); box-shadow: 0 10px 30px rgba(212,175,55,.25); }
  .banner-card.btvt { background: linear-gradient(135deg, rgba(232,163,61,.2) 0%, #0a0a0a 100%); }
  .banner-card.c500 { background: linear-gradient(135deg, rgba(90,169,230,.15) 0%, #0a0a0a 100%); }
  .banner-tag {
    display: inline-block;
    background: var(--gold);
    color: #0a0a0a;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
    padding: 3px 12px;
    border-radius: 999px;
    margin-bottom: 12px;
    align-self: flex-start;
  }
  .banner-title {
    font-size: 22px;
    font-weight: 800;
    color: var(--goldB);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    line-height: 1.15;
    margin-bottom: 6px;
  }
  .banner-desc { font-size: 13px; color: var(--gold); opacity: .85; margin-bottom: 12px; }
  .banner-price { font-size: 18px; font-weight: 800; color: var(--goldB); margin-bottom: 10px; }
  .banner-price b { color: #fff; }
  .banner-cta {
    display: inline-block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #0a0a0a;
    background: var(--gold);
    padding: 8px 16px;
    border-radius: 999px;
    align-self: flex-start;
    transition: .2s;
  }
  .banner-card:hover .banner-cta { background: var(--goldB); }

  /* ШАПКА */
  header {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 30px 25px;
    text-align: center;
    margin-bottom: 14px;
  }
  .banner-line {
    display: inline-block;
    background: var(--gold);
    color: #0a0a0a;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    padding: 4px 14px;
    border-radius: 999px;
    margin-bottom: 14px;
  }
  header h1 {
    margin: 0 0 12px 0;
    font-size: 28px;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 800;
  }
  header p { margin: 0; color: var(--gold); font-size: 15px; opacity: .9; }

  /* О ПРОИЗВОДСТВЕ */
  .production-block {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 22px;
    margin-bottom: 14px;
  }
  .production-title {
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--line);
  }
  .production-feature {
    background: linear-gradient(135deg, rgba(212,175,55,.12) 0%, rgba(10,10,10,1) 100%);
    border: 1px solid var(--gold);
    border-radius: 10px;
    padding: 18px 20px;
    margin-bottom: 12px;
  }
  .production-feature.secondary {
    background: linear-gradient(135deg, rgba(212,175,55,.06) 0%, rgba(10,10,10,1) 100%);
    border-color: rgba(212,175,55,.5);
  }
  .feature-tag {
    display: inline-block;
    background: var(--gold);
    color: #0a0a0a;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    padding: 3px 12px;
    border-radius: 999px;
    margin-bottom: 10px;
  }
  .production-feature.secondary .feature-tag {
    background: transparent;
    color: var(--gold);
    border: 1px solid var(--gold);
  }
  .feature-title {
    font-size: 17px;
    font-weight: 800;
    color: var(--goldB);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 6px;
    line-height: 1.2;
  }
  .production-feature.secondary .feature-title {
    font-size: 15px;
    color: var(--gold);
  }
  .feature-desc {
    font-size: 13px;
    color: var(--gold);
    opacity: .8;
    line-height: 1.5;
  }
  .production-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-top: 16px;
  }
  @media (max-width: 1000px) { .production-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 600px) { .production-grid { grid-template-columns: 1fr; } }
  .prod-card {
    background: #0a0a0a;
    border: 1px solid rgba(212,175,55,.3);
    border-radius: 10px;
    padding: 16px;
    text-align: center;
  }
  .prod-icon { font-size: 24px; color: var(--gold); margin-bottom: 8px; }
  .prod-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold);
    opacity: .7;
    margin-bottom: 6px;
  }
  .prod-value {
    font-size: 14px;
    font-weight: 800;
    color: var(--goldB);
    line-height: 1.3;
  }
  .production-note {
    text-align: center;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px dashed rgba(212,175,55,.3);
    font-size: 13px;
    color: var(--gold);
    opacity: .85;
  }
  .production-note b { color: var(--goldB); font-weight: 800; }

  /* ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ */
  .tech-block {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 22px;
    margin-bottom: 14px;
  }
  .tech-title {
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--line);
  }
  .tech-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
  }
  @media (max-width: 860px) { .tech-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) { .tech-grid { grid-template-columns: 1fr; } }
  .tech-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    background: #0a0a0a;
    border: 1px solid rgba(212,175,55,.25);
    border-radius: 8px;
    font-size: 13px;
    gap: 10px;
  }
  .tech-label { color: var(--gold); opacity: .75; }
  .tech-value { color: var(--goldB); font-weight: 700; text-align: right; }

  /* КАЛЬКУЛЯТОР */
  .calc-block {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 14px;
  }
  .calc-title {
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--line);
    text-align: center;
  }

  /* ПОЛЯ */
  .field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
  .field label {
    font-size: 11px;
    font-weight: 700;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 1px;
    opacity: .8;
  }
  .field input, .field select {
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 9px;
    font-size: 14px;
    background: var(--bg);
    color: var(--gold);
    outline: none;
    transition: .15s;
    font-family: inherit;
    font-variant-numeric: tabular-nums;
  }
  .field input:focus, .field select:focus {
    border-color: var(--goldB);
    box-shadow: 0 0 0 3px rgba(212,175,55,.2);
  }
  .field select option { background: var(--bg); color: var(--gold); }
  .field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

  /* ФОРМЫ */
  .shape-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 16px;
  }
  .shape-btn {
    padding: 14px 8px;
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 9px;
    cursor: pointer;
    text-align: center;
    transition: .15s;
    color: var(--gold);
    font-family: inherit;
  }
  .shape-btn:hover { background: rgba(212,175,55,.1); }
  .shape-btn.active { background: var(--gold); color: #0a0a0a; }
  .shape-icon { font-size: 22px; display: block; margin-bottom: 4px; }
  .shape-name { font-size: 11px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }

  /* РЕЖИМ */
  .mode-toggle { display: flex; gap: 8px; margin-bottom: 16px; }
  .mode-btn {
    flex: 1;
    padding: 10px 14px;
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 9px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 700;
    color: var(--gold);
    transition: .15s;
    font-family: inherit;
  }
  .mode-btn.active { background: var(--gold); color: #0a0a0a; }

  /* РЕЗУЛЬТАТ */
  .result-block {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 14px;
  }
  .result-main {
    text-align: center;
    padding: 16px 0 20px;
    border-bottom: 1px solid rgba(212,175,55,.3);
    margin-bottom: 16px;
  }
  .result-main-label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gold);
    opacity: .8;
    margin-bottom: 8px;
  }
  .result-main-value {
    font-size: 42px;
    font-weight: 800;
    color: var(--goldB);
    line-height: 1;
    font-variant-numeric: tabular-nums;
    margin-bottom: 6px;
  }
  .result-main-unit { font-size: 16px; color: var(--gold); opacity: .8; }
  .result-main-note { font-size: 12px; color: var(--gold); opacity: .7; margin-top: 8px; }

  .result-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-bottom: 16px;
  }
  @media (max-width: 860px) { .result-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 500px) { .result-grid { grid-template-columns: 1fr; } }
  .result-item {
    background: #0a0a0a;
    border: 1px solid rgba(212,175,55,.3);
    border-radius: 9px;
    padding: 12px;
    text-align: center;
  }
  .result-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold);
    opacity: .7;
    margin-bottom: 6px;
  }
  .result-value {
    font-size: 18px;
    font-weight: 800;
    color: var(--goldB);
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
    word-break: break-word;
  }
  .result-value.small { font-size: 15px; }

  .info-note {
    background: rgba(212,175,55,.08);
    border: 1px solid var(--line);
    border-left: 4px solid var(--gold);
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 12px;
    color: var(--gold);
    font-size: 13px;
    display: none;
  }
  .info-note.show { display: block; }
  .info-note b { color: var(--goldB); }

  /* КНОПКИ */
  .actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }
  .promo-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 16px;
    border-radius: 9px;
    border: 1px solid var(--gold);
    background: transparent;
    color: var(--gold);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: .15s;
    font-family: inherit;
    letter-spacing: .3px;
    flex: 1;
    min-width: 140px;
  }
  .promo-btn:hover { background: var(--gold); color: #0a0a0a; }
  .promo-btn.primary { background: var(--gold); color: #0a0a0a; }
  .promo-btn.primary:hover { background: var(--goldB); }

  /* КНОПКА "СТРУКТУРА ЗАТРАТ" */
  .costs-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 16px 20px;
    background: linear-gradient(135deg, rgba(212,175,55,.12) 0%, rgba(10,10,10,1) 100%);
    border: 1px solid var(--gold);
    border-radius: 12px;
    color: var(--goldB);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: .25s;
    font-family: inherit;
    margin-bottom: 14px;
  }
  .costs-toggle-btn:hover {
    background: linear-gradient(135deg, rgba(212,175,55,.25) 0%, rgba(10,10,10,1) 100%);
    box-shadow: 0 6px 20px rgba(212,175,55,.25);
  }
  .costs-toggle-btn .toggle-arrow {
    font-size: 20px;
    transition: transform .4s ease;
    color: var(--gold);
  }
  .costs-toggle-btn.open .toggle-arrow {
    transform: rotate(180deg);
  }
  .costs-toggle-btn .toggle-text {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .costs-toggle-btn .toggle-icon {
    font-size: 20px;
  }

  /* БЛОК СТРУКТУРЫ ЗАТРАТ */
  .costs-block {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height .6s ease, opacity .4s ease, margin-bottom .4s ease;
    margin-bottom: 0;
  }
  .costs-block.open {
    max-height: 2000px;
    opacity: 1;
    margin-bottom: 14px;
  }
  .costs-inner {
    background: var(--bg);
    border: 1px solid var(--gold);
    border-radius: 12px;
    padding: 22px;
  }
  .costs-title {
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--line);
  }
  .costs-intro {
    text-align: center;
    font-size: 13px;
    color: var(--gold);
    opacity: .8;
    margin-bottom: 18px;
    line-height: 1.6;
  }
  .costs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 18px;
  }
  @media (max-width: 860px) { .costs-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 500px) { .costs-grid { grid-template-columns: 1fr; } }
  .cost-item {
    background: #0a0a0a;
    border: 1px solid rgba(212,175,55,.3);
    border-radius: 10px;
    padding: 16px 14px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .5s ease, transform .5s ease;
  }
  .costs-block.open .cost-item {
    opacity: 1;
    transform: translateY(0);
  }
  .costs-block.open .cost-item:nth-child(1) { transition-delay: .05s; }
  .costs-block.open .cost-item:nth-child(2) { transition-delay: .1s; }
  .costs-block.open .cost-item:nth-child(3) { transition-delay: .15s; }
  .costs-block.open .cost-item:nth-child(4) { transition-delay: .2s; }
  .costs-block.open .cost-item:nth-child(5) { transition-delay: .25s; }
  .costs-block.open .cost-item:nth-child(6) { transition-delay: .3s; }
  .costs-block.open .cost-item:nth-child(7) { transition-delay: .35s; }
  .costs-block.open .cost-item:nth-child(8) { transition-delay: .4s; }
  .costs-block.open .cost-item:nth-child(9) { transition-delay: .45s; }
  .cost-icon {
    font-size: 22px;
    line-height: 1;
    flex-shrink: 0;
    filter: drop-shadow(0 0 6px rgba(212,175,55,.5));
  }
  .cost-text h4 {
    font-size: 13px;
    font-weight: 800;
    color: var(--goldB);
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 4px;
  }
  .cost-text p {
    font-size: 12px;
    color: var(--gold);
    opacity: .75;
    line-height: 1.4;
  }
  .costs-note {
    background: rgba(212,175,55,.06);
    border: 1px dashed var(--gold);
    border-radius: 10px;
    padding: 14px 18px;
    text-align: center;
    font-size: 12px;
    color: var(--gold);
    opacity: .85;
    line-height: 1.6;
  }
  .costs-note b { color: var(--goldB); }

  /* ССЫЛКИ */
  .links-block {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 14px;
  }
  @media (max-width: 700px) { .links-block { grid-template-columns: 1fr; } }
  .link-card {
    background: var(--bg);
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 16px;
    text-decoration: none;
    transition: .2s;
    display: flex;
    align-items: center;
    gap: 12px;
  }
  .link-card:hover { background: rgba(212,175,55,.08); transform: translateY(-2px); }
  .link-icon {
    width: 40px;
    height: 40px;
    background: var(--gold);
    color: #0a0a0a;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 800;
    flex-shrink: 0;
  }
  .link-text h4 {
    font-size: 14px;
    color: var(--goldB);
    font-weight: 800;
    margin-bottom: 2px;
    text-transform: uppercase;
    letter-spacing: .5px;
  }
  .link-text p { font-size: 12px; color: var(--gold); opacity: .75; }

  /* КОНТАКТЫ */
  .cta-section {
    text-align: center;
    background: var(--bg);
    border: 1px solid var(--gold);
    border-radius: 12px;
    padding: 28px 20px;
    margin-top: 14px;
  }
  .cta-text { font-size: 16px; font-weight: 600; color: var(--gold); margin: 0 0 16px 0; }
  .cta-button {
    display: inline-block;
    background: var(--gold);
    color: #0a0a0a !important;
    text-decoration: none;
    padding: 16px 40px;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 1px;
    border-radius: 999px;
    transition: .25s;
  }
  .cta-button:hover { background: var(--goldB); transform: scale(1.03); }
  .manager-info { margin: 16px 0 0 0; font-size: 13px; color: var(--gold); opacity: .8; }

  /* SEO */
  .seo-text {
    position: absolute;
    width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
  }

  /* ПОЛЗУНКИ */
  ::-webkit-scrollbar { width: 18px; height: 18px; }
  ::-webkit-scrollbar-track {
    background: #050505;
    border: 1px solid #2a2210;
    border-radius: 9px;
    box-shadow: inset 0 0 12px rgba(212,175,55,.2);
  }
  ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg,
      #ffffcc 0%, #ffd700 15%, #ff8c00 35%, #d4af37 50%,
      #ff8c00 65%, #ffd700 85%, #ffffcc 100%);
    border: 1px solid #ffd700;
    border-radius: 9px;
    box-shadow:
      0 0 10px rgba(255,215,0,.9),
      0 0 20px rgba(255,140,0,.7),
      0 0 30px rgba(255,80,0,.4),
      inset 0 0 8px rgba(255,255,255,.5);
    background-size: 100% 200%;
    animation: fireFlow 2.5s linear infinite;
  }
  ::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg,
      #ffffff 0%, #ffffcc 20%, #ffd700 40%, #ff8c00 60%,
      #ffd700 80%, #ffffff 100%);
    box-shadow:
      0 0 18px rgba(255,215,0,1),
      0 0 36px rgba(255,140,0,.9),
      0 0 54px rgba(255,80,0,.6),
      inset 0 0 12px rgba(255,255,255,.8);
  }
  ::-webkit-scrollbar-button:single-button {
    background-color: #0a0a0a;
    display: block;
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center;
    border: 1px solid #3a2f10;
    border-radius: 8px;
    height: 18px;
    width: 18px;
    box-shadow: inset 0 0 6px rgba(212,175,55,.4);
    transition: .2s;
  }
  ::-webkit-scrollbar-button:single-button:hover {
    background-color: #1a0e08;
    border-color: #ffd700;
    box-shadow: 0 0 12px rgba(255,215,0,.9), inset 0 0 8px rgba(255,140,0,.5);
  }
  ::-webkit-scrollbar-button:single-button:vertical:decrement {
    background-image: url("data:image/svg+xml;utf8,&lt;svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'&gt;&lt;path d='M8 3 L13 11 L3 11 Z' fill='%23ffd700' stroke='%23ff5500' stroke-width='0.8'/&gt;&lt;/svg&gt;");
  }
  ::-webkit-scrollbar-button:single-button:vertical:increment {
    background-image: url("data:image/svg+xml;utf8,&lt;svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'&gt;&lt;path d='M8 13 L3 5 L13 5 Z' fill='%23ffd700' stroke='%23ff5500' stroke-width='0.8'/&gt;&lt;/svg&gt;");
  }
  @keyframes fireFlow {
    0%   { background-position: 0% 0%; }
    100% { background-position: 0% 200%; }
  }
  * { scrollbar-width: thin; scrollbar-color: #ffd700 #0a0a0a; }

  /* АДАПТИВ */
  @media (max-width: 700px) {
    body { padding: 12px 10px; }
    header h1 { font-size: 20px; letter-spacing: 1.5px; }
    .banner-title { font-size: 16px; }
    .result-main-value { font-size: 32px; }
    .shape-grid { grid-template-columns: repeat(3, 1fr); }
    .promo-btn { padding: 10px 12px; font-size: 12px; }
    .cta-button { width: 100%; padding: 16px 10px; font-size: 17px; }
    .ticker-item { font-size: 12px; }
    .field-row { grid-template-columns: 1fr; }
    .prod-card { padding: 12px; }
    .prod-value { font-size: 12px; }
    .tech-item { font-size: 12px; padding: 8px 10px; }
    .feature-title { font-size: 14px; }
    .production-feature.secondary .feature-title { font-size: 13px; }
    .costs-toggle-btn { font-size: 12px; padding: 14px 16px; }
    .cost-text h4 { font-size: 12px; }
    .cost-text p { font-size: 11px; }
  }

  /* ПЕЧАТЬ */
  @media print {
    body { background: #fff; color: #000; padding: 0; }
    .ticker-block, .banner-block, .promo-btn, .shape-btn, .mode-btn, .links-block, .actions, .costs-toggle-btn { display: none !important; }
    .calc-block, .result-block, .cta-section, .production-block, .tech-block {
      background: #fff !important;
      border: 1px solid #999 !important;
    }
    .costs-block { max-height: none !important; opacity: 1 !important; }
    .calc-title, .result-main-label, .production-title, .tech-title, .costs-title { color: #000 !important; }
    .field label { color: #000 !important; }
    .field input, .field select {
      background: #fff !important;
      color: #000 !important;
      border-color: #999 !important;
    }
    .result-main-value { color: #000 !important; }
    .result-item { background: #f5f5f5 !important; border-color: #999 !important; }
    .result-value { color: #000 !important; }
    .cta-section { background: #fff !important; }
    .cta-button { background: #000 !important; color: #fff !important;
      -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .prod-card { background: #f5f5f5 !important; border-color: #999 !important; }
    .prod-value { color: #000 !important; }
    .tech-item { background: #f5f5f5 !important; border-color: #999 !important; }
    .tech-value { color: #000 !important; }
    .production-feature { background: #f5f5f5 !important; border-color: #999 !important; }
    .feature-title { color: #000 !important; }
    .feature-tag { background: #000 !important; color: #fff !important;
      -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .cost-item { background: #f5f5f5 !important; border-color: #999 !important; }
    .cost-text h4 { color: #000 !important; }
    .cost-text p { color: #666 !important; }
    .costs-note { background: #f5f5f5 !important; border-color: #999 !important; color: #000 !important; }
  }
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class="wrap"&gt;

  
  &lt;div class="ticker-block"&gt;
    &lt;div class="ticker-label"&gt;ЦЕНЫ&lt;/div&gt;
    &lt;div class="ticker-viewport"&gt;
      &lt;div class="ticker-track"&gt;
        &lt;span class="ticker-item"&gt;БТВТ 450 — &lt;b&gt;300 ₽/кг&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;C500 6 мм — &lt;b&gt;425 ₽/кг&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;6×1500×6000 БТВТ — &lt;b&gt;129 000 ₽/лист&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;6×1500×6000 C500 — &lt;b&gt;182 750 ₽/лист&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;Класс от Бр2 / С2 до Бр6 · от 1 листа · НДС 22%&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;Отгрузка по 20 тонн — 10–15 раб. дней&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;БТВТ 450 — &lt;b&gt;300 ₽/кг&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;C500 6 мм — &lt;b&gt;425 ₽/кг&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;6×1500×6000 БТВТ — &lt;b&gt;129 000 ₽/лист&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;6×1500×6000 C500 — &lt;b&gt;182 750 ₽/лист&lt;/b&gt;&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;Класс от Бр2 / С2 до Бр6 · от 1 листа · НДС 22%&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
        &lt;span class="ticker-item"&gt;Отгрузка по 20 тонн — 10–15 раб. дней&lt;/span&gt;
        &lt;span class="ticker-dot"&gt;◆&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="banner-block"&gt;
    &lt;a class="banner-card btvt" href="https://brony-rf.ru/btvt-450-list-6-mm" target="_blank" rel="noopener"&gt;
      &lt;div class="banner-tag"&gt;АКЦИЯ&lt;/div&gt;
      &lt;div class="banner-title"&gt;БТВТ 450&lt;/div&gt;
      &lt;div class="banner-desc"&gt;ТУ 18105BB-2024 · класс Бр2 / С2&lt;/div&gt;
      &lt;div class="banner-price"&gt;от &lt;b&gt;300 ₽/кг&lt;/b&gt; · 129 000 ₽/лист&lt;/div&gt;
      &lt;div class="banner-cta"&gt;Перейти →&lt;/div&gt;
    &lt;/a&gt;
    &lt;a class="banner-card c500" href="https://brony-rf.ru/aktciya-solnechnyy-oktyabr" target="_blank" rel="noopener"&gt;
      &lt;div class="banner-tag"&gt;АКЦИЯ&lt;/div&gt;
      &lt;div class="banner-title"&gt;C500 · 6 мм&lt;/div&gt;
      &lt;div class="banner-desc"&gt;ТУ 18101-2017 Ж · класс Бр2 / С2&lt;/div&gt;
      &lt;div class="banner-price"&gt;от &lt;b&gt;425 ₽/кг&lt;/b&gt; · 182 750 ₽/лист&lt;/div&gt;
      &lt;div class="banner-cta"&gt;Перейти →&lt;/div&gt;
    &lt;/a&gt;
  &lt;/div&gt;

  
  &lt;header&gt;
    &lt;div class="banner-line"&gt;КАЛЬКУЛЯТОР&lt;/div&gt;
    &lt;h1&gt;Расчёт стоимости изделия&lt;/h1&gt;
    &lt;p&gt;БТВТ 450 · C500 · Точность по ТУ · Класс от Бр2 / С2 до Бр6&lt;/p&gt;
  &lt;/header&gt;

  
  &lt;div class="production-block"&gt;
    &lt;div class="production-title"&gt;Собственное производство&lt;/div&gt;

    &lt;div class="production-feature"&gt;
      &lt;div class="feature-tag"&gt;12 – 50 мм · до 6000 мм&lt;/div&gt;
      &lt;div class="feature-title"&gt;Немецкая линия закалки и отпуска&lt;/div&gt;
      &lt;div class="feature-desc"&gt;Роликовая закалочная машина · автоматическое управление · защитная атмосфера · точность ±0,2 мм&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="production-feature secondary"&gt;
      &lt;div class="feature-tag"&gt;5 – 12 мм&lt;/div&gt;
      &lt;div class="feature-title"&gt;Электропечной агрегат СНОА 33.18.5/10&lt;/div&gt;
      &lt;div class="feature-desc"&gt;Муфельный · окислительная атмосфера · закалка листового проката · с отпускной печью&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="production-grid"&gt;
      &lt;div class="prod-card"&gt;
        &lt;div class="prod-icon"&gt;?&lt;/div&gt;
        &lt;div class="prod-label"&gt;Точность&lt;/div&gt;
        &lt;div class="prod-value"&gt;По ТУ&lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="prod-card"&gt;
        &lt;div class="prod-icon"&gt;?️&lt;/div&gt;
        &lt;div class="prod-label"&gt;Класс защиты&lt;/div&gt;
        &lt;div class="prod-value"&gt;от Бр2 / С2&lt;br /&gt;до Бр6&lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="prod-card"&gt;
        &lt;div class="prod-icon"&gt;?&lt;/div&gt;
        &lt;div class="prod-label"&gt;Толщина&lt;/div&gt;
        &lt;div class="prod-value"&gt;5 – 50 мм&lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="prod-card"&gt;
        &lt;div class="prod-icon"&gt;?&lt;/div&gt;
        &lt;div class="prod-label"&gt;Длина&lt;/div&gt;
        &lt;div class="prod-value"&gt;до 6000 мм&lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="production-note"&gt;
      Чаще всего заказывают: &lt;b&gt;Бр2 · С2 · Бр4 · Бр5&lt;/b&gt; (толщина 25 мм)
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="tech-block"&gt;
    &lt;div class="tech-title"&gt;Технические характеристики&lt;/div&gt;
    &lt;div class="tech-grid"&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Немецкая линия&lt;/span&gt;&lt;span class="tech-value"&gt;12–50 мм · до 6000 мм&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;СНОА 33.18.5/10&lt;/span&gt;&lt;span class="tech-value"&gt;5–12 мм&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Тип&lt;/span&gt;&lt;span class="tech-value"&gt;Муфельный, окислительная атмосфера&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Назначение&lt;/span&gt;&lt;span class="tech-value"&gt;Закалка листового проката&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Комплект&lt;/span&gt;&lt;span class="tech-value"&gt;С отпускной печью&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Закалка, °C&lt;/span&gt;&lt;span class="tech-value"&gt;до 1000&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Отпуск, °C&lt;/span&gt;&lt;span class="tech-value"&gt;до 300&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Толщина, мм&lt;/span&gt;&lt;span class="tech-value"&gt;5 – 50&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Размер листа, мм&lt;/span&gt;&lt;span class="tech-value"&gt;до 2000 × 6000&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Производительность&lt;/span&gt;&lt;span class="tech-value"&gt;29–35 листов/день&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Управление&lt;/span&gt;&lt;span class="tech-value"&gt;АСУ ТП, ПИД&lt;/span&gt;&lt;/div&gt;
      &lt;div class="tech-item"&gt;&lt;span class="tech-label"&gt;Атмосфера&lt;/span&gt;&lt;span class="tech-value"&gt;Воздушная / окислительная / защитная&lt;/span&gt;&lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="calc-block"&gt;
    &lt;div class="calc-title"&gt;Параметры изделия&lt;/div&gt;

    &lt;div class="field"&gt;
      &lt;label&gt;Материал&lt;/label&gt;
      &lt;select id="material"&gt;
        &lt;option value="btvt450" selected="selected"&gt;БТВТ 450 · ТУ 18105BB-2024 — 300 ₽/кг&lt;/option&gt;
        &lt;option value="c500"&gt;C500 · ТУ 18101-2017 Ж — 425 ₽/кг&lt;/option&gt;
      &lt;/select&gt;
    &lt;/div&gt;

    &lt;div class="field"&gt;
      &lt;label&gt;Форма изделия&lt;/label&gt;
      &lt;div class="shape-grid"&gt;
        &lt;div class="shape-btn active" data-shape="plate"&gt;&lt;span class="shape-icon"&gt;▬&lt;/span&gt;&lt;span class="shape-name"&gt;Плита&lt;/span&gt;&lt;/div&gt;
        &lt;div class="shape-btn" data-shape="sheet"&gt;&lt;span class="shape-icon"&gt;▭&lt;/span&gt;&lt;span class="shape-name"&gt;Лист&lt;/span&gt;&lt;/div&gt;
        &lt;div class="shape-btn" data-shape="bar"&gt;&lt;span class="shape-icon"&gt;▯&lt;/span&gt;&lt;span class="shape-name"&gt;Брусок&lt;/span&gt;&lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="field"&gt;
      &lt;label&gt;Способ расчёта&lt;/label&gt;
      &lt;div class="mode-toggle"&gt;
        &lt;button class="mode-btn active" data-mode="size"&gt;По размерам&lt;/button&gt;
        &lt;button class="mode-btn" data-mode="weight"&gt;По весу&lt;/button&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div id="sizeFields"&gt;
      &lt;div class="shape-fields" data-shape="plate"&gt;
        &lt;div class="field"&gt;&lt;label&gt;Толщина, мм&lt;/label&gt;&lt;input type="number" id="plateT" value="25" /&gt;&lt;/div&gt;
        &lt;div class="field-row"&gt;
          &lt;div class="field"&gt;&lt;label&gt;Ширина, мм&lt;/label&gt;&lt;input type="number" id="plateW" value="200" /&gt;&lt;/div&gt;
          &lt;div class="field"&gt;&lt;label&gt;Длина, мм&lt;/label&gt;&lt;input type="number" id="plateL" value="300" /&gt;&lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="shape-fields" data-shape="sheet" style="display:none"&gt;
        &lt;div class="field"&gt;&lt;label&gt;Толщина, мм&lt;/label&gt;&lt;input type="number" id="sheetT" value="6" /&gt;&lt;/div&gt;
        &lt;div class="field-row"&gt;
          &lt;div class="field"&gt;&lt;label&gt;Ширина, мм&lt;/label&gt;&lt;input type="number" id="sheetW" value="1500" /&gt;&lt;/div&gt;
          &lt;div class="field"&gt;&lt;label&gt;Длина, мм&lt;/label&gt;&lt;input type="number" id="sheetL" value="6000" /&gt;&lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
      &lt;div class="shape-fields" data-shape="bar" style="display:none"&gt;
        &lt;div class="field"&gt;&lt;label&gt;Высота, мм&lt;/label&gt;&lt;input type="number" id="barH" value="25" /&gt;&lt;/div&gt;
        &lt;div class="field-row"&gt;
          &lt;div class="field"&gt;&lt;label&gt;Ширина, мм&lt;/label&gt;&lt;input type="number" id="barW" value="200" /&gt;&lt;/div&gt;
          &lt;div class="field"&gt;&lt;label&gt;Длина, мм&lt;/label&gt;&lt;input type="number" id="barL" value="300" /&gt;&lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;

    &lt;div id="weightFields" style="display:none"&gt;
      &lt;div class="field"&gt;&lt;label&gt;Вес одной детали, кг&lt;/label&gt;&lt;input type="number" id="weightInput" value="25" /&gt;&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="field"&gt;
      &lt;label&gt;Количество, шт&lt;/label&gt;
      &lt;input type="number" id="qty" value="1" /&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="result-block"&gt;
    &lt;div class="calc-title"&gt;Результат расчёта&lt;/div&gt;

    &lt;div class="result-main"&gt;
      &lt;div class="result-main-label"&gt;Цена за единицу с НДС&lt;/div&gt;
      &lt;div class="result-main-value" id="rPrice"&gt;0&lt;/div&gt;
      &lt;div class="result-main-unit"&gt;рублей&lt;/div&gt;
      &lt;div class="result-main-note" id="rNote"&gt;—&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="info-note" id="infoBox"&gt;&lt;/div&gt;

    &lt;div class="result-grid"&gt;
      &lt;div class="result-item"&gt;&lt;div class="result-label"&gt;Вес детали&lt;/div&gt;&lt;div class="result-value small" id="rWeight"&gt;—&lt;/div&gt;&lt;/div&gt;
      &lt;div class="result-item"&gt;&lt;div class="result-label"&gt;Цена за кг&lt;/div&gt;&lt;div class="result-value small" id="rPriceKg"&gt;—&lt;/div&gt;&lt;/div&gt;
      &lt;div class="result-item"&gt;&lt;div class="result-label"&gt;Цена за партию&lt;/div&gt;&lt;div class="result-value small" id="rBatch"&gt;—&lt;/div&gt;&lt;/div&gt;
      &lt;div class="result-item"&gt;&lt;div class="result-label"&gt;Вес партии&lt;/div&gt;&lt;div class="result-value small" id="rBatchWeight"&gt;—&lt;/div&gt;&lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="actions"&gt;
      &lt;button class="promo-btn primary" onclick="downloadCSV()"&gt;⬇ CSV&lt;/button&gt;
      &lt;button class="promo-btn primary" onclick="downloadExcel()"&gt;⬇ Excel&lt;/button&gt;
      &lt;button class="promo-btn" onclick="window.print()"&gt;? Печать&lt;/button&gt;
      &lt;button class="promo-btn" onclick="resetAll()"&gt;✕ Сброс&lt;/button&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;button class="costs-toggle-btn" id="costsToggle" onclick="toggleCosts()"&gt;
    &lt;span class="toggle-text"&gt;
      &lt;span class="toggle-icon"&gt;?&lt;/span&gt;
      &lt;span&gt;Показать структуру затрат&lt;/span&gt;
    &lt;/span&gt;
    &lt;span class="toggle-arrow"&gt;▼&lt;/span&gt;
  &lt;/button&gt;

  
  &lt;div class="costs-block" id="costsBlock"&gt;
    &lt;div class="costs-inner"&gt;
      &lt;div class="costs-title"&gt;Структура затрат производства&lt;/div&gt;

      &lt;div class="costs-intro"&gt;
        Из чего складывается цена &lt;b&gt;брони&lt;/b&gt; — &lt;b&gt;без наценок и служебной информации&lt;/b&gt;
      &lt;/div&gt;

      &lt;div class="costs-grid"&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Сырьё&lt;/h4&gt;
            &lt;p&gt;Металл, закупка, доставка до цеха&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Термообработка&lt;/h4&gt;
            &lt;p&gt;Закалка, отпуск, нагрев под закалку&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;⚡&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Электроэнергия&lt;/h4&gt;
            &lt;p&gt;Печи, пресс, насосы, вентиляция&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;⚙️&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Мехобработка&lt;/h4&gt;
            &lt;p&gt;Резка, гибка, сварка, ЧПУ&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Труд&lt;/h4&gt;
            &lt;p&gt;Операторы, наладчики, ОТК&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?️&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Инструмент и амортизация&lt;/h4&gt;
            &lt;p&gt;Резцы, фрезы, диски, ТО оборудования&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Логистика&lt;/h4&gt;
            &lt;p&gt;Доставка, погрузка, разгрузка&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Оформление&lt;/h4&gt;
            &lt;p&gt;Документы, сертификаты, паспорта&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
        &lt;div class="cost-item"&gt;
          &lt;div class="cost-icon"&gt;?&lt;/div&gt;
          &lt;div class="cost-text"&gt;
            &lt;h4&gt;Помещение&lt;/h4&gt;
            &lt;p&gt;Аренда, коммуналка, вывоз отходов&lt;/p&gt;
          &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="costs-note"&gt;
        &lt;b&gt;Каждая позиция формирует итоговую цену.&lt;/b&gt;&lt;br /&gt;
        Точная себестоимость и наценка — коммерческая информация.&lt;br /&gt;
        Финальную стоимость вы видите в калькуляторе выше.
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

  
  &lt;div class="links-block"&gt;
    &lt;a class="link-card" href="https://brony-rf.ru/btvt-450-list-6-mm" target="_blank" rel="noopener"&gt;
      &lt;div class="link-icon"&gt;Б&lt;/div&gt;
      &lt;div class="link-text"&gt;
        &lt;h4&gt;БТВТ 450 · ТУ 18105BB-2024&lt;/h4&gt;
        &lt;p&gt;Класс Бр2 / С2 · от 300 ₽/кг · 129 000 ₽/лист&lt;/p&gt;
      &lt;/div&gt;
    &lt;/a&gt;
    &lt;a class="link-card" href="https://brony-rf.ru/aktciya-solnechnyy-oktyabr" target="_blank" rel="noopener"&gt;
      &lt;div class="link-icon"&gt;C&lt;/div&gt;
      &lt;div class="link-text"&gt;
        &lt;h4&gt;C500 · ТУ 18101-2017 Ж&lt;/h4&gt;
        &lt;p&gt;Класс Бр2 / С2 · от 425 ₽/кг · 182 750 ₽/лист&lt;/p&gt;
      &lt;/div&gt;
    &lt;/a&gt;
  &lt;/div&gt;

  
  &lt;div class="cta-section"&gt;
    &lt;p class="cta-text"&gt;Нужен точный расчёт или нестандартная форма — звоните&lt;/p&gt;
    &lt;a href="tel:+79220259564" class="cta-button"&gt;8 (922) 02-59-564&lt;/a&gt;
    &lt;p class="manager-info"&gt;Менеджер: Ольга · Бронесталь · ООО «Арсенал Деталь»&lt;/p&gt;
  &lt;/div&gt;

  
  &lt;div class="seo-text"&gt;
    &lt;p&gt;Калькулятор стоимости изделия из броневой стали БТВТ 450 и C500. Собственное производство. Немецкая линия закалки и отпуска (12–50 мм, до 6000 мм) и электропечной агрегат СНОА 33.18.5/10 (5–12 мм). Расчёт веса и цены по размерам или весу. Плита, лист, брусок. Точность по ТУ. Классы защиты от Бр2 / С2 до Бр6. Структура затрат производства брони. Цены с НДС. ООО «Арсенал-Деталь», 8 922 02-59-564.&lt;/p&gt;
  &lt;/div&gt;

&lt;/div&gt;

&lt;script&gt;
/* ==================== ДАННЫЕ ==================== */
const MATERIALS = [
  {key:'btvt450', name:'БТВТ 450 · ТУ 18105BB-2024', price:300, density:7850},
  {key:'c500',    name:'C500 · ТУ 18101-2017 Ж',      price:425, density:7850}
];

const SHAPES = {
  plate: 'Плита',
  sheet: 'Лист',
  bar:   'Брусок'
};

/* ==================== СОСТОЯНИЕ ==================== */
let state = { material:'btvt450', shape:'plate', mode:'size' };

/* ==================== УТИЛИТЫ ==================== */
const fmt = n =&gt; (n === null || n === undefined || isNaN(n)) ? '—' : n.toLocaleString('ru-RU', {maximumFractionDigits: 2});
const fmtInt = n =&gt; (n === null || n === undefined || isNaN(n)) ? '—' : Math.round(n).toLocaleString('ru-RU');
const num = id =&gt; { const el = document.getElementById(id); if (!el) return 0; const v = parseFloat(el.value); return isNaN(v) ? 0 : v; };
const getMaterial = key =&gt; MATERIALS.find(m =&gt; m.key === key) || MATERIALS[0];

/* ==================== ОБЪЁМ ==================== */
function calcVolume() {
  const m = 0.001;
  switch (state.shape) {
    case 'plate': return num('plateT')*m * num('plateW')*m * num('plateL')*m;
    case 'sheet': return num('sheetT')*m * num('sheetW')*m * num('sheetL')*m;
    case 'bar': return num('barH')*m * num('barW')*m * num('barL')*m;
  }
  return 0;
}

/* ==================== РАСЧЁТ ==================== */
function calculate() {
  const m = getMaterial(state.material);
  let volume = 0, weightOne = 0;
  if (state.mode === 'size') { volume = calcVolume(); weightOne = volume * m.density; }
  else { weightOne = num('weightInput'); volume = weightOne / m.density; }

  const qty = Math.max(1, parseInt(num('qty')) || 1);
  const batchWeight = weightOne * qty;

  const priceOne = weightOne * m.price;
  const priceBatchVat = batchWeight * m.price * 1.2;

  document.getElementById('rPrice').textContent = fmtInt(priceOne);
  document.getElementById('rWeight').textContent = fmt(weightOne) + ' кг';
  document.getElementById('rPriceKg').textContent = fmtInt(m.price) + ' ₽';
  document.getElementById('rBatch').textContent = fmtInt(priceBatchVat) + ' ₽';
  document.getElementById('rBatchWeight').textContent = fmt(batchWeight) + ' кг';
  document.getElementById('rNote').textContent = `${m.name} · точность по ТУ · класс от Бр2 / С2 до Бр6`;

  const infoBox = document.getElementById('infoBox');
  if (batchWeight &lt; 100) {
    infoBox.innerHTML = `&lt;b&gt;Мин. партия:&lt;/b&gt; ${fmt(batchWeight)} кг. Расчёт по фактическому весу. Отгрузка 10–15 раб. дней.`;
  } else {
    infoBox.innerHTML = `&lt;b&gt;Партия:&lt;/b&gt; ${fmt(batchWeight)} кг. Отгрузка 10–15 раб. дней после предоплаты.`;
  }
  infoBox.classList.add('show');

  state.result = {
    material: m, shape: SHAPES[state.shape],
    mode: state.mode === 'size' ? 'По размерам' : 'По весу',
    volume, weightOne, qty, batchWeight, priceOne, priceBatchVat
  };
}

/* ==================== ФОРМЫ ==================== */
function setShape(shape) {
  state.shape = shape;
  document.querySelectorAll('.shape-btn').forEach(b =&gt; b.classList.toggle('active', b.dataset.shape === shape));
  document.querySelectorAll('.shape-fields').forEach(f =&gt; f.style.display = f.dataset.shape === shape ? 'block' : 'none');
  calculate();
}
function setMode(mode) {
  state.mode = mode;
  document.querySelectorAll('.mode-btn').forEach(b =&gt; b.classList.toggle('active', b.dataset.mode === mode));
  document.getElementById('sizeFields').style.display = mode === 'size' ? 'block' : 'none';
  document.getElementById('weightFields').style.display = mode === 'weight' ? 'block' : 'none';
  calculate();
}

/* ==================== СТРУКТУРА ЗАТРАТ ==================== */
function toggleCosts() {
  const btn = document.getElementById('costsToggle');
  const block = document.getElementById('costsBlock');
  btn.classList.toggle('open');
  block.classList.toggle('open');
}

/* ==================== СОБЫТИЯ ==================== */
document.querySelectorAll('.shape-btn').forEach(btn =&gt; btn.addEventListener('click', () =&gt; setShape(btn.dataset.shape)));
document.querySelectorAll('.mode-btn').forEach(btn =&gt; btn.addEventListener('click', () =&gt; setMode(btn.dataset.mode)));
document.getElementById('material').addEventListener('change', e =&gt; { state.material = e.target.value; calculate(); });
document.getElementById('qty').addEventListener('input', calculate);
['plateT','plateW','plateL','sheetT','sheetW','sheetL','barH','barW','barL','weightInput']
  .forEach(id =&gt; { const el = document.getElementById(id); if (el) el.addEventListener('input', calculate); });

/* ==================== СБРОС ==================== */
function resetAll() {
  document.getElementById('material').value = 'btvt450';
  state.material = 'btvt450';
  setShape('plate');
  setMode('size');
  document.getElementById('qty').value = 1;
  document.getElementById('plateT').value = 25;
  document.getElementById('plateW').value = 200;
  document.getElementById('plateL').value = 300;
  document.getElementById('sheetT').value = 6;
  document.getElementById('sheetW').value = 1500;
  document.getElementById('sheetL').value = 6000;
  document.getElementById('barH').value = 25;
  document.getElementById('barW').value = 200;
  document.getElementById('barL').value = 300;
  document.getElementById('weightInput').value = 25;
  calculate();
}

/* ==================== ЭКСПОРТ ==================== */
function downloadBlob(blob, filename) {
  const url = URL.createObjectURL(blob);
  const a = document.createElement('a');
  a.href = url; a.download = filename;
  document.body.appendChild(a); a.click(); a.remove();
  setTimeout(() =&gt; URL.revokeObjectURL(url), 500);
}
function today() { const d = new Date(), p = n =&gt; String(n).padStart(2,'0'); return `${d.getFullYear()}-${p(d.getMonth()+1)}-${p(d.getDate())}`; }

function buildRows() {
  const r = state.result;
  if (!r) return {header:[], body:[]};
  const header = ['Параметр','Значение'];
  const body = [
    ['Материал', r.material.name],
    ['Цена материала', r.material.price + ' ₽/кг'],
    ['Форма', r.shape],
    ['Способ расчёта', r.mode],
    ['Объём', r.volume.toFixed(6) + ' м³'],
    ['Вес детали', r.weightOne.toFixed(2) + ' кг'],
    ['Количество', r.qty + ' шт'],
    ['Вес партии', r.batchWeight.toFixed(2) + ' кг'],
    ['Цена за деталь с НДС', Math.round(r.priceOne) + ' ₽'],
    ['Цена за партию с НДС', Math.round(r.priceBatchVat) + ' ₽'],
    ['Точность', 'По ТУ'],
    ['Класс', 'от Бр2 / С2 до Бр6'],
    ['Сроки', '10–15 раб. дней']
  ];
  return {header, body};
}

function downloadCSV() {
  const {header, body} = buildRows();
  const esc = v =&gt; `"${String(v).replace(/"/g,'""')}"`;
  const csv = [header, ...body].map(r =&gt; r.map(esc).join(';')).join('\r\n');
  downloadBlob(new Blob(['\uFEFF' + csv], {type:'text/csv;charset=utf-8;'}), 'calc_arsenal_' + today() + '.csv');
}
function downloadExcel() {
  const {header, body} = buildRows();
  const esc = v =&gt; String(v ?? '').replace(/&amp;/g,'&amp;amp;').replace(/&lt;/g,'&amp;lt;').replace(/&gt;/g,'&amp;gt;');
  const table = `&lt;table border="1" cellspacing="0" cellpadding="4"&gt;
    &lt;thead style="background:#000;color:#ffd700;"&gt;&lt;tr&gt;${header.map(h=&gt;`&lt;th&gt;${esc(h)}&lt;/th&gt;`).join('')}&lt;/tr&gt;&lt;/thead&gt;
    &lt;tbody&gt;${body.map(r=&gt;`&lt;tr&gt;${r.map(c=&gt;`&lt;td&gt;${esc(c)}&lt;/td&gt;`).join('')}&lt;/tr&gt;`).join('')}&lt;/tbody&gt;&lt;/table&gt;`;
  const html = `&lt;html xmlns:x="urn:schemas-microsoft-com:office:excel"&gt;&lt;head&gt;&lt;meta charset="UTF-8"&gt;
    &lt;style&gt;td,th{font-family:Arial;font-size:12px;}&lt;/style&gt;&lt;/head&gt;
    &lt;body&gt;&lt;h2&gt;Расчёт — ${today()}&lt;/h2&gt;
    &lt;p&gt;ООО «Арсенал-Деталь» · 8 922 02-59-564&lt;/p&gt;
    &lt;p&gt;&lt;b&gt;Оборудование:&lt;/b&gt; Немецкая линия закалки и отпуска (12–50 мм, до 6000 мм) · Электропечной агрегат СНОА 33.18.5/10 (5–12 мм)&lt;/p&gt;
    &lt;p&gt;&lt;b&gt;Точность:&lt;/b&gt; по ТУ · &lt;b&gt;Класс:&lt;/b&gt; от Бр2 / С2 до Бр6&lt;/p&gt;
    ${table}
    &lt;p&gt;&lt;i&gt;Цены с НДС · Точность по ТУ&lt;/i&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;`;
  downloadBlob(new Blob(['\uFEFF' + html], {type:'application/vnd.ms-excel;charset=utf-8;'}), 'calc_arsenal_' + today() + '.xls');
}

/* ==================== СТАРТ ==================== */
calculate();
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</subtitle>
  <updated>2026-10-09T06:35:07Z</updated>
  <logo>https://irontub.ru/ssl/u/pic/4f/a3901e7f0711efa6f6c8a3da6ba1d7/-/g_ZFER2w6s8.jpg</logo>
  <author>
    <name>1154818</name>
    <uri>https://irontub.ru/</uri>
  </author>
</feed>
