:root{--green:#164f3d;--green2:#28725d;--mint:#edf7f2;--line:#cdded7;--ink:#17352c;--muted:#647870;--red:#9b3034;--paper:#fbfcfa}*{box-sizing:border-box}body{margin:0;background:#f4f7f4;color:var(--ink);font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}.site-head{min-height:78px;padding:12px 4vw;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;color:var(--green);text-decoration:none}.brand img{width:48px;height:48px;object-fit:contain}.brand span{display:grid}.brand small{color:var(--muted)}nav{display:flex;gap:18px;margin-left:auto}nav a,.link-button{color:var(--green);font-weight:700;text-decoration:none;background:none;border:0;padding:8px;cursor:pointer}button{font:inherit}.site-head>button,.secondary{background:#fff;border:1px solid var(--green);border-radius:10px;padding:10px 16px;color:var(--green);font-weight:750;cursor:pointer}main{width:min(1220px,94vw);margin:28px auto 80px}.hero{padding:34px 40px;border-radius:24px;background:linear-gradient(125deg,#104331,#28725d);color:#fff}.hero p,.panel-head p,.dialog-head p{font-size:.78rem;letter-spacing:.16em;font-weight:850;margin:0}.hero h1{font-size:clamp(2rem,5vw,3.5rem);margin:.15em 0}.panel{margin-top:24px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:20px}.toolbar{margin-top:22px}.primary{border:0;border-radius:11px;background:var(--green);color:#fff;font-weight:800;padding:12px 20px;cursor:pointer}.panel-head,.dialog-head,.card-head,.prompt-head,.submit-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.panel-head h2,.dialog-head h2{margin:.1em 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}label{display:grid;gap:6px;font-weight:700;margin:14px 0}label span,legend span{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;padding:11px 12px;border:1px solid #abc4ba;border-radius:10px;background:#fff;color:var(--ink);font:inherit}textarea{resize:vertical}fieldset{border:1px solid var(--line);border-radius:15px;margin:20px 0;padding:18px}legend{font-size:1.1rem;font-weight:850}.prompt-row{border-top:1px solid var(--line);padding:14px 0}.prompt-row:first-child{border-top:0}.prompt-fields{display:grid;grid-template-columns:2fr 1fr;gap:12px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.card{padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.card h3{margin:0}.stage{font-size:.8rem;padding:4px 9px;border-radius:999px;background:var(--mint);color:var(--green);font-weight:800}.meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.88rem}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.actions button,.actions a{border:0;background:none;color:var(--green);font-weight:800;padding:6px 3px;cursor:pointer;text-decoration:none}.actions .danger{color:var(--red)}.inline-error,.error{color:var(--red);font-weight:750}.empty{color:var(--muted)}.student-table{width:100%;border-collapse:collapse;margin-top:18px}.student-table th,.student-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.student-name{border:0;background:none;color:var(--green);font-weight:800;text-decoration:underline;cursor:pointer;padding:0}.stage-controls{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--mint);margin:18px 0}.student-screen{display:grid;gap:18px}.waiting{padding:28px;border-radius:18px;background:var(--mint);text-align:center}.pdf-frame{width:100%;height:min(68vh,760px);border:1px solid var(--line);border-radius:12px;background:#eee}.review-task{border:1px solid var(--line);border-radius:16px;padding:18px;margin:18px 0}.review-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:20px}.feedback-answer{padding:12px;border-left:4px solid var(--green2);background:var(--mint);margin:10px 0}.critique{border:1px solid #d5c983;background:#fffceb;border-radius:14px;padding:16px}.critique h4{margin:.2em 0}dialog{width:min(840px,92vw);max-height:88vh;overflow:auto;border:0;border-radius:20px;padding:26px;box-shadow:0 18px 70px #1238}dialog::backdrop{background:#14282099}.preview-banner{position:sticky;top:0;z-index:5;padding:12px;background:#fff5cf;border:1px solid #e7d68b;border-radius:12px}.preview-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.preview-tabs button[aria-selected=true]{background:var(--green);color:#fff}.hidden{display:none!important}@media(max-width:760px){.site-head{flex-wrap:wrap}.site-head nav{order:3;width:100%;overflow:auto}.hero,.panel{padding:20px}.review-layout,.prompt-fields{grid-template-columns:1fr}.student-table{display:block;overflow-x:auto}}
