/* Theme supplies popup-wrapper, popup-card, btn, proj_ord_btn, breadcrumbs,
   container/row/sector and section__title. Only comparison layout is added here. */
.fr-compare-popup *, .fr-compare-page *, .fr-compare-button {box-sizing:border-box}
.fr-compare-button,.fr-compare-action {display:flex; align-items:center; justify-content:center; gap:8px; color:#272727; border-color:#4c86a0}
.fr-compare-button--product {margin-top:3rem; font-size:1.6rem}
.fr-compare-button--card.btn--count {width:3.6rem; height:3.6rem; border-radius:3px}
.fr-compare-button.is-selected {background:#eaf2f6}
.fr-compare-button picture,.fr-compare-clear picture,.fr-compare-remove picture,.fr-compare-buy picture {display:flex; flex-shrink:0}
.fr-compare-button img,.fr-compare-popup img,.fr-compare-page img {display:block}
.product__card.fr-compare-card .product__card-prices {display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:1rem}
.product__card.fr-compare-card .product__card-left {max-width:none; padding:0}
.product__card.fr-compare-card .fr-compare-card__actions {display:flex; align-items:center; justify-content:flex-end; gap:1rem; max-width:none; padding:0; flex:none}
.fr-compare-button:focus-visible,.fr-compare-popup :focus-visible,.fr-compare-page :focus-visible {outline:2px solid #4c86a0; outline-offset:3px}
.fr-compare-popup button:disabled,.fr-compare-page button:disabled {opacity:.45; cursor:default}
.popup-wrapper.fr-compare-popup .popup-card:before {display:none}
.fr-compare-popup .fr-compare-popup__card {width:1100px; max-width:calc(100% - 40px); max-height:calc(100dvh - 40px); padding:40px 20px 36px; border:1px solid #ececec}
.fr-compare-content {display:flex; flex-direction:column; width:100%; max-height:calc(100dvh - 118px); min-height:0}
.fr-compare-popup .popup__close {right:20px; top:25px; width:44px; height:52px; display:flex; justify-content:center; align-items:center; padding:0; z-index:1}
.fr-compare-heading {display:flex; gap:40px; align-items:center; padding-right:50px; margin-bottom:20px; flex-shrink:0}
.fr-compare-heading .popup__title {font-size:40px; text-align:left; white-space:nowrap; margin:0; padding:0}
.fr-compare-category {font-size:32px; min-width:0}
.fr-compare-category select {font:inherit; max-width:100%; border:1px solid #ececec; background:#fff; color:inherit; padding:4px}
.fr-compare-controls {display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:32px; flex-shrink:0}
.fr-compare-tabs {display:flex}
.fr-compare-tabs .btn {min-height:48px; border:1px solid #ececec; padding:12px 24px; font-size:18px; color:#272727}
.fr-compare-tabs .btn+.btn {border-left:0}
.fr-compare-tabs .btn[aria-pressed=true] {background:#4c86a0; color:#fff; border-color:#4c86a0}
.fr-compare-clear.btn {display:flex; align-items:center; justify-content:center; gap:10px; border:1px solid #ececec; min-height:48px; padding:12px 24px; white-space:nowrap; font-size:18px}
.fr-compare-viewport {overflow:auto; overscroll-behavior:contain; width:100%; min-height:0; max-height:616px; border:1px solid #ececec; flex:1 1 auto}
.fr-compare-table {border-collapse:separate; border-spacing:0; table-layout:fixed; width:calc(var(--fr-compare-columns)*265px); min-width:100%; margin:0; font-size:18px; line-height:1.35; color:#272727}
.fr-compare-table th,.fr-compare-table td {vertical-align:top; text-align:left; padding:9px 24px; border:0; border-right:1px solid #ececec; border-bottom:1px solid #ececec; font-weight:400; width:265px; overflow-wrap:anywhere}
.fr-compare-table tr>:last-child {border-right:0}
.fr-compare-table tbody tr:last-child>* {border-bottom:0}
.fr-compare-table .fr-compare-values:nth-child(even)>* {background:#f5f5f5}
.fr-compare-table .fr-compare-values:nth-child(odd)>* {background:#fff}
.fr-compare-table .fr-compare-values>th {font-weight:700; position:sticky; left:0; z-index:1}
.fr-compare-table .fr-compare-corner {position:sticky; left:0; background:#fff; z-index:1}
.fr-compare-table th.fr-compare-product {position:relative; padding:24px; height:396px; background:#fff}
.fr-compare-product__image {display:flex; align-items:center; justify-content:center; height:210px; margin-bottom:10px}
.fr-compare-product__image img {width:auto; height:auto; max-width:100%; max-height:210px; object-fit:contain}
.fr-compare-product__name {display:block; font-size:18px; line-height:1.35; font-weight:700; text-transform:uppercase; margin-bottom:10px; min-height:73px; color:inherit}
.fr-compare-product__bottom {display:flex; justify-content:space-between; align-items:end; gap:10px}
.fr-compare-price-label {display:block; color:#676767; font-size:16px; margin-bottom:3px}
.fr-compare-price {font-weight:700}
.fr-compare-price ins {text-decoration:none; background:none}
.fr-compare-buy {display:flex; align-items:center; justify-content:center; width:40px; min-height:40px; flex-shrink:0}
.fr-compare-buy.loading {opacity:.45; pointer-events:none}
.fr-compare-remove {position:absolute; top:8px; right:8px; display:flex; align-items:center; justify-content:center; width:28px; height:28px; border:0; padding:0; background:transparent; cursor:pointer}
.fr-compare-scroll {display:grid; grid-template-columns:54px minmax(0,1fr) 54px; gap:35px; align-items:center; padding-top:20px; flex-shrink:0}
.fr-compare-scroll .btn {height:54px; display:flex; align-items:center; justify-content:center}
.fr-compare-scroll img {max-width:none}
.fr-compare-scroll input {appearance:none; width:100%; height:24px; margin:0; background:transparent; border:0; padding:0}
.fr-compare-scroll input::-webkit-slider-runnable-track {height:4px; background:#d4d4d4; border-radius:20px}
.fr-compare-scroll input::-webkit-slider-thumb {appearance:none; width:var(--fr-compare-thumb,80px); height:4px; background:#4c86a0; border-radius:20px; cursor:ew-resize}
.fr-compare-scroll input::-moz-range-track {height:4px; background:#d4d4d4; border-radius:20px}
.fr-compare-scroll input::-moz-range-thumb {width:var(--fr-compare-thumb,80px); height:4px; background:#4c86a0; border:0; border-radius:20px}
.fr-compare-message {padding:35px 20px; text-align:center; width:100%}
.fr-compare-message p {margin-bottom:20px}
.fr-compare-message .proj_ord_btn {max-width:320px; margin:20px auto 0}
.fr-compare-hint {padding:12px 0; font-size:14px; color:#676767}
.fr-compare-hint button {border:0; background:none; color:#4c86a0; text-decoration:underline; cursor:pointer}
.fr-compare-skeleton {height:220px; background:#f5f5f5}
.fr-compare-page {padding:70px 0 60px; min-height:360px}
.fr-compare-breadcrumbs {flex-wrap:wrap; margin-bottom:8px; justify-content:center}
.fr-compare-page__category {font-size:22px; font-weight:400; text-align:center; margin-bottom:25px}
.fr-compare-groups {display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px}
.fr-compare-group {background:#fff; border:1px solid #ececec; padding:24px 20px}
.fr-compare-group__name {font-size:20px; margin-bottom:16px}
.fr-compare-group__header {display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:30px}
.fr-compare-group .fr-compare-clear {border:0; min-height:24px; padding:0; font-size:14px; gap:5px}
.fr-compare-previews {display:flex; align-items:center; gap:10px; overflow-x:auto; margin-bottom:30px}
.fr-compare-previews a {display:flex; flex:0 0 80px; height:100px; align-items:center; justify-content:center}
.fr-compare-previews img {width:80px; height:90px; object-fit:contain}
.fr-compare-group .fr-compare-action {margin-top:0}
.fr-compare-toast {position:fixed; bottom:24px; left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); display:flex; align-items:center; gap:14px; padding:16px 42px 16px 20px; border:1px solid #ececec; background:#fff; z-index:111}
.fr-compare-toast[hidden],.fr-compare-toast [hidden] {display:none}
.fr-compare-toast>a {color:#4c86a0; text-decoration:underline; white-space:nowrap}
.fr-compare-toast>button {position:absolute; right:4px; top:4px; width:30px; height:30px; background:none; border:0; font-size:24px; padding:0; cursor:pointer}
@media (min-width:769px) and (max-width:1100px) {
    .fr-compare-heading {gap:24px}
    .fr-compare-heading .popup__title {font-size:32px}
    .fr-compare-category {font-size:24px}
}
@media (max-width:768px) {
    .fr-compare-button--card.btn--count {width:30px; height:30px}
    .fr-compare-button--card img {width:15px; height:15px}
    .product__card.fr-compare-card .product__card-prices {grid-template-columns:minmax(0,1fr); gap:4px}
    .product__card.fr-compare-card .fr-compare-card__actions {justify-content:flex-start; gap:5px}
    .fr-compare-page {padding:60px 0 50px}
    .fr-compare-breadcrumbs,.fr-compare-breadcrumbs .breadcrumbs__link,.fr-compare-breadcrumbs .breadcrumbs__separator {font-size:14px}
    .fr-compare-page__category {font-size:18px; margin-bottom:24px}
    .fr-compare-groups {display:block}
    .fr-compare-group {padding:20px; margin-bottom:20px}
    .fr-compare-group__header {margin-bottom:24px}
    .fr-compare-group .fr-compare-clear {font-size:12px}
    .fr-compare-previews {margin-bottom:24px}
    .fr-compare-previews a {flex-basis:70px}
    .fr-compare-previews img {width:70px}
    .fr-compare-controls {margin-bottom:24px; gap:10px}
    .fr-compare-checkbox {display:flex; align-items:center; gap:8px; font-size:14px; font-weight:400; cursor:pointer}
    .fr-compare-checkbox input {appearance:auto; accent-color:#4c86a0; width:14px; height:14px; padding:0; margin:0}
    .fr-compare-clear.btn {font-size:14px; border:0; min-height:24px; padding:0; gap:5px}
    .fr-compare-clear img {width:14px; height:14px}
    .fr-compare-viewport--mobile {--fr-column:calc((100vw - 20px)/2); max-height:none; min-height:0; border:0; overscroll-behavior-x:contain; overscroll-behavior-y:auto}
    .fr-compare-table {font-size:12px; width:calc(var(--fr-compare-columns)*var(--fr-column)); min-width:100%}
    .fr-compare-table th,.fr-compare-table td {width:var(--fr-column); padding:12px 10px; border-right:1px solid #ececec; border-bottom:1px solid #ececec}
    .fr-compare-table .fr-compare-values:nth-child(n)>* {background:#fff}
    .fr-compare-table th.fr-compare-product {padding:20px 12px 14px; height:252px; border-top:1px solid #ececec}
    .fr-compare-table .fr-compare-product:first-child,.fr-compare-table .fr-compare-values>td:first-child {border-left:1px solid #ececec}
    .fr-compare-table tr>:last-child {border-right:1px solid #ececec}
    .fr-compare-product__image {height:92px}
    .fr-compare-product__image img {max-height:92px}
    .fr-compare-product__name {font-size:14px; min-height:76px}
    .fr-compare-price-label {font-size:12px; margin-bottom:0}
    .fr-compare-price {font-size:14px}
    .fr-compare-buy {width:24px; min-height:24px}
    .fr-compare-buy img {width:24px; height:24px}
    .fr-compare-remove {top:2px; right:1px; width:26px; height:26px}
    .fr-compare-remove img {width:16px; height:16px}
    .fr-compare-table .fr-compare-row-label th {padding:0; background:#f5f5f5; border-left:0; border-right:0; border-bottom:0; font-weight:700}
    .fr-compare-row-label span {display:block; width:var(--fr-viewport,calc(100vw - 20px)); padding:12px; position:sticky; left:0}
    .fr-compare-toast {bottom:12px; font-size:14px; align-items:flex-start; flex-wrap:wrap; gap:8px}
}
