@import '_content/Solinfo.SyncEngine.UIComponents/Solinfo.SyncEngine.UIComponents.34ewxvvgvv.bundle.scp.css';

/* /Components/Layout/AICodingAssistant.razor.rz.scp.css */
/* AI Assistant Box */

#ai-assistant[b-1fs96pio5z] {
    position: absolute;
    bottom: 64px;
    left: 9px;
    width: 188px;
    border: 1px solid transparent;
    border-radius: 11px;
    padding: 5px 16px;
    background: linear-gradient(var(--kendo-color-surface), var(--kendo-color-surface)) padding-box, linear-gradient(114deg, #4b5ffa 0%, #c158e4 93%) border-box;
}

    #ai-assistant[b-1fs96pio5z]::before {
        content: "";
        position: absolute;
        z-index: 0;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .18;
        background: url(ai-circle.png) center center no-repeat;
        background-size: cover;
    }

    #ai-assistant h4[b-1fs96pio5z],
    #ai-assistant > p[b-1fs96pio5z],
    #ai-assistant > a[b-1fs96pio5z] {
        position: relative;
        padding-left: 41px;
        z-index: 2;
    }

    #ai-assistant h4[b-1fs96pio5z] {
        position: relative;
        margin: 0 0 .3em;
        font-size: 20px;
        line-height: 1.4;
        font-weight: 500;
    }

    #ai-assistant .k-icon[b-1fs96pio5z] {
        position: absolute;
        left: 0;
        top: 0;
        color: #4b5ffa;
    }

    #ai-assistant > a[b-1fs96pio5z] {
        color: #a75ae9;
        text-decoration: none;
    }

        #ai-assistant > a:hover[b-1fs96pio5z] {
            text-decoration: underline;
        }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Drawer item styles */

.drawer-parent-item[b-yo6xvleyly],
.drawer-child-item[b-yo6xvleyly],
.drawer-regular-item[b-yo6xvleyly] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    cursor: pointer;
    white-space: nowrap;
}

.drawer-parent-item[b-yo6xvleyly] {
     
}

.drawer-parent-item .drawer-item-text[b-yo6xvleyly] {
    flex: 1;
}

.drawer-parent-item .drawer-arrow[b-yo6xvleyly] {
    margin-left: auto;
    flex-shrink: 0;
}

.drawer-child-item[b-yo6xvleyly] {
   
}

.drawer-regular-item[b-yo6xvleyly] {
     
}

/* -- Section titles and separators in drawer -- */

.drawer-separator[b-yo6xvleyly] {
    padding: 3px 0;
    width: 100%;
}

