/* ========================================================================
   대장옥션 시그널 base — reset + body + 공통 타이포
   ======================================================================== */

* { box-sizing: border-box; margin: 0; padding: 0; -webkit-tap-highlight-color: transparent; }

html, body {
  font-family: var(--font-base);
  color: var(--gray-900);
  background: var(--gray-50);
  letter-spacing: -0.02em;
  font-feature-settings: 'tnum';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  max-width: var(--container-max);
  margin: 0 auto;
  min-height: 100vh;
  position: relative;
  padding-bottom: calc(var(--tabbar-h) + 18px);
}
/* 일부 페이지가 로드하는 reset(html,body{margin:0})이 본문 가운데정렬을 덮어써서
   PC 폭에서 본문은 좌측에 붙고 하단 탭바(fixed,중앙)만 떨어져 보이는 문제 방지.
   reset이 !important가 아니므로 가운데정렬을 강제해 항상 우선하도록 고정. */
html > body {
  max-width: var(--container-max);
  margin-left: auto !important;
  margin-right: auto !important;
}

a { text-decoration: none; color: inherit; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; letter-spacing: -0.02em; }
img, svg { display: block; max-width: 100%; }
input, select, textarea { font-family: inherit; letter-spacing: -0.02em; }
ul, ol { list-style: none; }
em { font-style: normal; }

/* 공통 유틸 */
.sg-hidden { display: none !important; }
.sg-only-pc { display: none !important; }
.sg-em-violet { color: var(--violet); }
.sg-em-yellow { position: relative; display: inline-block; }
.sg-em-yellow::before {
  content: ''; position: absolute; left: -2px; right: -2px; bottom: 1px;
  height: 9px; background: var(--yellow); z-index: -1; border-radius: 2px;
}

/* 공통 아이콘 (핀테크 라인 스타일) */
.s-ico { width: 20px; height: 20px; flex-shrink: 0; color: currentColor; vertical-align: middle; }

/* 페이지 컨테이너 (PHP wrap 대체 가능) */
.sg-container { padding: 0 20px; }
.sg-section { margin-bottom: 24px; }
.sg-section-title {
  padding: 16px 20px 12px;
  font-size: 16px; font-weight: 800;
  letter-spacing: -0.03em;
  min-height: 64px;
  display: flex; align-items: center;
  box-sizing: border-box;
}
.sg-section-title em { color: var(--violet); }
