/* Новые учебные сцены дополняют существующий интерфейс Vector Laboratory */
#lab-experience {margin:0 0 34px;border:1px solid #34463d;border-radius:13px;background:linear-gradient(135deg,#19221e 0%,#11191b 66%);padding:26px 28px 24px;scroll-margin-top:22px}
#lab-experience button {font-family:inherit}
.lab-intro {display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}
.lab-intro h2 {font-family:Manrope,sans-serif;margin:7px 0 5px;font-size:27px;letter-spacing:-1px}
.lab-intro h2 em {font-style:normal;color:#caff81}
.lab-intro p {color:#96a89d;font-size:12px;line-height:1.65;margin:0;max-width:690px}
.lab-mode-badge,.lab-provenance {display:inline-flex;align-items:center;border:1px solid #496246;border-radius:5px;color:#b7db98;font-size:9px;font-weight:800;letter-spacing:.6px;padding:7px 9px;white-space:nowrap}
.lab-tabs {display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid #34433c;margin-bottom:20px;padding-bottom:12px}
.lab-tabs button,.lab-flow-switch button {border:1px solid #39453f;color:#9cad9f;background:#16201e;padding:10px 14px;border-radius:6px;font-size:11px;font-weight:700;transition:background .15s}
.lab-tabs button:hover,.lab-flow-switch button:hover {background:#293a2d}
.lab-tabs button.active,.lab-flow-switch button.active {background:#caff81;border-color:#caff81;color:#192417}
.lab-view[hidden] {display:none!important}
.lab-subhead {display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px}
.lab-subhead p {font-size:12px;line-height:1.65;color:#abbbb1;margin:0;max-width:780px}
.lab-subhead strong {color:#ecf0e9}
.lab-flow-switch {display:flex;gap:8px;margin-bottom:20px}
.lab-pipeline {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:15px 0 18px}
.lab-node {position:relative;border:1px solid #3c5042;border-radius:9px;min-height:94px;padding:14px 9px;text-align:left;background:#1a2621;color:#bfd0c1;display:flex;flex-direction:column;gap:12px;justify-content:space-between}
.lab-node::after {content:'›';position:absolute;right:-10px;top:33px;z-index:2;color:#b6cbb4;font-size:21px;pointer-events:none}
.lab-node:last-child::after {display:none}
.lab-node small {color:#83a185;font-size:10px;font-weight:800}
.lab-node strong {font-size:11px;line-height:1.3;font-weight:750}
.lab-node.visited {border-color:#78a366}
.lab-node.active {background:#34492e;color:#e9ffd7;border:2px solid #caff81;box-shadow:0 0 0 3px #caff8111}
.lab-stage-detail {background:#101a18;border:1px solid #2e4537;border-radius:9px;padding:21px;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.65fr);gap:20px}
.lab-kicker {font-size:10px;font-weight:800;letter-spacing:1px;color:#caff81}
.lab-stage-detail h3 {font-family:Manrope,sans-serif;font-size:20px;margin:9px 0 8px}
.lab-stage-detail p {color:#b0c0b5;line-height:1.7;font-size:12px;margin:0}
.lab-stage-detail dl {display:grid;gap:12px;margin:0}
.lab-stage-detail dt {color:#80998a;font-size:9px;letter-spacing:1px;font-weight:800}
.lab-stage-detail dd {color:#e3ede1;font-size:11px;margin:3px 0 0}
.lab-action-row {display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:18px}
.lab-action-row .outline-btn {font-size:11px}
.lab-action-row .text-btn {padding:11px 7px}
.lab-takeaway {margin-top:17px;border-left:3px solid #b8e88b;padding:10px 15px;background:#223127;color:#abc7ad;font-size:11px;line-height:1.7;border-radius:2px 6px 6px 2px}
.lab-takeaway strong {color:#e8f5df}
.lab-controls {display:flex;gap:30px;flex-wrap:wrap;padding:12px 0 20px}
.lab-controls label {min-width:180px;max-width:300px;flex:1;color:#9eb6a4;font-size:11px;display:grid;gap:9px}
.lab-controls label strong {color:#d4f4c3}
.lab-controls input[type=range] {width:100%;accent-color:#caff81;cursor:pointer}
.lab-controls label.lab-checkbox-label {display:flex;align-items:center;min-width:185px;font-size:11px;gap:9px}
.lab-checkbox-label input {accent-color:#caff81}
.lab-text-label,.lab-sizing-grid label {color:#a6b6ab;font-size:11px;display:grid;gap:8px}
#lab-text {width:100%;resize:vertical;border:1px solid #405248;border-radius:7px;background:#101918;color:#dae9da;padding:14px;line-height:1.65;margin:8px 0 15px;font-size:12px}
.lab-metric-row {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.lab-metric-row>div {flex:1;min-width:145px;background:#13201b;border:1px solid #33483b;border-radius:8px;padding:11px 14px;display:flex;flex-direction:column;gap:4px;color:#7fa28a;font-size:10px;letter-spacing:.3px}
.lab-metric-row strong {font-family:Manrope,sans-serif;font-size:19px;color:#caff81;letter-spacing:-.3px;overflow-wrap:anywhere}
.lab-chunk-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.lab-chunk-layout>div {background:#121d1a;border:1px solid #304239;border-radius:8px;padding:16px;min-width:0}
.lab-chunk-layout h3 {font-family:Manrope,sans-serif;font-size:12px;margin-bottom:12px}
.lab-token-preview {line-height:2.25;color:#94a49b;font-size:11px}
.lab-token-preview span {border-radius:3px;padding:3px 2px}
.lab-token-preview span.highlight {background:#43613a;color:#f1ffe5}
.lab-token-preview span.overlap {background:repeating-linear-gradient(120deg,#416448,#416448 4px,#1f4434 4px,#1f4434 8px);color:#f1ffe5}
.lab-chunk-cards {display:grid;gap:8px;max-height:350px;overflow:auto}
.lab-chunk-card {background:#17231e;border:1px solid #3a4a40;border-radius:7px;padding:11px;text-align:left;display:grid;gap:6px;color:#93aca0;line-height:1.5;font-size:10px}
.lab-chunk-card strong {color:#e1edda;font-size:11px}
.lab-chunk-card.active {border-color:#caff81;background:#273d29}
.lab-chunk-card span {max-height:52px;overflow:hidden}
.lab-hint {color:#94a79a;font-size:10px;line-height:1.75;margin:14px 0 0}
.lab-hint strong {color:#d5e6d5}
.lab-job-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.lab-job {border:1px solid #34463a;border-radius:7px;background:#15201c;padding:11px 13px;display:grid;grid-template-columns:1fr auto;gap:9px 6px;align-items:center}
.lab-job strong {color:#d8e8db;font-size:11px}
.lab-job>span {color:#b7ccba;font-size:10px}
.lab-job.failed {border-color:#9a614a}
.lab-job.failed>span {color:#e99a83}
.lab-job-meter {grid-column:1/-1;height:4px;border-radius:10px;background:#2d3c32;overflow:hidden}
.lab-job-meter i {display:block;height:100%;background:#bcea88;transition:width .2s}
.lab-real-progress {margin-top:19px;background:#0f1c19;border:1px solid #415a47;padding:14px;border-radius:8px;display:grid;gap:8px}
.lab-real-progress strong {color:#dcebd2;font-size:13px}
.lab-real-progress p {font-size:11px;color:#8ca699;margin:0;line-height:1.6}
.lab-sizing-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:17px}
.lab-sizing-grid input,.lab-sizing-grid select {width:100%;min-width:0;background:#101a18;border:1px solid #405144;color:#dfead9;border-radius:6px;padding:10px;font-size:12px}
.lab-error {color:#ef9a87;font-size:11px}
@media(max-width:1100px){
 .lab-pipeline {grid-template-columns:repeat(3,minmax(0,1fr))}
 .lab-node:nth-child(3)::after {display:none}
 .lab-sizing-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 #lab-experience {padding:19px 14px;margin-bottom:24px}
 .lab-intro {align-items:flex-start;flex-direction:column}
 .lab-intro h2 {font-size:23px}
 .lab-subhead {flex-wrap:wrap}
 .lab-pipeline {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .lab-node {min-height:77px;padding:11px}
 .lab-node:nth-child(3)::after {display:block}
 .lab-node:nth-child(2n)::after {display:none}
 .lab-stage-detail {grid-template-columns:1fr}
 .lab-chunk-layout,.lab-job-list {grid-template-columns:1fr}
 .lab-sizing-grid {grid-template-columns:1fr 1fr}
 .lab-mode-badge {white-space:normal}
 /* На телефоне возвращаем навигацию, которая была полностью скрыта */
 .sidebar nav {display:flex;overflow:auto;gap:5px;padding-top:13px}
 .sidebar nav .nav-link {display:flex;flex:0 0 auto;min-height:38px;padding:8px 10px}
 .sidebar nav .nav-badge {display:none}
 .lab-controls {gap:15px}
 .lab-action-row button {flex:1}
}
@media(max-width:420px){.lab-sizing-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.lab-job-meter i,.lab-tabs button,.lab-flow-switch button{transition:none!important}}

/* Сопоставление реальных BM25, cosine и RRF */
#lab-comparison {margin:0 0 38px;scroll-margin-top:25px}
.lab-comparison-intro {font-size:12px;color:#94a99a;line-height:1.7;max-width:900px;margin:14px 0}
.lab-compare-controls {display:flex;gap:18px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:15px}
.lab-compare-controls label {display:flex;align-items:center;gap:11px;font-size:11px;color:#b5c9ba}
.lab-compare-controls input {accent-color:#caff81}
.lab-compare-controls strong {color:#caff81}
.lab-comp-query {color:#a2b89f;font-size:11px;overflow-wrap:anywhere}
.lab-comparison-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lab-comparison-column {background:#141c1b;border:1px solid #34443c;border-radius:9px;padding:17px;min-width:0}
.lab-comparison-column h3 {font-family:Manrope,sans-serif;color:#dff3d6;font-size:16px;margin:0 0 5px}
.lab-comparison-column h3 small {font-family:inherit;color:#89a18f;font-size:10px}
.lab-comparison-column p {font-size:10px;color:#8da393;line-height:1.65;min-height:37px}
.lab-score-list {list-style:none;padding:0;margin:0;display:grid;gap:7px}
.lab-score-list li {background:#1d2922;border:1px solid #304438;border-radius:7px;padding:10px 9px;min-height:46px}
.lab-score-list li>div {display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px}
.lab-score-list strong {color:#cbded0;font-size:10px;line-height:1.45;min-width:0;overflow-wrap:anywhere}
.lab-score-list small {font-variant-numeric:tabular-nums;color:#baf087;font-size:10px;white-space:nowrap}
.lab-rank-place {font-size:10px;color:#819b8d}
.lab-score-list .lab-score-empty {color:#adbfaf;line-height:1.6;font-size:11px;display:flex;align-items:center}
@media(max-width:1080px){.lab-comparison-grid {grid-template-columns:1fr}}
