/* ub-buttons.css: loaded last. Buttons are blue or orange with white text, never white. */

/* blue: every button except orange, danger and link styles */
.button:not(.button-orange):not(.button-danger):not(.button-danger-light):not(.button-link):not([value="reject"]):not([value="decline"]):not([value="cancel"]),
.dash-content button:not([class]),
.dash-content input[type="submit"]:not([class]),
.app-main .button-white {
    background: #1d7be8 !important;
    border: 1px solid #1d7be8 !important;
    color: #fff !important;
    cursor: pointer;
}
.button:not(.button-orange):not(.button-danger):not(.button-danger-light):not(.button-link):not([value="reject"]):not([value="decline"]):not([value="cancel"]):hover,
.dash-content button:not([class]):hover,
.dash-content input[type="submit"]:not([class]):hover,
.app-main .button-white:hover {
    background: #0b5fb8 !important;
    border-color: #0b5fb8 !important;
    color: #fff !important;
}

/* orange: orange buttons, reject/decline/cancel decisions, light-danger */
.button.button-orange,
.button.button-danger-light,
.button[value="reject"],
.button[value="decline"],
.button[value="cancel"] {
    background: #f97316 !important;
    border: 1px solid #f97316 !important;
    color: #fff !important;
    cursor: pointer;
}
.button.button-orange:hover,
.button.button-danger-light:hover,
.button[value="reject"]:hover,
.button[value="decline"]:hover,
.button[value="cancel"]:hover {
    background: #ea580c !important;
    border-color: #ea580c !important;
    color: #fff !important;
}

.button:disabled, .dash-content button:disabled { opacity: .55; cursor: not-allowed; }

/* filter forms on one row, button included */
form.form-grid[method="get"] { display: flex !important; flex-wrap: wrap; align-items: flex-end; gap: 14px; }
form.form-grid[method="get"] > .field { flex: 1 1 220px; margin: 0; min-width: 0; }
form.form-grid[method="get"] > .field:first-child { flex: 2 1 280px; }
form.form-grid[method="get"] > .field:last-child:has(> button) { flex: 0 0 auto; align-self: flex-end; }
form.form-grid[method="get"] > .button, form.form-grid[method="get"] > button { flex: 0 0 auto; margin: 0; }

/* ub-v92: buttons are compact and exactly as wide as their text, site-wide */
.button, a.button, button.button,
.ub14-btn, a.ub14-btn, button.ub14-btn {
    width: fit-content !important;
    min-width: 0 !important;
    max-width: 100%;
    flex-grow: 0 !important;
}
.button, a.button, button.button {
    min-height: 40px !important;
    padding: 8px 20px !important;
    font-size: 14px !important;
}
.button-small, a.button-small, button.button-small {
    min-height: 34px !important;
    padding: 6px 14px !important;
    font-size: 13px !important;
}
.button-link, a.button-link, button.button-link {
    min-height: auto !important;
    padding: 0 !important;
}
.search-bar .button {
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 10px 26px !important;
    font-size: 15px !important;
}
/* booking card call to action: text width, centred in the card */
.ub-bk-btn {
    display: flex !important;
    width: fit-content !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* mobile menu logout stays a full-width row */
.nav-account .inline-form .button { width: 100% !important; }
