.lab{min-width:0}.lab-heading{display:flex;gap:24px;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.lab-heading h1{margin:10px 0}.lab-heading p{max-width:760px;font-size:13px}.lab-project-tabs,.lab-sheet-tabs{display:flex;gap:8px;flex-wrap:wrap}.lab-project-tabs{margin-bottom:24px}.lab-project-tabs button,.lab-sheet-tabs button{padding:11px 16px;border:1px solid #526271;background:#222d3c;color:#acbccb;font-size:12px}.lab-project-tabs button.selected,.lab-sheet-tabs button.selected{background:#304b3c;color:#d1ead4;border-color:#92b99a}.lab-brief{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}.lab-brief h2{margin:8px 0}.lab-brief p{font-size:13px;max-width:730px}.lab-downloads{display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.lab-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:start}.lab-objectives{padding:22px}.lab-objectives h2{margin:20px 0 10px}.lab-objectives>p{font-size:12px}.lab-progress{border-bottom:1px solid #465267;padding-bottom:17px}.lab-progress b{display:block;font:13px Consolas,monospace;color:#c6e4bc}.lab-progress span{display:block;color:#9daabd;font-size:11px;margin-top:6px}.lab-task{padding:16px 0;border-bottom:1px solid #3b4a59}.lab-task-title{display:flex;gap:9px;align-items:flex-start}.lab-task-title>span{color:#8b9bb2;font:18px Consolas,monospace}.lab-task-title h3{font-size:12px;line-height:1.8}.lab .passed{color:#a8dfb7}.lab-task-actions{display:flex;gap:18px;margin-top:9px}.lab-task button.text-link{background:none;border:0;padding:0;font-size:10px}.lab details{font-size:11px;margin-top:10px}.lab summary{cursor:pointer;color:#a3c7bb}.lab details p{font-size:11px;margin-top:9px}.lab-task-feedback{font-size:11px;margin-top:10px;color:#dbc292}.lab-objectives>[data-check-project]{width:100%;margin-top:22px}.lab-feedback{font-size:12px;color:#ddc599;margin-top:15px}.lab-example{padding-top:16px;border-top:1px solid #435261}.lab-example .btn{font-size:10px;margin-top:12px}.lab-workspace{min-width:0}.lab-controls{padding:22px;margin-bottom:20px}.lab-controls>p,.lab-chart-panel>p{font-size:11px;margin:8px 0 20px}.lab-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.lab-control-grid form{min-width:0}.lab-control-grid h3{font-size:12px;margin-bottom:12px;color:#c6d8ce}.lab label{display:flex;flex-direction:column;gap:5px;color:#a9bac7;font-size:10px;margin:9px 0}.lab select,.lab input{background:#172730;border:1px solid #52626c;color:#e1e8df;border-radius:2px;padding:9px;min-width:0;width:100%;font-size:11px}.lab .btn{white-space:normal}.lab-control-grid .btn{padding:8px 10px;font-size:10px;margin-top:7px;min-height:35px}.lab-control-grid .quiet{font-size:10px;margin-left:10px}.lab-view-state{margin-top:20px;color:#b5c1ce;font:10px/1.7 Consolas,monospace}.lab-sheet-tabs{gap:3px}.lab-sheet-tabs button{border-bottom:0;border-radius:3px 3px 0 0}.lab-sheet-scroll{overflow:auto;max-height:640px;border:1px solid #52666d;background:#192a32}.lab-sheet{border-collapse:separate;border-spacing:0;width:100%;font:11px Consolas,monospace}.lab-sheet caption{text-align:left;padding:11px;background:#233d37;color:#b7d5c0;font-size:10px;caption-side:top}.lab-sheet th,.lab-sheet td{border-right:1px solid #354b56;border-bottom:1px solid #354b56;padding:10px;min-width:102px;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis}.lab-sheet thead th{position:sticky;top:0;z-index:2;background:#2d463c;color:#d6e4cf;text-align:left}.lab-sheet thead th span{display:block;font-size:9px;color:#8ea997;margin-bottom:5px}.lab-sheet tbody th{position:sticky;left:0;z-index:1;background:#2b3a46;color:#9eb0bb;text-align:center;min-width:45px;padding:6px}.lab-sheet td{color:#b6c6d2}.lab-sheet .lab-editable{background:#203a32;min-width:160px;padding:6px}.lab-sheet .lab-editable input{padding:8px;width:150px;font:11px Consolas,monospace;border-color:#4c7763}.lab-sheet output{display:block;color:#c3e2c7;font-size:10px;min-height:20px;padding:4px 3px 0}.lab-sheet td.lab-highlight{background:#6b502d;color:#fff0ba;box-shadow:inset 0 0 0 1px #b99155}.lab-sheet td.lab-highlight output{color:#fff0ba}.lab-chart-panel{margin-top:24px;padding:24px}.lab-chart-form{display:grid;grid-template-columns:120px 160px minmax(130px,1fr);gap:12px;align-items:end}.lab-chart-form>.btn{grid-column:1/-1;justify-self:start;min-height:35px;font-size:10px}.lab-chart-panel [data-chart]{margin-top:26px;border:1px solid #455b60;background:#182c30;padding:22px}.lab-chart-panel [data-chart] h3{font-size:14px;color:#d9e3cf;margin-bottom:25px}.lab-bars{display:grid;gap:15px}.lab-bar-row{display:grid;grid-template-columns:100px minmax(30px,1fr) 95px;gap:12px;align-items:center;font:11px Consolas,monospace}.lab-bar-row>span{overflow:hidden;text-overflow:ellipsis}.lab-bar-row>div{position:relative;height:23px;background:#273e3f}.lab-bar-row i{position:absolute;top:0;display:block;height:100%;background:linear-gradient(90deg,#649c7e,#b1d9a6);border:1px solid #b5d7ac}.lab-bar-row b{text-align:right;color:#d1dfc4;font-weight:400}.lab-empty{font-size:12px;color:#a6b7bc}.lab-chart-error{font-size:12px;color:#e6c493}.lab-chart-data{margin-top:20px!important}.lab-chart-data table{width:100%;border-collapse:collapse;margin-top:12px}.lab-chart-data caption{font-size:10px;margin-bottom:10px}.lab-chart-data td,.lab-chart-data th{padding:8px;border:1px solid #40565c;text-align:left}.lab-line-chart{display:block;width:100%;max-height:260px}.lab-limit-note{font-size:11px;margin-top:20px;color:#92a4b2}.lab .lab-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1250px){.lab-layout{grid-template-columns:260px minmax(0,1fr)}.lab-control-grid{grid-template-columns:1fr 1fr}.lab-control-grid form:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 12px}.lab-control-grid form:last-child h3,.lab-control-grid form:last-child button{grid-column:1/-1}.lab-chart-form{grid-template-columns:1fr 1fr}.lab-chart-form>label:last-of-type{grid-column:1/-1}}@media(max-width:1050px){.lab-layout{grid-template-columns:1fr}.lab-objectives{order:1}.lab-workspace{order:2}.lab-objectives [data-task-list]{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.lab-control-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-control-grid form:last-child{display:block;grid-column:auto}.lab-heading{display:block}.lab-heading>a{display:inline-block;margin-top:12px}}@media(max-width:600px){.lab input,.lab select,.lab-sheet .lab-editable input{font-size:16px;min-height:44px}.lab-control-grid .btn,.lab-chart-form>.btn{min-height:44px}.lab-heading h1{font-size:25px}.lab-project-tabs{display:grid;grid-template-columns:1fr;width:100%}.lab-project-tabs button{text-align:left}.lab-brief{display:block;padding:22px}.lab-downloads{align-items:flex-start;margin-top:20px}.lab-control-grid{grid-template-columns:1fr}.lab-control-grid form{border-top:1px solid #3a5059;padding-top:15px}.lab-control-grid form:last-child{grid-column:auto}.lab-controls,.lab-chart-panel{padding:18px}.lab-objectives [data-task-list]{display:block}.lab-chart-form{grid-template-columns:1fr}.lab-chart-form>label:last-of-type{grid-column:auto}.lab-bar-row{grid-template-columns:78px minmax(25px,1fr) 72px;gap:7px;font-size:9px}.lab-chart-panel [data-chart]{padding:15px}.lab-sheet-scroll{max-height:520px}.lab-task-title h3{font-size:13px}.lab .text-link{min-height:32px;display:inline-flex;align-items:center}.lab-project-tabs button,.lab-sheet-tabs button{min-height:44px}}

.lab-bar-row i.negative{background:#ba8977;border-color:#e1b59b}

/* Keep accessible labels within each scrollable formula cell. */
.lab-editable{position:relative}

