/* counsel_katalk.css → ru (sys.php 변환본) */
/* ============================================================================
   counsel_katalk — 영문판 전용 조판 보정 (2026-09-22)  · 생성: gen.py

   render.php 가 이 파일을 맨 마지막에 싣는다(공통 → fontfix → 쪽 인라인 → intl → img → 여기).
   선택자는 전부 html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] 아래라, 같은 조각(data-tc)을 쓰는 다른 영문 쪽에는 영향이 없다.

   왜 필요한가 — 한국어/영문 1920px 실측 대조
     · 한국어는 js/site.js 가 글꼴을 갈아 끼우지만 번역 페이지에서는 돌지 않고,
       css/fontfix/counsel_katalk.css 가 !important 로 박아 둔 한글 글꼴(NanumBG·scd1·gmsb)만 남는다.
     · 크기도 조각별 실측이라 같은 등급 제목이 조각마다 다르고,
       거기에 fit.js 가 넘치는 것만 골라 줄여 한 쪽 안에서 12px~24px 로 갈렸다.
   고치는 법 — 등급별 공통 변수로 크기를 한 벌로 정하고, fit.js 의 크기 조정은 `--tgi-fs:on` 로 잠근다
   (넓히기·자리 옮기기·줄바꿈은 그대로 돈다).
   ========================================================================== */

/* ── 0. 이 파일이 하는 일 ─────────────────────────────────────────────
   "어느 요소가 어느 등급인가" 만 잇는다. 크기·굵기·행간·자간은 한 줄도 여기서 정하지 않고
   전부 _i18n/en-system.css 의 공통 변수를 가리킨다 → 같은 등급이면 어느 쪽·어느 구역이든
   computed style 이 완전히 같다. 쪽별 px·소수점 크기는 이 파일에 쓰지 않는다.

   예외는 '장식'뿐이다(아래 1절). 장식 영문·숫자·로고형 문구는 한국어 원본 디자인의
   일부라 일반 제목 등급으로 통일하면 디자인이 바뀐다 — 원본 크기를 정수 px 로 지킨다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"]{--tgi-fs:on}   /* 글자 크기·자간·행간은 CSS 가 정한다 — fit.js 의 JS 강제 변경을 이 쪽에서 끈다 */

/* ── 1. 글꼴 ─────────────────────────────────────────────────────────
   제목·본문은 --en-sans 한 벌. 장식·브랜드 글꼴만 원래 글꼴을 지킨다. */
/* SVG `<text>` 는 뺀다 — `<text>` 로 그린 로고(FDA 워드마크 등)를 갈아엎는다 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] .tg-fr *:not(text){font-family:var(--en-sans)!important;-webkit-text-stroke:0!important}
/* 장식 글꼴은 폭과 무관하게, **크기는 PC 에서만** 고정한다 —
   폰에서는 조각 자체의 clamp() 가 정본이라 PC 크기를 그대로 두면 장식이 화면을 덮는다
   (한국어 css/fontfix/*.css 도 같은 이유로 @media (min-width:1025px) 안에만 둔다). */
/* 말풍선 그림 안의 KAKAO·TALK 는 번역 대상이 아닌 그림 글자다.
   위 `.tg-fr *` 글꼴 일괄 지정이 이것까지 Inter 로 바꿔 놓아
   textLength 에 눌려 글자가 찌그러지고 두 줄이 겹쳤다(1920 실측 44x13px).
   한국어 원본과 같은 Oswald-regular/400 으로 되돌린다 — 아래 장식 규칙에 함께 태운다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-kt,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-bub text,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-sbub text{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-consult{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-brand{font-family:var(--en-oswald-light)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-notice{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-sub{font-family:var(--en-oswald-regular)!important;font-weight:400!important;--tgi-fit:on}
@media (min-width:1025px){
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-kt{font-size:calc(96 * var(--k,1px))!important;line-height:calc(96 * var(--k,1px))!important;letter-spacing:calc(-6.5 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-consult{font-size:calc(65 * var(--k,1px))!important;line-height:calc(65 * var(--k,1px))!important;letter-spacing:calc(16.9 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-brand{font-size:calc(64 * var(--k,1px))!important;line-height:calc(64 * var(--k,1px))!important;letter-spacing:calc(-1.4 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-notice{font-size:calc(26 * var(--k,1px))!important;line-height:calc(26 * var(--k,1px))!important;letter-spacing:calc(0.3 * var(--k,1px))!important}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-sub{font-size:calc(10 * var(--k,1px))!important;line-height:calc(10 * var(--k,1px))!important;letter-spacing:calc(0 * var(--k,1px))!important}
}
/* 폰에서 'NOTICE!' 만 한국어보다 작았다 — 장식 크기 규칙은 PC 안에만 있고,
   한국어를 올려 주는 css/mobile.css 조각 h3 규칙(--m-h3 19px)은 번역하지 않는 영문 라벨
   ([data-fr-en])을 빼기 때문이다(390 실측 ko 19px / en 7.87px). 폰에서만 공통 h3 등급에 잇는다. */
