/* =========================================================
   AX Lab 상세 팝업 (ai.html + js/ax-detail.js)
   색은 site.css 토큰(--bg·--fg·--sub·--mute·--card·--line·--chipl·--pt·--ptx) 사용
   구성도(SVG)는 어두운 화면 패널 안에 그림 — AX 데모 화면과 같은 방식
   ========================================================= */
.axd-lock,.axd-lock body{overflow:hidden}
/* 팝업: 사이트 위에 상자로 뜨고 뒤는 어둡게 (매체·레퍼런스 팝업과 같은 방식) */
.axd-pop{--axp:36px;position:fixed;inset:0;z-index:320;display:grid;place-items:center;padding:32px;color:var(--fg);opacity:0;transition:opacity .25s var(--ease)}
.axd-pop.open{opacity:1}
.axd-pop[hidden]{display:none}
.axd-dim{position:absolute;inset:0;background:rgba(28,24,19,.55)}
.axd-box{position:relative;display:flex;flex-direction:column;width:min(1200px,100%);height:min(880px,100%);border-radius:20px;overflow:hidden;background:var(--bg);box-shadow:0 30px 80px rgba(0,0,0,.28);transform:translateY(16px);transition:transform .4s var(--ease)}
.axd-pop.open .axd-box{transform:none}

/* 위: 솔루션 탭 */
.axd-top{display:flex;align-items:center;gap:24px;padding:0 var(--axp);height:76px;border-bottom:1px solid var(--line);flex:none}
.axd-brand{flex:none;font:800 14px/1 var(--en);letter-spacing:.14em;color:var(--ptx)}
.axd-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.axd-tabs::-webkit-scrollbar{display:none}
.axd-tabs button{flex:none;height:40px;padding:0 18px;border-radius:999px;border:1px solid var(--chipl);font:700 14px/1 var(--kr);color:var(--sub);white-space:nowrap;transition:background .25s,color .25s,border-color .25s}
.axd-tabs button:hover{color:var(--fg);border-color:var(--fg)}
.axd-tabs button[aria-selected="true"]{background:var(--fg);border-color:var(--fg);color:var(--bg)}
.axd-x{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--chipl);font-size:24px;line-height:1;color:var(--fg)}
.axd-x:hover{border-color:var(--fg)}

/* 쪽 이동: 이전 · 쪽 이름 · 다음 · 진행 막대 */
.axd-nav{position:relative;display:flex;align-items:center;gap:10px;padding:14px var(--axp);flex:none}
.axd-pagesteps{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:0;padding:0;list-style:none;flex:1;min-width:0}
.axd-pagesteps::-webkit-scrollbar{display:none}
.axd-pagesteps button{height:32px;padding:0 12px;border-radius:8px;font:500 13px/1 var(--kr);color:var(--mute);white-space:nowrap}
.axd-pagesteps button:hover{color:var(--fg)}
.axd-pagesteps button[aria-current="step"]{background:var(--card);color:var(--fg);font-weight:700}
.axd-arrow{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--chipl);font:700 15px/1 var(--en);color:var(--fg)}
.axd-arrow:disabled{opacity:.3;cursor:default}
.axd-bar{position:absolute;left:var(--axp);right:var(--axp);bottom:0;height:2px;background:var(--line);overflow:hidden}
.axd-bar i{position:absolute;inset:0;background:var(--pt);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}

/* 본문 — PC: 쪽을 가로로 넘김 */
.axd-body{flex:1;min-height:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;outline:0}
.axd-body::-webkit-scrollbar{display:none}
.axd-item{display:contents}
.axd-page{flex:0 0 100%;scroll-snap-align:start;overflow-y:auto;padding:36px max(var(--axp),calc((100% - 1000px) / 2)) 56px}
/* 모바일: 쪽을 세로로 이어서 */
.axd-pop.is-mobile .axd-body{display:block;overflow-x:hidden;overflow-y:auto;scroll-snap-type:none}
.axd-pop.is-mobile .axd-page{overflow:visible;padding:28px var(--axp) 8px}
.axd-pop.is-mobile .axd-page+.axd-page{border-top:1px solid var(--line)}
.axd-pop.is-mobile .axd-page:last-child{padding-bottom:64px}
.axd-pop.is-mobile .axd-arrow{display:none}

