/* ========================================================================== */
/* 0) DESIGN TOKENS — colors & type (border/radius는 숫자값 사용)               */
/* ========================================================================== */
:root{
    /* Page width */
    --page-min: 300px;
    --page-max: 500px;
    --gnb-min-height: 140px;
  
    /* Brand */
    --primary-500: #2299FA;
    --primary-400: #7cc2ff;
    --primary-300: #a8d7ff;
    --primary-200: #cde8ff;
    --primary-100: #e6f4ff;
  
    --secondary-700: #6b3fa7;
    --secondary-500: #8b5cf6;
    --secondary-300: #c4a8ff;
    --secondary-100: #efe7ff;
  
    /* Grays (guide) */
    --gray-900:#0b0f14;
    --gray-800:#1a242f;
    --gray-700:#2b3947;
    --gray-600:#3c4d5f;
    --gray-500:#536579;
    --gray-400:#7d8fa3;
    --gray-300:#a7b4c1;
    --gray-200:#e8edf2;
    --gray-100:#f6f8fa;
    --gray-50:#AEB3BE;
  
    /* Surface */
    --bg-app:#FFFFFF;
    --bg-muted:#F7F9FB;
  
    /* Typography scale (guide pt 그대로) */
    --fs-h1: 1.5rem;    /* 24px */
    --fs-h2: 1.25rem;   /* 20px */
    --fs-h3: 1.125rem;  /* 18px */
    --fs-b1: 1rem;      /* 16px */
    --fs-b2: 0.875rem;  /* 14px */
    --fs-b3: 0.8125rem;  /* 13px */
    --fs-b4: 0.9375rem;  /* 15px */
    --fs-cap1: 0.75rem; /* 12px */
  
    --lh-tight: 1.15;
    --lh-head:  1.25;
    --lh-body:  1.45; 
  
    --fw-bold:   700;
    --fw-medium: 500;
    --fw-light:  300; 
  }
  
  /* ========================================================================== */
  /* 1) RESET / BASE                                                             */
  /* ========================================================================== */
  *{box-sizing:border-box;margin:0;padding:0}
  html,body{height:100%}
  body{
    font-family:"Pretendard","Pretendard Variable",system-ui,-apple-system,sans-serif;
    background:var(--bg-app);
    max-width:var(--page-max);
    min-width:var(--page-min);
    margin:0 auto;
    overflow-x:hidden;
    line-height:1.35;
  }
  a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
  
  /* 배경 흰색 (가이드 토큰 반영) */
  .bg{
    padding-bottom: calc(var(--cta-h, 0px) + env(safe-area-inset-bottom, 0px));
    max-width:var(--page-max);
    min-width:var(--page-min);
    margin:0 auto;
    background-color: var(--bg-app);
  }
  
  
  /* ========================================================================== */
  /* 2) UTILITIES — type                                              */
  /* ========================================================================== */
  .h1{font-size:var(--fs-h1);line-height:var(--lh-head);font-weight:var(--fw-bold)}
  .h2{font-size:var(--fs-h2);line-height:var(--lh-head);font-weight:var(--fw-bold)}
  .h3{font-size:var(--fs-h3);line-height:var(--lh-head);font-weight:var(--fw-bold)}
  
  .body1-b{font-size:var(--fs-b1);line-height:var(--lh-body);font-weight:var(--fw-bold)}
  .body1-m{font-size:var(--fs-b1);line-height:var(--lh-body);font-weight:var(--fw-medium)}
  .body1-l{font-size:var(--fs-b1);line-height:var(--lh-body);font-weight:var(--fw-light)}
  
  .body2-b{font-size:var(--fs-b2);line-height:var(--lh-body);font-weight:var(--fw-bold)}
  .body2-m{font-size:var(--fs-b1);line-height:var(--lh-body);font-weight:var(--fw-medium)}
  .body2-l{font-size:var(--fs-b2);line-height:var(--lh-body);font-weight:var(--fw-light)}
  .body2-2{font-size:var(--fs-b3);line-height:var(--lh-body);font-weight:var(--fw-medium)}
  .body2-3{font-size:var(--fs-b4);line-height:var(--lh-body);font-weight:var(--fw-bold)}
  
  .cap1-b{font-size:var(--fs-cap1);line-height:var(--lh-tight);font-weight:var(--fw-bold)}
  .cap1-m{font-size:var(--fs-cap1);line-height:var(--lh-tight);font-weight:var(--fw-medium)}
  .cap1-l{font-size:var(--fs-cap1);line-height:var(--lh-tight);font-weight:var(--fw-light)}
  
  /* ========================================================================== */
  /* 3) COMPONENTS                                                               */
  /* ========================================================================== */
  
  /* Header */
  .sub-header{
    position:sticky; top:0; z-index:10; height:52px;
    padding:10px 20px; background:#fff;
    display:flex; align-items:center;
  }
  .hdr-back{
    padding:0;border:0;background:transparent;cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center
  }
  .hdr-back img{width:24px;height:24px;display:block}
  .hdr-title{
    flex:1;text-align:center;
    color:var(--gray-900);
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis
  }
  .hdr-spacer{width:24px}
  
  /* ===== Chips (메타 정보) ===== */
