:root{color:#202824;background:#eef1ed;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;letter-spacing:0;--ink: #202824;--muted: #66716a;--line: #d6ddd7;--surface: #ffffff;--surface-soft: #f6f8f5;--green: #247a4a;--green-dark: #185d37;--green-soft: #e7f3eb;--blue: #2e6284;--blue-soft: #eaf2f7;--amber: #a76b17;--amber-soft: #fff5df;--red: #b3433e;--red-soft: #fbeceb;--shadow: 0 10px 30px rgba(28, 43, 34, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;min-height:100vh;background:#eef1ed}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--blue)}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--muted)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.brand{display:inline-flex;align-items:center;gap:11px;min-width:0}.brand-mark{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;color:#fff;background:var(--green);border-radius:6px;font-size:22px;line-height:1}.brand-copy{display:grid;line-height:1.05}.brand-copy strong{max-width:260px;font-size:15px;line-height:1.15}.brand-copy small{margin-top:4px;color:var(--muted);font-size:12px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:#eef1ed}.auth-panel{width:min(100%,430px);padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.auth-panel>.brand{margin-bottom:28px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:22px}.auth-tabs button{padding:11px 8px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:650}.auth-tabs button.active{color:var(--green-dark);border-bottom-color:var(--green)}.auth-form{display:grid;gap:9px}.auth-form label,.filter-panel label,.feedback-panel form>label{margin-top:7px;font-size:13px;color:#4d5851;font-weight:650}input,select,textarea{width:100%;border:1px solid #c8d1ca;border-radius:5px;background:#fff;color:var(--ink);outline:none}input,select{height:42px;padding:0 12px}textarea{padding:11px 12px;resize:vertical;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #247a4a21}.choice input,.segmented-control input,.issue-grid input{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;opacity:0;clip-path:inset(50%)}.password-field{position:relative}.password-field input{padding-right:44px}.password-toggle{position:absolute;top:4px;right:4px;width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted)}.primary-button,.secondary-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:9px 15px;border-radius:5px;font-weight:700}.primary-button{border:1px solid var(--green);background:var(--green);color:#fff}.primary-button:hover:not(:disabled){background:var(--green-dark);border-color:var(--green-dark)}.secondary-button{border:1px solid #b7c4ba;background:#fff;color:#2f4638}.secondary-button:hover:not(:disabled){background:var(--surface-soft);border-color:#8da294}.danger-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 15px;border:1px solid #d4aaa7;border-radius:5px;background:#fff;color:#8c302c;font-weight:700}.danger-button:hover:not(:disabled){border-color:var(--red);background:var(--red-soft)}.auth-submit{width:100%;margin-top:14px}.auth-assurance{display:flex;align-items:flex-start;gap:9px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.45}.auth-assurance svg{flex:0 0 auto;color:var(--blue)}.alert{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:12px;padding:8px 8px 8px 12px;border:1px solid #e1aaa7;border-radius:5px;background:var(--red-soft);color:#7e2926;font-size:14px}.alert>span{flex:1}.notice{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:12px;padding:8px 8px 8px 12px;border:1px solid #a8ceb5;border-radius:5px;background:var(--green-soft);color:var(--green-dark);font-size:14px}.notice>span{flex:1}.icon-button{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted)}.icon-button:hover{background:#edf2ee;color:var(--ink)}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--line);background:#fffffff7}.topbar-actions{display:flex;align-items:center;gap:10px}.topbar-nav{height:100%;display:flex;align-items:stretch}.topbar-nav button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px;padding:0 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-size:13px;font-weight:700}.topbar-nav button:hover{color:var(--ink);background:var(--surface-soft)}.topbar-nav button.active{color:var(--green-dark);border-bottom-color:var(--green)}.user-chip{display:flex;align-items:center;gap:8px;color:#4e5952;font-size:14px}.user-chip>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:800}.workspace{min-height:calc(100vh - 64px);display:grid;grid-template-columns:245px minmax(460px,760px) minmax(280px,350px);justify-content:center;gap:18px;padding:20px}.certificate-workspace{grid-template-columns:245px minmax(560px,850px)}.certificate-workspace .review-column{display:none}.sidebar,.review-column{min-width:0}.sidebar{display:flex;flex-direction:column;gap:16px}.progress-block,.filter-panel,.feedback-panel,.review-placeholder{background:var(--surface);border:1px solid var(--line);border-radius:6px}.progress-block,.filter-panel{padding:17px}.section-heading{display:flex;align-items:center;gap:8px;margin-bottom:15px}.section-heading svg{color:var(--green)}.section-heading h2{margin:0;font-size:14px;line-height:1.25}.progress-row{display:flex;align-items:baseline;gap:5px}.progress-row strong{font-size:25px}.progress-row span{color:var(--muted);font-size:13px}.progress-row .progress-percent{margin-left:auto;color:var(--green-dark);font-weight:700}.progress-track{height:7px;margin:10px 0 16px;overflow:hidden;border-radius:4px;background:#e2e8e3}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--green)}.progress-details{display:grid;grid-template-columns:repeat(3,1fr);margin:0}.progress-details div{display:grid;gap:4px;padding:0 8px;text-align:center;border-right:1px solid var(--line)}.progress-details div:first-child{padding-left:0}.progress-details div:last-child{padding-right:0;border-right:0}.progress-details dt{color:var(--muted);font-size:11px}.progress-details dd{margin:0;font-size:14px;font-weight:750}.round-timer{display:flex;align-items:center;gap:7px;margin-top:15px;padding:9px 10px;border-radius:5px;background:var(--blue-soft);color:var(--blue);font-size:11px}.round-timer strong{margin-left:auto;color:#244f6b;font-size:13px;font-variant-numeric:tabular-nums}.question-progress{display:grid;grid-template-columns:repeat(5,28px);justify-content:space-between;gap:8px 5px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.question-progress-dot{width:28px;height:28px;display:grid;place-items:center;border:1px solid #cbd4cd;border-radius:50%;background:var(--surface-soft);color:var(--muted);font-size:10px;font-weight:800}.question-progress-dot.correct{border-color:var(--green);background:var(--green);color:#fff}.question-progress-dot.incorrect{border-color:#b9423d;background:#b9423d;color:#fff}.question-progress-dot.ungraded{border-style:dashed;background:#eef1ef;color:#58625b}.filter-panel{display:grid;gap:8px}.filter-panel .section-heading{margin-bottom:5px}.select-wrap{position:relative}.select-wrap select{padding-right:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-wrap>svg{position:absolute;top:12px;right:11px;pointer-events:none;color:var(--muted)}.queue-note{display:flex;align-items:flex-start;gap:8px;padding:2px 4px;color:var(--muted);font-size:12px;line-height:1.4}.queue-note svg{flex:0 0 auto;color:var(--blue)}.submission-workspace{width:min(100%,1120px);min-height:calc(100vh - 64px);margin:0 auto;padding:24px 20px 42px}.submission-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px}.submission-heading-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:6px;background:var(--blue-soft);color:var(--blue)}.submission-heading h1{margin:0;font-size:24px;line-height:1.2}.submission-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.submission-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:20px;align-items:start}.submission-form-panel{padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #1e2d2409}.submission-form-panel form{display:grid;gap:8px}.submission-form-panel form>label,.moderation-item>label{margin-top:8px;color:#4d5851;font-size:13px;font-weight:650}.submission-section-title{display:flex;align-items:center;gap:8px;margin-bottom:16px}.submission-section-title>svg{color:var(--green)}.submission-section-title h2{margin:0;font-size:16px}.submission-section-title>div{display:flex;align-items:center;gap:8px}.submission-section-title>div>span{min-width:23px;height:23px;display:grid;place-items:center;padding:0 6px;border-radius:50%;background:#e8ede9;color:#536057;font-size:11px;font-weight:800}.submission-choices-field{display:grid;gap:8px;margin:10px 0 0;padding:0;border:0}.submission-choices-field legend{margin-bottom:8px;color:#4d5851;font-size:13px;font-weight:650}.submission-choice-input{display:grid;grid-template-columns:34px minmax(0,1fr) 38px;align-items:center;gap:8px;padding:6px;border:1px solid var(--line);border-radius:5px;background:var(--surface-soft)}.submission-choice-input.selected{border-color:#8fbea0;background:var(--green-soft)}.submission-choice-input>input[type=text]{height:38px}.submission-choice-letter{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#e7ece8;color:#475349;font-size:12px;font-weight:800}.correct-answer-control{width:34px;height:34px;display:grid;place-items:center;border:1px solid #bcc8bf;border-radius:50%;background:#fff;color:#9aa59d;cursor:pointer}.correct-answer-control input{position:absolute;width:1px;height:1px;opacity:0}.submission-choice-input.selected .correct-answer-control{border-color:var(--green);background:var(--green);color:#fff}.correct-answer-control:focus-within{box-shadow:0 0 0 3px #247a4a24}.submission-submit{margin-top:12px;justify-self:end}.submission-history{min-width:0}.submission-history-list,.moderation-list{display:grid;gap:10px}.submission-history-item,.moderation-item{padding:15px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #1e2d2408}.submission-item-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;color:var(--muted);font-size:11px}.submission-item-meta time{margin-left:auto}.submission-history-item h3,.moderation-item h3{margin:11px 0 8px;font-size:15px;line-height:1.45;overflow-wrap:anywhere}.submission-history-item>p{margin:0;color:var(--muted);font-size:12px}.submission-status{padding:4px 7px;border-radius:4px;font-weight:750}.submission-status.pending{background:var(--amber-soft);color:#80520f}.submission-status.approved{background:var(--green-soft);color:var(--green-dark)}.submission-status.rejected{background:var(--red-soft);color:#8a302c}.review-note{margin-top:12px;padding:10px;border-left:3px solid #c8d0ca;background:var(--surface-soft)}.review-note strong,.submission-support strong{font-size:11px;text-transform:uppercase;color:var(--muted)}.review-note p,.submission-support p{margin:5px 0 0;font-size:13px;line-height:1.5;white-space:pre-wrap}.submission-empty,.compact-loading{display:flex;align-items:center;justify-content:center;gap:9px;min-height:110px;padding:20px;border:1px dashed #c6d0c8;border-radius:6px;color:var(--muted);font-size:13px;text-align:center}.submission-empty svg{color:var(--green)}.moderation-section{margin-bottom:24px}.moderation-list{grid-template-columns:repeat(2,minmax(0,1fr))}.moderation-item{display:flex;flex-direction:column}.submission-choice-preview{display:grid;gap:6px;margin:7px 0 14px;padding:0;list-style:none}.submission-choice-preview li{display:grid;grid-template-columns:25px minmax(0,1fr) 18px;align-items:start;gap:7px;padding:8px;border:1px solid var(--line);border-radius:5px;color:#4c5750;font-size:13px}.submission-choice-preview li.correct{border-color:#a8ceb5;background:var(--green-soft);color:var(--green-dark)}.submission-choice-preview li b{font-size:11px}.submission-support{display:grid;gap:9px;margin-bottom:12px}.submission-support>div{padding:10px;background:var(--surface-soft);border-radius:5px}.moderation-item textarea{margin-top:7px}.moderation-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:11px}.leaderboard-workspace{width:min(100%,1180px);min-height:calc(100vh - 64px);margin:0 auto;padding:24px 20px 40px}.leaderboard-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.leaderboard-heading>div{display:flex;align-items:center;gap:12px;min-width:0}.leaderboard-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:6px;background:var(--green-soft);color:var(--green-dark)}.leaderboard-heading h1{margin:0;font-size:24px;line-height:1.2}.leaderboard-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.leaderboard-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.leaderboard-summary div{padding:15px 18px;border-right:1px solid var(--line)}.leaderboard-summary div:last-child{border-right:0}.leaderboard-summary dt{color:var(--muted);font-size:12px}.leaderboard-summary dd{margin:4px 0 0;font-size:22px;font-weight:800}.leaderboard-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #1e2d2409}.leaderboard-table{width:100%;min-width:930px;border-collapse:collapse;font-size:13px}.leaderboard-table th,.leaderboard-table td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.leaderboard-table thead th{background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase}.leaderboard-table tbody tr:last-child th,.leaderboard-table tbody tr:last-child td{border-bottom:0}.leaderboard-table tbody tr:hover{background:#fbfdfb}.leaderboard-table tbody tr.current-player{background:var(--blue-soft)}.leaderboard-player{display:inline-flex;align-items:center;gap:7px;max-width:190px;overflow:hidden;text-overflow:ellipsis}.leaderboard-player small{padding:2px 5px;border-radius:3px;background:var(--blue);color:#fff;font-size:9px}.rank-number{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#edf1ee;color:#566159;font-weight:800}.rank-number.rank-1{background:#f8e7ae;color:#72520d}.rank-number.rank-2{background:#e4e9ec;color:#4f5b63}.rank-number.rank-3{background:#ead2bf;color:#74472d}.round-status,.certificate-badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:4px;font-size:11px;font-weight:700}.round-status.completed{background:var(--green-soft);color:var(--green-dark)}.round-status.active{background:var(--blue-soft);color:var(--blue)}.certificate-badge.gold{background:#f8e7ae;color:#72520d}.certificate-badge.silver{background:#e4e9ec;color:#4f5b63}.certificate-badge.bronze{background:#ead2bf;color:#74472d}.certificate-badge.participation{background:var(--blue-soft);color:var(--blue)}.accuracy-cell{font-weight:800;color:var(--green-dark)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.main-content{min-width:0}.question-panel{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:6px;box-shadow:0 2px 8px #1e2d2409}.question-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px}.question-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:17px}.question-topline .question-meta{margin-bottom:0}.question-meta span{padding:4px 7px;border:1px solid #d8e0da;border-radius:4px;background:var(--surface-soft);color:#59645d;font-size:11px;font-weight:650}.question-timer{min-width:67px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 8px;border:1px solid #c7d7e1;border-radius:4px;background:var(--blue-soft);color:var(--blue);font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.question-panel h1{margin:0 0 22px;white-space:pre-wrap;color:#1e2822;font-size:20px;line-height:1.48;font-weight:720;overflow-wrap:anywhere}.choice-list{display:grid;gap:9px}.choice{min-height:54px;display:grid;grid-template-columns:32px minmax(0,1fr) 22px;align-items:center;gap:11px;padding:10px 12px;border:1px solid #ced7d0;border-radius:6px;background:#fff;cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.choice:hover{border-color:#86a28f;background:#fbfdfb}.choice input{position:absolute;opacity:0;pointer-events:none}.choice-label{width:32px;height:32px;display:grid;place-items:center;border:1px solid #c6d0c8;border-radius:50%;background:#f7f9f7;font-size:13px;font-weight:800}.choice-text{min-width:0;font-size:15px;line-height:1.4;overflow-wrap:anywhere}.choice-status{justify-self:end}.choice.selected{border-color:var(--blue);background:var(--blue-soft)}.choice.selected .choice-label{border-color:var(--blue);background:var(--blue);color:#fff}.choice.correct{border-color:#5a9b71;background:var(--green-soft)}.choice.correct .choice-label{border-color:var(--green);background:var(--green);color:#fff}.choice.correct .choice-status{color:var(--green)}.choice.incorrect{border-color:#c96f6a;background:var(--red-soft)}.choice.incorrect .choice-label{border-color:var(--red);background:var(--red);color:#fff}.choice.incorrect .choice-status{color:var(--red)}.question-actions{display:flex;justify-content:flex-end;margin-top:20px}.answer-result{margin-top:22px;border:1px solid;border-radius:6px;overflow:hidden}.answer-result.correct{border-color:#9bc4a9}.answer-result.incorrect{border-color:#dcaaa7}.answer-result.ungraded{border-color:#e3c486}.result-title{display:flex;align-items:flex-start;gap:11px;padding:15px}.answer-result.correct .result-title{background:var(--green-soft);color:var(--green-dark)}.answer-result.incorrect .result-title{background:var(--red-soft);color:#812e2a}.answer-result.ungraded .result-title{background:var(--amber-soft);color:#765019}.result-title svg{flex:0 0 auto;margin-top:1px}.result-title h3{margin:0 0 4px;font-size:15px}.result-title p{margin:0;color:var(--ink);line-height:1.4}.explanation{padding:15px;border-top:1px solid rgba(70,90,76,.15);background:#fff}.explanation-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:7px}.explanation h4{margin:0;font-size:13px}.explanation-heading span{color:#6a756d;font-size:11px;text-align:right}.explanation p{margin:0 0 9px;color:#4e5952;font-size:14px;line-height:1.5}.explanation a{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:650;text-decoration:none}.source-label{color:var(--muted);font-size:12px}.review-column{position:relative}.review-placeholder{padding:25px 20px;color:var(--muted);text-align:center}.review-placeholder svg{color:#8a9890}.review-placeholder h2{margin:10px 0 5px;color:#4a554e;font-size:15px}.review-placeholder p{margin:0;font-size:12px}.feedback-panel{padding:18px}.feedback-heading{margin-bottom:17px}.feedback-panel form{display:grid;gap:12px}.segmented-field,.issue-field{min-width:0;margin:0;padding:0;border:0}.segmented-field legend,.issue-field legend{margin-bottom:8px;color:#4d5851;font-size:13px;font-weight:650}.segmented-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.segmented-control label{min-height:36px;display:grid;place-items:center;padding:5px;border:1px solid #cbd4cd;border-right-width:0;background:#fff;color:#58635b;font-size:12px;cursor:pointer}.segmented-control label:first-child{border-radius:5px 0 0 5px}.segmented-control label:last-child{border-right-width:1px;border-radius:0 5px 5px 0}.segmented-control label.selected{background:var(--blue-soft);border-color:var(--blue);color:#214f6d;font-weight:700}.segmented-control input{position:absolute;opacity:0}.issue-grid{display:grid;gap:6px}.issue-grid label{display:flex;align-items:center;gap:8px;color:#4e5952;font-size:12px;cursor:pointer}.issue-grid input{position:absolute;opacity:0}.checkbox-mark{width:18px;height:18px;display:grid;place-items:center;flex:0 0 18px;border:1px solid #aebbb1;border-radius:4px;background:#fff;color:transparent}.issue-grid label.checked .checkbox-mark{border-color:var(--green);background:var(--green);color:#fff}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.form-footer>span{color:var(--muted);font-size:11px}.feedback-complete{display:flex;align-items:flex-start;gap:11px;background:var(--green-soft);border-color:#a3c9b0}.feedback-complete svg{color:var(--green)}.feedback-complete h2{margin:0 0 3px;font-size:15px}.feedback-complete p{margin:0;color:var(--muted);font-size:12px}.certificate{padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:var(--shadow)}.certificate-border{min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px;border:3px double #9eaa9f;text-align:center}.certificate-star{width:42px;height:42px;display:grid;place-items:center;margin-bottom:17px;border-radius:6px;background:var(--green);color:#fff;font-size:24px}.certificate-kicker{margin:0 0 22px;color:var(--muted);font-size:13px;font-weight:700}.certificate-border>svg{margin-bottom:10px;color:var(--amber)}.certificate h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:34px;line-height:1.2}.certificate-given{margin:28px 0 8px;color:var(--muted);font-size:14px}.certificate-name{min-width:min(100%,380px);padding:0 20px 9px;border-bottom:1px solid #aeb8b0;font-family:Georgia,Times New Roman,serif;font-size:28px;overflow-wrap:anywhere}.certificate-copy{max-width:500px;margin:25px 0 18px;color:#4b5750;line-height:1.6}.certificate-copy b{display:block;margin-top:5px;color:var(--ink);font-size:19px}.certificate-date{color:var(--muted);font-size:13px}.round-report{padding:24px 4px 3px}.round-report-heading{display:flex;align-items:center;gap:8px;margin-bottom:15px;color:var(--green-dark)}.round-report-heading h2{margin:0;color:var(--ink);font-size:18px}.round-report-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 22px;border:1px solid var(--line);border-radius:6px}.round-report-summary div{padding:13px 15px;border-right:1px solid var(--line)}.round-report-summary div:last-child{border-right:0}.round-report-summary dt{color:var(--muted);font-size:11px}.round-report-summary dd{margin:4px 0 0;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.round-report>h3{margin:20px 0 10px;font-size:13px}.category-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.category-report-grid article{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}.category-report-grid span{min-height:32px;color:var(--muted);font-size:11px;line-height:1.4}.category-report-grid strong{color:var(--green-dark);font-size:20px}.category-report-grid small{color:var(--muted);font-size:10px}.question-time-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}.question-time-item{display:grid;justify-items:center;gap:5px;padding:8px 3px;border:1px solid var(--line);border-radius:5px;background:var(--surface-soft)}.question-time-item span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:10px;font-weight:800}.question-time-item strong{color:#4f5a53;font-size:10px;font-variant-numeric:tabular-nums}.question-time-item.correct span{background:var(--green)}.question-time-item.incorrect span{background:var(--red)}.question-time-item.ungraded span{background:#7d8981}.certificate-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.certificate-gold .certificate-border{border-color:#b58a2d}.certificate-gold .certificate-border>svg{color:#b58a2d}.certificate-silver .certificate-border{border-color:#82909a}.certificate-silver .certificate-border>svg{color:#687782}.certificate-bronze .certificate-border{border-color:#9a6643}.certificate-bronze .certificate-border>svg{color:#8d5837}.certificate-participation .certificate-border{border-color:var(--blue)}.certificate-participation .certificate-border>svg{color:var(--blue)}.translation-review-workspace{width:min(100%,1540px);min-height:calc(100vh - 64px);margin:0 auto;padding:24px 22px 48px}.translation-review-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.translation-review-heading>div{min-width:0}.heading-kicker{display:inline-flex;align-items:center;gap:7px;margin-bottom:7px;color:var(--green-dark);font-size:12px;font-weight:800}.translation-review-heading h1{margin:0;font-size:26px;line-height:1.2}.translation-review-heading p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.review-save-notice{display:flex;align-items:center;gap:8px;min-height:40px;margin-bottom:12px;padding:8px 12px;border:1px solid #a8ceb5;border-radius:5px;background:var(--green-soft);color:var(--green-dark);font-size:13px}.translation-review-stats{display:grid;grid-template-columns:minmax(240px,330px) minmax(440px,1fr);align-items:stretch;margin-bottom:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.review-progress-summary{padding:15px 18px 14px 0;border-right:1px solid var(--line)}.review-progress-summary>span{display:block;color:var(--muted);font-size:11px;font-weight:700}.review-progress-summary>strong{display:block;margin-top:3px;color:var(--ink);font-size:23px}.review-progress-summary>strong small{color:var(--muted);font-size:13px;font-weight:600}.review-progress-summary>small{color:var(--muted);font-size:10px}.review-progress-track{height:6px;margin:8px 0 6px;overflow:hidden;background:#dfe6e0;border-radius:3px}.review-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--green)}.translation-review-stats dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0}.translation-review-stats dl div{padding:16px 18px;border-right:1px solid var(--line)}.translation-review-stats dl div:last-child{border-right:0}.translation-review-stats dt{color:var(--muted);font-size:11px}.translation-review-stats dd{margin:5px 0 0;font-size:21px;font-weight:800}.translation-review-stats .accurate dd{color:var(--green-dark)}.translation-review-stats .minor dd{color:var(--amber)}.translation-review-stats .major dd{color:var(--red)}.translation-review-stats .unsure dd{color:var(--blue)}.translation-review-stats .rejected dd{color:#842f2b}.global-review-summary{grid-column:1 / -1;margin:0;padding:8px 0;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.translation-review-filters{display:grid;grid-template-columns:180px minmax(230px,340px) 150px minmax(170px,1fr);align-items:end;gap:12px;margin-bottom:16px}.translation-review-filters label{display:grid;gap:5px;min-width:0}.translation-review-filters label>span{color:#4d5851;font-size:11px;font-weight:700}.translation-review-filters select{height:39px;font-size:13px}.matching-review-count{min-height:39px;display:flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--muted);font-size:12px}.translation-review-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:16px}.translation-comparison-panel,.translation-review-form{min-width:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #1e2d2409}.translation-question-meta{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.translation-question-meta>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0}.translation-question-meta span{padding:4px 6px;border-radius:4px;background:var(--blue-soft);color:var(--blue);font-size:10px;font-weight:750}.translation-question-meta strong{font-size:13px}.translation-question-meta p{margin:0;color:var(--muted);font-size:11px;white-space:nowrap}.existing-review{display:flex;align-items:center;gap:7px;padding:9px 14px;border-bottom:1px solid var(--line);background:var(--blue-soft);color:#295b7b;font-size:11px}.existing-review.accurate{background:var(--green-soft);color:var(--green-dark)}.existing-review.minor_issue{background:var(--amber-soft);color:#795015}.existing-review.major_issue{background:var(--red-soft);color:#842f2b}.existing-review.rejected{background:#f7e7e6;color:#842f2b}.review-language-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.review-language-column{min-width:0;padding:17px 15px 20px}.review-language-column+.review-language-column{border-left:1px solid var(--line)}.review-language-column>header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:16px;padding-bottom:9px;border-bottom:3px solid #a9b5ad}.review-language-column.english>header{border-bottom-color:var(--blue)}.review-language-column.chinese>header{border-bottom-color:var(--amber)}.review-language-column.esperanto>header{border-bottom-color:var(--green)}.review-language-column>header span{font-size:14px;font-weight:800}.review-language-column>header small{color:var(--muted);font-size:10px}.review-question-text{height:190px;margin:0 0 18px;padding-right:5px;color:#26302a;font-size:14px;font-weight:680;line-height:1.58;white-space:pre-wrap;overflow-y:auto;overflow-wrap:anywhere}.review-choice-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.review-choice-list li{height:72px;display:grid;grid-template-columns:25px minmax(0,1fr) 18px;align-items:start;gap:8px;padding:8px 0;border-top:1px solid #e4e9e5;overflow-y:auto}.review-choice-list li.correct{margin-inline:-7px;padding-inline:7px;border-top-color:#9fc7ad;border-radius:5px;background:var(--green-soft)}.review-choice-list li.correct>span{background:var(--green);color:#fff}.review-choice-list li.correct>svg{margin-top:4px;color:var(--green)}.review-choice-list li>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#edf1ee;color:#4d5951;font-size:10px;font-weight:800}.review-choice-list p{margin:2px 0 0;font-size:13px;line-height:1.48;white-space:pre-wrap;overflow-wrap:anywhere}.translation-correct-answer{display:grid;gap:10px;padding:13px 15px 15px;border-top:1px solid #a8ceb5;background:var(--green-soft)}.translation-correct-answer>div{display:flex;align-items:center;gap:7px;color:var(--green-dark)}.translation-correct-answer>div strong{font-size:13px}.translation-correct-answer dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.translation-correct-answer dl div{min-width:0}.translation-correct-answer dt{color:var(--muted);font-size:9px;font-weight:800}.translation-correct-answer dd{margin:3px 0 0;color:#2b3b31;font-size:11px;line-height:1.4;overflow-wrap:anywhere}.translation-review-form{position:sticky;top:80px;padding:17px}.translation-review-form>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px;padding-bottom:12px;border-bottom:1px solid var(--line)}.translation-review-form>header>div{display:flex;align-items:center;gap:8px;color:var(--green-dark)}.translation-review-form>header h2{margin:0;color:var(--ink);font-size:16px}.translation-review-form>header small{max-width:130px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.translation-verdict-field,.translation-check-field,.translation-suggestion-choices,.dataset-decision-field{min-width:0;margin:0 0 17px;padding:0;border:0}.translation-verdict-field legend,.translation-check-field legend,.translation-suggestion-choices legend,.dataset-decision-field legend{margin-bottom:8px;color:#465149;font-size:12px;font-weight:750}.translation-verdict-field legend span,.translation-check-field legend span,.dataset-decision-field legend span{color:var(--red)}.dataset-decision-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dataset-decision-options label{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;padding:9px;border:1px solid #cfd7d1;border-radius:5px;background:#fff;color:var(--muted);cursor:pointer}.dataset-decision-options input,.rejection-reason-grid input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;clip-path:inset(50%)}.dataset-decision-options strong{display:block;color:var(--ink);font-size:10px}.dataset-decision-options small{display:block;margin-top:2px;font-size:8px;line-height:1.3}.dataset-decision-options label.keep.selected{border-color:#78a98a;background:var(--green-soft);color:var(--green-dark)}.dataset-decision-options label.reject.selected{border-color:#d28b87;background:var(--red-soft);color:var(--red)}.rejection-reason-grid{display:grid;gap:7px}.rejection-reason-grid label{display:grid;grid-template-columns:17px minmax(0,1fr);align-items:start;gap:7px;padding:8px;border:1px solid #d8ded9;border-radius:5px;cursor:pointer}.rejection-reason-grid label.checked{border-color:#d28b87;background:var(--red-soft)}.rejection-reason-grid label.checked .checkbox-mark{border-color:var(--red);background:var(--red);color:#fff}.rejection-reason-grid strong{display:block;color:#37423b;font-size:10px}.rejection-reason-grid small{display:block;margin-top:2px;color:var(--muted);font-size:8px;line-height:1.35}.translation-verdict-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.translation-verdict-options label{min-width:0;display:grid;grid-template-columns:19px minmax(0,1fr);align-items:center;gap:7px;padding:8px;border:1px solid #cfd7d1;border-radius:5px;background:#fff;cursor:pointer}.translation-verdict-options input,.affected-choice-grid input,.translation-issue-grid input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;clip-path:inset(50%)}.verdict-radio{width:19px;height:19px;display:grid;place-items:center;border:1px solid #aeb9b1;border-radius:50%;color:#fff}.translation-verdict-options strong{display:block;font-size:11px}.translation-verdict-options small{display:block;margin-top:2px;color:var(--muted);font-size:9px;line-height:1.25}.translation-verdict-options label.selected{border-color:var(--blue);background:var(--blue-soft)}.translation-verdict-options label.selected .verdict-radio{border-color:var(--blue);background:var(--blue)}.translation-verdict-options label.selected.accurate{border-color:#78a98a;background:var(--green-soft)}.translation-verdict-options label.selected.accurate .verdict-radio{border-color:var(--green);background:var(--green)}.translation-verdict-options label.selected.minor_issue{border-color:#d5aa67;background:var(--amber-soft)}.translation-verdict-options label.selected.minor_issue .verdict-radio{border-color:var(--amber);background:var(--amber)}.translation-verdict-options label.selected.major_issue{border-color:#d28b87;background:var(--red-soft)}.translation-verdict-options label.selected.major_issue .verdict-radio{border-color:var(--red);background:var(--red)}.affected-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.affected-choice-grid label{cursor:pointer}.affected-choice-grid label>span{min-height:34px;display:grid;place-items:center;border:1px solid #cbd4cd;border-radius:5px;background:#fff;color:#576159;font-size:11px;font-weight:800}.affected-choice-grid label.checked>span{border-color:var(--red);background:var(--red-soft);color:#872f2b}.translation-issue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}.translation-issue-grid label{display:flex;align-items:center;gap:6px;color:#4f5a53;font-size:10px;cursor:pointer}.translation-issue-grid label.checked .checkbox-mark{border-color:var(--green);background:var(--green);color:#fff}.translation-text-field{display:grid;gap:7px;margin-bottom:17px;color:#465149;font-size:12px;font-weight:750}.translation-text-field>span{display:flex;justify-content:space-between;gap:8px}.translation-text-field>span small{color:var(--muted);font-size:10px;font-weight:500}.translation-text-field textarea{min-height:76px;font-size:12px}.translation-suggestion-choices{display:grid;gap:7px}.translation-suggestion-choices legend{margin-bottom:1px}.translation-suggestion-choices label{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:7px}.translation-suggestion-choices label>span{width:26px;height:26px;display:grid;place-items:center;margin-top:4px;border-radius:50%;background:#edf1ee;font-size:10px;font-weight:800}.translation-suggestion-choices textarea{min-height:52px;font-size:11px}.translation-form-error{display:flex;align-items:flex-start;gap:7px;margin:0 0 10px;padding:8px 9px;border:1px solid #dfaaa7;border-radius:5px;background:var(--red-soft);color:#812e2a;font-size:11px;line-height:1.4}.translation-form-error svg{flex:0 0 auto}.translation-review-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;padding-top:3px}.translation-review-actions button{min-width:0;padding-inline:10px;font-size:11px}.loading-state.translation-loading,.empty-state.translation-empty{min-height:390px}.loading-state,.empty-state{min-height:330px;display:grid;place-content:center;justify-items:center;gap:10px;padding:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--muted);text-align:center}.empty-state h2{margin:2px 0 0;color:var(--ink);font-size:18px}.empty-state p{margin:0 0 7px}.empty-state svg{color:var(--green)}@media(max-width:1180px){.workspace{grid-template-columns:220px minmax(460px,760px)}.review-column{grid-column:2}.review-placeholder{display:none}}@media(max-width:1100px){.topbar-nav button{min-width:44px;padding:0 11px}.topbar-nav button span{display:none}.translation-review-layout{grid-template-columns:minmax(0,1fr)}.translation-review-form{position:static}}@media(max-width:960px){.submission-layout,.moderation-list{grid-template-columns:minmax(0,1fr)}.translation-review-stats{grid-template-columns:minmax(210px,280px) minmax(0,1fr)}.translation-review-stats dl div{padding-inline:12px}.translation-review-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.matching-review-count{grid-column:1 / -1;justify-content:flex-start;min-height:20px}}@media(max-width:820px){.topbar{height:58px;padding:0 14px}.topbar .brand-copy small{display:none}.topbar .brand-mark{width:34px;height:34px;flex-basis:34px}.topbar-nav button{min-width:42px;padding:0 10px}.topbar-nav button span{display:none}.user-chip{font-size:0;gap:0}.workspace{min-height:calc(100vh - 58px);grid-template-columns:minmax(0,1fr);gap:12px;padding:12px}.certificate-workspace{grid-template-columns:minmax(0,1fr)}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:12px}.queue-note{grid-column:1 / -1}.review-column{grid-column:1}.question-panel{padding:18px}.question-panel h1{font-size:18px}.leaderboard-workspace,.submission-workspace,.translation-review-workspace{min-height:calc(100vh - 58px);padding:18px 12px 30px}.translation-review-heading h1{font-size:22px}.translation-review-stats{grid-template-columns:minmax(0,1fr)}.review-progress-summary{padding-right:0;border-right:0;border-bottom:1px solid var(--line)}.global-review-summary{padding-inline:0}.review-question-text{height:170px}}@media(max-width:700px){.translation-review-heading{align-items:flex-start}.translation-review-heading .secondary-button{padding-inline:10px;font-size:0}.translation-review-heading .secondary-button svg{margin:0}.translation-review-filters{grid-template-columns:minmax(0,1fr)}.matching-review-count{grid-column:1}.review-language-grid{grid-template-columns:minmax(0,1fr)}.review-language-column+.review-language-column{border-top:1px solid var(--line);border-left:0}.translation-correct-answer dl{grid-template-columns:minmax(0,1fr);gap:7px}.review-question-text{height:auto;max-height:360px}.review-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.review-choice-list li{height:auto;min-height:52px;max-height:220px}.translation-question-meta{align-items:flex-start}}@media(max-width:560px){.topbar .brand-copy{display:none}.topbar-actions{gap:2px}.leaderboard-heading h1,.submission-heading h1{font-size:21px}.submission-heading p{line-height:1.35}.submission-form-panel{padding:16px 13px}.submission-choice-input{grid-template-columns:30px minmax(0,1fr) 34px;gap:6px}.submission-submit{width:100%}.translation-review-heading p{line-height:1.4}.translation-review-stats dl{grid-template-columns:repeat(2,minmax(0,1fr))}.translation-review-stats dl div:nth-child(2n){border-right:0}.translation-review-stats dl div:nth-child(-n+4){border-bottom:1px solid var(--line)}.review-choice-list{grid-template-columns:minmax(0,1fr)}.translation-question-meta{display:grid}.translation-question-meta p{white-space:normal}.translation-review-form{padding:14px 12px}.dataset-decision-options,.translation-verdict-options,.translation-issue-grid,.translation-review-actions{grid-template-columns:minmax(0,1fr)}.moderation-actions{display:grid;grid-template-columns:1fr 1fr}.leaderboard-summary div{padding:12px 10px}.leaderboard-summary dt{font-size:10px}.leaderboard-summary dd{font-size:19px}.leaderboard-table-wrap{overflow:visible;border:0;background:transparent;box-shadow:none}.leaderboard-table{display:block;min-width:0}.leaderboard-table thead{display:none}.leaderboard-table tbody{display:grid;gap:10px}.leaderboard-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #1e2d2409}.leaderboard-table tbody tr.current-player{background:var(--blue-soft)}.leaderboard-table th,.leaderboard-table td{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:8px 6px;border-bottom:1px solid rgba(213,221,215,.72);white-space:normal}.leaderboard-table th:before,.leaderboard-table td:before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:750;text-transform:uppercase}.leaderboard-table tbody tr>:nth-last-child(-n+2){border-bottom:0}.leaderboard-player{max-width:105px;flex-wrap:wrap;justify-content:flex-end;overflow:visible;overflow-wrap:anywhere;white-space:normal}.auth-panel{padding:22px 18px}.sidebar{grid-template-columns:1fr}.queue-note{grid-column:1}.question-panel{padding:16px 13px}.question-topline{align-items:center}.question-meta{margin-bottom:14px}.question-topline .question-meta{margin-bottom:0}.question-timer{min-width:62px;padding:5px 6px}.question-panel h1{margin-bottom:18px;font-size:17px;line-height:1.48}.explanation-heading{align-items:flex-start;flex-direction:column;gap:4px}.explanation-heading span{text-align:left}.choice{grid-template-columns:30px minmax(0,1fr) 20px;gap:9px;padding:10px}.choice-label{width:30px;height:30px}.choice-text{font-size:14px}.question-actions .primary-button{width:100%}.feedback-panel{padding:16px 13px}.form-footer{align-items:flex-end}.form-footer .secondary-button{min-height:40px}.certificate{padding:10px}.certificate-border{min-height:470px;padding:28px 18px}.certificate h1{font-size:27px}.certificate-name{font-size:23px}.round-report{padding:20px 0 2px}.round-report-summary dd{font-size:17px}.category-report-grid{grid-template-columns:minmax(0,1fr)}.category-report-grid span{min-height:0}.question-time-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.certificate-actions{flex-direction:column}.certificate-actions button{width:100%}}@media print{body{background:#fff}.topbar,.sidebar,.review-column,.no-print{display:none!important}.workspace,.certificate-workspace{display:block;min-height:0;padding:0}.main-content{width:100%}.certificate{border:0;box-shadow:none}.certificate-border{min-height:90vh}}