.drawer-separator hr[b-yo6xvleyly] {
    border: none;
    border-top: 1px solid var(--kendo-color-border, #444);
    margin: 0;
    opacity: 0.4;
}

.drawer-section-title[b-yo6xvleyly] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--kendo-color-subtle, #6c757d);
    font-weight: 700;
    cursor: default;
    pointer-events: none;
    
    padding: 2px 0;
    border-left: 2px solid var(--kendo-color-primary, #dc4344);
    padding-left: 6px !important;
    margin-top: 2px;
}

/* ─── MENU USAGER (header) ───────────────────────────────────────────────── */

/* Bouton dans le header */
.user-menu-button[b-yo6xvleyly] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    cursor: pointer;
}

    .user-menu-button .user-menu-name[b-yo6xvleyly] {
        font-size: 14px;
        font-weight: 500;
        white-space: nowrap;
        max-width: 180px;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .user-menu-button .user-menu-chevron[b-yo6xvleyly] {
        font-size: 10px;
        opacity: 0.7;
    }

/* Overlay transparent pour fermer le menu en cliquant ailleurs */
.user-menu-overlay[b-yo6xvleyly] {
    position: fixed;
    inset: 0;
    z-index: 1000;
}

/* Carte popup */
.user-menu-popup[b-yo6xvleyly] {
    position: fixed;
    top: 52px;
    right: 12px;
    z-index: 1001;
    min-width: 260px;
    background: var(--kendo-color-surface-alt, #2a2a2a);
    border: 1px solid var(--kendo-color-border, #3a3a3a);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .45);
    overflow: hidden;
    animation: user-menu-fadein-b-yo6xvleyly .15s ease;
}

@keyframes user-menu-fadein-b-yo6xvleyly {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Section infos usager */
.user-menu-info[b-yo6xvleyly] {
    padding: 14px 16px 12px;
}

.user-menu-fullname[b-yo6xvleyly] {
    font-size: 15px;
    font-weight: 600;
    color: var(--kendo-color-on-app-surface);
}

.user-menu-email[b-yo6xvleyly] {
    font-size: 12px;
    color: var(--kendo-color-subtle-text, #999);
    margin-top: 2px;
    word-break: break-all;
}

.user-menu-role[b-yo6xvleyly] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    margin-top: 6px;
    color: var(--kendo-color-subtle-text, #999);
}

/* Séparateur */
.user-menu-divider[b-yo6xvleyly] {
    height: 1px;
    background: var(--kendo-color-border, #3a3a3a);
    margin: 0;
}

/* Liens d'action */
.user-menu-actions[b-yo6xvleyly] {
    padding: 6px 0;
}

.user-menu-action[b-yo6xvleyly] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 9px 16px;
    font-size: 14px;
    color: var(--kendo-color-on-app-surface);
    background: none;
    border: none;
    text-decoration: none;
    cursor: pointer;
    transition: background .12s;
}

    .user-menu-action:hover[b-yo6xvleyly] {
        background: var(--kendo-color-base-hover, rgba(255,255,255,.07));
        color: var(--kendo-color-primary);
        text-decoration: none;
    }

.user-menu-logout[b-yo6xvleyly] {
    color: var(--kendo-color-error, #dc4344);
}

    .user-menu-logout:hover[b-yo6xvleyly] {
        color: var(--kendo-color-error, #dc4344);
    }
/* /Components/Pages/Admin/AdminIndex.razor.rz.scp.css */
.admin-page[b-nnlju4596g] {
    padding: 12px 16px;
}

.admin-title[b-nnlju4596g] {
    margin-bottom: 16px;
    font-size: 1.3rem;
    color: var(--kendo-color-primary);
}

/* Hauteur minimale pour que le TabStrip gauche s'affiche bien */
.admin-tabstrip[b-nnlju4596g] {
    min-height: calc(100vh - 120px);
}

/* Contenu des tabs : padding interne */
[b-nnlju4596g] .k-tabstrip-content {
    padding: 16px 20px;
}

/* Largeur fixe du panel de tabs gauche */
[b-nnlju4596g] .k-tabstrip-items-wrapper {
    min-width: 180px;
}
/* /Components/Pages/Admin/Sections/AuditLogsViewer.razor.rz.scp.css */
.audit-detail-section-codes[b-cozkafo1js] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.audit-detail-table[b-cozkafo1js] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88em;
    margin-bottom: 8px;
}

.audit-detail-table th[b-cozkafo1js] {
    text-align: left;
    color: var(--kendo-color-subtle, #666);
    font-weight: 500;
    padding: 4px 8px 4px 0;
    width: 110px;
    vertical-align: top;
}

.audit-detail-table td[b-cozkafo1js] {
    padding: 4px 0;
    word-break: break-word;
    color: var(--kendo-color-on-app-surface, inherit);
}

.audit-detail-table code[b-cozkafo1js] {
    font-size: 0.95em;
    background: var(--kendo-color-base, rgba(0,0,0,0.05));
    padding: 1px 4px;
    border-radius: 3px;
}

.audit-detail-msg[b-cozkafo1js] {
    margin: 0 0 8px 0;
    padding: 8px;
    background: #1e1e1e;
    color: #d4d4d4;
    border: 1px solid var(--kendo-color-border, transparent);
    border-radius: 4px;
    font-family: monospace;
    font-size: 0.82em;
    white-space: pre-wrap;
    word-break: break-all;
    max-height: 240px;
    overflow: auto;
}

.audit-detail-empty[b-cozkafo1js] {
    color: var(--kendo-color-subtle, #888);
    font-style: italic;
    margin: 0 0 8px 0;
    font-size: 0.88em;
}

.edit-panel-body h5[b-cozkafo1js] {
    margin: 12px 0 6px 0;
    font-size: 0.9em;
    color: var(--kendo-color-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--kendo-color-border);
    padding-bottom: 2px;
}

.edit-panel-body h5:first-child[b-cozkafo1js] {
    margin-top: 0;
}

.audit-badge[b-cozkafo1js] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.78em;
    font-weight: 600;
    line-height: 1.4;
}

.audit-badge-code[b-cozkafo1js] {
    background: var(--kendo-color-primary-subtle, rgba(255, 99, 88, 0.15));
    color: var(--kendo-color-primary, #ff6358);
}

.audit-badge-subcode[b-cozkafo1js] {
    background: var(--kendo-color-base, rgba(0, 0, 0, 0.08));
    color: var(--kendo-color-on-app-surface, inherit);
}

.audit-badge-read[b-cozkafo1js] {
    background: var(--kendo-color-success-subtle, #d4edda);
    color: var(--kendo-color-success, #155724);
}

.audit-badge-unread[b-cozkafo1js] {
    background: var(--kendo-color-base, rgba(0, 0, 0, 0.08));
    color: var(--kendo-color-subtle, #666);
}
/* /Components/Pages/ERPConnector/ErpCompanyConnexionInfo.razor.rz.scp.css */
.licence-selector-bar[b-fg0te5w9vp] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0 12px;
}

.licence-selector-hint[b-fg0te5w9vp] {
    color: var(--kendo-color-warning, #ff6358);
    font-size: 0.875rem;
}

.required-star[b-fg0te5w9vp] {
    color: red;
}

.ext-prop-row[b-fg0te5w9vp] {
    display: flex;
    gap: 6px;
    align-items: center;
    margin-bottom: 4px;
}

.gateway-groupbox[b-fg0te5w9vp] {
    border: 1px solid #d5d5d5;
    border-radius: 4px;
    padding: 12px 12px 10px;
    margin: 14px 0;
    position: relative;
}

.gateway-groupbox-title[b-fg0te5w9vp] {
    position: absolute;
    top: -10px;
    left: 10px;
    background: white;
    padding: 0 6px;
    font-size: 0.82em;
    font-weight: 600;
    color: #555;
    letter-spacing: 0.02em;
}

.gateway-groupbox-body[b-fg0te5w9vp] {
    padding-top: 4px;
}

.gateway-checkbox-row[b-fg0te5w9vp] {
    display: flex;
    align-items: center;
    gap: 8px;
}
/* /Components/Pages/ERPConnector/ERPTaskLauncher.razor.rz.scp.css */
.task-launcher[b-bvaeful2dp] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 8px 8px 32px 8px;
    max-width: 1200px;
}

.section-card[b-bvaeful2dp] {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    background: #fff;
}

.section-card.section-disabled[b-bvaeful2dp] {
    opacity: 0.6;
    pointer-events: auto;
}

.disabled-notice[b-bvaeful2dp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 8px;
    background: #fff8e1;
    border: 1px solid #ffc107;
    border-radius: 4px;
    color: #795548;
    font-size: 0.9em;
}

.form-row[b-bvaeful2dp] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.form-row > label[b-bvaeful2dp] {
    min-width: 160px;
    font-weight: 500;
}

.subsection-title[b-bvaeful2dp] {
    margin: 16px 0 8px 0;
    font-size: 1em;
    font-weight: 600;
    color: #555;
}

.pagination-row[b-bvaeful2dp] {
    display: flex;
    gap: 24px;
    margin-bottom: 12px;
}

.form-field[b-bvaeful2dp] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.form-field label[b-bvaeful2dp] {
    font-size: 0.85em;
    font-weight: 500;
    color: #666;
}

.filter-row[b-bvaeful2dp] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    padding: 6px;
    background: #2d2d2d;
    border: 1px solid #444;
    border-radius: 4px;
}

.filter-value-placeholder[b-bvaeful2dp] {
    color: #999;
    font-style: italic;
    width: 220px;
}

.empty-hint[b-bvaeful2dp] {
    color: #888;
    font-style: italic;
    padding: 8px 0;
    font-size: 0.9em;
}

.fields-list[b-bvaeful2dp] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 4px 12px;
    padding: 4px 0;
}

.field-checkbox[b-bvaeful2dp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px;
    cursor: pointer;
}

.field-checkbox small[b-bvaeful2dp] {
    color: #999;
    font-family: Consolas, monospace;
    font-size: 0.8em;
}

.json-preview[b-bvaeful2dp],
.json-result[b-bvaeful2dp] {
    background: #1e1e1e;
    color: #dcdcdc;
    padding: 12px;
    border-radius: 4px;
    font-family: Consolas, monospace;
    font-size: 0.85em;
    max-height: 500px;
    overflow: auto;
    white-space: pre;
    margin: 0;
}

.execute-row[b-bvaeful2dp] {
    display: flex;
    justify-content: flex-end;
    padding: 8px 0;
}

.execute-btn[b-bvaeful2dp] {
    min-width: 220px;
    font-size: 1em;
    font-weight: 600;
    padding: 10px 20px;
}

.result-card[b-bvaeful2dp] {
    border-top: 3px solid #2196f3;
}

.result-ok[b-bvaeful2dp] {
    color: #2e7d32;
    font-weight: 700;
}

.result-ko[b-bvaeful2dp] {
    color: #c62828;
    font-weight: 700;
}

.result-meta[b-bvaeful2dp] {
    color: #666;
    font-weight: normal;
    font-size: 0.9em;
}

.error-msg[b-bvaeful2dp] {
    background: #ffebee;
    border: 1px solid #ef5350;
    color: #b71c1c;
    padding: 12px;
    border-radius: 4px;
    font-family: Consolas, monospace;
    font-size: 0.9em;
    margin-bottom: 12px;
    white-space: pre-wrap;
    word-break: break-word;
}

/* ── Sommaire du résultat (onglet 1er niveau) ── */

.result-summary-grid[b-bvaeful2dp] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 8px 0;
    font-size: 0.9em;
}

.rs-row[b-bvaeful2dp] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    padding: 5px 8px;
    border-radius: 4px;
    background: #fafafa;
    border: 1px solid #f0f0f0;
}

.rs-label[b-bvaeful2dp] {
    min-width: 160px;
    font-weight: 600;
    color: #555;
    font-family: Consolas, monospace;
    font-size: 0.88em;
    flex-shrink: 0;
}

.rs-value[b-bvaeful2dp] {
    color: #222;
    word-break: break-word;
}

.rs-number[b-bvaeful2dp] {
    font-family: Consolas, monospace;
    color: #1565c0;
}

.rs-compressed[b-bvaeful2dp] {
    color: #888;
    font-size: 0.9em;
}
/* /Components/Pages/Security/ChangePassword.razor.rz.scp.css */
/* =========================================================
   ChangePassword page — styles scopés
   Même identité visuelle que Login.razor et ForgotPassword.razor
   ========================================================= */

.login-container[b-k3atimskbq] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--kendo-color-app-surface, #1a1a2e);
    padding: 1rem;
}

.login-card[b-k3atimskbq] {
    background: var(--kendo-color-surface, #222244);
    border-radius: 8px;
    padding: 2rem;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* En-tête logo + titre */
.login-header[b-k3atimskbq] {
    text-align: center;
    margin-bottom: 0.25rem;
}

.login-logo[b-k3atimskbq] {
    max-width: 200px;
    margin-bottom: 0.5rem;
}

.login-header h2[b-k3atimskbq] {
    margin: 0;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

.login-subtitle[b-k3atimskbq] {
    margin: 0.2rem 0 0;
    font-size: 0.9rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Alertes — classes status-* du projet */
.login-alert[b-k3atimskbq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.9rem;
    border-radius: 4px;
    font-size: 0.88rem;
}

/* Champs de formulaire */
.form-group[b-k3atimskbq] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin-bottom: 0.5rem;
}

.form-group label[b-k3atimskbq] {
    font-weight: 500;
    font-size: 0.88rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Bouton pleine largeur */
.form-actions[b-k3atimskbq] {
    margin-top: 1rem;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.login-btn-submit[b-k3atimskbq] {
    flex: 1;
    justify-content: center;
}

/* Lien Annuler aligné avec le bouton */
.cancel-link[b-k3atimskbq] {
    white-space: nowrap;
    font-size: 0.88rem;
}

/* Liens */
.form-links[b-k3atimskbq] {
    text-align: center;
    margin-top: 0.25rem;
}

.login-link[b-k3atimskbq] {
    color: var(--kendo-color-primary, #4e9af1);
    text-decoration: none;
    font-size: 0.88rem;
}

.login-link:hover[b-k3atimskbq] {
    text-decoration: underline;
}
/* /Components/Pages/Security/ForgotPassword.razor.rz.scp.css */
/* =========================================================
   ForgotPassword page — styles scopés
   Même identité visuelle que Login.razor
   ========================================================= */

.login-container[b-httksiukir] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--kendo-color-app-surface, #1a1a2e);
    padding: 1rem;
}

.login-card[b-httksiukir] {
    background: var(--kendo-color-surface, #222244);
    border-radius: 8px;
    padding: 2rem;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* En-tête logo + titre */
.login-header[b-httksiukir] {
    text-align: center;
    margin-bottom: 0.25rem;
}

.login-logo[b-httksiukir] {
    max-width: 200px;
    margin-bottom: 0.5rem;
}

.login-header h2[b-httksiukir] {
    margin: 0;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

.login-subtitle[b-httksiukir] {
    margin: 0.2rem 0 0;
    font-size: 0.9rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Alertes — classes status-* du projet */
.login-alert[b-httksiukir] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.9rem;
    border-radius: 4px;
    font-size: 0.88rem;
}

/* Texte d'instructions */
.login-instructions[b-httksiukir] {
    font-size: 0.9rem;
    color: var(--kendo-color-subtle, #aaa);
    margin: 0;
}

/* Champs de formulaire */
.form-group[b-httksiukir] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin-bottom: 0.5rem;
}

.form-group label[b-httksiukir] {
    font-weight: 500;
    font-size: 0.88rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Bouton pleine largeur */
.form-actions[b-httksiukir] {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.login-btn-submit[b-httksiukir] {
    width: 100%;
    justify-content: center;
}

/* Liens */
.form-links[b-httksiukir] {
    text-align: center;
    margin-top: 0.25rem;
}

.login-link[b-httksiukir] {
    color: var(--kendo-color-primary, #4e9af1);
    text-decoration: none;
    font-size: 0.88rem;
}

.login-link:hover[b-httksiukir] {
    text-decoration: underline;
}
/* /Components/Pages/Security/Login.razor.rz.scp.css */
/* =========================================================
   Login page — styles scopés
   ========================================================= */

.login-container[b-7c8r6zhwns] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--kendo-color-app-surface, #1a1a2e);
    padding: 1rem;
}

.login-card[b-7c8r6zhwns] {
    background: var(--kendo-color-surface, #222244);
    border-radius: 8px;
    padding: 2rem;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* En-tête logo + titre */
.login-header[b-7c8r6zhwns] {
    text-align: center;
    margin-bottom: 0.25rem;
}

.login-logo[b-7c8r6zhwns] {
    max-width: 200px;
    margin-bottom: 0.5rem;
}

.login-header h2[b-7c8r6zhwns] {
    margin: 0;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

.login-subtitle[b-7c8r6zhwns] {
    margin: 0.2rem 0 0;
    font-size: 0.9rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Alertes — utilise les classes status-* du projet */
.login-alert[b-7c8r6zhwns] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.9rem;
    border-radius: 4px;
    font-size: 0.88rem;
}

/* Bouton SSO pleine largeur */
.login-btn-sso[b-7c8r6zhwns] {
    width: 100%;
    justify-content: center;
}

/* Séparateur "ou" */
.login-separator[b-7c8r6zhwns] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--kendo-color-subtle, #aaa);
    font-size: 0.82rem;
}

.login-separator[b-7c8r6zhwns]::before,
.login-separator[b-7c8r6zhwns]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(255, 255, 255, 0.1);
}

/* Champs de formulaire */
.form-group[b-7c8r6zhwns] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin-bottom: 0.5rem;
}

.form-group label[b-7c8r6zhwns] {
    font-weight: 500;
    font-size: 0.88rem;
    color: var(--kendo-color-subtle, #aaa);
}

.checkbox-group[b-7c8r6zhwns] {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1em;
    margin-top: 1em;
}

/* Bouton Connecter pleine largeur */
.form-actions[b-7c8r6zhwns] {
    margin-top: 0.5rem;
}

.login-btn-submit[b-7c8r6zhwns] {
    width: 100%;
    justify-content: center;
}

/* Lien mot de passe oublié */
.form-links[b-7c8r6zhwns] {
    text-align: center;
    margin-top: 0.25rem;
}

.form-links a[b-7c8r6zhwns],
.login-link[b-7c8r6zhwns] {
    color: var(--kendo-color-primary, #4e9af1);
    text-decoration: none;
    font-size: 0.88rem;
}

.form-links a:hover[b-7c8r6zhwns],
.login-link:hover[b-7c8r6zhwns] {
    text-decoration: underline;
}
/* /Components/Pages/Security/MyProfile.razor.rz.scp.css */
/* =========================================================
   MyProfile page — styles scopés
   ========================================================= */

/* Conteneur principal — limiter la largeur et centrer */
.my-profile-container[b-akwam7s8xl] {
    max-width: 760px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 1.5rem 1rem;
}

/* ── Carte d'informations lecture seule ─────────────────── */

.my-profile-info-card[b-akwam7s8xl] {
    background: var(--kendo-color-surface-alt, #2a2a44);
    border: 1px solid var(--kendo-color-border, #3a3a55);
    border-radius: 8px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.my-profile-info-row[b-akwam7s8xl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.my-profile-label[b-akwam7s8xl] {
    font-size: 0.78rem;
    color: var(--kendo-color-subtle-text, #999);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.my-profile-value[b-akwam7s8xl] {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

/* ── Sections du formulaire ─────────────────────────────── */

.edit-panel-section[b-akwam7s8xl] {
    background: var(--kendo-color-surface-alt, #2a2a44);
    border: 1px solid var(--kendo-color-border, #3a3a55);
    border-radius: 8px;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.edit-panel-section-title[b-akwam7s8xl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.25rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

.edit-panel-section-hint[b-akwam7s8xl] {
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--kendo-color-subtle-text, #999);
    margin-left: 0.25rem;
}

/* ── Champs de formulaire ───────────────────────────────── */

.form-group[b-akwam7s8xl] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.form-group label[b-akwam7s8xl] {
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--kendo-color-subtle, #aaa);
}

/* Grille 2 colonnes pour les champs côte à côte */
.form-row-2col[b-akwam7s8xl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

@media (max-width: 560px) {
    .form-row-2col[b-akwam7s8xl] {
        grid-template-columns: 1fr;
    }
}

/* ── Boutons d'action ───────────────────────────────────── */

.my-profile-actions[b-akwam7s8xl] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    padding-top: 0.5rem;
}
/* /Components/Pages/Security/ResetPassword.razor.rz.scp.css */
/* =========================================================
   ResetPassword page — styles scopés
   Même identité visuelle que Login.razor
   ========================================================= */

.login-container[b-co9zpnvagc] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--kendo-color-app-surface, #1a1a2e);
    padding: 1rem;
}

.login-card[b-co9zpnvagc] {
    background: var(--kendo-color-surface, #222244);
    border-radius: 8px;
    padding: 2rem;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* En-tête logo + titre */
.login-header[b-co9zpnvagc] {
    text-align: center;
    margin-bottom: 0.25rem;
}

.login-logo[b-co9zpnvagc] {
    max-width: 200px;
    margin-bottom: 0.5rem;
}

.login-header h2[b-co9zpnvagc] {
    margin: 0;
    color: var(--kendo-color-on-app-surface, #e0e0e0);
}

.login-subtitle[b-co9zpnvagc] {
    margin: 0.2rem 0 0;
    font-size: 0.9rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Alertes — classes status-* du projet */
.login-alert[b-co9zpnvagc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.9rem;
    border-radius: 4px;
    font-size: 0.88rem;
}

/* Champs de formulaire */
.form-group[b-co9zpnvagc] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin-bottom: 0.5rem;
}

.form-group label[b-co9zpnvagc] {
    font-weight: 500;
    font-size: 0.88rem;
    color: var(--kendo-color-subtle, #aaa);
}

/* Bouton pleine largeur */
.form-actions[b-co9zpnvagc] {
    margin-top: 0.5rem;
}

.login-btn-submit[b-co9zpnvagc] {
    width: 100%;
    justify-content: center;
}

/* Liens */
.form-links[b-co9zpnvagc] {
    text-align: center;
    margin-top: 0.25rem;
}

.login-link[b-co9zpnvagc] {
    color: var(--kendo-color-primary, #4e9af1);
    text-decoration: none;
    font-size: 0.88rem;
}

.login-link:hover[b-co9zpnvagc] {
    text-decoration: underline;
}
/* /Components/Pages/Security/User.razor.rz.scp.css */
/* ─── Custom context menu ─── */

.custom-context-menu-backdrop[b-ni7rbx0c3t] {
    position: fixed;
    inset: 0;
    z-index: 9998;
}

.custom-context-menu[b-ni7rbx0c3t] {
    position: fixed;
    z-index: 9999;
    background: var(--kendo-color-surface-alt, #2b2b2b);
    border: 1px solid var(--kendo-color-border, #444);
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
    min-width: 200px;
    padding: 4px 0;
}

.custom-context-menu ul[b-ni7rbx0c3t] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.custom-context-menu li[b-ni7rbx0c3t] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    cursor: pointer;
    font-size: .9em;
    color: var(--kendo-color-on-surface, #ddd);
    transition: background 0.15s;
}

.custom-context-menu li:hover[b-ni7rbx0c3t] {
    background: var(--kendo-color-primary-subtle, rgba(13, 110, 253, 0.15));
}

.custom-context-menu li.context-menu-danger:hover[b-ni7rbx0c3t] {
    background: rgba(220, 53, 69, 0.2);
    color: #f59da0;
}
/* /Components/Pages/Security/UserRightsEditor.razor.rz.scp.css */
.rights-editor[b-uyabm33evh] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 8px 4px;
}

/* ── Sections ── */

.rights-section[b-uyabm33evh] {
    background: var(--kendo-color-surface-alt);
    border: 1px solid var(--kendo-color-border);
    border-radius: 6px;
    padding: 14px 16px;
}

.rights-section-title[b-uyabm33evh] {
    margin: 0 0 12px 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--kendo-color-on-app-surface);
    border-bottom: 1px solid var(--kendo-color-border);
    padding-bottom: 8px;
}

/* ── Formulaire ── */

.rights-form-box[b-uyabm33evh] {
    background: var(--kendo-color-surface);
    border: 1px solid var(--kendo-color-border);
    border-radius: 4px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rights-form-row[b-uyabm33evh] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.rights-form-actions[b-uyabm33evh] {
    padding-top: 6px;
    border-top: 1px solid var(--kendo-color-border);
    justify-content: flex-end;
}

/* Séparateur vertical entre groupes de champs */
.rights-form-separator[b-uyabm33evh] {
    width: 1px;
    height: 24px;
    background: var(--kendo-color-border);
    margin: 0 4px;
    flex-shrink: 0;
}

/* ── Textes ── */

.rights-label[b-uyabm33evh] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--kendo-color-on-app-surface);
    white-space: nowrap;
}

.rights-radio-label[b-uyabm33evh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--kendo-color-on-app-surface);
    white-space: nowrap;
}

/* ── Toggle vue ── */

.rights-view-toggle[b-uyabm33evh] {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--kendo-color-border);
}

/* ── Grille ── */

.rights-grid[b-uyabm33evh] {
    margin-top: 4px;
}

.rights-empty-message[b-uyabm33evh] {
    color: var(--kendo-color-subtle);
    font-style: italic;
    margin: 12px 0 0 0;
    font-size: 0.875rem;
}
/* /Components/Pages/SyncEngine/SchedulingJobDetail.razor.rz.scp.css */
.job-detail-page[b-014r0b74mc] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.job-detail-header[b-014r0b74mc] {
    display: flex;
    align-items: center;
}
/* /Components/Pages/SyncEngine/SchedulingJobHeader.razor.rz.scp.css */
.licence-filter[b-t219p813rs] {
    display: flex;
    align-items: center;
}
/* /Components/Pages/SyncEngine/SchedulingJobHistory.razor.rz.scp.css */
/* Styles spécifiques au composant SyncBatchDetailGrid — voir SyncBatchDetailGrid.razor.css */
/* /Components/Pages/SyncEngine/SchedulingJobRunning.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════
   SchedulingJobRunning — Scoped styles
   ═══════════════════════════════════════════════════════════════ */

.system-status-section .status-card[b-cwjyjhpt0j] {
    border-radius: 8px;
    transition: box-shadow 0.2s;
}

.system-status-section .status-card:hover[b-cwjyjhpt0j] {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
}

.status-icon[b-cwjyjhpt0j] {
    margin-bottom: 8px;
}

.status-label[b-cwjyjhpt0j] {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--kendo-color-subtle, #6c757d);
    margin-bottom: 4px;
}

.status-value[b-cwjyjhpt0j] {
    font-size: 1.1rem;
    font-weight: 600;
}

/* ── Running job cards ── */

.running-job-card[b-cwjyjhpt0j] {
    border-left: 4px solid var(--kendo-color-primary, #0d6efd);
}
/* /Components/Pages/SyncEngine/SyncBatchHeaders.razor.rz.scp.css */

/* Stats badges (grille batch headers) */

[b-ks0b1gf115] .stats-grid {
    display: grid;
    grid-template-columns: repeat(3, auto);
    gap: 3px 5px;
    font-size: .78em;
}

[b-ks0b1gf115] .stat-badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 1px 7px;
    border-radius: 4px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1.5;
}

[b-ks0b1gf115] .stat-badge .stat-label {
    opacity: .7;
    font-weight: 400;
}

[b-ks0b1gf115] .stat-total {
    background: #3a3a4a;
    color: #ccc;
}

[b-ks0b1gf115] .stat-success {
    background: #143d1a;
    color: #6fcf7c;
}

[b-ks0b1gf115] .stat-fail {
    background: #3d1417;
    color: #f59da0;
}

[b-ks0b1gf115] .stat-new {
    background: #142a3d;
    color: #6fb8e8;
}

[b-ks0b1gf115] .stat-update {
    background: #2d2a3d;
    color: #b0a8d8;
}

[b-ks0b1gf115] .stat-skip {
    background: #3d3520;
    color: #d4c47a;
}

/* ── Context menu ── */

.custom-context-menu-backdrop[b-ks0b1gf115] {
    position: fixed;
    inset: 0;
    z-index: 10000;
}

.custom-context-menu[b-ks0b1gf115] {
    position: fixed;
    z-index: 10001;
    background: var(--kendo-color-surface, #2b2b3b);
    border: 1px solid var(--kendo-color-border, #444);
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
    min-width: 260px;
    padding: 4px 0;
}

.custom-context-menu ul[b-ks0b1gf115] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.custom-context-menu li[b-ks0b1gf115] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    cursor: pointer;
    font-size: 0.88rem;
    color: var(--kendo-color-on-app-surface, #ddd);
    transition: background 0.15s;
}

.custom-context-menu li:hover[b-ks0b1gf115] {
    background: var(--kendo-color-primary, #0d6efd);
    color: #fff;
}

.custom-context-menu li.context-menu-danger:hover[b-ks0b1gf115] {
    background: #dc3545;
    color: #fff;
}
