.lab-page { padding-block: 60px; } .lab-page h1 { font-size: clamp(48px, 6vw, 76px); }
.lab-lead { color: var(--muted); max-width: 660px; line-height: 1.8; margin-bottom: 34px; }
#lab-terminal { min-width: 0; height: 440px; padding: 16px; overflow: hidden; }
#lab-terminal .xterm { height: 100%; } .lab-placeholder { color: #92ae9d; padding: 15px; font: 12px/1.8 ui-monospace, monospace; }
#lab-status { margin: 18px 24px; font: 11px/1.8 ui-monospace, monospace; color: #a9c9b3; }
.lab-actions { display: flex; flex-wrap: wrap; gap: 9px; margin: 20px 0; }
.lab-actions button, .lab-files button { border: 1px solid #40564a; color: var(--mint); background: #15221a; border-radius: 5px; padding: 11px 14px; font-size: 12px; }
.lab-actions button:disabled, .lab-files button:disabled { opacity: .4; cursor: default; }
.lab-files { padding: 22px; border: 1px solid var(--line); border-radius: 6px; display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.lab-files label { display: block; font-size: 12px; color: #b8cebf; margin-bottom: 12px; }
.lab-files input { max-width: 100%; font-size: 11px; } #lab-transfer-status { width: 100%; margin: 0; font-size: 11px; color: var(--muted); line-height: 1.8; }
.lab-guide { max-width: 850px; padding-top: 40px; line-height: 1.9; font-size: 14px; color: #b6cbbd; }
.lab-guide h2 { color: var(--ink); font-size: 25px; line-height: 1.3; margin-top: 36px; }
.lab-guide a { color: var(--mint); border-bottom: 1px solid #40564a; }
.lab-guide pre { background: #11191c; border: 1px solid var(--line); border-radius: 6px; padding: 20px; white-space: pre-wrap; overflow-wrap: anywhere; font: 12px/1.9 ui-monospace, monospace; }
@media (max-width: 600px) { .lab-page { padding-top: 35px; } #lab-terminal { height: 390px; padding: 8px; } .lab-files { padding: 17px; } .lab-guide { font-size: 13px; } }
