*{box-sizing:border-box}body{margin:0;background:#f3f5f7;color:#182838;font:16px/1.5 system-ui,sans-serif}button,input,select,textarea{font:inherit;max-width:100%}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid #a3b2bf;background:white;color:#183b56;border-radius:7px;min-height:44px;padding:8px 13px}button:disabled{cursor:wait;opacity:.6}.primary{background:#164e69;color:white;border-color:#164e69}a{color:#125f84}input,select,textarea{display:block;border:1px solid #8194a5;border-radius:6px;padding:10px;width:100%;margin:5px 0 14px;min-height:44px}input[type=checkbox]{width:22px;min-height:22px;margin:0}label{font-weight:600}textarea{resize:vertical}h1{font-size:clamp(1.6rem,4vw,2.2rem);line-height:1.2}h2{font-size:1.4rem}h3{font-size:1.1rem}.bar{display:flex;align-items:center;gap:20px;padding:14px 24px;background:#182b3a;color:white;flex-wrap:wrap}.bar button{margin-left:auto}main{max-width:1450px;margin:auto;padding:24px}.card{background:white;border:1px solid #d7e0e7;border-radius:12px;padding:24px;margin-bottom:20px;min-width:0}.intro,.privacy{max-width:680px;margin:0 auto 20px}.eyebrow{color:#536a7a;text-transform:uppercase;letter-spacing:.07em;font-size:.8rem;font-weight:700}.layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:20px}.roster{align-self:start;position:sticky;top:10px}.roster button{display:block;width:100%;text-align:left;margin:6px 0}.roster button.active{background:#e7f3fa;border-color:#16668c;box-shadow:inset 4px 0 #16668c}.student-heading,.workspace-heading,.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.student-heading h2{margin-right:auto}.toolbar{margin:10px 0}.muted{color:#566a78}.notice{padding:12px;background:#fff5da;border-radius:7px}.error{padding:15px;border:1px solid #b32f3a;background:#fff0f1;color:#87212c;margin-bottom:15px;overflow-wrap:anywhere}.error[hidden],[hidden]{display:none!important}fieldset{border:1px solid #cedae3;border-radius:8px;margin:18px 0;padding:15px}.page-check{display:flex;align-items:center;gap:8px;padding:7px;min-height:44px}#blocks article{border:1px solid #d6e1e8;border-radius:8px;padding:15px;margin:12px 0}#blocks p{white-space:pre-wrap;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#202b38;color:#f3f7fa;padding:16px;border-radius:6px;font:14px/1.6 Consolas,monospace}#image{display:block;max-width:100%;height:auto;border:1px solid #ccd6dd}#feedback-panel{border-top:1px solid #d4e0e8;margin-top:24px;padding-top:14px}.choices{max-height:350px;overflow:auto;border:1px solid #d7e0e7;padding:10px;margin:10px 0}.choices label{display:flex;gap:10px;align-items:center;padding:8px;font-weight:400}.code-row{padding:12px 0;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:12px;flex-wrap:wrap}#grants{overflow-wrap:anywhere}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:5}:focus-visible{outline:3px solid #d48b11;outline-offset:3px}summary{cursor:pointer;min-height:44px;display:list-item}#created{padding:16px;background:#edf8ef;border:1px solid #9abd9b;margin-top:20px}.workspace-heading{justify-content:space-between}#save-status{color:#365d49}#page-list button[aria-current=true]{background:#164e69;color:white}@media(max-width:720px){main{padding:12px}.bar{padding:12px;gap:12px}.bar span{font-size:.85rem}.card{padding:16px}.layout{grid-template-columns:1fr}.roster{position:static}.roster #students{max-height:220px;overflow:auto}.student-heading{align-items:flex-start}.student-heading h2{width:100%;margin-bottom:0}.toolbar button{flex:1 1 130px}.view-tabs button{flex:1 1 100px}fieldset{padding:10px}#page-checks label{flex:0 0 auto}.workspace-heading{align-items:flex-start}h1{overflow-wrap:anywhere}}
/* Student evidence uses the full reading width without a grader roster. */
.layout:has(.roster[hidden]){grid-template-columns:minmax(0,1fr)}

/* Role-focused evidence comparison. */
.release-state{max-width:330px;padding:7px 10px;border:1px solid #d8c17e;border-radius:999px;background:#fff8df;color:#6d4c08;font-size:.78rem;font-weight:750;text-align:center}
#workspace-component{margin:2px 0 0}
.component-list{margin:6px 0 12px}
.component-list button[aria-selected=true]{background:#164e69;color:white;border-color:#164e69}
.inline-retry{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #d8a0a5;border-radius:8px;background:#fff5f6}
.page-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.page-comparison>div{min-width:0;padding:12px;border:1px solid #d7e0e7;border-radius:10px;background:#fbfcfd}
.page-comparison h3{margin-top:0}
.view-tabs{display:none}
#paper img{width:100%;background:white}
@media(max-width:720px){
 .release-state{max-width:none;border-radius:8px;text-align:left}
 .page-comparison{display:block}
 .page-comparison>div{padding:0;border:0;background:white}
 .view-tabs{display:flex;position:sticky;top:0;z-index:2;padding:4px;background:white}
 .view-tabs button{min-height:44px}
}

/* Logistics Lab presentation and compact sharing workflow. */
:root{--ink:#122733;--muted:#5b707b;--paper:#f5f6f3;--white:#fff;--line:#d8e1e1;--soft:#edf3f2;--teal:#087d77;--teal-dark:#09635f;--amber:#e1a23d;--shadow:0 16px 45px rgba(18,39,51,.08)}
body{background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
button{border-color:#aebdbd;color:var(--ink);border-radius:9px;min-height:42px;font-weight:600}.primary{background:var(--teal);border-color:var(--teal)}.primary:hover:not(:disabled){background:var(--teal-dark);border-color:var(--teal-dark)}.secondary-action{background:var(--ink);color:white;border-color:var(--ink)}
input,select,textarea{border-color:#93a5aa;border-radius:8px;padding:9px 11px;min-height:42px}input[type=checkbox]{accent-color:var(--teal)}a{color:#0a676d}h1{letter-spacing:-.025em}.bar{min-height:64px;padding:10px 24px;background:var(--ink)}.bar-brand{display:flex;align-items:center;gap:10px;color:white;text-decoration:none}.mini-mark{display:block;width:26px;height:26px;border:6px solid #68cfc4;border-top-color:var(--amber);border-radius:8px}.bar>span{color:#c7d3d6;font-size:.87rem}.bar button{background:transparent;color:white;border-color:#60727b}.card{border-color:var(--line);border-radius:14px;padding:22px;margin-bottom:18px}.intro{max-width:620px;margin-top:32px;padding:32px;box-shadow:var(--shadow)}.intro h1{font-size:clamp(2rem,5vw,3rem)}.privacy{max-width:620px}.eyebrow{margin:0;color:var(--teal);letter-spacing:.11em;font-size:.72rem;font-weight:800}.choices{border-color:var(--line);border-radius:9px;background:#fbfcfb}.choices label{border-radius:7px}.choices label:hover{background:var(--soft)}
.manage{max-width:1180px;margin:auto}.manage-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:8px 0 20px}.manage-heading>div{max-width:680px}.manage-heading p:last-child{color:var(--muted);margin-bottom:0}.quick-links{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.quick-links a{padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:white;text-decoration:none;font-size:.88rem;font-weight:650}.manage-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(310px,.88fr);gap:18px}.setup-card,.create-card{position:relative;padding-top:26px}.step{position:absolute;right:18px;top:17px;width:30px;height:30px;border-radius:9px;background:#dff3f0;color:var(--teal-dark);font-weight:800;display:grid;place-items:center}.setup-card h2,.create-card h2{margin-top:0}.days-field{display:grid;grid-template-columns:110px auto;align-items:center;gap:8px}.days-field input{margin-bottom:13px}.days-field span{color:var(--muted);margin-bottom:8px}.create-card form button{width:100%;margin-top:7px}.help{color:var(--muted);font-size:.82rem}.created{margin-top:18px;padding:15px;background:#edf8f3;border:1px solid #acd2c2;border-radius:10px}.created p:first-child{margin-top:0}.created details{margin-top:10px}.copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.copy-field input{margin:0}.copy-field button{min-width:74px}
.link-directory{box-shadow:var(--shadow)}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.directory-heading h2{margin:.2em 0}.directory-heading p:last-child{margin:0;color:var(--muted)}.directory-table{overflow:auto;margin-top:18px;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;min-width:620px}th,td{text-align:left;padding:11px 13px;border-bottom:1px solid var(--line)}th{background:#f1f5f4;color:#4a6069;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}td:first-child{font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:0}.code-row{border-color:var(--line)}.code-row span{margin-right:auto}.existing-codes h2{margin-top:0}.layout{gap:18px}.release-state{border-color:#d8c17e}.component-list button[aria-selected=true],#page-list button[aria-current=true]{background:var(--teal);border-color:var(--teal)}
@media(max-width:820px){.manage-heading{display:block}.quick-links{justify-content:flex-start;margin-top:16px}.manage-grid{grid-template-columns:1fr}.directory-heading{display:block}.directory-heading .toolbar{margin-top:15px}}
@media(max-width:720px){.bar{padding:10px 14px;gap:10px}.bar>span{display:none}.intro{margin-top:18px}.directory-heading .toolbar button{flex:1}.quick-links a{flex:1 1 auto;text-align:center}}
