html,
   body {
       margin: 0;
       padding: 0;
       width: 100%;
       height: 100%;
       background: #090b10;
       overflow: hidden;
       font-family: Arial, Helvetica, sans-serif;
       touch-action: manipulation;
   }

   #game-container {
       position: relative;
       width: 100vw;
       height: 100vh;
       overflow: hidden;
       background:
           radial-gradient(circle at center, rgba(60, 100, 255, 0.08), transparent 55%),
           radial-gradient(circle at 50% 30%, rgba(255, 230, 120, 0.05), transparent 35%),
           #090b10;
   }

   #answer-ui {
       position: absolute;
       left: 50%;
       bottom: max(14px, env(safe-area-inset-bottom));
       transform: translateX(-50%);
       display: none;
       gap: 8px;
       z-index: 40;
       width: min(94vw, 520px);
   }

   #answer-input {
       flex: 1;
       min-width: 0;
       padding: 14px 14px;
       font-size: 18px;
       border-radius: 14px;
       border: 2px solid #5e79e4;
       outline: none;
       background: rgba(245, 247, 255, 0.97);
       color: #111;
       box-shadow: 0 0 18px rgba(122, 160, 255, 0.18);
   }

   #submit-btn {
       padding: 14px 16px;
       font-size: 17px;
       font-weight: 700;
       border: none;
       border-radius: 14px;
       background: linear-gradient(180deg, #ffe36c, #ffc933);
       color: #111;
       cursor: pointer;
       box-shadow: 0 0 18px rgba(255, 221, 99, 0.22);
       min-width: 96px;
   }

   #submit-btn:active {
       transform: translateY(1px);
   }

   .crt-overlay {
       pointer-events: none;
       position: absolute;
       inset: 0;
       z-index: 30;
       background:
           repeating-linear-gradient(to bottom,
               rgba(255, 255, 255, 0.06) 0px,
               rgba(255, 255, 255, 0.06) 1px,
               rgba(0, 0, 0, 0.0) 2px,
               rgba(0, 0, 0, 0.0) 4px),
           radial-gradient(ellipse at center,
               rgba(255, 255, 255, 0.06) 0%,
               rgba(255, 255, 255, 0.02) 35%,
               rgba(0, 0, 0, 0.18) 75%,
               rgba(0, 0, 0, 0.38) 100%);
       opacity: 0.55;
       mix-blend-mode: screen;
   }

   .crt-overlay::after {
       content: "";
       position: absolute;
       inset: 0;
       background:
           linear-gradient(90deg,
               rgba(255, 0, 80, 0.02),
               rgba(0, 255, 255, 0.02),
               rgba(255, 255, 255, 0.01));
       animation: crt-flicker 0.18s infinite alternate;
   }

   @keyframes crt-flicker {
       from {
           opacity: 0.94;
       }

       to {
           opacity: 1;
       }
   }

