/* Button standard (Craig, 2026-11-08). Roles are set by js/sm_buttons.js from each button's label, or by markup
   (.btn-cancel). Light mode lives here; dark mode's versions of the same classes are in css/sm-dark.css.
   - .sm-btn-quiet / .btn-cancel   Cancel, Back, Close: neutral gray outline, text in the White Label main-area colour.
   - .sm-btn-danger                 initiates a destructive action, or "Don't Save": red outline.
   - .sm-btn-danger-solid           carries a destructive action out (dialog footers): solid red.
   - SweetAlert confirms             White Label accent, or solid red for a delete (.sm-swal-danger).
   Text buttons keep 5px corners (2026-09-26 rule). The X close icon is never touched. */

html:not(.sm-dark) .btn.sm-btn-quiet:not(#sm-x),
html:not(.sm-dark) .btn.btn-cancel:not(#sm-x),
html:not(.sm-dark) button.sm-btn-quiet:not(.btn):not(#sm-x),
html:not(.sm-dark) input.sm-btn-quiet:not(#sm-x) {
    background-color: transparent !important;
    background-image: none !important;
    border: 1px solid #c4cbd4 !important;
    color: var(--sm-notification-text, #4f4f4f) !important;
    box-shadow: none !important;
    text-shadow: none !important;
}
html:not(.sm-dark) .btn.sm-btn-quiet:not(#sm-x):hover,
html:not(.sm-dark) .btn.sm-btn-quiet:not(#sm-x):focus,
html:not(.sm-dark) .btn.btn-cancel:not(#sm-x):hover,
html:not(.sm-dark) .btn.btn-cancel:not(#sm-x):focus,
html:not(.sm-dark) button.sm-btn-quiet:not(.btn):not(#sm-x):hover,
html:not(.sm-dark) input.sm-btn-quiet:not(#sm-x):hover {
    background-color: rgba(16, 24, 40, .05) !important;
    border-color: #98a2b3 !important;
    color: var(--sm-notification-text, #4f4f4f) !important;
}

html:not(.sm-dark) .sm-btn-danger:not(#sm-x) {
    background-color: transparent !important;
    background-image: none !important;
    border: 1px solid #D92D20 !important;
    color: #D92D20 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}
html:not(.sm-dark) .sm-btn-danger:not(#sm-x):hover,
html:not(.sm-dark) .sm-btn-danger:not(#sm-x):focus {
    background-color: rgba(217, 45, 32, .07) !important;
    color: #B42318 !important;
    border-color: #B42318 !important;
}

.sm-btn-danger-solid:not(#sm-x),
html:not(.sm-dark) .btn.btn-danger:not(.btn_cancel):not(.sm-btn-quiet):not(.sm-btn-danger):not(#sm-x) {
    background-color: #D92D20 !important;
    background-image: none !important;
    border: 1px solid #D92D20 !important;
    color: #fff !important;
    box-shadow: none !important;
}
.sm-btn-danger-solid:not(#sm-x):hover,
.sm-btn-danger-solid:not(#sm-x):focus,
html:not(.sm-dark) .btn.btn-danger:not(.btn_cancel):not(.sm-btn-quiet):not(.sm-btn-danger):not(#sm-x):hover {
    background-color: #B42318 !important;
    border-color: #B42318 !important;
    color: #fff !important;
}
html:not(.sm-dark) .btn.btn-outline-danger:not(#sm-x) {
    background-color: transparent !important;
    border: 1px solid #D92D20 !important;
    color: #D92D20 !important;
}

/* Text buttons in these roles keep the 5px corners even where the markup made them pills. */
.btn.sm-btn-quiet:not(.btn-icon), .btn.btn-cancel:not(.btn-icon),
.btn.sm-btn-danger:not(.btn-icon), .btn.sm-btn-danger-solid:not(.btn-icon) { border-radius: 5px !important; }

/* SweetAlert (themes/css/components.css draws blue buttons with a borderless gray-text Cancel). */
.sweet-alert button { border-radius: 5px !important; }
.sweet-alert button.confirm {
    background-color: var(--sm-notification-accent, #01a8e5) !important;
    color: var(--sm-notification-accent-text, #fff) !important;
    border: 1px solid var(--sm-notification-accent, #01a8e5) !important;
}
.sweet-alert button.confirm.sm-swal-danger { background-color: #D92D20 !important; border-color: #D92D20 !important; color: #fff !important; }
.sweet-alert button.confirm.sm-swal-danger:hover { background-color: #B42318 !important; border-color: #B42318 !important; }
html:not(.sm-dark) .sweet-alert button.cancel {
    background-color: transparent !important;
    border: 1px solid #c4cbd4 !important;
    color: var(--sm-notification-text, #4f4f4f) !important;
}
html:not(.sm-dark) .sweet-alert button.cancel:hover { background-color: rgba(16, 24, 40, .05) !important; border-color: #98a2b3 !important; }
