/* ============================================================
   lumiin 레코드 (Clinical Records) — 사례(clinic_case) 스킨
   ------------------------------------------------------------
   콘솔에서 사례 스킨을 'lumiin' 으로 켠 병원에서만 enqueue 된다.
   전 규칙 .pcase-lumiin(body 클래스) 스코프 — 기본(arc) 병원 무영향.

   설계 (case-style-spec.md §2):
   - 색은 브랜드 토큰 상속: var(--brand-accent/primary/secondary, 폴백 hex)
   - 표제·케이스 번호·캡션 = 세리프 디스플레이 / 본문·메타 = 산세리프
   - 라운드·pill 금지 (각진 면 · 기록부 문법)
   - 아카이브: 크림 헤더(좌측 정렬) + 언더라인 탭 필터 + 2열 가로 레코드 카드
   - 상세: 크림 헤더 밴드 + 4칸 스펙 스트립 + 단일 컬럼 지면 갤러리(매트 프레임
     + FIG 캡션 counter) + 코코아 의료진 코멘트 + 크림 관련사례 밴드
   - 홈 cslider: 색만 오버라이드
   - 반응형: 1080 / 720
   전폭 밴드는 box-shadow 100vmax + clip-path inset(0 -100vmax) 트릭
   (가로 스크롤 미발생). :has()/:empty 미사용 — 이미지 0/1/3장·태그 없음에도 안전.
============================================================ */

/* ------------------------------------------------------------
   0. 토큰 — 브랜드 토큰 상속 + arc 로컬 팔레트 재매핑
   arc 규칙들이 소비하는 로컬 변수(--brand/--ink/--soft/--mist/--line…)를
   여기서 갈아끼워, 개별 재선언 없이도 크럼·페이지네이션·본문 링크까지 재착색.
------------------------------------------------------------ */
.pcase-lumiin .arc-case,
.pcase-lumiin .arc-case-archive,
.pcase-lumiin .arc-case-related,
.pcase-lumiin .arc-cslider {
  --lmc-brand: var(--brand-accent, #7a6255);   /* 웜 브라운 — 유일 강조 */
  --lmc-cocoa: var(--brand-primary, #302722);  /* 다크 패널 */
  --lmc-cream: var(--brand-secondary, #f6f1eb);/* 밴드 배경 */
  --lmc-paper: #fbfaf8;                        /* 카드·매트 표면 */
  --lmc-ink: #2c2521;
  --lmc-body: #6f625b;
  --lmc-line: #e2d9d2;
  --lmc-ff-display: var(--serif, "Playfair Display", "Noto Sans KR", serif);
  --lmc-ff-body: var(--sans, "DM Sans", "Noto Sans KR", sans-serif);

  /* arc 로컬 변수 재매핑 */
  --paper: var(--lmc-paper);
  --mist: #efe8e1;
  --stone: #e8e0d8;
  --ink: var(--lmc-ink);
  --soft: var(--lmc-body);
  --brand: var(--lmc-brand);
  --line: var(--lmc-line);
  --deep: var(--lmc-ink);
}
.pcase-lumiin .arc-case,
.pcase-lumiin .arc-case-archive,
.pcase-lumiin .arc-case-related {
  font-family: var(--lmc-ff-body);
  color: var(--lmc-ink);
}

/* 키커(RELATED RECORDS 등) — eyebrow 라인 문법 */
.pcase-lumiin .arc-case .arc-kicker,
.pcase-lumiin .arc-case-archive .arc-kicker,
.pcase-lumiin .arc-case-related .arc-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--lmc-brand);
  font-size: 10.5px;
  letter-spacing: .2em;
}
.pcase-lumiin .arc-case .arc-kicker::before,
.pcase-lumiin .arc-case-archive .arc-kicker::before,
.pcase-lumiin .arc-case-related .arc-kicker::before {
  content: "";
  width: 38px;
  height: 1px;
  background: var(--lmc-brand);
}

/* ------------------------------------------------------------
   1. 아카이브 — 크림 헤더 (좌측 정렬 + eyebrow)
------------------------------------------------------------ */
.pcase-lumiin .arc-case-hero {
  background: var(--lmc-cream);
  text-align: left;
  padding: clamp(48px, 7vw, 92px) 0 clamp(30px, 4vw, 44px);
  font-family: var(--lmc-ff-body);
}
.pcase-lumiin .arc-case-hero__k {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--lmc-brand);
  font-size: 11px;
  letter-spacing: .2em;
}
.pcase-lumiin .arc-case-hero__k::before {
  content: "";
  width: 38px;
  height: 1px;
  background: var(--lmc-brand);
}
.pcase-lumiin .arc-case-hero__title {
  margin: 18px 0 0;
  font-family: var(--lmc-ff-display);
  font-weight: 500;
  font-size: clamp(30px, 4.4vw, 48px);
  letter-spacing: -.02em;
  line-height: 1.22;
  color: var(--lmc-ink);
}
.pcase-lumiin .arc-case-hero__title .arc-case-archive__tagword { color: var(--lmc-brand); }
.pcase-lumiin .arc-case-hero__lede {
  margin: 16px 0 0;
  max-width: 620px;
  color: var(--lmc-body);
}

