@import "https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap";:root{--hsl-white:0 0% 100%;--hsl-black:0 0% 0%;--hsl-black-70:0 0% 70%;--hsl-grey-40:0 0% 40%;--hsl-grey-85:15 5% 85%;--hsl-grey-80:0 2% 83%;--hsl-grey-90:30 5% 90%;--hsl-grey-95:0 4% 95%;--hsl-grey-97:0 0% 97%;--hsl-brand-5:10 100% 5%;--hsl-brand-10:10 100% 10%;--hsl-brand-15:10 100% 15%;--hsl-brand-20:10 100% 20%;--hsl-brand-25:10 100% 25%;--hsl-brand-30:10 100% 30%;--hsl-brand-35:10 100% 35%;--hsl-brand-40:10 100% 40%;--hsl-brand-45:10 100% 45%;--hsl-brand-50:10 100% 50%;--hsl-brand-55:10 100% 55%;--hsl-brand-60:10 100% 60%;--hsl-brand-65:10 100% 65%;--hsl-brand-70:10 100% 70%;--hsl-brand-75:10 100% 75%;--hsl-brand-80:10 100% 80%;--hsl-brand-85:10 100% 85%;--hsl-brand-90:10 100% 90%;--hsl-brand-95:10 100% 95%;--hsl-brown-5:20 5% 5%;--hsl-brown-10:20 5% 10%;--hsl-brown-15:20 5% 15%;--hsl-brown-20:20 5% 20%;--hsl-brown-25:20 5% 25%;--hsl-brown-30:20 5% 30%;--hsl-brown-35:20 5% 35%;--hsl-brown-40:20 5% 40%;--hsl-brown-45:20 5% 45%;--hsl-brown-50:20 5% 50%;--hsl-brown-55:20 5% 55%;--hsl-brown-60:20 5% 60%;--hsl-brown-65:20 5% 65%;--hsl-brown-70:20 5% 70%;--hsl-brown-75:20 5% 75%;--hsl-brown-80:20 5% 80%;--hsl-brown-85:20 5% 85%;--hsl-brown-90:20 5% 90%;--hsl-brown-95:20 5% 95%;--hsl-blue-55:215 100% 55%;--hsl-red-50:350 90% 50%;--hsl-red-70:350 90% 70%;--hsl-red-90:350 90% 90%;--hsl-red-95:350 100% 95%;--hsl-yellow-35:45 100% 35%;--hsl-yellow-45:45 100% 45%;--hsl-yellow-80:45 100% 80%;--hsl-yellow-90:45 100% 90%;--hsl-green-35:160 50% 35%;--hsl-green-70:160 50% 70%;--hsl-green-90:160 50% 90%}*{box-sizing:border-box}html,body,#root{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:hsl(var(--hsl-black));background-color:hsl(var(--hsl-brown-95));margin:0;font-family:Onest,-apple-system,Segoe UI,system-ui,sans-serif;line-height:1.4}h1{margin:0 0 12px;font-size:28px;font-weight:700;line-height:32px}h2{margin:0 0 10px;font-size:22px;font-weight:600;line-height:26px}h3{margin:0 0 8px;font-size:18px;font-weight:600;line-height:22px}p{margin:8px 0;font-size:15px;line-height:1.45}a{color:hsl(var(--hsl-brand-55));text-decoration:none}a:hover{text-decoration:underline}code{background:hsl(var(--hsl-brown-90));border-radius:6px;padding:2px 6px;font-size:13px}hr{border:0;border-top:1px solid hsl(var(--hsl-brown-85));margin:24px 0}.wrap{max-width:720px;margin:0 auto;padding:40px 16px 80px}.muted{color:hsl(var(--hsl-brown-55))}.err{color:hsl(var(--hsl-red-50))}button{background:hsl(var(--hsl-white));color:hsl(var(--hsl-black));border:1px solid hsl(var(--hsl-brown-85));font:inherit;cursor:pointer;border-radius:12px;margin:4px 6px 4px 0;padding:12px 20px;font-weight:500;transition:background .15s,border-color .15s,transform .15s}button:hover:not(:disabled){background:hsl(var(--hsl-brown-95));border-color:hsl(var(--hsl-brown-80));transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.45;cursor:default}button.primary{background:hsl(var(--hsl-brand-55));color:hsl(var(--hsl-white));border-color:hsl(var(--hsl-brand-55))}button.primary:hover:not(:disabled){background:hsl(var(--hsl-brand-50));border-color:hsl(var(--hsl-brand-50))}input{border:1px solid hsl(var(--hsl-brown-85));background:hsl(var(--hsl-white));color:hsl(var(--hsl-black));font:inherit;border-radius:12px;outline:none;margin:4px 8px 4px 0;padding:12px 16px;transition:border-color .15s}input:focus{border-color:hsl(var(--hsl-brand-55))}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.options{gap:10px;margin-top:16px;display:grid}.options button{text-align:left;background:hsl(var(--hsl-white));border:1px solid hsl(var(--hsl-brown-85));width:100%;padding:16px 20px;font-size:16px;position:relative}.options button.chosen{border-color:hsl(var(--hsl-brand-55));background:hsl(var(--hsl-brand-95));box-shadow:0 0 0 2px hsl(var(--hsl-brand-70)) inset}.options button.chosen:after{content:"✓";color:hsl(var(--hsl-brand-50));font-weight:800;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.options button.correct{border-color:hsl(var(--hsl-green-35));background:hsl(var(--hsl-green-90))}.options button.correct:after{content:"✓";color:hsl(var(--hsl-green-35))}.reveal{background:hsl(var(--hsl-white));border:1px solid hsl(var(--hsl-brown-85));border-radius:16px;margin-top:16px;padding:18px 20px;animation:.35s rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.35s rise}.podium{grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:12px;margin:24px 0 32px;display:grid}.podium .card{background:hsl(var(--hsl-white));border:1px solid hsl(var(--hsl-brown-85));text-align:center;border-radius:16px;padding:20px 16px;animation:.45s rise}.podium .card.gold{border-color:hsl(var(--hsl-yellow-45));background:linear-gradient(180deg, hsl(var(--hsl-yellow-90)) 0%, hsl(var(--hsl-white)) 90%);box-shadow:0 8px 32px hsl(var(--hsl-yellow-45) / .18);transform:translateY(-8px)}.podium .card.silver{border-color:hsl(var(--hsl-grey-80));background:linear-gradient(180deg, hsl(var(--hsl-grey-90)) 0%, hsl(var(--hsl-white)) 90%)}.podium .card.bronze{border-color:hsl(var(--hsl-brown-75));background:linear-gradient(180deg, hsl(var(--hsl-brand-90)) 0%, hsl(var(--hsl-white)) 90%)}.podium .place{letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--hsl-brown-55));font-size:12px;font-weight:500}.podium .name{margin:8px 0 4px;font-size:18px;font-weight:700}.podium .score{color:hsl(var(--hsl-brand-55));font-size:32px;font-weight:700;line-height:1}.podium .card.gold .score{color:hsl(var(--hsl-yellow-35))}.lb-list{margin:0;padding:0;list-style:none}.lb-list li{background:hsl(var(--hsl-white));border:1px solid hsl(var(--hsl-brown-90));border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 16px;animation:.35s rise;display:flex}.lb-list .pos{background:hsl(var(--hsl-brown-95));width:28px;height:28px;color:hsl(var(--hsl-brown-45));border-radius:50%;justify-content:center;align-items:center;margin-right:12px;font-size:13px;font-weight:600;display:inline-flex}.lb-list .name{flex:1;font-weight:500}.lb-list .score{color:hsl(var(--hsl-brand-55));font-size:18px;font-weight:700}.finish{text-align:center;padding:24px 0 40px;animation:.5s rise}.finish h1{margin-bottom:8px;font-size:40px;line-height:1.1}.finish .subtitle{color:hsl(var(--hsl-brown-55));margin-bottom:24px;font-size:16px}.finish .medal{margin-bottom:8px;font-size:64px;line-height:1}.board h1{font-size:32px}.board .round-info{color:hsl(var(--hsl-brown-55));margin-top:4px;font-size:15px}
