:root{font-family:system-ui,sans-serif;color:#eef9f0;background:#06261f;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top left,#125a43,transparent 70%);min-height:100dvh}main{max-width:480px;margin:auto;padding:32px 20px}.brand{display:block;color:#eef9f0;text-decoration:none;font-size:32px;font-weight:800;margin-bottom:28px}.brand span{color:#d6f082}.card{background:#10342bd9;border:1px solid #42725b;border-radius:24px;padding:28px}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#d6f082}h1{font-size:32px;line-height:1.2;margin:16px 0}.muted{color:#b4cebf;line-height:1.6;overflow-wrap:anywhere}.note{font-size:12px;margin-top:24px}label{display:block;font-size:14px;margin-top:20px}input{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #598b70;border-radius:12px;background:#07261f;color:#fff;font:inherit;min-width:0}button{width:100%;padding:14px;margin-top:22px;border:1px solid #d6f082;border-radius:12px;background:#d6f082;color:#123728;font:inherit;font-weight:700;cursor:pointer}.secondary{background:transparent;color:#d6f082;border-color:#598b70;margin-top:12px}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #ffda8f;outline-offset:3px}#status{padding:12px;border:1px solid #598b70;border-radius:10px;overflow-wrap:anywhere}#status[data-error=true]{border-color:#df9b8c;color:#ffd4c9}[hidden]{display:none!important}@media(max-width:360px){main{padding:22px 12px}.card{padding:20px}h1{font-size:28px}}
.results{margin-top:22px}.results h2{margin:0 0 18px}.result-card{padding:18px 0;border-top:1px solid #42725b}.result-card h3{margin:0 0 8px;font-size:18px;overflow-wrap:anywhere}.result-card p{margin:6px 0;color:#b4cebf;line-height:1.5;overflow-wrap:anywhere}select{display:block;width:100%;margin:8px 0 18px;padding:12px;border:1px solid #598b70;border-radius:12px;background:#07261f;color:#eef9f0;font:inherit}

.session-tabs,.scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.session-tabs button{padding:12px 4px}.scoreboard{grid-template-columns:repeat(2,minmax(0,1fr));text-align:center;background:#164334;border-radius:16px;padding:16px;margin:16px 0}.scoreboard strong{font-size:48px;color:#d6f082}.scoreboard p{font-size:13px}details{margin-top:20px}summary{cursor:pointer}
