/* Shared reading milestones. Inline messages never move keyboard focus. */
.riseup-milestone-toast {
  position: fixed; z-index: 9500; left: 20px; bottom: 24px;
  width: min(350px, calc(100vw - 40px)); box-sizing: border-box;
  padding: 20px 38px 20px 22px; border: 1px solid #decaba;
  border-left: 5px solid #a5242b; border-radius: 12px;
  background: #fffaf5; color: #30231e;
  box-shadow: 0 8px 28px rgb(22 30 40 / 18%);
  font-family: 'DM Sans', system-ui, sans-serif;
}
.riseup-milestone-toast strong { display: block; font-size: 1.05rem; line-height: 1.4; color: #7e1d24; }
.riseup-milestone-toast p { margin: 7px 0 13px; font-size: .88rem; line-height: 1.55; }
.riseup-milestone-toast a { color: #7e1d24; font-size: .85rem; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.riseup-milestone-dismiss { position: absolute; right: 3px; top: 3px; width: 36px; height: 36px; border: 0; border-radius: 8px; background: transparent; color: #563a35; font-size: 26px; cursor: pointer; }
.riseup-milestone-toast :focus-visible { outline: 3px solid #1a6472; outline-offset: 3px; }
.riseup-read-badge { display: block; align-self: flex-start; margin: 0 18px 14px; padding: 4px 10px; border-radius: 20px; background: #e4f1e9; color: #23523a; font: 700 .74rem/1.4 system-ui, sans-serif; }
.progress-notice { color: #5f5550; font-size: .86rem; line-height: 1.65; }
.progress-preference { display: flex; align-items: flex-start; gap: 9px; margin: 16px 0 24px; color: #463c37; font-size: .9rem; }
.progress-preference input { margin-top: 4px; accent-color: #8b1a1a; }
.milestone-row .milestone-status { display: block; font-size: .73rem; margin-top: 4px; color: #6b615a; }
.milestone-row.reached .milestone-status { color: #7e1d24; font-weight: 700; }
#back-to-top { border: 2px solid #c9a55b; }
@media (max-width: 480px) {
  .riseup-milestone-toast { left: 12px; bottom: 70px; width: calc(100vw - 24px); padding: 16px 38px 16px 18px; }
}
@media print { .riseup-milestone-toast { display: none; } }
