/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-fdemiimn2m] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-fdemiimn2m] {
    flex: 1;
}

.sidebar[b-fdemiimn2m] {
    background-image: linear-gradient(180deg, var(--sidebar-bg-top) 0%, var(--sidebar-bg-bottom) 100%);
}

.top-row[b-fdemiimn2m] {
    background-color: #ffffff;
    border-bottom: 1px solid #e6e7eb;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

.top-row[b-fdemiimn2m]  .user-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    color: var(--brand-charcoal);
    font-weight: 500;
}

.top-row[b-fdemiimn2m]  .user-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--brand-pink);
    color: #fff;
    font-weight: 700;
    font-size: 0.78rem;
    text-transform: uppercase;
}

    .top-row[b-fdemiimn2m]  a, .top-row[b-fdemiimn2m]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-fdemiimn2m]  a:hover, .top-row[b-fdemiimn2m]  .btn-link:hover {
        text-decoration: underline;
    }

    /* The always-visible "+ New Lead" action sits flush-left and reads as a button, not a link. */
    .top-row[b-fdemiimn2m]  .new-lead-btn {
        margin-left: 0;
    }

    .top-row[b-fdemiimn2m]  .new-lead-btn:hover {
        text-decoration: none;
        color: #fff;
    }

    .top-row[b-fdemiimn2m]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-fdemiimn2m] {
        justify-content: space-between;
    }

    .top-row[b-fdemiimn2m]  a, .top-row[b-fdemiimn2m]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-fdemiimn2m] {
        flex-direction: row;
    }

    .sidebar[b-fdemiimn2m] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-fdemiimn2m] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-fdemiimn2m]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-fdemiimn2m], article[b-fdemiimn2m] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-fdemiimn2m] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-fdemiimn2m] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-7065pt5jop] {
    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-7065pt5jop] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-7065pt5jop] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.22);
}

.navbar-brand[b-7065pt5jop] {
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}

.brand-logo[b-7065pt5jop] {
    width: 180px;
    max-width: 100%;
    height: auto;
    display: block;
}

.bi[b-7065pt5jop] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-speedometer2-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-speedometer2' viewBox='0 0 16 16'%3E %3Cpath d='M8 4a.5.5 0 0 1 .5.5V6a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 8 4M3.732 5.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707M2 10a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 10m9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5m.754-4.246a.39.39 0 0 0-.527-.02L7.547 9.31a.91.91 0 1 0 1.302 1.258l3.434-4.297a.39.39 0 0 0-.029-.518z'/%3E %3Cpath fill-rule='evenodd' d='M0 10a8 8 0 1 1 15.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A8 8 0 0 1 0 10m8-7a7 7 0 0 0-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 0 0 8 3'/%3E %3C/svg%3E");
}

.bi-funnel-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-funnel-fill' viewBox='0 0 16 16'%3E %3Cpath d='M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5z'/%3E %3C/svg%3E");
}

.bi-briefcase-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-briefcase-fill' viewBox='0 0 16 16'%3E %3Cpath d='M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v1.384l7.614 2.03a1.5 1.5 0 0 0 .772 0L16 5.884V4.5A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5'/%3E %3Cpath d='M0 12.5A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5V6.85L8.129 8.947a.5.5 0 0 1-.258 0L0 6.85z'/%3E %3C/svg%3E");
}

.bi-building-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-building-fill' viewBox='0 0 16 16'%3E %3Cpath d='M3 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h3v-3.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V16h3a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm1 2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5M4 5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM7.5 5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM4.5 8h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5'/%3E %3C/svg%3E");
}

.bi-bell-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-bell-fill' viewBox='0 0 16 16'%3E %3Cpath d='M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2m.995-14.901a1 1 0 1 0-1.99 0A5 5 0 0 0 3 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901'/%3E %3C/svg%3E");
}

.bi-receipt-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-receipt' viewBox='0 0 16 16'%3E %3Cpath d='M1.92.506a.5.5 0 0 1 .434.14L3 1.293l.646-.647a.5.5 0 0 1 .708 0L5 1.293l.646-.647a.5.5 0 0 1 .708 0L7 1.293l.646-.647a.5.5 0 0 1 .708 0L9 1.293l.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .801.13l.5 1A.5.5 0 0 1 15 2v12a.5.5 0 0 1-.053.224l-.5 1a.5.5 0 0 1-.8.13L13 14.707l-.646.647a.5.5 0 0 1-.708 0L11 14.707l-.646.647a.5.5 0 0 1-.708 0L9 14.707l-.646.647a.5.5 0 0 1-.708 0L7 14.707l-.646.647a.5.5 0 0 1-.708 0L5 14.707l-.646.647a.5.5 0 0 1-.708 0L3 14.707l-.646.647a.5.5 0 0 1-.801-.13l-.5-1A.5.5 0 0 1 1 14V2a.5.5 0 0 1 .053-.224l.5-1a.5.5 0 0 1 .367-.27m.217 1.338L2 2.118v11.764l.137.274.51-.51a.5.5 0 0 1 .707 0l.646.647.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.509.509.137-.274V2.118l-.137-.274-.51.51a.5.5 0 0 1-.707 0L12 1.707l-.646.647a.5.5 0 0 1-.708 0L10 1.707l-.646.647a.5.5 0 0 1-.708 0L8 1.707l-.646.647a.5.5 0 0 1-.708 0L6 1.707l-.646.647a.5.5 0 0 1-.708 0L4 1.707l-.646.647a.5.5 0 0 1-.708 0z'/%3E %3Cpath d='M3 4.5a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m8-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5'/%3E %3C/svg%3E");
}

.bi-table-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-table' viewBox='0 0 16 16'%3E %3Cpath d='M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm15 2h-4v3h4V4zm0 4h-4v3h4V8zm0 4h-4v3h3a1 1 0 0 0 1-1v-2zm-5 3v-3H6v3h4zm-5 0v-3H1v2a1 1 0 0 0 1 1h3zm-4-4h4V8H1v3zm0-4h4V4H1v3zm5-3v3h4V4H6zm4 4H6v3h4V8z'/%3E %3C/svg%3E");
}

