:root{color-scheme:light;--paper:#f5f6f2;--white:#fff;--ink:#233632;--muted:#64756f;--green:#206c56;--line:#dce5dd;--soft:#eaf2ec;--amber:#805a1e;--shadow:0 8px 30px #26392e08}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;line-height:1.65;font-size:15px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer;border:1px solid var(--green);border-radius:8px;padding:9px 16px;background:var(--green);color:white;font-weight:600}button:hover{filter:brightness(.94)}button:disabled{cursor:wait;opacity:.5}button.secondary{color:var(--green);background:white;border-color:var(--line)}button.quiet{background:transparent;color:var(--muted);border-color:var(--line);font-size:13px}a{color:var(--green)}.topbar{display:flex;align-items:center;gap:25px;padding:20px max(28px,calc((100vw - 1330px)/2));border-bottom:1px solid var(--line);background:#fcfdfb}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:20px;font-weight:700;white-space:nowrap}.brand small{display:block;font-size:11px;letter-spacing:2px;font-weight:400;color:var(--muted)}.brand-mark{border:1px solid #a9c5b4;border-radius:11px;font-size:32px;color:var(--green);width:47px;height:47px;text-align:center;line-height:40px}.version{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:3px 9px;border-radius:20px;white-space:nowrap}.topbar nav{margin-left:auto;display:flex;gap:24px}.topbar nav a{text-decoration:none;white-space:nowrap;font-size:14px;color:var(--muted)}.topbar nav a.active{color:var(--green);font-weight:bold}main{max-width:1280px;margin:34px auto;padding:0 26px;min-height:65vh}h1{font-size:30px;line-height:1.35;letter-spacing:1px;margin:8px 0 10px}h2{font-size:19px;margin:0 0 16px}h3{font-size:15px;margin:14px 0 8px}p{margin:9px 0}.eyebrow{font-size:12px;color:var(--green);letter-spacing:2px;font-weight:600}.muted{color:var(--muted);font-size:13px}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.hero p{color:var(--muted);max-width:760px}.model-card{min-width:235px;border-left:3px solid var(--green);padding:12px 20px;background:var(--soft);border-radius:0 10px 10px 0}.model-card strong{display:block;font-size:18px}.model-card small{display:block;font-size:12px;color:var(--muted)}.tabs{display:flex;gap:9px;margin:22px 0;flex-wrap:wrap}.tabs button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:8px 18px}.tabs button.selected{background:var(--green);color:white;border-color:var(--green)}.grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.card{background:white;border:1px solid var(--line);padding:24px;border-radius:14px;box-shadow:var(--shadow);margin-bottom:20px}.step{display:inline-flex;align-items:center;justify-content:center;font-size:12px;width:25px;height:25px;background:var(--soft);color:var(--green);border-radius:50%;margin-right:9px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.row.end{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field>span{font-size:13px;font-weight:600;color:#4b6058}input,textarea,select{background:#fcfdfb;border:1px solid #cbd9d0;border-radius:7px;color:var(--ink);width:100%;padding:9px 11px;min-height:42px}input[type=checkbox]{width:17px;min-height:auto}input[type=file]{font-size:13px}textarea{resize:vertical;min-height:90px;line-height:1.6}.small-text{font-size:12px}.badge{display:inline-block;font-size:11px;border-radius:5px;padding:3px 8px;background:var(--soft);color:var(--green);margin:0 5px 5px 0}.badge.warn,.warning{background:#fff5df;color:var(--amber)}.warning{border:1px solid #e9d8b8;border-radius:9px;padding:12px 15px;font-size:13px;margin-bottom:16px}.success{background:var(--soft);padding:12px 15px;border-radius:9px;font-size:13px}.item{padding:15px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.item strong{display:block}.item button{padding:6px 12px;font-size:12px}.item .row{margin-top:8px}.empty{padding:35px 15px;text-align:center;color:var(--muted);font-size:14px;border:1px dashed var(--line);border-radius:9px}.login{max-width:450px;margin:55px auto}.login h1{font-size:25px}.full{width:100%}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.metric{background:var(--paper);border-radius:8px;padding:12px}.metric strong{display:block;font-size:19px}.metric small{font-size:11px;color:var(--muted)}details{margin:12px 0}summary{cursor:pointer;color:var(--green);font-size:13px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);font:12px/1.7 ui-monospace,Consolas,monospace;padding:12px;border-radius:7px;max-height:330px;overflow:auto}.question{white-space:pre-wrap;line-height:1.9}.source-image{display:block;max-width:100%;max-height:400px;object-fit:contain;border-radius:8px;margin:10px 0}.conversation{max-height:600px;overflow:auto;padding:2px 5px;margin:16px 0}.bubble{white-space:pre-wrap;padding:14px 18px;border-radius:11px;background:var(--paper);margin-bottom:12px;font-size:14px}.bubble.student{margin-left:10%;background:var(--soft)}.bubble.teacher{margin-right:6%;border-left:3px solid #a4c7b3}.bubble small{display:block;font-size:10px;color:var(--muted);margin-bottom:6px}.bubble .question{font-weight:600;margin-top:8px}.student-layout{max-width:1000px;margin:auto}.student-layout .grid{grid-template-columns:.85fr 1.25fr}.link-box{word-break:break-all;background:var(--soft);border:1px solid var(--line);padding:12px;margin:12px 0;border-radius:9px;font-size:12px}.divider{border:0;border-top:1px solid var(--line);margin:20px 0}footer{text-align:center;color:#819188;font-size:11px;letter-spacing:1px;padding:25px 15px}#notice{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:9px;padding:12px 22px;max-width:80vw;z-index:10;box-shadow:0 6px 20px #0002}.hash{font:11px/1.7 Consolas,monospace;overflow-wrap:anywhere;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:1000px){.topbar{flex-wrap:wrap;padding:17px 22px;gap:14px}.topbar nav{width:100%;margin-left:0;gap:25px}.grid,.student-layout .grid{grid-template-columns:1fr}.hero{align-items:flex-start}.model-card{min-width:190px}.version{margin-left:auto}}
@media(max-width:600px){main{margin:23px auto;padding:0 16px}.hero{display:block}.model-card{margin-top:18px}.card{padding:18px}.brand{font-size:18px}h1{font-size:25px}.metrics{grid-template-columns:repeat(2,1fr)}.topbar nav{gap:18px}.topbar nav a{font-size:13px}.tabs button{padding:7px 11px}footer{letter-spacing:0}}
.task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.task-grid .card{margin-bottom:0}.account-box{background:var(--soft);padding:12px 15px;border-radius:9px;margin-bottom:17px}.turn-time{color:var(--muted);font-size:11px;text-align:center;margin:16px 0 8px}.tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}.tabs button{flex-shrink:0}.student-layout h1{overflow-wrap:anywhere}.bubble{overflow-wrap:anywhere}.student-layout .card{min-width:0}button{min-height:42px}
.review-grid{grid-template-columns:300px minmax(0,1fr)}
@media(max-width:1000px){.review-grid{grid-template-columns:1fr}}
@media(max-width:600px){input,textarea,select{font-size:16px}.task-grid{grid-template-columns:1fr}.student-layout .row.end{align-items:flex-start}.student-layout h1{font-size:24px}.topbar{gap:10px}.version{font-size:10px}.source-image{max-height:300px;margin-left:auto;margin-right:auto}.bubble.student{margin-left:4%}.bubble.teacher{margin-right:0}.login{margin:28px auto}.login h1{font-size:24px}.brand small{letter-spacing:1px}.student-layout .card{padding:16px}.student-layout .row.end button{font-size:12px;padding:7px 10px}.version{white-space:normal}.brand{white-space:normal}}
