/* Factor Print — множинні розміри складного калькулятора; v2.48.14; CSS Snapshot 2026. */
/* Factor Print — автоматичне масштабування повної рулонної розкладки; остання зміна v2.47.1; CSS Snapshot 2026. */
/* Factor Print — повна розкладка рулону та керування переглядом. Версія останньої зміни: v2.47.1. CSS Snapshot 2026. */
/* Factor Print — групи розмірів рулонної розкладки, v2.47.1; CSS Snapshot 2026. */
/* Factor Print — розміри УФ-ДТФ та ширина полів; v2.47.1; CSS Snapshot 2026. */
/* Factor Print — публічні параметри та розкладка калькулятора.
 * Версія останньої зміни: 2.43.6. CSS Snapshot 2026. */
.fp-public-calc .form-label { color: var(--bs-body-color); }
.fp-public-calc .form-text { line-height: 1.4; }
.fp-calculation-preview { padding: 1rem; border: 1px solid var(--bs-border-color); border-radius: .75rem; background: var(--bs-tertiary-bg); }
.fp-preview-graphic { display:flex;justify-content:center;align-items:flex-start;max-height:none;overflow:hidden;text-align:center;overscroll-behavior:contain;border-radius:.55rem;min-width:0; }
.fp-preview-graphic.fp-preview-expanded { max-height:min(65vh,42rem);overflow:auto;justify-content:center; }
.fp-preview-graphic svg { display:block; width:100%; height:auto; max-width:100%; max-height:none; margin-inline:auto; overflow:visible; }
.fp-preview-controls {display:flex;gap:.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-block:.35rem .65rem}
.fp-preview-count{font-weight:650;font-size:.83rem;color:var(--bs-body-color)}
.fp-preview-scroll-note{font-size:.78rem;color:var(--bs-secondary-color);margin-block:.4rem 0}
.fp-preview-material { fill: var(--bs-body-bg); stroke: var(--bs-secondary-color); stroke-width: 1.5; }
.fp-preview-item { fill: var(--bs-primary-bg-subtle); stroke: var(--bs-primary); stroke-width: 1.3; }
.fp-preview-rotated { fill: var(--bs-info-bg-subtle); stroke: var(--bs-info); }
.fp-preview-sheet { max-width: 18rem; }
@media (max-width: 767.98px) { .fp-calculation-preview { padding: .7rem; } }

/* Factor Print — компактний публічний калькулятор; v2.43.6; CSS Snapshot 2026. */
.fp-public-calc--simple{--fp-public-accent:var(--bs-primary);background:var(--bs-body-bg);border:1px solid var(--bs-border-color)!important;border-radius:16px;box-shadow:0 4px 20px #102d4c0c}
.fp-public-calc--simple .card-body{padding:clamp(1rem,2.8vw,1.35rem)}
.fp-public-calc--simple .fp-calc-public-title{font-size:1.05rem;font-weight:750;color:var(--bs-body-color)}
.fp-public-calc--simple .fp-calc-public-fields{--bs-gutter-y:.85rem}
.fp-public-calc--simple .fp-calc-public-field label{font-size:.9rem;margin-block-end:.4rem}
.fp-public-calc--simple :is(input,select){min-height:43px;border-radius:10px}
.fp-public-calc--simple .fp-calc-public-help{font-size:.78rem;line-height:1.4;margin-block-start:.35rem}
.fp-public-calc--simple :is(input,select):focus-visible{outline:2px solid var(--fp-public-accent);outline-offset:2px}
@media(max-width:575.98px){.fp-public-calc--simple .card-body{padding:.95rem}}

/* Factor Print — ширина полів і динамічні розміри УФ-ДТФ, v2.47.1. CSS Snapshot 2026. */
@media (min-width: 768px) {
  .fp-calc-public-fields > .fp-calc-public-field.fp-calc-width-100{flex:0 0 auto;width:100%}
  .fp-calc-public-fields > .fp-calc-public-field.fp-calc-width-75{flex:0 0 auto;width:75%}
  .fp-calc-public-fields > .fp-calc-public-field.fp-calc-width-50{flex:0 0 auto;width:50%}
  .fp-calc-public-fields > .fp-calc-public-field.fp-calc-width-33{flex:0 0 auto;width:33.333333%}
  .fp-calc-public-fields > .fp-calc-public-field.fp-calc-width-25{flex:0 0 auto;width:25%}
}
@media(max-width:767.98px){.fp-calc-public-fields > .fp-calc-public-field[class*="fp-calc-width-"]{flex:0 0 auto;width:100%}}
.fp-uvdtf-size-list{display:grid;gap:.65rem;margin-block:.65rem}
.fp-uvdtf-size-row{min-inline-size:0;border:1px solid var(--bs-border-color);border-radius:12px;padding:.85rem;background:var(--bs-body-bg)}
.fp-uvdtf-size-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-block-end:.6rem}
.fp-uvdtf-size-title{float:none;width:auto;font-size:.95rem;font-weight:700;margin:0}
.fp-uvdtf-size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.fp-uvdtf-size-control{display:grid;gap:.35rem;font-size:.85rem;min-width:0}
.fp-uvdtf-size-control input{min-width:0;width:100%}
.fp-uvdtf-size-summary{margin-block:.65rem 0}
@media(max-width:575.98px){.fp-uvdtf-size-grid{grid-template-columns:1fr}}

