/* nyw-touchpoints.css — 상담 접점(우측 세로바 · 하단 고정 상담바)
 *
 * 치수는 px 로 고정한다. 이 지면의 html font-size 는 clamp(9px,.52vw,10px)라
 * 1rem 이 9px 이고, rem 으로 쓰면 라벨이 6~7px 로 렌더돼 두 줄로 터진다.
 *
 * 색은 헤더 CTA(.nyw-hd__cta background:var(--nyw-ink)=#0a0a0a)와 같은 톤이다.
 * 이 계보의 border-radius 는 2·4·6px 뿐이라 각진 형태를 유지한다.
 * 칸마다 테두리를 두르지 않는다 — 하나의 덩어리로 묶고 안쪽만 옅은 구분선으로 나눈다.
 */

/* ── ① 우측 세로 퀵바 (≥1101px) ───────────────────────────
 * ★2026-09-04 병원 요청(이영은 팀장 18:13 「7. pc버전 옆에 상담버튼을 에디션처럼」).
 *   에디션 구현(edition-ps-v2 client/src/components/FloatingButtons.tsx)에서 가져온 형태 —
 *     · 한 덩어리 패널이 아니라 «칸마다 떨어진 원형 버튼» (54px, 간격 5px)
 *     · 흰 반투명 바탕 + backdrop-blur + 옅은 테두리 + 아래로 퍼지는 그림자
 *     · 아이콘 위 · 라벨(9~10px) 아래
 *     · hover 에 scale(1.1) 과 그림자 강화
 *   ⛔색까지 베끼지는 않는다 — 에디션의 primary(주황)는 그 병원 색이다.
 *     이 계보는 무채색이라 흰 바탕에 검은 아이콘으로 옮긴다.
 *   ★채널 버튼만 브랜드 색을 쓴다(카카오 #FEE500) — 에디션도 채널은 브랜드 색을 쓴다.
 *     이것은 우리가 고른 색이 아니라 그 채널의 색이라 근거가 선다. */
/* ⛔세로 가운데(top:50%)로 두면 화면이 낮아질수록 아래 끝이 AI 상담 버튼 쪽으로
   «내려온다». 1440x780 실측에서 3px 겹쳤다.
   아래 고정 UI 위에 기준선을 두면 화면 높이와 무관하게 같은 여백이 남는다.
     하단 상담바 65 + AI 버튼 56 + 여유 29 = 150
   1512x982 에서 기존 T153~B830 -> 신 T155~B832 로 «2px» 차이라 보이는 자리는 그대로다. */
:root{
  /* ⛔하단 상담바 «실제 높이». 세로바·AI 상담 버튼·body 여백이 전부 이 값에 매달려 있다.
     2026-09-14 — 개인정보 고지(법 §15)를 상시 노출로 바꾸면서 바가 65px -> 86px 로 늘었고,
     그때 AI 버튼이 바와 8px 겹쳤다(실측 T848~B904 vs 바 T896).
     ★값을 세 곳에 흩어 적으면 다음에 또 어긋난다 — 여기 한 곳만 고친다.
     ⛔nyw-ai-chat.css 의 .acw-launcher-wrap 도 이 변수를 읽는다. */
  --nyw-fixbar-h: 86px;
}

