.album-heading-actions,
.album-search,
.album-summary {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
}

.album-heading-actions {
  justify-content: flex-end;
}

.album-search {
  margin-top: 18px;
}

.album-search label {
  display: grid;
  flex: 1 1 260px;
  gap: 7px;
  color: #503c68;
  font-size: .875rem;
}

.album-search input,
.album-controls input[type="date"] {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  box-sizing: border-box;
  border: 1px solid #b9acc5;
  border-radius: 6px;
  padding: 10px;
  background: white;
  color: #332a3d;
  font: inherit;
}

.album-filter-actions {
  display: flex;
  align-items: center;
  min-height: 44px;
}

.album-summary {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

.album-summary p {
  margin: 0;
}

.album-capacity,
.album-record-version {
  color: #61586b;
  font-size: .875rem;
}

.album-capacity meter {
  width: 72px;
  vertical-align: middle;
}

.album-record-version {
  display: block;
  margin-top: 3px;
}

@media (max-width: 620px) {
  .album-heading-actions,
  .album-search {
    width: 100%;
  }

  .album-heading-actions .button,
  .album-search .button {
    flex: 1 1 auto;
  }
}
.album-chapter { margin: 18px 0 -6px; color: #644a77; font-size: .875rem; font-weight: 700; }
.history-saved-reading { min-width: 0; border-top: 1px solid #cfc4dd; margin-top: 18px; padding-top: 18px; }
.history-saved-reading > h3 { margin: 0 0 16px; font-size: 1.2rem; line-height: 1.6; }
.history-saved-quote, .history-source-notice blockquote { margin: 16px 0; padding-left: 16px; border-left: 3px solid #b993da; line-height: 1.9; overflow-wrap: anywhere; }
.history-source-notice { max-width: 34em; margin: 20px auto 32px; padding: 16px 20px; border: 1px solid #d7c6e4; border-radius: 8px; background: #f7f1fa; box-sizing: border-box; }
.history-source-notice > p { font-size: .875rem; line-height: 1.8; }
.history-source-notice .text-button { min-height: 44px; white-space: normal; text-align: left; }
.history-source-passage { padding: 12px 16px; border-left: 3px solid #795195; background: #f7f1fa; }

.album-organization { margin: 16px 0; }
.album-selection-toolbar, .album-bulk-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.album-selection-toolbar { padding: 14px; border: 1px solid #c7b3d6; border-radius: 9px; background: #f7f1fa; }
.album-selection-toolbar p { margin: 0 auto 0 0; font-weight: 700; color: #503c68; }
.album-selection-notice { line-height: 1.8; color: #503c68; }
.album-selection-notice:empty { display: none; }
.album-select-label { display: flex; align-items: center; gap: 10px; min-height: 44px; width: fit-content; max-width: 100%; margin-bottom: 14px; color: #503c68; cursor: pointer; }
.album-select-label input { width: 22px; height: 22px; margin: 0; accent-color: #795195; flex-shrink: 0; }
.album-item[data-selected] { border-color: #795195; box-shadow: inset 0 0 0 1px #795195; background: #fdfaff; }
.album-bulk-records { list-style: none; padding: 0; margin: 20px 0; }
.album-bulk-records li { padding: 16px 0; border-top: 1px solid #d7c6e4; }
.album-bulk-records h3 { font-size: 1rem; margin: 4px 0; }
.album-bulk-records p { margin: 4px 0; line-height: 1.8; overflow-wrap: anywhere; }
.album-bulk-kind { color: #61586b; font-size: .875rem; }
.album-bulk-records .album-bulk-text { margin-top: 12px; white-space: pre-wrap; }
.album-bulk-actions .button, .album-selection-toolbar .button { min-height: 44px; white-space: normal; }
@media (max-width: 620px) {
  .album-selection-toolbar p { flex-basis: 100%; }
  .album-selection-toolbar .button, .album-bulk-actions .button { flex: 1 1 auto; }
}
