/* 기본 요소 — 글자 크기, 여백, 누르는 것의 최소 크기 */
* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: var(--font-body);
  line-height: 1.7;
  -webkit-text-size-adjust: 100%;
}

h1, h2, h3 { color: var(--primary); line-height: 1.35; margin: 0 0 var(--space-2); }
h1 { font-size: 26px; }
h2 { font-size: 21px; }

a { color: var(--accent); }

.container { max-width: var(--maxw); margin: 0 auto; padding: 0 var(--space-2); }

.muted { color: var(--text-muted); }

/* 누르는 것은 무조건 44px 이상 — 어르신 손가락 기준 */
button, .btn {
  min-height: var(--tap);
  min-width: var(--tap);
  padding: 0 var(--space-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--white);
  color: var(--text);
  font: inherit;
  cursor: pointer;
}

.btn-solid {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--white);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}

.skip-link {
  position: absolute; left: -9999px;
}
.skip-link:focus { left: var(--space-2); top: var(--space-2); z-index: 99; }

img { max-width: 100%; height: auto; }
