:root{--product-focus:#3157d5;--product-focus-ring:rgba(49,87,213,.22)}
body,button,input,select,textarea{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",Arial,sans-serif}
button,input,select,textarea{font-size:14px}
button{min-height:40px;font-weight:650}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--product-focus-ring);outline-offset:2px;border-color:var(--product-focus)}
button.primary,button.success{font-weight:800}
.product-svg-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.product-svg-button svg{width:19px;height:19px;fill:currentColor;flex:0 0 auto}
.product-sidebar-action{display:flex;align-items:center;gap:8px}.product-sidebar-action .product-sidebar-action-label{min-width:0}.product-sidebar-action>svg{width:20px;height:20px;fill:currentColor;flex:0 0 auto}

body.product-editor-mode .workflow-preset-card{border-color:#cbd5ec;padding:20px}
body.product-editor-mode .workflow-preset-card>.card-head{align-items:flex-start}
body.product-editor-mode .workflow-preset-card .grid.two{grid-template-columns:minmax(280px,1.35fr) minmax(220px,.65fr);align-items:end}
body.product-editor-mode .workflow-preset-card label{font-size:14px}
body.product-editor-mode #presetSelect{min-height:48px;font-size:16px;font-weight:750;border-width:2px}
body.product-editor-mode #presetSelect.product-choice-required{border-color:#c1811d;background:#fffaf0;box-shadow:0 0 0 3px #f9ddb04d}
body.product-editor-mode .workflow-preset-card.product-preset-confirmed{padding-block:15px}
body.product-editor-mode .workflow-preset-card.product-preset-confirmed #presetSelect{min-height:42px;font-size:14px}
.product-preset-status{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0;padding:12px 14px;border:1px solid #d7ddea;border-radius:11px;background:#f8faff}
.product-preset-status>span{display:grid;gap:2px}.product-preset-status small{color:var(--muted);font-weight:450}
.product-preset-status.needs-decision{border-color:#e2b45e;background:#fffaf0}.product-preset-status.needs-decision strong{color:#7b4b00}
body.product-editor-mode .product-mode-visible>.product-mode-choice{display:flex!important;min-height:78px}
body.product-editor-mode .product-mode-choice.selected{border-color:#3157d5;background:#eef3ff;box-shadow:0 0 0 2px #3157d526}

.product-required-choice{position:relative;border-color:#d79a2c!important;background:#fffaf0!important;box-shadow:0 0 0 4px rgba(215,154,44,.14)!important}
.product-required-choice::before{content:"Нужно ваше решение";display:inline-flex;margin-bottom:8px;padding:4px 8px;border-radius:999px;background:#8a5700;color:#fff;font-size:11px;font-weight:850;letter-spacing:.02em}
.product-required-action{animation:productRequiredPulse 1.7s ease-in-out 2}
@keyframes productRequiredPulse{50%{box-shadow:0 0 0 6px rgba(49,87,213,.2)}}

body.product-editor-mode #panel-constructor .constructor-scenario-grid{gap:12px}
body.product-editor-mode #panel-constructor .constructor-scenario{min-height:118px;padding:16px;text-align:left;border:1px solid #ccd4e2;border-radius:14px;background:#fff}
body.product-editor-mode #panel-constructor .constructor-scenario:hover{border-color:#7990d9;background:#f7f9ff}
body.product-editor-mode #panel-constructor .constructor-scenario.selected,
body.product-editor-mode #panel-constructor .constructor-scenario.primary-card{border-color:#3157d5;background:#eef3ff;box-shadow:0 0 0 2px #3157d520}
body.product-editor-mode #panel-constructor .constructor-scenario strong{font-size:16px}
body.product-editor-mode #panel-constructor .constructor-scenario span{display:block;margin-top:5px;line-height:1.5;color:#536078;font-weight:450}
body.product-editor-mode #panel-constructor .product-action-group{gap:9px;align-items:stretch}
body.product-editor-mode #panel-constructor .product-action-group>button{min-height:42px;padding:9px 13px}
body.product-editor-mode #panel-constructor .constructor-wizard-actions{position:sticky;bottom:10px;z-index:20;padding:10px;border:1px solid #d8deea;border-radius:12px;background:#fffffff2;box-shadow:0 10px 28px #16213d1a;backdrop-filter:blur(8px)}
body.product-editor-mode #panel-constructor .constructor-wizard-actions #constructorWizardNextBtn{min-width:190px}
body.product-editor-mode #panel-constructor .product-details-summary,
body.product-editor-mode #panel-constructor details>summary{padding:10px 12px;border-radius:8px;color:#294a9b;font-weight:800;cursor:pointer}
body.product-editor-mode #panel-constructor details[open]>summary{background:#eef3ff;color:#1f43aa}
body.product-editor-mode #panel-constructor #compositeBuilders{display:grid;gap:12px}
body.product-editor-mode #panel-constructor #compositeBuilders .composite-builder,
body.product-editor-mode #panel-constructor #compositeBuilders>.card{border:1px solid #d9dfeb;border-radius:13px;background:#fcfdff}

body.product-editor-mode details.product-processing-settings>summary,
body.product-editor-mode .project-entity-counts>summary,
body.product-editor-mode .result-technical-details>summary{color:#2d4eaa;font-weight:800}
body.product-editor-mode details[open]>summary{color:#1f43aa}

@media(max-width:760px){
  body.product-editor-mode .workflow-preset-card .grid.two{grid-template-columns:1fr}
  .product-preset-status{align-items:stretch;flex-direction:column}.product-preset-status button{width:100%}
  body.product-editor-mode #panel-constructor .constructor-wizard-actions{position:static}
  body.product-editor-mode #panel-constructor .constructor-wizard-actions .action-wrap{display:grid;grid-template-columns:1fr}
}