/* 글 */
.axd-head{margin-bottom:28px}
.axd-kicker{font:700 13px/1 var(--en);letter-spacing:.14em;color:var(--ptx)}
.axd-head h2{margin-top:14px;font:700 clamp(28px,3.2vw,44px)/1.25 var(--kr-h);letter-spacing:-.02em}
.axd-lead{margin-top:14px;max-width:760px;color:var(--sub);font-size:20px;line-height:1.7}
.axd-page h3{margin:0 0 14px;font:700 clamp(21px,2vw,28px)/1.35 var(--kr-h);letter-spacing:-.01em}
.axd-page h3:not(:first-child){margin-top:40px}
.axd-plead{margin:-4px 0 24px;color:var(--sub);font-size:16px;line-height:1.7}
.axd-note{margin-top:18px;color:var(--sub);font-size:14px;line-height:1.7}
.axd-dots{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.axd-dots li{position:relative;padding-left:18px;color:var(--sub);font-size:16px;line-height:1.7}
.axd-dots li::before{content:'';position:absolute;left:0;top:.7em;width:7px;height:7px;border-radius:50%;background:var(--pt)}
.axd-dots strong{color:var(--fg);margin-right:6px}
.axd-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}
.axd-tags li{padding:7px 14px;border-radius:999px;border:1px solid var(--chipl);font:500 14px/1.3 var(--kr);color:var(--sub)}
.axd-badge{display:inline-block;margin-left:8px;padding:5px 10px;border-radius:999px;border:1px solid var(--ptx);font:700 12px/1 var(--kr);color:var(--ptx);vertical-align:4px}

