/* SwiftTenant shared button styles (approved 2026-10-23, trialed on AddCharge.aspx).
   Primary: solid slate #4a5568 (2026-10-26; was charcoal #1f2937) / white text. Secondary: solid light gray #e5e7eb / dark text.
   Danger stays solid red, success stays solid green. Buttons are always solid, never outline-only.
   Loaded site-wide (Site.Master and standalone pages). Selectors start with "html body" and use !important so older page-level
   and inline colors cannot bring back the bright blue. */

/* ---------- Primary (slate #4a5568) ---------- */

html body .btn-primary,
html body .btn-primary-slate,
html body .btn-dark,
html body .btn-outline-primary,
html body .btn-outline-dark,
html body .btn-info,
html body .btn-outline-info,
html body a.btn-primary,
html body a.btn-dark,
html body .lg-btn,
html body .wo-btn-primary,
html body .btn-tp-blue,
html body .ad-btn-blue,
html body .zillow-btn-primary,
html body a.lv-btn,
html body .btn-b,
html body .btn-gr,
html body .btn-check:checked + .btn-outline-secondary,
html body .btn-check:checked + .btn-outline-primary,
html body .btn-check:checked + .btn-outline-dark,
html body .btn-check:checked + .btn-outline-custom {
    background-color: #4a5568 !important;
    background-image: none !important;
    border-color: #4a5568 !important;
    color: #fff !important;
}
html body .btn-primary:hover,
html body .btn-primary-slate:hover,
html body .btn-primary-slate:focus,
html body .btn-primary-slate:active,
html body .btn-dark:hover,
html body .btn-outline-primary:hover,
html body .btn-outline-dark:hover,
html body .btn-info:hover,
html body .btn-outline-info:hover,
html body .lg-btn:hover,
html body .wo-btn-primary:hover,
html body .btn-tp-blue:hover,
html body .ad-btn-blue:hover,
html body .zillow-btn-primary:hover,
html body a.lv-btn:hover,
html body .btn-b:hover,
html body .btn-gr:hover,
html body .btn-primary:active,
html body .btn-dark:active,
html body .btn-outline-primary:active,
html body .btn-primary.active,
html body .btn-outline-primary.active,
html body .btn-primary:focus-visible,
html body .btn-dark:focus-visible,
html body .btn-outline-primary:focus-visible {
    background-color: #2d3748 !important;
    border-color: #2d3748 !important;
    color: #fff !important;
}
html body .btn-primary i,
html body .btn-primary-slate i,
html body .btn-dark i,
html body .lg-btn i,
html body .btn-tp-blue i,
html body .ad-btn-blue i { color: #fff !important; }

/* ---------- Secondary (light gray) ---------- */

html body .btn-secondary,
html body .btn-light,
html body .btn-default,
html body .btn-outline-secondary,
html body .btn-outline-light,
html body .btn-outline-custom,
html body a.btn-secondary,
html body a.btn-light,
html body .lg-btn-slate,
html body .lg-more,
html body .wo-btn-secondary,
html body .ad-btn-slate,
html body .btn-g,
html body .btn-sm-g,
html body .pm-btn-solid-light {
    background-color: #e5e7eb !important;
    background-image: none !important;
    border-color: #e5e7eb !important; /* same as the fill: solid, never reads as an outline */
    color: #1f2937 !important;
}
html body .btn-secondary:hover,
html body .btn-light:hover,
html body .btn-default:hover,
html body .btn-outline-secondary:hover,
html body .btn-outline-light:hover,
html body .btn-outline-custom:hover,
html body .lg-btn-slate:hover,
html body .lg-more:hover,
html body .wo-btn-secondary:hover,
html body .ad-btn-slate:hover,
html body .btn-g:hover,
html body .btn-sm-g:hover,
html body .pm-btn-solid-light:hover,
html body .btn-secondary:active,
html body .btn-light:active,
html body .btn-outline-secondary:active,
html body .btn-secondary:focus,
html body .btn-light:focus,
html body .btn-outline-secondary:focus,
html body .btn-secondary.show,
html body .btn-light.show,
html body .btn-outline-secondary.show {
    background-color: #d1d5db !important;
    border-color: #d1d5db !important;
    color: #111827 !important;
}
html body .btn-secondary i,
html body .btn-light i,
html body .btn-outline-secondary i,
html body .lg-btn-slate i,
html body .ad-btn-slate i { color: #1f2937 !important; }
/* keep checked toggle icons white */

html body .btn-check:checked + .btn-outline-secondary i,
html body .btn-check:checked + .btn-outline-custom i { color: #fff !important; }

/* ---------- Danger: always solid red ---------- */

html body .btn-outline-danger,
html body .btn-danger {
    background-color: #dc3545 !important; background-image: none !important;
    border-color: #dc3545 !important; color: #fff !important;
}
html body .btn-outline-danger:hover,
html body .btn-danger:hover,
html body .btn-outline-danger:focus,
html body .btn-danger:focus,
html body .btn-outline-danger:active,
html body .btn-danger:active {
    background-color: #bb2d3b !important; border-color: #b02a37 !important; color: #fff !important;
}
html body .btn-outline-danger i,
html body .btn-danger i { color: #fff !important; }

/* ---------- Success / warning: solid (semantic) ---------- */

html body .btn-outline-success { background-color: #198754 !important; border-color: #198754 !important; color: #fff !important; }
html body .btn-outline-success:hover { background-color: #157347 !important; border-color: #146c43 !important; }
html body .btn-outline-warning { background-color: #ffc107 !important; border-color: #ffc107 !important; color: #1f2937 !important; }

/* ---------- Shared shape, focus, disabled ---------- */
.btn-primary, .btn-secondary, .btn-light, .btn-default, .btn-dark, .btn-danger, .btn-success,
.btn-outline-primary, .btn-outline-secondary, .btn-outline-danger, .btn-outline-success, .btn-outline-dark {
    font-weight: 600;
    box-shadow: none;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}
.btn:focus-visible { box-shadow: 0 0 0 3px rgba(31, 41, 55, 0.25) !important; outline: none; }
.btn:disabled, .btn.disabled, .btn[disabled], fieldset:disabled .btn, .aspNetDisabled.btn {
    opacity: 0.55 !important; cursor: not-allowed; pointer-events: none;
}

/* ---------- Anchor buttons: global a / a:visited styles must never win (2026-10-25) ---------- */
a.btn, a.btn:link, a.btn:visited, a.btn:hover, a.btn:focus, a.btn:active,
a.ch-btn, a.ch-btn:visited, a.inv-btn, a.inv-btn:visited { text-decoration: none !important; }
a.btn-primary:visited, a.btn-dark:visited, a.btn-tp-blue, a.btn-tp-blue:link, a.btn-tp-blue:visited,
a.ch-btn-dark, a.ch-btn-dark:link, a.ch-btn-dark:visited, a.ch-btn-dark:hover,
a.inv-btn-primary, a.inv-btn-primary:visited, a.inv-btn-primary:hover { color: #fff !important; }
a.ch-btn-dark i, a.inv-btn-primary i, a.btn-tp-blue i { color: #fff !important; }
a.btn-secondary:visited, a.btn-light:visited, a.btn-outline-secondary:visited,
a.ch-btn-light, a.ch-btn-light:link, a.ch-btn-light:visited, a.ch-btn-light:hover,
a.inv-btn-secondary, a.inv-btn-secondary:visited, a.inv-btn-secondary:hover { color: #1f2937 !important; }
a.ch-btn-light i, a.inv-btn-secondary i { color: #1f2937 !important; }

/* Site standard (2026-10-31): page menus = gray labeled "More" + caret (pm-btn-solid-gray dropdown-toggle).
   Item menus (rows, cards, next to selectors) = this light unlabeled icon button, title/aria-label "More actions". */
.btn.st-more-icon, button.st-more-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; min-width: 0; padding: 0; flex: 0 0 auto;
    background: #fff !important; border: 1px solid #d1d5db !important; color: #374151 !important; border-radius: .375rem; font-size: 1.15rem; line-height: 1; box-shadow: none;
    -webkit-tap-highlight-color: transparent; }
.btn.st-more-icon::after, button.st-more-icon::after { display: none !important; }
.btn.st-more-icon:focus-visible, .btn.st-more-icon[aria-expanded="true"] { background: #f3f4f6 !important; color: #111827 !important; }
.btn.st-more-icon i { color: inherit !important; margin: 0 !important; }

/* Page titles: stay on one line next to header buttons; ellipsis only if truly out of room. */
.st-page-title { white-space: nowrap; flex-shrink: 0; }
