.labPage{color:#102e25;background:#f4efe4}.labHero{grid-template-columns:1.1fr .9fr;align-items:center;gap:60px;padding:70px 0 82px;display:grid}.labHero h1{text-transform:uppercase;letter-spacing:-.02em;font-family:Impact,Arial Narrow,sans-serif}.labHero h1 em{color:#0b3b2d;display:block}.labHero>div>p{color:#52675e;max-width:650px;font-size:18px;line-height:1.65}.labMeta{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.labMeta span{font:700 10px var(--font-geist-mono);background:#dce9dd;padding:9px 11px}.labDiagram{background-color:#073b2d;background-image:linear-gradient(#7cb99912 1px,#0000 1px),linear-gradient(90deg,#7cb99912 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:25px 25px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:4px 30px 4px 4px;justify-content:center;align-items:center;gap:11px;min-height:310px;padding:50px 28px;display:flex;position:relative}.labDiagram div{font:800 10px var(--font-geist-mono);background:#f8f3e8;padding:18px 12px;box-shadow:0 7px #0000001a}.labDiagram .router{background:#9dccac}.labDiagram i{color:#ef6b3a;font-style:normal}.labDiagram b{color:#9dccac;font:700 9px var(--font-geist-mono);letter-spacing:.12em;position:absolute;bottom:20px;left:24px}.labIntro{grid-template-columns:.72fr 1.28fr;align-items:start;gap:70px;padding:90px 0;display:grid}.labIntro>div:first-child{position:sticky;top:30px}.labIntro ul{color:#52675e;padding-left:18px;line-height:2}.unlockCard,.labWorkspace{background:#fff;border:1px solid #d5cbbb;border-radius:4px 28px 4px 4px;padding:38px;box-shadow:14px 14px #dce9dd}.unlockCard>span,.unlocked span,.judgmentCheck>span{font:800 10px var(--font-geist-mono);letter-spacing:.12em;color:#ef6b3a}.unlockCard h2,.labWorkspace h2{font-size:42px}.unlockCard p{color:#52675e;line-height:1.6}.unlockCard form{gap:17px;margin-top:28px;display:grid}.unlockCard label{gap:8px;font-size:12px;font-weight:800;display:grid}.unlockCard input,.unlockCard select{width:100%;font:inherit;background:#fbfaf6;border:1px solid #b9c2bc;padding:14px}.unlockCard .consent{align-items:flex-start;font-weight:400;line-height:1.45;display:flex}.unlockCard .consent input{width:auto;margin-top:2px}.unlockCard output{color:#b84a24;min-height:18px;font-size:12px}.unlockCard small{color:#718078;margin-top:22px;display:block}.unlocked{font:700 10px var(--font-geist-mono);border-bottom:1px solid #d8ddd5;justify-content:space-between;padding-bottom:16px;display:flex}.labSteps article{border-top:1px solid #d8ddd5;grid-template-columns:48px 1fr;gap:18px;padding:20px 0;display:grid}.labSteps article>b{color:#ef6b3a;font:800 12px var(--font-geist-mono)}.labSteps h3{margin:0 0 7px}.labSteps p{color:#607068;margin:0;line-height:1.6}.judgmentCheck{background:#dce9dd;margin-top:28px;padding:25px}.judgmentCheck label{gap:10px;padding:10px 0;line-height:1.4;display:flex}.judgmentCheck details{border-top:1px solid #9db5a7;margin-top:15px;padding-top:15px}.judgmentCheck summary{cursor:pointer;font-weight:800}.labSupport{color:#fff;background:#0b3b2d;padding:90px 0}.labSupport h2{text-transform:uppercase;font-family:Impact,Arial Narrow,sans-serif}.labSupport p{color:#cbd9d1;max-width:700px;line-height:1.7}@media (max-width:850px){.labHero,.labIntro{grid-template-columns:1fr}.labIntro>div:first-child{position:static}}@media (max-width:520px){.labHero{padding-top:45px}.labDiagram{min-height:260px;padding:25px 10px}.labDiagram div{padding:14px 7px;font-size:8px}.unlockCard,.labWorkspace{padding:24px}.unlocked{gap:7px;display:grid}}.accountBar{background:#f4efe4;justify-content:space-between;align-items:center;margin:-12px -12px 25px;padding:13px 15px;display:flex}.accountBar>div{gap:3px;display:grid}.accountBar span{color:#ef6b3a;font:800 9px var(--font-geist-mono)}.accountBar b{font-size:12px}.accountBar a{color:#52675e;font-size:12px;font-weight:800}.progressHeader{justify-content:space-between;align-items:end;gap:20px;display:flex}.progressHeader p{color:#607068;margin:0}.progressHeader output{color:#607068;font:700 10px var(--font-geist-mono)}.progressTrack{background:#e5e2d9;height:7px;margin:18px 0 24px}.progressTrack i{background:#ef6b3a;height:100%;transition:width .25s;display:block}.roleField{background:#f4efe4;gap:7px;padding:15px;font-size:11px;font-weight:800;display:grid}.roleField select{background:#fff;border:1px solid #b9c2bc;padding:11px}.labSteps article>label{align-items:flex-start;gap:10px;display:flex}.labSteps article>label input{margin-top:1px}.labSteps article.done h3{color:#607068;text-decoration:line-through}.deviceNote{background:#fff;border-left:3px solid #ef6b3a;gap:7px;margin-top:30px;padding:18px;display:grid}.deviceNote span{color:#607068;font-size:13px;line-height:1.5}.authPage{min-height:100vh;padding:70px 20px}.authShell{width:min(640px,100%);margin:auto}.authShell h1{font-size:clamp(48px,8vw,76px)}.authShell>p{color:#607068;font-size:18px;line-height:1.6}.authChoices{gap:12px;margin-top:35px;display:grid}.authChoice{color:#102e25;text-align:left;cursor:pointer;width:100%;font:inherit;background:#fff;border:1px solid #c8cfc9;grid-template-columns:1fr auto;align-items:center;padding:18px 20px;text-decoration:none;display:grid}.authChoice span{color:#607068;font-size:12px}.authChoice.chatgpt{color:#fff;background:#073b2d}.authChoice.chatgpt span{color:#cbd9d1}.authChoice.google{border-left:5px solid #4285f4}.authChoice.github{border-left:5px solid #24292f}.authChoice.disabled{opacity:.48;cursor:not-allowed}.authChoices small{color:#718078;margin-top:12px;line-height:1.5}.evidenceSubmission{border-top:4px solid #073b2d;gap:18px;margin-top:34px;padding-top:32px;display:grid}.evidenceSubmission>span,.nextLab>span,.scorecard>span{font:800 10px var(--font-geist-mono);letter-spacing:.12em;color:#ef6b3a}.evidenceSubmission>p{color:#607068;margin-top:-8px;line-height:1.6}.evidenceSubmission label{gap:7px;font-size:12px;font-weight:800;display:grid}.evidenceSubmission label small{color:#718078;font-weight:400}.evidenceSubmission input,.evidenceSubmission textarea{width:100%;font:inherit;background:#fbfaf6;border:1px solid #b9c2bc;padding:13px}.evidenceSubmission textarea{resize:vertical;min-height:115px}.submissionActions{justify-content:space-between;align-items:center;gap:16px;display:flex}.submissionActions button:disabled{opacity:.45;cursor:not-allowed}.submissionActions output{font:700 10px var(--font-geist-mono);color:#607068}.scorecard{background:#dce9dd;grid-template-columns:1fr auto;gap:8px;margin-top:8px;padding:22px;display:grid}.scorecard b{font:900 30px var(--font-geist-mono)}.scorecard p{color:#52675e;grid-column:1/-1;margin:0;line-height:1.5}.nextLab{color:#fff;background:#073b2d;margin-top:24px;padding:24px}.nextLab p{color:#cbd9d1;line-height:1.5}.nextLab>b{color:#9dccac;font:700 10px var(--font-geist-mono)}.reviewNotice{color:#52675e;background:#fff3cf;border-left:3px solid #ef6b3a;margin-top:20px;padding:16px;line-height:1.5}.nextLab .button{margin-top:8px}.candidatePanel{background:#f4efe4;margin-top:36px;padding:24px}.candidatePanel h2{margin:8px 0 18px;font-size:30px}.candidatePanel article{border-top:1px solid #d5cbbb;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.candidatePanel article span{color:#607068;font-size:13px}.registrationChoice{background:#fff;border:1px solid #d5cbbb;border-radius:4px 28px 4px 4px;padding:38px;box-shadow:14px 14px #dce9dd}.registrationChoice>span{font:800 10px var(--font-geist-mono);letter-spacing:.12em;color:#ef6b3a}.registrationChoice h2{margin:8px 0}.registrationChoice>p{color:#52675e;line-height:1.6}.registrationCards{gap:12px;margin-top:25px;display:grid}.registrationCards button{text-align:left;color:#102e25;cursor:pointer;font:inherit;background:#f4efe4;border:1px solid #b9c2bc;gap:8px;padding:20px;display:grid}.registrationCards button:hover{background:#dce9dd}.registrationCards button b{font-size:20px}.registrationCards button span{color:#52675e;line-height:1.5}.registrationCards button i{color:#ef6b3a;margin-top:5px;font-style:normal;font-weight:800}.registrationChoice output{color:#b84a24;min-height:18px;margin-top:14px;font-size:12px;display:block}.workspacePage{min-height:100vh}.workspaceRole{text-transform:uppercase;font:800 10px var(--font-geist-mono);color:#607068}.workspaceShell{padding:66px 0 100px}.workspaceShell h1{font-size:clamp(48px,7vw,78px)}.workspaceLead{color:#607068;max-width:680px;font-size:18px;line-height:1.6}.memberPanel{background:#dce9dd;margin:36px 0;padding:24px}.memberPanel p{color:#52675e;font-size:13px;line-height:1.5}.memberPanel>div{gap:10px;display:flex}.memberPanel input,.memberPanel select,.reviewCard select,.reviewCard textarea{font:inherit;background:#fff;border:1px solid #b9c2bc;padding:11px}.memberPanel input{flex:1}.reviewQueue{margin-top:42px}.reviewCard{background:#fff;border:1px solid #d5cbbb;margin:16px 0;padding:25px;box-shadow:8px 8px #dce9dd}.reviewTop{justify-content:space-between;gap:16px;display:flex}.reviewTop span,.tutorFeedback>span{font:800 10px var(--font-geist-mono);letter-spacing:.1em;color:#ef6b3a;text-transform:uppercase}.reviewTop h3{margin:7px 0}.reviewTop>b{background:#dce9dd;height:max-content;padding:7px 9px;font-size:11px}.reviewCard details{background:#f4efe4;padding:14px}.evidenceRead p{white-space:pre-wrap;line-height:1.5}.evidenceRead b{margin-bottom:5px;display:block}.rubricGrid{grid-template-columns:repeat(5,1fr);gap:8px;margin:18px 0;display:grid}.reviewCard>label{text-transform:capitalize;gap:6px;margin:14px 0;font-size:12px;font-weight:800;display:grid}.reviewCard textarea{resize:vertical;min-height:100px}.tutorFeedback{background:#dce9dd;margin-top:24px;padding:24px}.tutorFeedback h3{margin:7px 0}.tutorFeedback p{white-space:pre-wrap;color:#52675e;line-height:1.55}.tutorChallenge{background:#f4efe4;border-left:5px solid #ef6b3a;margin-top:28px;padding:28px}.tutorChallenge>span{font:800 10px var(--font-geist-mono);letter-spacing:.11em;color:#ef6b3a}.tutorChallenge h2{margin:8px 0}.tutorChallenge h3{margin:24px 0 12px;font-size:18px;line-height:1.35}.tutorChallenge>p{color:#52675e;line-height:1.55}.tutorChallenge>label{cursor:pointer;background:#fff;border:1px solid #d5cbbb;align-items:flex-start;gap:10px;margin:12px 0;padding:13px;line-height:1.4;display:flex}.tutorChallenge input{margin-top:2px}.tutorApply{background:#dce9dd;margin-top:20px;padding:20px}.tutorApply p{color:#52675e;line-height:1.5}.tutorApply output{color:#52675e;margin-top:10px;font-size:13px;display:block}@media (max-width:760px){.memberPanel>div,.rubricGrid{grid-template-columns:1fr;display:grid}.memberPanel input{width:100%}}