.bi-lightning-charge-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-lightning-charge-fill' viewBox='0 0 16 16'%3E %3Cpath d='M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09z'/%3E %3C/svg%3E");
}

.bi-people-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-people-fill' viewBox='0 0 16 16'%3E %3Cpath d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6m-5.784 6A2.24 2.24 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.3 6.3 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5'/%3E %3C/svg%3E");
}

.bi-signpost-split-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-signpost-split-fill' viewBox='0 0 16 16'%3E %3Cpath d='M7 16h2V6h5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.8 2.4A1 1 0 0 0 14 2H9v-.586a1 1 0 0 0-2 0V7H2a1 1 0 0 0-.8.4L.225 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4h5z'/%3E %3C/svg%3E");
}

.bi-person-fill-gear-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill-gear' viewBox='0 0 16 16'%3E %3Cpath d='M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4m9.886-3.54c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0'/%3E %3C/svg%3E");
}

.bi-gear-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-gear-fill' viewBox='0 0 16 16'%3E %3Cpath d='M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z'/%3E %3C/svg%3E");
}

.bi-key-fill-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-key-fill' viewBox='0 0 16 16'%3E %3Cpath d='M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 0 1-3.163 2M2.5 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2'/%3E %3C/svg%3E");
}

.bi-box-arrow-left-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-box-arrow-left' viewBox='0 0 16 16'%3E %3Cpath fill-rule='evenodd' d='M6 12.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v2a.5.5 0 0 1-1 0v-2A1.5 1.5 0 0 1 6.5 2h8A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 5 12.5v-2a.5.5 0 0 1 1 0z'/%3E %3Cpath fill-rule='evenodd' d='M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H10.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z'/%3E %3C/svg%3E");
}

.bi-box-arrow-in-right-nav-menu[b-7065pt5jop] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-box-arrow-in-right' viewBox='0 0 16 16'%3E %3Cpath fill-rule='evenodd' d='M6 3.5a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-8a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 0-1 0v2A1.5 1.5 0 0 0 6.5 14h8a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-8A1.5 1.5 0 0 0 5 3.5v2a.5.5 0 0 0 1 0z'/%3E %3Cpath fill-rule='evenodd' d='M11.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H1.5a.5.5 0 0 0 0 1h8.793l-2.147 2.146a.5.5 0 0 0 .708.708z'/%3E %3C/svg%3E");
}

.nav-item[b-7065pt5jop] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-7065pt5jop] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-7065pt5jop] {
        padding-bottom: 1rem;
    }

    .nav-item[b-7065pt5jop]  .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-7065pt5jop]  a.active {
    background-color: var(--brand-pink);
    color: #fff;
    font-weight: 600;
}

.nav-item[b-7065pt5jop]  .nav-link:hover {
    background-color: rgba(255,255,255,0.12);
    color: white;
}

.nav-scrollable[b-7065pt5jop] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-7065pt5jop] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-7065pt5jop] {
        display: none;
    }

    .nav-scrollable[b-7065pt5jop] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-9nkm7d5kl4],
.components-reconnect-repeated-attempt-visible[b-9nkm7d5kl4],
.components-reconnect-failed-visible[b-9nkm7d5kl4],
.components-pause-visible[b-9nkm7d5kl4],
.components-resume-failed-visible[b-9nkm7d5kl4],
.components-rejoining-animation[b-9nkm7d5kl4] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-retrying[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-failed[b-9nkm7d5kl4],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-9nkm7d5kl4] {
    display: block;
}


#components-reconnect-modal[b-9nkm7d5kl4] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-9nkm7d5kl4 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-9nkm7d5kl4 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-9nkm7d5kl4 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-9nkm7d5kl4]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-9nkm7d5kl4 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-9nkm7d5kl4 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-9nkm7d5kl4 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-9nkm7d5kl4 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-9nkm7d5kl4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-9nkm7d5kl4] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-9nkm7d5kl4] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-9nkm7d5kl4] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-9nkm7d5kl4] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-9nkm7d5kl4] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-9nkm7d5kl4] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-9nkm7d5kl4 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-9nkm7d5kl4] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-9nkm7d5kl4 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/LeadsWorkspace.razor.rz.scp.css */
/* Lightweight modals (no Bootstrap JS needed) */
.lead-modal-backdrop[b-zzn600e3uy] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1050;
}

.lead-modal[b-zzn600e3uy] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1051;
    width: min(460px, 94vw);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
}

/* Capped table (dashboard): scroll pane with a sticky header so it doesn't dominate the page */
.ws-capped[b-zzn600e3uy] {
    overflow-y: auto;
}

.ws-capped thead th[b-zzn600e3uy] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--bs-table-bg, #f8f9fa);
}

/* Wider search field — it carries the most-used filter (company / contact / DBA / MSCID) */
.ws-search[b-zzn600e3uy] {
    flex: 0 1 26rem;
    min-width: 0;
}

.ws-search .form-control[b-zzn600e3uy] {
    width: 100%;
}

/* Log-call modal — a bit wider, with a scrollable history list */
.call-modal[b-zzn600e3uy] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1051;
    width: min(560px, 94vw);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
}

.call-history[b-zzn600e3uy] {
    max-height: 40vh;
    overflow-y: auto;
}

