@media (max-width: 900px) {
  body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .site-header { padding-left: 20px; padding-right: 20px; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .site-header .brand { flex: 0 0 auto; min-width: 0; }
  .site-header .brand-mark { display: block; flex: 0 0 36px; width: 36px; height: 36px; object-fit: cover; border-radius: 10px; }
  .main-nav { display: grid; grid-template-columns: repeat(5,1fr); gap: 0; position: fixed; left: 0; right: 0; bottom: 0; z-index: 45; width: 100%; height: calc(64px + env(safe-area-inset-bottom)); padding: 0 6px env(safe-area-inset-bottom); border-top: 1px solid var(--line); background: rgba(255,255,255,.97); box-shadow: 0 -8px 30px rgba(20,42,35,.08); backdrop-filter: blur(14px); }
  .main-nav a { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 8px 3px; color: var(--muted); font-size: 11px; text-align: center; }
  .main-nav a.active { color: var(--green); background: #f0f7f4; border-radius: 12px; margin: 7px 2px; padding: 0 3px; }
  .main-nav a.active:after { display: none; }
  .modal-backdrop { z-index: 60; align-items: flex-end; padding: 0; }
  .onboarding-backdrop { z-index: 70; align-items: flex-end; padding: 0; }
  .lesson-modal,.onboarding { width: 100%; max-width: none; max-height: calc(94dvh - env(safe-area-inset-top)); padding-bottom: calc(25px + env(safe-area-inset-bottom)); border-radius: 22px 22px 0 0; }
  .lesson-modal { display: flex; flex-direction: column; height: calc(94dvh - env(safe-area-inset-top)); overflow: hidden; padding-top: 32px; }
  .lesson-modal .modal-progress,.lesson-modal .modal-kicker,.lesson-modal h2,.lesson-modal .listen-button,.lesson-modal .feedback { flex: 0 0 auto; }
  .lesson-modal .answer-options { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; margin: 18px -8px 12px 0; padding: 2px 8px 12px 0; scrollbar-width: thin; }
  .lesson-modal .modal-next { position: relative; z-index: 2; flex: 0 0 auto; width: 100%; margin-top: 8px; box-shadow: 0 -12px 24px rgba(255,255,255,.92); }
  .chapter-lessons { grid-template-columns: repeat(2,1fr); }
  .lesson-card { min-height: 220px; }
  footer { margin-bottom: 0; }
  .install-button { min-height: 38px; padding: 0 12px; border: 1px solid var(--green); border-radius: 10px; background: #f1f8f5; color: var(--green); font-size: 11px; font-weight: 750; }
}
@media (max-width: 600px) {
  .hero { min-height: auto; padding-top: 52px; padding-bottom: 42px; }
  .hero-card-wrap { min-height: 410px; }
  .page-hero { padding-top: 48px; }
  .course-section { padding-top: 55px; padding-bottom: 75px; }
  .chapter-lessons { grid-template-columns: 1fr; }
  .lesson-card { min-height: 205px; padding: 22px; }
  .lesson-modal h2 { font-size: 26px; }
  .lesson-modal { height: calc(96dvh - env(safe-area-inset-top)); max-height: calc(96dvh - env(safe-area-inset-top)); padding: 28px 20px calc(16px + env(safe-area-inset-bottom)); border-radius: 18px 18px 0 0; }
  .lesson-modal .modal-progress { margin-bottom: 22px; }
  .lesson-modal h2 { margin-bottom: 12px; line-height: 1.16; }
  .matching-board { max-height: 52vh; overflow-y: auto; }
  .header-actions { gap: 5px; }
  .profile-button { width: 36px; height: 36px; }
  .site-header .brand { font-size: 20px; }
  .site-header .brand > span { display: none; }
  .site-header { display: flex; height: 68px; padding-left: 14px; padding-right: 14px; }
  .site-header .brand { position: relative; z-index: 4; display: flex; }
  .site-header .brand-mark { display: block !important; width: 36px; height: 36px; }
  .site-header .header-actions { margin-left: auto; }
  .site-header .language-picker { position: absolute; left: 50%; top: 50%; z-index: 3; flex: 0 0 auto; transform: translate(-50%,-50%); pointer-events: auto; touch-action: manipulation; }
  .site-header .language-picker button { min-width: 44px; height: 34px; padding: 0 12px; touch-action: manipulation; }
  .site-header .profile-button { display: none; }
}
@media (display-mode: standalone) {
  .site-header { padding-top: env(safe-area-inset-top); height: calc(82px + env(safe-area-inset-top)); }
  body { padding-top: calc(82px + env(safe-area-inset-top)); }
}
