/* Uses the existing PYMEHackers tokens; all content remains visible on mobile. */
#lab-workspace, #lab-workspace * { min-width: 0; box-sizing: border-box; }
#lab-workspace { overflow-wrap: anywhere; }
.lab-nav { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1.2rem 0; }
.lab-nav a { padding: .4rem .8rem; border: 1px solid var(--border, #3a3a3a); border-radius: 2rem; }
.lab-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.lab-form { display: grid; gap: .75rem; margin-top: 1rem; }
.lab-form input, .lab-form textarea, .lab-form select { width: 100%; max-width: 100%; }
.lab-form input[type="checkbox"] { width: auto; }
.lab-tools { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,14rem),1fr)); gap: .5rem; border: 1px solid #3a3a3a; padding: .8rem; border-radius: .75rem; }
.lab-tools label { display: flex; align-items: flex-start; gap: .5rem; overflow-wrap: anywhere; }
.lab-row { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem; }
.lab-row > * { min-width: 0; }
.lab-result { border-left: 3px solid #d22c21; padding: .8rem; margin: .7rem 0; }
#lab-workspace pre, #lab-login pre { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .85rem; }
.lab-table { width: 100%; table-layout: fixed; }
.lab-table th, .lab-table td { vertical-align: top; overflow-wrap: anywhere; white-space: normal; }
.lab-flow { display: grid; gap: .5rem; padding: .7rem; border: 1px solid #3a3a3a; border-radius: .7rem; }
.lab-step { border-left: 3px solid #d22c21; padding: .5rem .8rem; }
.lab-message { white-space: pre-wrap; overflow-wrap: anywhere; }
#lab-notice { white-space: pre-wrap; overflow-wrap: anywhere; }
#lab-workspace details > summary { cursor: pointer; font-weight: 700; }
#lab-workspace section { scroll-margin-top: 6rem; }
@media (max-width: 700px) { .lab-grid { grid-template-columns: minmax(0,1fr); } .lab-table th, .lab-table td { padding: .35rem; font-size: .8rem; } }
