html,body{color:#fff;background:#000;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow:hidden}#root{justify-content:center;align-items:center;width:100%;height:100vh;display:flex}@media (orientation:portrait){html,body,#root{transform-origin:50%;width:100vh;height:100vw;transform:rotate(90deg)}}@supports (-webkit-touch-callout:none){@media (aspect-ratio<=1){html,body{transform-origin:50%;width:100vh;height:100vw;transform:rotate(90deg)}}}button{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.menu-screen{background:#000;justify-content:center;align-items:center;width:100%;height:100dvh;padding:0;display:flex;position:fixed;top:0;left:0;overflow:hidden}.menu-content{z-index:10;background:url(./images/menu_graphic.png) 50%/100% 100% no-repeat;width:min(100vw,177.778vh);height:min(100vh,56.25vw);position:relative}.menu-header,.app-title,.app-subtitle{display:none}.menu-buttons{width:100%;height:100%;padding:0;position:absolute;top:0;left:0}.menu-button{color:#0000;cursor:pointer;text-overflow:clip;white-space:nowrap;background:0 0;border:none;margin:0;padding:0;font-size:0;position:absolute;overflow:hidden}.menu-button:first-child{width:28%;height:19%;top:44%;left:61%}.menu-button:nth-child(2){width:28%;height:19%;top:17%;left:61%}.menu-button:nth-child(3){width:13%;height:19%;top:79%;left:5%}.menu-button:nth-child(4){width:14%;height:19%;top:79%;left:25%}.menu-button:nth-child(5){width:14%;height:19%;top:79%;left:85%}.menu-button:nth-child(6){width:16%;height:19%;top:79%;left:50%}.menu-button:focus-visible{outline-offset:-4px;border-radius:18px;outline:3px solid #fff}.btn-primary{box-shadow:none;background:0 0}.btn-primary:hover{box-shadow:none;transform:none}.btn-secondary{box-shadow:none;background:0 0}.btn-secondary:hover{box-shadow:none;transform:none}.btn-feedback{box-shadow:none;background:0 0}.btn-feedback:hover{box-shadow:none;transform:none}.menu-button:active{transform:none}.jeopardy-timer{flex-direction:column;align-items:center;gap:8px;display:flex}.timer-display{background:#0000004d;border:2px solid #4a90e2;border-radius:8px;justify-content:center;align-items:center;padding:8px 16px;display:flex}.timer-text{color:#4a90e2;text-shadow:0 2px 4px #00000080;text-align:center;min-width:60px;font-size:24px;font-weight:700}.timer-bar{background:#ffffff1a;border:1px solid #4a90e2;border-radius:3px;width:100px;height:6px;overflow:hidden}.timer-bar-fill{background:linear-gradient(90deg,#4a90e2 0%,#0f0 50%,#ff6b00 100%);height:100%;transition:width 50ms linear}.gameplay-screen{color:#fff;background:#000;flex-direction:column;width:100%;height:100%;padding:0;display:flex;position:relative;overflow:hidden}.gameplay-screen:before{content:"";width:100%;height:var(--timer-percentage,0%);pointer-events:none;z-index:50;background:linear-gradient(#ff4500b8 0%,#ffa5008a 100%);transition:height 50ms linear;position:fixed;top:0;left:0;box-shadow:inset 0 -2px 8px #00000080}.gameplay-header{background:linear-gradient(#000c,#0006);border-bottom:2px solid #ffffff1a;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.header-stat{flex-direction:column;align-items:center;gap:4px;display:flex}.stat-label{color:#ffffffb3;text-transform:uppercase;letter-spacing:1px;font-size:12px}.stat-value{color:#4a90e2;font-size:20px;font-weight:700}.header-timer{justify-content:center;display:flex}.question-section{flex:none;justify-content:center;align-items:center;margin-top:8px;margin-bottom:12px;padding:14px 40px 8px;display:flex}.question-box{color:#000;background:#fffffff2;border-radius:16px;justify-content:center;align-items:center;width:min(80%,1100px);height:128px;padding:18px 28px;display:flex;overflow:hidden;box-shadow:0 4px 12px #0000004d}.question-text{text-align:center;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:100%;margin:0;font-size:clamp(22px,2.3vw,28px);font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.fact-space{justify-content:center;align-items:center;width:min(80%,1100px);height:88px;margin:0 auto 32px;display:flex}.fact-pill{text-align:center;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:16px;justify-content:center;align-self:center;align-items:center;width:100%;min-height:88px;margin:0;padding:16px 18px;display:flex;overflow:hidden}.fact-pill .feedback-fact{color:#fffffff2;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(15px,1.4vw,18px);line-height:1.3;display:-webkit-box;overflow:hidden}.answer-grid{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:16px;width:min(80%,1100px);margin:38px auto 0;padding:52px 40px 24px;display:grid;transform:translateY(66px)}.answer-button{color:#000;cursor:pointer;background:orange;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:8px;min-height:112px;padding:16px 18px;font-size:17px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 8px #0003}.answer-button:hover:not(:disabled){transform:scale(1.02);box-shadow:0 6px 12px #0000004d}.answer-button:disabled{cursor:not-allowed}.answer-button.selected.correct{color:#fff;background:#4caf50;box-shadow:0 0 20px #4caf5080}.answer-button.selected.incorrect{color:#fff;background:#f44336;box-shadow:0 0 20px #f4433680}.answer-button.show-correct{opacity:.6;background:#4caf50}.answer-letter{opacity:.7;text-transform:uppercase;letter-spacing:1px;font-size:14px}.answer-text{text-align:center;flex:1;justify-content:center;align-items:center;max-width:100%;font-size:17px;display:flex}.feedback-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.feedback-content{text-align:center;background:#000000f2;border:2px solid #fff3;border-radius:12px;flex-direction:column;align-items:center;gap:12px;min-width:min(760px,84vw);max-width:82%;max-height:70vh;padding:24px 28px;display:flex}.feedback-content .fact-pill{background:#ffffff14;border-radius:12px;width:100%;min-height:112px;margin:0;padding:16px 18px}.feedback-message{color:#4caf50;margin:0;font-size:32px;font-weight:700}.feedback-overlay .feedback-message.incorrect{color:#f44336}.feedback-fact{color:#ffffffe6;margin:0;font-size:18px;line-height:1.35}.round-tally-screen{background:linear-gradient(135deg,#0a0a0a 0%,#1a1a2e 100%);justify-content:center;align-items:center;width:100%;height:100%;padding:12px;display:flex;overflow:hidden}.tally-container{background:#141428f2;border:3px solid #4a90e2;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;padding:20px;display:flex;overflow-y:auto;box-shadow:0 0 40px #4a90e24d}.tally-title{color:#4a90e2;text-align:center;text-transform:uppercase;letter-spacing:1px;margin:0 0 16px;font-size:32px;font-weight:700}.score-breakdown{background:#ffffff0d;border-left:4px solid orange;border-radius:6px;margin-bottom:12px;padding:12px}.breakdown-row{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:14px;display:flex}.breakdown-row .label{color:#ffffffb3;font-weight:500}.breakdown-row .value{color:#fff;font-size:14px;font-weight:700}.score-highlight{color:#4caf50;font-size:18px!important}.score-details{border-top:1px solid #ffffff1a;margin-top:8px;padding-top:8px}.detail-item{color:#fff9;background:#ffffff05;border-radius:3px;justify-content:space-between;margin-bottom:4px;padding:4px;font-size:12px;display:flex}.detail-item span:last-child{color:orange;font-weight:700}.detail-item.perfect{color:#4caf50;background:#4caf501a;border-left:3px solid #4caf50;padding-left:10px}.detail-item.perfect span:last-child{color:#4caf50}.personal-best{text-align:center;background:linear-gradient(135deg,#4a90e21a 0%,#ffa5000d 100%);border:2px solid #4a90e2;border-radius:6px;margin-bottom:12px;padding:12px;transition:all .3s}.personal-best.new-pb{background:linear-gradient(135deg,#4caf5026 0%,#ffa5001a 100%);border:2px solid #4caf50;box-shadow:0 0 20px #4caf504d}.pb-label{color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px}.pb-value{color:#4a90e2;font-size:20px;font-weight:700}.personal-best.new-pb .pb-value{color:#4caf50}.pb-badge{color:#4caf50;margin-top:6px;font-size:12px;font-weight:700;animation:.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.cumulative-section{text-align:center;background:#ffffff0d;border-left:4px solid #4caf50;border-radius:6px;margin-bottom:12px;padding:12px}.cumulative-label{color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px}.cumulative-score{color:#4caf50;font-size:24px;font-weight:700}.speed-round-badge{color:#000;text-align:center;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#ff6b00 0%,orange 100%);border-radius:6px;margin-bottom:12px;padding:8px;font-size:13px;font-weight:700;box-shadow:0 0 20px #ffa50066}.tally-buttons{justify-content:center;gap:8px;margin-top:auto;display:flex}.btn-quit{color:#fff;background:#f44336cc}.btn-quit:hover{background:#f44336;transform:translateY(-2px);box-shadow:0 8px 20px #f4433666}.btn-next{color:#fff;background:linear-gradient(135deg,#4a90e2 0%,#4caf50 100%)}.btn-next:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4a90e266}.completion-screen{background:radial-gradient(circle at 50% 20%,#00b4ff2e,#0000 22%),radial-gradient(circle at 18% 14%,#0078ff2e,#0000 18%),radial-gradient(circle at 82% 18%,#48ffb41f,#0000 16%),radial-gradient(circle,#0064ff14,#0000 52%),linear-gradient(#020712 0%,#050b1a 48%,#02040a 100%);justify-content:center;align-items:center;width:100%;height:100%;padding:32px 18px;display:flex;position:relative;overflow-y:auto}.completion-screen:before{content:"";opacity:.55;pointer-events:none;background-image:radial-gradient(circle,#54bbfff2 0 2px,#0000 2px),radial-gradient(circle,#57ffa7e6 0 1.5px,#0000 1.5px),radial-gradient(circle,#5aa9ffd1 0 1px,#0000 1px);background-position:0 0,40px 60px,80px 30px;background-size:160px 160px,220px 220px,280px 280px;position:absolute;inset:0}.completion-screen>*{z-index:1;position:relative}.completion-container{text-align:center;background:radial-gradient(circle at top,#43bcff24,#0000 34%),#040a1aed;border:2px solid #49a8fff2;border-radius:26px;width:100%;max-width:760px;padding:34px 34px 30px;box-shadow:0 0 0 1px #00000073,0 0 80px #238cff2e}.completion-title{color:#9bff5c;text-shadow:0 0 18px #86ff6b8c;text-transform:uppercase;letter-spacing:1.5px;margin:4px 0 10px;font-size:clamp(44px,5vw,58px);font-weight:700;animation:.6s ease-out slideDown}.completion-subtitle{color:#ffffffd6;margin:0 0 26px;font-size:22px;animation:.6s ease-out .2s both slideUp}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.final-stats{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px;animation:.6s ease-out .4s both scaleIn;display:grid}.stat-block{text-align:left;background:linear-gradient(135deg,#071b3af2 0%,#08122afa 100%);border:2px solid #2b90ffe6;border-radius:18px;align-items:center;gap:14px;min-height:112px;padding:18px 16px;transition:all .3s;display:flex;box-shadow:0 0 0 1px #00000059,0 6px 18px #00000059}.stat-block:hover{transform:translateY(-3px);box-shadow:0 10px 22px #1f91ff40}.stat-block.pb{background:linear-gradient(135deg,#0e3019f2 0%,#08122afa 100%);border-color:#98ff59e6}.stat-value.pb{color:#9bff5c}.completion-message{background:#ffffff0b;border:1px solid #ffffff14;border-radius:14px;margin-bottom:24px;padding:16px 18px;animation:.6s ease-out .6s both slideUp}.completion-message p{color:#ffffffd1;margin:12px 0;font-size:16px;line-height:1.6}.completion-message p:first-child{margin-top:0}.completion-message p:last-child{margin-bottom:0}.completion-buttons{flex-wrap:wrap;justify-content:center;gap:16px;animation:.6s ease-out .8s both slideUp;display:flex}.btn{cursor:pointer;text-transform:uppercase;letter-spacing:1px;border:none;border-radius:12px;flex:1;max-width:250px;padding:14px 22px;font-size:15px;font-weight:700;transition:all .3s}.btn-menu{color:#fff;background:linear-gradient(#ff5656f2,#c12323f5)}.btn-home{color:#fff;background:linear-gradient(#4592fff5,#185ed0f5)}.btn-menu:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f443365c}.btn-home:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4a90e259}.btn-play-again{color:#fff;background:linear-gradient(#7eff63 0%,#36a834 100%)}.btn-play-again:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4caf5057}.btn:active{transform:translateY(0)}@media (width<=600px){.completion-container{padding:24px}.completion-title{font-size:36px}.completion-subtitle{font-size:18px}.final-stats{grid-template-columns:1fr}.stat-value{font-size:36px}.completion-buttons{flex-direction:column}.btn{max-width:100%}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:linear-gradient(135deg,#0a0a1a 0%,#1a1a3a 100%);border:2px solid #4a90e2;border-radius:16px;width:90%;max-width:600px;max-height:80vh;padding:40px;animation:.3s ease-out slideIn;overflow-y:auto;box-shadow:0 0 40px #4a90e266}@keyframes slideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-title{color:#4a90e2;text-align:center;text-transform:uppercase;letter-spacing:1px;margin:0 0 30px;font-size:40px;font-weight:700}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:40px;display:grid}.stat-card{text-align:center;background:#ffffff0d;border:1px solid #4a90e2;border-radius:12px;padding:20px;transition:all .3s}.stat-card:hover{background:#4a90e21a;box-shadow:0 0 20px #4a90e24d}.stat-label{color:#fff9;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:12px}.stat-value{color:#4caf50;font-size:28px;font-weight:700;line-height:1}.stat-unit{color:#ffffff80;margin-top:4px;font-size:12px}.settings-list{margin-bottom:40px}.setting-item{background:#ffffff0d;border:1px solid #4a90e24d;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px 20px;display:flex}.setting-label{color:#fff;font-size:16px;font-weight:500}.toggle-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex}.toggle-switch input{display:none}.toggle-slider{background:#666;border-radius:13px;width:50px;height:26px;margin-left:10px;transition:background .3s;display:inline-block;position:relative}.toggle-slider:after{content:"";background:#fff;border-radius:11px;width:22px;height:22px;transition:left .3s;position:absolute;top:2px;left:2px}.toggle-switch input:checked+.toggle-slider{background:#4caf50}.toggle-switch input:checked+.toggle-slider:after{left:26px}.settings-info{text-align:center;border-top:1px solid #4a90e233;padding:20px}.info-text{color:#fff9;margin:0 0 16px;font-size:14px}.info-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.info-link{color:#4a90e2;font-size:13px;text-decoration:none;transition:color .3s}.info-link:hover{color:#6ab3ff;text-decoration:underline}.separator{color:#ffffff4d}.about-content{text-align:center;margin-bottom:30px}.about-app-name{background:linear-gradient(135deg,#ff6b00,#fa0,#f06);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 8px;font-size:32px;font-weight:700}.about-tagline{color:#00bfff;margin:0 0 20px;font-size:20px}.about-info{background:#ffffff0d;border-left:4px solid #4a90e2;border-radius:8px;margin-bottom:20px;padding:16px}.about-version{color:#ffffffb3;margin:0;font-size:14px}.about-credits{color:#fff9;margin:8px 0 0;font-size:14px}.about-description{color:#fffc;margin-bottom:20px;font-size:14px;line-height:1.6}.about-description p{margin:10px 0}.about-links{flex-direction:column;gap:10px;display:flex}.about-link{color:#4a90e2;border:1px solid #4a90e2;border-radius:6px;padding:8px 16px;font-size:14px;text-decoration:none;transition:all .3s;display:inline-block}.about-link:hover{color:#6ab3ff;background:#4a90e21a}.modal-close-btn{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:1px;background:#f44336cc;border:none;border-radius:8px;margin:20px auto 0;padding:12px 24px;font-size:14px;font-weight:700;transition:all .3s;display:block}.modal-close-btn:hover{background:#f44336;transform:translateY(-2px);box-shadow:0 4px 12px #f4433666}.modal-close-btn:active{transform:translateY(0)}.speed-round-screen{z-index:500;background:#000;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;animation:.3s ease-in fadeIn;display:flex;position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.speed-round-content{text-align:center;animation:.4s ease-out scaleIn}.speed-round-graphic{max-width:90%;margin-bottom:30px}.speed-round-graphic img{filter:drop-shadow(0 0 20px #f069);width:100%;max-width:800px;height:auto}.speed-round-subtitle{color:#0f8;text-shadow:0 0 20px #00ff8880;letter-spacing:1px;margin:0;font-size:28px;font-weight:700;animation:1s ease-in-out infinite pulse}*{box-sizing:border-box;margin:0;padding:0}html{overscroll-behavior:none;touch-action:manipulation;width:100%;height:100dvh;overflow:hidden}body{color:#fff;overscroll-behavior:none;touch-action:manipulation;background:#000;width:100%;height:100dvh;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow:hidden}#root{width:100%;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);justify-content:center;align-items:center;display:flex}.app-container{flex-direction:column;width:100%;height:100%;display:flex}@media (orientation:portrait){html,body,#root{transform-origin:50%;width:100vh;height:100vw;transform:rotate(90deg)}}@supports (-webkit-touch-callout:none){@media (aspect-ratio<=1){html,body{transform-origin:50%;width:100vh;height:100vw;transform:rotate(90deg)}}}*{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-text-size-adjust:100%}input,textarea,button{-webkit-user-select:text;user-select:text}*{transition:none}button{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}
