/* Shared Bootstrap 3/4 button colors. Load after Bootstrap and page styles. */
.btn-primary, .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #0069d9;
    border-color: #0069d9;
    background-image: none;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active,
.open > .dropdown-toggle.btn-primary,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #0056b3;
    border-color: #0056b3;
}
.btn-success, .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #1e7e34;
    border-color: #1e7e34;
    background-image: none;
}
.btn-success:hover, .btn-success:active, .btn-success.active,
.open > .dropdown-toggle.btn-success,
.btn-success:not(:disabled):not(.disabled):active,
.btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #19692c;
    border-color: #19692c;
}
.btn-info, .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #117a8b;
    border-color: #117a8b;
    background-image: none;
}
.btn-info:hover, .btn-info:active, .btn-info.active,
.open > .dropdown-toggle.btn-info,
.btn-info:not(:disabled):not(.disabled):active,
.btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #0c5966;
    border-color: #0c5966;
}
.btn-danger, .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #bd2130;
    border-color: #bd2130;
    background-image: none;
}
.btn-danger:hover, .btn-danger:active, .btn-danger.active,
.open > .dropdown-toggle.btn-danger,
.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #a71d2a;
    border-color: #a71d2a;
}
.btn-secondary, .btn-secondary:focus, .btn-secondary.focus {
    color: #fff;
    background-color: #5a6268;
    border-color: #5a6268;
}
.btn-secondary:hover, .btn-secondary:active, .btn-secondary.active,
.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #494f54;
    border-color: #494f54;
}
.btn-warning, .btn-warning:focus, .btn-warning.focus {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107;
    background-image: none;
    text-shadow: none;
}
.btn-warning:hover, .btn-warning:active, .btn-warning.active,
.open > .dropdown-toggle.btn-warning,
.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
    color: #212529;
    background-color: #e0a800;
    border-color: #e0a800;
}

/* Outline buttons also need readable text before hover or focus. */
.btn-outline-primary { color: #0056b3; border-color: #0056b3; }
.btn-outline-success { color: #1e7e34; border-color: #1e7e34; }
.btn-outline-info { color: #117a8b; border-color: #117a8b; }
.btn-outline-danger { color: #bd2130; border-color: #bd2130; }
.btn-outline-secondary { color: #5a6268; border-color: #5a6268; }
.btn-outline-warning { color: #856404; border-color: #856404; }
.btn-outline-primary:hover, .btn-outline-primary:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
    color: #fff; background-color: #0056b3; border-color: #0056b3;
}
.btn-outline-success:hover, .btn-outline-success:focus,
.btn-outline-success:not(:disabled):not(.disabled):active,
.btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
    color: #fff; background-color: #1e7e34; border-color: #1e7e34;
}
.btn-outline-info:hover, .btn-outline-info:focus,
.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
    color: #fff; background-color: #117a8b; border-color: #117a8b;
}
.btn-outline-danger:hover, .btn-outline-danger:focus,
.btn-outline-danger:not(:disabled):not(.disabled):active,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
    color: #fff; background-color: #bd2130; border-color: #bd2130;
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
    color: #fff; background-color: #5a6268; border-color: #5a6268;
}
.btn-outline-warning:hover, .btn-outline-warning:focus,
.btn-outline-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
    color: #212529; background-color: #ffc107; border-color: #856404;
}
.btn-link { color: #0056b3; }
.btn-link:hover, .btn-link:focus, .btn-link:active, .btn-link.active {
    color: #003e80;
}

/* A dark outline with a white surround remains visible on light and dark areas. */
.btn:focus, .btn.focus,
.btn:not(:disabled):not(.disabled):active:focus,
.btn:not(:disabled):not(.disabled).active:focus,
.show > .btn.dropdown-toggle:focus {
    outline: 3px solid #111827;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px #fff;
}

/* Keep the empty live region present so later payment errors are announced. */
.payment-error-message:empty {
    margin: 0;
    padding: 0;
    border: 0;
}
