/* Hub suave: shared action controls. List rows retain their own structure. */
:root {
  --hub-button-primary: #d6ae73;
  --hub-button-on-primary: #202648;
  --hub-button-secondary: #293449;
  --hub-button-on-secondary: #f4f6fa;
  --hub-button-link: #e1be8c;
  --hub-button-focus: #f4f6fa;
}
html[data-theme="light"] {
  --hub-button-secondary: #edf0f5;
  --hub-button-on-secondary: #202648;
  --hub-button-link: #795424;
  --hub-button-focus: #202648;
}
html body .hub-button {
  min-height: 50px;
  height: auto;
  padding: 13px 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--hub-button-secondary);
  color: var(--hub-button-on-secondary);
  font-family: 'DM Sans', system-ui, sans-serif;
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: none;
  cursor: pointer;
  transform: none;
  transition: background-color 140ms ease, filter 140ms ease;
}
html body .hub-button--primary {
  background: var(--hub-button-primary);
  color: var(--hub-button-on-primary);
}
html body .hub-button--text {
  background: transparent;
  color: var(--hub-button-link);
  padding-inline: 10px;
}
html body .hub-button--icon {
  width: 50px;
  min-width: 50px;
  height: 50px;
  padding: 12px;
  flex-shrink: 0;
}
html body .hub-button svg { flex-shrink: 0; }
html body .hub-button:active:not(:disabled) { filter: brightness(.86); transform: none; box-shadow: none; }
html body .hub-button:focus-visible { outline: 3px solid var(--hub-button-focus); outline-offset: 3px; }
html body .hub-button:disabled { opacity: .48; cursor: default; }
html body .hub-button[hidden] { display: none !important; }
@media (hover: hover) {
  html body .hub-button:hover:not(:disabled) { filter: brightness(1.06); }
  html body .hub-button:active:not(:disabled) { filter: brightness(.86); }
}
/* Keep the established navigation footprint and label size. */
html body #globalBnav.mobile-nav-v3 .nb-ctr {
  background: var(--hub-button-primary);
  color: var(--hub-button-on-primary) !important;
  box-shadow: none;
  transition: filter 140ms ease;
}
html body #globalBnav.mobile-nav-v3 .nb-ctr:active { transform: none; filter: brightness(.86); }
html body #globalBnav.mobile-nav-v3 .nb-ctr:focus-visible { outline: 3px solid var(--hub-button-focus); outline-offset: 3px; }
/* The local-picker and creation rows are choices, not full-width capsules. */
#mobileCreateOverlayM .mobile-create-option:active,
#checklistSelectListM button:active { background: var(--hub-button-secondary); }
#s-checklist .cl-draft-bar { flex-wrap: wrap; gap: 12px; }
#s-checklist .cl-draft-copy { flex-basis: 100%; }
#s-checklist .cl-draft-action { max-width: 100%; }
@media (prefers-reduced-motion: reduce) {
  html body .hub-button, html body #globalBnav.mobile-nav-v3 .nb-ctr { transition: none; }
}
