

      .game-container {
        max-width: 1000px;
        margin: 0 auto;
        padding: 20px;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

      .title-screen {
        text-align: center;
        background: linear-gradient(
          135deg,
          rgba(255, 215, 0, 0.2),
          rgba(255, 140, 0, 0.1)
        );
        border-radius: 20px;
        padding: 3rem;
        backdrop-filter: blur(10px);
        border: 2px solid rgba(255, 215, 0, 0.3);
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
      }

      .main-title {
        font-size: 3rem;
        background: linear-gradient(45deg, #ffd700, #ffa500);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        margin-bottom: 1rem;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
        animation: glow 2s ease-in-out infinite alternate;
      }

      @keyframes glow {
        from {
          filter: brightness(1);
        }
        to {
          filter: brightness(1.2);
        }
      }

      .subtitle {
        font-size: 1.5rem;
        color: #87ceeb;
        margin-bottom: 2rem;
        font-style: italic;
      }

      .instructions {
        background: rgba(255, 255, 255, 0.1);
        border-radius: 15px;
        padding: 2rem;
        margin: 2rem 0;
        text-align: left;
        line-height: 1.8;
        border: 1px solid rgba(255, 255, 255, 0.2);
      }

      .instructions h3 {
        color: #ffd700;
        margin-bottom: 1rem;
        font-size: 1.4rem;
      }

      .level-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1rem;
        margin: 1.5rem 0;
      }

      .level-card {
        background: rgba(255, 215, 0, 0.1);
        border: 2px solid #ffd700;
        border-radius: 10px;
        padding: 1rem;
        text-align: center;
        transition: all 0.3s ease;
      }

      .level-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 5px 20px rgba(255, 215, 0, 0.4);
      }

      .level-number {
        font-size: 1.2rem;
        color: #ffd700;
        font-weight: bold;
      }

      .level-reward {
        font-size: 0.9rem;
        color: #87ceeb;
      }

      .start-btn {
        background: linear-gradient(45deg, #ffd700, #ffa500);
        color: #1a1a2e;
        border: none;
        padding: 20px 50px;
        font-size: 1.4rem;
        font-weight: bold;
        border-radius: 50px;
        cursor: pointer;
        transition: all 0.3s ease;
        margin-top: 2rem;
        box-shadow: 0 6px 20px rgba(255, 215, 0, 0.4);
      }

      .start-btn:hover {
        transform: translateY(-3px) scale(1.05);
        box-shadow: 0 8px 25px rgba(255, 215, 0, 0.6);
      }

      .game-screen {
        display: none;
        text-align: center;
      }

      .question-counter {
        font-size: 1.5rem;
        color: #87ceeb;
        margin-bottom: 1rem;
      }

      .current-reward {
        font-size: 2rem;
        color: #ffd700;
        font-weight: bold;
        margin-bottom: 2rem;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
      }

      .question-box {
        background: rgba(255, 255, 255, 0.1);
        border-radius: 15px;
        padding: 2rem;
        margin: 2rem 0;
        border: 2px solid rgba(135, 206, 235, 0.3);
        backdrop-filter: blur(10px);
      }

      .question-text {
        font-size: 1.4rem;
        line-height: 1.6;
        margin-bottom: 1rem;
        color: #e6e6fa;
      }

      .question-type {
        font-size: 0.9rem;
        color: #87ceeb;
        font-style: italic;
        margin-bottom: 1.5rem;
      }

      .answers-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
        max-width: 600px;
        margin: 0 auto;
      }

      .answer-btn {
        background: rgba(30, 144, 255, 0.2);
        border: 2px solid #1e90ff;
        color: white;
        padding: 15px 20px;
        border-radius: 10px;
        cursor: pointer;
        transition: all 0.3s ease;
        font-size: 1.1rem;
        text-align: left;
      }

      .answer-btn:hover {
        background: rgba(30, 144, 255, 0.4);
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(30, 144, 255, 0.3);
      }

      .answer-btn.selected {
        background: rgba(255, 215, 0, 0.3);
        border-color: #ffd700;
        color: #ffd700;
      }

      .answer-btn.correct {
        background: rgba(34, 139, 34, 0.4);
        border-color: #22c55e;
        color: #22c55e;
      }

      .answer-btn.wrong {
        background: rgba(220, 20, 60, 0.4);
        border-color: #ef4444;
        color: #ef4444;
      }

      .lifelines {
        display: flex;
        justify-content: center;
        gap: 20px;
        margin: 2rem 0;
      }

      .lifeline-btn {
        background: rgba(255, 255, 255, 0.1);
        border: 2px solid #87ceeb;
        color: #87ceeb;
        padding: 10px 20px;
        border-radius: 25px;
        cursor: pointer;
        transition: all 0.3s ease;
        font-size: 0.9rem;
      }

      .lifeline-btn:hover:not(.used) {
        background: rgba(135, 206, 235, 0.2);
        transform: translateY(-2px);
      }

      .lifeline-btn.used {
        opacity: 0.3;
        cursor: not-allowed;
      }

      .confirm-btn {
        background: linear-gradient(45deg, #22c55e, #16a34a);
        color: white;
        border: none;
        padding: 15px 40px;
        font-size: 1.2rem;
        border-radius: 25px;
        cursor: pointer;
        margin: 2rem 10px;
        transition: all 0.3s ease;
      }

      .confirm-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(34, 197, 94, 0.4);
      }

      .back-btn {
        background: linear-gradient(45deg, #6b7280, #4b5563);
        color: white;
        border: none;
        padding: 10px 25px;
        font-size: 1rem;
        border-radius: 20px;
        cursor: pointer;
        margin: 1rem;
        transition: all 0.3s ease;
      }

      .back-btn:hover {
        transform: translateY(-2px);
      }

      .difficulty-btn {
        background: rgba(255, 255, 255, 0.1);
        border: 2px solid rgba(255, 255, 255, 0.3);
        color: white;
        padding: 10px 20px;
        border-radius: 20px;
        cursor: pointer;
        transition: all 0.3s ease;
        font-size: 0.9rem;
        min-width: 100px;
      }

      .difficulty-btn:hover {
        transform: translateY(-2px);
        background: rgba(255, 255, 255, 0.2);
      }

      .difficulty-btn.selected {
        background: linear-gradient(45deg, #ffd700, #ffa500);
        color: #1a1a2e;
        border-color: #ffd700;
        font-weight: bold;
      }

      .stats-screen {
        display: none;
        text-align: center;
      }

      .stats-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 1.5rem;
        margin: 2rem 0;
      }

      .stats-card {
        background: rgba(255, 255, 255, 0.1);
        border-radius: 15px;
        padding: 1.5rem;
        border: 2px solid rgba(135, 206, 235, 0.3);
      }

      .stats-card h4 {
        color: #87ceeb;
        margin-bottom: 1rem;
        font-size: 1.2rem;
      }

      .stats-number {
        font-size: 2rem;
        color: #ffd700;
        font-weight: bold;
        margin: 0.5rem 0;
      }

      .achievement-list {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1rem;
        margin: 1rem 0;
      }

      .achievement-item {
        background: rgba(255, 215, 0, 0.1);
        border: 2px solid #ffd700;
        border-radius: 10px;
        padding: 1rem;
        text-align: center;
      }

      .achievement-icon {
        font-size: 2rem;
        margin-bottom: 0.5rem;
      }

      .results-screen {
        display: none;
        text-align: center;
      }

      .final-score {
        font-size: 3rem;
        color: #ffd700;
        margin: 2rem 0;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
      }

      .achievement {
        background: linear-gradient(
          135deg,
          rgba(255, 215, 0, 0.2),
          rgba(255, 140, 0, 0.1)
        );
        border-radius: 15px;
        padding: 2rem;
        margin: 2rem 0;
        border: 2px solid rgba(255, 215, 0, 0.3);
      }

      .progress-bar {
        background: rgba(255, 255, 255, 0.1);
        border-radius: 10px;
        height: 20px;
        margin: 1rem 0;
        overflow: hidden;
      }

      .progress-fill {
        background: linear-gradient(45deg, #ffd700, #ffa500);
        height: 100%;
        transition: width 0.5s ease;
      }

      /* Enhanced mobile responsiveness */
      @media (max-width: 768px) {
        .main-title {
          font-size: 2rem;
          line-height: 1.2;
        }

        .subtitle {
          font-size: 1.2rem;
        }

        .game-container {
          padding: 10px;
        }

        .title-screen {
          padding: 2rem 1rem;
        }

        .instructions {
          padding: 1.5rem;
          margin: 1rem 0;
        }

        .answers-grid {
          grid-template-columns: 1fr;
          gap: 12px;
        }

        .answer-btn {
          padding: 18px 15px;
          font-size: 1rem;
          min-height: 60px;
          display: flex;
          align-items: center;
          justify-content: flex-start;
          text-align: left;
          /* Better touch targets */
          touch-action: manipulation;
          -webkit-tap-highlight-color: rgba(255, 215, 0, 0.3);
        }

        .answer-btn:active {
          transform: scale(0.98);
        }

        .lifelines {
          flex-wrap: wrap;
          gap: 10px;
        }

        .lifeline-btn {
          min-width: 90px;
          padding: 12px 15px;
          font-size: 0.85rem;
          /* Better touch targets */
          touch-action: manipulation;
        }

        .question-text {
          font-size: 1.2rem;
          line-height: 1.5;
        }

        .question-box {
          padding: 1.5rem;
          margin: 1rem 0;
        }

        .current-reward {
          font-size: 1.5rem;
        }

        .start-btn,
        .confirm-btn {
          padding: 15px 30px;
          font-size: 1.2rem;
          /* Better touch targets */
          min-height: 50px;
          touch-action: manipulation;
        }

        .level-grid {
          grid-template-columns: 1fr;
          gap: 0.8rem;
        }

        .final-score {
          font-size: 2rem;
        }
      }

      @media (max-width: 480px) {
        .main-title {
          font-size: 1.8rem;
        }

        .game-container {
          padding: 5px;
        }

        .title-screen {
          padding: 1.5rem 0.5rem;
        }

        .question-text {
          font-size: 1.1rem;
        }

        .answer-btn {
          padding: 16px 12px;
          font-size: 0.95rem;
          min-height: 55px;
        }

        .instructions {
          padding: 1rem;
        }

        .instructions h3 {
          font-size: 1.2rem;
        }
      }

      /* Touch device optimizations */
      @media (hover: none) and (pointer: coarse) {
        .answer-btn:hover {
          background: rgba(30, 144, 255, 0.2);
          transform: none;
          box-shadow: none;
        }

        .start-btn:hover,
        .confirm-btn:hover {
          transform: none;
        }

        .lifeline-btn:hover:not(.used) {
          background: rgba(255, 255, 255, 0.1);
          transform: none;
        }
      }

      /* High contrast mode support */
      @media (prefers-contrast: high) {
        .answer-btn {
          border-width: 3px;
        }

        .answer-btn:focus {
          outline: 3px solid #ffd700;
          outline-offset: 2px;
        }
      }

      /* Reduced motion preferences */
      @media (prefers-reduced-motion: reduce) {
        * {
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
          transition-duration: 0.01ms !important;
        }

        .progress-fill {
          transition: none;
        }
      }

      /* Screen reader only content */
      .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;
      }

      /* Enhanced focus styles for keyboard navigation */
      .answer-btn:focus-visible,
      .lifeline-btn:focus-visible,
      .start-btn:focus-visible,
      .confirm-btn:focus-visible {
        outline: 3px solid #ffd700;
        outline-offset: 3px;
        box-shadow: 0 0 0 6px rgba(255, 215, 0, 0.2);
      }

