/* /Pages/Databases.razor.rz.scp.css */
/* =========================================================
   PAGE
========================================================= */

.databases-page[b-cfjf9hn9sf] {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 34px 34px 72px;
    box-sizing: border-box;
    color: #182033;
}


/* =========================================================
   LOADING / ERRORS / MESSAGES
========================================================= */

.page-loading[b-cfjf9hn9sf] {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #667085;
}

    .page-loading > div:last-child[b-cfjf9hn9sf] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .page-loading strong[b-cfjf9hn9sf] {
        color: #263044;
        font-size: 14px;
    }

    .page-loading span[b-cfjf9hn9sf] {
        color: #8c95a5;
        font-size: 12px;
    }

.loading-spinner[b-cfjf9hn9sf],
.button-spinner[b-cfjf9hn9sf] {
    border-radius: 50%;
    border-style: solid;
    border-right-color: transparent;
    animation: spin-b-cfjf9hn9sf .7s linear infinite;
}

.loading-spinner[b-cfjf9hn9sf] {
    width: 30px;
    height: 30px;
    border-width: 3px;
    border-color: #e5e8f0;
    border-top-color: #6472d8;
}

.button-spinner[b-cfjf9hn9sf] {
    width: 13px;
    height: 13px;
    border-width: 2px;
    border-color: currentColor;
    border-right-color: transparent;
}

@keyframes spin-b-cfjf9hn9sf {
    to {
        transform: rotate(360deg);
    }
}

.page-error[b-cfjf9hn9sf],
.page-message[b-cfjf9hn9sf] {
    margin-bottom: 20px;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    border-radius: 12px;
}

.page-error[b-cfjf9hn9sf] {
    background: #fff5f5;
    border: 1px solid #efcccc;
    color: #943c3c;
}

.page-message[b-cfjf9hn9sf] {
    background: #f0faf4;
    border: 1px solid #c8ead3;
    color: #347251;
}

.page-error-icon[b-cfjf9hn9sf],
.page-message-icon[b-cfjf9hn9sf] {
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 850;
}

.page-error-icon[b-cfjf9hn9sf] {
    background: #f8dada;
    color: #b33838;
}

.page-message-icon[b-cfjf9hn9sf] {
    background: #d8f3e1;
    color: #257946;
}

.page-error > div:last-child[b-cfjf9hn9sf] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-error strong[b-cfjf9hn9sf] {
    font-size: 13px;
}

.page-error span[b-cfjf9hn9sf],
.page-message span[b-cfjf9hn9sf] {
    font-size: 12px;
    line-height: 1.5;
}


/* =========================================================
   HEADER
========================================================= */

.page-header[b-cfjf9hn9sf] {
    margin-bottom: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
}

.eyebrow[b-cfjf9hn9sf] {
    margin-bottom: 7px;
    color: #6472d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.page-header h1[b-cfjf9hn9sf] {
    margin: 0;
    color: #172033;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -.035em;
}

.page-header p[b-cfjf9hn9sf] {
    max-width: 680px;
    margin: 10px 0 0;
    color: #768093;
    font-size: 14px;
    line-height: 1.65;
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button[b-cfjf9hn9sf],
.secondary-button[b-cfjf9hn9sf],
.details-button[b-cfjf9hn9sf],
.modal-close[b-cfjf9hn9sf] {
    font: inherit;
    cursor: pointer;
}

.primary-button[b-cfjf9hn9sf] {
    min-height: 43px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #202941;
    border-radius: 9px;
    background: #202941;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: .15s ease;
}

    .primary-button:hover:not(:disabled)[b-cfjf9hn9sf] {
        background: #161e30;
        transform: translateY(-1px);
        box-shadow: 0 5px 14px rgba(25, 33, 52, .12);
    }

.secondary-button[b-cfjf9hn9sf] {
    min-height: 41px;
    padding: 0 15px;
    border: 1px solid #d8dde6;
    border-radius: 9px;
    background: #fff;
    color: #364154;
    font-size: 12px;
    font-weight: 700;
    transition: .15s ease;
}

    .secondary-button:hover:not(:disabled)[b-cfjf9hn9sf] {
        background: #f7f8fa;
        border-color: #c9cfda;
    }

    .primary-button:disabled[b-cfjf9hn9sf],
    .secondary-button:disabled[b-cfjf9hn9sf],
    .modal-close:disabled[b-cfjf9hn9sf] {
        cursor: not-allowed;
        opacity: .6;
    }

.button-plus[b-cfjf9hn9sf] {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
}


/* =========================================================
   SUMMARY
========================================================= */

.summary-grid[b-cfjf9hn9sf] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.summary-card[b-cfjf9hn9sf] {
    min-width: 0;
    padding: 19px;
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.summary-icon[b-cfjf9hn9sf] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 10px;
    font-weight: 850;
}

.database-summary-icon[b-cfjf9hn9sf] {
    background: #eef0ff;
    color: #5b68cf;
}

.table-summary-icon[b-cfjf9hn9sf] {
    background: #edf8f2;
    color: #347c59;
}

.view-summary-icon[b-cfjf9hn9sf] {
    background: #f4effd;
    color: #7550b2;
}

.column-summary-icon[b-cfjf9hn9sf] {
    background: #fff4e8;
    color: #9c652c;
}

.summary-card > div:last-child[b-cfjf9hn9sf] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.summary-label[b-cfjf9hn9sf] {
    margin-bottom: 3px;
    color: #7a8494;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .055em;
}

.summary-card strong[b-cfjf9hn9sf] {
    color: #1c2435;
    font-size: 23px;
    line-height: 1.05;
    letter-spacing: -.025em;
}

.summary-card small[b-cfjf9hn9sf] {
    margin-top: 5px;
    color: #969eab;
    font-size: 10px;
}


/* =========================================================
   MAIN PANEL
========================================================= */

.database-panel[b-cfjf9hn9sf] {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.panel-header[b-cfjf9hn9sf] {
    min-height: 76px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid #edf0f4;
}

    .panel-header h2[b-cfjf9hn9sf] {
        margin: 0;
        color: #20283a;
        font-size: 15px;
        font-weight: 750;
    }

    .panel-header p[b-cfjf9hn9sf] {
        margin: 4px 0 0;
        color: #8a93a2;
        font-size: 11px;
    }

.toolbar[b-cfjf9hn9sf] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.search-box[b-cfjf9hn9sf] {
    width: 245px;
    height: 39px;
    padding: 0 11px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dce1e9;
    border-radius: 9px;
    background: #fff;
}

    .search-box:focus-within[b-cfjf9hn9sf] {
        border-color: #6a77d9;
        box-shadow: 0 0 0 3px rgba(105, 118, 217, .09);
    }

    .search-box svg[b-cfjf9hn9sf] {
        width: 15px;
        height: 15px;
        flex: 0 0 auto;
        fill: none;
        stroke: #8993a3;
        stroke-width: 1.8;
        stroke-linecap: round;
    }

    .search-box input[b-cfjf9hn9sf] {
        width: 100%;
        min-width: 0;
        border: 0;
        outline: 0;
        background: transparent;
        color: #263044;
        font: inherit;
        font-size: 12px;
    }

        .search-box input[b-cfjf9hn9sf]::placeholder {
            color: #a1a8b4;
        }

.provider-filter[b-cfjf9hn9sf] {
    height: 39px;
    padding: 0 31px 0 11px;
    border: 1px solid #dce1e9;
    border-radius: 9px;
    outline: none;
    background: #fff;
    color: #4b5669;
    font: inherit;
    font-size: 12px;
}


/* =========================================================
   DATABASE CARDS
========================================================= */

.database-list[b-cfjf9hn9sf] {
    display: flex;
    flex-direction: column;
}

.database-card[b-cfjf9hn9sf] {
    border-bottom: 1px solid #edf0f4;
    transition: background .14s ease;
}

    .database-card:last-child[b-cfjf9hn9sf] {
        border-bottom: 0;
    }

    .database-card:hover[b-cfjf9hn9sf] {
        background: #fdfdfe;
    }

.database-main[b-cfjf9hn9sf] {
    min-height: 91px;
    padding: 17px 20px;
    display: grid;
    grid-template-columns: 44px minmax(220px, 1fr) auto auto;
    align-items: center;
    gap: 14px;
}

.provider-mark[b-cfjf9hn9sf] {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #f0f2f7;
    color: #566174;
    font-size: 10px;
    font-weight: 850;
}

.database-identity[b-cfjf9hn9sf] {
    min-width: 0;
}

.database-title-row[b-cfjf9hn9sf] {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}

    .database-title-row h3[b-cfjf9hn9sf] {
        min-width: 0;
        margin: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #273043;
        font-size: 13px;
        font-weight: 750;
    }

.connected-badge[b-cfjf9hn9sf] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #397659;
    font-size: 9px;
    font-weight: 750;
}

.status-dot[b-cfjf9hn9sf] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #4caf78;
    box-shadow: 0 0 0 3px rgba(76, 175, 120, .12);
}

.database-subtitle[b-cfjf9hn9sf] {
    min-width: 0;
    margin-top: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
    color: #929aa8;
    font-size: 10px;
}

    .database-subtitle span[b-cfjf9hn9sf] {
        max-width: 220px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.separator[b-cfjf9hn9sf] {
    flex: 0 0 auto;
    color: #c2c7d0;
}

.database-metrics[b-cfjf9hn9sf] {
    display: flex;
    align-items: center;
    gap: 23px;
}

    .database-metrics > div[b-cfjf9hn9sf] {
        min-width: 50px;
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .database-metrics strong[b-cfjf9hn9sf] {
        color: #30394b;
        font-size: 12px;
    }

    .database-metrics span[b-cfjf9hn9sf] {
        color: #9aa2af;
        font-size: 9px;
    }

.database-actions[b-cfjf9hn9sf] {
    min-width: 120px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 7px;
}

.last-scan[b-cfjf9hn9sf] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    white-space: nowrap;
}

    .last-scan span[b-cfjf9hn9sf] {
        color: #9aa2af;
        font-size: 9px;
    }

    .last-scan strong[b-cfjf9hn9sf] {
        color: #697386;
        font-size: 9px;
        font-weight: 700;
    }

.details-button[b-cfjf9hn9sf] {
    padding: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 0;
    background: transparent;
    color: #5e6bd2;
    font-size: 10px;
    font-weight: 750;
}

    .details-button:hover[b-cfjf9hn9sf] {
        text-decoration: underline;
    }

.details-chevron[b-cfjf9hn9sf] {
    display: inline-block;
    transition: transform .18s ease;
}

    .details-chevron.expanded[b-cfjf9hn9sf] {
        transform: rotate(180deg);
    }

.database-details[b-cfjf9hn9sf] {
    padding: 16px 20px 18px 78px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px 22px;
    background: #fafbfc;
    border-top: 1px solid #eef1f4;
}

.detail-item[b-cfjf9hn9sf] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

    .detail-item span[b-cfjf9hn9sf] {
        color: #969eab;
        font-size: 9px;
        text-transform: uppercase;
        letter-spacing: .05em;
        font-weight: 700;
    }

    .detail-item strong[b-cfjf9hn9sf] {
        overflow: hidden;
        text-overflow: ellipsis;
        color: #3d4759;
        font-size: 11px;
        font-weight: 650;
    }

    .detail-item .positive-value[b-cfjf9hn9sf] {
        color: #357a55;
    }


/* =========================================================
   EMPTY STATE
========================================================= */

.empty-state[b-cfjf9hn9sf] {
    padding: 68px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.empty-icon[b-cfjf9hn9sf] {
    width: 49px;
    height: 49px;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: #f0f2f7;
    color: #596477;
    font-size: 11px;
    font-weight: 850;
}

.empty-state h3[b-cfjf9hn9sf] {
    margin: 0;
    color: #283144;
    font-size: 14px;
}

.empty-state p[b-cfjf9hn9sf] {
    max-width: 430px;
    margin: 7px 0 18px;
    color: #8c95a4;
    font-size: 12px;
    line-height: 1.6;
}


/* =========================================================
   MODAL
========================================================= */
.modal-backdrop[b-cfjf9hn9sf] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 30px 18px;
    overflow-y: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    /*
        Do NOT use backdrop-filter here.
        A simple translucent overlay is dramatically cheaper to render.
    */
    background: rgba(15, 23, 42, 0.52);
}

.database-modal[b-cfjf9hn9sf] {
    width: min(760px, 100%);
    margin: auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 18px;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .24);
}

.modal-header[b-cfjf9hn9sf] {
    padding: 23px 25px 19px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #edf0f4;
}

    .modal-header h2[b-cfjf9hn9sf] {
        margin: 0;
        color: #182033;
        font-size: 21px;
        letter-spacing: -.02em;
    }

    .modal-header p[b-cfjf9hn9sf] {
        margin: 6px 0 0;
        color: #7d8797;
        font-size: 12px;
    }

.modal-close[b-cfjf9hn9sf] {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e1e5eb;
    border-radius: 9px;
    background: #fff;
    color: #667085;
    font-size: 22px;
    line-height: 1;
}

    .modal-close:hover:not(:disabled)[b-cfjf9hn9sf] {
        background: #f6f7f9;
    }

.modal-body[b-cfjf9hn9sf] {
    padding: 24px 25px;
}

.form-section + .form-section[b-cfjf9hn9sf] {
    margin-top: 27px;
    padding-top: 25px;
    border-top: 1px solid #edf0f4;
}

.form-section-heading[b-cfjf9hn9sf] {
    margin-bottom: 17px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
}

.section-number[b-cfjf9hn9sf] {
    width: 29px;
    height: 29px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #eef0ff;
    color: #5967d8;
    font-size: 11px;
    font-weight: 800;
}

.form-section-heading > div[b-cfjf9hn9sf] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.form-section-heading strong[b-cfjf9hn9sf] {
    color: #343d4f;
    font-size: 13px;
}

.form-section-heading small[b-cfjf9hn9sf] {
    color: #8e97a5;
    font-size: 10px;
}

.provider-grid[b-cfjf9hn9sf] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.provider-card[b-cfjf9hn9sf] {
    appearance: none;
    width: 100%;
    padding: 13px;
    display: grid;
    grid-template-columns: 37px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 11px;
    border: 1px solid #dde2ea;
    border-radius: 11px;
    background: #fff;
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: .16s ease;
}

    .provider-card:hover[b-cfjf9hn9sf] {
        border-color: #aeb6d9;
    }

    .provider-card.selected[b-cfjf9hn9sf] {
        border-color: #6774db;
        background: #fafaff;
        box-shadow: 0 0 0 3px rgba(103, 116, 219, .08);
    }

.provider-icon[b-cfjf9hn9sf] {
    width: 37px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #f1f3f7;
    color: #495268;
    font-size: 9px;
    font-weight: 850;
}

.provider-card.selected .provider-icon[b-cfjf9hn9sf] {
    background: #eaedff;
    color: #5765d4;
}

.provider-card strong[b-cfjf9hn9sf] {
    display: block;
    color: #333c4e;
    font-size: 12px;
}

.provider-card span[b-cfjf9hn9sf] {
    display: block;
    margin-top: 2px;
    color: #929aa7;
    font-size: 9px;
}

.provider-radio[b-cfjf9hn9sf] {
    width: 17px;
    height: 17px;
    padding: 3px;
    border: 2px solid #cdd3df;
    border-radius: 50%;
    box-sizing: border-box;
}

.provider-card.selected .provider-radio[b-cfjf9hn9sf] {
    border-color: #6572da;
}

