/* ══════════════════════════════════════════════════
   법적고지 전용 (page-privacy.php)
   ※ 공통(토큰/nav/CTA/footer)은 style.css
   ※ 이 페이지는 히어로 대신 페이지 헤더 + 탭 구조
══════════════════════════════════════════════════ */

/* 원본 변수명 → 테마 토큰 매핑 */
:root{
  --primary:var(--navy-700);
  --primary-hover:var(--navy-600);
  --primary-dark:var(--navy-800);
  --text-main:var(--ink);
  --border-card:var(--border);
  --border-light:#eeeff1;
  --bg-light:var(--bg-soft);
}

/* ── PAGE HEADER ── */
.page-header{
  width:100%;
  background:var(--bg-hero);
  border-bottom:1px solid var(--border-card);
  padding:calc(40px + var(--nav-h)) var(--px) 48px;
  position:relative;
}
.page-header-inner{position:relative;z-index:1;max-width:var(--max);margin:0 auto;}
.page-breadcrumb{
  display:flex;align-items:center;gap:6px;
  font-size:13px;color:var(--text-light);margin-bottom:16px;
}
.page-breadcrumb a{color:var(--text-light);text-decoration:none;transition:color .15s;}
.page-breadcrumb a:hover{color:var(--primary);}
.page-breadcrumb span{color:#c4ccd6;}
.page-breadcrumb .current{color:var(--text-sub);}
.page-header h1{
  font-size:clamp(22px,3.5vw,36px);font-weight:800;color:var(--text-main);
  letter-spacing:-.5px;margin-bottom:10px;
}
.page-header p{font-size:14px;color:var(--text-sub);line-height:1.75;}

/* ── 탭 ── */
.tab-wrap{
  position:sticky;top:var(--nav-h);z-index:200;
  background:#fff;
  border-bottom:1px solid var(--border-light);
  box-shadow:0 2px 12px rgba(20,31,54,.05);
}
body.admin-bar .tab-wrap{top:calc(var(--nav-h) + 32px);}
@media(max-width:782px){ body.admin-bar .tab-wrap{top:calc(var(--nav-h) + 46px);} }
.tab-inner{
  max-width:var(--max);margin:0 auto;
  padding:0 var(--px);
  display:flex;gap:0;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.tab-inner::-webkit-scrollbar{display:none;}
.tab-btn{
  flex-shrink:0;
  padding:18px 24px;
  font-size:14px;font-weight:600;
  color:var(--text-light);
  background:none;border:none;cursor:pointer;
  border-bottom:2.5px solid transparent;
  transition:color .2s,border-color .2s;
  white-space:nowrap;
  position:relative;
  letter-spacing:-.2px;
  font-family:inherit;
}
.tab-btn:hover{color:var(--text-main);}
.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);}

/* ── 콘텐츠 ── */
.legal-content{
  max-width:var(--max);margin:0 auto;
  padding:52px var(--px) 80px;
}
.tab-panel{display:none;}
.tab-panel.active{display:block;}

.legal-doc .doc-meta{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  padding:16px 20px;
  background:var(--bg-light);border:1px solid var(--border-card);
  border-radius:12px;margin-bottom:40px;
  font-size:13px;color:var(--text-light);
}
.legal-doc .doc-meta strong{color:var(--primary);font-weight:700;}
.doc-meta-dot{
  width:4px;height:4px;background:var(--border-card);
  border-radius:50%;flex-shrink:0;
}

.legal-doc h2{
  font-size:clamp(18px,2.2vw,22px);font-weight:800;
  color:var(--text-main);letter-spacing:-.5px;
  margin-bottom:6px;
}
.legal-doc .lead{
  font-size:14px;color:var(--text-sub);line-height:1.8;
  margin-bottom:36px;padding-bottom:28px;
  border-bottom:1px solid var(--border-light);
}