.call-item[b-zzn600e3uy] {
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.call-item:last-child[b-zzn600e3uy] {
    border-bottom: 0;
}

/* ---- Card layout (dashboard open-leads) — one full-width card per row ---- */
.ws-capped-cards[b-zzn600e3uy] {
    overflow-y: auto;
}

.lead-card[b-zzn600e3uy] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-left: 3px solid transparent;   /* accent reserved for attention states only */
    border-radius: 0.5rem;
    background: var(--bs-body-bg, #fff);
    margin-bottom: 0.5rem;
    overflow: hidden;
    transition: box-shadow 0.12s ease;
}

.lead-card:last-child[b-zzn600e3uy] {
    margin-bottom: 0;
}

.lead-card:hover[b-zzn600e3uy] {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

/* Colour draws the eye only to leads that need action now */
.lead-card.lc-overdue[b-zzn600e3uy] {
    border-left-color: var(--bs-danger, #dc3545);
}

.lead-card.lc-today[b-zzn600e3uy] {
    border-left-color: var(--bs-warning, #ffc107);
}

/* Header: customer + status (left), owner + follow-up (right) */
.lc-head[b-zzn600e3uy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    padding: 0.45rem 0.7rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

/* Overdue cards get a subtle danger header so they stand out at a glance */
.lead-card.lc-overdue .lc-head[b-zzn600e3uy] {
    background: var(--bs-danger-bg-subtle, #f8d7da);
    border-bottom-color: var(--bs-danger-border-subtle, #f1aeb5);
}

.lc-head-title[b-zzn600e3uy] {
    min-width: 0;
}

/* Customer name is the card's title — read as strong charcoal, not another pink link */
.lc-head-title a[b-zzn600e3uy] {
    color: var(--brand-charcoal, #4b4d52);
    font-size: 1.02rem;
}

.lc-head-title a:hover[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
}

/* Sub-line under the customer name: DBA */
.lc-sub[b-zzn600e3uy] {
    margin-top: 0.1rem;
}

.lc-head-meta[b-zzn600e3uy] {
    display: flex;
    gap: 1.25rem;
    align-items: center;
    flex-wrap: wrap;
}

.lc-inline[b-zzn600e3uy] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.lc-label[b-zzn600e3uy] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--bs-secondary-color, #6c757d);
}

/* Body: contact stack (left) beside editable notes (right) */
.lc-body[b-zzn600e3uy] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 0.55rem 0.7rem;
}

.lc-contact[b-zzn600e3uy] {
    flex: 0 1 15rem;
    min-width: 0;
    display: flex;
    flex-direction: column;
    font-size: 0.875rem;
    line-height: 1.5;
    word-break: break-word;
}

/* Lead source chip sits at the bottom of the contact column, just above the actions */
.lc-source-chip[b-zzn600e3uy] {
    margin-top: auto;
    padding-top: 0.5rem;
}

/* Contact email/phone are secondary detail — neutral until hovered, so pink stays meaningful */
.lc-contact a[b-zzn600e3uy] {
    color: var(--bs-body-color, #212529);
    text-decoration: none;
}

.lc-contact a:hover[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
    text-decoration: underline;
}

.lc-notes[b-zzn600e3uy] {
    flex: 1 1 auto;
    min-width: 0;
}

/* Notes textarea grows; the History icon sits to its right, vertically centered */
.lc-notes-row[b-zzn600e3uy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lc-notes-field[b-zzn600e3uy] {
    flex: 1 1 auto;
    min-width: 0;
}

/* "History" icon beside the notes textarea — plain icon button */
.lc-history-btn[b-zzn600e3uy] {
    display: inline-flex;
    align-items: center;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
}

.lc-history-btn:hover[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
}

/* Footer: actions (left), created/updated meta (right) */
.lc-foot[b-zzn600e3uy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    padding: 0.4rem 0.7rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

/* ===== List view (sandbox: /test-leads) — rows/columns with a notes sub-row ===== */

/* Calmer, lighter table text overall — less contrast between fields */
.ll-table[b-zzn600e3uy] {
    font-size: 0.85rem;
}

/* One <tbody> per lead = its main row + notes sub-row as a single unit: no divider
   between them, one row divider only after the group's last row. */
.ll-table > tbody > tr > td[b-zzn600e3uy] {
    border-bottom-width: 0;
}

.ll-table > tbody > tr:last-child > td[b-zzn600e3uy] {
    border-bottom-width: var(--bs-border-width, 1px);
}

/* Hovering anywhere in a lead highlights the whole group together */
.ll-table > tbody:hover > tr > td[b-zzn600e3uy] {
    background: var(--bs-tertiary-bg, #f8f9fa);
}

/* Attention accent runs down the left edge of the whole group */
.ll-table > tbody > tr > td:first-child[b-zzn600e3uy] {
    border-left: 3px solid transparent;
}

.ll-table > tbody.lc-overdue > tr > td:first-child[b-zzn600e3uy] {
    border-left-color: var(--bs-danger, #dc3545);
}

.ll-table > tbody.lc-today > tr > td:first-child[b-zzn600e3uy] {
    border-left-color: var(--bs-warning, #ffc107);
}

/* Contact email/phone: neutral until hovered, so pink stays meaningful */
.ll-contact-link[b-zzn600e3uy] {
    color: var(--bs-body-color, #212529);
    text-decoration: none;
}

.ll-contact-link:hover[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
    text-decoration: underline;
}

/* The email address reads as a real hyperlink (pink + underlined, normal weight); phone stays neutral */
.ll-contact-link[href^="mailto:"][b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
    text-decoration: underline;
}

/* Notes sub-row: indented under its lead, reads as an inline italic note */
.ll-sub > td[b-zzn600e3uy] {
    padding-top: 0.1rem;
    padding-bottom: 0.45rem;
    padding-left: 2.2rem;
}

/* Last-call line: the most recent logged call, read-only, prefixed with its date */
.ll-lastcall[b-zzn600e3uy] {
    font-size: 0.82rem;
    font-style: italic;
    color: var(--bs-body-color, #212529);
}

.ll-lastcall-date[b-zzn600e3uy] {
    /* italic + weight inherited from .ll-lastcall; just render it a touch lighter than the note body */
    color: var(--bs-secondary-color, #6c757d);
}

/* Log call + history sit right by the call text — left of it (desktop sub-row) / above it (mobile card) */
.ll-callrow[b-zzn600e3uy] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.ll-callrow > .ll-lastcall[b-zzn600e3uy] {
    min-width: 0;
}

/* Mobile card: salesperson name is a small sub-line under the customer name */
.lc-owner[b-zzn600e3uy] {
    font-size: 0.8rem;
}

/* Log call + history are the same Bootstrap outline buttons as the row actions (btn btn-sm .ll-act):
   history = btn-outline-secondary (identical to Edit); log call = btn-outline-warning + the amber
   fill below. Icons are markup-sized (15px) to match the Create/Edit/Close icons. */

/* Full-resolution list: a bounded scroll region so the column headers stay pinned while the rows
   scroll, and the wide table's horizontal scroll is contained here instead of on the page. */
.ll-scrollwrap[b-zzn600e3uy] {
    max-height: calc(100vh - 12rem);
    overflow-y: auto;
}

.ll-scrollwrap thead th[b-zzn600e3uy] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-table-bg, #f8f9fa);
}

/* Sortable column headers */
.ll-sort[b-zzn600e3uy] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.ll-sort:hover[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
}

.ll-caret[b-zzn600e3uy] {
    color: var(--brand-pink, #cf4a9b);
    font-size: 0.7rem;
}

/* Follow-up field carries the status colour itself (no badge): danger = overdue, warning = today */
.ll-fu[b-zzn600e3uy]  .ll-fu-overdue {
    background-color: var(--bs-danger, #dc3545);
    border-color: var(--bs-danger, #dc3545);
    color: #fff;
}

.ll-fu[b-zzn600e3uy]  .ll-fu-overdue::-webkit-calendar-picker-indicator {
    filter: invert(1);
}

.ll-fu[b-zzn600e3uy]  .ll-fu-today {
    background-color: var(--bs-warning, #ffc107);
    border-color: var(--bs-warning, #ffc107);
    color: #212529;
}

/* Compact icon action buttons — Create/Edit/Close in the actions column and Log call/history by the notes */
.ll-act[b-zzn600e3uy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.7rem;
    line-height: 1;
}

/* Every row button carries a subtle fill of its own outline colour (the Log-call treatment). Overriding
   the --bs-btn-bg token (not background-color) keeps Bootstrap's hover, which still fills solid. */
.ll-act.btn-outline-success[b-zzn600e3uy] {
    --bs-btn-bg: var(--bs-success-bg-subtle);
}

.ll-act.btn-outline-secondary[b-zzn600e3uy] {
    --bs-btn-bg: var(--bs-secondary-bg-subtle);
}

.ll-act.btn-outline-danger[b-zzn600e3uy] {
    --bs-btn-bg: var(--bs-danger-bg-subtle);
}

.ll-act.btn-outline-warning[b-zzn600e3uy] {
    --bs-btn-bg: var(--bs-warning-bg-subtle);
}

/* All row buttons now carry the tinted fill (see the .ll-act variants above). Log call only needs a
   darker amber icon so it stays legible on its subtle amber fill (amber-on-amber is too low-contrast). */
.ll-chip[b-zzn600e3uy] {
    color: var(--bs-warning-text-emphasis, #664d03);
}

.ll-chip:hover[b-zzn600e3uy] {
    color: #000;
}
/* /Components/Pages/Customer.razor.rz.scp.css */
/* Contract-status chips — ONE pill vocabulary shared by the Contracts grid and
   the ESIID reverse-index card so status reads identically in both places.
   Confirmed = solid green / Ended = gray outline / Dropped = red outline / Pending = soft neutral. */
.chip[b-2oeoprj49f] {
    display: inline-block;
    border: 1px solid transparent;
    border-radius: 999px;
    padding: 1px 9px;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    white-space: nowrap;
}
.chip-confirmed[b-2oeoprj49f] { background: var(--bs-success, #198754); border-color: var(--bs-success, #198754); color: #fff; }
.chip-ended[b-2oeoprj49f]     { background: #fff; border-color: var(--bs-secondary, #6c757d); color: var(--bs-secondary, #6c757d); }
.chip-dropped[b-2oeoprj49f]   { background: #fff; border-color: var(--bs-danger, #dc3545); color: var(--bs-danger, #dc3545); }
.chip-pending[b-2oeoprj49f]   { background: var(--bs-tertiary-bg, #f8f9fa); border-color: var(--bs-border-color, #dee2e6); color: var(--bs-body-color, #212529); }
/* clickable chips (ESIID card) — keep the pill look, add a subtle hover */
a.chip:hover[b-2oeoprj49f]    { text-decoration: none; filter: brightness(0.97); }

/* "Flowing" — contract is currently between its start and end date */
.flowing-dot[b-2oeoprj49f] {
    color: #198754;
    margin-left: 0.35rem;
    font-size: 0.7rem;
    vertical-align: middle;
}

/* Sticky headers while scrolling the (long) contract + ESIID lists */
.contract-table thead th[b-2oeoprj49f],
.esiid-table thead th[b-2oeoprj49f] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--bs-tertiary-bg, #f8f9fa);
}

/* Sortable column headers */
.contract-table thead th[role="button"][b-2oeoprj49f] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}
.contract-table thead th[role="button"]:hover[b-2oeoprj49f] {
    color: var(--brand-pink, #cf4a9b);
}

/* Denser, cleaner grids — one consistent, legible size for EVERY table on the page
   (Contracts, Leads, ESIID), header rows included, so nothing reads oversized. */
.card table[b-2oeoprj49f] {
    font-size: 0.875rem;
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
.metrics-total td[b-a0zb9jjj0g] {
    border-top: 2px solid var(--brand-charcoal);
    vertical-align: top;
}

/* Goal tracker + business-snapshot read best as a centered, bounded column, not full-bleed */
.dash-narrow[b-a0zb9jjj0g] {
    max-width: 64rem;
    margin-inline: auto;
}

/* Pending Contracts is a wide 13-column table — compact it and keep headers on one line */
.pending-table[b-a0zb9jjj0g] {
    font-size: 0.85rem;
}

/* Business Snapshot table — match the Pending Contracts content size */
.snapshot-table[b-a0zb9jjj0g] {
    font-size: 0.85rem;
}

.pending-table th[b-a0zb9jjj0g] {
    white-space: nowrap;
}

/* Each contract + its DBA/note sub-rows is its own <tbody> = one visual unit: no dividers
   inside the group, a single row divider only after the group's last row. */
.pending-table > tbody > tr > td[b-a0zb9jjj0g] {
    border-bottom-width: 0;
}

.pending-table > tbody > tr:last-child > td[b-a0zb9jjj0g] {
    border-bottom-width: var(--bs-border-width, 1px);
}

/* DBA / internal-note sub-rows: indented, italic, attached to their contract row */
.pending-sub td[b-a0zb9jjj0g] {
    padding-top: 0.05rem;
    padding-bottom: 0.35rem;
    padding-left: 2.2rem;
    font-size: 0.8rem;
    font-style: italic;
    white-space: normal;
}

.pending-dba[b-a0zb9jjj0g] {
    color: var(--bs-secondary-color, #6c757d);
}

.pending-note[b-a0zb9jjj0g] {
    color: var(--bs-blue, #0d6efd);
}

/* Desktop pending table: contain + scroll like Open Leads / Upcoming Renewals, with a sticky header. */
.pending-scrollwrap[b-a0zb9jjj0g] {
    max-height: 600px;
    overflow-y: auto;
}

.pending-scrollwrap thead th[b-a0zb9jjj0g] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-table-bg, #f8f9fa);
}

/* Mobile pending cards: contain + scroll, with a little breathing room under the section header. */
.pending-cards[b-a0zb9jjj0g] {
    max-height: 600px;
    overflow-y: auto;
    padding-top: 0.5rem;
}

/* Awaiting signature (info) / PMVI-late (danger) carry the list-view row colour onto the card:
   left edge + tinted header, mirroring the Deals-page card treatment. */
.exp-card.pending-await[b-a0zb9jjj0g] {
    border-left: 3px solid var(--bs-info, #0dcaf0);
}

.exp-card.pending-await .exp-head[b-a0zb9jjj0g] {
    background: var(--bs-info-bg-subtle, #cff4fc);
    border-bottom-color: var(--bs-info-border-subtle, #9eeaf9);
}

.exp-card.pending-late[b-a0zb9jjj0g] {
    border-left: 3px solid var(--bs-danger, #dc3545);
}

.exp-card.pending-late .exp-head[b-a0zb9jjj0g] {
    background: var(--bs-danger-bg-subtle, #f8d7da);
    border-bottom-color: var(--bs-danger-border-subtle, #f1aeb5);
}

.pending-cards .pending-dba[b-a0zb9jjj0g],
.pending-cards .pending-note[b-a0zb9jjj0g] {
    font-size: 0.8rem;
    line-height: 1.35;
}

/* Legend swatches reuse the Bootstrap row-tint variables so they match the row colours exactly */
.legend-swatch[b-a0zb9jjj0g] {
    display: inline-block;
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 3px;
    border: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-table-bg, transparent);
    vertical-align: -2px;
    margin-right: 0.15rem;
}

/* Clickable Contracts counts open the drill-in modal — styled as pills */
.snapshot-chip[b-a0zb9jjj0g] {
    display: inline-block;
    min-width: 2rem;
    border: 1px solid var(--brand-pink);
    background: var(--brand-pink-050);
    color: var(--brand-pink-dark);
    border-radius: 999px;
    padding: 1px 12px;
    font-size: 0.85rem;
    font-weight: 600;
    line-height: 1.5;
    cursor: pointer;
    font-variant-numeric: tabular-nums;
    transition: background 0.12s ease, color 0.12s ease;
}
.snapshot-chip:hover:not(:disabled)[b-a0zb9jjj0g] {
    background: var(--brand-pink);
    color: #fff;
}
.snapshot-chip:disabled[b-a0zb9jjj0g] {
    border-color: transparent;
    background: transparent;
    color: var(--bs-secondary-color);
    font-weight: 400;
    cursor: default;
}

/* Lightweight modal (no Bootstrap JS needed) */
.dash-modal-backdrop[b-a0zb9jjj0g] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1050;
}
.dash-modal[b-a0zb9jjj0g] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1051;
    background: #fff;
    border-radius: 0.6rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
    padding: 1rem 1.25rem;
    width: min(980px, 96vw);
    max-height: 86vh;
    display: flex;
    flex-direction: column;
}
.dash-modal .table-responsive[b-a0zb9jjj0g] {
    max-height: 70vh;
}

/* Match the call-history modal's lighter type in the drill-in contracts table */
.dash-modal .table[b-a0zb9jjj0g] {
    font-size: 0.85rem;
}

/* Renewal call-history modal — narrower than the drill-in modal */
.dash-call-modal[b-a0zb9jjj0g] {
    width: min(560px, 96vw);
}

.dash-call-history[b-a0zb9jjj0g] {
    max-height: 40vh;
    overflow-y: auto;
}

.dash-call-item[b-a0zb9jjj0g] {
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.dash-call-item:last-child[b-a0zb9jjj0g] {
    border-bottom: 0;
}

/* ---- Expiring — renew: one contract per full-width card (mirrors the open-leads cards) ---- */
.exp-cards[b-a0zb9jjj0g] {
    max-height: 640px;
    overflow-y: auto;
}

.exp-card[b-a0zb9jjj0g] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    background: var(--bs-body-bg, #fff);
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.exp-card:last-child[b-a0zb9jjj0g] {
    margin-bottom: 0;
}

.exp-head[b-a0zb9jjj0g] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    padding: 0.45rem 0.7rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

/* Header: name + MSC on top, owner/expiry small below (left); renewal action floats right */
.exp-head-title[b-a0zb9jjj0g] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

/* Customer name renders as the pink link colour (like the Leads/Deals lists), bold via .cust-name */
.exp-title[b-a0zb9jjj0g] {
    font-size: 1.02rem;
}

.exp-title:hover[b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
}

/* Owner + expiry: small metadata under the customer name */
.exp-submeta[b-a0zb9jjj0g] {
    display: flex;
    gap: 1rem;
    align-items: center;
    flex-wrap: wrap;
    font-size: 0.78rem;
}

.exp-head-action[b-a0zb9jjj0g] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.exp-history-btn[b-a0zb9jjj0g] {
    display: inline-flex;
    align-items: center;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
}

.exp-history-btn:hover[b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
}

.exp-renewal[b-a0zb9jjj0g] {
    max-width: 13rem;
}

/* Definite flex basis (not form-control's width:100% capped by max-width, which sized the header controls
   right to their edge and wrapped "My renewals only" to a second line); shrinks instead of forcing a wrap. */
.exp-search[b-a0zb9jjj0g] {
    flex: 0 1 18rem;
    min-width: 0;
}

.exp-inline[b-a0zb9jjj0g] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.exp-label[b-a0zb9jjj0g] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--bs-secondary-color, #6c757d);
}

.exp-body[b-a0zb9jjj0g] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 0.55rem 0.7rem;
}

.exp-contact[b-a0zb9jjj0g] {
    flex: 0 0 15rem;
    font-size: 0.875rem;
    line-height: 1.5;
    word-break: break-word;
}

.exp-link[b-a0zb9jjj0g] {
    color: var(--bs-body-color, #212529);
    text-decoration: none;
}

.exp-link:hover[b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
    text-decoration: underline;
}

/* Email renders as a real hyperlink (pink + underlined), like the leads/deals contact email; phone stays neutral */
.exp-link[href^="mailto:"][b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
    text-decoration: underline;
}

.exp-details[b-a0zb9jjj0g] {
    flex: 1 1 auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
    gap: 0.35rem 0.75rem;
    align-content: start;
}

.exp-details > div[b-a0zb9jjj0g] {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
    font-size: 0.875rem;
}

.exp-foot[b-a0zb9jjj0g] {
    padding: 0.4rem 0.7rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

/* ===== Renewals row/table trial (desktop ≥ md) — mirrors the leads / pending-contracts tables ===== */
.exp-scrollwrap[b-a0zb9jjj0g] {
    max-height: 600px;
    overflow-y: auto;
}

.exp-scrollwrap thead th[b-a0zb9jjj0g] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-table-bg, #f8f9fa);
}

.exp-table[b-a0zb9jjj0g] {
    font-size: 0.85rem;
}

/* one <tbody> per renewal = main row + contact sub-row as a single unit (divider only after the group) */
.exp-table > tbody > tr > td[b-a0zb9jjj0g] {
    border-bottom-width: 0;
}

.exp-table > tbody > tr:last-child > td[b-a0zb9jjj0g] {
    border-bottom-width: var(--bs-border-width, 1px);
}

.exp-table > tbody:hover > tr > td[b-a0zb9jjj0g] {
    background: var(--bs-tertiary-bg, #f8f9fa);
}

/* contact sub-row: indented, like the leads call-text / pending DBA sub-row */
.exp-sub > td[b-a0zb9jjj0g] {
    padding-top: 0.05rem;
    padding-bottom: 0.4rem;
    padding-left: 2.2rem;
}

.exp-contactrow[b-a0zb9jjj0g] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    align-items: center;
    font-size: 0.82rem;
}

/* Call-history button in the contact sub-row — soft-filled outline like the Open Leads history button */
.exp-hist[b-a0zb9jjj0g] {
    --bs-btn-bg: var(--bs-secondary-bg-subtle);
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    line-height: 1;
}

.exp-table .exp-renewal[b-a0zb9jjj0g] {
    width: 9.5rem;
}

/* Sortable renewal column headers */
.exp-sort[b-a0zb9jjj0g] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.exp-sort:hover[b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
}

.exp-caret[b-a0zb9jjj0g] {
    color: var(--brand-pink, #cf4a9b);
    font-size: 0.7rem;
}

/* ===== Section accents — tie each dashboard section to its top tile by colour, and separate them.
   Pending Contracts = warning (amber), Open Leads = primary (pink), Upcoming Renewals = danger (red). ===== */
.dash-section[b-a0zb9jjj0g] {
    border-left-width: 4px;
    border-left-style: solid;
}

.dash-section.sec-pending[b-a0zb9jjj0g] {
    border-left-color: var(--bs-info);
}

.dash-section.sec-leads[b-a0zb9jjj0g] {
    border-left-color: var(--bs-primary);
}

.dash-section.sec-renewals[b-a0zb9jjj0g] {
    border-left-color: var(--bs-warning);
}

/* Subtle matching tint on the section's title header for clearer separation */
.dash-section.sec-pending > .card-header[b-a0zb9jjj0g] {
    background: var(--bs-info-bg-subtle, #cff4fc);
}

.dash-section.sec-leads > .card-header[b-a0zb9jjj0g] {
    background: var(--brand-pink-050, #fbeef6);
}

.dash-section.sec-renewals > .card-header[b-a0zb9jjj0g] {
    background: var(--bs-warning-bg-subtle, #fff3cd);
}
/* /Components/Pages/DealEdit.razor.rz.scp.css */
/* Label / value / fill styling is now GLOBAL (wwwroot/app.css). This file keeps only the
   deal-screen-specific bits below (section headers, confirm spotlight, verify flags, modal). */

/* In-form section headers — distinct from field labels (bolder, darker, ruled) */
.section-head[b-zvkzm9gll9] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--brand-charcoal, #4b4d52);
    border-bottom: 1px solid var(--bs-border-color);
    padding-bottom: 0.2rem;
    margin: 0.85rem 0 0.65rem;
}
.section-sub[b-zvkzm9gll9] {
    font-weight: 500;
    text-transform: none;
    letter-spacing: normal;
    font-size: 0.72rem;
    color: var(--bs-secondary-color);
}

/* Confirm-flow spotlight: when the user sets Stage=Confirmed, draw the eye to the Confirmation fields */
.section-head.section-active[b-zvkzm9gll9] {
    color: var(--brand-pink, #cf4a9b);
    border-bottom-color: var(--brand-pink, #cf4a9b);
}
.row.confirm-active[b-zvkzm9gll9] {
    margin-left: 0;
    margin-right: 0;
    background: var(--brand-pink-050, rgba(207, 74, 155, 0.07));
    border-left: 3px solid var(--brand-pink, #cf4a9b);
    border-radius: 0 0.4rem 0.4rem 0;
    padding: 0.5rem 0.25rem 0.05rem 0.5rem;
}

/* Upstream email fields flagged during confirm so back-office can tick through the whole email */
.verify-field .form-label[b-zvkzm9gll9] {
    color: var(--brand-pink, #cf4a9b);
}
.verify-field .form-label[b-zvkzm9gll9]::before {
    content: "●";
    margin-right: 0.3em;
    font-size: 0.6em;
    vertical-align: middle;
}
/* stronger outline on the field itself so the eye can jump straight to each email field */
.verify-field[b-zvkzm9gll9]  .form-control,
.verify-field[b-zvkzm9gll9]  .form-select {
    border-color: var(--brand-pink, #cf4a9b);
    box-shadow: 0 0 0 1px var(--brand-pink, #cf4a9b);
}

/* Problem flagged → the description field demands attention until filled in */
.needs-desc[b-zvkzm9gll9] {
    border-color: var(--bs-danger, #dc3545);
    box-shadow: 0 0 0 1px var(--bs-danger, #dc3545);
}

/* Lightweight add-supplier modal (no Bootstrap JS needed) */
.supplier-modal-backdrop[b-zvkzm9gll9] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1050;
}

.supplier-modal[b-zvkzm9gll9] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1051;
    width: min(420px, 94vw);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
}
/* /Components/Pages/Deals.razor.rz.scp.css */
/* ===== Deals list — mirrors the LeadsWorkspace treatment (sortable sticky table + mobile cards),
   with the dashboard "Pending Contracts" column set and an indented DBA / internal-note sub-row. ===== */

/* Wider search field — carries the most-used filter (customer / MSCID / DBA) */
.ws-search[b-km9qe0pgny] {
    flex: 0 1 26rem;
    min-width: 0;
}

.ws-search .form-control[b-km9qe0pgny] {
    width: 100%;
}

/* Bounded scroll region so the column headers stay pinned while the rows scroll, and the wide table's
   horizontal scroll is contained here instead of on the page. */
.dl-scrollwrap[b-km9qe0pgny] {
    max-height: calc(100vh - 13rem);
    overflow-y: auto;
}

.dl-scrollwrap thead th[b-km9qe0pgny] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-table-bg, #f8f9fa);
}

/* Calmer, lighter table text overall */
.dl-table[b-km9qe0pgny] {
    font-size: 0.85rem;
}

/* Customer name is the row's bold anchor everywhere (shared global .cust-name in app.css); the mobile
   card additionally recolours it charcoal — see .dc-head-title a.cust-name below. */

/* Status / problem / contract badges run a touch larger across the deals list (per request; may revisit) */
.dl-table .badge[b-km9qe0pgny],
.deal-card .badge[b-km9qe0pgny] {
    font-size: 0.78rem;
}

/* One <tbody> per deal = its main row + note sub-row as a single unit: no divider between them,
   one row divider only after the group's last row. */
.dl-table > tbody > tr > td[b-km9qe0pgny] {
    border-bottom-width: 0;
}

.dl-table > tbody > tr:last-child > td[b-km9qe0pgny] {
    border-bottom-width: var(--bs-border-width, 1px);
}

/* Hovering anywhere in a deal highlights the whole group together */
.dl-table > tbody:hover > tr > td[b-km9qe0pgny] {
    background: var(--bs-tertiary-bg, #f8f9fa);
}

/* Attention tint fills the whole group (drafts only), like the dashboard Pending Contracts rows:
   awaiting customer signature = info, PMVI stalled at the supplier > 7 days = danger. Declared after the
   :hover rule above so the tint (equal specificity) wins on hover — tinted rows keep their colour. */
.dl-table > tbody.dl-awaiting > tr > td[b-km9qe0pgny] {
    background: var(--bs-info-bg-subtle, #cff4fc);
}

.dl-table > tbody.dl-delayed > tr > td[b-km9qe0pgny] {
    background: var(--bs-danger-bg-subtle, #f8d7da);
}

/* Note sub-row: indented under its deal, reads as an inline italic note (like the leads call text) */
.dl-sub > td[b-km9qe0pgny] {
    padding-top: 0.1rem;
    padding-bottom: 0.45rem;
    padding-left: 2.2rem;
}

.dl-noterow[b-km9qe0pgny] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* Internal note = the primary italic text; DBA = a lighter italic prefix */
.dl-note[b-km9qe0pgny] {
    font-size: 0.82rem;
    font-style: italic;
    color: var(--bs-blue, #0d6efd);   /* matches the dashboard Pending Contracts internal-note colour */
    white-space: pre-line;   /* dated notes are appended with newlines */
}

.dl-dba[b-km9qe0pgny] {
    font-size: 0.82rem;
    font-style: italic;
    color: var(--bs-secondary-color, #6c757d);
}

/* Sortable column headers */
.dl-sort[b-km9qe0pgny] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.dl-sort:hover[b-km9qe0pgny] {
    color: var(--brand-pink, #cf4a9b);
}

.dl-caret[b-km9qe0pgny] {
    color: var(--brand-pink, #cf4a9b);
    font-size: 0.7rem;
}

/* Compact "Open" action — the soft-fill outline treatment from the leads row buttons */
.dl-act[b-km9qe0pgny] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.7rem;
    line-height: 1;
}

.dl-act.btn-outline-secondary[b-km9qe0pgny] {
    --bs-btn-bg: var(--bs-secondary-bg-subtle);
}

/* Legend swatches under the table */
.dl-swatch[b-km9qe0pgny] {
    display: inline-block;
    width: 0.85rem;
    height: 0.85rem;
    border-radius: 2px;
    vertical-align: -1px;
    margin-right: 0.15rem;
}

.dl-swatch-info[b-km9qe0pgny] {
    background: var(--bs-info-bg-subtle, #cff4fc);
    border: 1px solid var(--bs-info-border-subtle, #9eeaf9);
}

.dl-swatch-danger[b-km9qe0pgny] {
    background: var(--bs-danger-bg-subtle, #f8d7da);
    border: 1px solid var(--bs-danger-border-subtle, #f1aeb5);
}

/* ===== Mobile (< md): one card per deal ===== */
.deal-card[b-km9qe0pgny] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    background: var(--bs-body-bg, #fff);
    margin-bottom: 0.5rem;
    overflow: hidden;
    transition: box-shadow 0.12s ease;
}

.deal-card:last-child[b-km9qe0pgny] {
    margin-bottom: 0;
}

.deal-card:hover[b-km9qe0pgny] {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

/* Full-card tint (mirrors the full-row tint on the table) */
.deal-card.dl-awaiting[b-km9qe0pgny] {
    background: var(--bs-info-bg-subtle, #cff4fc);
    border-color: var(--bs-info-border-subtle, #9eeaf9);
}

.deal-card.dl-delayed[b-km9qe0pgny] {
    background: var(--bs-danger-bg-subtle, #f8d7da);
    border-color: var(--bs-danger-border-subtle, #f1aeb5);
}

.dc-head[b-km9qe0pgny] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    padding: 0.45rem 0.7rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

/* On a tinted card the header is transparent (shows the card tint); only its divider takes the tint colour */
.deal-card.dl-awaiting .dc-head[b-km9qe0pgny] {
    background: transparent;
    border-bottom-color: var(--bs-info-border-subtle, #9eeaf9);
}

.deal-card.dl-delayed .dc-head[b-km9qe0pgny] {
    background: transparent;
    border-bottom-color: var(--bs-danger-border-subtle, #f1aeb5);
}

.dc-head-title[b-km9qe0pgny] {
    flex: 1 1 auto;   /* fill the header so the status badge (ms-auto) floats to the card's right edge */
    min-width: 0;
}

/* Card title is charcoal (size + weight come from the shared .cust-name) */
.dc-head-title a.cust-name[b-km9qe0pgny] {
    color: var(--brand-charcoal, #4b4d52);
}

.dc-head-title a.cust-name:hover[b-km9qe0pgny] {
    color: var(--brand-pink, #cf4a9b);
}

.dc-owner[b-km9qe0pgny] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

.dc-body[b-km9qe0pgny] {
    padding: 0.55rem 0.7rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.dc-details[b-km9qe0pgny] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(6.5rem, 1fr));
    gap: 0.2rem 0.9rem;
    font-size: 0.85rem;
}

.dc-details > div[b-km9qe0pgny] {
    display: flex;
    flex-direction: column;
}

.dc-label[b-km9qe0pgny] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--bs-secondary-color, #6c757d);
}
/* /Components/Pages/NewDeal.razor.rz.scp.css */
/* Lightweight open-lead / create-lead modal (no Bootstrap JS needed) */
.deal-modal-backdrop[b-hfef4x1936] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1050;
}

.deal-modal[b-hfef4x1936] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1051;
    width: min(500px, 94vw);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
}
/* /Components/Pages/Reconciliation.razor.rz.scp.css */
/* One table, auto layout → each column sizes to its content ONCE, so every year-block lines up.
   (Outer-column edge spacing is handled app-wide in app.css for tables flush in a card.) */
.recon-table[b-d96mlll4d6] {
    width: 100%;
}

/* Sticky column headers as you scroll the page through the blocks */
.recon-table thead th[b-d96mlll4d6] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-table-bg, #f8f9fa);
    white-space: nowrap;
}

/* On desktop the top bar is sticky (3.5rem tall) — pin the headers just beneath it */
@media (min-width: 641px) {
    .recon-table thead th[b-d96mlll4d6] {
        top: 3.5rem;
    }
}

/* Year-block section header row: the bucket label + its totals, visually separating the blocks */
.recon-table .recon-section td[b-d96mlll4d6] {
    background: var(--bs-tertiary-bg, #f2f2f4);
    border-top: 2px solid var(--bs-border-color, #dee2e6);
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

/* No divider above the very first block (it sits right under the header) */
.recon-table tbody.recon-block:first-of-type .recon-section td[b-d96mlll4d6] {
    border-top: 0;
}

/* Per-block subtotal row */
.recon-table .recon-subtotal td[b-d96mlll4d6] {
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}
/* /Components/Pages/StatementReconcile.razor.rz.scp.css */
/* Sticky, scrollable table panes — headers stay put while the body scrolls. */
.tbl-scroll[b-9g6xj12v24] {
    max-height: 30rem;
    overflow: auto;
}
.tbl-scroll table[b-9g6xj12v24] {
    margin-bottom: 0;
}
.tbl-scroll thead th[b-9g6xj12v24] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--bs-tertiary-bg, #f8f9fa);
}
/* Totals row stays pinned to the bottom of the scroll pane */
.tbl-scroll tfoot td[b-9g6xj12v24] {
    position: sticky;
    bottom: 0;
    z-index: 2;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-top: 2px solid var(--bs-border-color, #dee2e6);
}

/* Sortable column headers */
th.sortable[b-9g6xj12v24] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}
th.sortable:hover[b-9g6xj12v24] {
    color: var(--brand-pink, #cf4a9b);
}

/* One standardized chip vocabulary — outlined pill, white fill, colored text/border. */
.chip[b-9g6xj12v24] {
    display: inline-block;
    border: 1px solid transparent;
    border-radius: 999px;
    padding: 1px 9px;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    white-space: nowrap;
    background: #fff;
}
.chip-success[b-9g6xj12v24]   { border-color: var(--bs-success, #198754);   color: var(--bs-success, #198754); }
.chip-danger[b-9g6xj12v24]    { border-color: var(--bs-danger, #dc3545);    color: var(--bs-danger, #dc3545); }
.chip-warning[b-9g6xj12v24]   { border-color: var(--bs-warning, #ffc107);   color: #8a6d00; }
.chip-info[b-9g6xj12v24]      { border-color: var(--bs-info, #0dcaf0);      color: #087990; }
.chip-secondary[b-9g6xj12v24] { border-color: var(--bs-secondary, #6c757d); color: var(--bs-secondary, #6c757d); }

/* MSC / contract chip that links to the deal */
a.chip-link[b-9g6xj12v24] {
    border-color: var(--brand-pink, #cf4a9b);
    color: var(--brand-pink, #cf4a9b);
    font-family: var(--bs-font-monospace, monospace);
}
a.chip-link:hover[b-9g6xj12v24] {
    background: var(--brand-pink, #cf4a9b);
    color: #fff;
}
