*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#e0f7fa;--surface:#fff;--surface2:#e1f5fe;--accent:#ff5252;--accent2:#ffca28;--correct:#00c853;--wrong:#ff1744;--text:#1a1a2e;--text-muted:#5c6bc0;--opt-a:#ff6b6b;--opt-b:#339af0;--opt-c:#fcc419;--opt-d:#51cf66}html,body{width:100%;height:100%;overflow-x:hidden}body{color:var(--text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:linear-gradient(160deg,#a8edea 0%,#fedbf5 50%,#fff9c4 100%) fixed;min-height:100vh;font-family:Nunito,Arial Rounded MT Bold,Arial,sans-serif}.container{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex;position:relative;overflow:hidden}.track{z-index:0;background:repeating-linear-gradient(90deg,sienna 0 40px,#0000 40px 60px);border-top:5px solid #f5a623;height:24px;position:fixed;bottom:0;left:0;right:0}.track:before{content:"";background:#f5a623;height:5px;position:absolute;top:8px;left:0;right:0}.start-screen{text-align:center;z-index:1;width:100%;max-width:480px;animation:.6s fadeIn}.train-emoji{filter:drop-shadow(0 8px 24px #ff6b6b80);font-size:clamp(80px,20vw,130px);line-height:1.2;animation:2s ease-in-out infinite bounce;display:block}@keyframes bounce{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-16px)rotate(3deg)}}.start-screen h1{background:linear-gradient(135deg,#ff5252,#ff9f43,#ffca28);-webkit-text-fill-color:transparent;text-shadow:none;-webkit-background-clip:text;background-clip:text;margin:16px 0 8px;font-size:clamp(2.6rem,9vw,3.8rem);font-weight:900;line-height:1.1}.start-screen .subtitle{color:#5c6bc0;margin-bottom:32px;font-size:clamp(1.2rem,4vw,1.5rem);font-weight:800}.start-btn{color:#fff;cursor:pointer;text-shadow:0 2px 4px #00000026;background:linear-gradient(135deg,#ff6b6b,#ff9f43);border:none;border-radius:50px;align-items:center;gap:12px;padding:22px 52px;font-family:inherit;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:900;transition:transform .15s,box-shadow .15s;animation:2.5s ease-in-out infinite pulse;display:inline-flex;box-shadow:0 8px 28px #ff6b6b80,0 0 #ff6b6b4d}@keyframes pulse{0%,to{box-shadow:0 8px 28px #ff6b6b80,0 0 #ff6b6b4d}50%{box-shadow:0 8px 28px #ff6b6b80,0 0 0 18px #ff6b6b00}}.start-btn:hover,.start-btn:active{animation:none;transform:scale(1.07);box-shadow:0 12px 40px #ff6b6bb3}.badges{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px;display:flex}.badge{color:#5c6bc0;background:#fff;border:3px solid #c5cae9;border-radius:50px;padding:10px 18px;font-size:1rem;font-weight:800;box-shadow:0 4px 12px #5c6bc026}.quiz-screen{z-index:1;width:100%;max-width:560px;animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.question-count{color:#5c6bc0;letter-spacing:.04em;background:#fff;border-radius:50px;padding:6px 14px;font-size:1.05rem;font-weight:800;box-shadow:0 2px 8px #5c6bc026}.score-chip{color:#ff9f43;background:#fff;border:3px solid #ffca28;border-radius:50px;align-items:center;gap:6px;padding:6px 16px;font-size:1.05rem;font-weight:900;display:flex;box-shadow:0 2px 8px #ffca284d}.progress-bar-wrap{background:#ffffffb3;border-radius:99px;height:16px;margin-bottom:20px;overflow:hidden;box-shadow:inset 0 2px 6px #0000001a}.progress-bar-fill{background:linear-gradient(90deg,#ff6b6b,#ff9f43,#ffd43b,#69db7c);border-radius:99px;height:100%;transition:width .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #ff6b6b66}.question-card{background:#fff;border:4px solid #e3f2fd;border-radius:28px;margin-bottom:16px;padding:28px 24px 24px;position:relative;overflow:hidden;box-shadow:0 8px 32px #5c6bc026,0 2px 8px #0000000f}.question-card:before{content:"";background:linear-gradient(90deg,#ff6b6b,#ff9f43,#ffd43b,#69db7c,#339af0,#cc5de8);height:6px;position:absolute;top:0;left:0;right:0}.question-icon{text-align:center;filter:drop-shadow(0 4px 8px #0000001f);margin-bottom:12px;font-size:3.2rem;display:block}.question-text{text-align:center;color:#1a1a2e;font-size:clamp(1.15rem,4vw,1.45rem);font-weight:900;line-height:1.4}.options-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.option-btn{color:#fff;cursor:pointer;text-align:center;text-shadow:0 1px 3px #0003;background:#fff;border:4px solid #e3f2fd;border-radius:20px;justify-content:center;align-items:center;min-height:80px;padding:16px 12px;font-family:inherit;font-size:clamp(.95rem,3.2vw,1.15rem);font-weight:900;line-height:1.3;transition:transform .12s,box-shadow .12s;display:flex;position:relative;overflow:hidden}.options-grid .option-btn:first-child{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-color:#ff6b6b;box-shadow:0 6px 20px #ff6b6b66}.options-grid .option-btn:nth-child(2){background:linear-gradient(135deg,#339af0,#1c7ed6);border-color:#339af0;box-shadow:0 6px 20px #339af066}.options-grid .option-btn:nth-child(3){color:#5c3d00;text-shadow:none;background:linear-gradient(135deg,#fcc419,#f59f00);border-color:#fcc419;box-shadow:0 6px 20px #fcc41973}.options-grid .option-btn:nth-child(4){background:linear-gradient(135deg,#51cf66,#37b24d);border-color:#51cf66;box-shadow:0 6px 20px #51cf6666}.option-btn:hover:not(:disabled){transform:translateY(-4px)scale(1.03)}.option-btn:active:not(:disabled){transform:scale(.96)}.option-btn.correct{animation:.4s cubic-bezier(.34,1.56,.64,1) correctPop;color:#fff!important;text-shadow:0 1px 3px #0003!important;background:linear-gradient(135deg,#00c853,#1de9b6)!important;border-color:#00c853!important;box-shadow:0 8px 28px #00c85380!important}@keyframes correctPop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.option-btn.wrong{animation:.4s shake;color:#fff!important;text-shadow:0 1px 3px #0003!important;background:linear-gradient(135deg,#ff1744,#d50000)!important;border-color:#ff1744!important;box-shadow:0 8px 28px #ff174480!important}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.option-btn.reveal-correct{opacity:.8;color:#fff!important;text-shadow:0 1px 3px #0003!important;background:linear-gradient(135deg,#00c853,#1de9b6)!important;border-color:#00c853!important}.option-btn:disabled{cursor:default}.feedback{text-align:center;min-height:56px;margin-top:16px}.feedback-correct{background:#fff;border:3px solid #b9fbc0;border-radius:20px;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;animation:.3s feedbackIn;display:flex;box-shadow:0 4px 16px #00c85340}.feedback-wrong{background:#fff;border:3px solid #ffd6d6;border-radius:20px;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;animation:.3s feedbackIn;display:flex;box-shadow:0 4px 16px #ff174433}@keyframes feedbackIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.feedback-emoji{font-size:2.6rem;display:block}.feedback-text{font-size:1.15rem;font-weight:900}.feedback-correct .feedback-text{color:#00a846}.feedback-wrong .feedback-text{color:#e00032}.next-btn{color:#fff;cursor:pointer;text-shadow:0 1px 3px #00000026;background:linear-gradient(135deg,#845ef7,#5c7cfa);border:none;border-radius:20px;width:100%;margin-top:14px;padding:18px;font-family:inherit;font-size:1.25rem;font-weight:900;transition:transform .12s,box-shadow .12s;animation:.3s fadeIn;box-shadow:0 6px 20px #845ef766}.next-btn:hover{transform:translateY(-3px);box-shadow:0 10px 28px #845ef78c}.results-screen{text-align:center;z-index:1;width:100%;max-width:480px;animation:.6s fadeIn}.results-trophy{filter:drop-shadow(0 8px 24px #ffca2880);margin-bottom:8px;font-size:clamp(80px,20vw,130px);animation:.8s cubic-bezier(.34,1.56,.64,1) trophySpin;display:block}@keyframes trophySpin{0%{transform:scale(0)rotate(-180deg)}to{transform:scale(1)rotate(0)}}.results-screen h2{color:#1a1a2e;margin-bottom:8px;font-size:clamp(1.9rem,6vw,2.8rem);font-weight:900}.score-display{background:linear-gradient(135deg,#ff5252,#ff9f43,#ffd43b);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 8px #ff6b6b40);-webkit-background-clip:text;background-clip:text;margin:16px 0;font-size:clamp(3.5rem,14vw,5.5rem);font-weight:900;line-height:1;display:block}.score-label{color:#5c6bc0;margin-bottom:24px;font-size:1.1rem;font-weight:800}.results-message{color:#1a1a2e;background:#fff;border:4px solid #e3f2fd;border-radius:24px;margin-bottom:24px;padding:22px;font-size:1.25rem;font-weight:800;line-height:1.5;box-shadow:0 8px 28px #5c6bc026}.stars{letter-spacing:6px;margin-bottom:10px;font-size:2.2rem;animation:.8s .3s both starPop;display:block}@keyframes starPop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.result-actions{flex-direction:column;gap:12px;display:flex}.play-again-btn{color:#fff;cursor:pointer;text-shadow:0 2px 4px #00000026;background:linear-gradient(135deg,#ff6b6b,#ff9f43);border:none;border-radius:50px;padding:22px 44px;font-family:inherit;font-size:1.5rem;font-weight:900;transition:transform .15s,box-shadow .15s;box-shadow:0 8px 28px #ff6b6b73}.play-again-btn:hover{transform:scale(1.05);box-shadow:0 12px 36px #ff6b6ba6}.confetti-piece{z-index:1000;pointer-events:none;border-radius:3px;width:12px;height:12px;animation:linear forwards confettiFall;position:fixed}@keyframes confettiFall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(720deg)}}@media (max-width:400px){.options-grid{grid-template-columns:1fr}.option-btn{min-height:64px}}@media (min-height:700px){.question-card{padding:32px 28px 28px}}