.legal-section{margin-bottom:36px;}
.legal-section:last-child{margin-bottom:0;}
.legal-section h3{
  font-size:15px;font-weight:700;color:var(--primary-dark);
  margin-bottom:12px;line-height:1.5;
  display:flex;align-items:flex-start;gap:0;
}
.legal-section h3 .num-wrap{
  display:inline-flex;align-items:center;justify-content:center;
  width:26px;height:26px;min-width:26px;
  background:var(--primary);color:#fff;
  border-radius:6px;font-size:12px;font-weight:700;
  margin-right:10px;margin-top:1px;
}
.legal-section p,
.legal-section li{
  font-size:14px;color:var(--text-sub);line-height:1.9;
}
.legal-section ul,
.legal-section ol{
  padding-left:20px;
  display:flex;flex-direction:column;gap:6px;
}
.legal-section ul li{list-style:disc;}
.legal-section ol li{list-style:decimal;}
.legal-section .note{margin-top:12px;font-size:13px;color:var(--text-light);}

.legal-section .indent-table{
  width:100%;border-collapse:collapse;
  font-size:13px;color:var(--text-sub);
  margin-top:12px;border-radius:10px;overflow:hidden;
  border:1px solid var(--border-card);
  background:#fff;
}
.legal-section .indent-table th{
  background:var(--bg-light);font-weight:700;
  color:var(--primary-dark);font-size:13px;
  padding:11px 16px;text-align:left;
  border-bottom:1px solid var(--border-card);
}
.legal-section .indent-table td{
  padding:10px 16px;
  border-bottom:1px solid var(--border-light);
  line-height:1.75;vertical-align:top;
}
.legal-section .indent-table tr:last-child td{border-bottom:none;}

/* 면책 강조 박스 */
.disclaimer-box{
  background:#fdfaf1;border:1px solid #eadfc0;
  border-radius:12px;padding:20px 22px;
  margin-bottom:28px;
}
.disclaimer-box .dbox-label{
  display:flex;align-items:center;gap:8px;
  font-size:13px;font-weight:700;color:#8a5a23;
  margin-bottom:8px;
}
.disclaimer-box p{font-size:13px;color:#6b5638;line-height:1.85;}

/* 이메일 수집거부 박스 */
.email-refuse-box{
  background:var(--primary-dark);
  border-radius:16px;padding:32px 28px;
  margin-bottom:36px;text-align:center;
}
.email-refuse-box .refuse-icon{
  width:56px;height:56px;margin:0 auto 14px;
  background:rgba(255,255,255,.1);border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  color:#fff;
}
.email-refuse-box .refuse-icon svg{width:28px;height:28px;}
.email-refuse-box h3{
  font-size:17px;font-weight:800;color:#fff;
  margin-bottom:10px;letter-spacing:-.3px;
}
.email-refuse-box p{font-size:13px;color:rgba(255,255,255,.75);line-height:1.85;}
.email-refuse-box .refuse-badge{
  display:inline-block;
  background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);
  color:#fff;font-size:12px;font-weight:700;
  padding:5px 14px;border-radius:20px;
  margin-top:14px;letter-spacing:.3px;
}

.section-divider{border:none;border-top:1px solid var(--border-light);margin:36px 0;}

/* ── 반응형 ── */
@media(max-width:768px){
  .page-header{padding:calc(32px + var(--nav-h-mb)) var(--px-mb) 40px;}
  .tab-wrap{top:var(--nav-h-mb);}
  .tab-inner{padding:0 var(--px-mb);}
  .tab-btn{padding:16px 18px;font-size:13px;}
  .legal-content{padding:32px var(--px-mb) 52px;}
  .legal-doc .doc-meta{gap:10px;padding:14px 16px;}
  .legal-section .indent-table{font-size:12px;}
  .legal-section .indent-table th,
  .legal-section .indent-table td{padding:9px 12px;}
  .email-refuse-box{padding:24px 20px;}

  /* 표는 가로 스크롤 */
  .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .table-scroll .indent-table{min-width:480px;}
}
@media(max-width:360px){
  .tab-btn{padding:14px 14px;font-size:12px;}
  .email-refuse-box h3{font-size:15px;}
}
