
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#19283a;background:#edf2f6;font-synthesis:none;--ink:#152438;--muted:#718094;--line:#dce5ed;--aqua:#047e83;--nav:#121f32;--nav2:#203349;--orange:#efaa50;--green:#147e65;--paper:#fff}*{box-sizing:border-box}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible{outline:3px solid #57c8c4;outline-offset:2px}.app{display:grid;grid-template-rows:70px minmax(0,1fr);height:100vh;height:100dvh;min-height:0;overflow:hidden}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--nav);color:white;padding:0 24px;border-bottom:1px solid #324157}.brand{display:flex;align-items:center;gap:12px;min-width:215px}.logo{width:39px;height:39px;background:#22aca8;display:grid;place-items:center;border-radius:12px;color:white;box-shadow:0 4px 16px #14c9c055;font-size:25px;font-weight:700}.brand h1{font-size:18px;line-height:1.05;margin:0;letter-spacing:-.7px}.brand small{display:block;color:#9baec2;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;margin-top:5px}.topMid{flex:1;display:flex;justify-content:center;align-items:center;gap:12px;color:#c1d0dc;font-size:12px}.topMid strong{color:white;font-weight:700}.topActions{display:flex;align-items:center;gap:8px}.pillBtn,.plainBtn,.accentBtn,.outlineBtn{border:1px solid transparent;border-radius:9px;padding:9px 13px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:7px;justify-content:center;white-space:nowrap}.pillBtn{background:#2a3b50;color:#dce6ef}.pillBtn:hover{background:#3b5168}.accentBtn{color:#fff;background:#087e80}.accentBtn:hover{background:#056c70}.outlineBtn{background:white;border-color:#d8e2eb;color:#344359}.outlineBtn:hover{background:#f1f8f8}.plainBtn{background:transparent;color:#668196}.plainBtn:hover{background:#edf2f4}.iconBtn{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:transparent;border:1px solid var(--line);color:#486071;font-size:16px}.iconBtn:hover{background:#eaf6f6;color:#047e83}.shell{display:grid;grid-template-columns:252px minmax(400px,1fr) 306px;min-height:0;min-width:0;overflow:hidden}.left{background:var(--nav);color:#dce6ed;overflow-y:auto;padding:20px 13px 28px;border-right:1px solid #23364a}.sideHeading{color:#8299ad;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;padding:2px 11px;margin:8px 0 12px;display:flex;justify-content:space-between}.lesson{border:1px solid transparent;background:transparent;color:#b2c2d1;width:100%;padding:11px 10px;text-align:left;display:flex;align-items:center;gap:10px;border-radius:11px;margin-bottom:3px;font-size:12px;line-height:1.25}.lesson:hover{background:#23344a;color:white}.lesson.active{border-color:#3e7479;background:#1e4d54;color:#fff}.lesson .lessonNum{flex:none;width:27px;height:27px;border:1px solid #3a4b5e;border-radius:8px;display:grid;place-items:center;font-size:11px;font-weight:700;color:#9eb4c8}.lesson.active .lessonNum{border-color:#2bbdb6;color:#7be9db}.lesson.done .lessonNum{background:#146f61;border-color:#146f61;color:white}.lesson .lessonName{display:block;font-weight:700}.lesson .lessonTag{display:block;margin-top:3px;color:#7994a8;font-size:10px}.lesson.active .lessonTag{color:#90d6d5}.leftDivider{height:1px;background:#2a3a4e;margin:20px 8px}.parts{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:0 7px}.part{border:1px solid #35495c;background:#203247;color:#c8d8e5;border-radius:10px;min-height:77px;padding:7px 3px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;font-weight:700}.part:hover,.part.placing{background:#155b62;color:white;border-color:#279994}.part svg{width:65px;height:35px;overflow:visible}.stage{display:flex;flex-direction:column;min-width:0;background:#f3f7f9;min-height:0;overflow:hidden}.stageHeader{min-height:86px;padding:19px 23px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.stageHeader h2{margin:0;font-size:20px;letter-spacing:-.65px}.stageHeader p{margin:6px 0 0;color:#74859a;font-size:12px}.stageTabs{display:flex;gap:4px;background:#e1e9ef;border-radius:10px;padding:4px}.tab{border:0;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:700;color:#5f7183;background:transparent}.tab.active{background:white;box-shadow:0 2px 5px #26384a13;color:#067d82}.toolstrip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 21px 12px;flex-wrap:wrap}.tools{display:flex;align-items:center;gap:5px}.tool{background:white;border:1px solid var(--line);color:#536779;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700}.tool.active{color:#007d7e;background:#e2f6f3;border-color:#8bccc7}.tool:hover{background:#e9f6f6}.tool.short{font-size:16px;min-width:37px}.canvasWrap{margin:0 18px;position:relative;flex:1;min-height:410px;background:white;border:1px solid #d9e4eb;border-radius:15px;overflow:hidden;box-shadow:0 7px 24px #22394d0b}.canvasWrap.placing svg{cursor:crosshair}#board{display:block;width:100%;height:100%;min-height:410px;touch-action:none;user-select:none}.component{cursor:grab}.component.dragging{cursor:grabbing}.component.selected .selectOutline{stroke:#00aaa0;stroke-width:2;fill:rgba(0,178,170,.055);stroke-dasharray:5 4}.selectOutline{stroke:transparent;fill:transparent}.term{cursor:crosshair;fill:white;stroke:#249b9b;stroke-width:3}.term:hover{fill:#27c3b7;stroke:#fff}.term.pending{fill:#eead49;stroke:#a06a10}.wireHit{stroke-width:18;stroke:transparent;fill:none;cursor:pointer}.wirePath{fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-width:4;pointer-events:none}.wireSelected{stroke:#ef9b4a;stroke-width:7}.canvasLabel{fill:#51687b;font-family:ui-sans-serif,system-ui;font-size:15px;font-weight:700;text-anchor:middle;pointer-events:none}.canvasValue{fill:#8394a2;font-family:ui-sans-serif,system-ui;font-size:12px;text-anchor:middle;pointer-events:none}.gridControl{position:absolute;bottom:15px;left:17px;background:#fffefeea;border:1px solid #e0e7eb;color:#728696;padding:8px 11px;border-radius:9px;font-size:11px;max-width:80%}.legend{position:absolute;top:16px;left:17px;display:flex;align-items:center;gap:9px;border:1px solid #e5ebef;background:#ffffffd9;border-radius:9px;padding:8px 12px;font-size:11px;color:#506779;font-weight:700}.legendDot{display:inline-block;background:#1eaaa2;width:8px;height:8px;border-radius:100%}.bottomStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:13px 19px 16px}.stat{border:1px solid #e2e9ee;background:#fff;border-radius:10px;padding:12px 14px;min-width:0}.stat label{display:block;font-size:10px;font-weight:700;color:#8b9aa7;text-transform:uppercase;letter-spacing:.9px;margin-bottom:5px}.stat strong{font-size:19px;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.stat small{color:#81909f;margin-left:4px;font-size:10px}.right{background:white;border-left:1px solid #dce5ed;overflow-y:auto;padding:23px 19px 25px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#108984;font-weight:700;margin:0 0 10px}.missionTitle{font-size:21px;line-height:1.2;letter-spacing:-.6px;margin:0 0 10px}.bodyCopy{font-size:12px;line-height:1.65;color:#617485;margin:0 0 15px}.taskPanel{border:1px solid #dceae9;background:#f2faf8;border-radius:12px;padding:14px;margin:13px 0}.taskPanel h4{font-size:12px;margin:0 0 7px;color:#126e66}.taskPanel p{margin:0;color:#4b6e6d;font-size:12px;line-height:1.55}.taskPanel .checkrow{margin-top:11px;font-size:11px;color:#648180}.full{width:100%}.right hr{border:0;border-top:1px solid #edf0f3;margin:19px 0}.fieldTitle{font-size:12px;font-weight:700;color:#25394b;margin:0 0 11px}.question{font-size:12px;font-weight:700;line-height:1.5;margin:0 0 10px}.answer{display:block;text-align:left;width:100%;border:1px solid #dce6ea;background:white;border-radius:9px;padding:10px 12px;font-size:11px;color:#42546a;margin-top:6px;line-height:1.5}.answer:hover{background:#f1f9f7}.answer.chosen{border-color:#0e8d86;background:#e9f8f4}.answer.correct{border-color:#1b976f;background:#e7faf1}.answer.wrong{border-color:#e99595;background:#fff0ed}.feedback{font-size:11px;line-height:1.55;color:#5f7181;margin-top:10px}.feedback.success{color:#07765c}.feedback.warning{color:#a45b19}.labelRow{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;color:#51677a;font-weight:700;margin:9px 0 5px}.numeric{border:1px solid #dae4eb;background:#fff;border-radius:8px;width:100%;padding:9px 10px;color:#2a3a4b;font-size:12px;min-width:0}.propHint{font-size:10px;line-height:1.45;color:#8b9dab;margin-top:8px}.selectedCard{border:1px solid #e4ecee;background:#f9fbfc;border-radius:12px;padding:12px}.miniReadings{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.read{background:#f2f7f8;border-radius:9px;padding:10px}.read label{display:block;color:#79909c;text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:.6px;margin-bottom:4px}.read b{font-size:15px;font-variant-numeric:tabular-nums}.hint{display:flex;align-items:flex-start;gap:9px;border:1px solid #d9e7f5;background:#f4f8ff;padding:12px;border-radius:10px;color:#4a688c;font-size:11px;line-height:1.5;margin-top:10px}.danger{border:1px solid #f4c6a1;background:#fff6ed;color:#95501c;border-radius:10px;font-size:11px;padding:11px;line-height:1.5;margin:9px 0}.successBox{border:1px solid #b0e4d0;background:#effaf4;border-radius:10px;padding:11px;font-size:12px;line-height:1.5;color:#16785a;margin:10px 0}.tinyText{font-size:10px;color:#8c9fae;line-height:1.5}.footerStatus{color:#8298aa;font-size:11px;padding:9px 11px;line-height:1.5}.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);border-radius:10px;background:#193449;color:white;padding:12px 18px;font-size:12px;box-shadow:0 8px 30px #132b4466;z-index:20;max-width:min(480px,90vw);text-align:center;pointer-events:none;opacity:0;transition:opacity .15s}.toast.show{opacity:1}.chartSvg{border-radius:9px;background:#f6fafb;width:100%;height:70px}.topMobile{display:none}.mobileQuickParts{display:none}.mobilePan{display:none}@media(max-width:1200px){.shell{grid-template-columns:220px minmax(360px,1fr) 275px}.topMid{display:none}.part{font-size:10px}.left{padding-left:7px;padding-right:7px}.stageHeader{padding-left:16px;padding-right:16px}.right{padding:18px 14px}.canvasWrap{margin:0 11px}.bottomStats{margin:12px 11px}.stat{padding:10px}.stat strong{font-size:16px}}@media(max-width:890px){.app{display:block;height:auto;min-height:100vh;overflow:visible}.top{height:67px;padding:0 12px}.brand{min-width:auto}.topActions .pillBtn:not(.mobileKeep){display:none}.shell{display:flex;flex-direction:column;overflow:visible}.stage{overflow:visible}.left{order:2;max-height:none;overflow:visible;padding:12px}.left .lessonList{display:flex;overflow-x:auto;gap:4px}.left .lesson{flex:none;width:175px}.left .parts{grid-template-columns:repeat(5,minmax(96px,1fr));overflow-x:auto}.left .part{min-width:92px}.leftDivider{margin:12px}.sideHeading{margin:6px 0}.stage{order:1}.canvasWrap{height:55vh;min-height:380px;flex:none}.right{order:3;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.right>*{min-width:0}.right hr{grid-column:1/-1}.stageHeader{min-height:70px}.bottomStats{grid-template-columns:repeat(4,1fr)}.topMobile{display:inline}}@media(max-width:540px){.mobilePan{display:inline-flex}.mobileQuickParts{display:flex;gap:7px;overflow-x:auto;padding:0 12px 10px;scrollbar-width:thin}.quickPart{flex:none;border:1px solid #cde1e5;background:white;border-radius:9px;padding:8px 11px;color:#147f7f;font-size:11px;font-weight:700}.quickPart:hover{background:#e7f8f5}.brand h1{font-size:15px}.brand small{font-size:9px}.topActions{gap:4px}.topActions .pillBtn.mobileKeep{font-size:11px;padding:8px}.stageHeader{flex-wrap:wrap}.stageHeader h2{font-size:17px}.stageTabs{width:100%}.tab{flex:1}.toolstrip{padding:0 12px 10px}.tools{flex-wrap:wrap}.canvasWrap{height:45vh;min-height:320px}.bottomStats{grid-template-columns:repeat(2,1fr)}.right{display:block}.left .parts{grid-template-columns:repeat(5,minmax(90px,1fr))}}