@media (max-width:1024px){
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-notice{font-size:var(--en-h3-size);line-height:var(--en-h3-lh)}
  /* 장식 자간: 원본은 크기와 자간을 서로 다른 --u 눈금으로 재서 폰에서만 자간이 두 배가 된다
     (390 실측 .s00-kt 29.07px 에 -3.97px = -0.136em → 'KAKAO TALK' 이 'KAKAOTALK' 로 붙었다.
      한국어는 css/mobile.css 가 -0.02em 으로 잡아 주지만 그 규칙은 [data-fr-en] 을 뺀다).
     PC 원본 비율(-6.5/96 · 16.9/65 · -1.4/64)을 em 으로 그대로 옮긴다 — 새 px 값이 아니다. */
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-kt{letter-spacing:calc(-6.5em / 96)}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-consult{letter-spacing:calc(16.9em / 65)}
  html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-brand{letter-spacing:calc(-1.4em / 64)}
}

/* ── 2. 줄바꿈 ───────────────────────────────────────────────────────
   한국어 길이에 맞춘 nowrap/pre 를 풀되, 설계된 줄바꿈(한국어가 pre 인 곳)은 지킨다.
   낱말 중간을 자르지 않고, 글자를 줄여 한 줄에 우겨넣지 않는다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-note,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-hos,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-slabel,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-go,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-chip{white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;text-wrap:pretty}
/* 장식 영문·숫자는 짧다 — 원본처럼 한 줄로 둔다 */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-brand,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-kt,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-consult,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-notice,
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-sub{white-space:nowrap!important}

/* ── 3. 등급 연결 ─────────────────────────────────────────────────────
   여기서 값을 정하지 않는다. en-system.css 의 등급 변수를 가리키기만 한다.
   (변수는 ≤1024 에서 스스로 바뀌므로 화면 크기별 규칙을 따로 두지 않는다) */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] .tg-fr *:where(:not(text):not(.s00-brand):not(.s00-consult):not(.s00-kt):not(.s00-notice):not(.s00-sub)){letter-spacing:normal!important}   /* 한국어 낱말 길이에 맞춘 자간(509곳 !important) 초기화 */
/* display: s00-go */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-go{font-size:var(--en-display-size)!important;line-height:var(--en-display-lh)!important;letter-spacing:var(--en-display-ls)!important;font-weight:var(--en-w-display)!important}
/* h3: s00-hos, s00-slabel */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-hos{font-size:var(--en-h3-size)!important;line-height:calc(24 * var(--k,1px))!important;letter-spacing:var(--en-h3-ls)!important;font-weight:400!important}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-slabel{font-size:var(--en-h3-size)!important;line-height:calc(26 * var(--k,1px))!important;letter-spacing:var(--en-h3-ls)!important;font-weight:400!important}
/* h4: s00-chip */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-chip{font-size:var(--en-h4-size)!important;line-height:var(--en-h4-lh)!important;letter-spacing:var(--en-h4-ls)!important;font-weight:400!important}
/* lead: s00-note */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-note{font-size:var(--en-lead-size)!important;line-height:calc(17 * var(--k,1px))!important;letter-spacing:var(--en-lead-ls)!important;font-weight:var(--en-w-lead)!important}
/* 조각(.tg-fr) 밖의 쪽 전용 부품 — 둘 다 counsel_katalk 에만 있다
   (css/sub.css:196 `.katalk .kbtn` 17px·700, 원본 HTML 의 인라인 <p class="note">).
   조각 밖이라 위 규칙도 en-system.css 의 공통 부품 규칙도 닿지 않아
   영문 글이 한글 글꼴(NanumGothic)·사다리 밖 17px 로 남아 있었다(1920 실측).
   공통 등급(btn·caption)에 잇는다. sub.css 는 여기에 !important 를 쓰지 않아 특이도만으로 이긴다.
   (p.note 의 font-size:14px 는 원본 HTML 인라인이고 14px 는 사다리 값이라 그대로 둔다) */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] .katalk .kbtn{font-family:var(--en-sans);font-size:var(--en-btn-size);line-height:var(--en-btn-lh);letter-spacing:normal;font-weight:var(--en-w-btn)}
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] .katalk p.note{font-family:var(--en-sans);line-height:var(--en-caption-lh);letter-spacing:normal}