.nyw-side{
  position:fixed; right:16px; bottom:calc(var(--nyw-fixbar-h) + 56px + 29px); z-index:60;
  display:flex; flex-direction:column; align-items:center; gap:5px; width:auto;
  background:none; border-radius:0; overflow:visible; box-shadow:none;
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Segoe UI',sans-serif;
}
.nyw-side .nyw-side__i{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
  width:54px; height:54px; min-height:0; padding:0 3px; border-radius:50%;
  background:rgba(255,255,255,.95);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  border:1px solid #e2e8f0; color:#0a0a0a; text-decoration:none;
  box-shadow:0 2px 12px rgba(0,0,0,.12);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.nyw-side__i + .nyw-side__i{ box-shadow:0 2px 12px rgba(0,0,0,.12); }
.nyw-side__ic{ display:flex; align-items:center; justify-content:center; }
.nyw-side__ic svg{ width:19px; height:19px; display:block; }
.nyw-side .nyw-side__i .nyw-side__t{
  font-size:9px; font-weight:600; line-height:1; letter-spacing:-.05em;
  white-space:nowrap; color:inherit; max-width:50px; overflow:hidden; text-overflow:ellipsis;
}
/* 평상시 — 전 칸 흰 배경(2026-09-14 대표 지시 「일단 흰색 배경으로 아이콘들 만들어주고」).
   ⛔종전에는 카톡·네이버예약 두 칸만 상시 브랜드색이었다 — 그 상시색을 걷었다.
   색은 hover 에서만 채널별로 켠다(아래 절). */
.nyw-side .nyw-side__i:hover{
  transform:scale(1.1); background:#fff; border-color:#cbd5e1;
  box-shadow:0 4px 16px rgba(0,0,0,.18);
}
.nyw-side .nyw-side__i:hover .nyw-side__t{ color:#0a0a0a; }
.nyw-side__i:focus-visible{ outline:2px solid #0a0a0a; outline-offset:2px; }
@media (prefers-reduced-motion:reduce){
  .nyw-side .nyw-side__i{ transition:none; }
  .nyw-side .nyw-side__i:hover{ transform:none; }
}

/* ── hover 색 — 채널의 «공식 브랜드 색»(2026-09-14 대표 지시 「마우스 커서 갔다 댔을 때
 *   색이 바뀌도록, 카톡은 노랑 네이버는 초록, 각각의 아이콘에 어울리는 색으로」).
 *   글자·아이콘 색은 WCAG 대비를 «실측»해서 정했다 — 브랜드색이 밝으면 검정,
 *   어두우면 흰색이다(같은 밝은 톤에 흰 글자를 얹으면 안 읽힌다).
 *
 *   카카오톡            #FEE500 + 검정(#191600) — 흰 글자 대비 약 1.3:1로 탈락
 *   왓츠앱              #25D366 + 검정          — 실측 흰 글자 대비 1.98:1로 탈락, 검정 10.6:1
 *   네이버(예약·블로그)  #03C75A + 검정          — 실측 흰 글자 대비 2.25:1로 탈락, 검정 9.3:1
 *   유튜브              #FF0000 + 흰색          — 실측 대비 약 4.0:1(9px 소형 글자 기준 4.5:1
 *                                                 살짝 미달. 유튜브 레드는 흰 글자가 브랜드
 *                                                 관례라 그대로 쓰고 미달분은 보고에 남긴다)
 *   인스타그램          #E4405F + 흰색          — 실측 대비 약 4.0:1(위와 같은 사유)
 *   채널이 아닌 것(전화상담·온라인상담·TOP) — 브랜드색이 없어 이 사이트
 *   강조색 #0a0a0a 로 반전(흰 글자, 대비 약 19:1)
 *
 *   블로그(BLOG_URL)는 clinic.config.json 확인 결과 blog.naver.com — 네이버 블로그라
 *   네이버 그린을 그대로 쓴다.
 *   ⛔2026-09-15 — /about/location 지면이 삭제돼 「오시는길」이 네이버 플레이스
 *   (map.naver.com)로 바뀌었다. 같은 네이버 계열이라 그 그린 그룹에 합류시킨다. */
.nyw-side .nyw-side__i[href*="pf.kakao.com"]:hover{
  background:#FEE500; border-color:#f2d200; color:#191600;
}
.nyw-side .nyw-side__i[href*="wa.me"]:hover{
  background:#25D366; border-color:#1ea952;
}
.nyw-side .nyw-side__i[href*="booking.naver.com"]:hover,
.nyw-side .nyw-side__i[href*="blog.naver.com"]:hover,
.nyw-side .nyw-side__i[href*="map.naver.com"]:hover{
  background:#03C75A; border-color:#03C75A;
}
.nyw-side .nyw-side__i[href*="youtube.com"]:hover{
  background:#FF0000; border-color:#cc0000; color:#fff;
}
.nyw-side .nyw-side__i[href*="youtube.com"]:hover .nyw-side__t{ color:#fff; }
.nyw-side .nyw-side__i[href*="instagram.com"]:hover{
  background:#E4405F; border-color:#c93250; color:#fff;
}
.nyw-side .nyw-side__i[href*="instagram.com"]:hover .nyw-side__t{ color:#fff; }
.nyw-side .nyw-side__i[href^="tel:"]:hover,
.nyw-side .nyw-side__i[href="#nyw-consult-form"]:hover,
.nyw-side .nyw-side__i--top:hover{
  background:#0a0a0a; border-color:#0a0a0a; color:#fff;
}
.nyw-side .nyw-side__i[href^="tel:"]:hover .nyw-side__t,
.nyw-side .nyw-side__i[href="#nyw-consult-form"]:hover .nyw-side__t,
.nyw-side .nyw-side__i--top:hover .nyw-side__t{ color:#fff; }

.nyw-side__i--top{ box-shadow:0 2px 12px rgba(0,0,0,.12); }
.nyw-side .nyw-side__i--top .nyw-side__t{ font-size:9px; letter-spacing:.04em; }

/* 낮은 노트북에서 세로줄이 화면을 넘지 않게 한다 — 칸이 «떨어진 버튼»이 되면서
   구판(한 덩어리 66px×9=594px)보다 자리를 조금 더 쓴다.
   실측 — 1440×900 에서 언어행 포함 594px. 화면이 그보다 낮으면 칸을 46px 로 줄인다. */
@media (max-height:700px) and (min-width:1101px){
  .nyw-side{ gap:4px; }
  .nyw-side .nyw-side__i{ width:46px; height:46px; }
  .nyw-side__ic svg{ width:16px; height:16px; }
  .nyw-side .nyw-side__i .nyw-side__t{ font-size:8px; max-width:42px; }
  .nyw-side__lang a{ width:46px; height:24px; font-size:10px; }
  .nyw-side__lang{ width:46px; border-radius:23px; }
}

/* ⛔2026-09-14 대표 지적 「오른쪽 바랑 오른쪽 하단 ai 상담창 다 엉키고」
   위 축소판이 «700px 아래»에서만 발동해서 그 위 구간이 통째로 비어 있었다.

   실측(1512x982 · 전용 크롬 CDP) — 세로줄 T153~B830(677px) · AI 상담 버튼 T848~B904 ·
   하단 상담바 T917~B982. 세로줄과 AI 버튼 사이가 18px 뿐이라 한 덩이로 뭉쳐 보인다.
   세로줄은 화면 한가운데 기준이므로 아래 끝 = (H + 677) / 2 이고,
   AI 버튼 위 끝은 H - 134 다. 둘이 안 겹치려면 H > 945 여야 한다 —
   즉 945px 아래 화면에서는 «실제로 겹친다». 노트북에 주소창·알림줄이 얹히면 그 구간이다.

   칸을 빼지 않고 크기만 줄여 아래 여백을 만든다.
     46px 판 -> 세로줄 약 577px -> 안 겹치는 조건 H > 845
     40px 판 -> 세로줄 약 505px -> 안 겹치는 조건 H > 773 */
@media (max-height:945px) and (min-height:846px) and (min-width:1101px){
  .nyw-side{ gap:4px; }
  .nyw-side .nyw-side__i{ width:46px; height:46px; }
  .nyw-side__ic svg{ width:16px; height:16px; }
  .nyw-side .nyw-side__i .nyw-side__t{ font-size:8px; max-width:42px; }
  .nyw-side__lang a{ width:46px; height:24px; font-size:10px; }
  .nyw-side__lang{ width:46px; border-radius:23px; }
}
@media (max-height:845px) and (min-width:1101px){
  .nyw-side{ gap:3px; }
  .nyw-side .nyw-side__i{ width:40px; height:40px; }
  .nyw-side__ic svg{ width:15px; height:15px; }
  .nyw-side .nyw-side__i .nyw-side__t{ font-size:8px; max-width:38px; }
  .nyw-side__lang a{ width:40px; height:21px; font-size:9px; }
  .nyw-side__lang{ width:40px; border-radius:20px; }
}

/* 좁은 데스크톱(1308px 미만)에서도 같은 축소판을 쓰고 오른쪽 여백을 8px 로 줄인다 —
   대역이 70px(54+16)에서 54px(46+8)로 내려간다.
   홈 시안 그리드(1206px)가 이 폭에서 세로줄과 겹치던 것을 그 16px 로 푼다
   (2026-09-10 실측 — 1280px 홈 본문 21행이 최대 54px 덮여 있었다). */
@media (min-width:1101px) and (max-width:1307px){
  .nyw-side{ gap:4px; right:8px; }
  .nyw-side .nyw-side__i{ width:46px; height:46px; }
  .nyw-side__ic svg{ width:16px; height:16px; }
  .nyw-side .nyw-side__i .nyw-side__t{ font-size:8px; max-width:42px; }
  .nyw-side__lang a{ width:46px; height:24px; font-size:10px; }
  .nyw-side__lang{ width:46px; border-radius:23px; }
}

/* ── ② 하단 고정 상담 접수 폼 — 지면을 떠나지 않고 그 자리에서 접수된다 ── */
/* 안쪽 내용은 «가운데»로 모은다. 구판은 폼이 남는 자리를 전부 차지하면서도
   그 안의 칸들은 왼쪽에 붙어, 넓은 화면일수록 오른쪽이 통째로 비어 보였다
   (1440px 실측 — 내용 오른쪽 여백 501px · 왼쪽 40px). */
/* ★치수·배치의 정본은 «에디션성형외과 하단바»다(대표 지시 — 2026-09-06 확정 · 09-09 재지시).
 *   2026-09-09 실측(https://editionps.com/ · 전용 크롬 CDP · 1440×900 · location.href 확인)
 *     바   높이 65 · bottom 0 · gap 0 · 배경 rgb(26,26,26) · 상단 테두리 1px rgba(255,255,255,.15)
 *     칸   x52 「빠른 상담」 / x120 이름 90×38 / x220 연락방법 90 / x320 전화 130 /
 *          x460 진료 항목 110 / x580 동의 라벨 12px + 체크 14 / x1288 상담신청 100×38
 *     입력 radius 6px · 배경 rgba(255,255,255,.15) · 13px
 *   ⛔색만은 베끼지 않는다 — 에디션 버튼색 rgb(157,143,134)은 «그 병원 색»이다.
 *     이 계보는 무채색이라 흰 반전을 유지한다(전역 hospital-site-build.md §색). */
/* ⛔2026-09-14 실측(부모 보고) — .nyw-cf__note 가 바 «위»로 삐져나와 본문을 덮었다.
   그 고지를 상시 노출로 바꾼 것은 옳다(개인정보보호법 §15). 틀린 건 «자리»였다.
   고침 = 바를 «두 줄»로 연다 — 1행(빠른 상담 + 폼) 아래에 2행(고지 문장)을 흐름 안에 둔다.
   ⛔높이를 65px 고정에서 min-height 로 바꿔 실제로 늘어난다 — body 패딩도 함께 늘렸다(아래).
   ★.nyw-side 의 bottom:150px 계산 전제(65+56+29)는 이 파일에서 «건드리지 않는다» —
     늘어난 실측값은 보고에만 적는다(부모 지시). */
.nyw-fixbar{
  position:fixed; left:0; right:0; bottom:0; z-index:55;
  display:flex; align-items:center; flex-wrap:wrap; gap:6px 14px;
  min-height:65px; padding:10px clamp(16px,3.6vw,52px);
  background:#1a1a1a;
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  border-top:1px solid rgba(255,255,255,.15);
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Segoe UI',sans-serif;
}
/* 좌측 — 에디션은 여기에 「빠른 상담」 한 마디만 둔다. 전화번호·아이콘 버튼을 겹쳐 두지 않는다. */
.nyw-fixbar__lead-t{ font-size:15px; font-weight:700; letter-spacing:-.02em; color:#fff;
  white-space:nowrap; flex:0 0 auto; }

/* 폼 — 늘려서 「상담 신청」을 오른쪽 끝으로 민다(에디션 x1288 = 우측 여백 52px). */
.nyw-cf{ display:flex; align-items:center; gap:10px; flex:1 1 auto; min-width:0; }
.nyw-cf__f{ display:flex; flex-direction:column; min-width:0; }
.nyw-cf__lb{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.nyw-cf .nyw-cf__in{
  height:38px; padding:0 11px; min-width:0;
  font-family:inherit; font-size:13px; letter-spacing:-.02em; color:#fff;
  background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.20); border-radius:6px;
  outline:none; transition:border-color .18s ease, background .18s ease;
}
.nyw-cf .nyw-cf__in::placeholder{ color:rgba(255,255,255,.5); }
.nyw-cf .nyw-cf__in:focus{ border-color:rgba(255,255,255,.62); background:rgba(255,255,255,.22); }
/* ⛔nth-of-type 을 쓰지 마라 — 칸이 하나 늘면 순번이 통째로 밀린다.
   에디션 실측 폭을 «칸 이름»에 붙인다. */
.nyw-cf__f:not(.nyw-cf__f--way):not(.nyw-cf__f--sel) .nyw-cf__in{ width:90px; }
.nyw-cf__f:not(.nyw-cf__f--way):not(.nyw-cf__f--sel) .nyw-cf__in[type="tel"]{ width:130px; }
.nyw-cf__f--way .nyw-cf__sel{ width:90px; }
.nyw-cf__f--sel .nyw-cf__sel{ width:110px; }
.nyw-cf__sel{
  cursor:pointer; -webkit-appearance:none; appearance:none;
  padding-right:26px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='white' stroke-width='1.4'%3E%3Cpath d='m1 1.6 5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 9px center; background-size:10px 7px;
}
.nyw-cf__sel option{ color:#0a0a0a; background:#fff; }
/* ★2026-09-14 실측 — 동의 체크박스의 터치 영역이 20px 로 44px 기준의 절반 이하였다.
   글자 크기는 그대로 두고 «누를 수 있는 높이»만 키운다. */
.nyw-cf__ag{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
  min-height:44px; padding-block:4px;
  font-size:12px; letter-spacing:-.03em; color:rgba(255,255,255,.75); cursor:pointer; }
.nyw-cf__ag input{ width:20px; height:20px; accent-color:#fff; cursor:pointer; flex:0 0 auto; }
/* 2026-09-14 — 필수 항목 시각 표식(별표). 라벨은 sr-only 라 바 높이를 안 키우는
   placeholder/텍스트 표식으로 대신한다(js/nyw-consult-bar.js 의 markRequired()). */
.nyw-cf__req{ color:#ffb4b4; }
/* aria-invalid 로 표시된 칸 — 검증 실패 시 어느 칸이 틀렸는지 시각으로도 보인다. */
.nyw-cf__in[aria-invalid="true"]{ border-color:#ff8080; background:rgba(255,128,128,.12); }
.nyw-cf__ag input[aria-invalid="true"]{ outline:2px solid #ff8080; outline-offset:2px; }
/* ★2026-09-14 실측 — 18.3×13px 에 11px 글자였다. 개인정보 수집 동의 «경로»라
   누르기 어려우면 그대로 이탈이다. 글자는 12px 하한으로, 누르는 면은 세로 44px 로 준다.
   inline-flex + 음수 마진이라 바의 세로 정렬은 그대로다. */
.nyw-cf__more{ font-size:12px; color:rgba(255,255,255,.68); text-decoration:underline;
  text-underline-offset:2px; display:inline-flex; align-items:center;
  min-height:44px; padding-inline:6px; margin-block:-14px; }
.nyw-cf__more:hover{ color:#fff; }
.nyw-cf .nyw-cf__btn{
  height:38px; width:100px; padding:0; flex:0 0 auto; cursor:pointer; margin-left:auto;
  font-family:inherit; font-size:14px; font-weight:600; letter-spacing:-.03em;
  color:#0a0a0a; background:#fff; border:1px solid #fff; border-radius:6px;
  transition:background .18s ease;
}
.nyw-cf .nyw-cf__btn:hover{ background:#e6e6e6; }
.nyw-cf .nyw-cf__btn:disabled{ opacity:.55; cursor:default; }
.nyw-cf__msg{ font-size:11.5px; letter-spacing:-.03em; color:rgba(255,255,255,.72); margin:0; max-width:230px; }
.nyw-cf__msg--ok{ color:#7fe0a8; }
.nyw-cf__msg--err{ color:#ffb4b4; }
/* 수집 항목·목적·보유 기간 고지 — 개인정보보호법 §15
   ⛔2026-09-14 1차 실측 — 데스크톱에서 opacity:0 + focus-within 일 때만 1이라
   포커스를 벗어나면 즉시 사라졌다(모바일 시트는 아래에서 static·상시표시라 정상이었다).
   §15 고지는 «항상» 보여야 한다 — 상시 표시로 바꿨다.
   ⛔2026-09-14 2차 실측(부모 보고) — 그 상시 표시를 «바 위 절대배치」로 만들어
   본문(진료 철학 섹션)을 덮었다. 되돌리지 않고 «바 안»으로 옮긴다 —
   position:static 으로 폼 다음 줄에 자연스럽게 흐르게 하고, 위 .nyw-fixbar 를
   flex-wrap 으로 열어 그 줄을 받는다(order:3 + flex-basis 100% 로 항상 새 줄). */
.nyw-cf__note{
  position:static; order:3; flex:1 1 100%; margin:0;
  font-size:10.5px; line-height:1.4; letter-spacing:-.03em;
  color:rgba(255,255,255,.62); background:none; padding:0; border-radius:0;
  opacity:1;
}
.nyw-mobar{ display:none; }


body{ padding-bottom:var(--nyw-fixbar-h); }


@media (max-width:1100px){
  /* 세로바의 «상담 칸»은 아래 고정 바가 맡는다 — 같은 화면에 두 벌을 띄우지 않는다.
     ⛔다만 언어 전환(EN·JP·CN)과 맨 위로는 이 지면에서 여기 말고 갈 곳이 없다.
     세로바를 통째로 감추면 그 두 기능이 좁은 화면에서 «사라진다».
     그래서 감추는 대신 문서 맨 끝의 가로 띠로 «자리를 옮긴다» — 떠 있지 않으니
     사진도 본문도 가리지 않는다. */
  .nyw-side{
    position:static; transform:none; z-index:auto;
    display:flex; flex-direction:row; justify-content:center; align-items:center; gap:10px;
    /* ⛔아래 여백을 넉넉히 둔다 — AI 상담 런처가 화면 오른쪽 아래에 «떠 있어»,
       띠가 얇으면 문서 끝까지 내렸을 때 런처가 이 줄을 덮는다
       (375px 실측 — 런처 y 684~740 · 얇은 띠일 때 줄 693~737 로 겹쳤다). */
    padding:14px 16px calc(84px + env(safe-area-inset-bottom,0px));
    background:#0a0a0a; border-top:1px solid rgba(255,255,255,.10);
  }
  .nyw-side .nyw-side__i{ display:none; }
  .nyw-side .nyw-side__i--top{
    display:inline-flex; flex-direction:row; gap:6px;
    width:auto; height:44px; padding:0 16px; border-radius:999px;
  }
  .nyw-side .nyw-side__i--top .nyw-side__t{ font-size:12px; max-width:none; }
  /* ⛔선택자를 «.nyw-side» 로 한 겹 더 감는다 — 언어칩의 기본 치수는 이 파일 «뒤»에
     오는 도구 CSS 가 들고 있어, 같은 굵기로 쓰면 그쪽이 이긴다. */
  /* 좁은 화면에서는 세로바가 «문서 끝의 가로 띠»가 된다 — 언어칩도 가로로 되돌린다.
     ⛔데스크톱에서 세로로 쌓은 것(nyw-tools.css)이 여기까지 따라오면 띠가 세로로 부푼다. */
  .nyw-side .nyw-side__lang{ margin-bottom:0; flex-direction:row; width:auto; border-radius:999px; }
  .nyw-side .nyw-side__lang a{ width:54px; height:44px; font-size:12px; }
  .nyw-side .nyw-side__lang a + a{ box-shadow:inset 1px 0 0 #e9edf2; }

  .nyw-fixbar{
    height:auto; padding:0; gap:0; display:block;
    padding-bottom:env(safe-area-inset-bottom,0px);
  }
  .nyw-fixbar__lead-t{ display:none; }
  .nyw-cf{
    display:none; flex-wrap:wrap; gap:8px; padding:14px clamp(14px,4vw,20px) 12px;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
  .nyw-fixbar--sheet .nyw-cf{ display:flex; }
  .nyw-cf__f{ flex:1 1 46%; }
  .nyw-cf__f--way, .nyw-cf__f--sel{ flex:1 1 46%; }
  /* ⛔입력 글자가 13px 이라 iOS 사파리가 포커스 순간 지면을 «자동 확대»하고, 그 줌이
     풀리지 않아 그 뒤 전 지면이 가로로 밀린다. 16px 이상이면 확대하지 않는다.
     터치 높이도 44px 로 올린다(구판 38px). ⛔데스크톱 13px·38px 은 그대로 둔다. */
  .nyw-cf .nyw-cf__in,
  .nyw-cf__f--way .nyw-cf__sel,
  .nyw-cf__f--sel .nyw-cf__sel{ width:100%; font-size:16px; height:44px; }
  .nyw-cf .nyw-cf__btn{ height:44px; }
  .nyw-cf__ag{ flex:1 1 auto; }
  .nyw-cf .nyw-cf__btn{ flex:0 0 auto; margin-left:auto; }
  .nyw-cf__msg{ flex:1 1 100%; max-width:none; }
  .nyw-cf__note{ position:static; opacity:1; background:none; padding:0 clamp(14px,4vw,20px) 10px;
    display:none; line-height:1.5; }
  .nyw-fixbar--sheet .nyw-cf__note{ display:block; }

  /* ★모바일 4칸의 정본도 «에디션»이다 — 2026-09-09 실측(375×812 · CDP mobile:true)
   *     바 60px · 칸 94×59 · 배경 rgb(26,26,26) · 글자 10px/500 · «넷째 칸만» 700 + 밝은 배경
   *     ①카톡상담 ②(우리 상담 접수) ③전화상담 ④진료예약(네이버 부킹)
   *   ⛔종전 판은 카톡 칸을 카카오 노랑으로 칠했다(2026-09-04 병원 요청 「색상 다르게」).
   *     에디션은 넷을 «같은 검정»으로 두고 주 행동인 넷째만 반전한다 — 대표가 그 형태를
   *     여러 차례 지시했으므로 정본을 따른다. 병원 요청의 뜻(어느 것이 주 행동인지 보이게)은
   *     넷째 칸 반전으로 그대로 충족된다.
   *   ⛔칸마다 다 다른 색을 칠하지 마라 — 넷이 다 튀면 주 행동이 다시 안 보인다. */
  .nyw-mobar{ display:grid; grid-template-columns:repeat(4,1fr);
    border-top:1px solid rgba(255,255,255,.15); }
  .nyw-mobar a, .nyw-mobar button{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    height:59px; min-width:0; padding:0 2px; border:0; border-radius:0; cursor:pointer;
    /* ★2026-09-14 — 환자 «주 동선» 라벨인데 10px 이라 12px 하한 미달이었다.
       칸 높이 59px 이라 12px 로 올려도 아이콘 19px + 글자 한 줄이 그대로 들어간다. */
    font-family:inherit; font-size:12px; font-weight:500; letter-spacing:-.04em;
    color:rgba(255,255,255,.8); background:#1a1a1a; text-decoration:none;
    box-shadow:inset 1px 0 0 rgba(255,255,255,.08);
  }
  .nyw-mobar > :first-child{ box-shadow:none; }
  .nyw-mobar svg{ width:19px; height:19px; }
  /* 넷째 칸(진료예약) — 주 행동 하나만 반전한다. 에디션과 같은 자리다. */
  .nyw-mobar .nyw-mobar__pri{ background:#fff; color:#1a1a1a; font-weight:700; box-shadow:none; }
  body{ padding-bottom:calc(59px + env(safe-area-inset-bottom,0px)); }
}

/* 이 계보에 원래 있던 구 상담 레일은 위 세 부품으로 대체됐다.
   같은 자리에 둘이 겹치면 서로 가린다 — 실제로 우측에 세로바가 두 개 겹쳐 보였다. */
.quick_menu_wrap, .quick_menu_wrap_pc{ display:none !important; }

/* 인쇄 — 상담 접점은 종이에 나갈 것이 아니다 */
@media print{ .nyw-side, .nyw-fixbar, #acw-root{ display:none !important; } }

/* 모바일에서 폼 시트가 올라오면 AI 상담 런처가 그 위를 덮는다.
   ⛔2026-09-14 실측 — 216px 만큼 밀어올려도 폼(fixbar 전체 285.5px)보다 부족해
     10.5px 겹쳤다(런처 bottom-edge 538 vs 폼 top 527.5, 375×812).
   폼 높이는 값 검증 메시지 길이 등으로 흔들릴 수 있어 «밀어올리는 고정값」은
   다시 깨지기 쉽다 — 시트가 열린 동안은 겹치지 않게 «숨긴다»(.acw-hide 와 같은 스타일).
   ★상담 경로는 그대로다 — 시트가 열려 있는 동안은 하단 폼이 상담 경로이고,
     시트를 닫으면(취소·제출·Esc) 이 클래스가 빠져 런처가 즉시 돌아온다. */
@media (max-width:1100px){
  body:has(.nyw-fixbar--sheet) .acw-launcher-wrap{
    opacity:0; transform:scale(.92); pointer-events:none;
  }
}
