/* astra.css — 승인된 Astra 디자인 프레젠테이션 셸.
   generate.py가 모든 계산기/랜딩 페이지 <head>에 experience.css 다음으로 주입한다.
   여기서는 시각 오버라이드만 한다 — 계산 엔진 DOM 계약·데이터·SEO 메타는 건드리지 않는다.
   기준: design-reference/approved.html(사용자 승인 원본) — 흰 헤더/인트로, 옅은 회색 본문,
   흰 얇은 보더 카드(radius 18-22), 토스블루 포인트. */

body{background:#f6f7f9}
header{background:#fff}

/* 브랜드: 저장한 계산 페이지의 가벼운 워드마크를 모든 헤더에 통일. */
.site-header .brand{font-family:-apple-system,BlinkMacSystemFont,system-ui,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-weight:400;line-height:1.6;color:#192638;-webkit-font-smoothing:auto}
.brand .dot{display:inline-block;width:6px;height:6px;margin-left:4px;border-radius:50%;background:#3182F6;vertical-align:middle}

/* 홈 인트로 밴드 — approved.html 기준: 헤더와 이어진 흰 밴드(모바일)
   / 여백 있는 흰 카드(데스크톱). 좌우 내부 패딩 필수(텍스트가 보더에 붙는 버그 수정). */
.wt-home-hero{background:#fff}
@media(min-width:761px){
  .wt-home-hero{border:1px solid #E5E8EB;border-radius:22px;padding:40px 36px}
}
@media(max-width:760px){
  .wt-home-hero{
    margin:-12px -20px 0;
    padding:24px 20px 26px;
    border:0;
    border-bottom:1px solid #E5E8EB;
  }
  .wt-home-hero h1{font-size:28px;line-height:1.35;font-weight:750;color:#202832}
  .wt-home-hero .wt-eyebrow{color:#626e7d}
  .field input{font-size:16px}
}

/* 홈 첫 카드(물타기) = 1순위 진입점으로 시각 강조. 나머지는 그대로 절제된 카드 유지 */
.wt-cards a:first-child{border-color:#3182F6;background:#F5F9FF}
.wt-cards a:first-child .wt-icon{background:#3182F6;color:#fff}
.wt-cards a:first-child h3{font-size:19px}
.wt-cards a:first-child::before{content:'대표 계산기';display:block;font-size:11px;font-weight:700;color:#3182F6;margin-bottom:8px}

/* 데스크톱 홈 미리보기 일러스트 — 회전·진한 파란 배경 제거, 얇은 보더의 절제된 블록으로 */
.wt-preview{background:#fff;border:1px solid #E5E8EB;transform:none;border-radius:22px}
.wt-preview-inner{box-shadow:none;border:1px solid #E5E8EB}

/* 하단 내비게이션 (모바일 전용) — 데스크톱은 상단 site-nav 유지, 접근 가능한 내비 중복 방지 */
.bottom-nav{display:none}
.bottom-nav a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;color:#646D79;font-size:11px;font-weight:650;text-decoration:none}
.bottom-nav a[aria-current="page"]{color:#3182F6}
.bottom-nav a span{line-height:1}
.bottom-nav svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:760px){
  .site-nav{display:none}
  .bottom-nav{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;
    background:#fff;border-top:1px solid #E5E8EB;
    padding:6px 6px max(8px,env(safe-area-inset-bottom));
  }
  body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}
}
@media(min-width:761px){
  .bottom-nav{display:none!important}
}

@media(prefers-reduced-motion:reduce){.bottom-nav a{transition:none}}

/* 계산기(average-down) 입력 그룹: 회색 배경 블록 → 흰 카드 + 얇은 보더로 통일.
   .rows는 average-down.html 전용 래퍼라 배당 일정(.cal .row)·검색 결과(.sf-item) 행과 섞이지 않는다. */
.rows .row{background:#fff;border:1px solid var(--line,#E5E8EB);border-radius:20px}
.rows .row.base{background:var(--blue-soft,#EBF2FE);border-color:#D7E6FD}

/* 입력·칩 공통: 터치 타깃 44px 이상, 절제된 얇은 보더 */
.field input{min-height:48px;border-radius:10px}
.chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 14px;
  border:1px solid var(--line,#E5E8EB)!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* 계산 결과 대표 숫자만 확대(2차 .stat .v는 그대로 절제) */
.hero-num .v,.hero-avg .v{font-size:clamp(34px,11vw,43px);font-weight:780;font-variant-numeric:tabular-nums}

/* 저장한 계산 목록: 구분선만 있던 행 → 흰 카드 + 얇은 보더 */
.wt-saved-row{background:#fff;border:1px solid var(--line,#E5E8EB);border-radius:16px;padding:18px;margin-bottom:10px}
.wt-saved-row:last-child{border-bottom:1px solid var(--line,#E5E8EB);margin-bottom:0}

/* 배당 일정 행: 이미 흰 계열 카드 → 순백 배경 + 라운드만 정리 */
.cal .row{background:#fff;border-radius:16px}

/* 광고 슬롯: 미리보기 전용 placeholder */
.wt-ad-slot{
  display:block;
  width:100%;
  min-height:250px;
  background:#f9fafb;
  border:1px solid #e5e8eb;
  border-radius:14px;
  padding:20px;
  margin:32px 0;
  box-sizing:border-box;
  text-align:center;
  color:#646d79;
  font-size:13px;
  font-weight:600;
  line-height:1.6;
}
.wt-ad-slot[hidden]{
  display:none!important;
  margin:0;
  padding:0;
  min-height:0;
  border:none;
  background:transparent;
}
@media(min-width:521px){
  .wt-ad-slot:not([hidden]){
    min-height:280px;
  }
}
