.sv-imp { font-family: Arial, Helvetica, sans-serif; color: #2c3e50; max-width: 1080px; margin: 0 auto; padding: 10px 14px 30px; box-sizing: border-box; }
  .sv-imp *, .sv-imp *:before, .sv-imp *:after { box-sizing: border-box; }

  .sv-imp__header { text-align: center; margin-bottom: 8px; }
  .sv-imp__title { font-size: 28px; font-weight: bold; color: #1F4E79; margin: 0 0 8px; line-height: 1.25; }
  .sv-imp__subtitle { font-size: 15px; color: #666; margin: 0 auto 14px; max-width: 820px; line-height: 1.5; }

  .sv-imp__notice { background: #fdf6e3; border: 1px solid #e8d9a8; border-left: 4px solid #d4a017; border-radius: 6px; padding: 12px 16px; font-size: 13.5px; line-height: 1.55; color: #5a4a12; margin-bottom: 18px; }
  .sv-imp__notice b { color: #4a3c0a; }

  .sv-imp__block { background: #fff; border: 1px solid #e0e6ea; border-radius: 8px; margin-bottom: 16px; overflow: hidden; }
  .sv-imp__block-head { background: #1F4E79; color: #fff; padding: 10px 16px; font-size: 15.5px; font-weight: bold; display: flex; align-items: center; gap: 8px; }
  .sv-imp__block-head .sv-imp__step { background: #46AFF1; color: #fff; border-radius: 50%; width: 24px; height: 24px; min-width: 24px; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; }
  .sv-imp__block-body { padding: 14px 16px 6px; }
  .sv-imp__block-note { font-size: 12.5px; color: #777; margin: -4px 0 12px; line-height: 1.5; }

  .sv-imp__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
  @media (max-width: 720px) { .sv-imp__grid { grid-template-columns: 1fr; } .sv-imp__title { font-size: 22px; } }

  .sv-imp__field { margin-bottom: 14px; }
  .sv-imp__label { display: flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: bold; color: #34495e; margin-bottom: 5px; line-height: 1.35; }
  .sv-imp__vat-tag { font-weight: normal; font-size: 11.5px; color: #fff; background: #8aa5b8; border-radius: 3px; padding: 1px 6px; white-space: nowrap; }
  .sv-imp__input-wrap { position: relative; display: flex; align-items: center; }
  .sv-imp__input { width: 100%; padding: 9px 52px 9px 12px; font-size: 15px; font-family: Arial, Helvetica, sans-serif; border: 1px solid #c8d4dc; border-radius: 6px; color: #2c3e50; background: #fbfdfe; outline: none; transition: border-color .15s; }
  .sv-imp__input:focus { border-color: #3498db; background: #fff; }
  .sv-imp__unit { position: absolute; right: 12px; font-size: 13px; color: #90a4ae; pointer-events: none; }

  .sv-imp__q { display: inline-flex; align-items: center; justify-content: center; width: 19px; height: 19px; min-width: 19px; border-radius: 50%; background: #46AFF1; color: #fff; font-size: 12px; font-weight: bold; cursor: pointer; user-select: none; border: none; padding: 0; line-height: 1; }
  .sv-imp__q:hover { background: #3498db; }
  .sv-imp__hint { display: none; background: #eef7fd; border: 1px solid #bfe0f5; border-radius: 6px; padding: 10px 12px; font-size: 12.5px; line-height: 1.55; color: #34495e; margin-top: 6px; }
  .sv-imp__hint.sv-open { display: block; }
  .sv-imp__hint b { color: #1F4E79; }
  .sv-imp__hint table { border-collapse: collapse; width: 100%; margin-top: 6px; font-size: 12px; }
  .sv-imp__hint td, .sv-imp__hint th { border: 1px solid #bfe0f5; padding: 4px 7px; text-align: left; }
  .sv-imp__hint th { background: #dff0fb; color: #1F4E79; }
  .sv-imp__hint td.sv-num { text-align: right; white-space: nowrap; }

  .sv-imp__calc-btn { display: block; width: 100%; max-width: 460px; margin: 6px auto 22px; background: #3498db; color: #fff; border: none; border-radius: 8px; padding: 15px 20px; font-size: 17px; font-weight: bold; cursor: pointer; font-family: Arial, Helvetica, sans-serif; transition: background .15s; }
  .sv-imp__calc-btn:hover { background: #2a80b9; }

  .sv-imp__results { display: none; }
  .sv-imp__results.sv-open { display: block; }

  .sv-imp__total-card { background: #eaf5fd; border: 2px solid #46AFF1; border-radius: 10px; padding: 20px 22px; text-align: center; margin-bottom: 14px; }
  .sv-imp__total-label { font-size: 14.5px; color: #34495e; margin-bottom: 6px; }
  .sv-imp__total-value { font-size: 34px; font-weight: bold; color: #1F4E79; line-height: 1.15; }
  .sv-imp__total-sub { font-size: 13px; color: #5d7a8f; margin-top: 8px; line-height: 1.5; }
  .sv-imp__coef { display: inline-block; background: #1F4E79; color: #fff; border-radius: 6px; padding: 4px 12px; font-size: 15px; font-weight: bold; margin-top: 10px; }

  .sv-imp__two-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
  @media (max-width: 720px) { .sv-imp__two-cards { grid-template-columns: 1fr; } .sv-imp__total-value { font-size: 27px; } }
  .sv-imp__mini-card { background: #f6fafc; border: 1px solid #d3e3ee; border-radius: 8px; padding: 14px 16px; }
  .sv-imp__mini-title { font-size: 13px; font-weight: bold; color: #1F4E79; margin-bottom: 6px; }
  .sv-imp__mini-value { font-size: 21px; font-weight: bold; color: #2c3e50; }
  .sv-imp__mini-note { font-size: 12px; color: #78909c; margin-top: 5px; line-height: 1.45; }

  .sv-imp__struct { background: #fff; border: 1px solid #e0e6ea; border-radius: 8px; padding: 16px; margin-bottom: 14px; }
  .sv-imp__struct-title { font-size: 15px; font-weight: bold; color: #1F4E79; margin: 0 0 12px; }
  .sv-imp__row { margin-bottom: 10px; }
  .sv-imp__row-top { display: flex; justify-content: space-between; font-size: 13px; margin-bottom: 4px; gap: 10px; }
  .sv-imp__row-name { color: #455a64; }
  .sv-imp__row-val { color: #1F4E79; font-weight: bold; white-space: nowrap; }
  .sv-imp__bar { height: 9px; background: #edf2f6; border-radius: 5px; overflow: hidden; }
  .sv-imp__bar-fill { height: 100%; border-radius: 5px; min-width: 2px; }

  .sv-imp__concl { background: #eaf5fd; border-left: 4px solid #3498db; border-radius: 6px; padding: 16px 18px; margin-bottom: 14px; }
  .sv-imp__concl-title { font-size: 15px; font-weight: bold; color: #1F4E79; margin: 0 0 10px; }
  .sv-imp__concl p { font-size: 13.5px; line-height: 1.6; margin: 0 0 9px; }
  .sv-imp__concl p:last-child { margin-bottom: 0; }
  .sv-imp__warn { background: #fdf0ef; border-left: 4px solid #e74c3c; border-radius: 6px; padding: 12px 16px; margin-bottom: 10px; font-size: 13.5px; line-height: 1.55; color: #7a2e26; }
  .sv-imp__ok { background: #eefaf1; border-left: 4px solid #27ae60; border-radius: 6px; padding: 12px 16px; margin-bottom: 10px; font-size: 13.5px; line-height: 1.55; color: #1e6b3a; }

  .sv-imp__excluded { background: #fff8ef; border: 2px solid #e67e22; border-radius: 8px; padding: 16px 18px; margin-bottom: 16px; font-size: 13.5px; line-height: 1.65; color: #4a3520; }
  .sv-imp__excluded-title { font-size: 15px; font-weight: bold; color: #b35309; margin: 0 0 8px; }
  .sv-imp__excluded b { color: #7a4409; }
  .sv-imp__excluded a { color: #3498db; font-weight: bold; }

  .sv-imp__seo { border-top: 1px solid #e0e6ea; margin-top: 26px; padding-top: 20px; font-size: 13.5px; line-height: 1.65; color: #455a64; }
  .sv-imp__seo h2 { font-size: 18px; color: #1F4E79; margin: 0 0 10px; }
  .sv-imp__seo h3 { font-size: 15px; color: #1F4E79; margin: 16px 0 7px; }
  .sv-imp__seo p { margin: 0 0 9px; }
  .sv-imp__seo a { color: #3498db; }

  .sv-imp__seo ol, .sv-imp__seo ul { margin: 0 0 12px; padding-left: 22px; }
  .sv-imp__seo li { margin-bottom: 5px; }
  .sv-imp__seo table { border-collapse: collapse; width: 100%; margin: 8px 0 14px; font-size: 13px; }
  .sv-imp__seo th, .sv-imp__seo td { border: 1px solid #d3e3ee; padding: 6px 9px; text-align: left; vertical-align: top; }
  .sv-imp__seo th { background: #eaf5fd; color: #1F4E79; }
  .sv-imp__seo td.sv-num { text-align: right; white-space: nowrap; }
  .sv-imp__formula { background: #f6fafc; border-left: 4px solid #46AFF1; border-radius: 6px; padding: 13px 16px; margin: 10px 0 14px; font-size: 13px; line-height: 1.8; color: #1F4E79; }

  .sv-imp__faq { margin: 4px 0 6px; }
  .sv-imp__faq details { border: 1px solid #e0e6ea; border-radius: 8px; margin-bottom: 8px; background: #fff; }
  .sv-imp__faq details[open] { border-color: #bfe0f5; }
  .sv-imp__faq summary { cursor: pointer; padding: 12px 42px 12px 16px; font-size: 14px; font-weight: bold; color: #1F4E79; line-height: 1.4; position: relative; list-style: none; }
  .sv-imp__faq summary::-webkit-details-marker { display: none; }
  .sv-imp__faq summary::marker { content: ''; }
  .sv-imp__faq summary:after { content: '+'; position: absolute; right: 16px; top: 10px; font-size: 20px; color: #46AFF1; line-height: 1.2; }
  .sv-imp__faq details[open] summary { background: #eaf5fd; border-radius: 7px 7px 0 0; }
  .sv-imp__faq details[open] summary:after { content: '\2212'; }
  .sv-imp__faq-h3 { margin: 0; font-size: inherit; font-weight: inherit; color: inherit; line-height: inherit; display: inline; }
  .sv-imp__faq-body { padding: 10px 16px 14px; font-size: 13.5px; line-height: 1.65; color: #455a64; }
  .sv-imp__faq-body p { margin: 0; }
  .sv-imp__cta { font-style: italic; background: #f4f9fd; border: 1px solid #cfe6f5; border-radius: 8px; padding: 16px 18px; margin-top: 20px; font-size: 14px; line-height: 1.65; color: #2c3e50; }
  .sv-imp__cta a { color: #3498db; font-weight: bold; }