.radio-dot[b-cfjf9hn9sf] {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.provider-card.selected .radio-dot[b-cfjf9hn9sf] {
    background: #6572da;
}

.form-grid[b-cfjf9hn9sf] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.field[b-cfjf9hn9sf] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

    .field.full[b-cfjf9hn9sf] {
        grid-column: 1 / -1;
    }

    .field label[b-cfjf9hn9sf] {
        color: #485265;
        font-size: 11px;
        font-weight: 700;
    }

.form-control[b-cfjf9hn9sf] {
    width: 100%;
    min-height: 42px;
    padding: 9px 11px;
    box-sizing: border-box;
    border: 1px solid #d8dde7;
    border-radius: 8px;
    outline: none;
    background: #fff;
    color: #182033;
    font: inherit;
    font-size: 12px;
    transition: .15s ease;
}

    .form-control:focus[b-cfjf9hn9sf] {
        border-color: #6976d9;
        box-shadow: 0 0 0 3px rgba(105, 118, 217, .09);
    }

.validation-message[b-cfjf9hn9sf] {
    color: #c64040;
    font-size: 10px;
}

.tls-option[b-cfjf9hn9sf] {
    margin-top: 18px;
    padding: 15px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border: 1px solid #e4e7ed;
    border-radius: 10px;
    background: #fafbfc;
    cursor: pointer;
}

    .tls-option input[b-cfjf9hn9sf] {
        margin-top: 3px;
    }

    .tls-option > div[b-cfjf9hn9sf] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .tls-option strong[b-cfjf9hn9sf] {
        color: #424c5e;
        font-size: 11px;
    }

    .tls-option span[b-cfjf9hn9sf] {
        color: #828c9c;
        font-size: 10px;
        line-height: 1.45;
    }

.connection-result[b-cfjf9hn9sf] {
    margin-top: 20px;
    padding: 13px 14px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border-radius: 10px;
}

    .connection-result.success[b-cfjf9hn9sf] {
        background: #f0faf4;
        border: 1px solid #c7ead2;
    }

    .connection-result.error[b-cfjf9hn9sf] {
        background: #fff5f5;
        border: 1px solid #f0cccc;
    }

.result-icon[b-cfjf9hn9sf] {
    width: 25px;
    height: 25px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 850;
}

.connection-result.success .result-icon[b-cfjf9hn9sf] {
    background: #d8f3e1;
    color: #257946;
}

.connection-result.error .result-icon[b-cfjf9hn9sf] {
    background: #f8dada;
    color: #b33838;
}

.connection-result > div:last-child[b-cfjf9hn9sf] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.connection-result strong[b-cfjf9hn9sf] {
    color: #3d4759;
    font-size: 11px;
}

.connection-result span[b-cfjf9hn9sf] {
    color: #727d8e;
    font-size: 10px;
    line-height: 1.5;
}

.modal-footer[b-cfjf9hn9sf] {
    padding: 16px 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #fafbfc;
    border-top: 1px solid #e9edf2;
}

.modal-footer-right[b-cfjf9hn9sf] {
    display: flex;
    align-items: center;
    gap: 9px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {

    .summary-grid[b-cfjf9hn9sf] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .database-main[b-cfjf9hn9sf] {
        grid-template-columns: 44px minmax(0, 1fr) auto;
    }

    .database-metrics[b-cfjf9hn9sf] {
        grid-column: 2;
        grid-row: 2;
        margin-top: -3px;
    }

    .database-actions[b-cfjf9hn9sf] {
        grid-column: 3;
        grid-row: 1 / span 2;
    }

    .database-details[b-cfjf9hn9sf] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


@media (max-width: 800px) {

    .databases-page[b-cfjf9hn9sf] {
        padding: 26px 18px 60px;
    }

    .page-header[b-cfjf9hn9sf] {
        flex-direction: column;
    }

        .page-header .primary-button[b-cfjf9hn9sf] {
            width: 100%;
        }

    .panel-header[b-cfjf9hn9sf] {
        align-items: stretch;
        flex-direction: column;
    }

    .toolbar[b-cfjf9hn9sf] {
        width: 100%;
    }

    .search-box[b-cfjf9hn9sf] {
        width: auto;
        flex: 1;
    }

    .database-main[b-cfjf9hn9sf] {
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .database-metrics[b-cfjf9hn9sf] {
        grid-column: 2;
        grid-row: auto;
    }

    .database-actions[b-cfjf9hn9sf] {
        grid-column: 2;
        grid-row: auto;
        align-items: flex-start;
    }

    .database-details[b-cfjf9hn9sf] {
        padding-left: 78px;
    }
}


@media (max-width: 580px) {

    .databases-page[b-cfjf9hn9sf] {
        padding: 22px 14px 50px;
    }

    .summary-grid[b-cfjf9hn9sf] {
        grid-template-columns: 1fr;
    }

    .toolbar[b-cfjf9hn9sf] {
        flex-direction: column;
    }

    .search-box[b-cfjf9hn9sf],
    .provider-filter[b-cfjf9hn9sf] {
        width: 100%;
        box-sizing: border-box;
    }

    .database-main[b-cfjf9hn9sf] {
        padding: 16px;
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 11px;
    }

    .database-metrics[b-cfjf9hn9sf],
    .database-actions[b-cfjf9hn9sf] {
        grid-column: 1 / -1;
        padding-left: 51px;
    }

    .database-metrics[b-cfjf9hn9sf] {
        gap: 18px;
    }

    .database-details[b-cfjf9hn9sf] {
        padding: 15px 16px 17px 67px;
        grid-template-columns: 1fr;
    }

    .modal-backdrop[b-cfjf9hn9sf] {
        padding: 12px;
    }

    .database-modal[b-cfjf9hn9sf] {
        border-radius: 14px;
    }

    .modal-header[b-cfjf9hn9sf],
    .modal-body[b-cfjf9hn9sf],
    .modal-footer[b-cfjf9hn9sf] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .provider-grid[b-cfjf9hn9sf],
    .form-grid[b-cfjf9hn9sf] {
        grid-template-columns: 1fr;
    }

    .field.full[b-cfjf9hn9sf] {
        grid-column: auto;
    }

    .modal-footer[b-cfjf9hn9sf] {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .modal-footer-right[b-cfjf9hn9sf] {
        flex-direction: column;
        align-items: stretch;
    }

    .modal-footer .primary-button[b-cfjf9hn9sf],
    .modal-footer .secondary-button[b-cfjf9hn9sf] {
        width: 100%;
    }
}


/* =========================================================
   SCHEMA REFRESH
========================================================= */

.database-schema-zone[b-cfjf9hn9sf] {
    grid-column: 1 / -1;
    margin-top: 5px;
    padding-top: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid #eceff3;
}

    .database-schema-zone > div[b-cfjf9hn9sf] {
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .database-schema-zone strong[b-cfjf9hn9sf] {
        color: #39445a;
        font-size: 11px;
        font-weight: 750;
    }

    .database-schema-zone span[b-cfjf9hn9sf] {
        max-width: 650px;
        color: #8c95a4;
        font-size: 10px;
        line-height: 1.55;
    }

.refresh-schema-button[b-cfjf9hn9sf] {
    min-height: 36px;
    flex: 0 0 auto;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid #cfd5ef;
    border-radius: 8px;
    background: #fff;
    color: #5967cf;
    font: inherit;
    font-size: 10px;
    font-weight: 750;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease, transform .15s ease;
}

    .refresh-schema-button:hover:not(:disabled)[b-cfjf9hn9sf] {
        background: #f7f8ff;
        border-color: #aeb8ea;
        transform: translateY(-1px);
    }

    .refresh-schema-button:disabled[b-cfjf9hn9sf] {
        cursor: not-allowed;
        opacity: .6;
    }

.refresh-symbol[b-cfjf9hn9sf] {
    color: inherit !important;
    font-size: 15px !important;
    line-height: 1;
}

.refresh-unavailable[b-cfjf9hn9sf] {
    flex: 0 0 auto;
    max-width: 220px !important;
    text-align: right;
    color: #9aa2af !important;
}

@media (max-width: 580px) {

    .database-schema-zone[b-cfjf9hn9sf] {
        align-items: stretch;
        flex-direction: column;
    }

    .refresh-schema-button[b-cfjf9hn9sf] {
        width: 100%;
    }

    .refresh-unavailable[b-cfjf9hn9sf] {
        max-width: none !important;
        text-align: left;
    }
}


/* =========================================================
   DATABASE REMOVAL / DANGER ZONE
========================================================= */

.database-danger-zone[b-cfjf9hn9sf] {
    grid-column: 1 / -1;
    margin-top: 5px;
    padding-top: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid #eceff3;
}

    .database-danger-zone > div[b-cfjf9hn9sf] {
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .database-danger-zone strong[b-cfjf9hn9sf] {
        color: #8d3434;
        font-size: 11px;
        font-weight: 750;
    }

    .database-danger-zone span[b-cfjf9hn9sf] {
        max-width: 650px;
        color: #8c95a4;
        font-size: 10px;
        line-height: 1.55;
    }

.danger-button[b-cfjf9hn9sf] {
    min-height: 36px;
    flex: 0 0 auto;
    padding: 0 12px;
    border: 1px solid #e4bfc3;
    border-radius: 8px;
    background: #fff;
    color: #aa3f49;
    font: inherit;
    font-size: 10px;
    font-weight: 750;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease;
}

    .danger-button:hover[b-cfjf9hn9sf] {
        background: #fff5f5;
        border-color: #dca8ae;
    }

.remove-database-modal[b-cfjf9hn9sf] {
    width: min(560px, 100%);
}

.danger-eyebrow[b-cfjf9hn9sf] {
    color: #b44750;
}

.remove-modal-body[b-cfjf9hn9sf] {
    padding: 24px 25px;
}

.remove-warning-icon[b-cfjf9hn9sf] {
    width: 48px;
    height: 48px;
    margin-bottom: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff0f1;
    color: #ba424d;
    font-size: 20px;
    font-weight: 850;
}

.remove-warning-copy strong[b-cfjf9hn9sf] {
    display: block;
    margin-bottom: 6px;
    color: #313a4c;
    font-size: 13px;
}

.remove-warning-copy p[b-cfjf9hn9sf] {
    margin: 0;
    color: #788294;
    font-size: 11px;
    line-height: 1.65;
}

.remove-effects[b-cfjf9hn9sf] {
    margin-top: 20px;
    padding: 15px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border: 1px solid #e7eaf0;
    border-radius: 11px;
    background: #fafbfc;
}

    .remove-effects > div[b-cfjf9hn9sf] {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        color: #4d5769;
        font-size: 10px;
        line-height: 1.5;
    }

.remove-check[b-cfjf9hn9sf] {
    color: #6070cf;
    font-weight: 900;
}

.database-safe-note[b-cfjf9hn9sf] {
    margin-top: 16px;
    padding: 13px 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    border: 1px solid #cce5d5;
    border-radius: 10px;
    background: #f3faf6;
}

    .database-safe-note strong[b-cfjf9hn9sf] {
        color: #347553;
        font-size: 10px;
    }

    .database-safe-note span[b-cfjf9hn9sf] {
        color: #667b6f;
        font-size: 10px;
        line-height: 1.5;
    }

.remove-modal-footer[b-cfjf9hn9sf] {
    justify-content: flex-end;
}

.danger-confirm-button[b-cfjf9hn9sf] {
    min-height: 41px;
    padding: 0 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid #ad3c47;
    border-radius: 9px;
    background: #ad3c47;
    color: #fff;
    font: inherit;
    font-size: 12px;
    font-weight: 750;
    cursor: pointer;
    transition: background .15s ease, transform .15s ease;
}

    .danger-confirm-button:hover:not(:disabled)[b-cfjf9hn9sf] {
        background: #96333d;
        transform: translateY(-1px);
    }

    .danger-confirm-button:disabled[b-cfjf9hn9sf] {
        cursor: not-allowed;
        opacity: .6;
    }


@media (max-width: 580px) {

    .database-danger-zone[b-cfjf9hn9sf] {
        align-items: stretch;
        flex-direction: column;
    }

    .danger-button[b-cfjf9hn9sf] {
        width: 100%;
    }

    .remove-modal-body[b-cfjf9hn9sf] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .remove-modal-footer[b-cfjf9hn9sf] {
        flex-direction: column-reverse;
    }

        .remove-modal-footer .secondary-button[b-cfjf9hn9sf],
        .remove-modal-footer .danger-confirm-button[b-cfjf9hn9sf] {
            width: 100%;
        }
}


/* =========================================================
   ADMINISTRATOR ACCESS REQUIRED
========================================================= */

.access-denied-card[b-cfjf9hn9sf] {
    min-height: 480px;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 16px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.access-denied-icon[b-cfjf9hn9sf] {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff2f2;
    color: #af4048;
    font-size: 19px;
    font-weight: 850;
}

.access-denied-card h1[b-cfjf9hn9sf] {
    margin: 0;
    color: #283144;
    font-size: 20px;
}

.access-denied-card p[b-cfjf9hn9sf] {
    max-width: 520px;
    margin: 9px 0 0;
    color: #8993a2;
    font-size: 12px;
    line-height: 1.65;
}
/* /Pages/Index.razor.rz.scp.css */
/* =========================================================
   PAGE
========================================================= */

.dashboard-page[b-do4mm0o5vr] {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 34px 34px 72px;
    box-sizing: border-box;
    color: #182033;
}


/* =========================================================
   LOADING
========================================================= */

.dashboard-loading[b-do4mm0o5vr] {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #667085;
}

    .dashboard-loading > div:last-child[b-do4mm0o5vr] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .dashboard-loading strong[b-do4mm0o5vr] {
        color: #263044;
        font-size: 14px;
    }

    .dashboard-loading span[b-do4mm0o5vr] {
        font-size: 12px;
        color: #8c95a5;
    }

.loading-spinner[b-do4mm0o5vr] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 3px solid #e5e8f0;
    border-top-color: #6472d8;
    animation: dashboard-spin-b-do4mm0o5vr 0.75s linear infinite;
}

@keyframes dashboard-spin-b-do4mm0o5vr {
    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   ERROR
========================================================= */

.dashboard-error[b-do4mm0o5vr] {
    max-width: 650px;
    margin: 70px auto;
    padding: 18px 20px;
    display: flex;
    align-items: flex-start;
    gap: 13px;
    background: #fff5f5;
    border: 1px solid #efcccc;
    border-radius: 14px;
    color: #8e3434;
}

.dashboard-error-icon[b-do4mm0o5vr] {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f8dddd;
    color: #b53f3f;
    font-weight: 800;
}

.dashboard-error > div:last-child[b-do4mm0o5vr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.dashboard-error strong[b-do4mm0o5vr] {
    font-size: 14px;
}

.dashboard-error span[b-do4mm0o5vr] {
    font-size: 12px;
    line-height: 1.55;
}


/* =========================================================
   HEADER
========================================================= */

.dashboard-header[b-do4mm0o5vr] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 26px;
}

.eyebrow[b-do4mm0o5vr] {
    margin-bottom: 7px;
    color: #6472d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.13em;
}

.dashboard-header h1[b-do4mm0o5vr] {
    margin: 0;
    color: #172033;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -0.035em;
}

.dashboard-header p[b-do4mm0o5vr] {
    max-width: 650px;
    margin: 10px 0 0;
    color: #768093;
    font-size: 14px;
    line-height: 1.65;
}

.header-actions[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 10px;
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button[b-do4mm0o5vr],
.secondary-button[b-do4mm0o5vr],
.text-button[b-do4mm0o5vr],
.quick-action[b-do4mm0o5vr] {
    font: inherit;
}

.primary-button[b-do4mm0o5vr],
.secondary-button[b-do4mm0o5vr],
.text-button[b-do4mm0o5vr] {
    cursor: pointer;
}

.primary-button[b-do4mm0o5vr] {
    min-height: 43px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #202941;
    border-radius: 9px;
    background: #202941;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

    .primary-button:hover[b-do4mm0o5vr] {
        background: #161e30;
        transform: translateY(-1px);
        box-shadow: 0 5px 14px rgba(25, 33, 52, 0.12);
    }

.button-plus[b-do4mm0o5vr] {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
}

.secondary-button[b-do4mm0o5vr] {
    min-height: 39px;
    padding: 0 14px;
    border: 1px solid #d8dde6;
    border-radius: 8px;
    background: #fff;
    color: #364154;
    font-size: 12px;
    font-weight: 700;
    transition: background 0.15s ease, border-color 0.15s ease;
}

    .secondary-button:hover[b-do4mm0o5vr] {
        background: #f7f8fa;
        border-color: #c9cfda;
    }

.text-button[b-do4mm0o5vr] {
    border: none;
    background: transparent;
    color: #5d6bd4;
    font-size: 12px;
    font-weight: 700;
}

    .text-button:hover[b-do4mm0o5vr] {
        text-decoration: underline;
    }


/* =========================================================
   SUBSCRIPTION BANNER
========================================================= */

.subscription-banner[b-do4mm0o5vr] {
    margin-bottom: 20px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: linear-gradient( 135deg, #ffffff 0%, #fafaff 100% );
    border: 1px solid #e1e5ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, 0.025);
}

.subscription-left[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 0;
}

.subscription-icon[b-do4mm0o5vr] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #202941;
    color: white;
    font-size: 15px;
    font-weight: 800;
}

.subscription-title[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

    .subscription-title strong[b-do4mm0o5vr] {
        color: #20283a;
        font-size: 14px;
    }

.subscription-left p[b-do4mm0o5vr] {
    margin: 4px 0 0;
    color: #7e8796;
    font-size: 12px;
}

.subscription-badge[b-do4mm0o5vr] {
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

    .subscription-badge.trial[b-do4mm0o5vr] {
        background: #eef0ff;
        color: #5965c8;
    }

    .subscription-badge.active[b-do4mm0o5vr] {
        background: #e9f7ef;
        color: #28734c;
    }

    .subscription-badge.warning[b-do4mm0o5vr] {
        background: #fff4e8;
        color: #99602c;
    }

    .subscription-badge.inactive[b-do4mm0o5vr] {
        background: #fff0f1;
        color: #a14655;
    }

.subscription-price[b-do4mm0o5vr] {
    display: flex;
    align-items: baseline;
    gap: 4px;
    white-space: nowrap;
}

    .subscription-price strong[b-do4mm0o5vr] {
        color: #20283a;
        font-size: 17px;
    }

    .subscription-price span[b-do4mm0o5vr] {
        color: #929aa8;
        font-size: 11px;
    }


/* =========================================================
   STATS
========================================================= */

.stats-grid[b-do4mm0o5vr] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.stat-card[b-do4mm0o5vr] {
    padding: 20px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, 0.025);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

    .stat-card:hover[b-do4mm0o5vr] {
        transform: translateY(-2px);
        box-shadow: 0 9px 25px rgba(17, 24, 39, 0.05);
    }

.stat-top[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px;
}

.stat-icon[b-do4mm0o5vr] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 850;
}

.database-icon[b-do4mm0o5vr] {
    background: #eef0ff;
    color: #5b68cf;
}

.table-icon[b-do4mm0o5vr] {
    background: #edf8f2;
    color: #347c59;
}

.column-icon[b-do4mm0o5vr] {
    background: #fff4e8;
    color: #9c652c;
}

.scope-icon[b-do4mm0o5vr] {
    background: #f3effc;
    color: #7550b2;
}

.stat-label[b-do4mm0o5vr] {
    color: #697386;
    font-size: 12px;
    font-weight: 650;
}

.stat-value[b-do4mm0o5vr] {
    color: #171f30;
    font-size: 29px;
    line-height: 1;
    font-weight: 780;
    letter-spacing: -0.025em;
}

.stat-description[b-do4mm0o5vr] {
    margin-top: 8px;
    color: #949dab;
    font-size: 11px;
}


/* =========================================================
   DASHBOARD LAYOUT
========================================================= */

.dashboard-grid[b-do4mm0o5vr] {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(320px, 0.85fr);
    gap: 20px;
    margin-bottom: 20px;
}

.bottom-grid[b-do4mm0o5vr] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}


/* =========================================================
   GENERIC CARD
========================================================= */

.dashboard-card[b-do4mm0o5vr] {
    min-width: 0;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, 0.025);
}

.card-header[b-do4mm0o5vr] {
    min-height: 70px;
    padding: 20px 21px 17px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #edf0f4;
}

    .card-header h2[b-do4mm0o5vr] {
        margin: 0;
        color: #20283a;
        font-size: 15px;
        font-weight: 750;
    }

    .card-header p[b-do4mm0o5vr] {
        margin: 5px 0 0;
        color: #8a93a2;
        font-size: 11px;
        line-height: 1.5;
    }


/* =========================================================
   DATABASE LIST
========================================================= */

.database-list[b-do4mm0o5vr] {
    display: flex;
    flex-direction: column;
}

.database-row[b-do4mm0o5vr] {
    min-height: 78px;
    padding: 15px 20px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 24px;
    border-bottom: 1px solid #eef1f4;
}

    .database-row:last-child[b-do4mm0o5vr] {
        border-bottom: none;
    }

    .database-row:hover[b-do4mm0o5vr] {
        background: #fafbfc;
    }

.database-row-left[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.database-provider-icon[b-do4mm0o5vr] {
    width: 39px;
    height: 39px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f0f2f7;
    color: #596477;
    font-size: 10px;
    font-weight: 850;
}

.database-name[b-do4mm0o5vr] {
    color: #273043;
    font-size: 13px;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.database-meta[b-do4mm0o5vr] {
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 5px;
    color: #929aa8;
    font-size: 11px;
    overflow: hidden;
}

    .database-meta span[b-do4mm0o5vr] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.meta-dot[b-do4mm0o5vr] {
    flex: 0 0 auto;
    color: #c2c7d0;
}

.database-counts[b-do4mm0o5vr] {
    display: flex;
    align-items: center;
    gap: 22px;
}

    .database-counts > div[b-do4mm0o5vr] {
        min-width: 55px;
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    .database-counts strong[b-do4mm0o5vr] {
        color: #30394b;
        font-size: 12px;
    }

    .database-counts span[b-do4mm0o5vr] {
        color: #9aa2af;
        font-size: 10px;
    }

.database-row-right[b-do4mm0o5vr] {
    min-width: 105px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
}

.connection-status-pill[b-do4mm0o5vr] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #397659;
    font-size: 10px;
    font-weight: 700;
}

.status-dot[b-do4mm0o5vr] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #4caf78;
    box-shadow: 0 0 0 3px rgba(76, 175, 120, 0.12);
}

.scan-time[b-do4mm0o5vr] {
    color: #a0a7b3;
    font-size: 10px;
}


/* =========================================================
   EMPTY STATE
========================================================= */

.empty-state[b-do4mm0o5vr] {
    padding: 52px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.empty-icon[b-do4mm0o5vr] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
    border-radius: 13px;
    background: #f0f2f7;
    color: #596477;
    font-size: 11px;
    font-weight: 850;
}

.empty-state h3[b-do4mm0o5vr] {
    margin: 0;
    color: #283144;
    font-size: 14px;
}

.empty-state p[b-do4mm0o5vr] {
    max-width: 390px;
    margin: 7px 0 18px;
    color: #8c95a4;
    font-size: 12px;
    line-height: 1.6;
}


/* =========================================================
   QUICK ACTIONS
========================================================= */

.quick-action-list[b-do4mm0o5vr] {
    display: flex;
    flex-direction: column;
}

.quick-action[b-do4mm0o5vr] {
    width: 100%;
    padding: 16px 18px;
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    border: none;
    border-bottom: 1px solid #eef1f4;
    background: #fff;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease;
}

    .quick-action:last-child[b-do4mm0o5vr] {
        border-bottom: none;
    }

    .quick-action:hover[b-do4mm0o5vr] {
        background: #fafbfc;
    }

    .quick-action.completed[b-do4mm0o5vr] {
        background: #fcfdfc;
    }

        .quick-action.completed:hover[b-do4mm0o5vr] {
            background: #f7faf8;
        }

.quick-action-status[b-do4mm0o5vr],
.quick-action-number[b-do4mm0o5vr] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 800;
}

.quick-action-status[b-do4mm0o5vr] {
    background: #e6f5ec;
    color: #2f7a51;
}

.quick-action-number[b-do4mm0o5vr] {
    background: #eff1f6;
    color: #687386;
}

.quick-action > div:nth-child(2)[b-do4mm0o5vr] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.quick-action strong[b-do4mm0o5vr] {
    color: #30394a;
    font-size: 12px;
}

.quick-action span[b-do4mm0o5vr] {
    color: #929aa8;
    font-size: 10px;
    line-height: 1.5;
}

.action-arrow[b-do4mm0o5vr] {
    color: #8f98a7 !important;
    font-size: 15px !important;
}


/* =========================================================
   MCP
========================================================= */

.mcp-status[b-do4mm0o5vr] {
    min-height: 110px;
    padding: 21px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
}

.mcp-status-icon[b-do4mm0o5vr] {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #f0f2f7;
    color: #6d7688;
    font-size: 13px;
    font-weight: 800;
}

    .mcp-status-icon.online[b-do4mm0o5vr] {
        background: #e8f6ee;
        color: #2f7d53;
    }

.mcp-status-content[b-do4mm0o5vr] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

    .mcp-status-content strong[b-do4mm0o5vr] {
        color: #30394a;
        font-size: 13px;
    }

    .mcp-status-content span[b-do4mm0o5vr] {
        color: #9099a7;
        font-size: 11px;
        line-height: 1.5;
    }


/* =========================================================
   ACTIVITY
========================================================= */

.activity-count[b-do4mm0o5vr] {
    padding: 5px 8px;
    border-radius: 999px;
    background: #f2f4f7;
    color: #7b8493;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.activity-empty[b-do4mm0o5vr] {
    min-height: 110px;
    padding: 21px;
    display: flex;
    align-items: center;
    gap: 13px;
}

.activity-empty-icon[b-do4mm0o5vr] {
    width: 40px;
    height: 40px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f1f3f7;
    color: #6c7687;
    font-size: 16px;
}

.activity-empty > div:last-child[b-do4mm0o5vr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.activity-empty strong[b-do4mm0o5vr] {
    color: #323b4d;
    font-size: 12px;
}

.activity-empty span[b-do4mm0o5vr] {
    color: #919aa8;
    font-size: 10px;
    line-height: 1.5;
}

.activity-list[b-do4mm0o5vr] {
    display: flex;
    flex-direction: column;
}

.activity-row[b-do4mm0o5vr] {
    min-height: 64px;
    padding: 12px 18px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    border-bottom: 1px solid #eef1f4;
}

    .activity-row:last-child[b-do4mm0o5vr] {
        border-bottom: none;
    }

    .activity-row:hover[b-do4mm0o5vr] {
        background: #fafbfc;
    }

.activity-status[b-do4mm0o5vr] {
    width: 27px;
    height: 27px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 850;
}

    .activity-status.allowed[b-do4mm0o5vr] {
        background: #e5f4eb;
        color: #2f7b51;
    }

    .activity-status.blocked[b-do4mm0o5vr] {
        background: #fff0f0;
        color: #b34242;
    }

.activity-content[b-do4mm0o5vr] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

    .activity-content strong[b-do4mm0o5vr] {
        color: #313a4b;
        font-size: 11px;
        font-weight: 700;
        text-transform: capitalize;
    }

    .activity-content span[b-do4mm0o5vr] {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #929aa7;
        font-size: 10px;
    }

.activity-time[b-do4mm0o5vr] {
    color: #9aa2ae;
    font-size: 10px;
    white-space: nowrap;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1180px) {

    .stats-grid[b-do4mm0o5vr] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-grid[b-do4mm0o5vr] {
        grid-template-columns: 1fr;
    }

    .bottom-grid[b-do4mm0o5vr] {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 760px) {

    .dashboard-page[b-do4mm0o5vr] {
        padding: 26px 18px 60px;
    }

    .dashboard-header[b-do4mm0o5vr] {
        flex-direction: column;
        align-items: stretch;
    }

    .header-actions[b-do4mm0o5vr] {
        width: 100%;
    }

        .header-actions .primary-button[b-do4mm0o5vr] {
            width: 100%;
        }

    .dashboard-header h1[b-do4mm0o5vr] {
        font-size: 27px;
    }

    .subscription-banner[b-do4mm0o5vr] {
        flex-direction: column;
        align-items: flex-start;
    }

    .subscription-price[b-do4mm0o5vr] {
        padding-left: 55px;
    }

    .stats-grid[b-do4mm0o5vr] {
        grid-template-columns: 1fr 1fr;
    }

    .database-row[b-do4mm0o5vr] {
        grid-template-columns: 1fr auto;
    }

    .database-counts[b-do4mm0o5vr] {
        grid-column: 1 / -1;
        padding-left: 51px;
    }

    .database-row-right[b-do4mm0o5vr] {
        grid-column: 2;
        grid-row: 1;
    }
}


@media (max-width: 520px) {

    .dashboard-page[b-do4mm0o5vr] {
        padding: 22px 14px 50px;
    }

    .stats-grid[b-do4mm0o5vr] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-do4mm0o5vr] {
        padding: 18px;
    }

    .subscription-banner[b-do4mm0o5vr] {
        padding: 16px;
    }

    .subscription-price[b-do4mm0o5vr] {
        padding-left: 0;
    }

    .card-header[b-do4mm0o5vr] {
        padding: 18px;
    }

    .database-row[b-do4mm0o5vr] {
        padding: 15px 16px;
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .database-row-right[b-do4mm0o5vr] {
        grid-column: 1;
        grid-row: auto;
        align-items: flex-start;
        padding-left: 51px;
    }

    .database-counts[b-do4mm0o5vr] {
        grid-column: 1;
        padding-left: 51px;
    }

    .quick-action[b-do4mm0o5vr] {
        grid-template-columns: 30px minmax(0, 1fr);
    }

    .action-arrow[b-do4mm0o5vr] {
        display: none;
    }

    .mcp-status[b-do4mm0o5vr] {
        grid-template-columns: auto minmax(0, 1fr);
    }

        .mcp-status .secondary-button[b-do4mm0o5vr] {
            grid-column: 1 / -1;
            width: 100%;
        }

    .activity-row[b-do4mm0o5vr] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .activity-time[b-do4mm0o5vr] {
        grid-column: 2;
    }
}
/* /Pages/Login.razor.rz.scp.css */
.login-page[b-epyftd0jj4] {
    min-height: calc(100vh - 20px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: #f7f8fa;
}

.login-card[b-epyftd0jj4] {
    width: 100%;
    max-width: 420px;
    background: white;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08);
}

.login-header[b-epyftd0jj4] {
    text-align: center;
    margin-bottom: 32px;
}

    .login-header h1[b-epyftd0jj4] {
        margin: 0;
        font-size: 32px;
        font-weight: 700;
    }

    .login-header p[b-epyftd0jj4] {
        margin-top: 8px;
        color: #6b7280;
    }

.login-actions[b-epyftd0jj4] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.login-button[b-epyftd0jj4] {
    width: 100%;
    min-height: 48px;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}

.microsoft-button[b-epyftd0jj4] {
    background: #ffffff;
    color: #111827;
}

    .microsoft-button:hover[b-epyftd0jj4] {
        background: #f3f4f6;
        color: #111827;
    }

.google-button[b-epyftd0jj4] {
    background: #ffffff;
    color: #9ca3af;
    cursor: not-allowed;
}

.login-footer[b-epyftd0jj4] {
    margin-top: 28px;
    text-align: center;
    font-size: 13px;
    color: #9ca3af;
}
/* /Pages/McpAccess.razor.rz.scp.css */
/* =========================================================
   PAGE
========================================================= */

.mcp-page[b-w1vr4okl01] {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 34px 34px 72px;
    box-sizing: border-box;
    color: #182033;
}


/* =========================================================
   LOADING / ERRORS / MESSAGES
========================================================= */

.page-loading[b-w1vr4okl01] {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #667085;
}

.page-loading > div:last-child[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-loading strong[b-w1vr4okl01] {
    color: #263044;
    font-size: 14px;
}

.page-loading span[b-w1vr4okl01] {
    color: #8c95a5;
    font-size: 12px;
}

.loading-spinner[b-w1vr4okl01],
.button-spinner[b-w1vr4okl01] {
    border-radius: 50%;
    border-style: solid;
    border-right-color: transparent;
    animation: spin-b-w1vr4okl01 .7s linear infinite;
}

.loading-spinner[b-w1vr4okl01] {
    width: 30px;
    height: 30px;
    border-width: 3px;
    border-color: #e5e8f0;
    border-top-color: #6472d8;
}

.button-spinner[b-w1vr4okl01] {
    width: 13px;
    height: 13px;
    border-width: 2px;
    border-color: currentColor;
    border-right-color: transparent;
}

@keyframes spin-b-w1vr4okl01 {
    to {
        transform: rotate(360deg);
    }
}

.page-error[b-w1vr4okl01],
.page-message[b-w1vr4okl01] {
    margin-bottom: 20px;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    border-radius: 12px;
}

.page-error[b-w1vr4okl01] {
    background: #fff5f5;
    border: 1px solid #efcccc;
    color: #943c3c;
}

.page-message[b-w1vr4okl01] {
    background: #f0faf4;
    border: 1px solid #c8ead3;
    color: #347251;
}

.page-error-icon[b-w1vr4okl01],
.page-message-icon[b-w1vr4okl01] {
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 850;
}

.page-error-icon[b-w1vr4okl01] {
    background: #f8dada;
    color: #b33838;
}

.page-message-icon[b-w1vr4okl01] {
    background: #d8f3e1;
    color: #257946;
}

.page-error > div:last-child[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-error strong[b-w1vr4okl01] {
    font-size: 13px;
}

.page-error span[b-w1vr4okl01],
.page-message span[b-w1vr4okl01] {
    font-size: 12px;
    line-height: 1.5;
}


/* =========================================================
   ACCESS DENIED
========================================================= */

.access-denied-card[b-w1vr4okl01] {
    min-height: 480px;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 16px;
}

.access-denied-icon[b-w1vr4okl01] {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff2f2;
    color: #af4048;
    font-size: 19px;
    font-weight: 850;
}

.access-denied-card h1[b-w1vr4okl01] {
    margin: 0;
    color: #283144;
    font-size: 20px;
}

.access-denied-card p[b-w1vr4okl01] {
    max-width: 520px;
    margin: 9px 0 0;
    color: #8993a2;
    font-size: 12px;
    line-height: 1.65;
}


/* =========================================================
   HEADER
========================================================= */

.page-header[b-w1vr4okl01] {
    margin-bottom: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
}

.eyebrow[b-w1vr4okl01] {
    margin-bottom: 7px;
    color: #6472d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.page-header h1[b-w1vr4okl01] {
    margin: 0;
    color: #172033;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -.035em;
}

.page-header p[b-w1vr4okl01] {
    max-width: 750px;
    margin: 10px 0 0;
    color: #768093;
    font-size: 14px;
    line-height: 1.65;
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button[b-w1vr4okl01],
.secondary-button[b-w1vr4okl01],
.copy-button[b-w1vr4okl01],
.modal-close[b-w1vr4okl01],
.danger-button[b-w1vr4okl01] {
    font: inherit;
    cursor: pointer;
}

.primary-button[b-w1vr4okl01] {
    min-height: 43px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #202941;
    border-radius: 9px;
    background: #202941;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: .15s ease;
}

.primary-button:hover:not(:disabled)[b-w1vr4okl01] {
    background: #161e30;
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(25, 33, 52, .12);
}

.secondary-button[b-w1vr4okl01] {
    min-height: 41px;
    padding: 0 15px;
    border: 1px solid #d8dde6;
    border-radius: 9px;
    background: #fff;
    color: #364154;
    font-size: 12px;
    font-weight: 700;
    transition: .15s ease;
}

.secondary-button:hover:not(:disabled)[b-w1vr4okl01] {
    background: #f7f8fa;
    border-color: #c9cfda;
}

.danger-secondary[b-w1vr4okl01] {
    color: #9e4149;
}

.primary-button:disabled[b-w1vr4okl01],
.secondary-button:disabled[b-w1vr4okl01],
.danger-button:disabled[b-w1vr4okl01],
.modal-close:disabled[b-w1vr4okl01] {
    cursor: not-allowed;
    opacity: .6;
}

.button-status-dot[b-w1vr4okl01] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #80d1a2;
    box-shadow: 0 0 0 3px rgba(128, 209, 162, .14);
}


/* =========================================================
   HERO STATUS
========================================================= */

.hero-status-card[b-w1vr4okl01] {
    margin-bottom: 20px;
    padding: 21px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.hero-status-card.enabled[b-w1vr4okl01] {
    border-color: #d5e8dc;
}

.hero-status-left[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 15px;
}

.gateway-icon[b-w1vr4okl01] {
    width: 50px;
    height: 50px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: #eef0ff;
    color: #5967cf;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .04em;
}

.status-heading[b-w1vr4okl01] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.status-heading h2[b-w1vr4okl01] {
    margin: 0;
    color: #273043;
    font-size: 15px;
    font-weight: 760;
}

.hero-status-left p[b-w1vr4okl01] {
    max-width: 670px;
    margin: 5px 0 0;
    color: #8993a2;
    font-size: 10px;
    line-height: 1.55;
}

.status-badge[b-w1vr4okl01] {
    padding: 4px 7px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.status-badge.enabled[b-w1vr4okl01] {
    background: #e9f7ef;
    color: #2f7651;
}

.status-badge.enabled > span[b-w1vr4okl01] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #4caf78;
}

.status-badge.disabled[b-w1vr4okl01] {
    background: #f2f4f7;
    color: #818b9b;
}

.hero-status-meta[b-w1vr4okl01] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 24px;
}

.hero-status-meta > div[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.hero-status-meta span[b-w1vr4okl01] {
    color: #989fac;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.hero-status-meta strong[b-w1vr4okl01] {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #4a5466;
    font-size: 9px;
}


/* =========================================================
   SUMMARY
========================================================= */

.summary-grid[b-w1vr4okl01] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.summary-card[b-w1vr4okl01] {
    min-width: 0;
    padding: 19px;
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.summary-icon[b-w1vr4okl01] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 9px;
    font-weight: 850;
}

.database-summary-icon[b-w1vr4okl01] {
    background: #eef0ff;
    color: #5b68cf;
}

.scope-summary-icon[b-w1vr4okl01] {
    background: #edf8f2;
    color: #347c59;
}

.user-summary-icon[b-w1vr4okl01] {
    background: #fff4e8;
    color: #9c652c;
}

.object-summary-icon[b-w1vr4okl01] {
    background: #f4effd;
    color: #7550b2;
}

.summary-card > div:last-child[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.summary-label[b-w1vr4okl01] {
    margin-bottom: 3px;
    color: #7a8494;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .055em;
}

.summary-card strong[b-w1vr4okl01] {
    color: #1c2435;
    font-size: 23px;
    line-height: 1.05;
    letter-spacing: -.025em;
}

.summary-card small[b-w1vr4okl01] {
    margin-top: 5px;
    color: #969eab;
    font-size: 10px;
}


/* =========================================================
   GRID / CARDS
========================================================= */

.mcp-grid[b-w1vr4okl01] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 305px;
    gap: 20px;
    align-items: start;
}

.main-column[b-w1vr4okl01],
.side-column[b-w1vr4okl01] {
    min-width: 0;
}

.main-column[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.side-column[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: sticky;
    top: 20px;
}

.panel-card[b-w1vr4okl01],
.side-card[b-w1vr4okl01] {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.panel-header[b-w1vr4okl01],
.side-card-header[b-w1vr4okl01] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.panel-header[b-w1vr4okl01] {
    min-height: 74px;
    padding: 17px 19px;
    border-bottom: 1px solid #edf0f4;
}

.panel-kicker[b-w1vr4okl01] {
    margin-bottom: 4px;
    color: #6472d8;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .09em;
}

.panel-header h2[b-w1vr4okl01],
.side-card-header h3[b-w1vr4okl01] {
    margin: 0;
    color: #273043;
    font-weight: 750;
}

.panel-header h2[b-w1vr4okl01] {
    font-size: 14px;
}

.side-card-header h3[b-w1vr4okl01] {
    font-size: 12px;
}

.panel-header p[b-w1vr4okl01] {
    margin: 4px 0 0;
    color: #8b94a3;
    font-size: 9px;
    line-height: 1.5;
}

.protocol-badge[b-w1vr4okl01] {
    padding: 5px 8px;
    border-radius: 6px;
    background: #f0f2f7;
    color: #687385;
    font-size: 8px;
    font-weight: 850;
}

.panel-body[b-w1vr4okl01] {
    padding: 19px;
}


/* =========================================================
   ENDPOINT
========================================================= */

.endpoint-box[b-w1vr4okl01] {
    padding: 13px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border: 1px solid #dde2ea;
    border-radius: 10px;
    background: #fafbfc;
}

.endpoint-box > div[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.endpoint-box span[b-w1vr4okl01] {
    color: #9099a7;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.endpoint-box code[b-w1vr4okl01] {
    overflow-wrap: anywhere;
    color: #334056;
    font-family: Consolas, "SFMono-Regular", monospace;
    font-size: 11px;
}

.copy-button[b-w1vr4okl01] {
    min-height: 32px;
    padding: 0 10px;
    flex: 0 0 auto;
    border: 1px solid #d5dae4;
    border-radius: 7px;
    background: #fff;
    color: #566174;
    font-size: 9px;
    font-weight: 750;
}

.copy-button:hover[b-w1vr4okl01] {
    background: #f5f6f8;
}

.endpoint-note[b-w1vr4okl01] {
    margin-top: 13px;
    padding: 12px 13px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border: 1px solid #dce2f4;
    border-radius: 9px;
    background: #f7f8fd;
}

.endpoint-note-icon[b-w1vr4okl01] {
    width: 23px;
    height: 23px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e7eaff;
    color: #5d69c8;
    font-size: 9px;
    font-weight: 850;
}

.endpoint-note > div:last-child[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.endpoint-note strong[b-w1vr4okl01] {
    color: #495469;
    font-size: 9px;
}

.endpoint-note span[b-w1vr4okl01] {
    color: #7d8798;
    font-size: 8px;
    line-height: 1.55;
}


/* =========================================================
   CLIENTS
========================================================= */

.client-grid[b-w1vr4okl01] {
    padding: 17px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.client-card[b-w1vr4okl01] {
    min-width: 0;
    padding: 15px;
    border: 1px solid #e1e5eb;
    border-radius: 11px;
    background: #fff;
}

.client-top[b-w1vr4okl01] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.client-mark[b-w1vr4okl01] {
    width: 36px;
    height: 36px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-size: 11px;
    font-weight: 850;
}

.client-mark.chatgpt[b-w1vr4okl01] {
    background: #edf8f2;
    color: #347c59;
}

.client-mark.claude[b-w1vr4okl01] {
    background: #fff3e9;
    color: #a46634;
}

.client-top > div:last-child[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.client-top strong[b-w1vr4okl01] {
    color: #374154;
    font-size: 10px;
}

.client-top span[b-w1vr4okl01] {
    color: #949cab;
    font-size: 8px;
}

.client-status[b-w1vr4okl01] {
    margin-top: 13px;
    padding: 7px 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-radius: 7px;
    font-size: 8px;
    font-weight: 700;
}

.client-status.planned[b-w1vr4okl01] {
    background: #f6f7fa;
    color: #7b8595;
}

.client-status > span[b-w1vr4okl01] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #f0ad4e;
}

.client-card ol[b-w1vr4okl01] {
    margin: 13px 0 0;
    padding-left: 19px;
    color: #7e8797;
    font-size: 8px;
    line-height: 1.65;
}

.client-card li + li[b-w1vr4okl01] {
    margin-top: 4px;
}


/* =========================================================
   AUTHORIZATION
========================================================= */

.authorization-flow[b-w1vr4okl01] {
    padding: 19px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 9px;
}

.flow-item[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.flow-number[b-w1vr4okl01] {
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #eef0ff;
    color: #5967cf;
    font-size: 8px;
    font-weight: 850;
}

.flow-item > div:last-child[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.flow-item strong[b-w1vr4okl01] {
    color: #3f495c;
    font-size: 8px;
}

.flow-item span[b-w1vr4okl01] {
    color: #949cab;
    font-size: 7px;
    line-height: 1.4;
}

.flow-arrow[b-w1vr4okl01] {
    color: #b4bac4;
    font-size: 15px;
}

.security-points[b-w1vr4okl01] {
    padding: 0 19px 19px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.security-points > div[b-w1vr4okl01] {
    padding: 9px 10px;
    display: flex;
    align-items: flex-start;
    gap: 7px;
    border: 1px solid #e7eaf0;
    border-radius: 8px;
    background: #fafbfc;
    color: #657083;
    font-size: 8px;
    line-height: 1.5;
}

.security-points span[b-w1vr4okl01] {
    color: #397a58;
    font-weight: 900;
}


/* =========================================================
   SIDE CARDS
========================================================= */

.side-card[b-w1vr4okl01] {
    padding: 17px;
}

.side-card-header[b-w1vr4okl01] {
    margin-bottom: 14px;
}

.readiness-count[b-w1vr4okl01] {
    padding: 4px 7px;
    border-radius: 999px;
    background: #f0f2f7;
    color: #6f7a8c;
    font-size: 8px;
    font-weight: 800;
}

.readiness-list[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
}

.readiness-item[b-w1vr4okl01] {
    padding: 10px 0;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 9px;
    border-top: 1px solid #edf0f4;
}

.readiness-item:first-child[b-w1vr4okl01] {
    border-top: 0;
}

.readiness-icon[b-w1vr4okl01] {
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: #f0f2f6;
    color: #8992a1;
    font-size: 8px;
    font-weight: 850;
}

.readiness-icon.complete[b-w1vr4okl01] {
    background: #eaf7ef;
    color: #347553;
}

.readiness-icon.pending[b-w1vr4okl01] {
    background: #fff3e6;
    color: #986331;
}

.readiness-item > div:last-child[b-w1vr4okl01] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.readiness-item strong[b-w1vr4okl01] {
    color: #475164;
    font-size: 9px;
}

.readiness-item span[b-w1vr4okl01] {
    color: #929ba9;
    font-size: 8px;
    line-height: 1.4;
}

.config-list[b-w1vr4okl01] {
    display: flex;
    flex-direction: column;
}

.config-list > div[b-w1vr4okl01] {
    padding: 9px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid #edf0f4;
}

.config-list > div:first-child[b-w1vr4okl01] {
    border-top: 0;
}

.config-list span[b-w1vr4okl01] {
    color: #929aa8;
    font-size: 8px;
}

.config-list strong[b-w1vr4okl01] {
    max-width: 145px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #4a5466;
    font-size: 8px;
}

.config-list strong.positive[b-w1vr4okl01] {
    color: #347553;
}

.security-card-icon[b-w1vr4okl01] {
    width: 36px;
    height: 36px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #edf8f2;
    color: #347c59;
    font-size: 11px;
    font-weight: 850;
}

.security-card h3[b-w1vr4okl01] {
    margin: 0;
    color: #3d4759;
    font-size: 11px;
}

.security-card p[b-w1vr4okl01] {
    margin: 7px 0 0;
    color: #818b9a;
    font-size: 8px;
    line-height: 1.6;
}


/* =========================================================
   MODAL
========================================================= */

.modal-backdrop[b-w1vr4okl01] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 30px 18px;
    overflow-y: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    background: rgba(15, 23, 42, .52);
}

.confirm-modal[b-w1vr4okl01] {
    width: min(540px, 100%);
    margin: auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e7ed;
    border-radius: 17px;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
}

.modal-header[b-w1vr4okl01] {
    padding: 22px 23px 18px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #edf0f4;
}

.modal-header h2[b-w1vr4okl01] {
    margin: 0;
    color: #182033;
    font-size: 19px;
    letter-spacing: -.02em;
}

.modal-header p[b-w1vr4okl01] {
    margin: 6px 0 0;
    color: #7d8797;
    font-size: 10px;
}

.danger-eyebrow[b-w1vr4okl01] {
    color: #b44750;
}

.modal-close[b-w1vr4okl01] {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e1e5eb;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    font-size: 20px;
    line-height: 1;
}

.modal-close:hover:not(:disabled)[b-w1vr4okl01] {
    background: #f6f7f9;
}

.modal-body[b-w1vr4okl01] {
    padding: 23px;
    display: flex;
    align-items: flex-start;
    gap: 13px;
}

.warning-icon[b-w1vr4okl01] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff0f1;
    color: #ba424d;
    font-size: 18px;
    font-weight: 850;
}

.warning-copy strong[b-w1vr4okl01] {
    display: block;
    margin-bottom: 5px;
    color: #3d4658;
    font-size: 11px;
}

.warning-copy p[b-w1vr4okl01] {
    margin: 0;
    color: #7d8797;
    font-size: 10px;
    line-height: 1.6;
}

.modal-footer[b-w1vr4okl01] {
    padding: 14px 23px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    background: #fafbfc;
    border-top: 1px solid #e9edf2;
}

.danger-button[b-w1vr4okl01] {
    min-height: 40px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid #ad3c47;
    border-radius: 9px;
    background: #ad3c47;
    color: #fff;
    font-size: 11px;
    font-weight: 750;
}

.danger-button:hover:not(:disabled)[b-w1vr4okl01] {
    background: #96333d;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1150px) {

    .summary-grid[b-w1vr4okl01] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mcp-grid[b-w1vr4okl01] {
        grid-template-columns: minmax(0, 1fr) 270px;
    }

    .authorization-flow[b-w1vr4okl01] {
        grid-template-columns: 1fr;
    }

    .flow-arrow[b-w1vr4okl01] {
        display: none;
    }

    .flow-item[b-w1vr4okl01] {
        padding: 7px 0;
    }
}


@media (max-width: 900px) {

    .mcp-page[b-w1vr4okl01] {
        padding: 26px 18px 60px;
    }

    .hero-status-card[b-w1vr4okl01] {
        align-items: flex-start;
        flex-direction: column;
    }

    .hero-status-meta[b-w1vr4okl01] {
        width: 100%;
        justify-content: space-between;
    }

    .mcp-grid[b-w1vr4okl01] {
        grid-template-columns: 1fr;
    }

    .side-column[b-w1vr4okl01] {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .security-card[b-w1vr4okl01] {
        grid-column: 1 / -1;
    }
}


@media (max-width: 650px) {

    .mcp-page[b-w1vr4okl01] {
        padding: 22px 14px 50px;
    }

    .page-header[b-w1vr4okl01] {
        flex-direction: column;
    }

    .page-header .primary-button[b-w1vr4okl01],
    .page-header .secondary-button[b-w1vr4okl01] {
        width: 100%;
    }

    .summary-grid[b-w1vr4okl01] {
        grid-template-columns: 1fr;
    }

    .hero-status-meta[b-w1vr4okl01] {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .client-grid[b-w1vr4okl01],
    .security-points[b-w1vr4okl01],
    .side-column[b-w1vr4okl01] {
        grid-template-columns: 1fr;
    }

    .endpoint-box[b-w1vr4okl01] {
        align-items: stretch;
        flex-direction: column;
    }

    .copy-button[b-w1vr4okl01] {
        width: 100%;
    }

    .modal-backdrop[b-w1vr4okl01] {
        padding: 12px;
    }

    .modal-header[b-w1vr4okl01],
    .modal-body[b-w1vr4okl01],
    .modal-footer[b-w1vr4okl01] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .modal-footer[b-w1vr4okl01] {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .modal-footer .secondary-button[b-w1vr4okl01],
    .modal-footer .danger-button[b-w1vr4okl01] {
        width: 100%;
    }
}
/* /Pages/Onboarding/BillingSuccess.razor.rz.scp.css */
.billing-success-page[b-0fnq76mg9d] {
    min-height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    box-sizing: border-box;
    background: radial-gradient( circle at top left, rgba(95, 105, 230, 0.10), transparent 34rem ), radial-gradient( circle at bottom right, rgba(69, 179, 129, 0.07), transparent 30rem ), #f7f8fc;
    color: #172033;
}


.billing-success-card[b-0fnq76mg9d] {
    width: 100%;
    max-width: 520px;
    background: #ffffff;
    border: 1px solid #e3e7ee;
    border-radius: 22px;
    padding: 38px 40px 36px;
    box-shadow: 0 24px 70px rgba(17, 24, 39, 0.08);
    text-align: center;
}


/* -----------------------------
   BRAND
----------------------------- */

.brand[b-0fnq76mg9d] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 32px;
    font-size: 18px;
    font-weight: 750;
    color: #1b2336;
}


.brand-mark[b-0fnq76mg9d] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #202941;
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
}


/* -----------------------------
   STATUS ICON
----------------------------- */

.status-icon[b-0fnq76mg9d] {
    width: 68px;
    height: 68px;
    margin: 0 auto 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Loading */

.loading-icon[b-0fnq76mg9d] {
    background: #f0f2ff;
}


.spinner-ring[b-0fnq76mg9d] {
    width: 31px;
    height: 31px;
    border-radius: 50%;
    border: 3px solid #d7dbfa;
    border-top-color: #6572dc;
    animation: spin-b-0fnq76mg9d 0.8s linear infinite;
}


@keyframes spin-b-0fnq76mg9d {
    to {
        transform: rotate(360deg);
    }
}


/* Error */

.error-icon[b-0fnq76mg9d] {
    background: #fff0f0;
    color: #c34848;
    font-size: 29px;
    font-weight: 800;
}


/* -----------------------------
   TEXT
----------------------------- */

.billing-success-card h1[b-0fnq76mg9d] {
    margin: 0;
    color: #171f31;
    font-size: 28px;
    line-height: 1.25;
    letter-spacing: -0.025em;
    font-weight: 750;
}


.billing-success-card > p[b-0fnq76mg9d] {
    max-width: 410px;
    margin: 12px auto 0;
    color: #717b8c;
    font-size: 14px;
    line-height: 1.7;
}


/* -----------------------------
   PROGRESS
----------------------------- */

.progress-steps[b-0fnq76mg9d] {
    margin-top: 30px;
    padding: 19px 20px;
    background: #f8f9fc;
    border: 1px solid #e8ebf1;
    border-radius: 14px;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 14px;
}


.progress-step[b-0fnq76mg9d] {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #949baa;
    font-size: 13px;
    font-weight: 600;
}


    .progress-step.active[b-0fnq76mg9d] {
        color: #3f4859;
    }


.step-check[b-0fnq76mg9d],
.step-dot[b-0fnq76mg9d],
.step-pulse[b-0fnq76mg9d] {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}


.step-check[b-0fnq76mg9d] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e4f5eb;
    color: #2b8957;
    font-size: 11px;
    font-weight: 900;
}


.step-dot[b-0fnq76mg9d] {
    width: 8px;
    height: 8px;
    margin: 6px;
    background: #d6dae3;
}


.step-pulse[b-0fnq76mg9d] {
    width: 10px;
    height: 10px;
    margin: 5px;
    background: #6673dc;
    position: relative;
}


    .step-pulse[b-0fnq76mg9d]::after {
        content: "";
        position: absolute;
        inset: -4px;
        border-radius: 50%;
        border: 2px solid rgba(102, 115, 220, 0.25);
        animation: pulse-b-0fnq76mg9d 1.5s ease-out infinite;
    }


@keyframes pulse-b-0fnq76mg9d {
    0% {
        transform: scale(0.8);
        opacity: 1;
    }

    100% {
        transform: scale(1.7);
        opacity: 0;
    }
}


/* -----------------------------
   LOADING NOTE
----------------------------- */

.loading-note[b-0fnq76mg9d] {
    margin-top: 22px;
    color: #9aa2b0;
    font-size: 12px;
}


/* -----------------------------
   ERROR STATE
----------------------------- */

.error-message[b-0fnq76mg9d] {
    margin-top: 24px;
    padding: 14px 16px;
    border: 1px solid #efcccc;
    border-radius: 11px;
    background: #fff6f6;
    color: #a43c3c;
    text-align: left;
    font-size: 13px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}


.retry-button[b-0fnq76mg9d] {
    margin-top: 24px;
    min-height: 45px;
    padding: 0 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #202941;
    color: #ffffff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    transition: background 0.16s ease, transform 0.16s ease;
}


    .retry-button:hover[b-0fnq76mg9d] {
        background: #151d31;
        color: #ffffff;
        transform: translateY(-1px);
        text-decoration: none;
    }


/* -----------------------------
   MOBILE
----------------------------- */

@media (max-width: 600px) {

    .billing-success-page[b-0fnq76mg9d] {
        padding: 24px 16px;
    }


    .billing-success-card[b-0fnq76mg9d] {
        padding: 30px 22px;
        border-radius: 17px;
    }


        .billing-success-card h1[b-0fnq76mg9d] {
            font-size: 24px;
        }


    .progress-steps[b-0fnq76mg9d] {
        padding: 17px;
    }
}
/* /Pages/Onboarding/DatabaseSetupOnboarding.razor.rz.scp.css */
.setup-page[b-wlabva98hk] {
    min-height: 100vh;
    background: radial-gradient(circle at top left, rgba(84, 104, 255, 0.08), transparent 30rem), #f7f8fc;
    color: #182033;
}

.setup-header[b-wlabva98hk] {
    height: 72px;
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 1px solid #e6e9f0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 40px;
    backdrop-filter: blur(12px);
}

.brand[b-wlabva98hk] {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #182033;
    text-decoration: none;
    font-size: 19px;
    font-weight: 750;
}

.brand-icon[b-wlabva98hk] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #202941;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
}

.setup-step[b-wlabva98hk] {
    background: #f2f4f8;
    border: 1px solid #e3e6ec;
    border-radius: 999px;
    padding: 7px 13px;
    font-size: 12px;
    font-weight: 700;
    color: #667085;
}

.setup-content[b-wlabva98hk] {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
    padding: 58px 0 90px;
}

.intro[b-wlabva98hk] {
    max-width: 710px;
    margin-bottom: 34px;
}

.eyebrow[b-wlabva98hk] {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.11em;
    color: #6674d8;
    margin-bottom: 10px;
}

.intro h1[b-wlabva98hk] {
    margin: 0;
    font-size: 38px;
    line-height: 1.15;
    letter-spacing: -0.035em;
    color: #151c2d;
}

.intro p[b-wlabva98hk] {
    margin: 14px 0 0;
    color: #667085;
    line-height: 1.7;
    font-size: 16px;
}

.layout[b-wlabva98hk] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 26px;
    align-items: start;
}

.main-column[b-wlabva98hk] {
    min-width: 0;
}

.side-column[b-wlabva98hk] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    position: sticky;
    top: 24px;
}

.setup-card[b-wlabva98hk] {
    background: white;
    border: 1px solid #e4e7ec;
    border-radius: 18px;
    padding: 28px;
    margin-bottom: 20px;
    box-shadow: 0 8px 32px rgba(16, 24, 40, 0.035);
}

.section-heading[b-wlabva98hk] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 24px;
}

.section-number[b-wlabva98hk] {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: #eef0ff;
    color: #5967d8;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-heading h2[b-wlabva98hk] {
    margin: 1px 0 4px;
    font-size: 19px;
    color: #182033;
}

.section-heading p[b-wlabva98hk] {
    margin: 0;
    color: #7a8495;
    font-size: 14px;
}

.provider-grid[b-wlabva98hk] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.provider-card[b-wlabva98hk] {
    appearance: none;
    width: 100%;
    border: 1px solid #dde2ea;
    border-radius: 13px;
    background: white;
    padding: 16px;
    cursor: pointer;
    display: grid;
    grid-template-columns: 43px 1fr 20px;
    align-items: center;
    gap: 13px;
    text-align: left;
    transition: 0.18s ease;
    color: inherit;
}

    .provider-card:hover[b-wlabva98hk] {
        border-color: #aeb6d9;
        transform: translateY(-1px);
    }

    .provider-card.selected[b-wlabva98hk] {
        border-color: #6774db;
        background: #fafaff;
        box-shadow: 0 0 0 3px rgba(103, 116, 219, 0.09);
    }

.provider-icon[b-wlabva98hk] {
    width: 43px;
    height: 43px;
    border-radius: 10px;
    background: #f1f3f7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 850;
    color: #495268;
}

.provider-card.selected .provider-icon[b-wlabva98hk] {
    background: #eaedff;
    color: #5765d4;
}

.provider-card strong[b-wlabva98hk] {
    display: block;
    font-size: 14px;
    margin-bottom: 3px;
}

.provider-card span[b-wlabva98hk] {
    display: block;
    color: #8a93a2;
    font-size: 12px;
}

.provider-radio[b-wlabva98hk] {
    width: 18px;
    height: 18px;
    border: 2px solid #cdd3df;
    border-radius: 50%;
    padding: 3px;
}

.provider-card.selected .provider-radio[b-wlabva98hk] {
    border-color: #6572da;
}

.radio-dot[b-wlabva98hk] {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.provider-card.selected .radio-dot[b-wlabva98hk] {
    background: #6572da;
}

.form-grid[b-wlabva98hk] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 19px;
}

.field[b-wlabva98hk] {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

    .field.full[b-wlabva98hk] {
        grid-column: 1 / -1;
    }

    .field label[b-wlabva98hk] {
        font-size: 13px;
        font-weight: 700;
        color: #3e4758;
    }

.form-control[b-wlabva98hk] {
    width: 100%;
    box-sizing: border-box;
    min-height: 45px;
    border: 1px solid #d8dde7;
    border-radius: 9px;
    padding: 10px 12px;
    font: inherit;
    font-size: 14px;
    color: #182033;
    background: #fff;
    outline: none;
    transition: 0.16s ease;
}

    .form-control:focus[b-wlabva98hk] {
        border-color: #6976d9;
        box-shadow: 0 0 0 3px rgba(105, 118, 217, 0.1);
    }

.field-help[b-wlabva98hk] {
    color: #949cab;
    font-size: 12px;
}

.validation-message[b-wlabva98hk] {
    color: #c64040;
    font-size: 12px;
}

.security-option[b-wlabva98hk] {
    border-top: 1px solid #edf0f4;
    margin-top: 24px;
    padding-top: 22px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
}

.security-checkbox[b-wlabva98hk] {
    margin-top: 3px;
}

.security-option strong[b-wlabva98hk] {
    display: block;
    font-size: 13px;
    margin-bottom: 3px;
}

.security-option span[b-wlabva98hk] {
    color: #7b8493;
    font-size: 12px;
}

.connection-status[b-wlabva98hk] {
    border-radius: 12px;
    padding: 15px 17px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 20px;
}

    .connection-status.success[b-wlabva98hk] {
        background: #f0faf4;
        border: 1px solid #c7ead2;
    }

    .connection-status.error[b-wlabva98hk] {
        background: #fff5f5;
        border: 1px solid #f0cccc;
    }

.status-icon[b-wlabva98hk] {
    width: 27px;
    height: 27px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 850;
}

.success .status-icon[b-wlabva98hk] {
    background: #d8f3e1;
    color: #257946;
}

.error .status-icon[b-wlabva98hk] {
    background: #f8dada;
    color: #b33838;
}

.connection-status strong[b-wlabva98hk] {
    display: block;
    font-size: 13px;
    margin-bottom: 3px;
}

.connection-status span[b-wlabva98hk] {
    display: block;
    font-size: 12px;
    color: #667085;
}

.actions[b-wlabva98hk] {
    display: flex;
    justify-content: flex-end;
    gap: 11px;
}

.btn-primary[b-wlabva98hk],
.btn-secondary[b-wlabva98hk] {
    min-height: 45px;
    border-radius: 9px;
    padding: 0 18px;
    font: inherit;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    transition: 0.16s ease;
}

.btn-primary[b-wlabva98hk] {
    border: 1px solid #202941;
    background: #202941;
    color: white;
}

    .btn-primary:hover:not(:disabled)[b-wlabva98hk] {
        background: #151d31;
    }

.btn-secondary[b-wlabva98hk] {
    border: 1px solid #d5dae4;
    background: white;
    color: #354052;
}

    .btn-secondary:hover:not(:disabled)[b-wlabva98hk] {
        background: #f7f8fa;
    }

    .btn-primary:disabled[b-wlabva98hk],
    .btn-secondary:disabled[b-wlabva98hk] {
        cursor: not-allowed;
        opacity: 0.6;
    }

.security-card[b-wlabva98hk],
.recommendation-card[b-wlabva98hk] {
    background: white;
    border: 1px solid #e4e7ec;
    border-radius: 16px;
    padding: 21px;
}

.security-icon[b-wlabva98hk] {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #eef8f2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}

.security-card h3[b-wlabva98hk] {
    margin: 0 0 8px;
    font-size: 16px;
}

.security-card p[b-wlabva98hk],
.recommendation-card p[b-wlabva98hk] {
    margin: 0;
    color: #778192;
    font-size: 13px;
    line-height: 1.65;
}

.security-items[b-wlabva98hk] {
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-top: 1px solid #edf0f4;
    padding-top: 17px;
}

    .security-items div[b-wlabva98hk] {
        font-size: 12px;
        color: #4c5668;
        display: flex;
        gap: 8px;
    }

    .security-items span[b-wlabva98hk] {
        color: #32835a;
        font-weight: 900;
    }

.recommendation-card strong[b-wlabva98hk] {
    display: block;
    color: #5966d2;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 8px;
}

.spinner[b-wlabva98hk] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid currentColor;
    border-right-color: transparent;
    animation: spin-b-wlabva98hk 0.7s linear infinite;
}

@keyframes spin-b-wlabva98hk {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 900px) {
    .layout[b-wlabva98hk] {
        grid-template-columns: 1fr;
    }

    .side-column[b-wlabva98hk] {
        position: static;
    }
}

@media (max-width: 650px) {
    .setup-header[b-wlabva98hk] {
        padding: 0 20px;
    }

    .setup-content[b-wlabva98hk] {
        width: min(100% - 28px, 1180px);
        padding-top: 38px;
    }

    .intro h1[b-wlabva98hk] {
        font-size: 31px;
    }

    .setup-card[b-wlabva98hk] {
        padding: 21px;
    }

    .provider-grid[b-wlabva98hk],
    .form-grid[b-wlabva98hk] {
        grid-template-columns: 1fr;
    }

    .field.full[b-wlabva98hk] {
        grid-column: auto;
    }

    .actions[b-wlabva98hk] {
        flex-direction: column;
    }

    .btn-primary[b-wlabva98hk],
    .btn-secondary[b-wlabva98hk] {
        width: 100%;
    }
}

/* =========================================================
   DATABASE SETUP ACCESS CONTROL
========================================================= */

.setup-state-card[b-wlabva98hk],
.access-denied-card[b-wlabva98hk] {
    min-height: 420px;
    padding: 48px 28px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #e4e7ec;
    border-radius: 18px;
    box-shadow: 0 8px 32px rgba(16, 24, 40, 0.035);
}

.setup-state-card[b-wlabva98hk] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.setup-state-card > div:last-child[b-wlabva98hk] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.setup-state-card strong[b-wlabva98hk] {
    color: #263044;
    font-size: 14px;
}

.setup-state-card span[b-wlabva98hk] {
    color: #8c95a5;
    font-size: 12px;
}

.state-spinner[b-wlabva98hk] {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    box-sizing: border-box;
    border: 3px solid #e5e8f0;
    border-top-color: #6472d8;
    border-radius: 50%;
    animation: spin-b-wlabva98hk .7s linear infinite;
}

.access-denied-card[b-wlabva98hk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.access-denied-icon[b-wlabva98hk] {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff2f2;
    color: #af4048;
    font-size: 19px;
    font-weight: 850;
}

.access-denied-card h1[b-wlabva98hk] {
    margin: 0;
    color: #283144;
    font-size: 21px;
    letter-spacing: -0.02em;
}

.access-denied-card p[b-wlabva98hk] {
    max-width: 560px;
    margin: 10px 0 20px;
    color: #8993a2;
    font-size: 13px;
    line-height: 1.65;
}

.access-denied-card .btn-primary[b-wlabva98hk] {
    text-decoration: none;
}


@media (max-width: 650px) {

    .setup-state-card[b-wlabva98hk],
    .access-denied-card[b-wlabva98hk] {
        min-height: 360px;
        padding: 34px 20px;
    }

    .access-denied-card .btn-primary[b-wlabva98hk] {
        width: 100%;
    }
}

/* /Pages/Onboarding/Onboarding.razor.rz.scp.css */
.onboarding-page[b-j9ba3a3hm2] {
    min-height: 100vh;
    background: radial-gradient(circle at top left, rgba(79, 70, 229, 0.08), transparent 30%), radial-gradient(circle at top right, rgba(59, 130, 246, 0.06), transparent 26%), #f7f8fb;
    padding: 42px 24px 70px;
    color: #111827;
}

.onboarding-shell[b-j9ba3a3hm2] {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

.brand[b-j9ba3a3hm2] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 50px;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.brand-mark[b-j9ba3a3hm2] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #111827;
    color: white;
    font-size: 18px;
}

.onboarding-header[b-j9ba3a3hm2] {
    max-width: 720px;
    margin-bottom: 38px;
}

.step-pill[b-j9ba3a3hm2] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    margin-bottom: 16px;
    border-radius: 999px;
    background: #eef2ff;
    color: #4f46e5;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.onboarding-header h1[b-j9ba3a3hm2] {
    margin: 0;
    font-size: clamp(34px, 5vw, 48px);
    line-height: 1.08;
    letter-spacing: -0.04em;
    font-weight: 750;
}

.onboarding-header p[b-j9ba3a3hm2] {
    max-width: 650px;
    margin: 15px 0 0;
    color: #6b7280;
    font-size: 17px;
    line-height: 1.65;
}

.setup-grid[b-j9ba3a3hm2] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 24px;
    align-items: start;
}

.main-column[b-j9ba3a3hm2] {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.setup-card[b-j9ba3a3hm2],
.summary-card[b-j9ba3a3hm2] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(17, 24, 39, 0.045);
}

.setup-card[b-j9ba3a3hm2] {
    padding: 30px;
}

.section-heading[b-j9ba3a3hm2] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 26px;
}

.section-number[b-j9ba3a3hm2] {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #111827;
    color: white;
    font-size: 14px;
    font-weight: 700;
}

.section-heading h2[b-j9ba3a3hm2] {
    margin: 1px 0 4px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.section-heading p[b-j9ba3a3hm2] {
    margin: 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.55;
}

.field-group[b-j9ba3a3hm2] {
    max-width: 600px;
}

    .field-group label[b-j9ba3a3hm2] {
        display: block;
        margin-bottom: 8px;
        font-size: 14px;
        font-weight: 650;
    }

.form-control[b-j9ba3a3hm2] {
    width: 100%;
    min-height: 50px;
    padding: 0 14px;
    border: 1px solid #d1d5db;
    border-radius: 10px;
    background: white;
    color: #111827;
    font-size: 15px;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .form-control:focus[b-j9ba3a3hm2] {
        border-color: #6366f1;
        box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.1);
    }

.field-help[b-j9ba3a3hm2] {
    display: block;
    margin-top: 7px;
    color: #9ca3af;
    font-size: 12px;
}

.validation-message[b-j9ba3a3hm2] {
    display: block;
    margin-top: 7px;
    color: #dc2626;
    font-size: 13px;
}

.plan-grid[b-j9ba3a3hm2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

    .plan-grid.two-plans[b-j9ba3a3hm2] {
        max-width: 850px;
    }

.plan-card[b-j9ba3a3hm2] {
    position: relative;
    min-width: 0;
    text-align: left;
    padding: 22px;
    border: 1px solid #e5e7eb;
    border-radius: 15px;
    background: white;
    color: inherit;
    cursor: pointer;
    font: inherit;
    transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

    .plan-card:hover[b-j9ba3a3hm2] {
        transform: translateY(-2px);
        border-color: #c7d2fe;
        box-shadow: 0 10px 25px rgba(17, 24, 39, 0.06);
    }

    .plan-card.selected[b-j9ba3a3hm2] {
        border: 2px solid #6366f1;
        padding: 21px;
        background: #fafaff;
        box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.07);
    }

.plan-top[b-j9ba3a3hm2] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

    .plan-top h3[b-j9ba3a3hm2] {
        margin: 0 0 7px;
        font-size: 18px;
        font-weight: 700;
    }

    .plan-top p[b-j9ba3a3hm2] {
        min-height: 63px;
        margin: 0;
        color: #6b7280;
        font-size: 13px;
        line-height: 1.55;
    }

.plan-radio[b-j9ba3a3hm2] {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #d1d5db;
    border-radius: 50%;
}

.plan-card.selected .plan-radio[b-j9ba3a3hm2] {
    border-color: #6366f1;
}

.plan-card.selected .radio-dot[b-j9ba3a3hm2] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #6366f1;
}

.recommended-badge[b-j9ba3a3hm2] {
    position: absolute;
    top: -11px;
    left: 18px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #111827;
    color: white;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.price[b-j9ba3a3hm2] {
    display: flex;
    align-items: baseline;
    margin-top: 22px;
}

.price-dollar[b-j9ba3a3hm2] {
    font-size: 18px;
    font-weight: 650;
}

.price-value[b-j9ba3a3hm2] {
    font-size: 35px;
    line-height: 1;
    font-weight: 750;
    letter-spacing: -0.04em;
}

.price-period[b-j9ba3a3hm2] {
    margin-left: 5px;
    color: #6b7280;
    font-size: 13px;
}

.enterprise-price[b-j9ba3a3hm2] {
    height: 35px;
    align-items: center;
    font-size: 25px;
    font-weight: 750;
    letter-spacing: -0.03em;
}

.divider[b-j9ba3a3hm2],
.summary-divider[b-j9ba3a3hm2] {
    height: 1px;
    background: #edf0f3;
}

.divider[b-j9ba3a3hm2] {
    margin: 20px 0;
}

.feature-list[b-j9ba3a3hm2] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

    .feature-list li[b-j9ba3a3hm2] {
        display: flex;
        gap: 8px;
        color: #4b5563;
        font-size: 12px;
        line-height: 1.45;
    }

.check[b-j9ba3a3hm2] {
    color: #4f46e5;
    font-weight: 800;
}

.summary-card[b-j9ba3a3hm2] {
    position: sticky;
    top: 24px;
    padding: 25px;
}

.summary-header[b-j9ba3a3hm2] {
    margin-bottom: 25px;
}

    .summary-header h3[b-j9ba3a3hm2] {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
    }

    .summary-header p[b-j9ba3a3hm2] {
        margin: 5px 0 0;
        color: #9ca3af;
        font-size: 13px;
    }

.summary-row[b-j9ba3a3hm2] {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 17px;
    font-size: 13px;
}

    .summary-row span[b-j9ba3a3hm2] {
        color: #6b7280;
    }

    .summary-row strong[b-j9ba3a3hm2] {
        max-width: 170px;
        text-align: right;
        word-break: break-word;
    }

.summary-divider[b-j9ba3a3hm2] {
    margin: 23px 0;
}

.summary-total[b-j9ba3a3hm2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

    .summary-total > span[b-j9ba3a3hm2] {
        font-size: 14px;
        font-weight: 650;
    }

    .summary-total > div[b-j9ba3a3hm2] {
        text-align: right;
    }

    .summary-total strong[b-j9ba3a3hm2] {
        display: block;
        font-size: 25px;
        line-height: 1;
        letter-spacing: -0.03em;
    }

    .summary-total small[b-j9ba3a3hm2] {
        display: block;
        margin-top: 4px;
        color: #9ca3af;
    }

.enterprise-summary[b-j9ba3a3hm2] {
    margin-bottom: 22px;
    color: #6b7280;
    font-size: 13px;
    line-height: 1.55;
}

.continue-button[b-j9ba3a3hm2] {
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: none;
    border-radius: 10px;
    background: #111827;
    color: white;
    font-size: 14px;
    font-weight: 650;
    cursor: pointer;
    transition: background 0.15s ease, transform 0.15s ease;
}

    .continue-button:hover:not(:disabled)[b-j9ba3a3hm2] {
        background: #272f3d;
        transform: translateY(-1px);
    }

    .continue-button:disabled[b-j9ba3a3hm2] {
        opacity: 0.65;
        cursor: not-allowed;
    }

.arrow[b-j9ba3a3hm2] {
    font-size: 17px;
}

.secure-checkout[b-j9ba3a3hm2] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 13px;
    color: #9ca3af;
    font-size: 11px;
}

.lock[b-j9ba3a3hm2] {
    color: #22c55e;
    font-size: 8px;
}

.spinner[b-j9ba3a3hm2] {
    width: 15px;
    height: 15px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-j9ba3a3hm2 0.8s linear infinite;
}

@keyframes spin-b-j9ba3a3hm2 {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1050px) {
    .setup-grid[b-j9ba3a3hm2] {
        grid-template-columns: 1fr;
    }

    .summary-card[b-j9ba3a3hm2] {
        position: static;
    }
}

@media (max-width: 850px) {
    .plan-grid[b-j9ba3a3hm2] {
        grid-template-columns: 1fr;
    }

    .plan-top p[b-j9ba3a3hm2] {
        min-height: auto;
    }
}

@media (max-width: 600px) {
    .onboarding-page[b-j9ba3a3hm2] {
        padding: 24px 14px 50px;
    }

    .brand[b-j9ba3a3hm2] {
        margin-bottom: 35px;
    }

    .setup-card[b-j9ba3a3hm2],
    .summary-card[b-j9ba3a3hm2] {
        padding: 21px;
        border-radius: 14px;
    }

    .section-heading[b-j9ba3a3hm2] {
        gap: 12px;
    }
}
/* /Pages/Scopes.razor.rz.scp.css */
/* =========================================================
   PAGE
========================================================= */

.scopes-page[b-rf2k01reir] {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 34px 34px 72px;
    box-sizing: border-box;
    color: #182033;
}


/* =========================================================
   LOADING / ERRORS / MESSAGES
========================================================= */

.page-loading[b-rf2k01reir] {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #667085;
}

    .page-loading > div:last-child[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .page-loading strong[b-rf2k01reir] {
        color: #263044;
        font-size: 14px;
    }

    .page-loading span[b-rf2k01reir] {
        color: #8c95a5;
        font-size: 12px;
    }

.loading-spinner[b-rf2k01reir],
.button-spinner[b-rf2k01reir] {
    border-radius: 50%;
    border-style: solid;
    border-right-color: transparent;
    animation: spin-b-rf2k01reir .7s linear infinite;
}

.loading-spinner[b-rf2k01reir] {
    width: 30px;
    height: 30px;
    border-width: 3px;
    border-color: #e5e8f0;
    border-top-color: #6472d8;
}

.button-spinner[b-rf2k01reir] {
    width: 13px;
    height: 13px;
    border-width: 2px;
    border-color: currentColor;
    border-right-color: transparent;
}

@keyframes spin-b-rf2k01reir {
    to {
        transform: rotate(360deg);
    }
}

.page-error[b-rf2k01reir],
.page-message[b-rf2k01reir] {
    margin-bottom: 20px;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    border-radius: 12px;
}

.page-error[b-rf2k01reir] {
    background: #fff5f5;
    border: 1px solid #efcccc;
    color: #943c3c;
}

.page-message[b-rf2k01reir] {
    background: #f0faf4;
    border: 1px solid #c8ead3;
    color: #347251;
}

.page-error-icon[b-rf2k01reir],
.page-message-icon[b-rf2k01reir] {
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 850;
}

.page-error-icon[b-rf2k01reir] {
    background: #f8dada;
    color: #b33838;
}

.page-message-icon[b-rf2k01reir] {
    background: #d8f3e1;
    color: #257946;
}

.page-error > div:last-child[b-rf2k01reir] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-error strong[b-rf2k01reir] {
    font-size: 13px;
}

.page-error span[b-rf2k01reir],
.page-message span[b-rf2k01reir] {
    font-size: 12px;
    line-height: 1.5;
}


/* =========================================================
   HEADER
========================================================= */

.page-header[b-rf2k01reir] {
    margin-bottom: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
}

.eyebrow[b-rf2k01reir] {
    margin-bottom: 7px;
    color: #6472d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.page-header h1[b-rf2k01reir] {
    margin: 0;
    color: #172033;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -.035em;
}

.page-header p[b-rf2k01reir] {
    max-width: 720px;
    margin: 10px 0 0;
    color: #768093;
    font-size: 14px;
    line-height: 1.65;
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button[b-rf2k01reir],
.secondary-button[b-rf2k01reir],
.icon-button[b-rf2k01reir],
.modal-close[b-rf2k01reir] {
    font: inherit;
    cursor: pointer;
}

.primary-button[b-rf2k01reir] {
    min-height: 43px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #202941;
    border-radius: 9px;
    background: #202941;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: .15s ease;
}

    .primary-button:hover:not(:disabled)[b-rf2k01reir] {
        background: #161e30;
        transform: translateY(-1px);
        box-shadow: 0 5px 14px rgba(25, 33, 52, .12);
    }

.secondary-button[b-rf2k01reir] {
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid #d8dde6;
    border-radius: 9px;
    background: #fff;
    color: #364154;
    font-size: 12px;
    font-weight: 700;
    transition: .15s ease;
}

    .secondary-button:hover:not(:disabled)[b-rf2k01reir] {
        background: #f7f8fa;
        border-color: #c9cfda;
    }

    .primary-button:disabled[b-rf2k01reir],
    .secondary-button:disabled[b-rf2k01reir],
    .modal-close:disabled[b-rf2k01reir] {
        cursor: not-allowed;
        opacity: .6;
    }

.button-plus[b-rf2k01reir] {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
}

.icon-button[b-rf2k01reir] {
    width: 31px;
    height: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #dce1e9;
    border-radius: 8px;
    background: #fff;
    color: #566174;
    font-size: 18px;
    line-height: 1;
}

    .icon-button:hover[b-rf2k01reir] {
        background: #f6f7f9;
    }


/* =========================================================
   SUMMARY
========================================================= */

.summary-grid[b-rf2k01reir] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.summary-card[b-rf2k01reir] {
    min-width: 0;
    padding: 19px;
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.summary-icon[b-rf2k01reir] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 10px;
    font-weight: 850;
}

.scope-summary-icon[b-rf2k01reir] {
    background: #eef0ff;
    color: #5b68cf;
}

.table-summary-icon[b-rf2k01reir] {
    background: #edf8f2;
    color: #347c59;
}

.column-summary-icon[b-rf2k01reir] {
    background: #fff4e8;
    color: #9c652c;
}

.row-summary-icon[b-rf2k01reir] {
    background: #eaf7f8;
    color: #34737c;
}

.user-summary-icon[b-rf2k01reir] {
    background: #f4effd;
    color: #7550b2;
}

.summary-card > div:last-child[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.summary-label[b-rf2k01reir] {
    margin-bottom: 3px;
    color: #7a8494;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .055em;
}

.summary-card strong[b-rf2k01reir] {
    color: #1c2435;
    font-size: 23px;
    line-height: 1.05;
    letter-spacing: -.025em;
}

.summary-card small[b-rf2k01reir] {
    margin-top: 5px;
    color: #969eab;
    font-size: 10px;
}


/* =========================================================
   LAYOUT
========================================================= */

.scope-layout[b-rf2k01reir] {
    display: grid;
    grid-template-columns: 275px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.scope-list-card[b-rf2k01reir],
.scope-editor-card[b-rf2k01reir] {
    min-width: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.scope-list-card[b-rf2k01reir] {
    position: sticky;
    top: 20px;
}


/* =========================================================
   SCOPE LIST
========================================================= */

.scope-list-header[b-rf2k01reir] {
    min-height: 69px;
    padding: 17px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid #edf0f4;
}

    .scope-list-header h2[b-rf2k01reir] {
        margin: 0;
        color: #20283a;
        font-size: 14px;
        font-weight: 750;
    }

    .scope-list-header p[b-rf2k01reir] {
        margin: 4px 0 0;
        color: #8a93a2;
        font-size: 10px;
    }

.scope-list[b-rf2k01reir] {
    padding: 7px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.scope-list-item[b-rf2k01reir] {
    width: 100%;
    min-height: 58px;
    padding: 9px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: .14s ease;
}

    .scope-list-item:hover[b-rf2k01reir] {
        background: #f7f8fa;
    }

    .scope-list-item.active[b-rf2k01reir] {
        border-color: #dfe3fb;
        background: #f6f7ff;
    }

.scope-mark[b-rf2k01reir] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #f0f2f7;
    color: #596477;
    font-size: 11px;
    font-weight: 850;
}

.scope-list-item.active .scope-mark[b-rf2k01reir] {
    background: #e8ebff;
    color: #5967cf;
}

.scope-copy[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

    .scope-copy strong[b-rf2k01reir] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #343d4f;
        font-size: 11px;
    }

    .scope-copy span[b-rf2k01reir] {
        color: #959daa;
        font-size: 9px;
    }

.scope-chevron[b-rf2k01reir] {
    color: #a1a8b4;
    font-size: 17px;
}

.scope-list-empty[b-rf2k01reir] {
    padding: 38px 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.empty-icon[b-rf2k01reir] {
    width: 46px;
    height: 46px;
    margin-bottom: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #f0f2f7;
    color: #596477;
    font-size: 10px;
    font-weight: 850;
}

.scope-list-empty strong[b-rf2k01reir] {
    color: #344054;
    font-size: 12px;
}

.scope-list-empty span[b-rf2k01reir] {
    margin: 6px 0 15px;
    color: #8b95a5;
    font-size: 10px;
    line-height: 1.55;
}


/* =========================================================
   EDITOR
========================================================= */

.editor-empty[b-rf2k01reir] {
    min-height: 510px;
    padding: 55px 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.editor-empty-icon[b-rf2k01reir] {
    width: 56px;
    height: 56px;
    margin-bottom: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background: #eef0ff;
    color: #5c69d1;
    font-size: 23px;
}

.editor-empty h2[b-rf2k01reir] {
    margin: 0;
    color: #273043;
    font-size: 16px;
}

.editor-empty p[b-rf2k01reir] {
    max-width: 470px;
    margin: 8px 0 18px;
    color: #8892a2;
    font-size: 11px;
    line-height: 1.65;
}

.editor-header[b-rf2k01reir] {
    padding: 19px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid #edf0f4;
}

.selected-scope-title[b-rf2k01reir] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.selected-scope-mark[b-rf2k01reir] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #eef0ff;
    color: #5c69d1;
    font-size: 13px;
    font-weight: 850;
}

.scope-title-line[b-rf2k01reir] {
    display: flex;
    align-items: center;
    gap: 8px;
}

    .scope-title-line h2[b-rf2k01reir] {
        margin: 0;
        color: #222b3d;
        font-size: 15px;
        font-weight: 760;
    }

.selected-scope-title p[b-rf2k01reir] {
    margin: 4px 0 0;
    color: #8993a2;
    font-size: 10px;
    line-height: 1.45;
}

.active-badge[b-rf2k01reir] {
    padding: 3px 7px;
    border-radius: 999px;
    background: #e9f7ef;
    color: #2f7651;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.scope-header-stats[b-rf2k01reir] {
    display: flex;
    align-items: center;
    gap: 18px;
}

    .scope-header-stats > div[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 2px;
    }

    .scope-header-stats span[b-rf2k01reir] {
        color: #939ba8;
        font-size: 8px;
        text-transform: uppercase;
        letter-spacing: .05em;
    }

    .scope-header-stats strong[b-rf2k01reir] {
        color: #3a4455;
        font-size: 12px;
    }


/* =========================================================
   TOOLBAR
========================================================= */

.editor-toolbar[b-rf2k01reir] {
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-bottom: 1px solid #edf0f4;
}

.database-tabs[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow-x: auto;
}

.database-tab[b-rf2k01reir] {
    min-height: 34px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    border: 1px solid #e0e4eb;
    border-radius: 8px;
    background: #fff;
    color: #677184;
    font: inherit;
    font-size: 9px;
    font-weight: 700;
    cursor: pointer;
    transition: .14s ease;
}

    .database-tab:hover[b-rf2k01reir] {
        background: #f8f9fb;
    }

    .database-tab.active[b-rf2k01reir] {
        border-color: #cfd5fb;
        background: #f3f5ff;
        color: #5865c9;
    }

.database-provider[b-rf2k01reir] {
    font-size: 8px;
    font-weight: 850;
}

.scope-search[b-rf2k01reir] {
    width: 245px;
    height: 36px;
    flex: 0 0 auto;
    padding: 0 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dce1e9;
    border-radius: 8px;
    background: #fff;
}

    .scope-search:focus-within[b-rf2k01reir] {
        border-color: #6a77d9;
        box-shadow: 0 0 0 3px rgba(105, 118, 217, .08);
    }

    .scope-search svg[b-rf2k01reir] {
        width: 14px;
        height: 14px;
        flex: 0 0 auto;
        fill: none;
        stroke: #8993a3;
        stroke-width: 1.8;
        stroke-linecap: round;
    }

    .scope-search input[b-rf2k01reir] {
        width: 100%;
        min-width: 0;
        border: 0;
        outline: 0;
        background: transparent;
        color: #263044;
        font: inherit;
        font-size: 10px;
    }

        .scope-search input[b-rf2k01reir]::placeholder {
            color: #a1a8b4;
        }


/* =========================================================
   DATABASE CONTEXT
========================================================= */

.database-context[b-rf2k01reir] {
    min-height: 57px;
    padding: 11px 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    background: #fcfcfd;
    border-bottom: 1px solid #edf0f4;
}

.database-context-left[b-rf2k01reir] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.database-context-icon[b-rf2k01reir] {
    width: 31px;
    height: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #f0f2f7;
    color: #596477;
    font-size: 8px;
    font-weight: 850;
}

.database-context-left > div:last-child[b-rf2k01reir] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.database-context-left strong[b-rf2k01reir] {
    color: #394254;
    font-size: 10px;
}

.database-context-left span[b-rf2k01reir],
.database-context-right[b-rf2k01reir] {
    color: #969eab;
    font-size: 8px;
}


/* =========================================================
   OBJECTS
========================================================= */

.object-list[b-rf2k01reir] {
    display: flex;
    flex-direction: column;
}

.object-row[b-rf2k01reir] {
    border-bottom: 1px solid #edf0f4;
}

    .object-row:last-child[b-rf2k01reir] {
        border-bottom: 0;
    }

    .object-row.selected[b-rf2k01reir] {
        background: #fdfdff;
    }

.object-main-row[b-rf2k01reir] {
    min-height: 67px;
    padding: 11px 17px;
    display: grid;
    grid-template-columns: 20px 20px 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
}

.object-check[b-rf2k01reir],
.column-card[b-rf2k01reir] {
    position: relative;
}

.object-check[b-rf2k01reir] {
    width: 17px;
    height: 17px;
    cursor: pointer;
}

    .object-check input[b-rf2k01reir],
    .column-card input[b-rf2k01reir] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    .object-check > span[b-rf2k01reir],
    .column-check[b-rf2k01reir] {
        width: 16px;
        height: 16px;
        box-sizing: border-box;
        display: block;
        border: 1.5px solid #c7ced9;
        border-radius: 5px;
        background: #fff;
        position: relative;
    }

    .object-check input:checked + span[b-rf2k01reir],
    .column-card input:checked + .column-check[b-rf2k01reir] {
        border-color: #6572d8;
        background: #6572d8;
    }

        .object-check input:checked + span[b-rf2k01reir]::after,
        .column-card input:checked + .column-check[b-rf2k01reir]::after {
            content: "";
            position: absolute;
            left: 4px;
            top: 1px;
            width: 4px;
            height: 8px;
            border: solid #fff;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
        }

.expand-button[b-rf2k01reir] {
    width: 20px;
    height: 20px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: #8993a3;
    font-size: 18px;
    cursor: pointer;
}

.chevron[b-rf2k01reir] {
    display: inline-block;
    transition: transform .16s ease;
}

    .chevron.expanded[b-rf2k01reir] {
        transform: rotate(90deg);
    }

.object-icon[b-rf2k01reir] {
    width: 31px;
    height: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 9px;
    font-weight: 850;
}

    .object-icon.table[b-rf2k01reir] {
        background: #edf8f2;
        color: #347c59;
    }

    .object-icon.view[b-rf2k01reir] {
        background: #f4effd;
        color: #7550b2;
    }

.object-copy[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.object-name-line[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
}

    .object-name-line strong[b-rf2k01reir] {
        max-width: 380px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #333c4e;
        font-size: 10px;
    }

.schema-badge[b-rf2k01reir],
.type-badge[b-rf2k01reir],
.pk-badge[b-rf2k01reir],
.sensitivity-badge[b-rf2k01reir] {
    flex: 0 0 auto;
    padding: 2px 5px;
    border-radius: 5px;
    font-size: 7px;
    font-weight: 800;
    text-transform: uppercase;
}

.schema-badge[b-rf2k01reir] {
    background: #f0f2f5;
    color: #7d8796;
}

.type-badge[b-rf2k01reir] {
    background: #f6f7f9;
    color: #9098a5;
}

.object-copy > span[b-rf2k01reir] {
    color: #989fac;
    font-size: 8px;
}

.access-summary[b-rf2k01reir] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px;
}

.access-badge[b-rf2k01reir] {
    padding: 4px 7px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 750;
    white-space: nowrap;
}

    .access-badge.none[b-rf2k01reir] {
        background: #f2f4f7;
        color: #8e97a5;
    }

    .access-badge.all[b-rf2k01reir] {
        background: #e9f7ef;
        color: #347553;
    }

    .access-badge.restricted[b-rf2k01reir] {
        background: #fff4e8;
        color: #96602c;
    }

    .access-badge.row-filtered[b-rf2k01reir] {
        background: #eaf7f8;
        color: #34737c;
    }

.objects-empty[b-rf2k01reir] {
    padding: 55px 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    text-align: center;
}

    .objects-empty strong[b-rf2k01reir] {
        color: #404a5c;
        font-size: 11px;
    }

    .objects-empty span[b-rf2k01reir] {
        color: #969eab;
        font-size: 9px;
    }


/* =========================================================
   COLUMN EDITOR
========================================================= */

.object-details[b-rf2k01reir] {
    padding: 15px 17px 17px 97px;
    background: #fafbfc;
    border-top: 1px solid #edf0f4;
}

.object-note[b-rf2k01reir] {
    color: #7f8999;
    font-size: 9px;
}

.column-mode-row[b-rf2k01reir] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

    .column-mode-row > div:first-child[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .column-mode-row strong[b-rf2k01reir] {
        color: #3c4658;
        font-size: 10px;
    }

    .column-mode-row span[b-rf2k01reir] {
        color: #8d96a5;
        font-size: 9px;
    }

.segmented-control[b-rf2k01reir] {
    flex: 0 0 auto;
    padding: 3px;
    display: flex;
    border: 1px solid #dde2e9;
    border-radius: 8px;
    background: #f3f4f6;
}

.segment[b-rf2k01reir] {
    min-height: 28px;
    padding: 0 9px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #778193;
    font: inherit;
    font-size: 8px;
    font-weight: 700;
    cursor: pointer;
}

    .segment.active[b-rf2k01reir] {
        background: #fff;
        color: #4652b2;
        box-shadow: 0 1px 4px rgba(17, 24, 39, .08);
    }

.all-columns-note[b-rf2k01reir] {
    margin-top: 13px;
    padding: 12px 13px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border: 1px solid #cfe7d7;
    border-radius: 9px;
    background: #f3faf6;
}

.all-columns-check[b-rf2k01reir] {
    width: 23px;
    height: 23px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #daf0e2;
    color: #347653;
    font-size: 9px;
    font-weight: 850;
}

.all-columns-note > div:last-child[b-rf2k01reir] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.all-columns-note strong[b-rf2k01reir] {
    color: #3d6f53;
    font-size: 9px;
}

.all-columns-note span[b-rf2k01reir] {
    color: #71877a;
    font-size: 8px;
    line-height: 1.5;
}

.column-toolbar[b-rf2k01reir] {
    margin-top: 15px;
    padding-top: 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border-top: 1px solid #e6e9ee;
}

    .column-toolbar > div:first-child[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .column-toolbar strong[b-rf2k01reir] {
        color: #465062;
        font-size: 9px;
    }

    .column-toolbar span[b-rf2k01reir] {
        color: #959daa;
        font-size: 8px;
    }

    .column-toolbar > div:last-child[b-rf2k01reir] {
        display: flex;
        gap: 10px;
    }

    .column-toolbar button[b-rf2k01reir] {
        padding: 0;
        border: 0;
        background: transparent;
        color: #5d69cf;
        font: inherit;
        font-size: 8px;
        font-weight: 700;
        cursor: pointer;
    }

        .column-toolbar button:hover[b-rf2k01reir] {
            text-decoration: underline;
        }

.column-grid[b-rf2k01reir] {
    margin-top: 11px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.column-card[b-rf2k01reir] {
    min-width: 0;
    min-height: 48px;
    padding: 9px 10px;
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    border: 1px solid #e1e5eb;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    transition: .13s ease;
}

    .column-card:hover[b-rf2k01reir] {
        border-color: #cfd5e0;
    }

    .column-card.selected[b-rf2k01reir] {
        border-color: #d3d8fa;
        background: #fafaff;
    }

.column-copy[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.column-name-line[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 5px;
}

    .column-name-line strong[b-rf2k01reir] {
        max-width: 220px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #3d4658;
        font-size: 9px;
    }

.column-copy > span[b-rf2k01reir] {
    color: #969eab;
    font-size: 7px;
}

.pk-badge[b-rf2k01reir] {
    background: #eef0ff;
    color: #5f6bc8;
}

.sensitivity-badge[b-rf2k01reir] {
    background: #fff0f1;
    color: #a94850;
}




/* =========================================================
   ROW ACCESS
========================================================= */

.row-access-section[b-rf2k01reir] {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e3e7ed;
}

.all-rows-note[b-rf2k01reir] {
    border-color: #cfe8e9;
    background: #f3fbfb;
}

    .all-rows-note .all-columns-check[b-rf2k01reir] {
        background: #dff1f2;
        color: #34737c;
    }

    .all-rows-note strong[b-rf2k01reir] {
        color: #3c6f75;
    }

    .all-rows-note span[b-rf2k01reir] {
        color: #71878a;
    }

.row-filter-toolbar[b-rf2k01reir] {
    margin-top: 15px;
    padding-top: 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-top: 1px solid #e6e9ee;
}

    .row-filter-toolbar > div:first-child[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .row-filter-toolbar strong[b-rf2k01reir] {
        color: #465062;
        font-size: 9px;
    }

    .row-filter-toolbar span[b-rf2k01reir] {
        color: #959daa;
        font-size: 8px;
    }

.row-add-button[b-rf2k01reir] {
    min-height: 32px;
    padding: 0 11px;
    font-size: 9px;
}

.row-filter-empty[b-rf2k01reir] {
    margin-top: 11px;
    padding: 13px;
    border: 1px dashed #d9dee7;
    border-radius: 9px;
    background: #fff;
    color: #8b94a3;
    font-size: 9px;
}

.row-filter-list[b-rf2k01reir] {
    margin-top: 11px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.row-filter-card[b-rf2k01reir] {
    min-width: 0;
    padding: 10px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) 28px;
    align-items: end;
    gap: 9px;
    border: 1px solid #dde4e7;
    border-radius: 9px;
    background: #fff;
}

.row-filter-number[b-rf2k01reir] {
    width: 24px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: #eaf7f8;
    color: #34737c;
    font-size: 8px;
    font-weight: 850;
}

.row-filter-fields[b-rf2k01reir] {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(135px, .9fr) minmax(145px, .9fr) minmax(160px, 1.2fr);
    gap: 8px;
}

.row-filter-field[b-rf2k01reir] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

    .row-filter-field label[b-rf2k01reir] {
        color: #7f8998;
        font-size: 7px;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: .045em;
    }

.row-filter-control[b-rf2k01reir],
.row-filter-no-value[b-rf2k01reir] {
    width: 100%;
    min-width: 0;
    height: 34px;
    padding: 0 9px;
    box-sizing: border-box;
    border: 1px solid #d9dee6;
    border-radius: 7px;
    outline: none;
    background: #fff;
    color: #3f495b;
    font: inherit;
    font-size: 9px;
}

.row-filter-control:focus[b-rf2k01reir] {
    border-color: #6976d9;
    box-shadow: 0 0 0 3px rgba(105, 118, 217, .08);
}

.row-filter-no-value[b-rf2k01reir] {
    display: flex;
    align-items: center;
    background: #f7f8fa;
    color: #9aa2ae;
}

.row-filter-remove[b-rf2k01reir] {
    width: 28px;
    height: 30px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ead5d7;
    border-radius: 7px;
    background: #fff8f8;
    color: #a34b53;
    font: inherit;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
}

.row-filter-remove:hover[b-rf2k01reir] {
    background: #fff0f1;
}

.row-filter-help[b-rf2k01reir] {
    margin-top: 10px;
    color: #8992a1;
    font-size: 8px;
    line-height: 1.55;
}

.row-filter-help strong[b-rf2k01reir] {
    color: #667184;
}


/* =========================================================
   SAVE BAR
========================================================= */

.save-bar[b-rf2k01reir] {
    min-height: 66px;
    padding: 12px 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    position: sticky;
    bottom: 0;
    z-index: 5;
    background: rgba(255, 255, 255, .97);
    border-top: 1px solid #e5e9ef;
    box-shadow: 0 -8px 18px rgba(17, 24, 39, .025);
}

    .save-bar > div:first-child[b-rf2k01reir] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .save-bar strong[b-rf2k01reir] {
        color: #424c5e;
        font-size: 9px;
    }

    .save-bar span[b-rf2k01reir] {
        color: #969eab;
        font-size: 8px;
    }


/* =========================================================
   MODAL
========================================================= */

.modal-backdrop[b-rf2k01reir] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 30px 18px;
    overflow-y: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    background: rgba(15, 23, 42, .52);
}

.scope-modal[b-rf2k01reir] {
    width: min(540px, 100%);
    margin: auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e7ed;
    border-radius: 17px;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
}

.modal-header[b-rf2k01reir] {
    padding: 22px 23px 18px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #edf0f4;
}

    .modal-header h2[b-rf2k01reir] {
        margin: 0;
        color: #182033;
        font-size: 19px;
        letter-spacing: -.02em;
    }

    .modal-header p[b-rf2k01reir] {
        margin: 6px 0 0;
        color: #7d8797;
        font-size: 10px;
    }

.modal-close[b-rf2k01reir] {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e1e5eb;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    font-size: 20px;
    line-height: 1;
}

    .modal-close:hover:not(:disabled)[b-rf2k01reir] {
        background: #f6f7f9;
    }

.modal-body[b-rf2k01reir] {
    padding: 22px 23px;
    display: flex;
    flex-direction: column;
    gap: 17px;
}

.field[b-rf2k01reir] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

    .field label[b-rf2k01reir] {
        color: #485265;
        font-size: 10px;
        font-weight: 700;
    }

.form-control[b-rf2k01reir] {
    width: 100%;
    min-height: 42px;
    padding: 9px 11px;
    box-sizing: border-box;
    border: 1px solid #d8dde7;
    border-radius: 8px;
    outline: none;
    background: #fff;
    color: #182033;
    font: inherit;
    font-size: 11px;
    transition: .15s ease;
}

    .form-control:focus[b-rf2k01reir] {
        border-color: #6976d9;
        box-shadow: 0 0 0 3px rgba(105, 118, 217, .09);
    }

.description-input[b-rf2k01reir] {
    min-height: 95px;
    resize: vertical;
}

.validation-message[b-rf2k01reir] {
    color: #c64040;
    font-size: 9px;
}

.field-help[b-rf2k01reir] {
    color: #959daa;
    font-size: 9px;
}

.modal-footer[b-rf2k01reir] {
    padding: 14px 23px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    background: #fafbfc;
    border-top: 1px solid #e9edf2;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1150px) {
    .summary-grid[b-rf2k01reir] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .scope-layout[b-rf2k01reir] {
        grid-template-columns: 230px minmax(0, 1fr);
    }

    .column-grid[b-rf2k01reir] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .scopes-page[b-rf2k01reir] {
        padding: 26px 18px 60px;
    }

    .scope-layout[b-rf2k01reir] {
        grid-template-columns: 1fr;
    }

    .scope-list-card[b-rf2k01reir] {
        position: static;
    }

    .scope-list[b-rf2k01reir] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .editor-toolbar[b-rf2k01reir] {
        align-items: stretch;
        flex-direction: column;
    }

    .scope-search[b-rf2k01reir] {
        width: 100%;
        box-sizing: border-box;
    }

    .object-details[b-rf2k01reir] {
        padding-left: 66px;
    }
}


@media (max-width: 1150px) {
    .row-filter-fields[b-rf2k01reir] {
        grid-template-columns: 1fr 1fr;
    }

    .row-filter-value-field[b-rf2k01reir] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .row-filter-toolbar[b-rf2k01reir] {
        align-items: stretch;
        flex-direction: column;
    }

    .row-add-button[b-rf2k01reir] {
        width: 100%;
    }

    .row-filter-card[b-rf2k01reir] {
        grid-template-columns: 24px minmax(0, 1fr) 28px;
        align-items: start;
    }

    .row-filter-fields[b-rf2k01reir] {
        grid-template-columns: 1fr;
    }

    .row-filter-value-field[b-rf2k01reir] {
        grid-column: auto;
    }
}

@media (max-width: 650px) {
    .scopes-page[b-rf2k01reir] {
        padding: 22px 14px 50px;
    }

    .page-header[b-rf2k01reir] {
        flex-direction: column;
    }

        .page-header .primary-button[b-rf2k01reir] {
            width: 100%;
        }

    .summary-grid[b-rf2k01reir] {
        grid-template-columns: 1fr;
    }

    .scope-list[b-rf2k01reir] {
        grid-template-columns: 1fr;
    }

    .editor-header[b-rf2k01reir] {
        align-items: flex-start;
        flex-direction: column;
    }

    .scope-header-stats[b-rf2k01reir] {
        width: 100%;
        justify-content: flex-start;
    }

        .scope-header-stats > div[b-rf2k01reir] {
            align-items: flex-start;
        }

    .database-context[b-rf2k01reir] {
        align-items: flex-start;
        flex-direction: column;
    }

    .object-main-row[b-rf2k01reir] {
        grid-template-columns: 20px 20px 31px minmax(0, 1fr);
    }

    .access-summary[b-rf2k01reir] {
        grid-column: 4;
    }

    .object-details[b-rf2k01reir] {
        padding: 14px 14px 16px 53px;
    }

    .column-mode-row[b-rf2k01reir] {
        align-items: stretch;
        flex-direction: column;
    }

    .segmented-control[b-rf2k01reir] {
        width: 100%;
        box-sizing: border-box;
    }

    .segment[b-rf2k01reir] {
        flex: 1;
    }

    .save-bar[b-rf2k01reir] {
        align-items: stretch;
        flex-direction: column;
    }

        .save-bar .primary-button[b-rf2k01reir] {
            width: 100%;
        }

    .modal-backdrop[b-rf2k01reir] {
        padding: 12px;
    }

    .modal-header[b-rf2k01reir],
    .modal-body[b-rf2k01reir],
    .modal-footer[b-rf2k01reir] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .modal-footer[b-rf2k01reir] {
        align-items: stretch;
        flex-direction: column-reverse;
    }

        .modal-footer .primary-button[b-rf2k01reir],
        .modal-footer .secondary-button[b-rf2k01reir] {
            width: 100%;
        }
}


/* =========================================================
   ADMINISTRATOR ACCESS REQUIRED
========================================================= */

.access-denied-card[b-rf2k01reir] {
    min-height: 480px;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 16px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.access-denied-icon[b-rf2k01reir] {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff2f2;
    color: #af4048;
    font-size: 19px;
    font-weight: 850;
}

.access-denied-card h1[b-rf2k01reir] {
    margin: 0;
    color: #283144;
    font-size: 20px;
}

.access-denied-card p[b-rf2k01reir] {
    max-width: 520px;
    margin: 9px 0 0;
    color: #8993a2;
    font-size: 12px;
    line-height: 1.65;
}
/* /Pages/Team.razor.rz.scp.css */
/* =========================================================
   PAGE
========================================================= */

.team-page[b-1wvie33r13] {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 34px 34px 72px;
    box-sizing: border-box;
    color: #182033;
}


/* =========================================================
   LOADING / MESSAGES
========================================================= */

.page-loading[b-1wvie33r13] {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #667085;
}

.page-loading > div:last-child[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-loading strong[b-1wvie33r13] {
    color: #263044;
    font-size: 14px;
}

.page-loading span[b-1wvie33r13] {
    color: #8c95a5;
    font-size: 12px;
}

.loading-spinner[b-1wvie33r13],
.button-spinner[b-1wvie33r13] {
    border-radius: 50%;
    border-style: solid;
    border-right-color: transparent;
    animation: spin-b-1wvie33r13 .7s linear infinite;
}

.loading-spinner[b-1wvie33r13] {
    width: 30px;
    height: 30px;
    border-width: 3px;
    border-color: #e5e8f0;
    border-top-color: #6472d8;
}

.button-spinner[b-1wvie33r13] {
    width: 13px;
    height: 13px;
    border-width: 2px;
    border-color: currentColor;
    border-right-color: transparent;
}

@keyframes spin-b-1wvie33r13 {
    to {
        transform: rotate(360deg);
    }
}

.page-error[b-1wvie33r13],
.page-message[b-1wvie33r13] {
    margin-bottom: 20px;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    border-radius: 12px;
}

.page-error[b-1wvie33r13] {
    background: #fff5f5;
    border: 1px solid #efcccc;
    color: #943c3c;
}

.page-message[b-1wvie33r13] {
    background: #f0faf4;
    border: 1px solid #c8ead3;
    color: #347251;
}

.page-error-icon[b-1wvie33r13],
.page-message-icon[b-1wvie33r13] {
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 850;
}

.page-error-icon[b-1wvie33r13] {
    background: #f8dada;
    color: #b33838;
}

.page-message-icon[b-1wvie33r13] {
    background: #d8f3e1;
    color: #257946;
}

.page-error > div:last-child[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.page-error strong[b-1wvie33r13] {
    font-size: 13px;
}

.page-error span[b-1wvie33r13],
.page-message span[b-1wvie33r13] {
    font-size: 12px;
    line-height: 1.5;
}


/* =========================================================
   ACCESS DENIED
========================================================= */

.access-denied-card[b-1wvie33r13] {
    min-height: 480px;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 16px;
}

.access-denied-icon[b-1wvie33r13] {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff2f2;
    color: #af4048;
    font-size: 19px;
    font-weight: 850;
}

.access-denied-card h1[b-1wvie33r13] {
    margin: 0;
    color: #283144;
    font-size: 20px;
}

.access-denied-card p[b-1wvie33r13] {
    max-width: 520px;
    margin: 9px 0 0;
    color: #8993a2;
    font-size: 12px;
    line-height: 1.65;
}


/* =========================================================
   HEADER
========================================================= */

.page-header[b-1wvie33r13] {
    margin-bottom: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
}

.eyebrow[b-1wvie33r13] {
    margin-bottom: 7px;
    color: #6472d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.page-header h1[b-1wvie33r13] {
    margin: 0;
    color: #172033;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 760;
    letter-spacing: -.035em;
}

.page-header p[b-1wvie33r13] {
    max-width: 720px;
    margin: 10px 0 0;
    color: #768093;
    font-size: 14px;
    line-height: 1.65;
}


/* =========================================================
   BUTTONS
========================================================= */

.primary-button[b-1wvie33r13],
.secondary-button[b-1wvie33r13],
.manage-button[b-1wvie33r13],
.modal-close[b-1wvie33r13] {
    font: inherit;
    cursor: pointer;
}

.primary-button[b-1wvie33r13] {
    min-height: 43px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #202941;
    border-radius: 9px;
    background: #202941;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    transition: .15s ease;
}

.primary-button:hover:not(:disabled)[b-1wvie33r13] {
    background: #161e30;
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(25, 33, 52, .12);
}

.secondary-button[b-1wvie33r13] {
    min-height: 41px;
    padding: 0 15px;
    border: 1px solid #d8dde6;
    border-radius: 9px;
    background: #fff;
    color: #364154;
    font-size: 12px;
    font-weight: 700;
    transition: .15s ease;
}

.secondary-button:hover:not(:disabled)[b-1wvie33r13] {
    background: #f7f8fa;
    border-color: #c9cfda;
}

.primary-button:disabled[b-1wvie33r13],
.secondary-button:disabled[b-1wvie33r13],
.modal-close:disabled[b-1wvie33r13] {
    cursor: not-allowed;
    opacity: .6;
}

.button-plus[b-1wvie33r13] {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
}


/* =========================================================
   SUMMARY
========================================================= */

.summary-grid[b-1wvie33r13] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.summary-card[b-1wvie33r13] {
    min-width: 0;
    padding: 19px;
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.summary-icon[b-1wvie33r13] {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 10px;
    font-weight: 850;
}

.members-summary-icon[b-1wvie33r13] {
    background: #eef0ff;
    color: #5b68cf;
}

.active-summary-icon[b-1wvie33r13] {
    background: #edf8f2;
    color: #347c59;
}

.pending-summary-icon[b-1wvie33r13] {
    background: #fff4e8;
    color: #9c652c;
}

.scope-summary-icon[b-1wvie33r13] {
    background: #f4effd;
    color: #7550b2;
}

.summary-card > div:last-child[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.summary-label[b-1wvie33r13] {
    margin-bottom: 3px;
    color: #7a8494;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .055em;
}

.summary-card strong[b-1wvie33r13] {
    color: #1c2435;
    font-size: 23px;
    line-height: 1.05;
    letter-spacing: -.025em;
}

.summary-card small[b-1wvie33r13] {
    margin-top: 5px;
    color: #969eab;
    font-size: 10px;
}


/* =========================================================
   TEAM PANEL
========================================================= */

.team-panel[b-1wvie33r13] {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(17, 24, 39, .025);
}

.panel-header[b-1wvie33r13] {
    min-height: 76px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid #edf0f4;
}

.panel-header h2[b-1wvie33r13] {
    margin: 0;
    color: #20283a;
    font-size: 15px;
    font-weight: 750;
}

.panel-header p[b-1wvie33r13] {
    margin: 4px 0 0;
    color: #8a93a2;
    font-size: 11px;
}

.toolbar[b-1wvie33r13] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.search-box[b-1wvie33r13] {
    width: 245px;
    height: 39px;
    padding: 0 11px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dce1e9;
    border-radius: 9px;
    background: #fff;
}

.search-box:focus-within[b-1wvie33r13] {
    border-color: #6a77d9;
    box-shadow: 0 0 0 3px rgba(105, 118, 217, .09);
}

.search-box svg[b-1wvie33r13] {
    width: 15px;
    height: 15px;
    flex: 0 0 auto;
    fill: none;
    stroke: #8993a3;
    stroke-width: 1.8;
    stroke-linecap: round;
}

.search-box input[b-1wvie33r13] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #263044;
    font: inherit;
    font-size: 12px;
}

.search-box input[b-1wvie33r13]::placeholder {
    color: #a1a8b4;
}

.role-filter[b-1wvie33r13] {
    height: 39px;
    padding: 0 31px 0 11px;
    border: 1px solid #dce1e9;
    border-radius: 9px;
    outline: none;
    background: #fff;
    color: #4b5669;
    font: inherit;
    font-size: 12px;
}


/* =========================================================
   MEMBER ROW
========================================================= */

.member-list[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
}

.member-row[b-1wvie33r13] {
    min-height: 82px;
    padding: 15px 20px;
    display: grid;
    grid-template-columns: 42px minmax(190px, 1.2fr) 90px minmax(220px, 1.2fr) 105px auto;
    align-items: center;
    gap: 14px;
    border-bottom: 1px solid #edf0f4;
    transition: background .14s ease;
}

.member-row:last-child[b-1wvie33r13] {
    border-bottom: 0;
}

.member-row:hover[b-1wvie33r13] {
    background: #fdfdfe;
}

.member-avatar[b-1wvie33r13] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #eef0ff;
    color: #5d69cf;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .02em;
}

.member-avatar.large[b-1wvie33r13] {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    font-size: 12px;
}

.member-identity[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.member-name-row[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
}

.member-name-row > strong[b-1wvie33r13] {
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #313a4c;
    font-size: 11px;
    font-weight: 750;
}

.member-identity > span[b-1wvie33r13] {
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #939ba8;
    font-size: 9px;
}

.you-badge[b-1wvie33r13],
.pending-badge[b-1wvie33r13],
.active-badge[b-1wvie33r13],
.disabled-badge[b-1wvie33r13] {
    flex: 0 0 auto;
    padding: 3px 6px;
    border-radius: 999px;
    font-size: 7px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.you-badge[b-1wvie33r13] {
    background: #eef0ff;
    color: #5967cf;
}

.pending-badge[b-1wvie33r13] {
    background: #fff3e3;
    color: #94612c;
}

.active-badge[b-1wvie33r13] {
    background: #e9f7ef;
    color: #2f7651;
}

.disabled-badge[b-1wvie33r13] {
    background: #f4e8e9;
    color: #99434b;
}

.member-role[b-1wvie33r13],
.member-auth[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.member-role span[b-1wvie33r13],
.member-auth span[b-1wvie33r13],
.member-column-label[b-1wvie33r13] {
    color: #989fac;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .045em;
}

.member-role strong[b-1wvie33r13],
.member-auth strong[b-1wvie33r13] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #4a5466;
    font-size: 9px;
    font-weight: 700;
}

.member-scopes[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.scope-chips[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.scope-chip[b-1wvie33r13] {
    max-width: 110px;
    padding: 4px 7px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-radius: 999px;
    background: #f1f3ff;
    color: #5b67c5;
    font-size: 8px;
    font-weight: 700;
}

.scope-chip.more[b-1wvie33r13] {
    background: #f3f4f6;
    color: #778193;
}

.no-scopes[b-1wvie33r13] {
    color: #a0a7b2;
    font-size: 9px;
}

.member-actions[b-1wvie33r13] {
    display: flex;
    justify-content: flex-end;
}

.manage-button[b-1wvie33r13] {
    padding: 0;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 0;
    background: transparent;
    color: #5e6bd2;
    font-size: 9px;
    font-weight: 750;
}

.manage-button:hover[b-1wvie33r13] {
    text-decoration: underline;
}

.manage-button span[b-1wvie33r13] {
    font-size: 15px;
    line-height: 1;
}


/* =========================================================
   EMPTY STATE
========================================================= */

.empty-state[b-1wvie33r13] {
    padding: 68px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.empty-icon[b-1wvie33r13] {
    width: 49px;
    height: 49px;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: #f0f2f7;
    color: #596477;
    font-size: 11px;
    font-weight: 850;
}

.empty-state h3[b-1wvie33r13] {
    margin: 0;
    color: #283144;
    font-size: 14px;
}

.empty-state p[b-1wvie33r13] {
    max-width: 430px;
    margin: 7px 0 0;
    color: #8c95a4;
    font-size: 12px;
    line-height: 1.6;
}


/* =========================================================
   MODALS
========================================================= */

.modal-backdrop[b-1wvie33r13] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 30px 18px;
    overflow-y: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    background: rgba(15, 23, 42, .52);
}

.team-modal[b-1wvie33r13] {
    width: min(650px, 100%);
    margin: auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e7ed;
    border-radius: 17px;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
}

.modal-header[b-1wvie33r13] {
    padding: 22px 23px 18px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #edf0f4;
}

.modal-header h2[b-1wvie33r13] {
    margin: 0;
    color: #182033;
    font-size: 19px;
    letter-spacing: -.02em;
}

.modal-header p[b-1wvie33r13] {
    margin: 6px 0 0;
    color: #7d8797;
    font-size: 10px;
}

.modal-close[b-1wvie33r13] {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e1e5eb;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    font-size: 20px;
    line-height: 1;
}

.modal-close:hover:not(:disabled)[b-1wvie33r13] {
    background: #f6f7f9;
}

.modal-body[b-1wvie33r13] {
    padding: 22px 23px;
}

.modal-footer[b-1wvie33r13] {
    padding: 14px 23px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    background: #fafbfc;
    border-top: 1px solid #e9edf2;
}


/* =========================================================
   FORMS
========================================================= */

.form-grid[b-1wvie33r13] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.field[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.field.full[b-1wvie33r13] {
    grid-column: 1 / -1;
}

.field label[b-1wvie33r13] {
    color: #485265;
    font-size: 10px;
    font-weight: 700;
}

.form-control[b-1wvie33r13] {
    width: 100%;
    min-height: 42px;
    padding: 9px 11px;
    box-sizing: border-box;
    border: 1px solid #d8dde7;
    border-radius: 8px;
    outline: none;
    background: #fff;
    color: #182033;
    font: inherit;
    font-size: 11px;
    transition: .15s ease;
}

.form-control:focus[b-1wvie33r13] {
    border-color: #6976d9;
    box-shadow: 0 0 0 3px rgba(105, 118, 217, .09);
}

.validation-message[b-1wvie33r13] {
    color: #c64040;
    font-size: 9px;
}

.field-help[b-1wvie33r13] {
    color: #959daa;
    font-size: 9px;
    line-height: 1.45;
}

.read-only-field[b-1wvie33r13] {
    min-height: 42px;
    padding: 10px 11px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    box-sizing: border-box;
    border: 1px solid #e1e5eb;
    border-radius: 8px;
    background: #f8f9fb;
}

.read-only-field strong[b-1wvie33r13] {
    color: #3e485a;
    font-size: 10px;
}

.read-only-field span[b-1wvie33r13] {
    color: #939ba8;
    font-size: 8px;
}


/* =========================================================
   SCOPE ASSIGNMENTS
========================================================= */

.scope-assignment-section[b-1wvie33r13] {
    margin-top: 23px;
    padding-top: 20px;
    border-top: 1px solid #edf0f4;
}

.section-heading[b-1wvie33r13] {
    margin-bottom: 11px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.section-heading > div:first-child[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.section-heading strong[b-1wvie33r13] {
    color: #3c4658;
    font-size: 10px;
}

.section-heading span[b-1wvie33r13] {
    color: #8d96a5;
    font-size: 8px;
}

.selected-count[b-1wvie33r13] {
    flex: 0 0 auto;
    padding: 4px 7px;
    border-radius: 999px;
    background: #f1f3ff;
    color: #5d69cb !important;
    font-weight: 750;
}

.scope-option-list[b-1wvie33r13] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.scope-option[b-1wvie33r13] {
    min-width: 0;
    min-height: 56px;
    padding: 10px;
    display: grid;
    grid-template-columns: 17px minmax(0, 1fr);
    align-items: flex-start;
    gap: 9px;
    position: relative;
    border: 1px solid #e0e4ea;
    border-radius: 9px;
    background: #fff;
    cursor: pointer;
    transition: .13s ease;
}

.scope-option:hover[b-1wvie33r13] {
    border-color: #cfd5e0;
}

.scope-option.selected[b-1wvie33r13] {
    border-color: #d1d7fa;
    background: #fafaff;
}

.scope-option input[b-1wvie33r13] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.scope-checkbox[b-1wvie33r13] {
    width: 16px;
    height: 16px;
    box-sizing: border-box;
    display: block;
    border: 1.5px solid #c7ced9;
    border-radius: 5px;
    background: #fff;
    position: relative;
}

.scope-option input:checked + .scope-checkbox[b-1wvie33r13] {
    border-color: #6572d8;
    background: #6572d8;
}

.scope-option input:checked + .scope-checkbox[b-1wvie33r13]::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.scope-option > div[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.scope-option strong[b-1wvie33r13] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #3c4658;
    font-size: 9px;
}

.scope-option span:last-child[b-1wvie33r13] {
    display: -webkit-box;
    overflow: hidden;
    color: #939ba8;
    font-size: 8px;
    line-height: 1.45;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.no-scopes-card[b-1wvie33r13] {
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    border: 1px dashed #d9dee7;
    border-radius: 9px;
    background: #fafbfc;
}

.no-scopes-card strong[b-1wvie33r13] {
    color: #555f71;
    font-size: 9px;
}

.no-scopes-card span[b-1wvie33r13] {
    color: #929aa8;
    font-size: 8px;
}


/* =========================================================
   INVITE INFO / MEMBER SUMMARY
========================================================= */

.invite-info[b-1wvie33r13] {
    margin-top: 18px;
    padding: 13px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border: 1px solid #dce2f4;
    border-radius: 9px;
    background: #f7f8fd;
}

.invite-info-icon[b-1wvie33r13] {
    width: 23px;
    height: 23px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e7eaff;
    color: #5d69c8;
    font-size: 9px;
    font-weight: 850;
}

.invite-info > div:last-child[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.invite-info strong[b-1wvie33r13] {
    color: #495469;
    font-size: 9px;
}

.invite-info span[b-1wvie33r13] {
    color: #7d8798;
    font-size: 8px;
    line-height: 1.55;
}

.member-summary-card[b-1wvie33r13] {
    margin-bottom: 19px;
    padding: 13px;
    display: flex;
    align-items: center;
    gap: 11px;
    border: 1px solid #e6e9ef;
    border-radius: 10px;
    background: #fafbfc;
}

.member-summary-card > div:last-child[b-1wvie33r13] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.member-summary-card > div:last-child > strong[b-1wvie33r13] {
    color: #3a4456;
    font-size: 11px;
}

.member-summary-card > div:last-child > span[b-1wvie33r13] {
    color: #929aa8;
    font-size: 9px;
}

.member-summary-status[b-1wvie33r13] {
    margin-top: 3px;
}


/* =========================================================
   ACCOUNT STATUS
========================================================= */

.account-status-section[b-1wvie33r13] {
    margin-top: 20px;
    padding-top: 19px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid #edf0f4;
}

.account-status-section > div:first-child[b-1wvie33r13] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.account-status-section > div:first-child strong[b-1wvie33r13] {
    color: #3d4759;
    font-size: 10px;
}

.account-status-section > div:first-child span[b-1wvie33r13] {
    color: #8d96a5;
    font-size: 8px;
}

.status-toggle[b-1wvie33r13] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.status-toggle input[b-1wvie33r13] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.toggle-track[b-1wvie33r13] {
    width: 34px;
    height: 19px;
    padding: 2px;
    box-sizing: border-box;
    border-radius: 999px;
    background: #ccd2dc;
    transition: .15s ease;
}

.toggle-knob[b-1wvie33r13] {
    width: 15px;
    height: 15px;
    display: block;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .13);
    transition: transform .15s ease;
}

.status-toggle input:checked + .toggle-track[b-1wvie33r13] {
    background: #6673d7;
}

.status-toggle input:checked + .toggle-track .toggle-knob[b-1wvie33r13] {
    transform: translateX(15px);
}

.status-toggle input:disabled + .toggle-track[b-1wvie33r13] {
    opacity: .5;
}

.status-toggle strong[b-1wvie33r13] {
    color: #4c5668;
    font-size: 9px;
}

.self-protection-note[b-1wvie33r13] {
    margin-top: 9px;
    color: #9a6c34;
    font-size: 8px;
    text-align: right;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1150px) {

    .summary-grid[b-1wvie33r13] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .member-row[b-1wvie33r13] {
        grid-template-columns: 42px minmax(190px, 1fr) 85px minmax(170px, 1fr) auto;
    }

    .member-auth[b-1wvie33r13] {
        display: none;
    }
}


@media (max-width: 850px) {

    .team-page[b-1wvie33r13] {
        padding: 26px 18px 60px;
    }

    .page-header[b-1wvie33r13] {
        flex-direction: column;
    }

    .page-header .primary-button[b-1wvie33r13] {
        width: 100%;
    }

    .panel-header[b-1wvie33r13] {
        align-items: stretch;
        flex-direction: column;
    }

    .toolbar[b-1wvie33r13] {
        width: 100%;
    }

    .search-box[b-1wvie33r13] {
        width: auto;
        flex: 1;
    }

    .member-row[b-1wvie33r13] {
        grid-template-columns: 42px minmax(0, 1fr) auto;
    }

    .member-role[b-1wvie33r13] {
        grid-column: 2;
    }

    .member-scopes[b-1wvie33r13] {
        grid-column: 2 / span 2;
    }

    .member-actions[b-1wvie33r13] {
        grid-column: 3;
        grid-row: 1;
    }

    .scope-option-list[b-1wvie33r13] {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 580px) {

    .team-page[b-1wvie33r13] {
        padding: 22px 14px 50px;
    }

    .summary-grid[b-1wvie33r13] {
        grid-template-columns: 1fr;
    }

    .toolbar[b-1wvie33r13] {
        flex-direction: column;
    }

    .search-box[b-1wvie33r13],
    .role-filter[b-1wvie33r13] {
        width: 100%;
        box-sizing: border-box;
    }

    .member-row[b-1wvie33r13] {
        padding: 14px;
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .member-avatar[b-1wvie33r13] {
        width: 38px;
        height: 38px;
    }

    .member-actions[b-1wvie33r13],
    .member-role[b-1wvie33r13],
    .member-scopes[b-1wvie33r13] {
        grid-column: 2;
    }

    .member-actions[b-1wvie33r13] {
        grid-row: auto;
        justify-content: flex-start;
    }

    .modal-backdrop[b-1wvie33r13] {
        padding: 12px;
    }

    .modal-header[b-1wvie33r13],
    .modal-body[b-1wvie33r13],
    .modal-footer[b-1wvie33r13] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .form-grid[b-1wvie33r13] {
        grid-template-columns: 1fr;
    }

    .field.full[b-1wvie33r13] {
        grid-column: auto;
    }

    .modal-footer[b-1wvie33r13] {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .modal-footer .primary-button[b-1wvie33r13],
    .modal-footer .secondary-button[b-1wvie33r13] {
        width: 100%;
    }

    .account-status-section[b-1wvie33r13] {
        align-items: flex-start;
        flex-direction: column;
    }

    .self-protection-note[b-1wvie33r13] {
        text-align: left;
    }
}
/* /Shared/EmptyLayout.razor.rz.scp.css */
.page[b-7kg6y44vge] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-7kg6y44vge] {
    flex: 1;
}

.sidebar[b-7kg6y44vge] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-7kg6y44vge] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-7kg6y44vge]  a, .top-row .btn-link[b-7kg6y44vge] {
        white-space: nowrap;
        margin-left: 1.5rem;
    }

    .top-row a:first-child[b-7kg6y44vge] {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-7kg6y44vge] {
        display: none;
    }

    .top-row.auth[b-7kg6y44vge] {
        justify-content: space-between;
    }

    .top-row a[b-7kg6y44vge], .top-row .btn-link[b-7kg6y44vge] {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-7kg6y44vge] {
        flex-direction: row;
    }

    .sidebar[b-7kg6y44vge] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-7kg6y44vge] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row[b-7kg6y44vge], article[b-7kg6y44vge] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Shared/MainLayout.razor.rz.scp.css */
.page[b-d622g3mmxr] {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: #f7f8fb;
}

main[b-d622g3mmxr] {
    min-width: 0;
    min-height: 100vh;
    flex: 1;
    background: #f7f8fb;
}

.sidebar[b-d622g3mmxr] {
    position: relative;
    z-index: 20;
    background: #151c2d;
    border-right: 1px solid #20283a;
}

.content[b-d622g3mmxr] {
    padding: 0 !important;
}

@media (min-width: 641px) {

    .page[b-d622g3mmxr] {
        flex-direction: row;
    }

    .sidebar[b-d622g3mmxr] {
        width: 268px;
        height: 100vh;
        flex: 0 0 268px;
        position: sticky;
        top: 0;
    }
}

@media (max-width: 640.98px) {

    .sidebar[b-d622g3mmxr] {
        width: 100%;
        position: sticky;
        top: 0;
    }

    main[b-d622g3mmxr] {
        min-height: calc(100vh - 66px);
    }
}
/* /Shared/NavMenu.razor.rz.scp.css */
.nav-shell[b-21rvsey0dl] {
    height: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    color: #dce2ee;
}


/* =========================================================
   BRAND
========================================================= */

.brand-row[b-21rvsey0dl] {
    height: 76px;
    padding: 0 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex: 0 0 auto;
}

.brand-link[b-21rvsey0dl] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 11px;
    color: #ffffff;
    text-decoration: none;
}

    .brand-link:hover[b-21rvsey0dl] {
        color: #ffffff;
        text-decoration: none;
    }

.brand-mark[b-21rvsey0dl] {
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: linear-gradient(135deg, #6e79e7, #5965cf);
    box-shadow: 0 8px 20px rgba(75, 88, 204, 0.28);
    color: #ffffff;
    font-size: 16px;
    font-weight: 850;
    letter-spacing: -0.02em;
}

.brand-copy[b-21rvsey0dl] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.brand-name[b-21rvsey0dl] {
    color: #ffffff;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 760;
    letter-spacing: -0.015em;
}

.brand-subtitle[b-21rvsey0dl] {
    color: #7f8ba2;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 650;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.nav-toggle[b-21rvsey0dl] {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.05);
    color: #d8deea;
    cursor: pointer;
}

    .nav-toggle svg[b-21rvsey0dl] {
        width: 20px;
        height: 20px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
    }


/* =========================================================
   NAV CONTENT
========================================================= */

.nav-content[b-21rvsey0dl] {
    min-height: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.nav-menu[b-21rvsey0dl] {
    flex: 1;
    padding: 12px 12px 20px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.12) transparent;
}

    .nav-menu[b-21rvsey0dl]::-webkit-scrollbar {
        width: 5px;
    }

    .nav-menu[b-21rvsey0dl]::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.12);
    }

.nav-section[b-21rvsey0dl] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.nav-section-label[b-21rvsey0dl] {
    padding: 9px 11px 8px;
    color: #66738b;
    font-size: 9px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.nav-divider[b-21rvsey0dl] {
    height: 1px;
    margin: 15px 10px;
    background: rgba(255, 255, 255, 0.065);
}


/* =========================================================
   NAV LINKS
========================================================= */

[b-21rvsey0dl] .nav-link {
    position: relative;
    min-height: 43px;
    padding: 0 11px;
    display: flex;
    align-items: center;
    gap: 11px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #99a5b9;
    text-decoration: none;
    font-size: 12px;
    font-weight: 620;
    transition: color 0.14s ease, background 0.14s ease, border-color 0.14s ease, transform 0.14s ease;
}

    [b-21rvsey0dl] .nav-link:hover {
        background: rgba(255, 255, 255, 0.055);
        color: #eef2f8;
        text-decoration: none;
    }

    [b-21rvsey0dl] .nav-link.active {
        background: rgba(103, 116, 221, 0.14);
        border-color: rgba(126, 138, 233, 0.16);
        color: #ffffff;
    }

        [b-21rvsey0dl] .nav-link.active::before {
            content: "";
            position: absolute;
            left: -1px;
            top: 10px;
            bottom: 10px;
            width: 2px;
            border-radius: 999px;
            background: #7d88ea;
        }

.nav-icon[b-21rvsey0dl] {
    width: 19px;
    height: 19px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .nav-icon svg[b-21rvsey0dl] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.65;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

[b-21rvsey0dl] .nav-link:first-of-type .nav-icon svg {
    fill: none;
}


/* =========================================================
   FOOTER
========================================================= */

.sidebar-footer[b-21rvsey0dl] {
    padding: 14px 12px 16px;
    flex: 0 0 auto;
    border-top: 1px solid rgba(255, 255, 255, 0.065);
}

.security-note[b-21rvsey0dl] {
    margin-bottom: 10px;
    padding: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(124, 137, 234, 0.13);
    border-radius: 10px;
    background: rgba(102, 115, 216, 0.065);
}

.security-note-icon[b-21rvsey0dl] {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(118, 131, 229, 0.12);
    color: #9ea8f0;
}

    .security-note-icon svg[b-21rvsey0dl] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.6;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.security-note > div:last-child[b-21rvsey0dl] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.security-note strong[b-21rvsey0dl] {
    color: #cbd3e2;
    font-size: 10px;
    font-weight: 700;
}

.security-note span[b-21rvsey0dl] {
    color: #758199;
    font-size: 9px;
    line-height: 1.4;
}

.sign-out-link[b-21rvsey0dl] {
    min-height: 40px;
    padding: 0 11px;
    display: flex;
    align-items: center;
    gap: 11px;
    border-radius: 9px;
    color: #8995aa;
    text-decoration: none;
    font-size: 11px;
    font-weight: 620;
    transition: color 0.14s ease, background 0.14s ease;
}

    .sign-out-link:hover[b-21rvsey0dl] {
        background: rgba(255, 255, 255, 0.05);
        color: #e8edf5;
        text-decoration: none;
    }


/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 641px) {

    .nav-toggle[b-21rvsey0dl] {
        display: none;
    }

    .nav-content.collapsed[b-21rvsey0dl],
    .nav-content.open[b-21rvsey0dl] {
        display: flex;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 640.98px) {

    .nav-shell[b-21rvsey0dl] {
        min-height: auto;
        height: auto;
    }

    .brand-row[b-21rvsey0dl] {
        height: 66px;
        padding: 0 14px;
    }

    .brand-mark[b-21rvsey0dl] {
        width: 36px;
        height: 36px;
    }

    .nav-content.collapsed[b-21rvsey0dl] {
        display: none;
    }

    .nav-content.open[b-21rvsey0dl] {
        display: flex;
        max-height: calc(100vh - 66px);
        border-top: 1px solid rgba(255, 255, 255, 0.065);
    }

    .nav-menu[b-21rvsey0dl] {
        max-height: calc(100vh - 190px);
    }
}