.chips{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:20px;
    align-items:flex-start;      /* 칩을 텍스트 길이만큼만 */
  }
  .chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    border-radius:136px;
    background:var(--gray-100);
    color:var(--gray-400);
    font-weight:var(--fw-medium);
    width:auto;                  /* 혹시 모를 확장 방지 */
    max-width:max-content;       /* 글자만큼만 */
	font-size:14px;
  }
  
  /* ===== 약관 타이틀/본문 ===== */
  .term__title{color:var(--primary-500); margin-bottom:20px;}
  .table-wrap{padding:20px; display:flex; flex-direction:column; gap:40px;}
  
  /* ===== 리스트: 구분점(bullet) padding 안쪽으로 ===== */
  .term__body ul{
    list-style: disc inside;     /* ← 핵심: bullet을 컨텐츠 박스 내부로 */
    padding-left: 0;             /* 기본 들여쓰기 제거 */
    margin-left: 0;              /* 외부 여백 제거 */
	font-size:14px;

  }
  .term__body li + li{ margin-top:6px; }

 .term__body {
	font-size:14px;

  }
  /* ===== key-value 행 (인라인 스타일 제거한 섹션 2) ===== */
  .kv-row{
    display:flex;
    gap:20px;
    margin-bottom:10px;
    align-items:flex-start;
  }
  .kv-key{
    width:88px;                  /* 모바일 가독성 고려해 살짝 여유 */
    font-weight:600;
    font-size:14px;
    color:var(--gray-900);
    line-height:var(--lh-body);
    flex-shrink:0;
  }
  .kv-val{
    font-size:14px;
    color:var(--gray-900);
    line-height:var(--lh-body);
    word-break:keep-all;
  }
  
  /* ===== 테이블 ===== */
  table{width:100%; border-collapse:collapse;}
  th, td{
    border:1px solid var(--gray-200);
    padding:8px 6px;
    font-size:14px;
    font-weight:400;
    color:var(--gray-900);
    vertical-align: middle;
	
  }
  .t5-third-party,.t6-entrust td {text-align:center} 
  th{ background:var(--gray-100); text-align:center; }

  a.link{color:var(--primary-500);text-decoration:none}
  
  p{padding-bottom: 20px;}

  /* 11. 개인정보 보호책임자 표 정렬 */
.t11-dpo .term__table {
    table-layout: fixed;          /* 칼럼 너비 안정화 */
    width: 100%;
  }
  .t11-dpo .term__table th,
  .t11-dpo .term__table td{
    vertical-align: middle;       /* 세로 가운데 */
    padding: 10px 12px;
  }
  
  /* 왼쪽 컬럼(th)은 왼쪽 정렬 */
  .t11-dpo .term__table th{
    text-align: center;
    width: 30%;
  }
  
  /* 오른쪽 컬럼(td)은 오른쪽 정렬 */
  .t11-dpo .term__table td{
    text-align: center;
  }
  
  
  /* ===== Footer ===== */
  .footer{ color:var(--gray-500); padding:20px; }
  .footer .chips{ margin-top:6px; padding:0; } /* 인라인 제거 대응 */
  
  