/* ── 4. 고정 높이 풀기 ───────────────────────────────────────────────
   영문은 길어 줄이 늘어난다. 한국어 길이에 맞춘 고정 height 를 min-height 로 바꿔
   글을 줄이거나 잘라내지 않고 **칸이 자연스럽게 늘어나게** 한다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] .tg-fr :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,figcaption):where(:not(.ab):not(.tag):not([class*="circ"]):not([class*="circle"]):not([class*="badge"]):not([class*="disc"]):not([class*="ring"]):not([class*="round"]):not([class*="dot"]):not([class*="circ"] *):not([class*="circle"] *):not(.e-circ *):not([class*="ring"] *):not([class*="disc"] *):not(.mod-album *):not(.mod-tv *):not(.mod-bna *):not(.mod-selfie *):not(.s00-chip)){height:auto!important}
/* 검색 줄: 한국어 '카카오톡 검색'(한 줄)에 맞춘 고정 높이 64px 안에서
   영문 'Search on KakaoTalk' 은 두 줄이 되어 줄이 칸 위아래로 비어져 나왔다.
   .s00-search 는 div, .s00-chip 은 span 이라 위 height:auto 규칙(h1~figcaption)에 걸리지 않는다.
   글자를 줄이지 않고 칸이 늘어나게 한다. 원본 단위(--u)를 그대로 써서 폭이 줄면 같이 줄어든다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-search{height:auto;min-height:calc(64 * var(--u))}
/* CTA 알약(.s00-cta): 한국어 '카톡상담 바로가기'(한 줄)에 맞춰 574x221 로 못 박혀 있다.
   영문 'Shortcut to KakaoTalk Consultation' 은 세 줄이 되어
     · 아랫줄이 알약 **밖 아래**로 통째로 나가고
     · 윗줄이 알약 폭을 꽉 채워 둥근 좌우 끝을 넘어갔다(390 에서는 병원이름 줄까지 나갔다).
   글자를 줄이지 않고 ① 담는 칸 폭 ③ 고정 height 제거 ④ 칸 높이 확장 순서로 푼다.
   알약은 둥근 끝의 가로 반지름이 높이의 절반이라, 위아래 끝에서는 쓸 수 있는 폭이 확 준다.
   좌우 90u·위아래 44u 를 둬 글이 둥근 윤곽 안쪽에서만 줄바꿈하게 하고,
   높이는 min-height 로 원본 221u 를 지키되 줄이 늘면 함께 자란다(ckt_fit.py 로 윤곽 검사).
   위아래 여백은 원본 값 44 를 쓰되 알약의 폭·높이와 **같은 눈금(--u, .s00 기준)** 으로 잰다
   (원본 --space-8xl 은 .tcf_katalk 의 1288 눈금이라 폰에서 13px 로 쪼그라든다). */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-cta{height:auto;min-height:calc(221 * var(--u));padding-block:calc(44 * var(--u));padding-inline:calc(90 * var(--u))}
/* 회색 알약 라벨: 폭·높이가 279x64u 로 못 박혀 있어 영문 두 줄이 칸 아래로 비어져 나왔다.
   폭은 원본 그대로 두고 높이만 자라게 한다. */
html#tgi-doc:is(#tgi-doc)[data-tgi-lang="ru"][data-tgi-page="counsel_katalk"] :is(.tg-fr[data-tc="2608295vt8d"],.tg-fr [data-tc="2608295vt8d"]) .s00-chip{height:auto;min-height:calc(64 * var(--u))}

/* ── 5. (비움) gen.py 가 모든 쪽에 넣는 수술정보표(.spec) 보정은 이 쪽에 해당 요소가 없다.
   counsel_katalk.html 에 'spec' 도 dt·dd 도 0개라 6개 규칙·!important 7개가 아무것도
   맞히지 못한 채 남아 있었다 → 삭제. */

/* 알약 라벨(.s00-chip)은 폭·높이가 원본에서 279x64 로 못 박혀 있어 글이 길어도 도형이 커지지 않는다.
   fit.js 로 글자를 줄이면(18px) 같은 h4 등급이 이 쪽만 작아져 등급이 깨진다 → 끈 채로 둔다.
   영문 'TANG:GLE Plastic Surgery Clinic' 은 두 줄로 알약 안에 들어간다(실측). */