/* ── 필터바 — 크림 밴드 연장 (전폭) · 라인 인풋 + 언더라인 탭 ── */
.pcase-lumiin .arc-case-filterbar {
  margin-bottom: 0;
  padding: clamp(4px, 1vw, 10px) 0 0;
  background: var(--lmc-cream);
  box-shadow: 0 0 0 100vmax var(--lmc-cream);
  clip-path: inset(0 -100vmax);
}
.pcase-lumiin .arc-case-searchrow {
  max-width: 400px;
  margin-bottom: 20px;
}
.pcase-lumiin .arc-case-search-ic { left: 2px; }
.pcase-lumiin .arc-case-search {
  padding: 11px 8px 11px 30px;
  border: 0;
  border-bottom: 1px solid var(--lmc-line);
  border-radius: 0;
  background: transparent;
  font-family: var(--lmc-ff-body);
  color: var(--lmc-ink);
}
.pcase-lumiin .arc-case-search:focus {
  box-shadow: none;
  border-bottom-color: var(--lmc-brand);
}
.pcase-lumiin .arc-case-filter { gap: 2px 26px; }
.pcase-lumiin .arc-case-filter a {
  padding: 10px 2px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: none;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .02em;
  color: var(--lmc-body);
  transition: color .15s ease, border-color .15s ease;
}
.pcase-lumiin .arc-case-filter a:hover {
  background: none;
  color: var(--lmc-brand);
  border-bottom-color: var(--lmc-brand);
}
.pcase-lumiin .arc-case-filter a.is-active {
  background: none;
  color: var(--lmc-brand);
  border-bottom-color: var(--lmc-brand);
}

/* ------------------------------------------------------------
   2. 레코드 카드 — 2열 × 가로형 (이미지 좌 42% / 텍스트 우)
------------------------------------------------------------ */
.pcase-lumiin .arc-case-grid {
  grid-template-columns: 1fr 1fr;
  gap: clamp(18px, 2.5vw, 26px);
}
.pcase-lumiin .arc-case-grid--archive { margin-top: clamp(34px, 5vw, 50px); }

.pcase-lumiin .arc-case-card {
  display: grid;
  grid-template-columns: 112px 1fr;
  align-items: start;
  background: var(--lmc-paper);
  border: 1px solid var(--lmc-line);
  transition: transform .35s ease, box-shadow .35s ease;
}
.pcase-lumiin .arc-case-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(54, 40, 31, .12);
}
/* 이관 사례 이미지는 제목·라벨이 박힌 합성 포스터 패널이다.
   크게 틀면 카드 타이포와 이중 표기가 돼 "첨부 자료" 크기의 매트 슬립으로만 노출한다. */
.pcase-lumiin .arc-case-card__fig {
  margin: 20px 0 20px 20px;
  width: 112px;
  aspect-ratio: 1 / 1;
  height: auto;
  overflow: hidden;
  background: var(--lmc-cream); /* 이미지 없는 사례도 크림 판으로 붕괴 없이 */
  border: 1px solid var(--lmc-line);
  padding: 5px;
}
.pcase-lumiin .arc-case-card__fig img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: none;
  transition: none;
}
/* arc 의 이미지 줌 호버 무효화 — 호버는 카드 부상으로만 */
.pcase-lumiin .arc-case-card:hover .arc-case-card__fig img {
  transform: none;
  filter: none;
}

