:root {
  --sky-50:#f4fbff; --sky-100:#e5f6ff; --sky-200:#c6eaff; --sky-500:#2f9bff; --sky-600:#197de3;
  --navy-900:#102c4d; --navy-700:#24547f; --muted:#6c8499; --line:#dceaf4; --white:#fff;
  --green:#1eaa70; --green-soft:#e7f8f0; --red:#dd5863; --red-soft:#fff0f1; --orange:#e98d2f; --orange-soft:#fff5e8;
  --shadow:0 16px 46px rgba(25,91,140,.13); --radius:20px;
  font-family:Inter,ui-rounded,"SF Pro Rounded","PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--navy-900); background:var(--sky-50); font-synthesis:none;
}
*{box-sizing:border-box} html{min-height:100%} body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#dff4ff 0,#f7fcff 42%,#f4f8fb 100%)}
button,input,select,textarea{font:inherit} button{color:inherit} button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(47,155,255,.28);outline-offset:2px}
.sky-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none}.cloud{position:absolute;width:170px;height:45px;border-radius:99px;background:rgba(255,255,255,.68)}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.cloud:before{width:70px;height:70px;left:24px;bottom:3px}.cloud:after{width:90px;height:90px;right:16px;bottom:0}.cloud-one{top:11%;right:8%}.cloud-two{bottom:12%;left:8%;transform:scale(.62);opacity:.65}.route{position:absolute;width:390px;border-top:2px dashed rgba(255,255,255,.92);right:-20px;top:30%;transform:rotate(-12deg)}.plane{position:absolute;right:21%;top:22%;color:#fff;font-size:36px;transform:rotate(-9deg);filter:drop-shadow(0 8px 10px rgba(22,105,166,.18))}
.staff-app{position:relative;z-index:1;min-height:100vh}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:28px}.login-card{width:min(100%,460px);padding:36px;border:1px solid rgba(255,255,255,.96);border-radius:30px;background:rgba(255,255,255,.88);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.logo-row{display:flex;align-items:center;gap:14px}.logo-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,var(--sky-500),var(--sky-600));font-size:25px;box-shadow:0 10px 24px rgba(47,155,255,.26)}.logo-row strong{display:block;font-size:19px}.logo-row small{display:block;margin-top:3px;color:var(--muted)}.login-card h1{margin:32px 0 8px;font-size:30px}.lead{margin:0;color:var(--muted);line-height:1.7}.login-form{display:grid;gap:17px;margin-top:28px}.field{display:grid;gap:7px}.field span{font-size:13px;font-weight:800;color:var(--navy-700)}.field input,.field select,.field textarea,.toolbar select{width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--navy-900);padding:12px 13px}.field textarea{min-height:88px;resize:vertical}.login-note{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.7}.form-error{padding:11px 13px;border-radius:12px;background:var(--red-soft);color:#b83b46;font-size:13px}
.primary,.secondary,.danger,.ghost{min-height:42px;padding:0 16px;border:0;border-radius:12px;font-weight:850;cursor:pointer}.primary{color:#fff;background:linear-gradient(135deg,var(--sky-500),var(--sky-600));box-shadow:0 8px 18px rgba(25,125,227,.18)}.secondary{color:var(--sky-600);background:var(--sky-100)}.danger{color:#b63e48;background:var(--red-soft)}.ghost{background:#fff;border:1px solid var(--line);color:var(--navy-700)}button:disabled{opacity:.48;cursor:not-allowed}
.staff-shell{display:grid;grid-template-columns:242px minmax(0,1fr);min-height:100vh}.staff-side{position:sticky;top:0;height:100vh;padding:23px 17px;display:flex;flex-direction:column;background:rgba(255,255,255,.82);border-right:1px solid rgba(255,255,255,.95);backdrop-filter:blur(18px)}.side-brand{padding:0 7px}.side-nav{display:grid;gap:7px;margin-top:36px}.side-nav button{min-height:47px;padding:0 14px;display:flex;align-items:center;gap:11px;border:0;border-radius:14px;background:transparent;color:var(--muted);font-weight:750;text-align:left;cursor:pointer}.side-nav button:hover,.side-nav button.active{background:var(--sky-100);color:var(--sky-600)}.side-user{margin-top:auto;padding:15px 9px 0;border-top:1px solid var(--line)}.side-user strong,.side-user small{display:block}.side-user small{margin-top:4px;color:var(--muted)}.side-user button{margin-top:13px;width:100%}
.staff-main{min-width:0}.staff-top{height:72px;padding:0 clamp(20px,4vw,54px);display:flex;align-items:center;justify-content:space-between;gap:15px;position:sticky;top:0;z-index:5;background:rgba(229,247,255,.78);border-bottom:1px solid rgba(255,255,255,.9);backdrop-filter:blur(15px)}.staff-top h1{margin:0;font-size:19px}.student-link{color:var(--sky-600);font-size:13px;font-weight:800;text-decoration:none}.staff-content{width:min(100%,1320px);margin:0 auto;padding:34px clamp(20px,4vw,54px) 60px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{margin:0 0 6px;color:var(--sky-600);font-size:11px;font-weight:900;letter-spacing:.14em}.page-head h2{margin:0 0 7px;font-size:clamp(25px,3vw,36px)}.page-head p{margin:0;color:var(--muted);line-height:1.6}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card,.panel,.review-card{border:1px solid rgba(255,255,255,.95);background:rgba(255,255,255,.89);box-shadow:0 7px 24px rgba(31,92,137,.08)}.stat-card{padding:20px;border-radius:18px}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;margin-top:9px;font-size:29px}.stat-card em{display:block;margin-top:6px;color:var(--sky-600);font-style:normal;font-size:11px}.panel{margin-top:17px;padding:22px;border-radius:var(--radius)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.panel-head h3{margin:0;font-size:18px}.status-bars{display:grid;gap:13px}.status-row{display:grid;grid-template-columns:100px minmax(0,1fr) 45px;align-items:center;gap:12px;font-size:13px}.bar{height:9px;border-radius:99px;background:#e7f0f6;overflow:hidden}.bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--sky-500),#6bcaff)}
.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:17px}.toolbar select{width:auto;min-width:150px;padding:9px 12px}.toolbar .field-inline{width:170px;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.count-note{margin-left:auto;color:var(--muted);font-size:12px}.review-list{display:grid;gap:15px}.review-card{padding:21px;border-radius:18px}.review-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-bottom:12px}.tag{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--sky-100);color:var(--sky-600);font-size:11px;font-weight:850}.tag.unverified{background:var(--orange-soft);color:#ad651c}.tag.verified{background:var(--green-soft);color:#168358}.tag.needs_revision{background:var(--red-soft);color:#b63e48}.review-card h3{margin:0 0 15px;font-size:17px;line-height:1.55;white-space:pre-line}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.option{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fafcfe;color:var(--navy-700);font-size:13px;line-height:1.5}.option.correct{border-color:#aee0c9;background:var(--green-soft);color:#13744e;font-weight:800}.explanation{margin:13px 0 0;padding:13px 15px;border-radius:13px;background:var(--sky-50);color:#466a87;font-size:13px;line-height:1.65}.note-history{margin-top:12px;padding:11px 13px;border-left:3px solid var(--orange);background:var(--orange-soft);color:#805121;font-size:12px;line-height:1.6}.review-actions{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;margin-top:15px}.review-actions input{min-width:0;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.action-buttons{display:flex;gap:8px}
.empty{padding:50px 20px;text-align:center;border-radius:20px;background:rgba(255,255,255,.7);color:var(--muted)}.empty b{display:block;margin-bottom:8px;color:var(--navy-900);font-size:18px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px;background:#fff}table{width:100%;border-collapse:collapse;min-width:680px}th,td{padding:13px 14px;border-bottom:1px solid #ebf2f7;text-align:left;font-size:13px}th{background:#f6fbfe;color:var(--muted);font-size:11px}td{color:var(--navy-700)}tr:last-child td{border-bottom:0}.create-user{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:10px;align-items:end}.create-user .field input,.create-user .field select{padding:10px 11px}.audit-detail{max-width:300px;white-space:normal;overflow-wrap:anywhere}.toast-wrap{position:fixed;right:20px;bottom:20px;z-index:30;display:grid;gap:8px}.toast{max-width:350px;padding:13px 17px;border-radius:13px;color:#fff;background:var(--navy-900);box-shadow:var(--shadow);animation:toast-in .2s ease}.toast.error{background:#aa3741}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
.mobile-menu{display:none}.loading{padding:70px;text-align:center;color:var(--muted)}
@media(max-width:1050px){.stat-grid{grid-template-columns:repeat(2,1fr)}.create-user{grid-template-columns:1fr 1fr}.create-user button{align-self:end}.staff-shell{grid-template-columns:82px minmax(0,1fr)}.staff-side{padding-inline:12px}.side-brand .logo-row>div,.side-nav button span,.side-user strong,.side-user small{display:none}.side-brand .logo-mark{width:48px}.side-nav button{justify-content:center;padding:0}.side-user{padding-inline:0}}
@media(max-width:700px){.login-card{padding:27px 22px}.staff-shell{display:block}.staff-side{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:70px;padding:7px 9px;z-index:20;border:1px solid #fff;display:block}.side-brand,.side-user{display:none}.side-nav{margin:0;display:flex;overflow-x:auto;gap:5px}.side-nav button{min-width:62px;height:55px;display:grid;place-items:center;gap:0;padding:3px;font-size:17px}.side-nav button span{display:block;font-size:9px}.staff-top{height:61px;padding-inline:16px}.staff-top h1{font-size:16px}.staff-content{padding:24px 14px 95px}.page-head{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:16px}.stat-card strong{font-size:23px}.option-grid{grid-template-columns:1fr}.review-actions{grid-template-columns:1fr}.action-buttons{display:grid;grid-template-columns:1fr 1fr}.create-user{grid-template-columns:1fr}.count-note{width:100%;margin-left:0}.student-link{font-size:11px}}
@media(max-width:400px){.stat-grid{grid-template-columns:1fr}.staff-top h1{font-size:14px}}

.tag.draft{background:#eef3f7;color:#58728a}.tag.pending{background:var(--orange-soft);color:#ad651c}.tag.approved{background:var(--green-soft);color:#168358}.tag.rejected{background:var(--red-soft);color:#b63e48}.tag.disabled{background:#edf0f2;color:#687985}
.create-question{margin-top:0;margin-bottom:18px}.create-question>summary,.bank-editor>summary{cursor:pointer;color:var(--sky-600);font-weight:850;list-style:none}.create-question>summary::-webkit-details-marker,.bank-editor>summary::-webkit-details-marker{display:none}.create-question[open]>summary{margin-bottom:20px}.create-tabs{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:24px}.question-form{display:grid;gap:13px}.question-form h3{margin:0 0 4px}.question-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.question-form textarea{min-height:86px}.question-form .field input,.question-form .field select,.question-form .field textarea{padding:10px 11px}.bank-editor{margin-top:15px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}.bank-editor[open]>summary{margin-bottom:15px}.bank-editor .question-form{padding-top:3px}.bank-editor .primary{justify-self:start}
@media(max-width:900px){.create-tabs{grid-template-columns:1fr}}
@media(max-width:700px){.question-form-grid{grid-template-columns:1fr}.options-editor{grid-template-columns:1fr 1fr}.create-question{padding:17px}.toolbar select{width:100%}.toolbar .field-inline{width:100%}}