.wireList{margin:12px 0;border:1px solid #dce7ed;border-radius:10px;padding:9px}.wireList h4{font-size:11px;margin:0 0 5px;color:#577082}.wireListRow{display:flex;align-items:center;gap:6px;justify-content:space-between;padding:5px 0;border-top:1px solid #edf0f3}.wireListRow span{font-size:10px;color:#687e90;line-height:1.25}.wireListRow button{padding:5px 8px;font-size:10px;flex:none}.wireListRow .hazard{color:#b05b32;font-weight:700}
/* Learning tools, data notebook, accessible modal */
.labDialog{border:0;border-radius:20px;box-shadow:0 26px 110px #101f39aa;background:#fff;color:var(--ink);width:min(860px,calc(100vw - 28px));max-height:min(90dvh,950px);padding:0;overflow:hidden}
.labDialog::backdrop{background:#071b2c9c;backdrop-filter:blur(3px)}
.dialogHeader{display:flex;align-items:center;justify-content:space-between;padding:23px 27px 17px;border-bottom:1px solid #e4edf2;gap:20px}.dialogHeader h2{font-size:25px;letter-spacing:-.7px;margin:0}.dialogHeader .eyebrow{margin:0 0 4px}.dialogBody{padding:21px 27px 29px;max-height:calc(90dvh - 100px);overflow-y:auto}
.dialogNote{font-size:13px;line-height:1.65;color:#63758a;margin:0 0 16px}.refGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.refCard{border:1px solid #dce7ec;border-radius:12px;background:#fafcfd;padding:12px;min-height:171px}.refCard h3{font-size:13px;margin:0 0 5px}.refCard p{font-size:11px;line-height:1.45;color:#637687;margin:7px 0 0}.refCard svg{width:100%;height:64px;color:#334c60;display:block}.dialogActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:13px 0}.dialogActions button{font-size:12px}.flashCard{background:#eef7f6;border:1px solid #beded9;border-radius:14px;text-align:center;padding:20px;max-width:520px;margin:16px auto}.flashCard svg{display:block;width:100%;height:120px;margin:0 auto;color:#174a5d}.flashCard .flashAnswer{font-weight:700;font-size:19px;color:#125f59;margin:12px 0 5px}.flashCard .flashIndex{color:#5c817d;font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:700}.flashCard p{font-size:13px;line-height:1.5;color:#5b7076}.notebookStats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.notebookStats>div{background:#f2f7f8;border-radius:12px;padding:13px}.notebookStats strong{font-size:21px;display:block;margin-top:5px}.notebookStats span{font-size:11px;color:#687f8a}.notebookGraph{width:100%;height:auto;border:1px solid #e1ebf0;background:#fff;border-radius:12px;display:block}.dataTable{border-collapse:collapse;width:100%;font-size:12px;margin-top:12px}.dataTable th,.dataTable td{padding:9px 8px;border-bottom:1px solid #e8eef2;text-align:left}.dataTable th{color:#7891a2;font-size:10px;text-transform:uppercase;letter-spacing:.6px}.dataTable td.num{text-align:right;font-variant-numeric:tabular-nums}.dataTable th:last-child{text-align:right}.projectRow{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e8eff3}.projectRow strong{font-size:13px}.projectRow small{display:block;font-size:11px;color:#7a8d9e;margin-top:4px}.projectRow .actionGroup{display:flex;gap:6px}.projectForm{display:flex;align-items:center;gap:9px}.projectForm input{flex:1;min-width:0}.templateGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.templateBtn{background:#f7fbfa;border:1px solid #d4e7e1;border-radius:11px;padding:12px;text-align:left;color:#264457;font-size:12px}.templateBtn strong{display:block;margin-bottom:3px}.templateBtn small{color:#71869a}.predictionBox{border:1px solid #dfebee;background:#f7fafb;border-radius:11px;margin-top:13px;padding:12px}.predictionBox .question{margin:5px 0 9px}.predictionBtns{display:flex;gap:7px}.predictionBtns button{flex:1}.predictionResult{font-size:11px;line-height:1.55;color:#176c65;margin-top:9px}.desktopTools{display:none}
@media(max-width:890px){.topActions .pillBtn.mobileKeep{display:inline-flex}}
@media(max-width:600px){.dialogHeader{padding:17px}.dialogBody{padding:15px;max-height:calc(90dvh - 86px)}.refGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.notebookStats{grid-template-columns:1fr 1fr}.projectForm{flex-wrap:wrap}.projectForm .accentBtn{flex:1}.templateGrid{grid-template-columns:1fr}.projectRow{align-items:flex-start}.projectRow .actionGroup{flex-direction:column}.labDialog{border-radius:13px}}

/* The workbench grows with the shared footer and keeps its controls in reach. */
body{margin:0;font-family:var(--jke-font-ui),system-ui,sans-serif}
.app{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 76px);min-height:850px;overflow:visible}
.shell{min-height:0}.top{min-height:76px;height:auto;padding-block:12px;flex-wrap:wrap}.topActions{flex-wrap:wrap}
.topMid{display:none}.brand small{letter-spacing:.5px}
.canvasWrap,#board{min-height:330px}
.familyLab{display:flex;align-items:center;gap:16px;margin:16px 18px 0;padding:12px;background:#e8f4f1;border:1px solid #c3dfd8;border-radius:15px}
.familyLab h2{font-size:18px;line-height:1.2;margin:4px 0 7px}.familyLab p{font-size:12px;line-height:1.5;margin:0;color:#355d5d}.familyLab .eyebrow{font-size:9px;color:#14756b}
.familyArtBtn{flex:0 0 175px;padding:0;border:0;border-radius:10px;background:#d2e8df;overflow:hidden;min-height:0}
.familyArtBtn img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.familyArtBtn:hover{box-shadow:0 0 0 3px #63aaa0}
.familyLab .safety{font-size:10px;margin-top:7px;color:#587575}.familyDialog{max-width:950px}.familyDialog img{display:block;width:100%;height:auto}.familyDialog p{padding:0 24px 16px;font-size:14px;line-height:1.5}
button,input,select{font-family:inherit}.skip-link{position:absolute;top:-100px;left:12px;z-index:100}.skip-link:focus{top:8px;background:white;padding:12px}
.predictionBtns button{min-width:0;white-space:normal}
@media(pointer:coarse){button{min-height:44px}.term{stroke-width:5}.topActions .pillBtn{min-height:44px}}
@media(max-width:1100px){.topActions{gap:5px}.topActions .pillBtn{padding:8px}.familyArtBtn{flex-basis:135px}.familyLab{gap:10px;margin-inline:11px}.familyLab h2{font-size:16px}.familyLab p{font-size:11px}}
@media(max-width:890px){.shell{min-height:0}.app{height:auto;min-height:100dvh}.familyLab{margin:12px 11px 0}.familyArtBtn{flex-basis:180px}.canvasWrap{height:440px}.stage{min-height:0}.top{min-height:67px}.right{display:block}.parts{max-width:100%}.left{min-width:0}.left .lessonList,.left .parts{max-width:100%;overscroll-behavior-inline:contain}}
@media(max-width:540px){.familyLab{padding:9px;gap:10px}.familyArtBtn{flex-basis:125px}.familyLab h2{font-size:15px}.familyLab .eyebrow{font-size:8px;letter-spacing:.5px}.familyLab .safety{font-size:9px}.familyLab p{font-size:11px}.stageHeader{padding-top:13px}.canvasWrap{height:350px}.topActions .pillBtn{padding:7px}.brand small{font-size:9px}.brand{gap:7px}.logo{width:29px;height:32px}.toolstrip .tools{flex-wrap:wrap}.left .lessonList{padding-bottom:8px}}
/* Guided project workbenches */
.guidedGroupTitle{margin:20px 0 8px}.guidedGrid{margin-bottom:8px}.guidedCard{width:100%;min-height:92px}.guidedCardTop{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.guidedCardTop small{white-space:nowrap;color:#11816f}.guidedDetail{max-width:780px;margin:0 auto}.guidedNav{margin-top:0}.guidedTitle{font-size:25px;letter-spacing:-.6px;margin:0 0 8px}.projectWorkbench{border:1px solid #dce8ec;background:#fbfdfd;border-radius:14px;padding:15px;margin:14px 0}.projectWorkbench input[type=range]{width:100%;accent-color:#078b88}.logicInputs{display:flex;align-items:center;gap:9px;margin:16px 0}.logicBit{min-width:58px;min-height:52px;border:1px solid #d2e1e7;border-radius:10px;background:#fff;color:#415a6b;font-size:13px;font-weight:700}.logicBit b{display:block;font-size:18px}.logicBit.on{background:#e2f7f1;border-color:#65b6a0;color:#116e5c}.logicOutput{margin-left:auto;border:1px solid #a9d9cf;border-radius:10px;padding:8px 16px;text-align:center;background:#effaf6}.logicOutput span,.signalPanel span,.morseReadout span{display:block;color:#74899a;font-size:10px}.logicOutput b{display:block;font-size:22px;color:#146a5c}.adderChoices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adderChoices label{font-size:11px;color:#556c7e;font-weight:700}.adderChoices select{margin-top:5px}.stageControls{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}.adderStages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:13px 0}.adderStage{min-width:0;border:1px dashed #cbd8de;border-radius:9px;padding:8px 5px;text-align:center;color:#7b8c99;background:#fff}.adderStage.placed{border-style:solid;border-color:#80c7b7;background:#eef9f5;color:#286c5a}.adderStage strong,.adderStage span{display:block;font-size:10px}.linkButton{border:0;background:transparent;color:#788b98;font-size:9px;font-weight:700;padding:5px 1px;white-space:normal}.linkButton.linked{color:#087b66}.bitRows{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.bitRows>div>span{font-size:11px;color:#667c8c;font-weight:700}.bitButtons{display:flex;gap:3px;margin-top:5px}.bitButtons .logicBit{flex:1;min-width:0;min-height:45px;padding:2px}.bitButtons .logicBit span{display:block;font-size:9px}.bitButtons .logicBit b{font-size:15px}.adderResult,.signalPanel,.morseReadout{border:1px solid #e0e9ed;border-radius:10px;background:#fff;padding:12px;margin:10px 0}.adderResult span,.adderResult strong{display:block;font-size:11px;color:#566e7e}.adderResult strong{margin-top:5px;color:#17695e;font-variant-numeric:tabular-nums}.partChecklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.partCheck{border:1px solid #d5e2e7;border-radius:9px;background:#fff;color:#4c6676;text-align:left;padding:10px;font-size:11px;font-weight:700}.partCheck.checked{background:#e8f7f0;border-color:#9bd2bb;color:#186d55}.signalPanel strong,.morseReadout strong{display:block;font-size:18px;color:#126e62;margin:5px 0}.signalPanel span+span,.morseReadout span+span{margin-top:7px}.signalMeter{height:9px;border-radius:99px;background:#e9eff2;overflow:hidden;margin-top:9px}.signalMeter i{height:100%;display:block;background:linear-gradient(90deg,#51bd8c,#087d78);border-radius:99px}.adultCard,.projectHint{border:1px solid #e0e8ec;background:#f8fafb;border-radius:10px;padding:11px 13px;margin-top:10px;color:#526a7a;font-size:11px;line-height:1.5}.adultCard summary,.projectHint summary{font-weight:700;cursor:pointer;color:#3b5a6b}.adultCard p,.projectHint p{margin:9px 0 0}.adultCard strong{color:#30586a}
.projectReflection{border:1px solid #b6ddd1;background:#f0faf6;border-radius:10px;padding:11px 13px;margin-top:10px;color:#365f54;font-size:11px;line-height:1.5}.projectReflection summary{font-weight:700;cursor:pointer;color:#176957}.projectReflection p{margin:9px 0 0}