.pcase-lumiin .arc-case-card__body {
  padding: 20px 22px 18px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  min-width: 0;
}
.pcase-lumiin .arc-case-card__head {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.pcase-lumiin .arc-case-card__no {
  font-family: var(--lmc-ff-display);
  font-size: 13px;
  letter-spacing: .08em;
  color: var(--lmc-brand);
}
.pcase-lumiin .arc-case-card__tag {
  margin: 0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--lmc-body);
}
.pcase-lumiin .arc-case-card__meta {
  font-size: 12.5px;
  letter-spacing: .02em;
  color: var(--lmc-body);
}
.pcase-lumiin .arc-case-card__title {
  margin: 0;
  font-family: var(--lmc-ff-display);
  font-weight: 500;
  font-size: 18.5px;
  line-height: 1.42;
  letter-spacing: -.01em;
  color: var(--lmc-ink);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.pcase-lumiin .arc-case-card__lede {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  color: var(--lmc-body);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.pcase-lumiin .arc-case-card__cta {
  margin-top: auto;
  padding-top: 10px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .06em;
  color: var(--lmc-brand);
}
.pcase-lumiin .arc-case-card__cta .arrow {
  display: inline-block;
  transition: transform .25s ease;
}
.pcase-lumiin .arc-case-card:hover .arc-case-card__cta .arrow { transform: translateX(4px); }

/* ------------------------------------------------------------
   3. 상세 — 크림 헤더 밴드 (크럼 → 표제 → 4칸 스펙 스트립)
------------------------------------------------------------ */
.pcase-lumiin .arc-case { padding-top: 0; }

.pcase-lumiin .arc-case__crumb {
  max-width: 860px;
  margin: 0 auto;
  padding: clamp(22px, 3vw, 34px) 0 clamp(18px, 2.5vw, 26px);
  background: var(--lmc-cream);
  box-shadow: 0 0 0 100vmax var(--lmc-cream);
  clip-path: inset(0 -100vmax);
}

/* 2단 그리드 → 단일 컬럼 지면. __text 를 display:contents 로 풀어
   lead → facts → 갤러리 → 본문 → 코멘트 → 각주 순으로 재배열. */
.pcase-lumiin .arc-case2 {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 860px;
  margin: 0 auto;
  padding-bottom: clamp(44px, 6vw, 68px);
  counter-reset: fig;
}
.pcase-lumiin .arc-case2__text { display: contents; }

.pcase-lumiin .arc-case2__lead {
  order: 1;
  padding: clamp(6px, 1vw, 12px) 0 clamp(26px, 3.5vw, 36px);
  background: var(--lmc-cream);
  box-shadow: 0 0 0 100vmax var(--lmc-cream);
  clip-path: inset(0 -100vmax);
}

/* 케이스 번호 (lumiin 활성 시에만 출력되는 요소) — eyebrow 문법 */
.pcase-lumiin .arc-case__no {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  font-family: var(--lmc-ff-display);
  font-size: 14px;
  letter-spacing: .16em;
  color: var(--lmc-brand);
}
.pcase-lumiin .arc-case__no::before {
  content: "";
  width: 38px;
  height: 1px;
  background: var(--lmc-brand);
}

.pcase-lumiin .arc-case__title {
  margin: 0 0 14px;
  font-family: var(--lmc-ff-display);
  font-weight: 500;
  font-size: clamp(27px, 3.6vw, 42px);
  line-height: 1.28;
  letter-spacing: -.02em;
  word-break: keep-all;
}
.pcase-lumiin .arc-case__lede {
  margin: 0;
  max-width: 640px;
  font-size: clamp(15px, 1.6vw, 16.5px);
  line-height: 1.8;
  color: var(--lmc-body);
}

/* ── 4칸 스펙 스트립 (존재하는 필드만큼 2~4칸 자동) ── */
.pcase-lumiin .arc-case2 { align-items: stretch; }
.pcase-lumiin .arc-case__facts {
  order: 2;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 220px));
  justify-content: start;
  gap: 16px 28px;
  max-width: none;
  padding: 0 0 clamp(38px, 5vw, 54px);
  background: var(--lmc-cream);
  box-shadow: 0 0 0 100vmax var(--lmc-cream);
  clip-path: inset(0 -100vmax);
}
.pcase-lumiin .arc-case__facts > div {
  display: block;
  border-bottom: 0;
  border-top: 1px solid var(--lmc-line);
  padding: 14px 0 0;
}
.pcase-lumiin .arc-case__facts dt {
  margin: 0 0 7px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--lmc-brand);
}
.pcase-lumiin .arc-case__facts dd {
  margin: 0;
  text-align: left;
  font-size: 15px;
  font-weight: 500;
  color: var(--lmc-ink);
}
/* 시술·장비 링크 스택 — 템플릿 인라인 스타일(우측 정렬)을 좌측으로 */
.pcase-lumiin .arc-case__facts-dd-links { align-items: flex-start; }

