/* Shared editorial styling for the blog, archives, and reading pages. */
:root {
  --sea-main-max-width: 1020px;
  --sea-main-width: calc(100% - 80px);
  --sea-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, "PingFang SC", sans-serif;
  --sea-color-primary: #237260;
  --blog-ink: #202b28;
  --blog-muted: #68736e;
  --blog-line: #e4e9e5;
  --blog-soft: #f2f6f3;
  --blog-accent: #237260;
}
html[theme=dark] {
  --blog-ink: #e8eee9;
  --blog-muted: #a5b4ac;
  --blog-line: #35413a;
  --blog-soft: #26352d;
  --blog-accent: #8ed1b5;
  --sea-color-primary: #8ed1b5;
}
body { color: var(--blog-ink); -webkit-font-smoothing: antialiased; }
.sea-header { box-shadow: none; border-bottom: 1px solid var(--blog-line); }
.sea-nav-wrap { height: 76px; }
.sea-nav-logo { font-size: 18px; font-weight: 650; letter-spacing: -.4px; }
.sea-menu-link { font-size: 13px; }
.sea-menu-link.active, .sea-menu-link:hover { color: var(--blog-accent); }
.sea-menu-sep { color: var(--blog-line); }
#sea-main-wrapper { max-width: 780px; padding: 58px 0 24px; }
.sea-page-card-wrapper { margin-bottom: 32px; }
.sea-article-title, .sea-page-card-title, .blog-heading h1 {
  font-family: Georgia, "Times New Roman", "Songti SC", serif;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -.6px;
  text-align: left;
  margin: 0 0 20px;
  padding: 0;
}
.blog-heading { padding-bottom: 28px; border-bottom: 1px solid var(--blog-line); margin-bottom: 6px; }
.blog-heading h1 { margin-bottom: 12px; }
.blog-heading p { margin: 0; font-size: 14px; line-height: 1.8; color: var(--blog-muted); }
.sea-post-item { padding: 28px 0; margin: 0; border-color: var(--blog-line); }
.sea-post-title { font-size: 22px; font-weight: 550; line-height: 1.55; letter-spacing: -.2px; margin: 0 0 10px; }
.sea-post-item:hover .sea-post-title { color: var(--blog-accent); }
.sea-post-line { display: none; }
.sea-post-abstract { color: var(--blog-muted); font-size: 14px; line-height: 1.85; letter-spacing: 0; margin: 10px 0 16px; }
.sea-post-meta, .sea-post-item .sea-post-meta { font-size: 12px; color: var(--blog-muted); gap: 8px 20px; line-height: 1.7; }
.sea-post-meta .sea-svg-icon, .sea-post-item .sea-post-meta .sea-svg-icon { width: 12px; height: 12px; }
.sea-post-meta__center { justify-content: flex-start; }
.sea-article-header { padding-bottom: 28px; margin-bottom: 28px; border-bottom: 1px solid var(--blog-line); }
.sea-article-content { margin-top: 24px; font-size: 16px; line-height: 1.95; overflow-wrap: break-word; }
.sea-doc { min-width: 0; }
.sea-doc p { line-height: 1.95; margin: 1.4em 0; }
.sea-doc h1, .sea-doc h2, .sea-doc h3, .sea-doc h4 { line-height: 1.5; font-weight: 600; margin-top: 2em; margin-bottom: .8em; }
.sea-doc h1 { font-size: 29px; }
.sea-doc h2 { font-size: 24px; }
.sea-doc h3 { font-size: 20px; }
.sea-doc a { color: var(--blog-accent); text-underline-offset: 4px; }
.sea-doc blockquote { border-left: 2px solid var(--blog-accent); padding: 8px 20px; margin: 24px 0; background: var(--blog-soft); }
.sea-doc blockquote > p { color: var(--blog-muted); line-height: 1.9; margin: 0; }
.sea-doc img, .sea-doc video { max-width: 100%; height: auto; border: 0; border-radius: 5px; }
.sea-doc hr { border-color: var(--blog-line); margin: 32px 0; }
.sea-doc ul, .sea-doc ol { padding-left: 1.5em; line-height: 1.9; }
.sea-doc table { max-width: 100%; line-height: 1.65; }
.sea-doc th, .sea-doc td { border-color: var(--blog-line); }
.sea-doc pre, .sea-doc code, .sea-doc kbd, .sea-doc samp, .sea-doc .highlight {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}
.sea-doc pre, .sea-doc .highlight { max-width: 100%; overflow-x: auto; border-radius: 5px; line-height: 1.65; }
.sea-doc pre { padding: 18px 20px; }
.sea-doc .katex-display { max-width: 100%; overflow-x: auto; overflow-y: hidden; padding: 4px 0; }
.sea-article-catalog { padding: 16px 20px; background: var(--blog-soft); border-radius: 5px; font-size: 13px; }
.sea-article-catalog-title { margin: 0; color: var(--blog-muted); font-weight: 500; }
.sea-article-catalog .toc-item { margin-top: 8px; }
.sea-prev-next-wrapper { border-top: 1px solid var(--blog-line); padding-top: 24px; margin-top: 42px; font-size: 13px; }
.sea-pagination { margin: 32px 0 8px; font-size: 13px; }
.sea-pagination .page-number, .sea-pagination .prev, .sea-pagination .next, .sea-pagination .space { background: transparent; border: 1px solid var(--blog-line); border-radius: 4px; }
.sea-pagination .page-number.current { background: var(--blog-accent); border-color: var(--blog-accent); color: var(--sea-color-main-bg); }
.sea-archive-total { text-align: left; font-size: 14px; color: var(--blog-muted); margin: 0 0 32px; }
.sea-archive-list { grid-template-columns: minmax(0, 1fr); gap: 0; }
.sea-archive-year { font-family: Georgia, "Times New Roman", serif; font-weight: 400; font-size: 28px; padding: 24px 0 16px; }
.sea-archive-list-item { flex-direction: row; align-items: baseline; justify-content: space-between; gap: 20px; border: 0; border-bottom: 1px solid var(--blog-line); border-radius: 0; padding: 17px 0; }
.sea-archive-list-item-title { white-space: normal; font-size: 15px; }
.sea-archive-list-item-date { font-size: 12px; white-space: nowrap; color: var(--blog-muted); }
.sea-hover-list-item:hover { box-shadow: none; transform: none; }
.sea-page-tags, .sea-page-categories { justify-content: flex-start; padding: 20px 0 40px; gap: 12px; }
.sea-page-tags__item, .sea-page-categories__item { box-shadow: none; border: 1px solid var(--blog-line); border-radius: 4px; background: transparent; font-size: 14px; padding: 10px 14px; }
.sea-page-tags__item:hover, .sea-page-categories__item:hover { color: var(--blog-accent); border-color: var(--blog-accent); box-shadow: none; transform: none; }
#sea-footer-container { width: var(--sea-main-width); max-width: var(--sea-main-max-width); margin: 28px auto 0; padding: 22px 0 30px; border-top: 1px solid var(--blog-line); color: var(--blog-muted); font-size: 11px; }
#sea-footer-container .sea-footer-row:first-child { display: none; }
:focus-visible { outline: 2px solid var(--blog-accent); outline-offset: 5px; border-radius: 3px; }
@media (max-width: 850px) { :root { --sea-main-width: calc(100% - 48px); } }
@media (max-width: 600px) {
  :root { --sea-main-width: calc(100% - 40px); }
  #sea-main-wrapper { padding-top: 36px; }
  .sea-article-title, .sea-page-card-title, .blog-heading h1 { font-size: 30px; }
  .sea-post-title { font-size: 20px; }
  .sea-post-item { padding: 24px 0; }
  .sea-article-content { font-size: 15px; }
  .sea-doc p { line-height: 1.95; }
  .sea-post-meta, .sea-post-item .sea-post-meta { column-gap: 14px; font-size: 11px; }
  .sea-archive-list-item { align-items: flex-start; }
  .sea-doc h1 { font-size: 26px; }
  .sea-doc h2 { font-size: 22px; }
  .sea-doc h3 { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
