*{box-sizing:border-box} :root{font:16px/1.5 system-ui,sans-serif;color:#162d28;background:#f3f7f3;color-scheme:light;--green:#1b5d49;--line:#cddbd2;--paper:#fff;--muted:#496057} body{margin:0} [hidden]{display:none!important} header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:#143d32;color:white;padding:.8rem max(1rem,calc((100vw - 1160px)/2))} header a{color:white} header a:last-child:not(.brand){margin-left:auto} .brand{font-weight:800;font-size:1.32rem;text-decoration:none} main{max-width:1160px;margin:1.4rem auto;padding:0 1rem 4rem} main.student{max-width:900px} h1,h2,h3{line-height:1.15;margin:.2rem 0 .7rem} h1{font-size:clamp(1.65rem,4vw,2.4rem)} h2{font-size:1.35rem} h3{font-size:1.05rem} p{margin:.35rem 0 .8rem} a{color:#164e3c} section,.card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.05rem;margin:.8rem 0;min-width:0} .narrow{max-width:520px;margin:2rem auto} .row,.toolbar,nav{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap} .between{justify-content:space-between} .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(245px,100%),1fr));gap:.85rem} .field{display:grid;gap:.22rem;margin:.55rem 0;min-width:0;font-weight:650} .field input,.field textarea,.field select{font-weight:400} label.inline{display:inline-flex;align-items:center;gap:.4rem;font-weight:500} button,input,textarea,select{font:inherit} input:not([type=checkbox]),select,textarea{padding:.48rem .65rem;border:1px solid #8aa397;border-radius:7px;background:white;color:inherit;max-width:100%} textarea{width:100%;min-height:5.6rem;resize:vertical} select[multiple]{min-height:5rem} button,.button{border:1px solid var(--green);border-radius:7px;background:var(--green);color:white;padding:.43rem .72rem;cursor:pointer;text-decoration:none;font-weight:650;display:inline-block;min-height:2.35rem} button.secondary,.button.secondary{color:var(--green);background:#fff} button.danger{background:#8c302a;border-color:#8c302a} button:disabled{opacity:.55;cursor:not-allowed} :focus-visible{outline:3px solid #ae5d13;outline-offset:3px} nav button[aria-current=true]{background:#d6ecdf;color:#143d32} .muted,small{color:var(--muted)} .badge{display:inline-block;border-radius:1rem;background:#e1f0e6;padding:.15rem .55rem;font-size:.85rem} .warn{border:1px solid #d0a463;background:#fff4d6;border-radius:7px;padding:.55rem} #notice{padding:.7rem .8rem;background:#e0f0e4;border-radius:8px;position:sticky;top:0;z-index:3;box-shadow:0 2px 5px #0001} #notice.error{background:#fae0dc;color:#631a14} .scroll{overflow:auto;max-width:100%} table{border-collapse:collapse;width:100%} td,th{padding:.43rem .55rem;border:1px solid var(--line);text-align:left;vertical-align:top} th{background:#ebf4ed} .nowrap{white-space:nowrap} .text-block,.answer{white-space:pre-wrap;overflow-wrap:anywhere} .content-table{margin:.45rem 0;width:auto} .media{background:white;border:1px solid var(--line);display:inline-block;margin:.3rem;padding:.2rem;color:inherit} .media img{display:block;max-width:min(250px,100%);max-height:160px;object-fit:contain} .media:hover{background:#e6f2e9} dialog{max-width:min(100% - 1.5rem,900px);max-height:90vh;border:1px solid var(--line);border-radius:13px;color:inherit;padding:1rem;width:max-content;overflow:auto} dialog::backdrop{background:#09231ebd} dialog img{display:block;max-width:100%;max-height:72vh;object-fit:contain} .dialog-head{display:flex;justify-content:flex-end;margin-bottom:.65rem} details{margin:.45rem 0} summary{cursor:pointer;font-weight:650} .question{border-left:4px solid #5d9277} .compact{margin:.35rem 0;padding:.55rem} .sticky{position:sticky;top:0;z-index:2;box-shadow:0 1px 8px #0002} .time{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:750} .long{overflow-wrap:anywhere} @media(max-width:560px){main{margin:.8rem auto;padding-inline:.65rem}section,.card{padding:.8rem}.row>select,.row>input{max-width:100%}header{padding:.55rem .75rem}.content-table td{padding:.25rem}}
.student h1{overflow-wrap:anywhere} #focus-warning{max-width:min(100% - 1.5rem,32rem);padding:1.2rem} #focus-warning-error{color:#631a14;margin-top:.65rem}
.response-field{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:.5rem 0;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.response-field .answer-entry{flex:0 1 14rem;min-width:min(8rem,100%);width:14rem;font-weight:400}
.response-field .answer-entry:disabled{background:#f2f6f2}
.response-long{display:grid;gap:.25rem}
.response-long .answer-entry{width:100%;min-height:4rem}
.content-table.response-table{width:100%}
.response-table td{min-width:0}
.response-table td:not(:only-child) .answer-entry{width:100%;min-width:min(5rem,100%)}
