.journal-intro, .journal-selection, .journal-confirm-actions {
  display: flex;
  align-items: center;
  gap: 10px 16px;
  flex-wrap: wrap;
}
.journal-intro { justify-content: space-between; }
.journal-selection {
  margin-top: 18px;
  padding: 12px 16px;
  background: #232321;
  color: #efdbc5;
  border: 1px solid #625349;
  border-radius: 10px;
}
.journal-selection[hidden], .journal-manage[hidden], .journal-confirm p[hidden] { display: none; }
.journal-selection label { display: flex; gap: 8px; align-items: center; min-height: 36px; cursor: pointer; }
.journal-selection input, .journal-check input { width: 19px; height: 19px; accent-color: #e6c184; cursor: pointer; }
.journal-selection [data-journal-count] { margin-right: auto; font-size: .8rem; color: #c8c0b4; }
.journal-manage, .journal-delete, .journal-cancel {
  font: inherit;
  font-size: .84rem;
  font-weight: 600;
  color: #eed6b7;
  border: 1px solid #75634f;
  border-radius: 8px;
  background: #241e21;
  padding: 9px 15px;
  min-height: 42px;
}
.journal-delete { background: #663d39; border-color: #b37d68; color: #fff4e8; }
.journal-cancel { color: #e4dad3; background: transparent; border-color: #695b5c; }
.journal-manage:hover, .journal-delete:hover:enabled, .journal-cancel:hover:enabled { filter: brightness(1.22); }
.journal-delete:disabled, .journal-cancel:disabled { opacity: .5; cursor: default; }
.journal .entry.journal-choosing { position: relative; min-height: 84px; padding-left: 59px; }
.journal-check { position: absolute; inset: 0; padding: 0 16px; display: flex; align-items: center; cursor: pointer; border-radius: inherit; }
.journal-choosing :is(.journal-reopen, .journal-discuss, .journal-more, p) { display: none; }
.journal .journal-selected { border-color: #b69b6c; background: #28251f; }
.journal-check:has(input:focus-visible) { outline: 2px solid #f2d493; outline-offset: 2px; }
.journal-confirm {
  margin: auto;
  width: min(430px, calc(100vw - 30px));
  color: #fff0db;
  background: linear-gradient(145deg, #2c2529, #19171a 74%);
  border: 1px solid #927353;
  border-radius: 14px;
  padding: clamp(22px, 4vw, 32px);
  box-shadow: 0 24px 100px #0009;
}
.journal-confirm::backdrop { background: #0c090dbb; backdrop-filter: blur(4px); }
.journal-confirm h2 { font: 500 2.2rem/1.1 var(--serif); }
.journal-confirm p { color: #ded1cb; margin: 14px 0 22px; line-height: 1.6; font-size: .92rem; }
.journal-confirm .journal-error { color: #ffc1ad; }
.journal-confirm-actions { justify-content: flex-end; }
@media (max-width: 580px) {
  .journal-selection { gap: 8px 10px; }
  .journal-selection .journal-cancel { margin-left: auto; }
  .journal-selection [data-journal-count] { flex: 1; }
  .journal-selection .journal-cancel, .journal-selection .journal-delete { flex-grow: 1; }
}