/* 단계 */
.axd-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0;padding:0;list-style:none}
.axd-steps.s6{grid-template-columns:repeat(3,1fr)}
.axd-steps li{padding:22px 22px 24px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.axd-steps em{font:800 13px/1 var(--en);font-style:normal;color:var(--ptx)}
.axd-steps strong{display:block;margin-top:12px;font:700 17px/1.35 var(--kr)}
.axd-steps p{margin-top:8px;color:var(--sub);font-size:14.5px;line-height:1.65}

/* 카드형 설명 */
.axd-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.axd-cards.c3{grid-template-columns:repeat(3,1fr)}
.axd-cards>div{padding:24px 24px 26px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.axd-cards strong{display:block;font:700 18px/1.35 var(--kr)}
.axd-cards p{margin-top:8px;color:var(--sub);font-size:15px;line-height:1.65}
.axd-store{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px!important}
.axd-store a{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:999px;background:var(--fg);color:var(--bg);font:700 13px/1 var(--en)}
.axd-store a:hover{background:var(--ptx)}

/* 표 */
.axd-table{width:100%;border-collapse:collapse;font-size:15px}
.axd-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.axd-table th,.axd-table td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;line-height:1.55}
.axd-table thead th{font:700 14px/1.3 var(--kr);color:var(--mute);border-bottom:2px solid var(--fg)}
.axd-table tbody th{width:18%;font-weight:700}
.axd-table td{color:var(--sub)}

/* 그림 */
.axd-visual{margin:4px 0 32px}
.axd-phones{display:flex;justify-content:center;gap:28px;padding:32px;border-radius:20px;background:var(--card)}
.axd-phones figure{margin:0;width:min(220px,40%);text-align:center}
.axd-phones img{width:100%;border-radius:22px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.axd-phones figcaption{margin-top:12px;font:700 13px/1 var(--en);letter-spacing:.06em;color:var(--mute)}
.axd-shot{position:relative;border-radius:18px;overflow:hidden;background:#111;box-shadow:0 18px 50px rgba(0,0,0,.14)}
.axd-shot img{width:100%}
.axd-chip{position:absolute;left:16px;top:16px;padding:8px 12px;border-radius:8px;background:rgba(17,17,17,.82);color:#fff;font:500 13px/1.2 var(--kr)}
.axd-chip em{font-style:normal;font-weight:800;color:var(--pt);margin-right:8px}
.axd-chat{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:28px;align-items:center}
.axd-chatshot img{width:100%;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.axd-callout{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.axd-callout li{padding:20px 22px;border-radius:14px;background:var(--card);border:1px solid var(--line);font-size:15px;line-height:1.7;color:var(--sub)}
.axd-callout em{display:block;margin-bottom:4px;font:700 14px/1.4 var(--kr);font-style:normal;color:var(--ptx)}
.axd-carlog{position:relative;display:grid;grid-template-columns:1fr 200px;gap:24px;align-items:center;padding:28px;border-radius:20px;background:var(--card)}
.axd-carlog img{width:100%;border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.14)}
.axd-carlog .phone img{border-radius:22px}

/* 분석 결과 */
.axd-frames{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 20px;padding:0;list-style:none}
.axd-frames img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#111}
.axd-frames span{display:block;margin-top:8px;font-size:14px;color:var(--sub)}
.axd-frames em{font-style:normal;font-weight:800;color:var(--ptx);margin-right:8px;font-family:var(--en)}
.axd-result{padding:24px 26px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.axd-result-t{font:700 15px/1 var(--kr);color:var(--ptx)}
.axd-result dl{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 28px;margin:16px 0 0}
.axd-result dl>div.full{grid-column:1/-1}
.axd-result dt{font-size:13px;color:var(--mute)}
.axd-result dd{margin:4px 0 0;font-size:15px;line-height:1.6}
.axd-result dd span{color:var(--mute)}

/* 구성도: 어두운 화면 패널 */
.axd-diagram{margin:4px 0 28px;padding:24px;border-radius:20px;background:#141414}
.axd-diagram svg{display:block;width:100%;max-width:760px;height:auto;margin:0 auto}
.axd-diagram text{fill:#fff;font-family:var(--kr)}
.axd-diagram .t-xs{font-size:12px}.axd-diagram .t-s{font-size:14px}.axd-diagram .t-m{font-size:17px;font-weight:700}
.axd-diagram .t-dim{fill:rgba(255,255,255,.55)}.axd-diagram .t-accent{fill:#FF7A52}
.axd-diagram .t-dark{fill:#141414;font-weight:700}.axd-diagram .t-block{fill:#ff6b6b;font-weight:700}
.axd-diagram .ln rect,.axd-diagram .ln-box{fill:rgba(255,255,255,.04);stroke:rgba(255,255,255,.28);stroke-width:1.5}
.axd-diagram .ln-thin,.axd-diagram .ln-thin *{fill:none;stroke:rgba(255,255,255,.3);stroke-width:1.5}
.axd-diagram .ln-dim path{fill:none;stroke:rgba(255,255,255,.35);stroke-width:2}
.axd-diagram .card-accent{fill:rgba(255,91,46,.1);stroke:#FF5B2E;stroke-width:1.5}
.axd-diagram .fill-accent{fill:#FF5B2E}
.axd-diagram .arrow,.axd-diagram .arrow-both{fill:none;stroke:#FF5B2E;stroke-width:2;marker-end:url(#axdArrow)}
.axd-diagram .arrow-both{marker-start:url(#axdArrow)}
.axd-diagram .zone{fill:rgba(255,91,46,.06);stroke:#FF5B2E;stroke-width:2;stroke-dasharray:8 6}
.axd-diagram .blocked-line{stroke:rgba(255,255,255,.3);stroke-width:2;stroke-dasharray:6 6}
.axd-diagram .block-mark circle{fill:#141414;stroke:#ff6b6b;stroke-width:2.5}
.axd-diagram .block-mark path{stroke:#ff6b6b;stroke-width:3;stroke-linecap:round}
.axd-diagram .frame{fill:#1d1d1d;stroke:rgba(255,255,255,.2);stroke-width:1.5}
.axd-diagram .zone-hatch{fill:rgba(255,255,255,.08);stroke:rgba(255,255,255,.3);stroke-dasharray:4 4}
.axd-diagram .road{fill:rgba(255,255,255,.05)}
.axd-diagram .lane{stroke:rgba(255,255,255,.35);stroke-width:2}
.axd-diagram .hatch path{stroke:rgba(255,255,255,.35);stroke-width:1.5}
.axd-diagram .car{fill:#4a4a4a}
.axd-diagram .bbox{fill:none;stroke:#FF5B2E;stroke-width:2.5}
.axd-diagram .bar-bg{fill:rgba(255,255,255,.15)}

/* 갤러리 + 크게 보기 */
.axd-gal-t{margin:26px 0 12px;font:700 16px/1 var(--kr)}
.axd-gal-t:first-child{margin-top:0}
.axd-gal-t span{margin-left:6px;font:700 12px/1 var(--en);letter-spacing:.06em;color:var(--mute)}
.axd-gal ul{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:0;padding:0;list-style:none}
.axd-gal button{display:block;width:100%;border-radius:14px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease)}
.axd-gal button:hover{transform:translateY(-3px)}
.axd-gal img{width:100%;aspect-ratio:9/19;object-fit:cover;object-position:top}
.axd-gal li>span{display:block;margin-top:8px;font-size:13px;line-height:1.45;color:var(--sub)}
.axd-lightbox{position:absolute;inset:0;z-index:5;border-radius:inherit;display:grid;place-items:center;padding:56px 24px 24px;background:rgba(20,18,15,.88);cursor:zoom-out}
.axd-lightbox[hidden]{display:none}
.axd-lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:16px}
.axd-lightbox button{position:absolute;right:20px;top:14px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:24px}

/* 상담 */
.axd-consult{margin-top:44px;padding:32px 34px;border-radius:20px;background:var(--fg);color:var(--bg)}
.axd-consult-copy{font:700 clamp(20px,2vw,26px)/1.4 var(--kr)}
.axd-consult-copy em{font-style:normal;color:var(--pt)}
.axd-consult-sub{margin-top:8px;font-size:15px;line-height:1.6;opacity:.75}
.axd-consult .btn{margin-top:22px}

@media (max-width:1024px){
  .axd-steps,.axd-steps.s6{grid-template-columns:repeat(2,1fr)}
  .axd-gal ul{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:900px){
  .axd-pop{--axp:20px;padding:0;place-items:end stretch}
  .axd-box{width:100%;height:94svh;border-radius:20px 20px 0 0}
  .axd-top{height:64px;gap:12px}
  .axd-brand{display:none}
  .axd-tabs button{height:36px;padding:0 14px;font-size:13px}
  .axd-nav{padding:10px var(--pad)}
  .axd-head h2{font-size:26px}
  .axd-lead{font-size:15px}
  .axd-cards,.axd-cards.c3,.axd-steps,.axd-steps.s6,.axd-result dl{grid-template-columns:1fr}
  .axd-frames{grid-template-columns:1fr}
  .axd-chat{grid-template-columns:1fr}
  .axd-chatshot img{max-width:340px;margin:0 auto;display:block}
  .axd-carlog{grid-template-columns:1fr 34%;padding:16px;gap:12px}
  .axd-phones{gap:14px;padding:20px}
  .axd-gal ul{grid-template-columns:repeat(2,1fr)}
  .axd-diagram{padding:12px;border-radius:14px}
  .axd-table th,.axd-table td{padding:12px 10px;font-size:14px}
  .axd-consult{padding:24px 22px}
}
@media (prefers-reduced-motion:reduce){
  .axd-pop,.axd-box,.axd-bar i{transition:none}
}

/* [사이트 공통 맞춤 2026-10-08] 노치·홈 인디케이터 안전 여백 — 매체·레퍼런스 팝업과 같은 기준 */
@media (max-width:900px){
  .axd-pop{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .axd-box{padding-bottom:env(safe-area-inset-bottom)}
}

/* [사이트 공통 맞춤 2026-10-08] PC 17px → 16px (901px 이상) */
@media (min-width:901px){
  .axd-steps strong{font-size:16px}
}

/* [사이트 공통 맞춤 2026-10-08] 글꼴·크기를 다른 서브페이지 상세 팝업(site.css .md-*)과 통일
   꼬리표 12px · 제목 Pretendard(한글 제목 .md-title-kr 기준) · 소개 16px · 목록·설명 14.5px */
.axd-kicker{font:800 12px/1 var(--en);letter-spacing:.14em}
.axd-head h2{margin-top:12px;font:700 clamp(24px,2.4vw,32px)/1.3 var(--kr);letter-spacing:-.02em}
.axd-lead{margin-top:16px;font-size:16px;line-height:1.7}
.axd-page h3{font:700 clamp(18px,1.6vw,21px)/1.4 var(--kr);letter-spacing:-.01em}
.axd-plead{font-size:16px;line-height:1.7}
.axd-dots{gap:8px}
.axd-dots li{padding-left:16px;font-size:14.5px;line-height:1.6}
.axd-dots li::before{top:.62em;width:6px;height:6px}
.axd-steps strong{font-size:16px}
.axd-cards strong{font-size:16px}
.axd-cards p{font-size:14.5px}
.axd-callout li{font-size:14.5px}
.axd-result dd{font-size:14.5px}
.axd-table{font-size:14.5px}
@media (max-width:900px){
  .axd-head h2{font-size:24px}
  .axd-lead{font-size:16px}
  .axd-table th,.axd-table td{font-size:14px}
}

/* [사이트 공통 맞춤 2026-10-12] 모바일 터치 영역 44px (F07) — 보이는 모양은 그대로, 누르는 영역만 위아래로 넓힘 */
@media (max-width:900px){
  .axd-tabs{padding:4px 0}
  .axd-tabs button{position:relative}
  .axd-tabs button::after{content:'';position:absolute;left:0;right:0;top:-4px;bottom:-4px}
  .axd-nav{padding-top:4px;padding-bottom:4px}
  .axd-pagesteps{padding:6px 0}
  .axd-pagesteps button{position:relative}
  .axd-pagesteps button::after{content:'';position:absolute;left:0;right:0;top:-6px;bottom:-6px}
}
