.sentence-template-container{display:flex;flex-direction:column;padding:var(--space-1) var(--space-3);width:100%;max-width:min(720px,100%);margin:0 auto;box-sizing:border-box;flex-shrink:0}@media(min-width:768px)and (max-width:1023px){.sentence-template-container{max-width:90%;padding:var(--space-4)}}@media(min-width:1024px){.sentence-template-container{max-width:min(680px,90%);padding:var(--space-5)}}.field-group{display:flex;flex-direction:column;margin-bottom:8px}.field-group:has(.error-message){margin-bottom:6px!important}.field-group:last-child{margin-bottom:0}@media(min-width:768px){.field-group{margin-bottom:20px}.field-group:has(.error-message){margin-bottom:12px!important}}.field-label{font-family:var(--font-retro);font-size:11px;font-weight:var(--font-weight-bold);line-height:1.3;color:var(--retro-black);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-1)}@media(min-width:768px){.field-label{font-size:12px;margin-bottom:var(--space-2)}}.input-wrapper{position:relative;display:flex;flex-direction:column}.editable-field{display:block;width:100%;background:var(--retro-white);border:3px solid var(--retro-black);border-radius:0;padding:10px 12px;font-family:var(--font-retro);font-size:14px;line-height:1.4;color:var(--retro-black);font-weight:var(--font-weight-normal);text-align:left;cursor:text;transition:border-color var(--transition-instant);box-shadow:none;-webkit-user-select:text;-moz-user-select:text;user-select:text;min-height:40px}.editable-field::-moz-placeholder{color:var(--retro-gray-mid);opacity:1;font-style:italic}.editable-field::placeholder{color:var(--retro-gray-mid);opacity:1;font-style:italic}.editable-field::-webkit-input-placeholder{color:var(--retro-gray-mid);opacity:1}.editable-field::-moz-placeholder{color:var(--retro-gray-mid);opacity:1}.editable-field:hover{border-width:4px;padding:9px 11px}.editable-field:focus{border:4px solid var(--retro-black);padding:9px 11px;outline:none;box-shadow:inset 0 0 0 2px var(--retro-white),inset 0 0 0 4px var(--retro-black)}.editable-field.error{border:3px solid #B22222;background:var(--retro-white)}.editable-field.valid{border:3px solid #228B22;background:var(--retro-white)}.editable-field.error:focus{border:4px solid #B22222;padding:9px 11px;outline:none;box-shadow:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.95}}.editable-field.pulse{animation:pulse 2s ease-in-out;animation-iteration-count:1}@media(prefers-reduced-motion:reduce){.editable-field.pulse,.error-message{animation:none}}.character-counter{font-family:var(--font-retro);font-size:10px;line-height:1.2;color:var(--retro-gray-dark);font-weight:var(--font-weight-normal);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;display:block;text-align:right;margin-top:var(--space-1);margin-right:0}.character-counter.warning{color:var(--retro-gray-dark)}.character-counter.error{color:var(--retro-black);font-weight:var(--font-weight-bold)}.error-message{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-1)!important;margin-bottom:0!important;font-family:var(--font-retro);font-size:10px!important;color:var(--retro-black);animation:error-blink .15s ease-in;white-space:nowrap;line-height:1.2;text-transform:uppercase;letter-spacing:.05em}.error-icon{font-size:10px!important;color:#b22222;flex-shrink:0}.error-text{color:#b22222;font-weight:var(--font-weight-bold);font-size:10px!important}@keyframes error-blink{0%{opacity:0}50%{opacity:1}75%{opacity:.5}to{opacity:1}}@media(min-width:768px){.editable-field{min-height:44px;padding:12px 70px 12px 16px;font-size:15px;border-radius:0}.editable-field:hover{padding:11px 69px 11px 15px}.editable-field:focus{padding:11px 69px 11px 15px}.character-counter{position:absolute;top:50%;right:16px;transform:translateY(-50%);margin-top:0;margin-right:0;font-size:11px}}@media(min-width:1024px){.field-label{font-size:13px}.editable-field{min-height:48px;font-size:16px}}@media(prefers-contrast:high){.editable-field{border-width:4px}.editable-field:focus{box-shadow:inset 0 0 0 3px var(--retro-white),inset 0 0 0 6px var(--retro-black)}}.loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:var(--retro-black);z-index:1000;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease-in-out;will-change:opacity}.loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);padding:var(--space-4)}.loading-spinner{width:48px;height:48px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px}.loading-spinner:before,.loading-spinner:after{content:"";background:var(--retro-white);animation:pixel-pulse 1s step-end infinite}@keyframes pixel-blink{0%,to{opacity:1}50%{opacity:.3}}.loading-spinner{width:auto;height:auto;display:inline-block;font-family:var(--font-retro);font-size:32px;color:var(--retro-white);animation:cursor-blink .8s step-end infinite}.loading-spinner:before{content:"█";display:inline;background:none}.loading-spinner:after{display:none}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;opacity:1}}.loading-status{font-family:var(--font-retro);font-size:16px;font-weight:var(--font-weight-bold);color:var(--retro-white);text-transform:uppercase;letter-spacing:.15em;margin:0;text-align:center}.loading-progress{font-family:var(--font-retro);font-size:12px;font-weight:var(--font-weight-normal);color:var(--retro-gray-light);text-transform:uppercase;letter-spacing:.1em;margin:0}.progress-bar-container{width:100%;max-width:320px;height:16px;background-color:var(--retro-gray-dark);border:3px solid var(--retro-white);border-radius:0;overflow:hidden;margin:var(--space-4) 0}.progress-bar-fill{height:100%;background:var(--retro-white);transform-origin:left center;transform:scaleX(0);transition:transform .2s steps(20);will-change:transform}.loading-estimate{font-family:var(--font-retro);font-size:11px;font-weight:var(--font-weight-normal);color:var(--retro-gray-light);text-transform:uppercase;letter-spacing:.1em;margin:var(--space-2) 0}.loading-completed{font-family:var(--font-retro);font-size:12px;font-weight:var(--font-weight-bold);color:var(--retro-white);text-transform:uppercase;letter-spacing:.1em;margin:var(--space-2) 0;animation:text-appear .1s step-end}@keyframes text-appear{0%{opacity:0}to{opacity:1}}.loading-elapsed{font-family:var(--font-retro);font-size:11px;font-weight:var(--font-weight-normal);color:var(--retro-gray-mid);text-transform:uppercase;letter-spacing:.1em;margin:var(--space-1) 0}@media(prefers-reduced-motion:reduce){.progress-bar-fill{transition:none}.loading-completed{animation:none}}.timeout-warning{font-family:var(--font-retro);margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);background-color:var(--retro-gray-dark);border:3px solid var(--retro-white);border-radius:0;text-align:center;animation:warning-blink .5s step-end 3}.timeout-warning p{margin:0;padding:var(--space-1) 0;font-size:12px;font-weight:var(--font-weight-bold);color:var(--retro-white);text-transform:uppercase;letter-spacing:.1em;line-height:1.4}.timeout-warning .timeout-hint{font-size:11px;font-weight:var(--font-weight-normal);color:var(--retro-gray-light);margin-top:var(--space-1)}@keyframes warning-blink{0%,to{border-color:var(--retro-white)}50%{border-color:var(--retro-gray-mid)}}@media(prefers-reduced-motion:reduce){.timeout-warning{animation:none}}.partial-failure-messages{margin:var(--space-3) 0;padding:0;max-width:320px;width:100%}.partial-failure-message{font-family:var(--font-retro);font-size:11px;font-weight:var(--font-weight-normal);color:var(--retro-black);background-color:var(--retro-white);border:2px solid var(--retro-black);padding:var(--space-2) var(--space-3);margin:var(--space-1) 0;border-radius:0;text-align:center;text-transform:uppercase;letter-spacing:.05em;line-height:1.4;animation:text-appear .1s step-end}@media(prefers-reduced-motion:reduce){.partial-failure-message{animation:none}}@media(orientation:landscape){.loading-overlay{padding:var(--space-4)}.loading-content{max-width:90vw;max-height:90vh}.loading-status{font-size:14px}.progress-bar-container{max-width:280px}}body.iframe-focused{outline:3px solid var(--retro-black);outline-offset:-3px}.fullscreen-button{position:fixed;top:10px;right:10px;z-index:1000;padding:8px 12px;background:var(--retro-white);color:var(--retro-black);border:3px solid var(--retro-black);border-radius:0;cursor:pointer;font-family:var(--font-retro);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:6px;min-height:36px;box-shadow:inset -2px -2px 0 var(--retro-gray-mid),inset 2px 2px 0 var(--retro-white)}.fullscreen-button:hover{background:var(--retro-gray-light)}.fullscreen-button:active{box-shadow:inset 2px 2px 0 var(--retro-gray-mid),inset -2px -2px 0 var(--retro-white)}.fullscreen-button:focus-visible{outline:3px solid var(--retro-black);outline-offset:2px}.fullscreen-button svg{width:16px;height:16px}body:fullscreen .fullscreen-button,body:-webkit-full-screen .fullscreen-button,body:-ms-fullscreen .fullscreen-button{display:none}.fullscreen-error{position:fixed;top:50px;right:10px;z-index:1001;padding:8px 12px;background:var(--retro-white);color:var(--retro-black);border:3px solid var(--retro-black);border-radius:0;font-family:var(--font-retro);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em}.iframe-constrained{font-size:clamp(14px,2vw,16px)}.iframe-constrained .game-canvas{max-width:100%;max-height:calc(100vh - 200px)}@keyframes skeleton-blink{0%,50%{opacity:1}51%,to{opacity:.4}}.skeleton-element,.skeleton-heading,.skeleton-field,.skeleton-button{background:var(--retro-gray-light);border:2px solid var(--retro-gray-mid);animation:skeleton-blink .8s step-end infinite;border-radius:0}.app-skeleton{max-width:48rem;margin:0 auto;padding:1rem;box-sizing:border-box}.skeleton-heading{height:2.5rem;margin-bottom:2rem;max-width:80%;margin-left:auto;margin-right:auto}.skeleton-field{height:3rem;margin-bottom:1rem}.skeleton-buttons{display:flex;gap:1rem;margin-top:1.5rem;justify-content:center}.skeleton-button{height:3rem;flex:1;max-width:200px}.app-skeleton .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skeleton-slow-indicator{text-align:center;margin-top:1.5rem;opacity:0;animation:fadeInIndicator .1s step-end forwards}@keyframes fadeInIndicator{0%{opacity:0}to{opacity:1}}.skeleton-loading-text{font-family:var(--font-retro);font-size:.875rem;color:var(--retro-gray-dark);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em}@media(max-width:767px){.app-skeleton{padding:.5rem}.skeleton-heading{height:1.5rem;margin-bottom:1rem}.skeleton-field{height:2.5rem;margin-bottom:.75rem}.skeleton-buttons{flex-direction:column;gap:.5rem}.skeleton-button{max-width:100%;height:2.5rem}}@media(min-width:768px)and (max-width:1023px){.skeleton-heading{height:2rem;margin-bottom:1.5rem}}@media(min-width:1024px){.skeleton-heading{height:2.75rem;margin-bottom:2.5rem}}@media(prefers-reduced-motion:reduce){.skeleton-element,.skeleton-heading,.skeleton-field,.skeleton-button{animation:none;background:var(--retro-gray-light)}.skeleton-slow-indicator{animation:none;opacity:1}}@media(prefers-contrast:high){.skeleton-element,.skeleton-heading,.skeleton-field,.skeleton-button{background:var(--retro-gray-light);border:3px solid var(--retro-black)}}.app-container{width:100%;height:100%;box-sizing:border-box;padding:0 12px;margin:0;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;background-color:var(--retro-white);animation:appFadeIn .3s ease-out}@keyframes appFadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.app-container{animation:none}}@media(min-width:768px){.app-container{padding:0 16px}}.main-heading{font-size:32px;font-weight:600;font-family:var(--font-retro);color:var(--retro-black);text-align:center;margin:24px 0 32px;line-height:1.2;letter-spacing:0;text-transform:uppercase;flex-shrink:0}@media(max-width:767px){.main-heading{font-size:20px;margin:8px 0 12px;line-height:1.1}}@media(min-width:1024px){.main-heading{font-size:36px;margin:32px 0 40px}}.button-row{display:flex;gap:8px;justify-content:center;margin-top:4px;flex-shrink:0}@media(min-width:768px){.button-row{gap:16px;margin-top:16px}}.try-random-button{background:var(--retro-white);color:var(--retro-black);border:3px solid var(--retro-black);border-radius:0;padding:12px 24px;font-family:var(--font-retro);font-size:13px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:none;min-width:140px;min-height:44px;box-shadow:inset -2px -2px 0 var(--retro-gray-mid),inset 2px 2px 0 var(--retro-white)}.try-random-button:hover{background:var(--retro-gray-light)}.try-random-button:active{box-shadow:inset 2px 2px 0 var(--retro-gray-mid),inset -2px -2px 0 var(--retro-white);padding:13px 23px 11px 25px}.try-random-button:focus{outline:3px solid var(--retro-black);outline-offset:2px}.generate-button{background:var(--retro-black);color:var(--retro-white);border:3px solid var(--retro-black);border-radius:0;padding:12px 28px;font-family:var(--font-retro);font-size:13px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:none;min-height:44px;min-width:160px;box-shadow:inset -2px -2px 0 var(--retro-gray-dark),inset 2px 2px 0 var(--retro-gray-mid)}.generate-button:hover:not(:disabled){background:var(--retro-gray-dark)}.generate-button:active:not(:disabled){box-shadow:inset 2px 2px 0 var(--retro-gray-dark),inset -2px -2px 0 var(--retro-gray-mid);padding:13px 27px 11px 29px}.generate-button:focus{outline:3px solid var(--retro-white);outline-offset:2px}.generate-button:disabled{background:var(--retro-gray-light);border-color:var(--retro-gray-mid);color:var(--retro-gray-dark);cursor:not-allowed;box-shadow:none;opacity:1}@media(prefers-reduced-motion:reduce){.generate-button,.try-random-button{transition:none}}@media(prefers-contrast:high){.generate-button,.try-random-button{border-width:4px}.generate-button:focus,.try-random-button:focus{outline-width:4px}}@media(max-width:767px){.button-row{flex-direction:column;gap:var(--space-2);width:100%}.try-random-button,.generate-button{width:100%;min-width:140px;min-height:40px;font-size:12px;padding:10px 16px}.try-random-button:active{padding:11px 15px 9px 17px}.generate-button:active:not(:disabled){padding:11px 15px 9px 17px}}@media(min-width:1024px){.try-random-button,.generate-button{font-size:14px;padding:14px 32px;min-height:48px}.try-random-button:active{padding:15px 31px 13px 33px}.generate-button:active:not(:disabled){padding:15px 31px 13px 33px}}.game-wrapper{transition:opacity .3s ease;will-change:opacity;min-height:480px;content-visibility:auto;contain-intrinsic-size:320px 480px}.game-hidden{opacity:0;pointer-events:none}.game-visible{opacity:1;pointer-events:auto}.game-canvas,.game-wrapper canvas{width:320px;height:480px;aspect-ratio:2/3}.loading-status,.error-message-text{min-height:1.5rem}.loading-overlay{will-change:opacity}.back-button{background:var(--retro-white);color:var(--retro-black);border:3px solid var(--retro-black);border-radius:0;font-family:var(--font-retro);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;min-width:44px;min-height:44px;padding:8px 16px;cursor:pointer;transition:none;box-shadow:inset -2px -2px 0 var(--retro-gray-mid),inset 2px 2px 0 var(--retro-white)}.back-button:hover{background:var(--retro-gray-light)}.back-button:active{box-shadow:inset 2px 2px 0 var(--retro-gray-mid),inset -2px -2px 0 var(--retro-white)}.back-button:focus{outline:3px solid var(--retro-black);outline-offset:2px}@media(min-width:1024px){.back-button{min-width:36px;min-height:36px;padding:6px 12px}}:root{--orientation-transition: all .3s ease-out}.app-container,.sentence-template-container,.main-heading{transition:var(--orientation-transition)}@media(prefers-reduced-motion:reduce){:root{--orientation-transition: none}}@media(orientation:portrait){.app-container{flex-direction:column}}@media(orientation:landscape)and (hover:none){.app-container{flex-direction:row;padding:8px}.main-heading{display:none}.game-wrapper{flex:1;display:flex;justify-content:center;align-items:center;min-height:auto}}@media(orientation:landscape)and (max-width:767px)and (hover:none){.sentence-template-container{width:280px;flex-shrink:0;padding:8px;overflow-y:auto;max-height:100vh;font-size:14px}.sentence-template-container .field-input{padding:8px 12px;font-size:14px}.button-row{flex-direction:column;gap:4px}.try-random-button,.generate-button{padding:8px 16px;font-size:13px;min-height:36px}}@media(orientation:landscape)and (min-width:768px)and (max-width:1024px)and (hover:none){.sentence-template-container{width:320px;flex-shrink:0;padding:16px;overflow-y:auto;max-height:100vh}.main-heading{display:block;font-size:18px;margin:8px 0 16px}.button-row{flex-direction:column}}@keyframes errorAppear{0%{opacity:0}to{opacity:1}}.error-boundary-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--retro-black);padding:var(--space-4);font-family:var(--font-retro)}.error-ui-container{animation:errorAppear .1s step-end forwards;will-change:opacity}.error-boundary-content{max-width:480px;width:100%;background-color:var(--retro-white);border:4px solid var(--retro-black);border-radius:0;padding:var(--space-6) var(--space-5);text-align:center;box-shadow:8px 8px 0 var(--retro-black)}.error-heading{font-family:var(--font-retro);font-size:24px;font-weight:var(--font-weight-bold);color:var(--retro-black);text-transform:uppercase;letter-spacing:.1em;margin:0 0 var(--space-4) 0;line-height:1.2}.error-heading:before{content:"⚠ ";font-size:20px}.error-message{font-family:var(--font-retro);font-size:14px;font-weight:var(--font-weight-normal);color:var(--retro-black);margin:0 0 var(--space-5) 0;line-height:1.6;text-transform:none}.refresh-button{min-width:160px;min-height:44px;padding:var(--space-3) var(--space-5);font-family:var(--font-retro);font-size:13px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;color:var(--retro-white);background-color:var(--retro-black);border:3px solid var(--retro-black);border-radius:0;cursor:pointer;transition:none;box-shadow:inset -2px -2px 0 var(--retro-gray-dark),inset 2px 2px 0 var(--retro-gray-mid)}.refresh-button:hover{background-color:var(--retro-gray-dark)}.refresh-button:focus{outline:3px solid var(--retro-black);outline-offset:4px}.refresh-button:active{box-shadow:inset 2px 2px 0 var(--retro-gray-dark),inset -2px -2px 0 var(--retro-gray-mid)}.error-details{margin-top:var(--space-5);text-align:left;background-color:var(--retro-white);border:3px solid var(--retro-black);border-radius:0;padding:var(--space-3)}.error-details summary{cursor:pointer;font-family:var(--font-retro);font-weight:var(--font-weight-bold);font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--retro-black);margin-bottom:var(--space-2)}.error-details summary:focus{outline:3px solid var(--retro-black);outline-offset:2px}.error-details pre{font-family:var(--font-retro);font-size:11px;color:var(--retro-black);background-color:var(--retro-gray-light);border:2px solid var(--retro-black);padding:var(--space-3);border-radius:0;overflow-x:auto;margin:var(--space-2) 0;white-space:pre-wrap;word-wrap:break-word}@media(max-width:767px){.error-boundary-content{padding:var(--space-5) var(--space-4);box-shadow:6px 6px 0 var(--retro-black)}.error-heading{font-size:18px}.error-heading:before{font-size:16px}.error-message{font-size:13px}.refresh-button{width:100%;font-size:12px}}@media(min-width:768px)and (max-width:1023px){.error-boundary-content{padding:var(--space-6) var(--space-5)}.error-heading{font-size:22px}}@media(prefers-contrast:high){.error-boundary-content{border-width:6px}.refresh-button{border-width:4px}}@media(prefers-reduced-motion:reduce){.refresh-button{transition:none}.error-ui-container{animation:none;opacity:1}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-4{bottom:1rem}.left-4{left:1rem}.right-4{right:1rem}.top-4{top:1rem}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.block{display:block}.flex{display:flex}.hidden{display:none}.h-6{height:1.5rem}.min-h-screen{min-height:100vh}.w-6{width:1.5rem}.max-w-3xl{max-width:48rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.touch-none{touch-action:none}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-white\/10{background-color:#ffffff1a}.p-3{padding:.75rem}.font-semibold{font-weight:600}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--retro-black: #000000;--retro-white: #FFFFFF;--retro-gray-light: #C0C0C0;--retro-gray-mid: #808080;--retro-gray-dark: #404040;--font-weight-normal: 400;--font-weight-bold: 700;--border-thin: 2px solid var(--retro-black);--border-chunky: 3px solid var(--retro-black);--border-thick: 4px solid var(--retro-black);--border-3d-light: var(--retro-white);--border-3d-dark: var(--retro-gray-mid);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--transition-instant: 50ms;--transition-fast: .1s;--white: var(--retro-white);--very-light-gray: var(--retro-white);--light-gray: var(--retro-gray-light);--medium-gray: var(--retro-gray-light);--medium-dark-gray: var(--retro-gray-dark);--darker-gray: var(--retro-gray-dark);--dark-gray: var(--retro-black);--very-dark-gray: var(--retro-black);--border-retro: var(--border-chunky);--font-retro: "Courier New", "Consolas", "Monaco", "Liberation Mono", monospace}body{font-family:var(--font-retro);font-weight:var(--font-weight-normal);-webkit-font-smoothing:none;-moz-osx-font-smoothing:auto;margin:0;width:100%;height:100vh;height:100dvh;overflow:hidden;position:fixed;background-color:var(--retro-white);color:var(--retro-black);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}@media(min-resolution:192dpi){body{-webkit-font-smoothing:antialiased}}html{width:100%;height:100%;overflow:hidden;box-sizing:border-box}#root{width:100%;height:100%;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}canvas{-webkit-user-select:none;-moz-user-select:none;user-select:none}canvas,button{-webkit-tap-highlight-color:transparent}#root{overscroll-behavior:none}canvas{touch-action:none;display:block}input,select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}button,input,a,[role=button]{touch-action:manipulation}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.hover\:bg-white\/20:hover{background-color:#fff3}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-white\/50:focus{--tw-ring-color: rgb(255 255 255 / .5)}
