/* _content/TEMPUS.Web/Components/Layout/MainLayout.razor.rz.scp.css */
/* Scoped styles for MainLayout — TEMPUS brand */

#blazor-error-ui[b-syceifdk7b] {
    background: #C0392B;
    bottom: 0;
    color: white;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
    font-family: 'Inter', sans-serif;
    font-size: 0.875rem;
}

#blazor-error-ui .dismiss[b-syceifdk7b] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* _content/TEMPUS.Web/Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-40hln55jvu] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-40hln55jvu] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-40hln55jvu] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-40hln55jvu] {
    font-size: 1.1rem;
}

.bi[b-40hln55jvu] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-40hln55jvu] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-40hln55jvu] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-40hln55jvu] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-40hln55jvu] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-40hln55jvu] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-40hln55jvu] {
        padding-bottom: 1rem;
    }

    .nav-item[b-40hln55jvu]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-40hln55jvu]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-40hln55jvu]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-40hln55jvu] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-40hln55jvu] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-40hln55jvu] {
        display: none;
    }

    .nav-scrollable[b-40hln55jvu] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* _content/TEMPUS.Web/Components/Pages/NewQuote.razor.rz.scp.css */
/*
    Line items table: the Type column.

    The column was being squeezed by the fixed-width Qty (80px) and Unit price
    (110px) columns next to it, so the longest option, TravelCallout, was cut off.

    Everything here is sized by max-content rather than a pixel value. That matters
    for AB#95625's requirement that "the width must hold for whatever set of options
    the dropdown offers, so that adding a longer option later does not bring the
    truncation back": a px width chosen to fit TravelCallout today would truncate the
    next longer enum value added, whereas max-content re-derives from the content.
*/

/* width:1px with nowrap is the table idiom for "shrink-wrap this column to its
   content"; the browser expands it to the minimum the content needs. */
.line-type-cell[b-5471b5h1fv] {
    width: 1px;
    white-space: nowrap;
}

.line-type-select[b-5471b5h1fv] {
    min-width: max-content;
}
/* _content/TEMPUS.Web/Components/Pages/ProfilePage.razor.rz.scp.css */
/*
    Profile details tile: the rows listing email, contact number and joined date.

    Previously each row carried inline `padding:8px 0` with a `border-bottom`, and
    the joined-date row is conditional. When a user has no joined date the contact
    number became the last row and its separator was the last thing in the tile,
    which is what AB#95619 reported as "a line that leads nowhere".

    Using :last-child rather than conditional markup means whichever row happens to
    be last loses its separator, so the no-joined-date case is handled by the same
    rule as every other case rather than by a special branch that could be missed
    if another row is added later.
*/

.profile-details[b-i8ajfpknm4] {
    /* Extra padding at the bottom so there is clear white space between the last
       row and the tile's edge. The tile has no fixed height, so it grows to suit
       rather than the rows being spread to fill it. */
    padding: 8px 16px 20px;
}

.profile-detail-row[b-i8ajfpknm4] {
    display: flex;
    align-items: center;
    gap: 8px;
    /* Was 8px. Even top and bottom so spacing is consistent across every row,
       and the text keeps its size and position within the row. */
    padding: 14px 0;
    border-bottom: 1px solid #F0F0F0;
}

.profile-detail-row:last-child[b-i8ajfpknm4] {
    border-bottom: none;
}
