/* SCENE2-1~2-3 화면 배치 조정 v0.35.9-3 */
    /* SCENE2-1: 선택 자음 카드는 조금 작게, 선택 자음은 조금 크게 표시 */
    .scene21-target-card {
      width: min(82%, 275px);
      height: min(72%, 285px);
      min-height: 130px;
    }

    .scene21-target-letter {
      font-size: clamp(96px, 12.4vw, 190px);
    }

    /* SCENE2-1 v0.35.9-4: 오른쪽 선택자음 영역의 전체 높이를 타깃 자음 카드와 동일하게 맞춤 */
    .scene21-choice-grid {
      height: min(72%, 285px);
      min-height: 130px;
    }

    /* SCENE2-2: 단계 안내 영역을 제거하고 실제 게임 진행 영역을 확대 */
    .scene22-layer-hud {
      grid-template-columns: 1fr;
      padding: 10px 18px 0;
    }

    .scene22-stage-badge,
    .scene22-hud-spacer {
      display: none;
    }

    .scene22-instruction {
      grid-column: 1;
      justify-self: center;
    }

    .scene22-layer-lane {
      inset: 13.5% 2.5% 24.5% 2.5%;
    }

    /* SCENE2-3: 게임 영역을 위·아래 각각 1cm 확장 */
    .scene2-subscene-shell.scene23-expanded {
      inset: calc(23.2% - 1cm) 6.5% calc(16.2% - 1cm) 6.5%;
    }

    /* SCENE2-7: 독립 검수본의 기능·디자인을 유지하면서 공통 UI 안에 맞춘 통합 전용 배치 */
    .scene2-subscene-shell.scene27-integrated {
      inset: 22.8% 3.2% 14.8% 3.2%;
    }

    .scene2-subscene-shell.scene27-integrated .scene2-activity-stage {
      border-width: 3px;
      border-radius: 26px;
    }

    .scene27-integrated .scene27-play-screen {
      grid-template-columns: minmax(190px, 31fr) minmax(0, 69fr);
      gap: 1.5%;
      padding: 6% 1.8% 1.5%;
    }

    .scene27-integrated .scene27-learning-area {
      grid-template-rows: auto minmax(56px, 1fr) auto auto;
      gap: clamp(4px, 0.65vh, 8px);
      padding: clamp(7px, 0.9vw, 12px);
    }

    .scene27-integrated .scene27-current-item,
    .scene27-integrated .scene27-drop-target,
    .scene27-integrated .scene27-progress {
      min-height: clamp(54px, 8vh, 72px);
      border-radius: 14px;
    }

    .scene27-integrated .scene27-inventory-wrap,
    .scene27-integrated .scene27-consonant-wrap {
      padding: 0.3em 0.5em;
      border-radius: 13px;
    }

    .scene27-integrated .scene27-inventory-wrap {
      position: relative;
      z-index: 1;
    }

    .scene27-integrated .scene27-consonant-wrap {
      position: relative;
      z-index: 3;
    }

    .scene27-integrated .scene27-consonant-wrap h3 {
      position: relative;
      z-index: 4;
    }

    .scene27-integrated .scene27-consonant {
      min-height: clamp(30px, 4.4vh, 44px);
      border-radius: 11px;
    }

    .scene27-integrated .scene27-listen,
    .scene27-integrated .scene27-complete button {
      min-height: 36px;
      padding-block: 0.38em;
    }

    /* SCENE2-3: 제목을 위로 이동하고 풍선 및 보상 영역을 확대 */
    .scene23-title {
      top: 0.2%;
    }

    .scene23-stage-text {
      top: 7.2%;
    }

    .scene23-layer-balloons {
      top: 10.2%;
      bottom: 23.5%;
    }

    .scene23-layer-status {
      bottom: 6.8%;
      height: 21.5%;
      padding: 0 2.6%;
    }

    .scene23-reward-track {
      height: 84%;
      padding: clamp(10px, 1.05vw, 16px) clamp(14px, 1.35vw, 20px);
    }

    @media (max-width: 820px), (max-height: 520px) {
      .scene21-target-card {
        width: 84%;
        height: 72%;
        min-height: 104px;
      }

      .scene21-target-letter {
        font-size: clamp(58px, 13vw, 108px);
      }

      .scene21-choice-grid {
        height: 72%;
        min-height: 104px;
      }

      .scene22-layer-hud {
        grid-template-columns: 1fr;
        padding: 6px 8px 0;
      }

      .scene22-layer-lane {
        inset: 13.5% 1.5% 25.5% 1.5%;
      }

      .scene2-subscene-shell.scene23-expanded {
        inset: calc(22.8% - 1cm) 5.2% calc(17.6% - 1cm) 5.2%;
      }

      .scene23-title {
        top: 0;
      }

      .scene23-stage-text {
        top: 7%;
      }

      .scene23-layer-balloons {
        top: 10.5%;
        bottom: 25%;
      }

      .scene23-layer-status {
        bottom: 7.2%;
        height: 20.5%;
        padding: 0 1.8%;
      }

      .scene23-reward-track {
        height: 82%;
        padding: 7px 10px;
      }
    }

    @media (max-width: 1500px), (max-height: 900px) {
      .scene27-integrated .scene27-selection-help {
        display: none;
      }
    }

    @media (max-aspect-ratio: 4/3) {
      .scene2-subscene-shell.scene27-integrated {
        inset: 22.8% 3.5% 16.2% 3.5%;
      }

      .scene27-integrated .scene27-play-screen {
        grid-template-columns: minmax(170px, 30fr) minmax(0, 70fr);
        padding: 5.5% 1.4% 1.3%;
      }

      .scene27-integrated .scene27-inventory {
        grid-template-columns: repeat(10, minmax(26px, 1fr));
      }
    }
