:root{
    --sar-bg:#07111c;
    --sar-panel:#101b28;
    --sar-panel2:#0c1621;
    --sar-border:#223247;
    --sar-text:#e8f1f8;
    --sar-muted:#8fa4b8;
    --sar-blue:#38bdf8;
    --sar-green:#34d399;
    --sar-orange:#fb923c;
    --sar-red:#fb7185;
    --sar-yellow:#facc15;
    --sar-right-width:390px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--sar-bg);color:var(--sar-text);font-family:Inter,"Segoe UI",Arial,sans-serif}
body{overflow:hidden}
button,input,select{font:inherit}
button{cursor:pointer}
.sar-header{
    height:66px;display:flex;align-items:center;gap:18px;padding:0 18px;
    border-bottom:1px solid var(--sar-border);background:#0b1622;
}
.sar-brand{color:#fff;text-decoration:none;font-weight:900;letter-spacing:.04em;white-space:nowrap}
.sar-brand span{color:#67e8f9}
.sar-title{min-width:0}
.sar-title strong,.sar-title span{display:block}
.sar-title strong{font-size:15px}
.sar-title span{margin-top:3px;color:var(--sar-muted);font-size:11px}
.sar-header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.sar-return,.sar-user,.sar-guide-link{
    min-height:36px;display:inline-flex;align-items:center;padding:7px 10px;
    border:1px solid #31445c;border-radius:8px;background:#111f2e;
    color:#dbeafe;text-decoration:none;font-size:12px;font-weight:750
}
.sar-user{color:#a9bed0}
.sar-guide-link{
    border-color:#256d8d;
    background:#0d3345;
    color:#bdeeff;
    white-space:nowrap
}
.sar-guide-link:hover{
    border-color:#38bdf8;
    background:#10445c;
    color:#fff
}
.sar-module-tabs{
    height:48px;display:flex;align-items:center;gap:7px;padding:7px 14px;
    overflow-x:auto;border-bottom:1px solid var(--sar-border);background:#0a1420
}
.sar-module-tabs button{
    min-height:32px;padding:6px 11px;border:1px solid #26394f;border-radius:7px;
    background:#111d2b;color:#8fa4b8;font-size:11px;font-weight:800;white-space:nowrap
}
.sar-module-tabs button.active{border-color:#38bdf8;background:#0d3345;color:#7dd3fc}
.sar-module-tabs button:disabled{opacity:.45;cursor:not-allowed}
.sar-workspace{
    height:calc(100vh - 114px);
    display:grid;
    grid-template-columns:300px minmax(460px,1fr) 9px minmax(330px,var(--sar-right-width));
    min-width:0;
}
.sar-controls,.sar-analysis{
    min-width:0;overflow:auto;padding:12px;background:#0a1420
}
.sar-controls{border-right:1px solid var(--sar-border)}
.sar-analysis{border-left:0}
.sar-center{
    min-width:0;min-height:0;display:grid;grid-template-rows:minmax(330px,1fr) minmax(220px,32vh);
    gap:10px;padding:10px;background:#07111c
}
.sar-panel,.sar-stage-card,.sar-chart-card{
    min-width:0;border:1px solid var(--sar-border);border-radius:12px;background:var(--sar-panel);
    box-shadow:0 10px 28px rgba(0,0,0,.16)
}
.sar-panel{padding:13px;margin-bottom:10px}
.sar-panel h1,.sar-panel h2,.sar-card-title h2{margin:0}
.sar-panel h1{font-size:22px}
.sar-panel h2,.sar-card-title h2{font-size:15px}
.sar-panel-head,.sar-card-title{
    display:flex;align-items:flex-start;justify-content:space-between;gap:12px
}
.sar-kicker{
    display:block;margin-bottom:4px;color:var(--sar-blue);font-size:10px;font-weight:900;
    letter-spacing:.07em;text-transform:uppercase
}
.sar-status-dot{
    padding:5px 8px;border:1px solid #405065;border-radius:999px;color:#a9bed0;font-size:10px;font-weight:800
}
.sar-status-dot.running{border-color:#166534;background:#0f2f24;color:#86efac}
.sar-intro{margin:10px 0 0;color:var(--sar-muted);font-size:12px;line-height:1.45}
.sar-segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}
.sar-segmented button{
    padding:8px;border:1px solid #30435a;border-radius:8px;background:#0b1622;color:#a9bed0;font-weight:800;font-size:11px
}
.sar-segmented button.active{border-color:var(--sar-blue);background:#0d3345;color:#7dd3fc}
.sar-field{margin-top:12px}
.sar-field label{display:block;margin-bottom:6px;color:#b8c7d5;font-size:11px;font-weight:800}
.sar-field select{
    width:100%;padding:9px;border:1px solid #31445c;border-radius:8px;background:#0b1622;color:#e5eef5
}
.sar-slider{margin-top:12px}
.sar-slider label{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px;color:#b8c7d5;font-size:11px}
.sar-slider label strong{color:#fff;white-space:nowrap}
.sar-slider input[type=range]{width:100%;accent-color:var(--sar-blue)}
.sar-slider.is-disabled{opacity:.4}
.sar-quick-actions,.sar-run-panel{display:flex;gap:7px;flex-wrap:wrap}
.sar-quick-actions{margin-top:10px}
.sar-quick-actions button,.sar-mini-btn{
    padding:7px 9px;border:1px solid #31445c;border-radius:7px;background:#0c1825;color:#dbeafe;font-size:10px;font-weight:800
}
.sar-btn{
    flex:1;min-width:78px;padding:9px 11px;border:1px solid #31445c;border-radius:8px;background:#142235;color:#e5eef5;font-weight:850
}
.sar-btn.primary{border-color:#0284c7;background:#0369a1;color:#fff}
.sar-stage-card{position:relative;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.sar-card-title{padding:11px 13px;border-bottom:1px solid var(--sar-border)}
.sar-card-title.compact{padding-bottom:8px}
.sar-live-values{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.sar-live-values span{
    padding:5px 7px;border:1px solid #2a3b50;border-radius:7px;background:#0a1420;color:#93a8bc;font-size:10px
}
.sar-live-values strong{color:#fff}
.sar-three{min-width:0;min-height:0;position:relative;background:radial-gradient(circle at 50% 35%,#17283a 0,#09131e 55%,#050a11 100%)}
.sar-three canvas{display:block;width:100%;height:100%}

.sar-three-help{
    position:absolute;
    z-index:20;
    width:min(310px,calc(100% - 20px));
    padding:10px 11px;
    border:1px solid rgba(125,211,252,.62);
    border-radius:9px;
    background:rgba(5,12,20,.95);
    box-shadow:0 12px 28px rgba(0,0,0,.38);
    color:#dbe7f0;
    font-size:11px;
    line-height:1.4;
    pointer-events:none;
    backdrop-filter:blur(5px);
}

.sar-three-help[hidden]{
    display:none;
}

.sar-three-help__title,
.sar-three-help__text,
.sar-three-help__value{
    display:block;
}

.sar-three-help__title{
    margin-bottom:5px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.sar-three-help__text{
    color:#b5c5d2;
}

.sar-three-help__value{
    margin-top:7px;
    padding-top:6px;
    border-top:1px solid rgba(148,163,184,.22);
    color:#7dd3fc;
    font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace;
}

.sar-help-hint{
    color:#7dd3fc;
    font-weight:800;
}
.sar-object-note{
    padding:8px 12px;border-top:1px solid var(--sar-border);background:#0c1723;color:#91a6b9;font-size:11px;line-height:1.45
}
.sar-object-note strong{color:#dce7ef}
.sar-chart-card{
    min-width:0;
    min-height:220px;
    display:grid;
    grid-template-rows:auto minmax(170px,1fr);
    overflow:hidden;
}
.sar-chart-wrap{
    position:relative;
    min-width:0;
    min-height:170px;
    padding:0;
    overflow:hidden;
    background:#08111b;
}
.sar-chart-wrap canvas{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
}
.sar-chart-tools{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.sar-chart-legend{display:flex;gap:10px;font-size:10px;font-weight:900}
.sar-chart-zoom{
    display:flex;
    align-items:center;
    gap:4px;
}
.sar-chart-zoom button{
    min-width:30px;
    min-height:28px;
    padding:4px 8px;
    border:1px solid #31445c;
    border-radius:7px;
    background:#0b1622;
    color:#dbeafe;
    font-size:14px;
    font-weight:900;
    line-height:1;
}
.sar-chart-zoom button.wide{
    min-width:48px;
    font-size:10px;
}
.sar-chart-zoom button:hover,
.sar-chart-zoom button.active{
    border-color:#38bdf8;
    background:#0d3345;
    color:#7dd3fc;
}
.sar-chart-scale{
    min-width:120px;
    color:#8fa4b8;
    font-size:9px;
    font-weight:800;
    text-align:right;
}
.sar-chart-legend span::before{
    content:"";display:inline-block;width:15px;height:3px;margin-right:5px;vertical-align:middle;border-radius:3px
}
.sar-chart-legend .sp::before{background:var(--sar-blue)}
.sar-chart-legend .pv::before{background:var(--sar-green)}
.sar-chart-legend .u::before{background:var(--sar-orange)}
.sar-resizer{
    position:relative;z-index:5;background:#0b1622;border-left:1px solid #213146;border-right:1px solid #213146;
    cursor:col-resize;touch-action:none
}
.sar-resizer::after{
    content:"";position:absolute;left:3px;top:50%;width:2px;height:52px;margin-top:-26px;border-radius:2px;
    background:#52677d;box-shadow:0 -8px 0 #52677d,0 8px 0 #52677d
}
.sar-resizer.dragging::after{background:#38bdf8;box-shadow:0 -8px 0 #38bdf8,0 8px 0 #38bdf8}
.sar-diagram{margin-top:10px;overflow:hidden;border:1px solid #26384d;border-radius:9px;background:#08111b}
.sar-diagram svg{display:block;width:100%;height:auto}
.sar-equation{
    margin-top:10px;padding:9px 10px;border-left:3px solid var(--sar-yellow);border-radius:6px;background:#171b17
}
.sar-equation span,.sar-equation strong,.sar-equation em{display:block}
.sar-equation span{color:#9bacb8;font-size:10px}
.sar-equation strong{margin:2px 0;color:#fde68a;font-size:14px}
.sar-equation em{color:#fff;font-size:11px;font-style:normal}
.sar-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}
.sar-metrics>div{
    padding:10px;border:1px solid #26384d;border-radius:8px;background:#0b1622
}
.sar-metrics span,.sar-metrics strong{display:block}
.sar-metrics span{color:#8fa4b8;font-size:9px;line-height:1.25}
.sar-metrics strong{margin-top:4px;font-size:16px}
.sar-quality-band{
    margin-top:10px;padding:9px;border:1px solid #334155;border-radius:8px;background:#0b1622;color:#8fa4b8;font-size:10px;line-height:1.4
}
.sar-quality-band strong{display:block;margin-bottom:3px;color:#d6e2ec}
.sar-observe{margin:10px 0 0;padding-left:19px;color:#9fb0c0;font-size:11px;line-height:1.48}
.sar-observe li{margin-bottom:6px}
.sar-observe strong{color:#fff}
@media(max-width:1180px){
    body{overflow:auto}
    .sar-workspace{height:auto;grid-template-columns:280px minmax(0,1fr);grid-template-areas:"controls center" "analysis analysis"}
    .sar-controls{grid-area:controls}
    .sar-center{grid-area:center;min-height:760px}
    .sar-resizer{display:none}
    .sar-analysis{grid-area:analysis;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
    .sar-analysis .sar-panel{margin:0}
}
@media(max-width:760px){
    .sar-header{height:auto;min-height:66px;align-items:flex-start;flex-wrap:wrap;padding:10px}
    .sar-title{order:3;width:100%}
    .sar-user{display:none}
    .sar-workspace{display:block}
    .sar-controls,.sar-analysis{display:block;border:0}
    .sar-center{min-height:760px;padding:8px}
    .sar-analysis .sar-panel{margin-bottom:10px}
    .sar-module-tabs{height:auto}
}

.sar-flow-edge path{
    fill:none;
    stroke:#5f7892;
    stroke-width:3;
    transition:stroke .2s,filter .2s,opacity .2s;
}
.sar-flow-edge.feedback path{stroke:#34d399}
.sar-flow-edge.disturbance path{stroke:#fb7185}
.sar-flow-edge.active path{
    stroke:#facc15;
    filter:drop-shadow(0 0 5px rgba(250,204,21,.85));
}
.sar-flow-node rect,
.sar-flow-node circle{
    fill:#102033;
    stroke:#48647e;
    stroke-width:2;
}
.sar-flow-node.setpoint rect{stroke:#38bdf8}
.sar-flow-node.controller rect{stroke:#facc15}
.sar-flow-node.actuator rect{stroke:#fb923c}
.sar-flow-node.object rect{stroke:#34d399}
.sar-flow-node.sensor rect{stroke:#34d399}
.sar-flow-node.disturbance-node rect{stroke:#fb7185}
.sar-flow-node text{
    fill:#dce8f2;
    font:700 14px Inter,"Segoe UI",Arial,sans-serif;
    text-anchor:middle;
}
.sar-flow-node text.value{
    fill:#fff;
    font-size:13px;
    font-weight:900;
}
.sar-flow-node text.small{
    fill:#7890a7;
    font-size:10px;
}
.sar-flow-node.sum text{font-size:20px}
.sar-flow-node.sum text.plus,
.sar-flow-node.sum text.minus{
    font-size:12px;
    fill:#94a3b8;
}
.sar-diagram .edge-label{
    fill:#8fa4b8;
    font:11px Inter,"Segoe UI",Arial,sans-serif;
}
.sar-diagram.is-open-loop .feedback{
    opacity:.16;
    stroke-dasharray:7 6;
}
.sar-diagram.is-open-loop .feedback-label{opacity:.28}


/* ===== Модуль 2: кривая разгона ===== */
.sar-module-hidden{
    display:none !important;
}

.sar-mode-help{
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #2a4057;
    border-radius:8px;
    background:#0b1622;
    color:#9fb2c3;
    font-size:10px;
    line-height:1.45;
}

.sar-runup-delta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:11px;
    padding:9px 10px;
    border:1px solid #3b4d61;
    border-radius:8px;
    background:#0b1622;
    color:#9fb2c3;
    font-size:11px;
}

.sar-runup-delta strong{
    color:#fb923c;
    font-size:16px;
}

.sar-runup-flow{
    display:grid;
    gap:6px;
    margin-top:11px;
}

.sar-runup-flow>div{
    display:grid;
    grid-template-columns:24px minmax(0,1fr);
    gap:8px;
    align-items:center;
    min-width:0;
    padding:7px 8px;
    border:1px solid #26384d;
    border-radius:8px;
    background:#0b1622;
    color:#a9bac9;
    font-size:10px;
}

.sar-runup-flow b{
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#12364b;
    color:#7dd3fc;
    font-size:10px;
}

.sar-runup-metrics>div{
    min-height:72px;
}

#runupState.running{
    border-color:#b45309;
    background:#3a250a;
    color:#fde68a;
}

#runupStepButton{
    flex:1.45;
}

@media(max-width:1180px){
    .sar-analysis #runupGuidePanel,
    .sar-analysis #runupMetricsPanel,
    .sar-analysis #runupTheoryPanel{
        min-width:0;
    }
}


/* ===== Модуль 3: типовые динамические звенья ===== */
.sar-link-selector{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    margin-top:10px;
}

.sar-link-selector button{
    min-width:0;
    min-height:58px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:3px;
    padding:9px 10px;
    border:1px solid #2e4359;
    border-radius:9px;
    background:#0b1622;
    color:#a8b8c7;
    text-align:left;
}

.sar-link-selector button:hover{
    border-color:#4c7897;
    background:#102235;
}

.sar-link-selector button.active{
    border-color:#38bdf8;
    background:#0d3345;
    box-shadow:inset 0 0 0 1px rgba(56,189,248,.16);
}

.sar-link-selector strong{
    color:#e8f4fb;
    font-size:13px;
}

.sar-link-selector button.active strong{
    color:#7dd3fc;
}

.sar-link-selector span{
    max-width:100%;
    color:#8fa4b8;
    font-size:9px;
    line-height:1.25;
    overflow-wrap:anywhere;
}

.sar-link-three-canvas,
.sar-tank-three-canvas{
    position:absolute;
    inset:0;
    width:100% !important;
    height:100% !important;
}

#linksState.running{
    border-color:#0e7490;
    background:#083344;
    color:#a5f3fc;
}

@media(max-width:760px){
    .sar-link-selector{
        grid-template-columns:1fr;
    }
}


/* ===== Модуль 4: законы регулирования ===== */
.sar-reg-law-selector{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    margin-top:10px;
}

.sar-reg-law-selector button{
    min-width:0;
    min-height:58px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:3px;
    padding:9px 10px;
    border:1px solid #2e4359;
    border-radius:9px;
    background:#0b1622;
    color:#a8b8c7;
    text-align:left;
}

.sar-reg-law-selector button:hover{
    border-color:#4c7897;
    background:#102235;
}

.sar-reg-law-selector button.active{
    border-color:#facc15;
    background:#2b260d;
    box-shadow:inset 0 0 0 1px rgba(250,204,21,.14);
}

.sar-reg-law-selector strong{
    color:#eef6fb;
    font-size:13px;
}

.sar-reg-law-selector button.active strong{
    color:#fde68a;
}

.sar-reg-law-selector span{
    max-width:100%;
    color:#8fa4b8;
    font-size:9px;
    line-height:1.25;
    overflow-wrap:anywhere;
}

.sar-reg-components{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:7px;
    margin-top:10px;
}

.sar-reg-components>div{
    min-width:0;
    padding:9px;
    border:1px solid #31445c;
    border-radius:8px;
    background:#0b1622;
    text-align:center;
    transition:opacity .18s,border-color .18s;
}

.sar-reg-components span,
.sar-reg-components strong{
    display:block;
}

.sar-reg-components span{
    color:#94a3b8;
    font-size:10px;
    font-weight:900;
}

.sar-reg-components strong{
    margin-top:4px;
    color:#fff;
    font:800 15px ui-monospace,SFMono-Regular,Menlo,monospace;
}

.sar-reg-components .p{border-color:#f59e0b}
.sar-reg-components .i{border-color:#38bdf8}
.sar-reg-components .d{border-color:#a78bfa}

.sar-reg-components .inactive{
    opacity:.28;
    border-color:#31445c;
}

.sar-regulation-metrics>div{
    min-height:72px;
}

#regulationState.running{
    border-color:#166534;
    background:#0f2f24;
    color:#86efac;
}

#regulationRunPanel .sar-btn{
    min-width:105px;
}

@media(max-width:760px){
    .sar-reg-law-selector{
        grid-template-columns:1fr;
    }
}


/* ===== Модуль 5: качество регулирования ===== */
.sar-quality-preset-selector{
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
    margin-top:10px;
}

.sar-quality-preset-selector button{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:52px;
    padding:9px 10px;
    border:1px solid #2e4359;
    border-radius:9px;
    background:#0b1622;
    color:#a8b8c7;
    text-align:left;
}

.sar-quality-preset-selector button:hover{
    border-color:#4c7897;
    background:#102235;
}

.sar-quality-preset-selector button.active{
    border-color:#34d399;
    background:#0d2b25;
    box-shadow:inset 0 0 0 1px rgba(52,211,153,.14);
}

.sar-quality-preset-selector strong{
    flex:0 0 auto;
    color:#edf8f4;
    font-size:12px;
}

.sar-quality-preset-selector button.active strong{
    color:#86efac;
}

.sar-quality-preset-selector span{
    min-width:0;
    color:#8fa4b8;
    font-size:9px;
    line-height:1.25;
    text-align:right;
}

.sar-quality-start{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #2e4359;
    border-radius:8px;
    background:#0b1622;
    color:#9fb0c0;
    font-size:10px;
}

.sar-quality-start strong{
    color:#fff;
    font-size:14px;
}

.sar-quality-metrics>div{
    min-height:74px;
}

.sar-quality-metrics strong{
    overflow-wrap:anywhere;
}

.sar-quality-band-state{
    margin-top:10px;
    padding:11px;
    border:1px solid #854d0e;
    border-radius:9px;
    background:#2b1d08;
    color:#fcd34d;
    transition:border-color .2s,background .2s,color .2s;
}

.sar-quality-band-state strong,
.sar-quality-band-state span{
    display:block;
}

.sar-quality-band-state strong{
    font-size:14px;
}

.sar-quality-band-state span{
    margin-top:4px;
    color:#d5b879;
    font-size:10px;
    line-height:1.45;
}

.sar-quality-band-state.inside{
    border-color:#166534;
    background:#0f2f24;
    color:#86efac;
}

.sar-quality-band-state.inside span{
    color:#9bd8bd;
}

#qualityState.running{
    border-color:#166534;
    background:#0f2f24;
    color:#86efac;
}

#qualityRunPanel .sar-btn{
    min-width:86px;
}

@media(max-width:760px){
    .sar-quality-preset-selector button{
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
    }

    .sar-quality-preset-selector span{
        text-align:left;
    }
}


/* ===== Модуль 6: итоговые задания ===== */
.sar-task-score{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:11px;
    padding:9px 10px;
    border:1px solid #31445c;
    border-radius:8px;
    background:#0b1622;
    color:#9fb0c0;
    font-size:10px;
}

.sar-task-score strong{
    color:#fff;
    font-size:16px;
}

.sar-task-data{
    display:grid;
    gap:6px;
    margin-top:11px;
}

.sar-task-data:empty{
    display:none;
}

.sar-task-data>div{
    padding:8px 9px;
    border:1px solid #2c4056;
    border-radius:7px;
    background:#0b1622;
    color:#d4e0e9;
    font:750 11px ui-monospace,SFMono-Regular,Menlo,monospace;
    line-height:1.4;
}

.sar-task-options{
    display:grid;
    gap:7px;
    margin-top:10px;
}

.sar-task-option{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:9px;
    align-items:center;
    min-height:44px;
    padding:8px 10px;
    border:1px solid #2e4359;
    border-radius:8px;
    background:#0b1622;
    color:#c7d5e1;
    font-size:10px;
    line-height:1.35;
    cursor:pointer;
}

.sar-task-option:hover{
    border-color:#4c7897;
    background:#102235;
}

.sar-task-option:has(input:checked){
    border-color:#38bdf8;
    background:#0d3345;
    color:#e4f6ff;
}

.sar-task-option input{
    width:17px;
    height:17px;
    margin:0;
    accent-color:#38bdf8;
}

.sar-task-option:has(input:disabled){
    cursor:default;
}

.sar-task-number{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:10px;
}

.sar-task-number input{
    width:100%;
    min-width:0;
    padding:10px 11px;
    border:1px solid #31445c;
    border-radius:8px;
    outline:none;
    background:#08131f;
    color:#fff;
    font:800 16px ui-monospace,SFMono-Regular,Menlo,monospace;
}

.sar-task-number input:focus{
    border-color:#38bdf8;
}

.sar-task-number span{
    color:#a7bacb;
    font-size:12px;
    font-weight:800;
}

.sar-task-answer-note{
    margin-top:9px;
    padding:8px 9px;
    border-left:3px solid #475569;
    border-radius:6px;
    background:#0b1622;
    color:#8fa4b8;
    font-size:10px;
    line-height:1.4;
}

.sar-task-answer-note.correct{
    border-color:#22c55e;
    background:#0f2f24;
    color:#86efac;
}

.sar-task-answer-note.wrong{
    border-color:#fb7185;
    background:#33141b;
    color:#fda4af;
}

.sar-task-answer-note.warning{
    border-color:#f59e0b;
    background:#2b1d08;
    color:#fcd34d;
}

.sar-task-progress{
    display:grid;
    grid-template-columns:repeat(8,1fr);
    gap:5px;
    margin-top:11px;
}

.sar-task-progress span{
    min-width:0;
    aspect-ratio:1;
    display:grid;
    place-items:center;
    border:1px solid #31445c;
    border-radius:7px;
    background:#0b1622;
    color:#8fa4b8;
    font-size:10px;
    font-weight:900;
}

.sar-task-progress span.current{
    border-color:#38bdf8;
    background:#0d3345;
    color:#7dd3fc;
}

.sar-task-progress span.correct{
    border-color:#166534;
    background:#0f2f24;
    color:#86efac;
}

.sar-task-progress span.wrong{
    border-color:#9f1239;
    background:#33141b;
    color:#fda4af;
}

.sar-task-feedback{
    margin-top:10px;
    padding:10px;
    border:1px solid #2c4056;
    border-radius:8px;
    background:#0b1622;
    color:#a9bac9;
    font-size:10px;
    line-height:1.5;
}

.sar-task-result{
    margin-top:10px;
    padding:12px;
    border:1px solid #2d4b61;
    border-radius:9px;
    background:#0b1622;
}

.sar-task-result strong,
.sar-task-result span{
    display:block;
}

.sar-task-result strong{
    color:#7dd3fc;
    font-size:21px;
}

.sar-task-result span{
    margin-top:6px;
    color:#9fb0c0;
    font-size:10px;
    line-height:1.45;
}

#tasksRunPanel{
    justify-content:flex-end;
}

#tasksRunPanel .sar-btn{
    flex:0 1 auto;
    min-width:112px;
}

#tasksRunPanel button:disabled{
    opacity:.38;
    cursor:not-allowed;
}

@media(max-width:760px){
    .sar-task-progress{
        grid-template-columns:repeat(4,1fr);
    }

    #tasksRunPanel .sar-btn{
        flex:1 1 130px;
    }
}
