
.labs-layout{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:24px}.lab-list,.lab-detail{padding:24px;min-width:0}.lab-list h2{margin-top:0}.lab-list-item{display:block;width:100%;text-align:left;margin-top:14px;padding:16px;border-radius:12px;background:var(--surface,#202c35);border:1px solid var(--line);color:inherit;cursor:pointer}.lab-list-item[aria-current=true]{border-color:#d9ee80;background:var(--green-bg,#eaf1d8)}.lab-list-item small{display:block;margin-top:8px;color:var(--muted)}.lab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lab-grid label{display:flex;flex-direction:column;gap:8px}.lab-grid input,.lab-grid select,.lab-grid textarea{width:100%;min-height:44px;box-sizing:border-box}.lab-nodes{display:grid;gap:20px;margin:24px 0}.lab-node{border:1px solid var(--line);border-radius:14px;padding:22px}.lab-node header,.lab-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.lab-node h3{margin:0}.lab-node .lab-grid{margin-top:18px}.lab-hint{color:var(--muted);line-height:1.6}.lab-status{padding:12px;border-radius:8px;background:var(--bg);margin:14px 0;overflow-wrap:anywhere}.lab-status[data-state=connected]{border-left:3px solid #d9ee80}.lab-status[data-state]:not([data-state=connected]){border-left:3px solid var(--red,#b43d38)}#lab-error{color:var(--red,#b43d38)}.lab-block{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.lab-bind-result{padding:12px;white-space:pre-wrap}.lab-detail p{max-width:none}.lab-node dl{display:grid;grid-template-columns:180px 1fr;gap:12px}.lab-node dd{margin:0;overflow-wrap:anywhere}.lab-node dt{color:var(--muted)}@media(max-width:850px){.labs-layout{grid-template-columns:1fr}.lab-list{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.lab-list h2{width:100%}#lab-list{display:flex;flex-wrap:wrap;gap:12px}.lab-list-item{width:auto;margin:0}.lab-grid{grid-template-columns:1fr}.lab-node dl{grid-template-columns:1fr}.lab-node dd{margin-bottom:10px}.lab-list,.lab-detail{padding:18px}}

.lab-grid input,.lab-grid select,.lab-grid textarea{padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font:inherit}.lab-list-item{color:var(--ink)!important}.lab-list-item[aria-current=true]{background:var(--green-bg,#eaf1d8)!important}.lab-status{color:var(--ink)}

/* Calm learner overview and one useful empty state. */
body[data-lab-role=intern] .operator-nav{display:flex;flex-wrap:wrap;gap:8px;padding:8px;background:var(--surface);border-color:var(--line);margin-bottom:32px}
body[data-lab-role=intern] .operator-nav a{min-height:44px;padding:12px 18px;border-radius:9px;display:inline-flex;align-items:center}
body[data-lab-role=intern] .page-heading{margin-bottom:24px}
body[data-lab-role=intern] .page-heading h1{margin:8px 0 14px}
body[data-lab-role=intern] .page-subtitle{max-width:760px;line-height:1.65;margin:0}
#lab-notice:not([hidden]){margin:0 0 20px;line-height:1.6;color:var(--muted)}
.labs-layout[data-layout=empty],.labs-layout[data-layout=single]{grid-template-columns:minmax(0,1fr)}
.labs-layout[data-layout=empty] .lab-list,.labs-layout[data-layout=single] .lab-list{display:none}
.labs-layout[data-layout=empty] .lab-detail{padding:0;overflow:hidden}
.lab-empty{text-align:center;padding:44px 24px 36px;display:flex;flex-direction:column;align-items:center}
.lab-empty-icon{display:grid;place-items:center;width:76px;height:76px;border:1px solid var(--line);border-radius:22px;background:var(--bg);color:var(--accent);margin-bottom:22px}
.lab-empty-icon svg{width:42px;height:42px}
.lab-empty h2{font-size:24px;line-height:1.3;margin:0 0 14px}
.lab-empty .lab-hint{max-width:540px;margin:0;line-height:1.75}
.lab-empty-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:26px}
.lab-empty-actions .button{min-height:46px;padding:13px 20px}
.lab-start-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid var(--line);padding:26px 32px;background:var(--bg)}
.lab-start-step{display:flex;align-items:flex-start;gap:12px;min-width:0}
.lab-step-number{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--surface);border:1px solid var(--line);font-weight:700;color:var(--muted)}
.lab-start-step h3{margin:2px 0 8px;font-size:14px;line-height:1.4}
.lab-start-step p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.lab-detail h2{margin-top:0;margin-bottom:16px}.lab-detail>p{margin:12px 0;line-height:1.65}
.lab-block h3{margin:0 0 12px}.lab-block>p{margin-bottom:20px;line-height:1.65}.lab-block .lab-grid{margin:16px 0 20px}
.lab-block>.button{margin-right:10px;margin-bottom:12px}.lab-bind-result p{margin:10px 0;line-height:1.65}
@media(max-width:600px){body[data-lab-role=intern] .operator-nav{gap:4px;margin-bottom:24px}body[data-lab-role=intern] .operator-nav a{padding:10px 12px;font-size:13px}.lab-empty{padding:30px 18px}.lab-empty h2{font-size:21px}.lab-empty-actions{width:100%;flex-direction:column}.lab-empty-actions .button{width:100%;text-align:center;justify-content:center}.lab-start-guide{grid-template-columns:1fr;padding:22px 18px;gap:20px}}

.connectivity-criterion{padding:20px;margin:16px 0;border:1px solid var(--border,#3a4d58);border-radius:12px}.connectivity-block>.button,.connectivity-block>div>.button{margin:8px 8px 8px 0}.connectivity-table-wrap{overflow-x:auto;margin-top:18px}.connectivity-table{width:100%;border-collapse:collapse;font-size:1rem}.connectivity-table th,.connectivity-table td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--border,#3a4d58);overflow-wrap:anywhere}.connectivity-table th{color:var(--muted,#b8c8d2)}.connectivity-table [data-state="matched"] td:last-child{color:#d9ee85}.connectivity-table [data-state="technical_error"] td:last-child,.connectivity-table [data-state="indeterminate"] td:last-child{color:#efc58c}@media(max-width:650px){.connectivity-table th,.connectivity-table td{padding:10px;font-size:.9rem}.connectivity-criterion{padding:12px}.connectivity-table-wrap{max-width:100%}}

@media(min-width:651px){.connectivity-table th:nth-child(2),.connectivity-table td:nth-child(2),.connectivity-table th:nth-child(3),.connectivity-table td:nth-child(3){white-space:nowrap;overflow-wrap:normal}}
@media(max-width:650px){.connectivity-table thead{display:none}.connectivity-table,.connectivity-table tbody,.connectivity-table tr,.connectivity-table td{display:block;width:auto}.connectivity-table tr{padding:12px 0;border-bottom:1px solid var(--line)}.connectivity-table td{border:0;padding:6px 0}.connectivity-table td:first-child{font-weight:700}.connectivity-table td:nth-child(2)::before{content:'Способ: ';color:var(--muted)}.connectivity-table td:nth-child(3)::before{content:'Ожидание: ';color:var(--muted)}}

.lab-device-icon{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;color:var(--ink);flex:none}.lab-device-icon svg{width:26px;height:26px}.lab-node header h3{flex:1}.lab-task-overview{padding:22px;background:var(--bg);border:1px solid var(--line);border-radius:14px;margin:24px 0}.lab-task-condition p{white-space:pre-wrap;overflow-wrap:anywhere}.lab-steps{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}.node-criteria{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.node-criteria>div{padding:12px 0;border-bottom:1px solid var(--line)}.node-criteria small{color:var(--muted)}.lab-preflight-node{border:1px solid var(--line);padding:16px;border-radius:10px;margin:12px 0;overflow-wrap:anywhere}.lab-preflight-error{padding:12px;border-left:3px solid var(--red);background:var(--bg)}.lab-processing-status{padding:12px;border-left:3px solid var(--accent);background:var(--bg)}#lab-attempt-history{margin-top:28px}#lab-task-overview,#lab-nodes,#lab-evidence-files,#lab-attempt-history{scroll-margin-top:24px}
