/* platform_default.css — 비-iOS(안드로이드/웹) 전용 분기
 *
 * [2026-09-08 3단계] layout.css / contents.css 를 iOS 와 이중으로 복제해 온
 * 41KB 를 하나로 합치고, 실제로 갈리는 12개 선언만 이 파일과 platform_ios.css
 * 로 뽑았다. 복제 시절에는 한쪽만 고치는 드리프트가 실제로 발생했다
 * (캘린더 '월' 겹침이 iOS 에만 수정돼 안드로이드는 방치됐던 건 — 큐 H).
 *
 * headerConfig.php 가 is_os 쿠키를 보고 이 파일 또는 platform_ios.css 중
 * 하나만 로드한다. 공통 파일 뒤에 로드되므로 같은 선택자·같은 우선순위면
 * 이쪽이 이긴다.
 *
 * 새 분기를 추가할 때는 반드시 두 파일 모두에 대응 규칙을 넣을 것. */

/* [2026-09-30] 큐 AR(O-31) — 노치 안전장치.
   iOS 앱이 is_os 쿠키를 잃으면(세션 쿠키 — 웹 프로세스 재시작 등) 이 파일로 그려지는데,
   이 파일은 상태바 오프셋이 없어 헤더가 상태바(노치) 밑으로 올라갔다(12 mini 실측 2026-09-30).
   세이프에어리어 상단 값만큼 헤더·본문을 내린다. Android 앱은 상태바만큼 앱이 패딩을 줘
   웹뷰가 상태바 아래에서 시작하고(BaseActivity.applyLikeFitsSystemWindows), PC·모바일 브라우저 탭도
   값이 0 이라 계산 결과가 종전과 같다. 쿠키가 있는 iOS 앱은 platform_ios.css 를 쓰므로 무관.
   (common.css 의 @supports (padding-top: constant(...)) 블록은 iOS 11.2+ 에서 거짓이라 한 번도 적용되지 않았다.)
   @supports 로 감싼 이유(코드 리뷰): env() 를 모르는 엔진(WebView/Chrome 68 이하·Safari 11.0 이하)에선
   var(--safe-top) 이 계산 시점에 무효가 되어 속성이 0 으로 떨어진다(종전 65px 로 돌아가지 않음).
   그런 엔진에선 이 블록 전체를 건너뛰어 아래 종전 규칙이 그대로 쓰이게 한다. */

/* ── layout ── */
header { position: fixed; }
header.head-logo { padding: 35px 20px 40px; }

/* ── contents ── */
section { height: calc(100% - 50px); }

body[data-location="qr-make"] > .wrap { padding-top: unset; }
body[data-location="qr-make"] section { padding-top: 65px; }

body[data-location*="member"] section { padding-bottom: unset; height: 100%; position: relative; }

body[data-location="program-detail"] > .wrap { padding-top: unset; }

body[data-location="member-login"] > .wrap,
body[data-location="member-joinSuccess"] > .wrap {
  background-color: var(--colorMain);
  padding-top: unset;
}

/* 큐 AR — 노치 안전장치(설명은 파일 위쪽). 같은 선택자의 종전 규칙보다 뒤에 있어야 이긴다 → 파일 끝. */
@supports (padding-top: env(safe-area-inset-top)) {
  :root { --safe-top: env(safe-area-inset-top, 0px); }
  header { padding-top: var(--safe-top); }
  header.head-logo { padding: calc(35px + var(--safe-top)) 20px 40px; }
  body > .wrap { padding-top: calc(65px + var(--safe-top)); }
  body[data-location="qr-make"] section { padding-top: calc(65px + var(--safe-top)); }
}
