/* 메인·결과·PC·약관에서 함께 쓰는 푸터. 브랜드 색은 각 화면의 토큰을 따른다. */
.colophon, .site-foot, .doc-foot {
  --footer-text: var(--washi, var(--moon));
  text-align: left;
}
.colophon { gap: 1rem; padding-top: 2rem; }
.colophon .colophon-title { margin: 0; color: var(--footer-text); font-size: 0.875rem; letter-spacing: 0; }
.colophon p, .site-foot > p { color: var(--muted); font-size: 0.8125rem; line-height: 1.8; }
.legal-links, .site-foot nav {
  display: flex; flex-wrap: wrap; align-items: center; gap: 0 1.25rem;
  margin: 0; font-size: 0.8125rem;
}
.legal-links a, .site-foot nav a {
  display: inline-flex; align-items: center; min-height: 44px;
  color: var(--footer-text); text-decoration: none;
}
.legal-links a:hover, .site-foot nav a:hover { text-decoration: underline; text-underline-offset: 4px; }
[data-seller].seller {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.5rem 2rem;
  margin: 0; font-size: 0.8125rem; line-height: 1.7; letter-spacing: 0;
}
[data-seller].seller > div {
  display: grid; grid-template-columns: 8rem minmax(0, 1fr); gap: 0.75rem;
  min-width: 0; align-items: baseline;
}
[data-seller].seller dt { color: var(--muted); white-space: normal; word-break: keep-all; }
[data-seller].seller dd {
  margin: 0; min-width: 0; color: var(--footer-text);
  word-break: keep-all; overflow-wrap: anywhere;
}
[data-seller].seller a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
[data-seller].seller > .seller-support {
  grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr); gap: 0;
  padding: 1.5rem 0; margin-bottom: 0.5rem;
  border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline);
}
[data-seller].seller .seller-support dt { color: var(--footer-text); font-size: 0.875rem; }
[data-seller].seller .seller-support a { display: inline-flex; align-items: center; min-height: 44px; }
.colophon a:focus-visible, .site-foot a:focus-visible, .doc-foot a:focus-visible {
  outline: 2px solid var(--footer-text); outline-offset: 4px; border-radius: 4px;
}
@media (min-width: 700px) {
  .site-foot { padding: 2rem 2.5rem; }
  .site-foot [data-seller].seller { max-width: 64rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 360px) {
  [data-seller].seller > div { grid-template-columns: 7rem minmax(0, 1fr); gap: 0.5rem; }
  [data-seller].seller > .seller-support { grid-template-columns: minmax(0, 1fr); }
}
