/* ANDPRO configurators: one shared component stylesheet. No application logic. */
/* Component: configurator-pc/index.php */
/* ANDPRO-UXGOV-R1-CONFIGURATORS-FIX1 */
.cfgpcb{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ap-c-commit:#ffc048;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#5c6b7a;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#8a5a12;--warnbg:#fbf3e6;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgpcb *{box-sizing:border-box}
.cfgpcb__head{margin:6px 0 16px}
.cfgpcb__title{font-size:clamp(20px,2.4vw,27px);font-weight:700;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgpcb__head p{font-size:14px;color:var(--mut);margin:0;max-width:780px}
.cfgpcb-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgpcb-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgpcb-note b{color:var(--ink)}
.cfgpcb-grid{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:22px;align-items:start;grid-template-areas:"build pick"}
.cfgpcb-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
#cfgpcbBuild{grid-area:build;position:sticky;top:14px}
#cfgpcbPick{grid-area:pick}
.cfgpcb-build__h,.cfgpcb-pick__h{font-size:15px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgpcb-slots{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}
.cfgpcb-slot{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;border:1.5px solid var(--line);border-radius:9px;padding:9px 11px;cursor:pointer;transition:border-color .15s,background .15s;background:#fbfcfe}
.cfgpcb-slot:hover{border-color:#c3c8e8}
.cfgpcb-slot[data-active="1"]{border-color:var(--b);background:var(--bs)}
.cfgpcb-slot[data-filled="1"]{background:#fff}
.cfgpcb-slot__ic{width:34px;height:34px;border-radius:7px;background:var(--bs);color:var(--b);display:flex;align-items:center;justify-content:center;flex:none}
.cfgpcb-slot__b{min-width:0}
.cfgpcb-slot__role{font-size:12px;font-weight:700;color:var(--mut2);text-transform:uppercase;letter-spacing:.02em}
.cfgpcb-slot__name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cfgpcb-slot__name.is-empty{color:var(--mut2);font-weight:500}
.cfgpcb-slot__price{font-size:12.5px;font-weight:700;color:var(--ink);white-space:nowrap}.cfgpcb-slot__foot{grid-column:2 / 4;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:7px;padding-top:8px;border-top:1px dashed var(--line)}.cfgpcb-slot__hint{font-size:12px;color:var(--mut2);min-width:0;flex:1 1 100%;white-space:normal;overflow-wrap:anywhere}.cfgpcb-qty{display:inline-flex;align-items:center;gap:8px;flex:none}.cfgpcb-qty button{width:46px;height:46px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:18px;font-weight:700;color:var(--b);cursor:pointer;line-height:1}.cfgpcb-qty button:disabled{opacity:.4;cursor:not-allowed}.cfgpcb-qty span{font-size:13px;font-weight:700;min-width:54px;text-align:center}
.cfgpcb-slot__x{border:0;background:none;color:var(--mut2);font-size:16px;line-height:1;cursor:pointer;min-width:46px;min-height:46px;padding:2px 4px}
.cfgpcb-slot__x:hover{color:#c0392b}
.cfgpcb-compat-facts{margin:0 0 14px;padding:12px;background:#f4f7fb;border:1px solid var(--line);border-radius:8px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.cfgpcb-compat-facts p{margin:6px 0 0}.cfgpcb-compat-facts a{color:var(--b);text-decoration:underline}
.cfgpcb-total{border-top:1px solid var(--line);padding-top:14px;font-size:14px;color:var(--ink)}
.cfgpcb-total b{font-size:18px;font-weight:800}
.cfgpcb-total #cfgpcbSumNote{font-size:12px;color:var(--mut2);font-weight:500}
.cfgpcb-total__service{font-size:12px;color:var(--mut2);line-height:1.45;margin-top:6px}
.cfgpcb-total__btns{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.cfgpcb-cart{font-family:inherit;background:var(--ap-c-commit);color:var(--ink);border:0;border-radius:8px;padding:11px;font-size:14px;font-weight:700;cursor:pointer;min-height:46px}
.cfgpcb-cart:hover:not(:disabled){background:var(--ap-c-commit);box-shadow:inset 0 0 0 1px rgba(44,58,71,.3)}
.cfgpcb-cart:disabled{background:#c3c8e8;cursor:not-allowed}
.cfgpcb-invoice{display:flex;align-items:center;justify-content:center;min-height:46px;text-align:center;font-size:13px;color:var(--b);text-decoration:underline;padding:8px 6px}
.cfgpcb-reset{font-family:inherit;margin-top:8px;background:none;border:0;color:var(--mut2);font-size:13px;font-weight:600;line-height:1.2;cursor:pointer;min-height:46px;padding:8px 0;text-decoration:underline;display:inline-flex;align-items:center;justify-content:center}
.cfgpcb-reset:hover{color:var(--b)}
.cfgpcb-pick__sub{font-size:13px;color:var(--mut);margin:0 0 12px}
.cfgpcb-pick__bar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.cfgpcb-chip{font-family:inherit;cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-size:14px;font-weight:500;color:#374957;transition:.15s;min-height:46px}
.cfgpcb-chip:hover{border-color:#c3c8e8}
.cfgpcb-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgpcb-cards{display:flex;flex-direction:column;gap:10px;max-height:600px;overflow:auto;padding-right:2px}
.cfgpcb-more{width:100%;min-height:46px;border:1px solid var(--b);border-radius:8px;background:var(--bs);color:var(--bd);font:inherit;font-weight:700;cursor:pointer}
.cfgpcb-prod{display:grid;grid-template-columns:50px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:11px;transition:border-color .15s}
.cfgpcb-prod:hover{border-color:#c3c8e8}
.cfgpcb-prod[data-selected="1"]{border-color:var(--b);background:var(--bs);box-shadow:inset 3px 0 0 var(--b)}
.cfgpcb-prod__img{width:50px;height:50px;border-radius:6px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden;flex:none}
.cfgpcb-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgpcb-prod__b{min-width:0}
.cfgpcb-prod__name{font-size:14px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgpcb-prod__name a{color:inherit;text-decoration:none}
.cfgpcb-prod__name a:hover{text-decoration:underline}
.cfgpcb-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgpcb-prod__warn{font-size:12px;color:var(--warn);background:var(--warnbg);border-radius:5px;padding:2px 7px;display:inline-block;margin-top:3px}
.cfgpcb-prod__r{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cfgpcb-prod__price{font-size:15px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgpcb-prod__pick{font-family:inherit;background:var(--bs);color:var(--b);border:1px solid #dfe3f1;border-radius:7px;padding:9px 15px;font-size:14px;font-weight:700;cursor:pointer;min-height:46px;white-space:nowrap}
.cfgpcb-prod__pick:hover{background:var(--bs);border-color:var(--b)}
.cfgpcb-stockbadge{font-size:12px;font-weight:700;color:#2e7c4f;background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgpcb-orderbadge{font-size:12px;font-weight:700;color:var(--warn);background:var(--warnbg);border-radius:5px;padding:2px 7px}
.cfgpcb-empty{text-align:center;padding:30px 16px;color:var(--mut)}
.cfgpcb-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgpcb-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:700;min-height:46px;text-decoration:none;margin-top:12px}
@media (max-width:900px){
  .cfgpcb-grid{grid-template-columns:1fr;grid-template-areas:"pick" "build";gap:16px}
  #cfgpcbBuild{position:static}
}
@media (max-width:560px){.cfgpcb-panel{padding:16px}}
@media (max-width:480px){
  .cfgpcb-prod{grid-template-columns:42px 1fr;grid-template-areas:"img b" "r r";row-gap:9px}
  .cfgpcb-prod__img{grid-area:img;width:42px;height:42px}.cfgpcb-prod__b{grid-area:b}
  .cfgpcb-prod__r{grid-area:r;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-top:1px dashed var(--line);padding-top:9px}
}
section[aria-label="Частые вопросы"] summary:focus-visible{outline:3px solid #0b70e0;outline-offset:3px}

/* Component: configurator-server/index.php */
/* ANDPRO-UXGOV-R1-CONFIGURATORS-FIX1 */
.cfgsrv{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ap-c-commit:#ffc048;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#5c6b7a;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--warnbg:#fbf3e6;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgsrv *{box-sizing:border-box}
.cfgsrv__head{margin:6px 0 16px}
.cfgsrv__title{font-size:clamp(20px,2.4vw,27px);font-weight:700;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgsrv__head p{font-size:14px;color:var(--mut);margin:0;max-width:820px}
.cfgsrv-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgsrv-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgsrv-note b{color:var(--ink)}
.cfgsrv-grid{display:grid;grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:22px;align-items:start;grid-template-areas:"build pick"}
.cfgsrv-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
#cfgsrvBuild{grid-area:build;position:sticky;top:14px}
#cfgsrvPick{grid-area:pick}
.cfgsrv-build__h,.cfgsrv-pick__h{font-size:15px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgsrv-slots{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}
.cfgsrv-slot{border:1.5px solid var(--line);border-radius:9px;padding:9px 11px;background:#fbfcfe;transition:border-color .15s,background .15s}
.cfgsrv-slot[data-active="1"]{border-color:var(--b);background:var(--bs)}
.cfgsrv-slot[data-filled="1"]{background:#fff}
.cfgsrv-slot[data-dis="1"]{opacity:.5;pointer-events:none}
.cfgsrv-slot__top{display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;cursor:pointer}
.cfgsrv-slot__ic{width:30px;height:30px;border-radius:7px;background:var(--bs);color:var(--b);display:flex;align-items:center;justify-content:center;flex:none}
.cfgsrv-slot__b{min-width:0}
.cfgsrv-slot__role{font-size:12px;font-weight:700;color:var(--mut2);text-transform:uppercase;letter-spacing:.02em}
.cfgsrv-slot__name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cfgsrv-slot__name.is-empty{color:var(--mut2);font-weight:500}
.cfgsrv-slot__price{font-size:12.5px;font-weight:700;color:var(--ink);white-space:nowrap;text-align:right}
.cfgsrv-slot__foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}
.cfgsrv-qty{display:inline-flex;align-items:center;gap:8px}
.cfgsrv-qty button{width:46px;height:46px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:18px;font-weight:700;color:var(--b);cursor:pointer;line-height:1}
.cfgsrv-qty button:disabled{opacity:.4;cursor:not-allowed}
.cfgsrv-qty span{font-size:13px;font-weight:700;min-width:54px;text-align:center}
.cfgsrv-slot__x{border:0;background:none;color:var(--mut2);font-size:16px;line-height:1;cursor:pointer;min-width:46px;min-height:46px;padding:2px 4px}
.cfgsrv-slot__x:hover{color:#c0392b}
.cfgsrv-slot__hint{font-size:12px;color:var(--mut2)}
.cfgsrv-slot__warn{font-size:12px;color:var(--warn);background:var(--warnbg);border-radius:5px;padding:2px 7px;margin-top:6px;display:inline-block}
.cfgsrv-compat-facts{margin:0 0 14px;padding:12px;background:#f4f7fb;border:1px solid var(--line);border-radius:8px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.cfgsrv-compat-facts p{margin:6px 0 0}.cfgsrv-compat-facts a{text-decoration:underline}.cfgsrv-compat-facts .is-risk{color:#8b290e;font-weight:600}
.cfgsrv-total{border-top:1px solid var(--line);padding-top:14px;font-size:14px;color:var(--ink)}
.cfgsrv-total b{font-size:18px;font-weight:800}
.cfgsrv-total #cfgsrvSumNote{font-size:12px;color:var(--mut2);font-weight:500}
.cfgsrv-total__service{font-size:12px;color:var(--mut2);line-height:1.45;margin-top:6px}
.cfgsrv-cta{font-family:inherit;margin-top:12px;width:100%;background:var(--ap-c-commit);color:var(--ink);border:0;border-radius:8px;padding:12px;font-size:14px;font-weight:700;cursor:pointer;min-height:46px}
.cfgsrv-cta:hover{background:var(--ap-c-commit);box-shadow:inset 0 0 0 1px rgba(44,58,71,.3)}
.cfgsrv-reset{font-family:inherit;margin-top:8px;background:none;border:0;color:var(--mut2);font-size:13px;font-weight:600;line-height:1.2;cursor:pointer;min-height:46px;padding:8px 0;text-decoration:underline;display:inline-flex;align-items:center;justify-content:center}
.cfgsrv-reset:hover{color:var(--b)}
.cfgsrv-pick__sub{font-size:13px;color:var(--mut);margin:0 0 12px}
.cfgsrv-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.cfgsrv-filters select{font-family:inherit;font-size:14px;border:1px solid var(--line);border-radius:7px;padding:9px 10px;color:var(--ink);background:#fff;min-height:46px}
.cfgsrv-pick__bar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.cfgsrv-brand-filter{display:grid;gap:5px;width:100%;max-width:320px;min-width:0;font-size:12px;font-weight:600;color:var(--mut)}
.cfgsrv-brand-filter select{box-sizing:border-box;width:100%;min-width:0;min-height:46px;font:inherit;font-size:14px;font-weight:400;border:1px solid var(--line);border-radius:7px;padding:9px 10px;color:var(--ink);background:#fff}
.cfgsrv-pick__bar-title{flex:0 0 100%;font-size:12px;font-weight:700;color:var(--mut);margin:0 0 2px}
.cfgsrv-chip{font-family:inherit;cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-size:14px;font-weight:500;color:#374957;transition:.15s;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.cfgsrv-chip:hover{border-color:#c3c8e8}
.cfgsrv-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgsrv-chip__count{font-size:12px;font-weight:700;color:var(--mut);background:#f2f5f8;border-radius:999px;min-width:22px;height:22px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center}
.cfgsrv-chip[aria-pressed="true"] .cfgsrv-chip__count{background:#fff;color:var(--b)}
.cfgsrv-cards{display:flex;flex-direction:column;gap:10px;max-height:620px;overflow:auto;padding-right:2px}
.cfgsrv-more{width:100%;min-height:46px;border:1px solid var(--b);border-radius:8px;background:var(--bs);color:var(--bd);font:inherit;font-weight:700;cursor:pointer}
.cfgsrv-prod{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:11px;transition:border-color .15s}
.cfgsrv-prod:hover{border-color:#c3c8e8}
.cfgsrv-prod[data-selected="1"]{border-color:var(--b);background:var(--bs);box-shadow:inset 3px 0 0 var(--b)}
.cfgsrv-prod__img{width:52px;height:52px;border-radius:6px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden;flex:none}
.cfgsrv-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgsrv-prod__bd{min-width:0}
.cfgsrv-prod__name{font-size:14px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgsrv-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgsrv-prod__uc{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px}
.cfgsrv-tag{font-size:12px;font-weight:600;color:var(--b);background:var(--bs);border-radius:5px;padding:2px 7px}
.cfgsrv-prod__stockline{margin-top:4px}
.cfgsrv-prod__r{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cfgsrv-prod__price{font-size:15px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgsrv-prod__price.is-request{font-size:12px;color:var(--mut)}
.cfgsrv-prod__pick{font-family:inherit;background:var(--bs);color:var(--b);border:1px solid #dfe3f1;border-radius:7px;padding:9px 15px;font-size:14px;font-weight:700;cursor:pointer;min-height:46px;white-space:nowrap}
.cfgsrv-prod__pick:hover{background:var(--bs);border-color:var(--b)}
.cfgsrv-stockbadge{font-size:12px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgsrv-orderbadge{font-size:12px;font-weight:700;color:var(--warn);background:var(--warnbg);border-radius:5px;padding:2px 7px}
.cfgsrv-empty{text-align:center;padding:30px 16px;color:var(--mut)}
.cfgsrv-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgsrv-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:10px 18px;font-size:13.5px;font-weight:700;min-height:46px;text-decoration:none;margin-top:12px}
@media (max-width:900px){.cfgsrv-grid{grid-template-columns:1fr;grid-template-areas:"pick" "build";gap:16px}#cfgsrvBuild{position:static}}
@media (max-width:560px){.cfgsrv-panel{padding:16px}}
@media (max-width:480px){
  .cfgsrv-prod{grid-template-columns:42px 1fr;grid-template-areas:"img bd" "r r";row-gap:9px}
  .cfgsrv-prod__img{grid-area:img;width:42px;height:42px}.cfgsrv-prod__bd{grid-area:bd}
  .cfgsrv-prod__r{grid-area:r;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-top:1px dashed var(--line);padding-top:9px}
}

/* ANDPRO-G26-C-SERVER-SPECIFICITY-CORRECTION-V1 */
html.ap-attention-v1 .cfgsrv .cfgsrv-cta,
html.ap-attention-v1 .cfgsrv .cfgsrv-prod__pick,
html.ap-attention-v1 .cfgsrv .cfgsrv-chip,
html.ap-attention-v1 .cfgsrv .cfgsrv-qty button{min-height:46px}
/* /ANDPRO-G26-C-SERVER-SPECIFICITY-CORRECTION-V1 */

/* ANDPRO-SERVER-CARD-HITAREA-20261028: three children require three desktop columns. */
html body main .cfgsrv .cfgsrv-prod{grid-template-columns:66px minmax(0,1fr) auto!important}
@media(max-width:480px){
 html body main .cfgsrv .cfgsrv-prod{grid-template-columns:66px minmax(0,1fr)!important}
 html body main .cfgsrv .cfgsrv-prod__r{grid-column:1/-1;width:100%;min-width:0}
}

/* Component: configurator-disks/index.php */

.cfgdsk{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgdsk *{box-sizing:border-box}
.cfgdsk__head{margin:6px 0 16px}
.cfgdsk__head .cfgdsk__title{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgdsk__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgdsk-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgdsk-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgdsk-note b{color:var(--ink)}
.cfgdsk-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgdsk-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgdsk-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgdsk-step:first-child{padding-top:0}
.cfgdsk-step:last-child{border-bottom:0;padding-bottom:0}
.cfgdsk-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgdsk-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgdsk-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgdsk-dev{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.cfgdsk-dev__btn{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:8px;padding:16px 10px;font-size:13.5px;font-weight:600;color:var(--ink);transition:border-color .15s,background .15s;min-height:96px;justify-content:center}
.cfgdsk-dev__btn small{font-weight:500;color:var(--mut2);font-size:11.5px}
.cfgdsk-dev__btn:hover{border-color:#c3c8e8}
.cfgdsk-dev__btn[aria-pressed="true"]{border-color:var(--b);background:var(--bs)}
.cfgdsk-dev__btn svg{color:var(--b)}
.cfgdsk-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgdsk-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px}
.cfgdsk-chip:hover{border-color:#c3c8e8}
.cfgdsk-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgdsk-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;min-height:44px;padding:8px 0}
.cfgdsk-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgdsk-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgdsk-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgdsk-toggle input:checked + .cfgdsk-toggle__track{background:var(--ok)}
.cfgdsk-toggle input:checked + .cfgdsk-toggle__track::after{transform:translateX(18px)}
.cfgdsk-toggle input:focus-visible + .cfgdsk-toggle__track{outline:2px solid var(--b);outline-offset:2px}
.cfgdsk-reset{margin-top:14px;background:none;border:0;color:var(--mut2);font-size:12.5px;cursor:pointer;padding:0 4px;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-family:inherit}
.cfgdsk-reset:hover{color:var(--b)}.cfgdsk-reset:focus-visible{outline:2px solid var(--b);outline-offset:2px;border-radius:8px}
.cfgdsk-reshead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 14px;flex-wrap:wrap}
.cfgdsk-rescount{font-size:15px;font-weight:800;color:var(--ink)}
.cfgdsk-rescount b{color:var(--b)}
.cfgdsk-ressort{font-size:12.5px;color:var(--mut2)}
.cfgdsk-ressort select{font-family:inherit;font-size:13px;border:1px solid var(--line);border-radius:6px;padding:9px 10px;color:var(--ink);background:#fff;min-height:44px}
.cfgdsk-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.cfgdsk-summary .cfgdsk-chip{cursor:default;background:var(--bs);border-color:transparent;color:var(--b);font-weight:600;font-size:12px;padding:5px 11px;min-height:0}
.cfgdsk-cards{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto;padding-right:2px}
.cfgdsk-prod{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;transition:border-color .15s}
.cfgdsk-prod:hover{border-color:#c3c8e8}
.cfgdsk-prod__img{width:54px;height:54px;border-radius:6px;background:linear-gradient(150deg,#eef2fb,#dbe2f0);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden}
.cfgdsk-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgdsk-prod__body{min-width:0}
.cfgdsk-prod__name{font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgdsk-prod__name a{color:inherit;text-decoration:none}
.cfgdsk-prod__name a:hover{color:var(--b)}
.cfgdsk-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgdsk-prod__meta{display:flex;align-items:center;gap:8px;margin-top:5px}
.cfgdsk-stock{font-size:11px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgdsk-order{font-size:11px;font-weight:700;color:var(--warn);background:#fbf3e6;border-radius:5px;padding:2px 7px}
.cfgdsk-prod__right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.cfgdsk-prod__price{font-size:16px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgdsk-prod__buy{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--b);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;white-space:nowrap;text-decoration:none}
.cfgdsk-prod__buy:hover{background:var(--bd)}
.cfgdsk-prod__invoice{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;color:var(--b);cursor:pointer;background:none;border:0;padding:0 2px;text-decoration:underline}
.cfgdsk-empty{text-align:center;padding:34px 16px;color:var(--mut)}
.cfgdsk-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgdsk-empty p{font-size:13px;margin:0 0 16px}
.cfgdsk-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:700;min-height:44px;text-decoration:none}
.cfgdsk-empty .cta:hover{background:var(--bd)}
.cfgdsk-mbar{display:none}
@media (max-width:920px){
  .cfgdsk-grid{grid-template-columns:1fr;gap:16px}
  .cfgdsk-mbar{display:flex;position:sticky;top:0;z-index:5;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--sh);padding:10px 14px;margin:0 0 14px}
  .cfgdsk-mbar b{color:var(--b)}
  .cfgdsk-mbar a{font-size:13px;font-weight:700;color:var(--b);text-decoration:none}
}
@media (max-width:560px){.cfgdsk-panel{padding:16px}}
@media (max-width:480px){
  .cfgdsk-dev{grid-template-columns:1fr}
  .cfgdsk-prod{grid-template-columns:44px 1fr;grid-template-areas:"img body" "right right";row-gap:10px}
  .cfgdsk-prod__img{grid-area:img;width:44px;height:44px}
  .cfgdsk-prod__body{grid-area:body}
  .cfgdsk-prod__right{grid-area:right;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-top:1px dashed var(--line);padding-top:10px}
}

/* Component: configurator-ups/index.php */

.cfgups{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgups *{box-sizing:border-box}
.cfgups__head{margin:6px 0 16px}
.cfgups__head .cfgups__title{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgups__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgups-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgups-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgups-note b{color:var(--ink)}
.cfgups-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgups-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgups-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgups-step:first-child{padding-top:0}
.cfgups-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgups-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgups-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgups-load{display:flex;align-items:center;gap:8px;max-width:260px}
.cfgups-load input{width:100%;border:1.5px solid var(--line);border-radius:8px;padding:11px 13px;font-size:18px;font-weight:700;font-family:inherit;color:var(--ink)}
.cfgups-load input:focus{outline:2px solid var(--b);outline-offset:1px;border-color:var(--b)}
.cfgups-load__u{font-size:14px;font-weight:700;color:var(--mut2)}
.cfgups-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.cfgups-presets button{cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:600;color:var(--ink);min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgups-presets button:focus-visible{outline:2px solid var(--b);outline-offset:2px}
.cfgups-presets button:hover{border-color:var(--b);color:var(--b)}
.cfgups-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgups-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;color:#374957;min-height:44px;display:inline-flex;align-items:center;justify-content:center;transition:.15s}
.cfgups-chip:focus-visible{outline:2px solid var(--b);outline-offset:2px}
.cfgups-chip:hover{border-color:#c3c8e8}
.cfgups-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgups-hint2{font-size:12px;color:var(--mut2);margin:8px 0 0}
.cfgups-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;min-height:44px;padding:8px 0}
.cfgups-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgups-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgups-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgups-toggle input:checked + .cfgups-toggle__track{background:var(--ok)}
.cfgups-toggle input:checked + .cfgups-toggle__track::after{transform:translateX(18px)}
.cfgups-reset{font-family:inherit;margin-top:14px;background:none;border:0;color:var(--mut2);font-size:12.5px;font-weight:600;cursor:pointer;padding:8px 0;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgups-reset:hover{color:var(--b)}
.cfgups-reset:focus-visible{outline:2px solid var(--b);outline-offset:2px;border-radius:6px}
.cfgups-rec{margin-top:16px;background:var(--bs);border:1px solid #cdd3f3;border-radius:10px;padding:14px 16px}
.cfgups-rec__big{font-size:26px;font-weight:800;color:var(--b);line-height:1}
.cfgups-rec__txt{font-size:12.5px;color:var(--mut);margin-top:6px}
.cfgups-rec__txt b{color:var(--ink)}
.cfgups-reshead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 14px;flex-wrap:wrap}
.cfgups-rescount{font-size:15px;font-weight:800;color:var(--ink)}
.cfgups-rescount b{color:var(--b)}
.cfgups-ressort{font-size:12.5px;color:var(--mut2)}
.cfgups-ressort select{font-family:inherit;font-size:13px;border:1px solid var(--line);border-radius:6px;padding:9px 10px;color:var(--ink);background:#fff;min-height:44px}
.cfgups-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.cfgups-summary .cfgups-chip{cursor:default;background:var(--bs);border-color:transparent;color:var(--b);font-weight:600;font-size:12px;padding:5px 11px;min-height:0}
.cfgups-cards{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto;padding-right:2px}
.cfgups-prod{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px}
.cfgups-prod:hover{border-color:#c3c8e8}
.cfgups-prod__img{width:54px;height:54px;border-radius:6px;background:linear-gradient(150deg,#eef2fb,#dbe2f0);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden}
.cfgups-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgups-prod__body{min-width:0}
.cfgups-prod__name{font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgups-prod__name a{color:inherit;text-decoration:none}
.cfgups-prod__name a:hover{color:var(--b)}
.cfgups-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgups-prod__meta{display:flex;align-items:center;gap:8px;margin-top:5px;flex-wrap:wrap}
.cfgups-stock{font-size:11px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgups-order{font-size:11px;font-weight:700;color:var(--warn);background:#fbf3e6;border-radius:5px;padding:2px 7px}
.cfgups-reserve{font-size:11px;font-weight:700;color:var(--b);background:var(--bs);border-radius:5px;padding:2px 7px}
.cfgups-prod__right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.cfgups-prod__price{font-size:16px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgups-prod__buy{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--b);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;white-space:nowrap;text-decoration:none}
.cfgups-prod__buy:hover{background:var(--bd)}
.cfgups-prod__invoice{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;color:var(--b);cursor:pointer;background:none;border:0;padding:0 2px;text-decoration:underline}
.cfgups-empty{text-align:center;padding:34px 16px;color:var(--mut)}
.cfgups-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgups-empty p{font-size:13px;margin:0 0 16px}
.cfgups-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:700;min-height:44px;text-decoration:none}
.cfgups-empty .cta:hover{background:var(--bd)}
.cfgups-mbar{display:none}
@media (max-width:920px){
  .cfgups-grid{grid-template-columns:1fr;gap:16px}
  .cfgups-mbar{display:flex;position:sticky;top:0;z-index:5;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--sh);padding:10px 14px;margin:0 0 14px}
  .cfgups-mbar b{color:var(--b)}
  .cfgups-mbar a{font-size:13px;font-weight:700;color:var(--b);text-decoration:none}
}
@media (max-width:560px){.cfgups-panel{padding:16px}}
@media (max-width:480px){
  .cfgups-prod{grid-template-columns:44px 1fr;grid-template-areas:"img body" "right right";row-gap:10px}
  .cfgups-prod__img{grid-area:img;width:44px;height:44px}
  .cfgups-prod__body{grid-area:body}
  .cfgups-prod__right{grid-area:right;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-top:1px dashed var(--line);padding-top:10px}
}

/* Component: configurator-raid/index.php */

.cfgraid{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgraid *{box-sizing:border-box}
.cfgraid__head{margin:6px 0 16px}
.cfgraid__head h1{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgraid__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgraid-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgraid-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgraid-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgraid-step:first-child{padding-top:0}
.cfgraid-step:last-child{border-bottom:0;padding-bottom:0}
.cfgraid-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgraid-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgraid-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgraid-levels{display:flex;flex-wrap:wrap;gap:8px}
.cfgraid-lvl{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:9px;padding:9px 13px;font-size:13.5px;font-weight:700;color:#374957;transition:.15s;min-height:40px}
.cfgraid-lvl:hover{border-color:#c3c8e8}
.cfgraid-lvl[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b)}
.cfgraid-leveldesc{font-size:12.5px;color:var(--mut);margin:12px 0 0;min-height:18px}
.cfgraid-num{display:inline-flex;align-items:center;gap:0;border:1.5px solid var(--line);border-radius:9px;overflow:hidden}
.cfgraid-num__btn{width:42px;height:44px;border:0;background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer}
.cfgraid-num__btn:hover{background:var(--bs)}
.cfgraid-num input{width:72px;height:44px;border:0;border-left:1.5px solid var(--line);border-right:1.5px solid var(--line);text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgraid-groups{margin-top:12px;font-size:13px;color:var(--ink)}
.cfgraid-groups input{width:72px;height:38px;border:1.5px solid var(--line);border-radius:8px;text-align:center;font-size:15px;font-weight:700;margin-left:8px;font-family:inherit}
.cfgraid-tabs{display:flex;gap:8px;margin:0 0 12px}
.cfgraid-tab{flex:1;cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:8px;padding:9px;font-size:13px;font-weight:600;color:var(--mut);transition:.15s;font-family:inherit}
.cfgraid-tab[aria-selected="true"]{border-color:var(--b);background:var(--bs);color:var(--b)}
.cfgraid-cap{display:flex;gap:8px}
.cfgraid-cap input{flex:1;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 12px;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit;min-width:0}
.cfgraid-cap select,.cfgraid-tabpane select{height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
#cfgraidDiskSel{width:100%}
.cfgraid-disknote{font-size:12.5px;color:var(--mut);margin-top:10px}
.cfgraid-disknote a{color:var(--b)}
.cfgraid-result{display:flex;flex-direction:column;gap:0}
.cfgraid-hero{text-align:center;padding:6px 0 18px;border-bottom:1px solid var(--line);margin-bottom:16px}
.cfgraid-hero__cap{font-size:clamp(30px,6vw,44px);font-weight:800;color:var(--b);line-height:1}
.cfgraid-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgraid-hero__tib{font-size:12.5px;color:var(--mut2);margin-top:3px}
.cfgraid-rows{display:flex;flex-direction:column;gap:0}
.cfgraid-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgraid-row:last-child{border-bottom:0}
.cfgraid-row__k{color:var(--mut)}
.cfgraid-row__v{font-weight:700;color:var(--ink);text-align:right}
.cfgraid-bar{height:9px;border-radius:6px;background:#eef1f6;overflow:hidden;margin:2px 0 16px}
.cfgraid-bar__fill{height:100%;background:linear-gradient(90deg,var(--b),#7b82e0);border-radius:6px;transition:width .25s}
.cfgraid-tol{color:var(--ok);font-weight:700}
.cfgraid-tol--zero{color:var(--warn)}
.cfgraid-err{display:flex;gap:10px;align-items:flex-start;background:#fdecea;border:1px solid #f5c6cf;border-radius:8px;padding:12px 14px;font-size:13px;color:var(--err);font-weight:600}
.cfgraid-buy{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}
.cfgraid-buy__sum{font-size:13.5px;color:var(--ink);margin:0 0 10px}
.cfgraid-buy__sum b{font-size:16px;color:var(--b)}
.cfgraid-buy__btn{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:700;cursor:pointer;min-height:44px;text-decoration:none}
.cfgraid-buy__btn:hover{background:var(--bd)}
.cfgraid-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgraid-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgraid-note b{color:var(--ink)}.cfgraid-note a{color:var(--b)}
@media (max-width:920px){.cfgraid-grid{grid-template-columns:1fr;gap:16px}}
@media (max-width:560px){.cfgraid-panel{padding:16px}}

/* Component: configurator-power/index.php */

.cfgpwr{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#5c6b7a;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgpwr *{box-sizing:border-box}
.cfgpwr__head{margin:6px 0 16px}
.cfgpwr__head h1{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgpwr__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgpwr-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgpwr-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgpwr-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgpwr-step:first-child{padding-top:0}
.cfgpwr-step:last-child{border-bottom:0;padding-bottom:0}
.cfgpwr-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgpwr-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgpwr-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgpwr-presets{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.cfgpwr-preset{cursor:pointer;border:1px dashed #c3c8e8;background:#fbfcfe;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600;color:var(--b);font-family:inherit;min-height:44px}
.cfgpwr-preset:hover{background:var(--bs)}
.cfgpwr-rows{display:flex;flex-direction:column;gap:8px}
.cfgpwr-row{display:grid;grid-template-columns:1fr 64px 78px 44px;gap:8px;align-items:center}
.cfgpwr-row input,.cfgpwr-row select{height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:13.5px;color:var(--ink);font-family:inherit;min-width:0;background:#fff}
.cfgpwr-row .cfgpwr-row__qty,.cfgpwr-row .cfgpwr-row__w{text-align:center;font-weight:700}
.cfgpwr-row__del{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;border:0;background:none;color:var(--mut2);font-size:20px;cursor:pointer;line-height:1}
.cfgpwr-row__del:hover{color:var(--err)}
.cfgpwr-row__unit{font-size:11px;color:var(--mut2);text-align:center}
.cfgpwr-addrow{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:10px;background:none;border:0;color:var(--b);font-size:13px;font-weight:700;cursor:pointer;padding:0 4px}
.cfgpwr-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.cfgpwr-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px;font-family:inherit}
.cfgpwr-chip:hover{border-color:#c3c8e8}
.cfgpwr-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgpwr-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--ink);user-select:none;margin-top:12px;min-height:44px;padding:8px 0}
.cfgpwr-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgpwr-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgpwr-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgpwr-toggle input:checked + .cfgpwr-toggle__track{background:var(--ok)}
.cfgpwr-toggle input:checked + .cfgpwr-toggle__track::after{transform:translateX(18px)}
.cfgpwr-hero{text-align:center;padding:6px 0 18px;border-bottom:1px solid var(--line);margin-bottom:16px}
.cfgpwr-hero__v{font-size:clamp(30px,6vw,44px);font-weight:800;color:var(--b);line-height:1}
.cfgpwr-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgpwr-rowsout{display:flex;flex-direction:column}
.cfgpwr-r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgpwr-r:last-child{border-bottom:0}
.cfgpwr-r__k{color:var(--mut)}
.cfgpwr-r__v{font-weight:700;color:var(--ink);text-align:right}
.cfgpwr-badge{display:inline-block;background:var(--bs);color:var(--b);border-radius:6px;padding:2px 9px;font-weight:700;font-size:13px;margin-left:4px}
.cfgpwr-cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:700;min-height:44px;text-decoration:none;margin-top:16px}
.cfgpwr-cta:hover{background:var(--bd)}
.cfgpwr-empty{text-align:center;color:var(--mut);padding:30px 10px;font-size:13.5px}
.cfgpwr-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgpwr-note svg{flex:none;margin-top:1px;color:var(--warn)}.cfgpwr-note b{color:var(--ink)}.cfgpwr-note a{color:var(--b)}
@media (max-width:920px){.cfgpwr-grid{grid-template-columns:1fr;gap:16px}}
@media (max-width:560px){.cfgpwr-panel{padding:16px}}

@media (max-width:400px){
.cfgpwr-row{grid-template-columns:64px minmax(78px,1fr) 44px}
.cfgpwr-row>input[type="text"]{grid-column:1 / -1}
}

/* Component: configurator-rack/index.php */

.cfgrk{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgrk *{box-sizing:border-box}
.cfgrk__head{margin:6px 0 16px}
.cfgrk__head h1{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgrk__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgrk-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgrk-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgrk-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgrk-step:first-child{padding-top:0}
.cfgrk-step:last-child{border-bottom:0;padding-bottom:0}
.cfgrk-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgrk-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgrk-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgrk-presets{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.cfgrk-preset{cursor:pointer;border:1px dashed #c3c8e8;background:#fbfcfe;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600;color:var(--b);font-family:inherit;min-height:44px}
.cfgrk-preset:hover{background:var(--bs)}
.cfgrk-rows{display:flex;flex-direction:column;gap:8px}
.cfgrk-row{display:grid;grid-template-columns:1fr 64px 78px 44px;gap:8px;align-items:center}
.cfgrk-row input{height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:13.5px;color:var(--ink);font-family:inherit;min-width:0;background:#fff}
.cfgrk-row .cfgrk-row__qty,.cfgrk-row .cfgrk-row__u{text-align:center;font-weight:700}
.cfgrk-row__del{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;border:0;background:none;color:var(--mut2);font-size:20px;cursor:pointer;line-height:1}
.cfgrk-row__del:hover{color:var(--err)}
.cfgrk-addrow{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:10px;background:none;border:0;color:var(--b);font-size:13px;font-weight:700;cursor:pointer;padding:0 4px}
.cfgrk-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.cfgrk-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px;font-family:inherit}
.cfgrk-chip:hover{border-color:#c3c8e8}
.cfgrk-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgrk-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--ink);user-select:none;margin-top:12px;min-height:44px;padding:8px 0}
.cfgrk-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgrk-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgrk-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgrk-toggle input:checked + .cfgrk-toggle__track{background:var(--ok)}
.cfgrk-toggle input:checked + .cfgrk-toggle__track::after{transform:translateX(18px)}
.cfgrk-depth input{width:100px;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 12px;font-size:15px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgrk-hero{text-align:center;padding:6px 0 18px;border-bottom:1px solid var(--line);margin-bottom:16px}
.cfgrk-hero__v{font-size:clamp(30px,6vw,44px);font-weight:800;color:var(--b);line-height:1}
.cfgrk-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgrk-rowsout{display:flex;flex-direction:column}
.cfgrk-r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgrk-r:last-child{border-bottom:0}
.cfgrk-r__k{color:var(--mut)}.cfgrk-r__v{font-weight:700;color:var(--ink);text-align:right}
.cfgrk-bar{height:9px;border-radius:6px;background:#eef1f6;overflow:hidden;margin:2px 0 16px}
.cfgrk-bar__fill{height:100%;background:linear-gradient(90deg,var(--b),#7b82e0);border-radius:6px;transition:width .25s}
.cfgrk-cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:700;min-height:44px;text-decoration:none;margin-top:16px}
.cfgrk-cta:hover{background:var(--bd)}
.cfgrk-empty{text-align:center;color:var(--mut);padding:30px 10px;font-size:13.5px}
.cfgrk-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgrk-note svg{flex:none;margin-top:1px;color:var(--warn)}.cfgrk-note b{color:var(--ink)}.cfgrk-note a{color:var(--b)}
@media (max-width:920px){.cfgrk-grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.cfgrk-panel{padding:16px}}

@media (max-width:400px){
.cfgrk-row{grid-template-columns:64px minmax(78px,1fr) 44px}
.cfgrk-row>input[type="text"]{grid-column:1 / -1}
}

/* Component: configurator/index.php */

.cfghub{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfghub *{box-sizing:border-box}
.cfghub__intro{font-size:15px;line-height:1.55;color:var(--mut);margin:0 0 22px;max-width:820px}
.cfghub-group{margin:0 0 26px}
.cfghub-group__title{font-size:24px;line-height:1.2;font-weight:var(--fw-bold);color:var(--ink);margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.cfghub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cfghub-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:18px;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
.cfghub-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(34,36,102,.12);border-color:#c7ccea}
.cfghub-card__icon{color:var(--b)}
.cfghub-card__icon svg{width:34px;height:34px;display:block}
.cfghub-card__name{font-size:19px;line-height:1.35;font-weight:var(--fw-bold);color:var(--ink)}
.cfghub-card__desc{flex:1 1 auto;font-size:13px;line-height:1.5;color:var(--mut)}
.cfghub-card__cta{align-self:flex-start;margin-top:4px;font-size:13px;font-weight:700;color:var(--b)}
.cfghub-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid #b4863f;border-radius:8px;padding:12px 14px;margin:6px 0 0;font-size:13px;color:var(--mut)}
.cfghub-note svg{flex:none;margin-top:1px;color:#b4863f}.cfghub-note b{color:var(--ink)}.cfghub-note a{color:var(--b)}
@media (max-width:880px){.cfghub-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.cfghub-grid{grid-template-columns:1fr}}
/* ANDPRO-TYPESCALE-CONFIG-HUB-FIX14 *//* ANDPRO-TYPESCALE-CONFIG-HUB-SIZE-FIX30 */
/* Component: configurator-cctv/index.php */

.cfgcctv{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgcctv *{box-sizing:border-box}
.cfgcctv__head{margin:6px 0 16px}
.cfgcctv__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgcctv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgcctv-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgcctv-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgcctv-step:first-child{padding-top:0}
.cfgcctv-step:last-child{border-bottom:0;padding-bottom:0}
.cfgcctv-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgcctv-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgcctv-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgcctv-sub{font-size:12px;font-weight:600;color:var(--mut2);margin:10px 0 8px}
.cfgcctv-step:first-child .cfgcctv-sub:first-of-type,.cfgcctv-sub:first-child{margin-top:0}
.cfgcctv-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgcctv-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgcctv-chip:focus-visible{outline:2px solid var(--b);outline-offset:2px}
.cfgcctv-chip:hover{border-color:#c3c8e8}
.cfgcctv-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgcctv-num{display:inline-flex;align-items:center;gap:10px}
.cfgcctv-num>:not(.cfgcctv-daysunit):first-child,.cfgcctv-num input{vertical-align:middle}
.cfgcctv-num{border:0}
.cfgcctv-num .cfgcctv-num__btn{width:42px;height:44px;border:1.5px solid var(--line);background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer;border-radius:9px}
.cfgcctv-num .cfgcctv-num__btn:hover{background:var(--bs)}
.cfgcctv-num input{width:72px;height:44px;border:1.5px solid var(--line);border-radius:9px;text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgcctv-daysunit{font-size:13px;color:var(--mut)}
.cfgcctv-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.cfgcctv select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
.cfgcctv-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;margin-top:14px;min-height:44px;padding:8px 0}
.cfgcctv-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgcctv-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgcctv-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgcctv-toggle input:checked + .cfgcctv-toggle__track{background:var(--ok)}
.cfgcctv-toggle input:checked + .cfgcctv-toggle__track::after{transform:translateX(18px)}
.cfgcctv-result{display:flex;flex-direction:column;gap:0}
.cfgcctv-hero{text-align:center;padding:6px 0 18px;border-bottom:1px solid var(--line);margin-bottom:8px}
.cfgcctv-hero__cap{font-size:clamp(28px,5.4vw,40px);font-weight:800;color:var(--b);line-height:1}
.cfgcctv-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgcctv-hero__sub{font-size:12.5px;color:var(--mut2);margin-top:3px}
.cfgcctv-blk{padding:14px 0;border-bottom:1px solid var(--line)}
.cfgcctv-blk:last-child{border-bottom:0}
.cfgcctv-blk__h{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--mut2);margin:0 0 10px}
.cfgcctv-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:13.5px}
.cfgcctv-row__k{color:var(--mut)}
.cfgcctv-row__v{font-weight:700;color:var(--ink);text-align:right}
.cfgcctv-ok{color:var(--ok);font-weight:700}
.cfgcctv-bad{color:var(--err);font-weight:700}
.cfgcctv-warnline{display:flex;gap:8px;align-items:flex-start;background:#fbf3e6;border:1px solid #f0dcc0;border-radius:8px;padding:9px 12px;font-size:12.5px;color:#7a5a26;margin-top:8px}
.cfgcctv-pick{margin-top:8px}
.cfgcctv-pick label{display:block;font-size:12px;color:var(--mut2);margin-bottom:5px}
.cfgcctv-total{font-size:13.5px;color:var(--ink);margin:6px 0 12px;padding-top:12px;border-top:1px dashed var(--line)}
.cfgcctv-total b{font-size:18px;color:var(--b)}
.cfgcctv-btns{display:flex;flex-wrap:wrap;gap:8px}
.cfgcctv-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:45px;text-decoration:none}
.cfgcctv-btn:hover{background:var(--bd)}
.cfgcctv-btn--ghost{background:#fff;color:var(--b);border:1.5px solid var(--line)}
.cfgcctv-btn--ghost:hover{background:var(--bs);border-color:var(--b)}
.cfgcctv-err{display:flex;gap:10px;align-items:flex-start;background:#fdecea;border:1px solid #f5c6cf;border-radius:8px;padding:12px 14px;font-size:13px;color:var(--err);font-weight:600}
.cfgcctv-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgcctv-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgcctv-note b{color:var(--ink)}.cfgcctv-note a{color:var(--b)}
@media (max-width:920px){.cfgcctv-grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.cfgcctv-panel{padding:16px}.cfgcctv-row2{grid-template-columns:1fr}}

/* Component: configurator-sks/index.php */

.cfgsks{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgsks *{box-sizing:border-box}
/* ANDPRO-F418-COUNT-NOTE: reserve two lines before focus/click, no layout collapse. */
.cfgsks p.cfg-count-note{display:block;height:40px;min-height:40px;max-height:40px;overflow:hidden;margin:6px 0 0;font-size:12px;line-height:20px;color:var(--ink);visibility:visible;opacity:1}
.cfgsks__head{margin:6px 0 16px}
.cfgsks__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgsks-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px;align-items:start}
.cfgsks-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgsks-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgsks-step:first-child{padding-top:0}
.cfgsks-step:last-child{border-bottom:0;padding-bottom:0}
.cfgsks-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgsks-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgsks-sub{font-size:12px;font-weight:600;color:var(--mut2);margin:12px 0 8px}
.cfgsks-unit{font-size:13px;color:var(--mut)}
.cfgsks-num{display:inline-flex;align-items:center;gap:10px}
.cfgsks-num__btn{width:42px;height:44px;border:1.5px solid var(--line);background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer;border-radius:9px}
.cfgsks-num__btn:hover{background:var(--bs)}
.cfgsks-num input{width:84px;height:44px;border:1.5px solid var(--line);border-radius:9px;text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgsks-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgsks-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px}
.cfgsks-chip:hover{border-color:#c3c8e8}
.cfgsks-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgsks-result{display:flex;flex-direction:column;gap:0}
.cfgsks-bom{width:100%;border-collapse:collapse;font-size:13px}
.cfgsks-bom th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut2);font-weight:800;padding:0 8px 8px 0;border-bottom:1px solid var(--line)}
.cfgsks-bom td{padding:10px 8px 10px 0;border-bottom:1px dashed var(--line);vertical-align:top}
.cfgsks-bom tr:last-child td{border-bottom:0}
.cfgsks-bom__pos{font-weight:700;color:var(--ink)}
.cfgsks-bom__item{font-size:12px;color:var(--mut);line-height:1.4}
.cfgsks-bom__item a{color:var(--b);text-decoration:none}
.cfgsks-bom__qty{white-space:nowrap;font-weight:700;color:var(--ink);text-align:right}
.cfgsks-bom__sum{white-space:nowrap;font-weight:700;color:var(--ink);text-align:right}
.cfgsks-bom__buy{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:5px;font-size:12px;font-weight:700;color:#fff;background:var(--b);border-radius:6px;padding:8px 10px;text-decoration:none}
.cfgsks-bom__buy:hover{background:var(--bd)}
.cfgsks-total{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:14px 0 12px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;color:var(--ink)}
.cfgsks-total b{font-size:19px;color:var(--b)}
.cfgsks-btns{display:flex;flex-wrap:wrap;gap:8px}
.cfgsks-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;text-decoration:none}
.cfgsks-btn:hover{background:var(--bd)}
.cfgsks-btn--ghost{background:#fff;color:var(--b);border:1.5px solid var(--line)}
.cfgsks-btn--ghost:hover{background:var(--bs);border-color:var(--b)}
.cfgsks-warnline{display:flex;gap:8px;align-items:flex-start;background:#fbf3e6;border:1px solid #f0dcc0;border-radius:8px;padding:9px 12px;font-size:12.5px;color:#7a5a26;margin-top:10px}
.cfgsks-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgsks-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgsks-note b{color:var(--ink)}.cfgsks-note a{color:var(--b)}
@media (max-width:920px){.cfgsks-grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.cfgsks-panel{padding:16px}}

/* Component: configurator-wifi/index.php */

.cfgwifi{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgwifi *{box-sizing:border-box}
.cfgwifi__head{margin:6px 0 16px}
.cfgwifi__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgwifi-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgwifi-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgwifi-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgwifi-step:first-child{padding-top:0}
.cfgwifi-step:last-child{border-bottom:0;padding-bottom:0}
.cfgwifi-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgwifi-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgwifi-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgwifi-sub{font-size:12px;font-weight:600;color:var(--mut2);margin:12px 0 8px}
.cfgwifi-num{display:inline-flex;align-items:center;gap:10px}
.cfgwifi-num__btn{width:42px;height:44px;border:1.5px solid var(--line);background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer;border-radius:9px}
.cfgwifi-num__btn:hover{background:var(--bs)}
.cfgwifi-num input{width:90px;height:44px;border:1.5px solid var(--line);border-radius:9px;text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgwifi-unit{font-size:13px;color:var(--mut)}
.cfgwifi-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgwifi-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px}
.cfgwifi-chip:hover{border-color:#c3c8e8}
.cfgwifi-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgwifi-result{display:flex;flex-direction:column;gap:0}
.cfgwifi-hero{text-align:center;padding:6px 0 16px;border-bottom:1px solid var(--line);margin-bottom:10px}
.cfgwifi-hero__n{font-size:clamp(30px,6vw,46px);font-weight:800;color:var(--b);line-height:1}
.cfgwifi-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgwifi-hero__sub{font-size:12.5px;color:var(--mut2);margin-top:3px}
.cfgwifi-pick{margin:4px 0 12px}
.cfgwifi-pick label{display:block;font-size:12px;color:var(--mut2);margin-bottom:5px}
.cfgwifi select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
.cfgwifi-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgwifi-row__k{color:var(--mut)}
.cfgwifi-row__v{font-weight:700;color:var(--ink);text-align:right}
.cfgwifi-warnline{display:flex;gap:8px;align-items:flex-start;background:#fbf3e6;border:1px solid #f0dcc0;border-radius:8px;padding:9px 12px;font-size:12.5px;color:#7a5a26;margin-top:10px}
.cfgwifi-warnline a{color:var(--b)}
.cfgwifi-total{font-size:13.5px;color:var(--ink);margin:12px 0;padding-top:12px;border-top:1px dashed var(--line)}
.cfgwifi-total b{font-size:18px;color:var(--b)}
.cfgwifi-btns{display:flex;flex-wrap:wrap;gap:8px}
.cfgwifi-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;text-decoration:none}
.cfgwifi-btn:hover{background:var(--bd)}
.cfgwifi-btn--ghost{background:#fff;color:var(--b);border:1.5px solid var(--line)}
.cfgwifi-btn--ghost:hover{background:var(--bs);border-color:var(--b)}
.cfgwifi-err{display:flex;gap:10px;align-items:flex-start;background:#fdecea;border:1px solid #f5c6cf;border-radius:8px;padding:12px 14px;font-size:13px;color:var(--err);font-weight:600}
.cfgwifi-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgwifi-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgwifi-note b{color:var(--ink)}.cfgwifi-note a{color:var(--b)}
@media (max-width:920px){.cfgwifi-grid{grid-template-columns:1fr;gap:16px}}
@media (max-width:560px){.cfgwifi-panel{padding:16px}}

/* Component: configurator-network/index.php */

.cfgnet{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgnet *{box-sizing:border-box}
.cfgnet__head{margin:6px 0 14px}
.cfgnet__head h1{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgnet__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgnet-modes{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap}
.cfgnet-mode{cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:9px;padding:10px 18px;font-size:13.5px;font-weight:700;color:var(--mut);font-family:inherit;transition:.15s;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgnet-mode:hover{border-color:#c3c8e8}
.cfgnet-mode[aria-selected="true"]{border-color:var(--b);background:var(--bs);color:var(--b)}
.cfgnet-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgnet-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgnet-note b{color:var(--ink)}
.cfgnet-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgnet-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgnet-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgnet-step:first-child{padding-top:0}
.cfgnet-step:last-child{border-bottom:0;padding-bottom:0}
.cfgnet-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgnet-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgnet-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgnet-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgnet-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgnet-chip:focus-visible{outline:2px solid var(--b);outline-offset:2px}
.cfgnet-chip:hover{border-color:#c3c8e8}
.cfgnet-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgnet-select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 12px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
.cfgnet-select:focus{outline:2px solid var(--b);outline-offset:1px}
.cfgnet-slots{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.cfgnet-slot{font-size:12px;font-weight:600;color:var(--b);background:var(--bs);border-radius:6px;padding:4px 10px}
.cfgnet-slot--mut{color:var(--mut2);background:#f1f4f8}
.cfgnet-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;min-height:44px;padding:8px 0}
.cfgnet-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgnet-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgnet-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgnet-toggle input:checked + .cfgnet-toggle__track{background:var(--ok)}
.cfgnet-toggle input:checked + .cfgnet-toggle__track::after{transform:translateX(18px)}
.cfgnet-toggle input:focus-visible + .cfgnet-toggle__track{outline:2px solid var(--b);outline-offset:2px}
.cfgnet-reset{font-family:inherit;margin-top:14px;background:none;border:0;color:var(--mut2);font-size:12.5px;font-weight:600;cursor:pointer;padding:8px 0;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgnet-reset:hover{color:var(--b)}
.cfgnet-reset:focus-visible{outline:2px solid var(--b);outline-offset:2px;border-radius:6px}
.cfgnet-reshead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 14px;flex-wrap:wrap}
.cfgnet-rescount{font-size:15px;font-weight:800;color:var(--ink)}
.cfgnet-rescount b{color:var(--b)}
.cfgnet-ressort{font-size:12.5px;color:var(--mut2)}
.cfgnet-ressort select{font-family:inherit;font-size:13px;border:1px solid var(--line);border-radius:6px;padding:9px 10px;color:var(--ink);background:#fff;min-height:44px}
.cfgnet-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.cfgnet-summary .cfgnet-chip{cursor:default;background:var(--bs);border-color:transparent;color:var(--b);font-weight:600;font-size:12px;padding:5px 11px;min-height:0}
.cfgnet-cards{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto;padding-right:2px}
.cfgnet-prod{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;transition:border-color .15s}
.cfgnet-prod:hover{border-color:#c3c8e8}
.cfgnet-prod__img{width:54px;height:54px;border-radius:6px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden}
.cfgnet-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgnet-prod__body{min-width:0}
.cfgnet-prod__name{font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgnet-prod__name a{color:inherit;text-decoration:none}
.cfgnet-prod__name a:hover{color:var(--b)}
.cfgnet-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgnet-prod__meta{display:flex;align-items:center;gap:8px;margin-top:5px}
.cfgnet-stock{font-size:11px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgnet-order{font-size:11px;font-weight:700;color:var(--warn);background:#fbf3e6;border-radius:5px;padding:2px 7px}
.cfgnet-tag{font-size:11px;font-weight:600;color:var(--mut2);background:#f1f4f8;border-radius:5px;padding:2px 7px}
.cfgnet-prod__right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.cfgnet-prod__price{font-size:16px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgnet-prod__buy{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--b);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;white-space:nowrap;text-decoration:none}
.cfgnet-prod__buy:hover{background:var(--bd)}
.cfgnet-prod__invoice{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;color:var(--b);cursor:pointer;background:none;border:0;padding:0 2px;text-decoration:underline}
.cfgnet-empty{text-align:center;padding:34px 16px;color:var(--mut)}
.cfgnet-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgnet-empty p{font-size:13px;margin:0 0 16px}
.cfgnet-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:700;min-height:44px;text-decoration:none}
.cfgnet-empty .cta:hover{background:var(--bd)}
.cfgnet-mbar{display:none}
@media (max-width:920px){
  .cfgnet-grid{grid-template-columns:1fr;gap:16px}
  .cfgnet-mbar{display:flex;position:sticky;top:0;z-index:5;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--sh);padding:10px 14px;margin:0 0 14px}
  .cfgnet-mbar b{color:var(--b)}
  .cfgnet-mbar a{font-size:13px;font-weight:700;color:var(--b);text-decoration:none}
}
@media (max-width:560px){.cfgnet-panel{padding:16px}}
@media (max-width:480px){
  .cfgnet-prod{grid-template-columns:44px 1fr;grid-template-areas:"img body" "right right";row-gap:10px}
  .cfgnet-prod__img{grid-area:img;width:44px;height:44px}
  .cfgnet-prod__body{grid-area:body}
  .cfgnet-prod__right{grid-area:right;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-top:1px dashed var(--line);padding-top:10px}
}

/* Component: configurator-kvm/index.php */

.cfgkvm{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgkvm *{box-sizing:border-box}
.cfgkvm__head{margin:6px 0 16px}
.cfgkvm__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgkvm-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgkvm-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgkvm-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgkvm-step:first-child{padding-top:0}
.cfgkvm-step:last-child{border-bottom:0;padding-bottom:0}
.cfgkvm-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgkvm-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgkvm-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgkvm-num{display:inline-flex;align-items:center;gap:10px}
.cfgkvm-num__btn{width:42px;height:44px;border:1.5px solid var(--line);background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer;border-radius:9px}
.cfgkvm-num__btn:hover{background:var(--bs)}
.cfgkvm-num input{width:80px;height:44px;border:1.5px solid var(--line);border-radius:9px;text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgkvm-unit{font-size:13px;color:var(--mut)}
.cfgkvm-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgkvm-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px}
.cfgkvm-chip:hover{border-color:#c3c8e8}
.cfgkvm-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgkvm-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;min-height:44px;padding:8px 0}
.cfgkvm-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgkvm-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgkvm-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgkvm-toggle input:checked + .cfgkvm-toggle__track{background:var(--ok)}
.cfgkvm-toggle input:checked + .cfgkvm-toggle__track::after{transform:translateX(18px)}
.cfgkvm-result{display:flex;flex-direction:column;gap:0}
.cfgkvm-hero{padding:6px 0 14px;border-bottom:1px solid var(--line);margin-bottom:10px}
.cfgkvm-hero__name{font-size:17px;font-weight:800;color:var(--ink);line-height:1.3}
.cfgkvm-hero__name a{color:inherit;text-decoration:none}
.cfgkvm-hero__name a:hover{color:var(--b)}
.cfgkvm-hero__sub{font-size:12.5px;color:var(--mut2);margin-top:4px}
.cfgkvm-pick{margin:4px 0 12px}
.cfgkvm-pick label{display:block;font-size:12px;color:var(--mut2);margin-bottom:5px}
.cfgkvm select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
.cfgkvm-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgkvm-row__k{color:var(--mut)}
.cfgkvm-row__v{font-weight:700;color:var(--ink);text-align:right}
.cfgkvm-ok{color:var(--ok)}
.cfgkvm-warnline{display:flex;gap:8px;align-items:flex-start;background:#fbf3e6;border:1px solid #f0dcc0;border-radius:8px;padding:9px 12px;font-size:12.5px;color:#7a5a26;margin-top:10px}
.cfgkvm-warnline a{color:var(--b)}
.cfgkvm-total{font-size:13.5px;color:var(--ink);margin:12px 0;padding-top:12px;border-top:1px dashed var(--line)}
.cfgkvm-total b{font-size:18px;color:var(--b)}
.cfgkvm-btns{display:flex;flex-wrap:wrap;gap:8px}
.cfgkvm-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;text-decoration:none}
.cfgkvm-btn:hover{background:var(--bd)}
.cfgkvm-btn--ghost{background:#fff;color:var(--b);border:1.5px solid var(--line)}
.cfgkvm-btn--ghost:hover{background:var(--bs);border-color:var(--b)}
.cfgkvm-err{display:flex;gap:10px;align-items:flex-start;background:#fdecea;border:1px solid #f5c6cf;border-radius:8px;padding:12px 14px;font-size:13px;color:var(--err);font-weight:600}
.cfgkvm-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgkvm-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgkvm-note b{color:var(--ink)}.cfgkvm-note a{color:var(--b)}
@media (max-width:920px){.cfgkvm-grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.cfgkvm-panel{padding:16px}}

/* Component: configurator-memory/index.php */

.cfgmem{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgmem *{box-sizing:border-box}
.cfgmem__head{margin:6px 0 16px}
.cfgmem__head .cfgmem__title{font-size:clamp(20px,2.4vw,27px);font-weight:800;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.cfgmem__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgmem-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:13px;color:var(--mut)}
.cfgmem-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgmem-note b{color:var(--ink)}
.cfgmem-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgmem-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgmem-diagnostic{margin-top:22px}
.cfgmem-diagnostic label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}
.cfgmem-diagnostic select{max-width:100%;min-height:44px;border:1px solid var(--line);border-radius:7px;padding:8px;font:inherit;color:var(--ink);background:#fff}
.cfgmem-diagnostic p{font-size:13px;line-height:1.5;color:var(--mut);margin:12px 0 0}
.cfgmem-modetabs{display:flex;gap:6px;background:#f1f3f8;border-radius:10px;padding:4px;margin:0 0 4px}
.cfgmem-modetabs button{flex:1;border:0;background:none;border-radius:7px;padding:10px 12px;font-size:13px;font-weight:700;color:var(--mut);cursor:pointer;min-height:44px}
.cfgmem-modetabs button[aria-pressed="true"]{background:#fff;color:var(--b);box-shadow:0 1px 4px rgba(56,69,94,.1)}
.cfgmem-modelsearch input{width:100%;border:1.5px solid var(--line);border-radius:8px;padding:11px 13px;font-size:14px;font-family:inherit;color:var(--ink)}
.cfgmem-modelsearch input:focus{outline:2px solid var(--b);outline-offset:1px;border-color:var(--b)}
.cfgmem-modellist{margin-top:8px;display:flex;flex-direction:column;gap:6px;max-height:230px;overflow:auto}
.cfgmem-modellist button{min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal;text-align:left;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 12px;font-size:13px;cursor:pointer;color:var(--ink);font-weight:600}
.cfgmem-modellist button:hover{border-color:var(--b);background:var(--bs)}
.cfgmem-modellist small{color:var(--mut2);display:block;font-size:11.5px;margin-top:2px;font-weight:500}
.cfgmem-detected{display:flex;gap:9px;align-items:flex-start;background:var(--okbg);border:1px solid #bfe3cd;border-radius:8px;padding:11px 13px;font-size:13px;color:#28663f;margin-top:10px}
.cfgmem-detected svg{flex:none;margin-top:1px}
.cfgmem-detected b{color:#1f5532}
.cfgmem-detected .chg{margin-left:auto;background:none;border:0;color:#28663f;text-decoration:underline;cursor:pointer;font-size:12px;flex:none;padding:0}
.cfgmem-panel[data-mode="model"] #cfgmemStepDev,.cfgmem-panel[data-mode="model"] #cfgmemStepGen{display:none}
.cfgmem-panel[data-mode="params"] #cfgmemModelStep{display:none}
.cfgmem-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgmem-step:last-child{border-bottom:0;padding-bottom:0}
.cfgmem-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgmem-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgmem-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgmem-dev{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cfgmem-dev__btn{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:8px;padding:16px 10px;font-size:13.5px;font-weight:600;color:var(--ink);transition:border-color .15s,background .15s;min-height:96px;justify-content:center}
.cfgmem-dev__btn small{font-weight:500;color:var(--mut2);font-size:11.5px}
.cfgmem-dev__btn:hover{border-color:#c3c8e8}
.cfgmem-dev__btn[aria-pressed="true"]{border-color:var(--b);background:var(--bs)}
.cfgmem-dev__btn svg{color:var(--b)}
.cfgmem-seg{display:flex;flex-wrap:wrap;gap:8px}
.cfgmem-seg__btn{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:600;color:var(--ink);transition:.15s;min-height:40px}
.cfgmem-seg__btn:hover{border-color:#c3c8e8}
.cfgmem-seg__btn[aria-pressed="true"]{border-color:var(--b);background:var(--b);color:#fff}
.cfgmem-chips{display:flex;flex-wrap:wrap;gap:8px}
.cfgmem-chip{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;color:#374957;transition:.15s;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgmem-chip:focus-visible{outline:2px solid var(--b);outline-offset:2px}
.cfgmem-chip:hover{border-color:#c3c8e8}
.cfgmem-chip[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b);font-weight:700}
.cfgmem-spechelp{font-size:12px;color:var(--mut2);margin:8px 0 0}
.cfgmem-toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);user-select:none;min-height:44px;padding:8px 0}
.cfgmem-toggle input{position:absolute;opacity:0;width:0;height:0}
.cfgmem-toggle__track{width:40px;height:22px;border-radius:999px;background:#cdd4de;position:relative;transition:background .15s;flex:none}
.cfgmem-toggle__track::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cfgmem-toggle input:checked + .cfgmem-toggle__track{background:var(--ok)}
.cfgmem-toggle input:checked + .cfgmem-toggle__track::after{transform:translateX(18px)}
.cfgmem-toggle input:focus-visible + .cfgmem-toggle__track{outline:2px solid var(--b);outline-offset:2px}
.cfgmem-reset{font-family:inherit;margin-top:14px;background:none;border:0;color:var(--mut2);font-size:12.5px;font-weight:600;cursor:pointer;padding:8px 0;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.cfgmem-reset:hover{color:var(--b)}
.cfgmem-reset:focus-visible{outline:2px solid var(--b);outline-offset:2px;border-radius:6px}
.cfgmem-reshead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 14px;flex-wrap:wrap}
.cfgmem-rescount{font-size:15px;font-weight:800;color:var(--ink)}
.cfgmem-rescount b{color:var(--b)}
.cfgmem-ressort{font-size:12.5px;color:var(--mut2)}
.cfgmem-ressort select{font-family:inherit;font-size:13px;border:1px solid var(--line);border-radius:6px;padding:9px 10px;color:var(--ink);background:#fff;min-height:44px}
.cfgmem-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.cfgmem-summary .cfgmem-chip{cursor:default;background:var(--bs);border-color:transparent;color:var(--b);font-weight:600;font-size:12px;padding:5px 11px;min-height:0}
.cfgmem-cards{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto;padding-right:2px}
.cfgmem-prod{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;transition:border-color .15s}
.cfgmem-prod:hover{border-color:#c3c8e8}
.cfgmem-prod__img{width:54px;height:54px;border-radius:6px;background:linear-gradient(150deg,#eef2fb,#dbe2f0);display:flex;align-items:center;justify-content:center;color:#9aa7b3;overflow:hidden}
.cfgmem-prod__img img{width:100%;height:100%;object-fit:contain}
.cfgmem-prod__body{min-width:0}
.cfgmem-prod__name{overflow-wrap:anywhere;font-size:13.5px;font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}
.cfgmem-prod__name a{color:inherit;text-decoration:none}
.cfgmem-prod__name a:hover{color:var(--b)}
.cfgmem-prod__spec{font-size:12px;color:var(--mut);line-height:1.45}
.cfgmem-prod__meta{display:flex;align-items:center;gap:8px;margin-top:5px}
.cfgmem-stock{font-size:11px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:5px;padding:2px 7px}
.cfgmem-order{font-size:11px;font-weight:700;color:var(--warn);background:#fbf3e6;border-radius:5px;padding:2px 7px}
.cfgmem-prod__right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.cfgmem-prod__price{font-size:16px;font-weight:800;color:var(--ink);white-space:nowrap}
.cfgmem-prod__buy{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--b);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;min-height:44px;white-space:nowrap;text-decoration:none}
.cfgmem-prod__buy:hover{background:var(--bd)}
.cfgmem-prod__invoice{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;color:var(--b);cursor:pointer;background:none;border:0;padding:0 2px;text-decoration:underline}
.cfgmem-empty{text-align:center;padding:34px 16px;color:var(--mut)}
.cfgmem-empty h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgmem-empty p{font-size:13px;margin:0 0 16px}
.cfgmem-empty .cta{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:700;min-height:44px;text-decoration:none}
.cfgmem-empty .cta:hover{background:var(--bd)}
.cfgmem-mbar{display:none}
@media (max-width:920px){
  .cfgmem-grid{grid-template-columns:1fr;gap:16px}
  .cfgmem-mbar{display:flex;position:sticky;top:0;z-index:5;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--sh);padding:10px 14px;margin:0 0 14px}
  .cfgmem-mbar b{color:var(--b)}
  .cfgmem-mbar a{font-size:13px;font-weight:700;color:var(--b);text-decoration:none}
}
@media (max-width:560px){.cfgmem-panel{padding:16px}}
@media (max-width:480px){
  .cfgmem-dev{grid-template-columns:1fr}
  .cfgmem-prod{grid-template-columns:44px 1fr;grid-template-areas:"img body" "right right";row-gap:10px}
  .cfgmem-prod__img{grid-area:img;width:44px;height:44px}
  .cfgmem-prod__body{grid-area:body}
  .cfgmem-prod__right{grid-area:right;flex-direction:row;flex-wrap:wrap;gap:8px 12px;justify-content:space-between;align-items:center;width:100%;min-width:0;border-top:1px dashed var(--line);padding-top:10px}
  .cfgmem-prod__invoice{flex:0 1 100%;width:100%;max-width:100%;text-align:center;overflow-wrap:anywhere}
}

/* Component: configurator-storage/index.php */

.cfgstor{--b:#575fcf;--bd:#4a51c0;--bs:#eef0fb;--ink:#2c3a47;--mut:#5c6b7a;--mut2:#7a8a99;--line:#e3e7ee;--card:#fff;--ok:#2e7d4f;--okbg:#e8f5ee;--warn:#b4863f;--err:#c0392b;--sh:0 6px 40px 0 rgba(56,69,94,.07);max-width:1180px;margin:0 auto}
.cfgstor *{box-sizing:border-box}
/* ANDPRO-F418-COUNT-NOTE: reserve two lines before focus/click, no layout collapse. */
.cfgstor p.cfg-count-note{display:block;height:40px;min-height:40px;max-height:40px;overflow:hidden;margin:6px 0 0;font-size:12px;line-height:20px;color:var(--ink);visibility:visible;opacity:1}
.cfgstor__head{margin:6px 0 16px}
.cfgstor__head p{font-size:14px;color:var(--mut);margin:0;max-width:760px}
.cfgstor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.cfgstor-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:20px}
.cfgstor-step{padding:16px 0;border-bottom:1px solid var(--line)}
.cfgstor-step:first-child{padding-top:0}
.cfgstor-step:last-child{border-bottom:0;padding-bottom:0}
.cfgstor-step__h{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);margin:0 0 12px}
.cfgstor-step__n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bs);color:var(--b);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.cfgstor-step__hint{font-size:12px;color:var(--mut2);font-weight:500}
.cfgstor-step select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff;font-family:inherit}
.cfgstor-nasnote{font-size:12.5px;color:var(--mut);margin-top:10px;line-height:1.5}
.cfgstor-nasnote b{color:var(--ink)}
.cfgstor-levels{display:flex;flex-wrap:wrap;gap:8px}
.cfgstor-lvl{cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:9px;padding:9px 13px;font-size:13.5px;font-weight:700;color:#374957;transition:.15s;min-height:40px}
.cfgstor-lvl:hover{border-color:#c3c8e8}
.cfgstor-lvl[aria-pressed="true"]{border-color:var(--b);background:var(--bs);color:var(--b)}
.cfgstor-leveldesc{font-size:12.5px;color:var(--mut);margin:12px 0 0;min-height:18px}
.cfgstor-num{display:inline-flex;align-items:center;gap:0;border:1.5px solid var(--line);border-radius:9px;overflow:hidden}
.cfgstor-num__btn{width:42px;height:44px;border:0;background:#f7f9fc;font-size:20px;font-weight:700;color:var(--b);cursor:pointer}
.cfgstor-num__btn:hover{background:var(--bs)}
.cfgstor-num input{width:72px;height:44px;border:0;border-left:1.5px solid var(--line);border-right:1.5px solid var(--line);text-align:center;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit}
.cfgstor-groups{margin-top:12px;font-size:13px;color:var(--ink)}
.cfgstor-groups input{width:72px;height:38px;border:1.5px solid var(--line);border-radius:8px;text-align:center;font-size:15px;font-weight:700;margin-left:8px;font-family:inherit}
.cfgstor-tabs{display:flex;gap:8px;margin:0 0 12px}
.cfgstor-tab{flex:1;cursor:pointer;border:1.5px solid var(--line);background:#fbfcfe;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:600;color:var(--mut);transition:.15s;font-family:inherit;min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.cfgstor-tab[aria-selected="true"]{border-color:var(--b);background:var(--bs);color:var(--b)}
.cfgstor-cap{display:flex;gap:8px}
.cfgstor-cap input{flex:1;height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 12px;font-size:16px;font-weight:700;color:var(--ink);font-family:inherit;min-width:0}
.cfgstor-cap select{flex:none;width:auto}
.cfgstor-disknote{font-size:12.5px;color:var(--mut);margin-top:10px}
.cfgstor-disknote a{color:var(--b)}
.cfgstor-result{display:flex;flex-direction:column;gap:0}
.cfgstor-placeholder{text-align:center;padding:30px 16px;color:var(--mut)}
.cfgstor-placeholder h2{font-size:15px;color:var(--ink);margin:0 0 6px}
.cfgstor-placeholder p{font-size:13px;margin:0}
.cfgstor-hero{text-align:center;padding:6px 0 18px;border-bottom:1px solid var(--line);margin-bottom:16px}
.cfgstor-hero__cap{font-size:clamp(30px,6vw,44px);font-weight:800;color:var(--b);line-height:1}
.cfgstor-hero__lbl{font-size:13px;color:var(--mut);margin-top:6px}
.cfgstor-hero__tib{font-size:12.5px;color:var(--mut2);margin-top:3px}
.cfgstor-rows{display:flex;flex-direction:column;gap:0}
.cfgstor-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cfgstor-row:last-child{border-bottom:0}
.cfgstor-row__k{color:var(--mut)}
.cfgstor-row__v{font-weight:700;color:var(--ink);text-align:right}
.cfgstor-bar{height:9px;border-radius:6px;background:#eef1f6;overflow:hidden;margin:2px 0 16px}
.cfgstor-bar__fill{height:100%;background:linear-gradient(90deg,var(--b),#7b82e0);border-radius:6px;transition:width .25s}
.cfgstor-tol{color:var(--ok);font-weight:700}
.cfgstor-tol--zero{color:var(--warn)}
.cfgstor-err{display:flex;gap:10px;align-items:flex-start;background:#fdecea;border:1px solid #f5c6cf;border-radius:8px;padding:12px 14px;font-size:13px;color:var(--err);font-weight:600}
.cfgstor-buy{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}
.cfgstor-buy__line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:13px;color:var(--ink);margin:0 0 8px}
.cfgstor-buy__line span:last-child{font-weight:700;white-space:nowrap}
.cfgstor-buy__total{font-size:13.5px;color:var(--ink);margin:8px 0 12px;padding-top:10px;border-top:1px dashed var(--line)}
.cfgstor-buy__total b{font-size:18px;color:var(--b)}
.cfgstor-buy__btns{display:flex;flex-wrap:wrap;gap:8px}
.cfgstor-btn{display:inline-flex;align-items:center;gap:7px;background:var(--b);color:#fff;border:0;border-radius:8px;padding:10px 15px;font-size:13px;font-weight:700;cursor:pointer;min-height:42px;text-decoration:none}
.cfgstor-btn:hover{background:var(--bd)}
.cfgstor-btn--ghost{background:#fff;color:var(--b);border:1.5px solid var(--line)}
.cfgstor-btn--ghost:hover{background:var(--bs);border-color:var(--b)}
.cfgstor-note{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;padding:12px 14px;margin:20px 0 0;font-size:13px;color:var(--mut)}
.cfgstor-note svg{flex:none;margin-top:1px;color:var(--warn)}
.cfgstor-note b{color:var(--ink)}.cfgstor-note a{color:var(--b)}
@media (max-width:920px){.cfgstor-grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.cfgstor-panel{padding:16px}}

/* Component: configurator-1c/index.php */
.ap1c{--ink:#172033;--mut:#5f6b7a;--line:#dfe4ea;--soft:#f5f7fa;--brand:#575fcf;--brand-dark:#444bb3;--accent:#f5b800;--ok:#217a4d;max-width:1180px;margin:0 auto;color:var(--ink)}
.ap1c *{box-sizing:border-box}.ap1c__intro{margin:0 0 18px}.ap1c__eyebrow{margin:0 0 6px;color:var(--brand);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.ap1c__lead{max-width:850px;margin:0;color:var(--mut);font-size:15px;line-height:1.55}.ap1c__trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.ap1c__trust span{padding:6px 10px;border-radius:999px;background:#eef0fb;color:#454da9;font-size:12px;font-weight:700}
.ap1c__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);gap:20px;align-items:start}.ap1c__panel{border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 30px rgba(27,39,63,.06);padding:20px}.ap1c__panel-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px}.ap1c__panel-head>span{display:flex;flex:0 0 28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#eef0fb;color:var(--brand);font-size:13px;font-weight:800}.ap1c__panel-head h2{margin:1px 0 4px;font-size:19px;line-height:1.2}.ap1c__panel-head p{margin:0;color:var(--mut);font-size:13px;line-height:1.4}.ap1c__fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ap1c__fields label{display:flex;min-width:0;flex-direction:column;gap:6px}.ap1c__fields label>span{font-size:13px;font-weight:700}.ap1c input,.ap1c select{width:100%;min-height:46px;border:1px solid #cfd6df;border-radius:9px;background:#fff;padding:9px 11px;color:var(--ink);font:inherit;font-size:14px}.ap1c input:focus,.ap1c select:focus,.ap1c button:focus-visible,.ap1c a:focus-visible{outline:3px solid rgba(87,95,207,.25);outline-offset:2px;border-color:var(--brand)}.ap1c small{color:#7b8795;font-size:11.5px}.ap1c__check{display:flex;min-height:46px;align-items:center;gap:10px;margin-top:14px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;cursor:pointer;font-size:13px;font-weight:700}.ap1c__check input{width:20px;min-height:20px;margin:0;accent-color:var(--brand)}.ap1c__calculate{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:9px;background:var(--ink);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.ap1c__calculate:hover{background:#2b3548}
.ap1c__result{position:sticky;top:92px}.ap1c__profiles{display:grid;gap:10px}.ap1c__profile{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.ap1c__profile--recommended{border-color:#bfc4f0;background:#f3f4ff}.ap1c__profile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.ap1c__profile h3{margin:0;font-size:15px}.ap1c__profile-badge{padding:3px 8px;border-radius:999px;background:var(--brand);color:#fff;font-size:11px;font-weight:800}.ap1c__specs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}.ap1c__spec{min-width:0}.ap1c__spec strong{display:block;font-size:18px;line-height:1.15}.ap1c__spec span{color:var(--mut);font-size:11.5px}.ap1c__profile-note{margin:10px 0 0;color:var(--mut);font-size:12px;line-height:1.4}.ap1c__architecture{margin-top:12px;padding:14px;border-left:4px solid var(--accent);border-radius:8px;background:#fff8df;font-size:13px;line-height:1.5}.ap1c__architecture strong{display:block;margin-bottom:4px}.ap1c__architecture ul{margin:7px 0 0;padding-left:18px}.ap1c__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.ap1c__button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:9px;padding:9px 12px;font:inherit;font-size:13px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}.ap1c__button--primary{grid-column:1/-1;background:var(--brand);border-color:var(--brand);color:#fff}.ap1c__button--primary:hover{background:var(--brand-dark);color:#fff}.ap1c__button--secondary{background:var(--ink);color:#fff}.ap1c__button--ghost{background:#fff;color:var(--ink)}.ap1c__status{min-height:18px;margin:9px 0 0;color:var(--mut);font-size:12px}.ap1c__status.--ok{color:var(--ok)}.ap1c__status.--bad{color:#b23030}
.ap1c__explain{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.ap1c__explain>div{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}.ap1c__explain h2{margin:0 0 9px;font-size:17px}.ap1c__explain p,.ap1c__explain li{color:var(--mut);font-size:13px;line-height:1.55}.ap1c__explain ul{margin:0;padding-left:18px}.ap1c__explain a{color:var(--brand);font-weight:800}.ap1c__sources{margin-top:20px;padding:15px 17px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--mut);font-size:12.5px;line-height:1.55}.ap1c__sources strong{color:var(--ink)}.ap1c__sources div{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:8px}.ap1c__sources a{color:var(--brand);font-weight:700}
@media(max-width:920px){.ap1c__layout{grid-template-columns:1fr}.ap1c__result{position:static}.ap1c__explain{grid-template-columns:1fr}}
@media(max-width:560px){.ap1c__panel{padding:16px}.ap1c__fields{grid-template-columns:1fr}.ap1c__actions{grid-template-columns:1fr}.ap1c__button--primary{grid-column:auto}.ap1c__specs{grid-template-columns:1fr 1fr}.ap1c__trust span{font-size:12px}.ap1c__sources div{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.ap1c *{scroll-behavior:auto!important;transition:none!important}}
.ap1c__check{position:relative;padding-left:43px}.ap1c__check input{position:absolute;inset:0;width:100%;min-height:46px;margin:0;opacity:0;cursor:pointer;outline:0!important}.ap1c__check::before{content:"";position:absolute;left:11px;width:20px;height:20px;border:1.5px solid #aeb8c5;border-radius:5px;background:#fff}.ap1c__check:has(input:checked)::before{border-color:var(--brand);background:var(--brand)}.ap1c__check:has(input:checked)::after{content:"";position:absolute;left:17px;top:14px;width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}.ap1c__check:has(input:focus-visible){outline:3px solid rgba(87,95,207,.25);outline-offset:2px;border-color:var(--brand)}

/* Component: configurator-virtualization/index.php */
.apvm{--ink:#2c3a47;--mut:#5f6b7a;--line:#dfe4ea;--soft:#f5f7fa;--brand:#575fcf;--brand-dark:#474fbf;--accent:#f5b800;--ok:#217a4d;max-width:1180px;margin:0 auto;color:var(--ink)}
.apvm *{box-sizing:border-box}.apvm__intro{margin:0 0 18px}.apvm__eyebrow{margin:0 0 6px;color:var(--brand);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.apvm__lead{max-width:850px;margin:0;color:var(--mut);font-size:15px;line-height:1.55}.apvm__trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.apvm__trust span{padding:6px 10px;border-radius:999px;background:#eef0fb;color:#454da9;font-size:12px;font-weight:700}
.apvm__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);gap:20px;align-items:start}.apvm__panel{border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 30px rgba(27,39,63,.06);padding:20px}.apvm__panel-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px}.apvm__panel-head>span{display:flex;flex:0 0 28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#eef0fb;color:var(--brand);font-size:13px;font-weight:800}.apvm__panel-head h2{margin:1px 0 4px;font-size:19px;line-height:1.2}.apvm__panel-head p{margin:0;color:var(--mut);font-size:13px;line-height:1.4}.apvm__fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.apvm__fields label{display:flex;min-width:0;flex-direction:column;gap:6px}.apvm__fields label>span{font-size:13px;font-weight:700}.apvm input,.apvm select{width:100%;min-height:46px;border:1px solid #cfd6df;border-radius:9px;background:#fff;padding:9px 11px;color:var(--ink);font:inherit;font-size:14px}.apvm input:focus,.apvm select:focus,.apvm button:focus-visible,.apvm a:focus-visible{outline:3px solid rgba(87,95,207,.25);outline-offset:2px;border-color:var(--brand)}.apvm small{color:#7b8795;font-size:12px}.apvm__check{display:flex;min-height:46px;align-items:center;gap:10px;margin-top:14px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;cursor:pointer;font-size:13px;font-weight:700}.apvm__check input{width:20px;min-height:20px;margin:0;accent-color:var(--brand)}.apvm__calculate{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:9px;background:var(--brand);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.apvm__calculate:hover{background:var(--brand-dark)}
.apvm__result{position:sticky;top:92px}.apvm__profiles{display:grid;gap:10px}.apvm__profile{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.apvm__profile--recommended{border-color:#bfc4f0;background:#f3f4ff}.apvm__profile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.apvm__profile h3{margin:0;font-size:15px}.apvm__profile-badge{padding:3px 8px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;font-weight:700}.apvm__specs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}.apvm__spec{min-width:0}.apvm__spec strong{display:block;font-size:18px;line-height:1.15}.apvm__spec span{color:var(--mut);font-size:12px}.apvm__profile-note{margin:10px 0 0;color:var(--mut);font-size:12px;line-height:1.4}.apvm__architecture{margin-top:12px;padding:14px;border-left:4px solid var(--accent);border-radius:8px;background:#fff8df;font-size:13px;line-height:1.5}.apvm__architecture strong{display:block;margin-bottom:4px}.apvm__architecture ul{margin:7px 0 0;padding-left:18px}.apvm__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.apvm__button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:9px;padding:9px 12px;font:inherit;font-size:13px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}.apvm__button--primary{grid-column:1/-1;background:var(--brand);border-color:var(--brand);color:#fff}.apvm__button--primary:hover{background:var(--brand-dark);color:#fff}.apvm__button--secondary{background:var(--ink);color:#fff}.apvm__button--ghost{background:#fff;color:var(--ink)}.apvm__status{min-height:18px;margin:9px 0 0;color:var(--mut);font-size:12px}.apvm__status.--ok{color:var(--ok)}.apvm__status.--bad{color:#b23030}
.apvm__explain{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.apvm__explain>div{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}.apvm__explain h2{margin:0 0 9px;font-size:17px}.apvm__explain p,.apvm__explain li{color:var(--mut);font-size:13px;line-height:1.55}.apvm__explain ul{margin:0;padding-left:18px}.apvm__explain a{color:var(--brand);font-weight:800}.apvm__sources{margin-top:20px;padding:15px 17px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--mut);font-size:12.5px;line-height:1.55}.apvm__sources strong{color:var(--ink)}.apvm__sources div{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:8px}.apvm__sources a{color:var(--brand);font-weight:700}
@media(max-width:920px){.apvm__layout{grid-template-columns:1fr}.apvm__result{position:static}.apvm__explain{grid-template-columns:1fr}}
@media(max-width:560px){.apvm__panel{padding:16px}.apvm__fields{grid-template-columns:1fr}.apvm__actions{grid-template-columns:1fr}.apvm__button--primary{grid-column:auto}.apvm__specs{grid-template-columns:1fr 1fr}.apvm__trust span{font-size:12px}.apvm__sources div{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.apvm *{scroll-behavior:auto!important;transition:none!important}}
.apvm__check{position:relative;padding-left:43px}.apvm__check input{position:absolute;inset:0;width:100%;min-height:46px;margin:0;opacity:0;cursor:pointer;outline:0!important}.apvm__check::before{content:"";position:absolute;left:11px;width:20px;height:20px;border:1.5px solid #aeb8c5;border-radius:5px;background:#fff}.apvm__check:has(input:checked)::before{border-color:var(--brand);background:var(--brand)}.apvm__check:has(input:checked)::after{content:"";position:absolute;left:17px;top:14px;width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}.apvm__check:has(input:focus-visible){outline:3px solid rgba(87,95,207,.25);outline-offset:2px;border-color:var(--brand)}

/* Shared frame and design tokens: the single authority for shell presentation. */
/* ANDPRO configurator frame v1. Existing RAID/memory frame; presentation only.
   Shared by hub + 17 calculators. Canonical Main LIVE9 accepted; component rules and frame share this sole stylesheet. */
html body main .cfg-frame {
 --cfg-brand:#575fcf;--cfg-brand-dark:#343da7;--cfg-ink:#2c3a47;--cfg-muted:#526171;
 --cfg-line:#e3e7ee;--cfg-soft:#eef0fb;--cfg-card:#fff;--cfg-radius:12px;
 --cfg-shadow:0 6px 40px rgba(56,69,94,.07);
 --b:var(--cfg-brand);--bd:var(--cfg-brand-dark);--bs:var(--cfg-soft);
 --brand:var(--cfg-brand);--brand-dark:var(--cfg-brand-dark);--ink:var(--cfg-ink);
 --mut:var(--cfg-muted);--mut2:var(--cfg-muted);--line:var(--cfg-line);--card:var(--cfg-card);--sh:var(--cfg-shadow);
 box-sizing:border-box;max-width:1180px;width:100%;margin:0 auto;padding:0;color:var(--cfg-ink);
}
html body main .cfg-frame *,html body main .cfg-frame *::before,html body main .cfg-frame *::after{box-sizing:border-box}
html body main:has(.cfg-frame) .content-block__head{max-width:1180px;margin:0 auto 20px}
html body main:has(.cfg-frame) #pagetitle{font-size:clamp(24px,3vw,32px);line-height:1.25;font-weight:700;margin:0;color:#2c3a47}
html body main:has(.cfg-frame) .breadcrumb{margin:0 0 14px;font-size:13px;line-height:1.5;flex-wrap:wrap}
html body main .cfg-frame .cfg-frame__intro,html body main p.cfg-frame__intro{margin:0 0 22px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left}
html body main .cfg-frame .cfg-frame__intro p,html body main p.cfg-frame__intro{max-width:900px;margin:0;color:var(--cfg-muted);font-size:15px;line-height:1.6;letter-spacing:normal;text-transform:none}
html body main .cfg-frame .cfg-frame__intro p+p{margin-top:8px}
html body main .cfg-frame .cfg-frame__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start;min-width:0}
html body main .cfg-frame .cfg-frame__panel{min-width:0;max-width:100%;margin:0;padding:20px;background:var(--cfg-card);border:1px solid var(--cfg-line);border-radius:var(--cfg-radius);box-shadow:var(--cfg-shadow)}
html body main .cfg-frame .cfg-frame__note{color:var(--cfg-muted);font-size:13px;line-height:1.6;border-color:var(--cfg-line);border-radius:var(--cfg-radius)}
/* Underline is permanent: link distinction never relies on a near-identical text colour. */
html body main .cfg-frame .cfg-frame__note a,html body main .cfg-frame p a,
html body main .cfg-frame :is(.ap1c__explain,.apvm__explain) a,
html body main:has(.cfg-frame) .cfg-frame__related a{
 color:#343da7!important;text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:3px;
}
html body main .cfg-frame .cfg-frame__note a:hover,html body main .cfg-frame p a:hover,
html body main:has(.cfg-frame) .cfg-frame__related a:hover{color:#263082!important;text-decoration-thickness:2px}
html body main .cfg-frame :is(a,button,input,select,summary):focus-visible{outline:3px solid #343da7;outline-offset:3px}
/* Shared legible empty-state text, including higher-specificity legacy shell rules. */
html body main .cfg-frame .cfgsrv-slot__name.is-empty,html body main .cfg-frame .cfgpcb-slot__name.is-empty{
 color:#526171!important;opacity:1!important;
}
html body main:has(.cfg-frame) .cfg-frame__related{max-width:1180px!important;margin:30px auto 0!important;padding:16px 0!important;border-top:1px solid #e3e7ee!important;color:#526171!important;font-size:13px!important;line-height:1.9!important}
html body main .cfg-frame :is(.cfgraid-hero,.cfgpwr-hero,.cfgrk-hero,.cfgkvm-hero){background:transparent;border-radius:0;box-shadow:none;text-align:center}
@media(max-width:920px){html body main .cfg-frame .cfg-frame__grid{grid-template-columns:minmax(0,1fr);gap:16px}}
@media(max-width:560px){html body main .cfg-frame .cfg-frame__panel{padding:16px}html body main:has(.cfg-frame) .content-block__head{margin-bottom:16px}html body main .cfg-frame .cfg-frame__intro,html body main p.cfg-frame__intro{margin-bottom:18px}}

/* Keep disabled server-slot explanations readable; JS disabled state remains unchanged. */
html body main .cfg-frame .cfgsrv-slot{opacity:1!important}

/* A calculator intro is content, never the global sticky site masthead. */
html body main .cfg-frame header.cfg-frame__intro{position:static!important;display:block!important;height:auto!important;min-height:0!important;max-height:none!important;top:auto!important;z-index:auto!important}
