:root{--bg:#0f1117;--bg-surface:#1a1b26;--bg-elevated:#24253a;--text:#a9b1d6;--text-bright:#c0caf5;--text-muted:#565f89;--accent:#7aa2f7;--accent-hover:#89b4fa;--green:#9ece6a;--red:#f7768e;--border:#2e3054;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/1.5 var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100dvh}#app{flex-direction:column;min-height:100dvh;display:flex}h1{color:var(--text-bright);font-weight:600}.btn{font-family:var(--sans);cursor:pointer;border:2px solid #0000;border-radius:8px;padding:12px 32px;font-size:16px;font-weight:500;transition:all .15s}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:var(--accent-hover)}.btn-real{color:var(--green);border-color:var(--green);background:0 0;padding:14px 40px;font-size:18px}.btn-real:hover{background:var(--green);color:var(--bg)}.btn-fake{color:var(--red);border-color:var(--red);background:0 0;padding:14px 40px;font-size:18px}.btn-fake:hover{background:var(--red);color:var(--bg)}.btn-quit{color:var(--text-muted);border-color:var(--border);background:0 0;padding:10px 24px;font-size:14px}.btn-quit:hover{border-color:var(--text-muted);color:var(--text)}.btn-secondary{color:var(--text);border-color:var(--border);background:0 0}.btn-secondary:hover{border-color:var(--text-muted)}.welcome-buttons{align-items:center;gap:16px;display:flex}.welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:40px 20px;display:flex}.welcome h1{letter-spacing:-1.5px;margin-bottom:12px;font-size:56px}.subtitle{color:var(--text-muted);margin-bottom:40px;font-size:20px}.instructions{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;max-width:500px;margin-bottom:40px;padding:24px 32px}.instructions p{margin:8px 0;line-height:1.6}.round{flex-direction:column;height:100dvh;display:flex}.round-header{background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.round-counter{color:var(--text-bright);font-size:16px;font-weight:500}.timer{font-family:var(--mono);color:var(--accent);font-size:24px;font-weight:600}.pdf-viewer{-webkit-overflow-scrolling:touch;background:#525659;flex:1;min-height:0;padding:8px;overflow:auto}.pdf-viewer iframe{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;height:100%}.pdf-zoom-wrapper{flex-direction:column;align-items:center;gap:8px;display:flex}.pdf-page{max-width:100%;display:block;box-shadow:0 2px 8px #0000004d}.pdf-loading,.pdf-error{height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:18px;display:flex}.answer-buttons{background:var(--bg-surface);border-top:1px solid var(--border);flex-shrink:0;justify-content:center;padding:16px 24px;display:flex}.answer-choices{justify-content:center;gap:24px;display:flex}.feedback{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:700px;min-height:100dvh;margin:0 auto;padding:40px 20px;display:flex}.feedback-verdict{align-items:center;gap:16px;margin-bottom:24px;display:flex}.feedback-verdict.correct .verdict-icon{color:var(--green)}.feedback-verdict.incorrect .verdict-icon{color:var(--red)}.verdict-icon{font-size:48px;font-weight:700}.feedback-verdict h2{color:var(--text-bright);font-size:36px}.feedback-actual{margin-bottom:16px;font-size:20px}.feedback-title{color:var(--accent);margin-bottom:20px;font-size:18px;font-style:italic}.paper-details{background:var(--bg-surface);border:1px solid var(--border);text-align:left;border-radius:12px;width:100%;margin-bottom:20px;padding:20px 28px}.paper-details p{margin:6px 0;line-height:1.6}.paper-details a{color:var(--accent);text-decoration:none}.paper-details a:hover{text-decoration:underline}.feedback-guess{color:var(--text-muted);margin-bottom:32px;font-size:16px}.results{flex-direction:column;align-items:center;min-height:100dvh;padding:40px 20px;display:flex}.results h1{margin-bottom:32px;font-size:40px}.score-summary{gap:24px;margin-bottom:40px;display:flex}.score-box{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;gap:4px;padding:20px 32px;display:flex}.score-value{color:var(--text-bright);font-size:28px;font-weight:700;font-family:var(--mono)}.score-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:14px}.results-table{border-collapse:collapse;width:100%;max-width:900px;margin-bottom:40px}.results-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:2px solid var(--border);padding:10px 14px;font-size:13px}.results-table td{border-bottom:1px solid var(--border);padding:10px 14px;font-size:14px}.results-table .paper-title{text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.results-table a{color:inherit;text-decoration:underline}.results-table a:hover{color:inherit}.results-table tr.correct td:nth-child(5){color:var(--green);font-weight:700}.results-table tr.incorrect td:nth-child(5){color:var(--red);font-weight:700}.error{min-height:100dvh;color:var(--red);flex-direction:column;justify-content:center;align-items:center;display:flex}.about{flex-direction:column;align-items:center;max-width:700px;min-height:100dvh;margin:0 auto;padding:60px 20px;display:flex}.about h1{margin-bottom:32px;font-size:40px}.about section{width:100%;margin-bottom:28px}.about h2{color:var(--accent);margin-bottom:10px;font-size:20px}.about p{color:var(--text);line-height:1.7}.about code{font-family:var(--mono);background:var(--bg-elevated);border-radius:4px;padding:2px 6px;font-size:14px}.about .btn{margin-top:16px}@media (width<=640px){.welcome h1{font-size:36px}.score-summary{flex-direction:column;gap:12px}.answer-buttons{padding:12px 16px}.answer-choices{gap:12px}.btn-real,.btn-fake{flex:1;padding:14px 16px;font-size:16px}.results-table{font-size:12px}}
