:root{--green:#15803d;--dark:#14532d;--pink:#ec4899;--pale:#fdf2f8;--bg:#f1fdf4;--border:#d6eee0;--text:#18372b}*{box-sizing:border-box}body{margin:0;background:linear-gradient(150deg,#edfff2,#fff0f8);color:var(--text);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}header{background:#fff;border-bottom:3px solid #f9a8d4;padding:16px max(20px,calc((100% - 1050px)/2));display:flex;justify-content:space-between;align-items:center;gap:15px;box-shadow:0 2px 12px #14532d10}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;color:var(--dark);font-size:18px}.brand small{display:block;font-size:10px;letter-spacing:1.1px;color:#5c7965}.logo{background:linear-gradient(135deg,var(--green),var(--pink));color:white;padding:7px 17px;font-size:33px;border-radius:18px}.linkbutton,.smallBtn{border:1px solid #b5dbc4;background:#fff;color:#166534;padding:10px 13px;border-radius:10px;font-weight:700;cursor:pointer}.linkbutton:hover,.smallBtn:hover{background:#e9fff0}main{max-width:1050px;padding:20px 18px 70px;margin:auto}.hero{text-align:center;padding:35px 12px 28px}.eyebrow{font-weight:800;color:var(--pink);font-size:12px;letter-spacing:1.6px}.hero h1{font-size:clamp(38px,8vw,65px);line-height:1.1;margin:12px 0;color:#176a3c}.hero h1 em{font-style:normal;color:var(--pink)}.hero p{max-width:700px;margin:12px auto;color:#526d5f}.chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.chips span{background:#fff;padding:7px 12px;border:1px solid var(--border);border-radius:30px;font-size:13px;font-weight:700}.panel{background:#fff;border:1px solid var(--border);border-radius:22px;padding:clamp(18px,3vw,32px);box-shadow:0 8px 28px #16653410;margin:18px 0}.hidden{display:none!important}.sectionTop,.gameHeader,.questionTop,.qActions,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}h2{font-size:24px;margin:0;color:var(--dark)}h3{font-size:clamp(20px,4vw,28px);line-height:1.3;margin:17px 0}.panel p{margin:5px 0 18px;color:#557365}.step,.category{border-radius:20px;background:#fce7f3;color:#9d174d;font-size:12px;letter-spacing:.4px;font-weight:800;padding:6px 12px}.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:19px 0}label{display:block;font-size:14px;font-weight:800;color:#245438}label b{color:#e11d48}input,select{display:block;margin-top:8px;width:100%;padding:12px;border:2px solid #cde5d6;border-radius:12px;font:inherit;background:white;min-width:0}input:focus,select:focus{outline:none;border-color:var(--pink)}.btn{background:linear-gradient(110deg,#15803d,#1ca854);color:#fff;border:0;border-radius:12px;padding:13px 21px;font-weight:800;font-size:15px;cursor:pointer;box-shadow:0 4px 10px #16653420}.btn.alt{background:#fff;color:#166534;border:2px solid #bbebc9;box-shadow:none}.btn:hover{filter:brightness(.97)}.error{color:#b91c1c!important;font-weight:700}.yearGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:20px}.yearCard{text-align:left;border:2px solid #c3ebd2;border-radius:16px;padding:20px;background:linear-gradient(145deg,#fff,#effff5);cursor:pointer;transition:.15s;min-height:125px}.yearCard:hover{transform:translateY(-3px);border-color:var(--pink)}.yearCard strong{font-size:28px;color:var(--dark);display:block}.yearCard small{color:#61786b}.yearCard span{float:right;font-size:28px}.gameHeader h2{font-size:21px}.scorePill{background:#fce7f3;padding:12px 17px;border-radius:24px;color:#9d174d;font-size:21px;font-weight:900}.progressWrap{height:13px;background:#d8f9e1;border-radius:20px;overflow:hidden;margin:24px 0 7px}#progressBar{height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--pink));transition:width .35s}.counter{font-weight:800;font-size:13px;color:#557365}.questionBlock{text-align:center;max-width:750px;margin:auto}.questionTop{text-align:left;margin-top:10px}.visual img{max-width:100%;height:clamp(150px,32vw,260px);object-fit:contain;border:1px solid #e7e7e7;border-radius:14px;background:#fff;margin:2px auto 15px}.visual:empty{display:none}.answerOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.option{border:2px solid #d0ead9;background:#f7fff9;border-radius:14px;padding:17px 12px;font-weight:800;font-size:17px;color:#1d5735;cursor:pointer;min-height:63px}.option:hover{border-color:var(--pink);background:#fff5fa}.option.correct{background:#dcfce7;border-color:#22c55e}.option.wrong{background:#ffe4e6;border-color:#fb7185}.option:disabled{opacity:.82;cursor:default}.audioBar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:12px;background:#fdf2f8;border-radius:12px}.audioBar span{font-size:13px;color:#7e365e}.qActions{justify-content:center;margin-top:17px}#feedback{font-size:19px;font-weight:900;min-height:30px}.success{color:#15803d}.failure{color:#be123c}.resultsMedal{text-align:center;font-size:80px}#result{text-align:center}.resultsGrid,.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.resultsGrid>div,.stats>div{background:#f4fff7;padding:18px;border-radius:15px}.resultsGrid strong,.stats strong{display:block;color:var(--dark);font-size:22px}.resultsGrid span,.stats span{font-size:13px;color:#557365}.centerActions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.toolbar{justify-content:flex-start}.toolbar input{width:280px}.toolbar select{width:160px}.tableScroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:11px;border-bottom:1px solid #d8eae0;white-space:nowrap}th{background:#e7f8ec}.statusDone{color:#15803d;font-weight:800}.statusNot{color:#be123c;font-weight:800}footer{text-align:center;padding:18px;color:#4b6b56}footer strong{color:#e13287}@media(max-width:720px){header{padding:12px}.brand strong{font-size:14px}.brand small{font-size:9px}.linkbutton{font-size:12px}.fields{grid-template-columns:1fr}.yearGrid{grid-template-columns:repeat(2,1fr)}.answerOptions{grid-template-columns:1fr}.resultsGrid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.hero{padding-top:20px}}
