/* Atlantic Motion Systems branding */

:root {
    --ams-charcoal: #252525;
    --ams-burgundy: #922747;
}

/* Application header */
.tb-header mat-toolbar,
.tb-header .mat-toolbar,
mat-toolbar.mat-primary {
    background-color: var(--ams-charcoal) !important;
    color: #ffffff !important;
}

/* Primary action buttons */
button.mat-mdc-raised-button.mat-primary,
button.mat-mdc-unelevated-button.mat-primary {
    background-color: var(--ams-burgundy) !important;
    color: #ffffff !important;
}

/* Keyboard focus */
button:focus-visible,
a:focus-visible {
    outline: 3px solid var(--ams-burgundy) !important;
    outline-offset: 3px;
}

/* Login background */
tb-login .tb-login-content {
    background: #252525 !important;
}

/* Login card */
tb-login .tb-login-content > mat-card {
    background: #343434 !important;
    color: #ffffff !important;
}

/* Login button */
tb-login .tb-login-form button[type="submit"] {
    background: #922747 !important;
    color: #ffffff !important;
}

/* Login branding layout */
tb-login tb-logo.login-logo {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    text-align: center !important;
}

tb-login tb-logo.login-logo > a {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    text-decoration: none !important;
}

tb-login .ams-brand-name {
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: clamp(16px, 4vw, 26px) !important;
    font-weight: 600 !important;
    letter-spacing: normal !important;
    white-space: nowrap !important;
    color: #ffffff !important;
}