.public-content-state {
  min-height: 260px;
  padding: 40px 0;
  overflow-wrap: anywhere;
}
.public-content-state h1, .moment-detail > h1 {
  font-size: 26px;
  line-height: 1.4;
  letter-spacing: 0;
}
.public-content-state > div, .public-content-feedback {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.public-content-feedback {
  min-height: 28px;
  margin: 12px 0;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.public-content-feedback:empty { min-height: 0; margin: 0; }
[data-collection-results][inert], [data-comment-list][inert] { opacity: .5; }
.collection-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 76px 44px;
  gap: 10px;
  align-items: center;
}
.collection-refresh, [data-comment-refresh] { display: inline-grid; place-items: center; width: 44px; min-width: 44px; height: 44px; padding: 0; }
.collection-refresh img, [data-comment-refresh] img { display: block; width: 18px; height: 18px; object-fit: contain; }
.collection-toolbar .collection-search,
.collection-toolbar .collection-filter { position: relative; display: block; min-width: 0; }
.collection-toolbar .collection-search::before,
.collection-toolbar .collection-filter::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  background: currentColor;
  color: #607078;
  pointer-events: none;
}
.collection-toolbar .collection-search::before {
  left: 14px;
  mask: url("/assets/bingyu/original/assets/font5-awesome/svgs/solid/search.svg") center / contain no-repeat;
}
.collection-toolbar .collection-filters { gap: 8px; max-width: 300px; }
.collection-toolbar .collection-filter { flex: 1 1 140px; width: 140px; }
.collection-toolbar .collection-filter[hidden] { display: none; }
.collection-toolbar .collection-filter::after {
  right: 14px;
  width: 10px;
  height: 10px;
  mask: url("/assets/bingyu/original/assets/font5-awesome/svgs/solid/chevron-down.svg") center / contain no-repeat;
}
.collection-toolbar :is(input, select, .collection-submit, .collection-refresh) {
  height: 44px;
  min-height: 44px;
  min-width: 0;
  margin: 0;
  border: 1px solid #cdd9dd;
  border-radius: 8px;
  background: #fff;
  color: #40545b;
  box-shadow: none;
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: 0;
  transition: border-color .16s ease, background-color .16s ease;
}
.collection-toolbar input {
  width: 100%;
  padding: 0 12px 0 40px;
}
.collection-toolbar input::placeholder { color: #75838a; opacity: 1; }
.collection-toolbar input::-webkit-search-cancel-button { margin-left: 8px; cursor: pointer; }
.collection-toolbar select {
  appearance: none;
  width: 100%;
  max-width: 100%;
  padding: 0 34px 0 12px;
  text-overflow: ellipsis;
  cursor: pointer;
}
.collection-toolbar .collection-submit {
  padding: 0 12px;
  border-color: #287f7b;
  background: #287f7b;
  color: #fff;
  font-weight: 600;
  white-space: nowrap;
}
.collection-toolbar .collection-refresh { width: 44px; padding: 0; }
.collection-toolbar .collection-refresh img { opacity: .65; }
.collection-toolbar :is(input, select, .collection-refresh):hover { border-color: #8fadaa; }
.collection-toolbar .collection-refresh:hover { background: #f0f7f6; }
.collection-toolbar .collection-submit:hover { border-color: #206a67; background: #206a67; }
.collection-toolbar :is(.collection-submit, .collection-refresh):hover { transform: none; }
.collection-toolbar :is(input, select, button):focus-visible { outline: 2px solid #287f7b; outline-offset: 2px; }
.collection-toolbar .collection-search:focus-within::before { color: #287f7b; }
.collection-toolbar .collection-refresh:disabled { opacity: .5; cursor: wait; }
.collection-pagination:empty { display: none; }
.collection-pagination button { min-width: 44px; min-height: 44px; flex-shrink: 0; }
.collection-pagination span { overflow-wrap: anywhere; text-align: center; }
.collection-head > span { flex-shrink: 0; }
:is(.content-collection, .moment-detail) {
  --reading-title: #334252;
  --reading-text: #445467;
  --reading-meta: #596477;
  --reading-hover-title: #285b68;
}
:is(.content-collection, .moment-detail) :is(.post-tile, .album-card, .moment-card) {
  --hover-title: var(--reading-hover-title);
  --hover-text: var(--reading-text);
}
:is(.content-collection, .moment-detail) :is(.post-tile, .album-card, .moment-card) :is(h2, h3, .feed-author strong) {
  color: var(--reading-title);
}
:is(.content-collection, .moment-detail) :is(.post-tile, .album-card, .moment-card) :is(.card-summary, .feed-text) {
  color: var(--reading-text);
}
:is(.content-collection, .moment-detail) :is(.post-tile, .album-card, .moment-card) :is(.feed-author span, .feed-meta > span) {
  color: var(--reading-meta);
}
.content-collection .album-card > .album-no-cover {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 100%;
  min-height: 0;
  aspect-ratio: 16 / 10;
  padding: 0;
  background: #edf1f2;
}
.content-collection .album-no-cover > img {
  display: block;
  width: 40px;
  height: 40px;
  aspect-ratio: auto;
  object-fit: contain;
  opacity: .42;
}
.comment-parent-context {
  margin: 16px 0 0;
  padding: 12px 16px;
  border-left: 3px solid #789b9a;
  background: #f1f5f4;
  color: #364a48;
  overflow-wrap: anywhere;
}
.comment-parent-context p { margin: 6px 0 0; }
.article-detail .comment-section { --hover-text: #445467; --hover-title: #285b68; }
.article-detail .comment-card p, .article-detail .comment-parent-context p { color: #445467; }
.article-detail .comment-section :is(.comment-card span, .comment-head > span, .comment-list-head > span) { color: #596477; }
.article-detail .comment-section .comment-card-actions button { color: #285b68; border-color: #b7cbce; background: #eff5f5; }
.article-detail .comment-card-meta { flex-wrap: wrap; gap: 4px 12px; }
.article-detail .comment-card-meta > span { white-space: nowrap; }
.comment-list-head { flex-wrap: wrap; gap: 8px; scroll-margin-top: 110px; }
.comment-list-head [data-comment-refresh] { margin-left: auto; }
.moment-detail { max-width: 960px; margin: 0 auto; }
.moment-detail > h1 { overflow-wrap: anywhere; }
.moment-detail .moment-card h3 { display: none; }
.moment-detail .moment-timeline { margin-top: 24px; }
.moment-archive-group { display: grid; gap: 20px; min-width: 0; }
.moment-archive-group + .moment-archive-group { margin-top: 28px; }
.moment-archive-heading { margin: 0; padding: 0 0 12px; border-bottom: 1px solid #dae5e4; color: #40545b; font-size: 19px; line-height: 1.5; letter-spacing: 0; }
.article-reader {
  width: min(920px, 100%);
  margin: 0 auto 28px;
  color: #40545b;
  font-size: 14px;
  letter-spacing: 0;
}
.reader-toolbar, .reader-controls, .reader-fonts, .reader-size, .reader-estimate {
  display: flex;
  align-items: center;
  gap: 8px;
}
.reader-toolbar { justify-content: space-between; flex-wrap: wrap; padding: 8px 0; gap: 8px 16px; border-block: 1px solid #e2e9e9; }
.reader-estimate { color: #647678; flex-wrap: wrap; font-size: 13px; }
.article-reader img { display: block; width: 16px; height: 16px; flex-shrink: 0; opacity: .7; }
.reader-controls { flex-wrap: wrap; gap: 8px 12px; }
.reader-fonts { gap: 0; padding: 2px; background: #f0f4f3; border-radius: 6px; }
.article-reader button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #40545b;
  font: inherit;
  cursor: pointer;
}
.article-reader button:hover { background: #edf5f4; }
.reader-fonts button[aria-pressed="true"] { color: #236f69; background: #fff; border-color: #cedfdc; }
.reader-size { gap: 2px; }
.reader-size output { width: 24px; text-align: center; font-variant-numeric: tabular-nums; }
.article-reader button:disabled { opacity: .35; cursor: default; }
.article-reader :is(button, summary):focus-visible { outline: 2px solid #287f7b; outline-offset: 2px; }
.reader-outline { border-bottom: 1px solid #e2e9e9; }
.reader-outline[hidden] { display: none; }
.reader-outline summary { display: flex; align-items: center; gap: 10px; min-height: 48px; cursor: pointer; list-style: none; }
.reader-outline summary::-webkit-details-marker { display: none; }
.reader-outline summary small { margin-left: auto; color: #647678; }
.reader-outline summary::after { content: "+"; font-size: 20px; width: 20px; text-align: center; }
.reader-outline[open] summary::after { content: "-"; }
.reader-outline nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; padding: 0 0 12px; max-height: 320px; overflow-y: auto; overscroll-behavior: contain; }
.reader-outline button { display: block; width: 100%; padding: 10px 12px; text-align: left; overflow-wrap: anywhere; line-height: 1.6; border-left: 2px solid transparent; border-radius: 0 4px 4px 0; }
.reader-outline button[data-level="3"] { padding-left: 26px; }
.reader-outline button[data-level="4"] { padding-left: 40px; }
.reader-outline button[aria-current="location"] { color: #236f69; background: #edf5f4; border-left-color: #287f7b; }
.reader-progress { appearance: none; position: fixed; inset: 0 0 auto; z-index: 90; width: 100%; height: 3px; border: 0; background: transparent; color: #287f7b; pointer-events: none; }
.reader-progress::-webkit-progress-bar { background: transparent; }
.reader-progress::-webkit-progress-value { background: #287f7b; }
.reader-progress::-moz-progress-bar { background: #287f7b; }
.checklist-browser-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 16px; margin: 16px 0 22px; }
.checklist-browser-search { position: relative; flex: 1 1 220px; min-width: 0; }
.checklist-browser-search::before { content: ""; position: absolute; left: 14px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); background: #607078; mask: url("/assets/bingyu/original/assets/font5-awesome/svgs/solid/search.svg") center / contain no-repeat; pointer-events: none; }
.checklist-browser-search input { width: 100%; height: 44px; margin: 0; padding: 0 12px 0 40px; border: 1px solid #cdd9dd; border-radius: 8px; background: #fff; color: #40545b; font-size: 16px; }
.checklist-status-filters { display: flex; gap: 2px; padding: 2px; border-radius: 6px; background: #f0f4f3; }
.checklist-status-filters button { min-height: 44px; min-width: 44px; padding: 0 10px; border: 1px solid transparent; border-radius: 5px; background: transparent; color: #40545b; font: inherit; font-size: 14px; cursor: pointer; }
.checklist-status-filters button[aria-pressed="true"] { color: #236f69; background: #fff; border-color: #cedfdc; }
.checklist-result-summary { display: flex; align-items: center; justify-content: flex-end; gap: 8px; color: #647678; font-size: 13px; min-width: 100px; }
.checklist-result-summary button { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #cdd9dd; border-radius: 6px; background: #fff; cursor: pointer; }
.checklist-result-summary img { width: 16px; height: 16px; opacity: .7; }
.checklist-result-summary button[hidden], .checklist-public-card[hidden] { display: none; }
.checklist-browser-toolbar :is(input, button):focus-visible { outline: 2px solid #287f7b; outline-offset: 2px; }
.content-collection .album-card > .album-preview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 3px; width: 100%; aspect-ratio: 16 / 10; padding: 0; overflow: hidden; background: #edf1f2; }
.album-preview-cell { display: block; min-width: 0; min-height: 0; overflow: hidden; }
.album-preview-grid[data-preview-count="2"] .album-preview-cell { grid-row: span 2; }
.album-preview-grid[data-preview-count="3"] .album-preview-cell:first-child { grid-row: span 2; }
.album-preview-grid .content-image-wrap { display: block; width: 100%; height: 100%; min-height: 0; }
.content-collection .album-preview-grid img { display: block; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.album-browser-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 24px; padding: 12px 0; border-block: 1px solid #dce6e5; }
.album-type-filters { display: flex; flex-wrap: wrap; gap: 6px; }
.album-type-filters button { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; color: #40545b; background: transparent; border: 1px solid transparent; border-radius: 6px; font: inherit; font-size: 14px; cursor: pointer; }
.album-type-filters button small { font-size: 12px; font-variant-numeric: tabular-nums; opacity: .8; }
.album-type-filters button[aria-pressed="true"] { color: #236f69; background: #edf5f4; border-color: #cedfdc; }
.album-type-filters button:focus-visible { outline: 2px solid #287f7b; outline-offset: 2px; }
[data-album-result-count] { color: #647678; font-size: 13px; }
.album-media-frame[hidden] { display: none; }
@media (max-width: 720px) {
  .collection-toolbar { grid-template-columns: minmax(0, 1fr) 68px 44px; gap: 8px; }
  .collection-toolbar .collection-search { grid-column: 1; grid-row: 1; min-width: 0; }
  .collection-toolbar .collection-submit { grid-column: 2; grid-row: 1; padding: 0 8px; }
  .collection-toolbar .collection-refresh { grid-column: 3; grid-row: 1; }
  .collection-toolbar .collection-filters { grid-column: 1 / -1; grid-row: 2; min-width: 0; max-width: none; }
  .collection-toolbar .collection-filter { flex: 1; min-width: 0; width: auto; }
  .collection-toolbar :is(input, select, .collection-submit, .collection-refresh) { font-size: 16px; }
}
@media (max-width: 600px) {
  .collection-head { gap: 8px; flex-wrap: wrap; }
  .collection-head h1, .moment-detail > h1 { font-size: 24px; }
  .public-content-state { padding-top: 24px; }
  .moment-detail .moment-timeline { margin-top: 16px; }
}
