.logo.vite:hover{filter:drop-shadow(0 0 2em #747bff)}.logo.typescript:hover{filter:drop-shadow(0 0 2em #2d79c7)}:root{font-family:Inter,Avenir,Helvetica,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;--color-text: #0f0f0f;--color-background: #f6f6f6;--color-input-bg: #ffffff;--color-input-text: #0f0f0f;--color-button-bg: #ffffff;--color-button-text: #0f0f0f;--color-button-hover-bg: #e8e8e8;--color-border: #ccc;--color-border-hover: #396cd8;--color-primary: #396cd8;--color-primary-hover: #2d5bb8;--color-link: #646cff;--color-link-hover: #535bf2;--color-question-label: #666;--color-modal-overlay: rgba(0, 0, 0, .5);--color-shadow: rgba(0, 0, 0, .2)}body[data-theme=dark]{--color-text: #f6f6f6;--color-background: #2f2f2f;--color-input-bg: #0f0f0f98;--color-input-text: #ffffff;--color-button-bg: #0f0f0f98;--color-button-text: #ffffff;--color-button-hover-bg: #0f0f0f69;--color-border: #555;--color-border-hover: #396cd8;--color-primary: #a8c7ff;--color-primary-hover: #c4d9ff;--color-link: #646cff;--color-link-hover: #24c8db;--color-question-label: #aaa;--color-modal-overlay: rgba(0, 0, 0, .7);--color-shadow: rgba(0, 0, 0, .4)}:root{color:var(--color-text);background-color:var(--color-background)}html{background-color:var(--color-background);overflow-x:hidden;width:100%}body{margin:0;padding:0;min-height:100vh;width:100%;background-color:var(--color-background);color:var(--color-text);overflow-x:hidden}.container{margin:0;padding-top:80px;padding-left:10px;padding-right:10px;display:flex;flex-direction:column;justify-content:center;text-align:center;background-color:var(--color-background);width:100%;box-sizing:border-box;overflow-x:hidden}.logo{height:6em;padding:1.5em;will-change:filter;transition:.75s}.logo.tauri:hover{filter:drop-shadow(0 0 2em #24c8db)}.row{display:flex;justify-content:center}a{font-weight:500;color:var(--color-link);text-decoration:inherit}a:hover{color:var(--color-link-hover)}#header-bar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:15px;z-index:100;box-sizing:border-box}#header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}h1{margin:0;font-size:1.8em}input,button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;color:var(--color-input-text);background-color:var(--color-button-bg);transition:border-color .25s;box-shadow:0 2px 2px var(--color-shadow);box-sizing:border-box}button{cursor:pointer}button:hover{border-color:var(--color-border-hover)}button:active{border-color:var(--color-border-hover);background-color:var(--color-button-hover-bg)}input,button{outline:none}#greet-input{margin-right:5px}#bottom-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin:20px auto 0;max-width:100%;box-sizing:border-box;flex-wrap:wrap}#locale-selector{display:flex;align-items:center;gap:10px;max-width:100%;box-sizing:border-box}#locale-selector label{font-weight:500}#locale-dropdown{padding:.5em 2.5em .5em 1em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-input-bg);color:var(--color-input-text);font-size:1em;cursor:pointer;min-width:200px;max-width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .7em top 50%;background-size:1em auto;box-sizing:border-box}#locale-dropdown option{background-color:var(--color-input-bg);color:var(--color-input-text)}#theme-toggle{padding:.5em 1em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-button-bg);cursor:pointer;font-size:1.2em;box-sizing:border-box;box-shadow:0 2px 8px var(--color-shadow);flex-shrink:0}#settings-button{padding:.5em 1em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-button-bg);cursor:pointer;font-size:1em;max-width:100%;box-sizing:border-box}#settings-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--color-modal-overlay);justify-content:center;align-items:center;z-index:1000}#settings-content{background-color:var(--color-input-bg);color:var(--color-text);padding:30px;border-radius:12px;max-width:400px;width:90%}#settings-content h3{margin-top:0;margin-bottom:20px}.settings-group{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.settings-group label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:1em}.settings-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}#settings-close{width:100%;padding:.8em;background-color:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1em}#settings-close:hover{background-color:var(--color-primary-hover)}#quiz-container{width:100%;max-width:min(600px,calc(100vw - 40px));margin:0 auto;padding:20px;border:2px solid var(--color-border);border-radius:12px;box-sizing:border-box}#question-container{margin-bottom:0;display:flex;flex-direction:column;align-items:center}#question-label{font-size:1.2em;font-weight:600;color:var(--color-question-label);margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em;min-height:calc(1.2em + 12px)}#question{font-size:1.5em;margin-bottom:5px;color:var(--color-primary);min-height:4.5em;width:100%;display:flex;align-items:center;justify-content:center;text-align:center}#image-container{margin:10px 0;min-height:50px}#image-container img{max-width:100%;height:auto;border-radius:8px}#answer-form{display:flex;gap:10px;margin-bottom:10px;justify-content:center;width:100%;box-sizing:border-box}#answer-input{flex:1;max-width:300px}#answer-input::selection{background-color:transparent;color:#888}body[data-theme=dark] #answer-input::selection{background-color:transparent;color:#777}#answer-input:disabled{opacity:.6;cursor:not-allowed}#feedback{margin:10px 0;font-size:1.2em;min-height:30px}#score{font-size:1.1em;font-weight:700;margin:10px 0;position:relative}.particle{position:absolute;width:8px;height:8px;border-radius:50%;pointer-events:none;animation:particle-burst .8s ease-out forwards}.particle:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:inherit;filter:blur(2px)}@keyframes particle-burst{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(0)}}#scoresheet{font-size:1.1em;font-weight:700;opacity:.6;position:relative;white-space:nowrap}.scoresheet-bump{animation:bump .3s ease-out}@keyframes bump{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.score-floater{position:fixed;font-size:1.4em;font-weight:700;color:#22c55e;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);text-shadow:0 0 8px rgba(34,197,94,.5)}.score-floater.flying{animation:fly-to-scoresheet .7s ease-in-out forwards}@keyframes fly-to-scoresheet{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(calc(-50% + var(--fly-dx) * .5),calc(-50% + var(--fly-dy) * .5 - 30px)) scale(1.3)}to{opacity:0;transform:translate(calc(-50% + var(--fly-dx)),calc(-50% + var(--fly-dy))) scale(.5)}}#next-button{width:44px;height:44px;padding:0;background-color:var(--color-button-bg);color:var(--color-text);border:1px solid var(--color-border);font-size:1.5em;display:flex;align-items:center;justify-content:center}#next-button:hover{background-color:var(--color-button-hover-bg);border-color:var(--color-border-hover)}#submit-button{padding:0;border:none;background:transparent;overflow:hidden;position:relative;width:44px;height:44px}#submit-button-nofun{width:44px;height:44px;padding:0;background-color:var(--color-primary);color:#fff;border:none;font-size:1.5em;display:flex;align-items:center;justify-content:center}#submit-button-nofun:hover{background-color:var(--color-primary-hover);border-color:var(--color-border-hover)}#submit-button img{position:absolute;top:0;left:0;width:44px;height:44px;border-radius:8px;object-fit:cover}#submit-button .static-img{opacity:1;transition:opacity .1s}#submit-button .animated-img{opacity:0;transition:opacity .1s}#submit-button:hover .static-img,#submit-button:active .static-img,#submit-button.playing .static-img{opacity:0}#submit-button:hover .animated-img,#submit-button:active .animated-img,#submit-button.playing .animated-img{opacity:1}@media(max-width:768px){:root{font-size:14px}.container{padding-top:70px;padding-left:15px;padding-right:15px}#header-bar{padding:12px}h1{font-size:1.4em}#bottom-controls{gap:12px;margin:20px auto 0}#locale-selector{gap:8px;flex-shrink:1}#locale-dropdown{min-width:150px;max-width:100%;-webkit-appearance:menulist;-moz-appearance:menulist;appearance:auto;background-image:none;padding-right:1em}#settings-button{min-width:0;padding:.7em 1.2em;flex-shrink:0}#theme-toggle{font-size:1em}#quiz-container{width:100%;max-width:calc(100% - 30px);padding:15px;border-width:1px;margin:0 auto}#question{font-size:1.2em;min-height:3.5em;padding:0 10px}#answer-form{flex-direction:column;gap:12px;width:100%;align-items:center}#answer-input{max-width:100%;width:100%;padding:.8em 1em;font-size:1em}#submit-button,#submit-button img{width:60px;height:60px}#submit-button-nofun,#next-button{width:60px;height:60px;font-size:2em}#settings-content{padding:20px;width:85%;max-width:350px}#feedback{font-size:1em}input,button{padding:.7em 1.2em}}@media(max-width:480px){#header-bar{padding:10px}h1{font-size:1.4em;word-wrap:break-word}#quiz-container{width:100%;max-width:calc(100% - 20px);padding:12px}#question{font-size:1.3em;min-height:3em}#settings-content{padding:15px;width:90%}#theme-toggle{padding:.4em .8em;font-size:1em}}@media(max-width:360px){:root{font-size:12px}.container{padding-top:60px;padding-left:10px;padding-right:10px}#bottom-controls{flex-direction:column}#locale-selector{flex-direction:column;width:100%;max-width:min(300px,calc(100vw - 20px))}#locale-dropdown{width:100%;min-width:0}#settings-button{width:auto;min-width:44px;max-width:auto}}@media(hover:none)and (pointer:coarse){button,input[type=checkbox],select{min-height:44px}button{min-width:44px}#settings-button{min-height:44px;padding:.8em 1.2em}#theme-toggle{min-height:44px;min-width:44px;padding:.5em}#locale-dropdown{min-height:44px}}*,#quiz-container,.container,#answer-form,#bottom-controls{max-width:100%}body[data-funmode=true]:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,#ff000012,#ffa50012,#ffff0012,#00c80012,#0064ff12,#8c00ff12,#ff000012);background-size:400% 400%;animation:fun-bg-shift 6s ease infinite;z-index:-1;pointer-events:none}@keyframes fun-bg-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}body[data-funmode=true] #quiz-container{animation:fun-border-rainbow 3s linear infinite,fun-wobble 4s ease-in-out infinite;border-width:3px}@keyframes fun-border-rainbow{0%{border-color:red;box-shadow:0 0 20px #f004,inset 0 0 20px #f001}16%{border-color:#f80;box-shadow:0 0 20px #f804,inset 0 0 20px #f801}33%{border-color:#ff0;box-shadow:0 0 20px #ff04,inset 0 0 20px #ff01}50%{border-color:#0f0;box-shadow:0 0 20px #0f04,inset 0 0 20px #0f01}66%{border-color:#08f;box-shadow:0 0 20px #08f4,inset 0 0 20px #08f1}83%{border-color:#80f;box-shadow:0 0 20px #80f4,inset 0 0 20px #80f1}to{border-color:red;box-shadow:0 0 20px #f004,inset 0 0 20px #f001}}@keyframes fun-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(.5deg)}75%{transform:rotate(-.5deg)}}body[data-funmode=true] #question{background:linear-gradient(90deg,red,#f80,#ff0,#0c0,#08f,#80f,red);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fun-rainbow-text 3s linear infinite}@keyframes fun-rainbow-text{0%{background-position:0% center}to{background-position:200% center}}body[data-funmode=true] h1{animation:fun-title-bounce 2s ease-in-out infinite}@keyframes fun-title-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.05)}}body[data-funmode=true] #question-label{animation:fun-label-dance 1s ease-in-out infinite}@keyframes fun-label-dance{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-3px) rotate(-2deg)}75%{transform:translate(3px) rotate(2deg)}}body[data-funmode=true] #answer-input{border:2px solid #ff0088;animation:fun-input-glow 2s ease-in-out infinite alternate}@keyframes fun-input-glow{0%{box-shadow:0 0 8px #f08,0 0 16px #f084;border-color:#f08}33%{box-shadow:0 0 8px #0f8,0 0 16px #0f84;border-color:#0f8}66%{box-shadow:0 0 8px #08f,0 0 16px #08f4;border-color:#08f}to{box-shadow:0 0 8px #f80,0 0 16px #f804;border-color:#f80}}body[data-funmode=true] #score{animation:fun-score-pulse 1.5s ease-in-out infinite}@keyframes fun-score-pulse{0%,to{transform:scale(1);text-shadow:0 0 0 transparent}50%{transform:scale(1.15);text-shadow:0 0 12px #22c55e,0 0 24px #22c55e88}}body[data-funmode=true] #submit-button{animation:fun-submit-wobble .5s ease-in-out infinite}@keyframes fun-submit-wobble{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(5deg) scale(1.05)}75%{transform:rotate(-5deg) scale(1.05)}}body[data-funmode=true] #settings-button{animation:fun-settings-spin 3s linear infinite}@keyframes fun-settings-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body[data-funmode=true] #theme-toggle{animation:fun-theme-bounce 1s ease-in-out infinite}@keyframes fun-theme-bounce{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.25) rotate(15deg)}}body[data-funmode=true] #scoresheet{animation:fun-scoresheet-wiggle .8s ease-in-out infinite}@keyframes fun-scoresheet-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}body[data-funmode=true] #feedback div{animation:fun-feedback-pop .5s cubic-bezier(.175,.885,.32,1.275)}@keyframes fun-feedback-pop{0%{transform:scale(0) rotate(-10deg);opacity:0}60%{transform:scale(1.4) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}body[data-funmode=true] .particle{width:12px;height:12px}@keyframes fun-screen-shake{0%,to{transform:translate(0) rotate(0)}10%{transform:translate(-10px,-5px) rotate(-2deg)}20%{transform:translate(10px,5px) rotate(2deg)}30%{transform:translate(-8px,3px) rotate(-1.5deg)}40%{transform:translate(8px,-3px) rotate(1.5deg)}50%{transform:translate(-5px,5px) rotate(-1deg)}60%{transform:translate(5px,-5px) rotate(1deg)}70%{transform:translate(-3px,2px) rotate(-.5deg)}80%{transform:translate(3px,-2px) rotate(.5deg)}90%{transform:translate(-1px,1px) rotate(0)}}body.fun-shake{animation:fun-screen-shake .6s ease-out!important}.fun-confetti{position:fixed;top:-20px;z-index:9998;pointer-events:none;opacity:0;animation:fun-confetti-fall linear forwards}@keyframes fun-confetti-fall{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}75%{opacity:1}to{transform:translateY(105vh) rotate(720deg) scale(.5);opacity:0}}body[data-funmode=true] #next-button{animation:fun-next-hop .6s ease-in-out infinite}@keyframes fun-next-hop{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.typing-particle{position:fixed;width:6px;height:6px;border-radius:50%;pointer-events:none;z-index:9999;animation:typing-particle-burst .5s ease-out forwards}@keyframes typing-particle-burst{0%{opacity:1;transform:translate(0) scale(1.2)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(0)}}@keyframes fun-typing-shake{0%,to{transform:translate(0)}20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,-1px)}80%{transform:translate(1px,1px)}}body.fun-typing-shake{animation:fun-typing-shake .1s ease-out!important}@keyframes fun-typing-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}body[data-funmode=true] #answer-input.fun-typing-pop{animation:fun-typing-pop .2s ease-out!important}
