/* Shared action controls for the application. Navigation and mode cards keep
   their own appearance; compact explanation tabs keep their selected state. */
html[data-app-actions="route"] {
  --action-font-size:14px;
  --action-font-weight:600;
  --action-line-height:1.4;
  --action-green:#087e68;
  --action-hover:#066b58;
  --action-pressed:#055847;
  --action-ink:#173d3d;
  --action-line:#dee7e5;
  --action-pale:#e0f2e9;
  --action-disabled:#e3ebe8;
  --action-disabled-ink:#697e78;
  --action-danger:#ac383a;
}
html[data-app-actions="route"] :is(.button,.feedback-primary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.ad-free-pay,.ad-free-referral-share,.cookie-actions button,.app-install-action):not(:where(.sidebar *,.mobile-nav *,.mode-card *)) {
  box-sizing:border-box;
  border-radius:12px;
  font-family:inherit;
  font-weight:var(--action-font-weight);
  line-height:var(--action-line-height);
  box-shadow:none;
  text-decoration:none;
  transform:none;
  filter:none;
  transition:background-color .16s,border-color .16s,color .16s;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
html[data-app-actions="route"] :is(.button.primary,.feedback-primary,.ad-free-pay,.ad-free-referral-share,.app-install-action,.cookie-actions button[data-cookie-choice="analytics"]):not(:where(.sidebar *,.mobile-nav *,.mode-card *)) {
  background:var(--action-green);
  border:1px solid var(--action-green);
  color:#fff;
}
html[data-app-actions="route"] :is(.button.secondary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.cookie-actions button[data-cookie-choice="necessary"]):not(:where(.sidebar *,.mobile-nav *,.mode-card *)) {
  background:#fff;
  border:1px solid var(--action-line);
  color:var(--action-ink);
}
html[data-app-actions="route"] .button.ghost {
  background:transparent;
  border:1px solid transparent;
  color:var(--action-ink);
}
html[data-app-actions="route"] .button.settings-danger {
  background:var(--action-danger);border:1px solid var(--action-danger);color:#fff;
}
html[data-app-actions="route"] .button.settings-danger-outline {
  background:#fff;border:1px solid #e6c9c9;color:var(--action-danger);
}
html[data-app-actions="route"] :is(.ad-free-pay,.ad-free-referral-share) {min-height:48px;font-size:14px}
/* Start is the final row of the intro, aligned with its text and progress. */
.mode-intro .intro-body>.button.large {
  display:flex;width:100%;min-height:52px;margin-top:18px;
}
html[data-app-actions="route"] .cookie-actions button {min-height:44px;white-space:normal}
/* Filter chips are selectors, so selection uses a quiet tint rather than the
   solid treatment reserved for starting, saving or confirming an action. */
html[data-app-actions="route"] :is(.fine-sort-options button,.stats-tabs button,.reminder-presets button) {
  min-height:44px;border-radius:12px;border:1px solid var(--action-line);
  background:#fff;color:var(--action-ink);font-family:inherit;font-weight:600;box-shadow:none;
}
html[data-app-actions="route"] :is(.fine-sort-options button,.stats-tabs button,.reminder-presets button)[aria-pressed="true"] {
  background:var(--action-pale);border-color:var(--action-green);color:var(--action-green);box-shadow:none;
}
html[data-app-actions="route"] :is(.fine-sort-options button,.stats-tabs button,.reminder-presets button):focus-visible {
  outline:3px solid var(--action-green);outline-offset:3px;
}
html[data-app-actions="route"] .ad-free-trigger:not(.ad-free-trigger--sidebar) {
  color:var(--action-green);border-color:var(--action-line);background:#eff6f2;font-weight:600;box-shadow:none;
}
html[data-app-actions="route"] .reminder-time-button {
  border-radius:12px;border-color:var(--action-line);background:#fff;color:var(--action-ink);box-shadow:none;
}
html[data-app-actions="route"] :is(.reminder-cancel,.reminder-disable) {
  min-height:44px;border-radius:12px;color:var(--action-ink);font-weight:600;
}
html[data-app-actions="route"] :is(.reminder-presets button,.reminder-time-button) svg {color:var(--action-green)}
html[data-app-actions="route"] :is(.reminder-time-button,.reminder-cancel,.reminder-disable):focus-visible {
  outline:3px solid var(--action-green);outline-offset:3px;
}
/* Circular close controls are the icon-sized member of the same family. */
html[data-app-actions="route"] :is(.dialog-close,.feedback-close,.reminder-picker-close,.ad-free-close,.cookie-close,.tisha-chat-close,.plan-complete-close,.image-zoom-close,.question-note-close) {
  width:44px;height:44px;min-width:44px;min-height:44px;padding:0;
  display:grid;place-items:center;border:0;border-radius:50%;
  color:var(--action-ink);background:#eff5f2;box-shadow:none;
}
html[data-app-actions="route"] .tisha-chat-heading {padding-right:36px}
@media(hover:hover) {
  html[data-app-actions="route"] :is(.button.primary,.feedback-primary,.ad-free-pay,.ad-free-referral-share,.app-install-action,.cookie-actions button[data-cookie-choice="analytics"]):not(:disabled):not(:where(.sidebar *,.mobile-nav *,.mode-card *)):hover {
    background:var(--action-hover);border-color:var(--action-hover);box-shadow:none;filter:none;transform:none;
  }
  html[data-app-actions="route"] :is(.button.secondary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.cookie-actions button[data-cookie-choice="necessary"]):not(:disabled):not(:where(.sidebar *,.mobile-nav *,.mode-card *)):hover {
    background:#eff6f2;border-color:#a6c9bf;
  }
  html[data-app-actions="route"] .button.ghost:not(:disabled):hover {background:#e8f0ed}
  html[data-app-actions="route"] .button.settings-danger:not(:disabled):hover {background:#912f31;border-color:#912f31}
  html[data-app-actions="route"] .button.settings-danger-outline:not(:disabled):hover {background:#fff0ef;border-color:#d3a3a3}
}
html[data-app-actions="route"] :is(.button.primary,.feedback-primary,.ad-free-pay,.ad-free-referral-share,.app-install-action):not(:disabled):not(:where(.sidebar *,.mobile-nav *,.mode-card *)):active {
  background:var(--action-pressed);border-color:var(--action-pressed);transform:none;box-shadow:none;
}
html[data-app-actions="route"] :is(.button,.feedback-primary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.ad-free-pay,.ad-free-referral-share,.cookie-actions button):disabled:not(:where(.sidebar *,.mobile-nav *,.mode-card *)) {
  background:var(--action-disabled);border:1px solid var(--action-line);color:var(--action-disabled-ink);
  opacity:1;box-shadow:none;filter:none;transform:none;cursor:not-allowed;
}
html[data-app-actions="route"] :is(.button,.feedback-primary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.ad-free-pay,.ad-free-referral-share,.cookie-actions button,.app-install-action,.dialog-close,.feedback-close,.reminder-picker-close,.ad-free-close,.cookie-close,.tisha-chat-close,.plan-complete-close,.image-zoom-close,.question-note-close):not(:where(.sidebar *,.mobile-nav *,.mode-card *)):focus-visible {
  outline:3px solid var(--action-green);outline-offset:3px;
}
@media(prefers-reduced-motion:reduce) {
  html[data-app-actions="route"] :is(.button,.feedback-primary,.feedback-secondary,.reminder-edit,.reference-return,.image-zoom-scale,.ad-free-pay,.ad-free-referral-share,.cookie-actions button,.app-install-action):not(:where(.sidebar *,.mobile-nav *,.mode-card *)) {transition:none}
}
