:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#142f3d;--muted:#536b73;--paper:#f8f6f0;--white:#fffdfa;--forest:#123e50;--jade:#187a77;--mint:#dff1eb;--orange:#d66a46;--line:#d4e0de;--danger:#a3313b}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.55}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}button,input,textarea,select{font:inherit}button{cursor:pointer}.skip-link{z-index:20;background:var(--ink);color:#fff;border-radius:.4rem;padding:.65rem .9rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-shell{min-height:100vh}.public-header{grid-template-columns:1.35fr 4fr auto;align-items:center;gap:1.5rem;max-width:1280px;margin:0 auto;padding:1rem 2rem;display:grid}.brand{flex-direction:column;gap:.1rem;line-height:1.1;text-decoration:none;display:flex}.brand span{color:var(--forest);letter-spacing:-.04em;font-size:1.35rem;font-weight:850}.brand small{color:var(--muted);letter-spacing:.02em;font-size:.66rem;font-weight:700}.public-header nav{flex-wrap:wrap;justify-content:flex-end;gap:.5rem 1rem;font-size:.83rem;font-weight:650;display:flex}.public-header nav a{padding:.3rem 0;text-decoration:none}.public-header nav a:hover,.public-header nav a:focus-visible{color:var(--jade)}.locale-switch{border:1px solid var(--forest);color:var(--forest);background:0 0;border-radius:100rem;padding:.35rem .7rem;font-size:.82rem;font-weight:750}.locale-switch:hover{background:var(--mint)}main{max-width:1280px;margin:0 auto;padding:0 2rem 5rem}.hero{max-width:980px;padding:5.5rem 0 3.25rem}.eyebrow{color:var(--jade);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .8rem;font-size:.8rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.065em;max-width:930px;margin-bottom:1.25rem;font-size:clamp(2.6rem,7vw,5.9rem);font-weight:830;line-height:.96}.hero-summary{max-width:800px;color:var(--muted);font-size:clamp(1.05rem,2vw,1.32rem)}.button{border:1px solid #0000;border-radius:.45rem;justify-content:center;align-items:center;min-height:2.7rem;padding:.62rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.button-primary{background:var(--forest);color:#fff}.button-primary:hover,.button-primary:focus-visible{background:#0b2e3c}.role-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 0 3rem;display:grid}.role-card{background:var(--forest);color:#fff;border-radius:.9rem;min-height:225px;padding:1.5rem;text-decoration:none;transition:transform .16s,background .16s}.role-card:nth-child(2){background:#176b78}.role-card:nth-child(3){background:#2d586a}.role-card:hover,.role-card:focus-visible{background:#0b2e3c;transform:translateY(-4px)}.role-card span{opacity:.62;font-size:.8rem;font-weight:800}.role-card h2{letter-spacing:-.035em;margin:2.5rem 0 .65rem;font-size:1.55rem}.role-card p{color:#e4f4ef;margin:0}.content-grid{grid-template-columns:repeat(12,1fr);gap:1rem;display:grid}.content-card{background:var(--white);border:1px solid var(--line);border-radius:.8rem;grid-column:span 6;min-height:220px;padding:1.7rem}.content-card:nth-child(3n){background:#e9f4f0;grid-column:span 12;min-height:auto}.content-card h2{letter-spacing:-.03em;font-size:1.35rem;line-height:1.15}.content-card p,.content-card li{color:var(--muted)}.content-card ul{margin-bottom:0;padding-left:1.2rem}.governance-note{border-left:4px solid var(--orange);background:#fff0e7;border-radius:0 .6rem .6rem 0;max-width:900px;margin:1.5rem 0 0;padding:1.1rem 1.25rem}.governance-note p{color:#7a3d2d;margin:.35rem 0 0}.public-footer{border-top:1px solid var(--line);color:var(--muted);background:#edf1ed;justify-content:space-between;align-items:flex-start;gap:2rem;padding:2rem max(2rem,50vw - 640px);font-size:.85rem;display:flex}.public-footer p{max-width:700px;margin-bottom:0}.public-footer div{white-space:nowrap;flex-wrap:wrap;gap:.7rem 1rem;display:flex}.demo-login{padding:5rem 0}.demo-login h1{max-width:700px;font-size:clamp(2.5rem,6vw,4.6rem)}.demo-login>div:first-child>p:last-child{max-width:650px;color:var(--muted)}.google-login{border:1px solid var(--line);background:var(--white);border-radius:.7rem;max-width:480px;margin:1.5rem 0;padding:1rem}.google-login p{color:var(--muted);margin-bottom:.7rem;font-size:.85rem}.demo-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;display:grid}.demo-account{border:1px solid var(--line);background:var(--white);min-height:142px;color:var(--ink);text-align:left;border-radius:.75rem;flex-direction:column;align-items:flex-start;gap:.3rem;padding:1.15rem;display:flex}.demo-account:hover,.demo-account:focus-visible{border-color:var(--jade);box-shadow:0 8px 22px #123e5014}.demo-account span{color:var(--jade);text-transform:uppercase;font-size:.75rem;font-weight:800}.demo-account strong{font-size:1.1rem}.demo-account small{color:var(--muted)}.demo-account em{color:var(--jade);margin-top:auto;font-size:.8rem}.dashboard-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:1.5rem;padding:3.7rem 0 1.8rem;display:flex}.dashboard-header h1{margin:0;font-size:clamp(2.25rem,5vw,4rem)}.button-secondary{color:var(--forest);border-color:var(--forest);background:0 0}.dashboard-content{gap:1rem;padding:1.5rem 0;display:grid}.dashboard-card{border:1px solid var(--line);background:var(--white);border-radius:.8rem;padding:1.5rem}.dashboard-card h2{letter-spacing:-.04em;margin-bottom:.35rem;font-size:1.7rem}.dashboard-card>p{color:var(--muted)}.card-topline{justify-content:space-between;gap:1rem;display:flex}.status{height:fit-content;color:var(--muted);text-transform:capitalize;background:#e8eeec;border-radius:99px;padding:.28rem .55rem;font-size:.75rem;font-weight:800}.status-ready{color:#136a66;background:#ddf4ea}.status-awaiting_consent{color:#87523a;background:#fff0e6}.consent-list{grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1.25rem 0;display:grid}.consent-list label{border:1px solid var(--line);border-radius:.55rem;gap:.6rem;padding:.8rem;display:flex}.consent-list input{width:1.1rem;height:1.1rem;accent-color:var(--jade)}.consent-list small{color:var(--muted);font-size:.75rem;display:block}.callout{color:#335d62;background:#edf7f3;border-radius:.5rem;margin-top:1rem;padding:.9rem 1rem;font-size:.88rem}.callout p{margin:.25rem 0 0}.skill-form{grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:.7rem;display:grid}.skill-form label{color:var(--muted);text-transform:capitalize;gap:.3rem;font-size:.8rem;display:grid}.skill-form select{border:1px solid var(--line);background:#fff;border-radius:.35rem;padding:.55rem}.focus-box{border-left:3px solid var(--orange);background:#fff4ea;margin-top:1rem;padding:.8rem 1rem}.focus-box p{color:#714b3a;text-transform:capitalize;margin:.25rem 0 0}.form-message{color:#136a66}.form-error{color:var(--danger)}.module-grid{grid-template-columns:repeat(4,1fr);gap:.7rem;margin:1.1rem 0;display:grid}.module{border:1px solid var(--line);border-radius:.55rem;flex-direction:column;align-items:flex-start;gap:.45rem;min-height:136px;padding:.8rem;display:flex}.module span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.module strong{line-height:1.2}.module small{color:var(--muted);margin-top:auto}.module button{background:var(--forest);color:#fff;border:0;border-radius:.3rem;margin-top:auto;padding:.35rem .5rem;font-size:.76rem;font-weight:700}.module-complete{background:#eaf7f2}.module-locked{opacity:.62;background:#f2f3f0}.challenge-shell{padding:2.4rem 0 4rem}.challenge-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:2rem;padding-bottom:1.3rem;display:flex}.challenge-header h1{margin-bottom:.5rem;font-size:clamp(2.1rem,5vw,4rem)}.challenge-header small{color:var(--muted)}.timer{background:var(--forest);color:#fff;text-align:right;border-radius:.65rem;min-width:182px;padding:.8rem 1rem}.timer span,.timer small{color:#ddefea;font-size:.72rem;font-weight:700;display:block}.timer strong{font-variant-numeric:tabular-nums;letter-spacing:-.06em;font-size:2rem;display:block}.challenge-message{border-left:3px solid var(--orange);color:#774633;background:#fff0e7;margin:1rem 0;padding:.7rem .9rem}.challenge-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.3rem;display:grid}.challenge-card{border:1px solid var(--line);background:var(--white);border-radius:.75rem;padding:1.35rem}.component-heading{align-items:center;gap:.65rem;display:flex}.component-heading span{background:var(--mint);width:1.65rem;height:1.65rem;color:var(--forest);border-radius:50%;place-items:center;font-size:.72rem;font-weight:850;display:grid}.component-heading h2{margin:0;font-size:1.3rem}.challenge-card>p,.challenge-card>small{color:var(--muted)}.challenge-card fieldset{border:0;gap:.45rem;margin:1rem 0 0;padding:0;display:grid}.challenge-card legend{margin-bottom:.55rem;font-weight:750}.choice{border:1px solid var(--line);border-radius:.35rem;align-items:center;gap:.5rem;padding:.55rem;display:flex}.choice input{accent-color:var(--jade)}.reading-prompt{background:#edf7f3;border-radius:.4rem;padding:.7rem .85rem;color:var(--ink)!important}.recording-controls{gap:.8rem;margin:1rem 0;display:grid}.recording-controls audio{width:100%}.button-danger{background:var(--danger);color:#fff}.challenge-card textarea{resize:vertical;border:1px solid var(--line);border-radius:.4rem;width:100%;margin-top:.75rem;padding:.7rem}.writing-meta{color:var(--muted);justify-content:space-between;font-size:.8rem;display:flex}.text-button{color:var(--forest);background:0 0;border:0;font-weight:800;text-decoration:underline}.challenge-footer{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem 0;display:flex}.challenge-footer p{color:var(--muted);margin:.25rem 0 0}.button:disabled{cursor:not-allowed;opacity:.5}.modal-backdrop{z-index:10;background:#0b2836a8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.submit-modal{background:var(--white);border-radius:.75rem;width:min(100%,550px);padding:1.4rem}.submit-modal h2{margin-bottom:.6rem}.submit-modal li{margin:.35rem 0}.submit-modal>div{justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.submission-receipt{max-width:800px;padding:6rem 0}.submission-receipt h1{font-size:clamp(2.5rem,6vw,5rem)}.submission-receipt p{color:var(--muted);font-size:1.1rem}.support-form{border-top:1px solid var(--line);gap:.6rem;margin-top:1rem;padding-top:1rem;display:grid}.support-form>div{grid-template-columns:180px 1fr;gap:.6rem;display:grid}.support-form select,.support-form textarea,.support-item select{border:1px solid var(--line);background:#fff;border-radius:.35rem;padding:.55rem}.support-form textarea{resize:vertical;min-height:80px}.dashboard-actions{flex-wrap:wrap;gap:.6rem;display:flex}.scoring-list{gap:1rem;margin-top:1rem;display:grid}.scoring-item{border:1px solid var(--line);border-radius:.55rem;padding:1rem}.scoring-item>div{align-items:center;gap:.6rem;display:flex}.anon-code{background:var(--mint);color:var(--forest);letter-spacing:.04em;border-radius:.25rem;padding:.18rem .4rem;font-size:.75rem;font-weight:850;display:inline-block}.scoring-item pre{background:#f2f4f1;border-radius:.35rem;padding:.75rem;font-size:.78rem;overflow:auto}.score-form{grid-template-columns:150px 1fr auto;align-items:end;gap:.65rem;display:grid}.score-form label{color:var(--muted);gap:.3rem;font-size:.78rem;display:grid}.score-form select,.score-form textarea{border:1px solid var(--line);border-radius:.35rem;padding:.45rem}.score-form textarea{resize:vertical;min-height:70px}.empty-state{color:var(--muted);font-style:italic}.support-list{gap:.6rem;display:grid}.support-item{border:1px solid var(--line);border-radius:.45rem;justify-content:space-between;gap:1rem;padding:.8rem;display:flex}.support-item small{color:var(--muted);display:block}.support-item p{margin:.35rem 0 0}.metrics{flex-wrap:wrap;gap:.7rem;margin-top:1rem;display:flex}.metrics div{background:#edf7f3;border-radius:.45rem;min-width:140px;padding:.75rem;display:grid}.metrics strong{letter-spacing:-.04em;font-size:1.65rem}.metrics span{color:var(--muted);font-size:.78rem}.roster-table{border:1px solid var(--line);border-radius:.5rem;margin-top:1rem;overflow:auto}.roster-row{border-bottom:1px solid var(--line);grid-template-columns:1.2fr 1.6fr 1fr 1fr;gap:.6rem;min-width:620px;padding:.65rem .75rem;font-size:.86rem;display:grid}.roster-row:last-child{border-bottom:0}.roster-head{color:var(--muted);text-transform:uppercase;background:#edf1ed;font-size:.72rem;font-weight:800}.report-page{max-width:900px;padding:4rem 0}.report-page h1{font-size:clamp(2.7rem,6vw,5rem)}.report-intro{max-width:720px;color:var(--muted);font-size:1.1rem}.score-grid{grid-template-columns:repeat(4,1fr);gap:.7rem;margin:1.5rem 0;display:grid}.score-grid article{background:var(--forest);color:#fff;border-radius:.55rem;gap:.3rem;padding:1rem;display:grid}.score-grid span{color:#ddefea;text-transform:capitalize;font-size:.82rem}.score-grid strong{font-size:1.75rem}.report-card{border:1px solid var(--line);background:var(--white);border-radius:.55rem;padding:1.25rem}.certificate{border:8px double var(--forest);text-align:center;background:#fffdf7;justify-items:center;margin:1rem 0;padding:2rem;display:grid}.certificate p{color:var(--forest);margin:0;font-weight:800}.certificate h2{margin:1rem 0 .3rem;font-size:2rem}.certificate>strong{font-size:1.5rem}.certificate small{color:var(--muted);margin-top:1rem}@media (max-width:980px){.public-header{grid-template-columns:1fr auto}.public-header nav{grid-area:2/1/auto/-1;justify-content:flex-start}.role-grid,.demo-grid{grid-template-columns:1fr}.content-card,.content-card:nth-child(3n){grid-column:span 12}.consent-list,.module-grid,.skill-form{grid-template-columns:repeat(2,1fr)}.skill-form button{grid-column:span 2}}@media (max-width:640px){.public-header,main{padding-left:1rem;padding-right:1rem}.public-header{gap:.65rem}.public-header nav{gap:.45rem .75rem;font-size:.78rem}.hero{padding:3.2rem 0 2.2rem}.public-footer{padding:1.5rem 1rem;display:block}.public-footer div{margin-top:1rem}.dashboard-header,.card-topline,.challenge-header,.challenge-footer{display:block}.dashboard-header .button,.challenge-footer .button{margin-top:1rem}.consent-list,.module-grid,.skill-form,.challenge-grid,.score-grid{grid-template-columns:1fr}.skill-form button{grid-column:auto}.timer{text-align:left;margin-top:1rem}.support-form>div,.score-form{grid-template-columns:1fr}.support-item{display:block}.support-item select{margin-top:.6rem}}