/* Кожний розмір має власну палітру; поворот відрізняється штриховою рамкою, а не кольором. */
.fp-preview-size-legend{display:flex;flex-wrap:wrap;gap:.4rem .8rem;margin-block:.5rem .45rem}
.fp-preview-size-legend-item{display:flex;align-items:center;gap:.35rem;min-width:0;font-size:.79rem;color:var(--bs-body-color)}
.fp-preview-size-swatch{inline-size:1.15rem;block-size:1rem;flex:none;border:1.5px solid var(--fp-preview-stroke);background:var(--fp-preview-fill);border-radius:3px}
.fp-preview-orientation-note{font-size:.77rem;color:var(--bs-secondary-color);margin-block:.25rem .55rem}
.fp-preview-graphic .fp-preview-item[class*="fp-preview-size-"]{fill:var(--fp-preview-fill);stroke:var(--fp-preview-stroke);stroke-width:1.15}
.fp-preview-graphic .fp-preview-item.fp-preview-rotated[class*="fp-preview-size-"]{stroke-dasharray:3 2;stroke-width:1.7}
.fp-preview-group-number{fill:#17283e;font-weight:700;pointer-events:none}
.fp-preview-size-1{--fp-preview-fill:#a7d7f3;--fp-preview-stroke:#1d6c9e}
.fp-preview-size-2{--fp-preview-fill:#fbd4ad;--fp-preview-stroke:#945416}
.fp-preview-size-3{--fp-preview-fill:#bce5be;--fp-preview-stroke:#347b3b}
.fp-preview-size-4{--fp-preview-fill:#decaf4;--fp-preview-stroke:#71529b}
.fp-preview-size-5{--fp-preview-fill:#f6bad4;--fp-preview-stroke:#a3456e}
.fp-preview-size-6{--fp-preview-fill:#b7e4de;--fp-preview-stroke:#2d7970}
.fp-preview-size-7{--fp-preview-fill:#f2e5aa;--fp-preview-stroke:#8f7929}
.fp-preview-size-8{--fp-preview-fill:#d6dceb;--fp-preview-stroke:#566d9d}
.fp-preview-error{border:1px solid var(--bs-danger-border-subtle,#f1bfc5);padding:.65rem;border-radius:.5rem;color:var(--bs-danger-text-emphasis,#9c273a)}
@media(max-width:575.98px){.fp-preview-size-legend{display:grid;gap:.35rem}.fp-preview-graphic svg{max-width:100%}}

/* Factor Print — множинні розміри складного калькулятора, v2.48.14. CSS Snapshot 2026. */
.fp-complex-multi-list{display:grid;gap:.65rem;margin-block:.65rem}
.fp-complex-multi-row{min-inline-size:0;border:1px solid var(--bs-border-color);border-radius:12px;padding:.85rem;background:var(--bs-body-bg)}
.fp-complex-multi-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-block-end:.6rem}
.fp-complex-multi-title{float:none;width:auto;font-size:.95rem;font-weight:700;margin:0}
.fp-complex-multi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.fp-complex-multi-control{display:grid;gap:.35rem;font-size:.85rem;min-width:0}
.fp-complex-multi-control input{min-width:0;width:100%}
.fp-complex-multi-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-block-start:.7rem}
.fp-complex-multi-summary{margin:0}
@media(max-width:575.98px){.fp-complex-multi-grid{grid-template-columns:1fr}}

/* FPrint v2.70 — CSS Snapshot 2026: червоний фон та контрастні межі помилок калькулятора. */
.fp-product-calculator :is(.fp-calc-public-field,.fp-complex-multi-control,.fp-simple-size-field,.fp-uvdtf-size-control).has-error{background:#fff0f1!important;border-color:#cc3345!important;border-radius:10px;padding:.45rem;color:#872133}
.fp-product-calculator :is(input,select,textarea).is-invalid,
.fp-product-calculator :is(.fp-complex-multi-control,.fp-simple-size-field,.fp-uvdtf-size-control).has-error :is(input,select){background-color:#ffe1e5!important;border:2px solid #c6283e!important;color:#701629!important;box-shadow:0 0 0 2px rgb(198 40 62 / .11)!important}
.fp-product-calculator :is(.fp-complex-multi-row,.fp-uvdtf-size-row).has-error{border-color:#c6283e!important;background:#fff3f4!important}
.fp-product-calculator .fp-calc-public-field.has-error .fp-calculator-color-palette{border:2px solid #c6283e;border-radius:10px;background:#fff0f1}
.fp-product-calculator #productionQuoteError:not(.d-none){background:#ffe1e5!important;color:#872133!important;border:1px solid #c6283e!important;border-radius:10px;padding:.8rem 1rem}
