@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Orbitron:wght@600;700;800&display=swap");:root{--bg:#0b1220;--bg2:#111b31;--panel:linear-gradient(160deg,rgba(255,255,255,0.1),rgba(255,255,255,0.04));--panel-strong:rgba(255,255,255,0.06);--line:rgba(255,255,255,0.12);--text:#f5f8ff;--muted:#a8b4cc;--accent:#ff7a18;--accent-2:#ff9a3d;--accent-strong:#ffbc84;--accent-soft:rgba(255,122,24,0.16);--ink-soft:rgba(255,255,255,0.05);--success:#27c67a;--warning:#ffcb9e;--danger:#ff8f98;--shadow:0 16px 40px rgba(0,0,0,0.3);--radius-lg:28px;--radius-md:18px;--radius-sm:12px;--font-display:"Orbitron",sans-serif;--font-sans:"Inter","Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(255,122,24,.18),transparent 28%),radial-gradient(circle at bottom right,rgba(88,156,255,.18),transparent 26%),linear-gradient(145deg,var(--bg),var(--bg2));color:var(--text);font-family:var(--font-sans)}button,input,select{font:inherit}button{cursor:pointer}.dashboard-shell{padding:28px}.gate-card,.hero-panel,.modal-card,.panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-panel{display:flex;justify-content:space-between;gap:24px;padding:30px;border-radius:34px;margin-bottom:24px}.gate-card h1,.hero-panel h1{margin:8px 0 12px;font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);line-height:1.05;letter-spacing:.04em}.gate-card p,.hero-panel p{max-width:760px;margin:0;color:var(--muted);font-size:1rem;line-height:1.6}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));grid-gap:14px;gap:14px;min-width:430px}.stat-card{padding:18px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;min-height:110px}.stat-card span{color:var(--accent-strong);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.stat-card strong{font-family:var(--font-display);font-size:1.6rem}.dashboard-grid{display:grid;grid-template-columns:320px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:flex-start}.panel{padding:24px;border-radius:var(--radius-lg)}.main-column{display:grid;grid-gap:24px;gap:24px}.section-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.section-header h2{margin:4px 0 0;font-size:1.65rem;letter-spacing:.03em}.eyebrow,.section-header h2{font-family:var(--font-display)}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong);font-size:.82rem;font-weight:700}.button-row{display:flex;gap:10px;flex-wrap:wrap}.ghost-button,.primary-button,.secondary-button{border:none;border-radius:999px;padding:12px 18px;font-weight:700;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.primary-button{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#09111d;box-shadow:0 12px 30px rgba(255,122,24,.22)}.secondary-button{background:rgba(255,255,255,.09);color:var(--text);border:1px solid rgba(255,255,255,.1)}.ghost-button{background:transparent;color:var(--muted)}.ghost-button.danger{color:var(--danger)}.ghost-button:hover,.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.card-fields,.controls-grid,.rubric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.field{display:grid;grid-gap:8px;gap:8px}.field span{color:#dbe5f7;font-size:.92rem;font-weight:700}.field input,.field select{width:100%;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(8,16,30,.62);padding:13px 14px;color:var(--text);outline:none}.field input:focus,.field select:focus{border-color:rgba(255,122,24,.55);box-shadow:0 0 0 4px rgba(255,122,24,.12)}.dropzone,.feedback-banner,.rubric-summary{margin-top:18px}.rubric-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid var(--line)}.rubric-summary p{color:var(--muted);margin:4px 0 0}.feedback-banner{padding:14px 16px;border-radius:16px;background:var(--accent-soft);color:#ffcb9e;border:1px solid rgba(255,122,24,.24);font-weight:600}.session-sidebar{position:-webkit-sticky;position:sticky;top:24px}.session-list{display:grid;grid-gap:12px;gap:12px}.session-card{width:100%;text-align:left;padding:16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.05);display:grid;grid-gap:6px;gap:6px}.session-card strong{font-size:1rem}.session-card span{color:var(--muted);font-size:.9rem}.session-card.active{border-color:rgba(255,122,24,.35);background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,122,24,.08))}.dropzone{display:flex;justify-content:space-between;gap:24px;align-items:center;border:1.5px dashed rgba(255,122,24,.35);transition:border-color .16s ease,transform .16s ease,background .16s ease}.dropzone.dragging{border-color:rgba(255,122,24,.8);transform:translateY(-2px);background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.06))}.dropzone-copy{max-width:580px}.dropzone-copy h2{margin:4px 0 12px;font-family:var(--font-display);font-size:2rem;letter-spacing:.03em}.dropzone-actions span,.dropzone-copy p,.empty-state p{margin:0;color:var(--muted);line-height:1.6}.dropzone-actions{display:grid;grid-gap:12px;gap:12px;justify-items:flex-start}.submission-card,.submission-grid{display:grid;grid-gap:18px;gap:18px}.submission-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.submission-header h3{margin:10px 0 0;font-size:1.3rem}.thumbnail-strip{display:flex;gap:12px;overflow-x:auto}.thumbnail-card{margin:0;min-width:160px;background:rgba(255,255,255,.05);border-radius:18px;border:1px solid var(--line);overflow:hidden}.thumbnail-card img{display:block;width:100%;height:180px;object-fit:cover;background:#0b1220}.thumbnail-card figcaption{padding:10px 12px;color:var(--muted);font-size:.84rem}.status-pill{display:inline-flex;padding:7px 12px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:capitalize}.status-queued,.status-ready{background:rgba(64,156,255,.14);color:#b9d6ff}.status-grading{background:rgba(255,122,24,.16);color:var(--warning)}.status-graded{background:rgba(39,198,122,.14);color:var(--success)}.status-error{background:rgba(255,143,152,.16);color:var(--danger)}.field-error{color:var(--danger);margin:0}.results-panel{overflow:hidden}.table-shell{overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{text-align:left;padding:14px 12px;color:var(--accent-strong);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line)}tbody td{padding:16px 12px;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.06);line-height:1.55}.table-empty{text-align:center;color:var(--muted);padding:26px 12px}.empty-state{text-align:center;padding:52px 24px}.empty-state h2{margin:8px 0 12px;font-family:var(--font-display);font-size:2rem;letter-spacing:.03em}.gate-shell{min-height:100vh;display:grid;place-items:center;padding:28px}.gate-card{width:min(560px,100%);border-radius:34px;padding:36px}.gate-form{display:grid;grid-gap:16px;gap:16px;margin-top:28px}.modal-backdrop{position:fixed;inset:0;background:rgba(3,7,18,.72);display:grid;place-items:center;padding:24px}.modal-card{width:min(880px,100%);max-height:88vh;overflow-y:auto;border-radius:28px;padding:28px;background:linear-gradient(160deg,rgba(21,31,53,.96),rgba(14,23,39,.96))}.rubric-categories,.rubric-rules{display:grid;grid-gap:14px;gap:14px}.rubric-row{display:grid;grid-template-columns:minmax(0,1fr) 140px;grid-gap:14px;gap:14px}.small-field input{text-align:center}.modal-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:24px}@media (max-width:1100px){.dashboard-grid{grid-template-columns:1fr}.session-sidebar{position:static}.dropzone,.hero-panel{flex-direction:column;align-items:flex-start}.hero-stats{min-width:0;width:100%}}@media (max-width:760px){.dashboard-shell{padding:16px}.hero-panel,.panel{padding:20px;border-radius:24px}.card-fields,.controls-grid,.hero-stats,.rubric-grid,.rubric-row{grid-template-columns:1fr}.modal-footer,.rubric-summary,.section-header{flex-direction:column;align-items:flex-start}}