/* Keep the header in normal flow so content is not covered or shifted. */
body.public-content-page > .pc-header,
body.en-home > .en-header,
body > .site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #fff;
}
html { scroll-padding-top: 150px; }
body > footer.site-footer { max-width: none; width: 100%; margin: 0; box-sizing: border-box; }
.site-footer {
  display: block;
  margin-top: 0;
  padding: 48px 24px;
  border-top: 1px solid #ddd;
  background: #fff;
  color: #666;
  font: 13px/1.7 Pretendard, "Noto Sans KR", Arial, sans-serif;
}
.site-footer-inner { max-width: 1320px; margin: 0 auto; display: flex; align-items: center; gap: 100px; }
.site-footer-brand { flex: 0 0 100px; }
.site-footer-brand img { display: block; width: 100px; height: 100px; object-fit: contain; filter: none; opacity: 1; }
.site-footer-info { flex: 1; min-width: 0; }
.site-footer-info strong { display: block; color: #111; font-size: 16px; margin-bottom: 12px; }
.site-footer-info p { margin: 0; }
.site-footer-info small { display: block; font-size: 12px; margin-top: 8px; }
.site-footer .site-footer-call { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; gap: 8px; padding: 10px 20px; background: #666; color: #fff; border-radius: 4px; font-size: 16px; font-weight: 700; line-height: 1.5; text-decoration: none; white-space: nowrap; }
.site-footer-call svg { width: 16px; height: 16px; fill: currentColor; }
.site-footer-call:focus-visible { outline: 3px solid #009797; outline-offset: 3px; }
@media (max-width: 1500px) {
  .site-footer { padding-right: 120px; }
  .site-footer-inner { gap: 50px; }
}
@media (max-width: 760px) {
  .site-footer { padding: 30px 80px 30px 20px; }
  .site-footer-inner { flex-wrap: wrap; gap: 22px; }
  .site-footer-brand { flex-basis: 72px; }
  .site-footer-brand img { width: 72px; height: 72px; }
  .site-footer-info { flex-basis: calc(100% - 94px); }
  .site-footer .site-footer-call { margin-left: auto; font-size: 14px; }
}
.site-quick-links {
  position: fixed;
  right: 0;
  bottom: env(safe-area-inset-bottom, 0px);
  z-index: 900;
  display: flex;
  flex-direction: column;
  width: 100px;
  box-shadow: 0 0 10px #0002;
  font-family: Pretendard, "Noto Sans KR", Arial, sans-serif;
}
.site-quick-links > a {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 100%;
  min-height: 100px;
  padding: 10px 5px;
  color: #111;
  text-align: center;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.site-quick-links > .site-quick-worship { background: #009797; }
.site-quick-links > .site-quick-bulletin { background: #d65b8c; }
.site-quick-links > .site-quick-youtube { background: #dcdcdc; }
.site-quick-links img { display: block; width: 44px; height: 44px; object-fit: contain; }
/* Explicit colors defeat imported link rules, including visited/hover states. */
a.site-board-list-button,
a.site-board-list-button:link,
a.site-board-list-button:visited {
  display:inline-flex!important;align-items:center;justify-content:center;
  background:#555!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  font-size:15px!important;font-weight:700!important;line-height:1.5!important;
  min-height:40px;min-width:62px;padding:9px 18px!important;border:1px solid #555!important;
  border-radius:4px;text-decoration:none!important;opacity:1!important;box-sizing:border-box;
}
a.site-board-list-button *{color:inherit!important;-webkit-text-fill-color:inherit!important;opacity:1!important}
a.site-board-list-button:hover,a.site-board-list-button:active {background:#333!important;color:#fff!important;border-color:#333!important}
a.site-board-list-button:focus-visible {outline:3px solid #007c78!important;outline-offset:3px!important}
.site-quick-links a:hover { filter: brightness(.96); }
.site-quick-links a:focus-visible { outline: 3px solid #111; outline-offset: -4px; }
@media (max-width: 760px), (max-height: 600px) {
  .site-quick-links { width: 64px; }
  .site-quick-links > a { min-height: 72px; padding: 7px 4px; font-size: 11px; gap: 3px; }
  .site-quick-links img { width: 32px; height: 32px; }
}

/* Shared board count and writing guidance. */
.board-list-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 20px;margin:0 0 16px;max-width:100%;font-size:14px;line-height:1.7;color:#555}
.board-list-summary>div,.board-list-summary>span:first-child{margin:0}
.board-list-summary .board-writing-notice{font-size:14px;font-weight:400;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;color:#555}
.board-writing-notice a{color:#007c7c!important;text-decoration:underline!important}
.board-writing-notice a:focus-visible{outline:2px solid #007c7c;outline-offset:3px}
@media(max-width:600px){.board-list-summary{gap:4px 12px}.board-list-summary .board-writing-notice{font-size:13px}}
.board-title-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px}
.board-title-actions>h1{margin:0!important}
.board-title-actions .board-title-write{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:10px 20px;border-radius:5px;background:#008f8f;color:#fff!important;font-size:16px;font-weight:700;line-height:1.5;text-decoration:none!important;white-space:nowrap}
.board-title-actions .board-title-write:hover{background:#006f6f}
.board-title-actions .board-title-write:focus-visible{outline:3px solid #004f4f;outline-offset:3px}
.board-workspace:empty{display:none}
@media(max-width:600px){.board-title-actions{gap:12px}.board-title-actions .board-title-write{font-size:14px;padding:8px 14px}}
.board-title-actions>h2{margin:0!important}
