:root{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#12343d;background:#eaf5f7;line-height:1.55;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 5%,#a6d8e1 0,transparent 24rem),linear-gradient(145deg,#e6f4f5,#f8fbfb)}button,input,select{font:inherit}.shell{width:min(920px,calc(100% - 28px));margin:28px auto 60px}.card{overflow:hidden;border:1px solid #d5e4e7;border-radius:30px;background:#fff;box-shadow:0 24px 80px rgba(0,80,105,.12)}.hero{padding:36px 42px;color:#fff;background:linear-gradient(135deg,#006f83,#078fa2)}.hero h1{margin:8px 0 0;font-size:clamp(32px,6vw,54px);line-height:1.12}.eyebrow{font-weight:800;letter-spacing:.12em;opacity:.85}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.stat{padding:14px;border-radius:18px;background:rgba(255,255,255,.12);text-align:center}.stat strong{display:block;font-size:30px}.body{padding:34px 42px}.muted{color:#657b81}.notice{padding:16px 18px;border:1px solid #bedfe6;border-radius:16px;background:#f0fafc}.warning{border-color:#f0d99c;background:#fff9e9;color:#6b4d06}.error{margin-top:16px;border-color:#efc1b9;background:#fff1ef;color:#8d382d}.success{background:#e9f7f2;color:#176458}.grid{display:grid;gap:18px}.two{grid-template-columns:1fr 1fr}.field label{display:block;margin-bottom:7px;font-weight:800}.field input,.field select{width:100%;padding:14px 15px;border:1px solid #c9dadd;border-radius:14px;background:#fff;color:#12343d;outline:none}.field input:focus,.field select:focus{border-color:#078ca1;box-shadow:0 0 0 3px #d9f0f4}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border:0;border-radius:14px;background:#007d91;color:#fff;font-weight:800;cursor:pointer}.button:hover{background:#006c7d}.button.secondary{background:#edf6f7;color:#145b68}.button.danger{background:#9d473d}.button:disabled{opacity:.55;cursor:wait}.wide{width:100%}.question-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.progress{height:10px;margin:18px 0 28px;border-radius:10px;background:#deecef;overflow:hidden}.progress span{display:block;height:100%;background:#078ca1;transition:width .2s}.question{font-size:22px;font-weight:800}.options{display:grid;gap:12px;margin:24px 0}.option{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #d4e1e4;border-radius:15px;cursor:pointer}.option:has(input:checked){border-color:#078ca1;background:#effafb}.option input{margin-top:5px}.nav{display:flex;justify-content:space-between;gap:12px}.score{font-size:64px;font-weight:900;line-height:1}.wrong{margin-top:16px;padding:18px;border:1px solid #d7e4e7;border-radius:17px;background:#fbfdfd}.wrong p{margin:8px 0}.wrong .student{color:#923c32}.wrong .correct{color:#176458}.analysis{padding:12px;border-radius:12px;background:#eff8fa;color:#164f5e}.papers{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.paper{padding:20px;border:2px solid #d8e5e7;border-radius:18px;background:#fff;text-align:left;cursor:pointer}.paper.active{border-color:#078ca1;background:#eef9fb}.admin-shell{width:min(1200px,calc(100% - 28px));margin:28px auto}.toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.summary>div{padding:18px;border-radius:18px;background:#fff;border:1px solid #d5e4e7}.summary strong{display:block;font-size:30px}.table-wrap{overflow:auto;border:1px solid #d5e4e7;border-radius:18px;background:#fff}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:14px;border-bottom:1px solid #e4edef;text-align:left;vertical-align:top}details{white-space:normal;width:min(560px,70vw)}details p{margin:8px 0}.badge{display:inline-block;padding:3px 9px;border-radius:999px;background:#e8f5f7;font-size:12px;font-weight:800}.login{width:min(440px,calc(100% - 28px));margin:12vh auto}.footer{margin-top:24px;text-align:center;font-size:13px;color:#657b81}@media(max-width:650px){.shell{margin-top:14px}.hero,.body{padding:26px 22px}.two,.papers{grid-template-columns:1fr}.hero h1{font-size:34px}.stats{gap:8px}.stat{padding:10px 4px}.stat strong{font-size:24px}.question{font-size:19px}.summary{grid-template-columns:1fr}.toolbar{display:block}.nav .button{padding:0 14px}}