/* 고민·시술·장비 링크: pill → 브랜드 밑줄 텍스트 링크 */
.pcase-lumiin .arc-case__concerntags {
  justify-content: flex-start;
  gap: 4px 14px;
}
.pcase-lumiin .arc-case__concerntags a {
  padding: 0 0 2px;
  border-radius: 0;
  background: none;
  font-size: 13.5px;
  color: var(--lmc-ink);
  border-bottom: 1px solid var(--lmc-brand);
  transition: color .15s ease;
}
.pcase-lumiin .arc-case__concerntags a:hover {
  background: none;
  color: var(--lmc-brand);
}

/* ------------------------------------------------------------
   4. 상세 — 단일 컬럼 지면 갤러리 (매트 프레임 + FIG 캡션)
------------------------------------------------------------ */
.pcase-lumiin .arc-case2__imgs {
  order: 3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(16px, 2.5vw, 24px);
  align-items: start;
  margin: clamp(32px, 4.5vw, 46px) 0 0;
}
.pcase-lumiin .arc-case2__img {
  margin: 0;
  overflow: visible;
  background: var(--lmc-paper);
  border: 1px solid var(--lmc-line);
  padding: 10px 10px 12px; /* passe-partout 매트 */
}
.pcase-lumiin .arc-case2__img--lead {
  grid-column: 1 / -1;
  width: 100%;
  /* 이관 자산이 자체 제목이 박힌 합성 포스터라 크게 틀수록 페이지 타이포와 이중 표기가 된다.
     "기록 대장에 붙인 자료" 크기로 절제 노출. */
  max-width: 480px;
  justify-self: center;
}
.pcase-lumiin .arc-case2__img img {
  display: block;
  width: 100%;
  height: auto; /* 원본 비율 유지 — 의료 이미지 크롭 없음 */
}
.pcase-lumiin .arc-case2__img::after {
  counter-increment: fig;
  content: "FIG. 0" counter(fig);
  display: block;
  margin-top: 10px;
  font-family: var(--lmc-ff-display);
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--lmc-brand);
}

/* ------------------------------------------------------------
   5. 상세 — 본문(measure 680) · 코코아 코멘트 · 각주
------------------------------------------------------------ */
.pcase-lumiin .arc-case__body {
  order: 4;
  width: 100%;
  max-width: 680px;
  margin: clamp(36px, 5vw, 52px) auto 0;
}
.pcase-lumiin .arc-case__body h2,
.pcase-lumiin .arc-case__body h3 {
  font-family: var(--lmc-ff-display);
  font-weight: 500;
}
.pcase-lumiin .arc-case__body p {
  font-size: 16px;
  line-height: 1.85;
  color: var(--lmc-ink);
}
.pcase-lumiin .arc-case__body img { border-radius: 0; }

/* 의료진 코멘트 — 코코아 다크 패널 (lumiin 활성 + 메타 존재 시에만 출력) */
.pcase-lumiin .arc-case__docnote {
  order: 5;
  width: 100%;
  max-width: 680px;
  margin: clamp(36px, 5vw, 52px) auto 0;
  padding: clamp(26px, 4vw, 38px) clamp(24px, 4vw, 42px) clamp(24px, 3.5vw, 32px);
  background: var(--lmc-cocoa);
  color: var(--lmc-cream);
}
.pcase-lumiin .arc-case__docnote::before {
  content: "\201C";
  display: block;
  margin: 0 0 10px;
  font-family: var(--lmc-ff-display);
  font-size: 36px;
  line-height: 1;
  color: rgba(246, 241, 235, .55);
}
.pcase-lumiin .arc-case__docnote p {
  margin: 0;
  font-family: var(--lmc-ff-display);
  font-size: clamp(16px, 2vw, 18px);
  line-height: 1.8;
  color: var(--lmc-cream);
  word-break: keep-all;
}
.pcase-lumiin .arc-case__docnote b {
  display: block;
  margin-top: 18px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(246, 241, 235, .6);
}

