/* Reminder palette contract: one accent per active theme. */
body[data-app-theme] .reminder-chat-modal .reminder-actions .send,
body[data-app-theme] .recurring-scope-modal .send {
  border-color: var(--color-accent-strong) !important;
  background: var(--color-accent) !important;
  color: var(--color-on-accent) !important;
  -webkit-text-fill-color: var(--color-on-accent) !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-chat-modal .reminder-actions .ghost,
body[data-app-theme] .recurring-scope-modal .ghost,
body[data-app-theme] .reminder-chat-modal .snooze-options,
body[data-app-theme] .reminder-chat-modal .snooze-options button {
  border-color: var(--color-border) !important;
  background: var(--color-surface) !important;
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  box-shadow: none !important;
}

/* Chat confirmation is a compact conversation receipt, not a filled system panel. */
body[data-app-theme] .reminder-candidates {
  display: grid !important;
  justify-items: center !important;
  gap: 8px !important;
  padding: 8px 20px 3px !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-candidate {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) 80px !important;
  align-items: center !important;
  gap: 12px !important;
  width: min(92%, 430px) !important;
  min-height: 74px !important;
  padding: 13px 15px !important;
  border: 1px solid var(--chat-message-line) !important;
  border-radius: 18px !important;
  background: transparent !important;
  background-image: none !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-candidate-icon {
  display: block !important;
  width: 23px !important;
  height: 23px !important;
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 1.8 !important;
}

body[data-app-theme] .reminder-candidate-copy {
  display: grid !important;
  gap: 5px !important;
  min-width: 0 !important;
  color: var(--color-text) !important;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body[data-app-theme] .reminder-candidate-copy small {
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  font-family: "Space Mono", ui-monospace, monospace !important;
  font-size: 8px !important;
  letter-spacing: .15em !important;
}

body[data-app-theme] .reminder-candidate-copy strong {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: var(--color-text) !important;
  -webkit-text-fill-color: var(--color-text) !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body[data-app-theme] .reminder-candidate-copy em {
  overflow: hidden !important;
  color: var(--color-text-muted) !important;
  -webkit-text-fill-color: var(--color-text-muted) !important;
  font-family: "Space Mono", ui-monospace, monospace !important;
  font-size: 9px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  letter-spacing: .02em !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body[data-app-theme] .reminder-candidate-copy em b {
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
}

body[data-app-theme] .reminder-candidate-actions {
  display: flex !important;
  gap: 4px !important;
  justify-content: flex-end !important;
}

body[data-app-theme] .reminder-candidate-actions button {
  display: grid !important;
  place-items: center !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: var(--color-text-muted) !important;
  -webkit-text-fill-color: var(--color-text-muted) !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-candidate-actions button:first-child {
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
}

body[data-app-theme] .reminder-candidate-actions svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 2 !important;
}

@media (max-width: 380px) {
  body[data-app-theme] .reminder-candidate {
    grid-template-columns: 22px minmax(0, 1fr) 72px !important;
    gap: 9px !important;
    padding-inline: 12px !important;
  }
  body[data-app-theme] .reminder-candidate-actions button {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
  }
}

/* Saved reminders retain a card boundary but never add another opaque fill. */
body[data-app-theme] .memo-control-shell .memo-task.reminder-task {
  border-color: var(--page-module-line) !important;
  border-radius: 18px !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body[data-app-theme] .memo-control-shell .reminder-task .memo-task-title span {
  border: 0 !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
}

body[data-app-theme] .memo-control-shell .reminder-task .memo-task-body small {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

body[data-app-theme] .memo-control-shell .reminder-task .memo-task-body small .material-symbols-outlined {
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
}

/* The due prompt follows the same compact receipt language as a finished
   phone call.  The backdrop provides separation; the receipt adds no opaque
   theme-specific slab of its own. */
body[data-app-theme] .reminder-chat-modal.reminder-chat-receipt {
  width: min(92%, 430px) !important;
  padding: 17px 18px 14px !important;
  border: 1px solid var(--chat-message-line) !important;
  border-radius: 18px !important;
  background: transparent !important;
  background-image: none !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-modal-kicker {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  width: auto !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
  font-family: "Space Mono", ui-monospace, monospace !important;
  font-size: 9px !important;
  letter-spacing: .15em !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-modal-kicker i {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
}

body[data-app-theme] .reminder-chat-receipt h3 {
  margin: 0 0 6px !important;
  color: var(--color-text) !important;
  -webkit-text-fill-color: var(--color-text) !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
}

body[data-app-theme] .reminder-chat-receipt > p {
  margin: 0 0 8px !important;
  color: var(--color-text-muted) !important;
  -webkit-text-fill-color: var(--color-text-muted) !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
}

body[data-app-theme] .reminder-chat-receipt > small {
  display: block !important;
  margin-bottom: 11px !important;
  color: var(--color-text-dim) !important;
  -webkit-text-fill-color: var(--color-text-dim) !important;
  font-family: "Space Mono", ui-monospace, monospace !important;
  font-size: 8px !important;
  letter-spacing: .08em !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-actions {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 !important;
  padding-top: 10px !important;
  border-top: 1px solid var(--chat-message-line) !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-actions button {
  display: grid !important;
  place-items: center !important;
  gap: 3px !important;
  min-width: 0 !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 3px 2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  color: var(--color-text-muted) !important;
  -webkit-text-fill-color: var(--color-text-muted) !important;
  box-shadow: none !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-actions button.send {
  border: 0 !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  -webkit-text-fill-color: var(--color-accent) !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-actions i {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
}

body[data-app-theme] .reminder-chat-receipt .reminder-actions span {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  font-size: 9px !important;
  letter-spacing: 0 !important;
}

body[data-app-theme] .reminder-chat-receipt .snooze-options,
body[data-app-theme] .reminder-chat-receipt .snooze-options button {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}
