:root{--bg:#080808;--panel:#111011;--line:#30272a;--red:#ff3d4d;--white:#f8f2f2;--muted:#a79a9d;--mono:'DM Mono',monospace;--sans:'Space Grotesk',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font-family:var(--sans)}.shell{width:min(1080px,calc(100% - 36px));margin:auto}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 75% 0,rgba(255,40,55,.15),transparent 35%);z-index:-1}header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;color:var(--white);text-decoration:none;font:10px/1.25 var(--mono);letter-spacing:.1em}.brand img{width:38px;height:38px;object-fit:contain}.brand b,nav a:last-child{color:var(--red)}nav{display:flex;gap:22px}nav a{color:var(--muted);text-decoration:none;font:10px var(--mono);letter-spacing:.1em}.intro{padding:75px 0 45px}.intro>span,.eyebrow,.section-head>span{font:10px var(--mono);letter-spacing:.15em;color:var(--red)}h1{font-size:clamp(4rem,11vw,8.5rem);line-height:.82;letter-spacing:-.1em;margin:25px 0}.intro em{color:var(--red);font-style:normal}.intro p{color:var(--muted);font:14px/1.5 var(--mono);max-width:610px}.dropzone{border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;background:rgba(17,16,17,.8)}h2{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.07em;margin:10px 0}.dropzone p{color:var(--muted);font:12px/1.5 var(--mono)}.drop-button,#evaluate-button{display:inline-block;padding:13px 16px;border:1px solid var(--red);background:transparent;color:var(--white);font:10px var(--mono);letter-spacing:.1em;cursor:pointer}.drop-button:hover,#evaluate-button:hover{background:var(--red)}#report-input{display:none}.file-name{grid-column:1;color:var(--muted);font:11px var(--mono);overflow:hidden;text-overflow:ellipsis}.dropzone button{grid-column:2;grid-row:2}.dropzone button:disabled{opacity:.35;cursor:not-allowed}.message{grid-column:1/-1;margin:0!important;color:var(--red)!important}.message.error{color:#ff9ca4!important}.result,.leaderboard{margin-top:60px}.hidden{display:none}.result{border-top:1px solid var(--red);padding-top:20px}.result-head{display:flex;align-items:end;gap:25px}.result-head span,.section-head>span{color:var(--red);font:10px var(--mono);letter-spacing:.12em}.result-head strong{font-size:clamp(2.8rem,7vw,6rem);line-height:.8;letter-spacing:-.08em}.result-head b{font:600 24px var(--sans);color:var(--red)}#summary{color:var(--muted);font:13px/1.6 var(--mono);max-width:800px}.criteria-result{border-top:1px solid var(--line);margin-top:25px}.criteria-result article{display:grid;grid-template-columns:45px 1fr 45px;gap:16px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}.criteria-result article>span{color:var(--red);font:11px var(--mono)}.criteria-result article b{font:12px/1.5 var(--mono);font-weight:400;color:var(--muted)}.criteria-result article strong{color:var(--white);font:600 16px var(--sans);text-align:right}.section-head small{display:block;color:var(--muted);font:11px var(--mono);margin-top:8px}.leaderboard h2{margin:15px 0 3px}.board-row{display:grid;grid-template-columns:55px 1fr 80px 70px;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);font:12px var(--mono)}.board-row b{color:var(--red)}.board-row strong{text-align:right}.board-row em{color:var(--red);font-style:normal;text-align:right}footer{display:flex;justify-content:space-between;color:var(--muted);font:9px var(--mono);border-top:1px solid var(--line);padding:18px 0 35px;margin-top:70px}@media(max-width:650px){.shell{width:calc(100% - 30px)}header{height:75px}nav{gap:10px}nav a{font-size:8px}.intro{padding:55px 0 35px}.dropzone{grid-template-columns:1fr;padding:22px}.drop-button,#evaluate-button,.dropzone button{grid-column:1;grid-row:auto}.file-name{grid-column:1}.board-row{grid-template-columns:35px 1fr 55px 50px;gap:8px}.criteria-result article{grid-template-columns:32px 1fr 35px}.result-head{gap:14px}footer{font-size:8px;gap:15px}}
 .rubric{margin-top:65px}.rubric-list{border-top:1px solid var(--line);margin-top:25px}.rubric-list article{padding:20px 0;border-bottom:1px solid var(--line)}.rubric-list article>b{font-size:17px;letter-spacing:-.03em}.rubric-list article p{display:flex;gap:14px;color:var(--muted);font:12px/1.5 var(--mono);margin:9px 0 0;max-width:850px}.rubric-list article p span{color:var(--red);font-size:9px;letter-spacing:.12em;min-width:78px}