/* 각주 — mist 박스 → 테두리 없는 소형 각주 (상단 헤어라인만) */
.pcase-lumiin .arc-case__disclaimer {
  order: 6;
  width: 100%;
  max-width: 680px;
  margin: clamp(32px, 4.5vw, 44px) auto 0;
  padding: 16px 0 0;
  background: none;
  border-radius: 0;
  border-top: 1px solid var(--lmc-line);
  font-size: 12.5px;
  color: var(--lmc-body);
}

/* ------------------------------------------------------------
   6. 관련 사례 — 크림 밴드
------------------------------------------------------------ */
.pcase-lumiin .arc-case-related {
  margin-top: clamp(32px, 5vw, 56px);
  border-top: 0;
  background: var(--lmc-cream);
  padding: clamp(48px, 6.5vw, 72px) 0 clamp(56px, 7.5vw, 84px);
}
.pcase-lumiin .arc-case-related__h {
  margin: 12px 0 clamp(24px, 3.5vw, 34px);
  font-family: var(--lmc-ff-display);
  font-weight: 500;
  font-size: clamp(21px, 2.6vw, 28px);
  letter-spacing: -.015em;
}
.pcase-lumiin .arc-case-morelink { color: var(--lmc-brand); }

/* ------------------------------------------------------------
   7. 홈 베스트 슬라이더 — 색만 오버라이드
   cslider 규칙이 소비하는 로컬 변수 폴백(--mist/--brand/--deep)만 교체.
------------------------------------------------------------ */
.pcase-lumiin .arc-cslider {
  --mist: var(--lmc-cream);
  --brand: var(--lmc-brand);
  --deep: var(--lmc-ink);
}

/* ------------------------------------------------------------
   8. 반응형 — 1080 / 720
------------------------------------------------------------ */
@media (max-width: 1080px) {
  .pcase-lumiin .arc-case-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .pcase-lumiin .arc-case-card__title { font-size: 17.5px; }
}

@media (max-width: 720px) {
  .pcase-lumiin .arc-case-hero { padding: clamp(38px, 10vw, 56px) 0 24px; }
  .pcase-lumiin .arc-case-filter { gap: 0 20px; }
  .pcase-lumiin .arc-case-grid--archive { margin-top: 26px; }

  .pcase-lumiin .arc-case-card { grid-template-columns: 88px 1fr; }
  .pcase-lumiin .arc-case-card__fig { width: 88px; margin: 14px 0 14px 14px; }
  .pcase-lumiin .arc-case-card__body { padding: 14px 16px 12px; gap: 5px; }
  .pcase-lumiin .arc-case-card__title { font-size: 16px; }
  .pcase-lumiin .arc-case-card__lede { display: none; }
  .pcase-lumiin .arc-case-card__cta { padding-top: 6px; }

  .pcase-lumiin .arc-case2__imgs { grid-template-columns: 1fr; gap: 16px; }
  .pcase-lumiin .arc-case__facts { grid-template-columns: repeat(auto-fit, minmax(126px, 1fr)); gap: 14px 20px; }
  .pcase-lumiin .arc-case__docnote { padding: 22px 20px 20px; }

  /* 관련 사례 — 가로 스와이프 레일 */
  .pcase-lumiin .arc-case-related .arc-case-grid {
    display: flex;
    overflow-x: auto;
    gap: 14px;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .pcase-lumiin .arc-case-related .arc-case-card {
    flex: 0 0 84%;
    scroll-snap-align: start;
  }
}

/* ── 본문 문맥 이미지 (이관 사례의 case-fig) — 매트 프레임, FIG 번호 없음 ── */
.pcase-lumiin .arc-case__body .case-fig{
  margin:26px auto; max-width:640px;
  background:var(--lmc-paper,#fbfaf8); border:1px solid var(--lmc-line,#e2d9d2);
  padding:10px;
}
.pcase-lumiin .arc-case__body .case-fig img{
  width:100%; height:auto; display:block;
}
.pcase-lumiin .arc-case__body img{ max-width:100%; height:auto; }
@media (max-width:720px){
  .pcase-lumiin .arc-case__body .case-fig{ margin:18px auto; }
}
