@import '_content/Blazored.Toast/Blazored.Toast.bundle.scp.css';
@import '_content/MaTrousseScolaire.UI.DesignSysteme/MaTrousseScolaire.UI.DesignSysteme.85ro1ejv2q.bundle.scp.css';

/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-fhm7ztwhne] {
    position: relative;
    display: flex;
    flex-direction: column;
}

.topnav[b-fhm7ztwhne] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-toggler[b-fhm7ztwhne] {
    background-color: var(--primary-color);
}

.navbar-dark .navbar-toggler[b-fhm7ztwhne] {
    color: transparent;
    border-color: transparent;
}

.navbar-brand[b-fhm7ztwhne] {
    font-size: 1.1rem;
    margin-right: 24px;
}

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

    .collapse[b-fhm7ztwhne] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
}

.main[b-fhm7ztwhne] {
    flex: 1;
}

.sidebar[b-fhm7ztwhne] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-fhm7ztwhne] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: left;
}

    .top-row[b-fhm7ztwhne]  a, .top-row .btn-link[b-fhm7ztwhne] {
        white-space: nowrap;
        margin-left: 1.5rem;
    }

    .top-row a:first-child[b-fhm7ztwhne] {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-fhm7ztwhne] {
        display: none;
    }

    .top-row.auth[b-fhm7ztwhne] {
        justify-content: space-between;
    }

    .top-row a[b-fhm7ztwhne], .top-row .btn-link[b-fhm7ztwhne] {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-fhm7ztwhne] {
        flex-direction: row;
    }

    .sidebar[b-fhm7ztwhne] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-fhm7ztwhne] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .main > div[b-fhm7ztwhne] {
        padding-left: 1rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Pages/Administrator/Classrooms/ClassroomContentEditorComponent.razor.rz.scp.css */

.page-container[b-9zx2bmhqhr] {
    display: flex;
    height: 100%;
}


.right-panel[b-9zx2bmhqhr] {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 500px;
    border-left: 1px solid var(--primary-color);
    overflow-y: auto;
}

.new-button[b-9zx2bmhqhr] {
    background-color: var(--primary-color);
    color: white;
    font-weight: bold;
    font-size: x-large;
    height: 40px;
    width: 40px;
}

/* /Pages/Administrator/SettingsPage.razor.rz.scp.css */
.settings-container[b-6j7e796ssa] {
    border-radius: 15px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
    background-color: white;
    padding: 20px;
    max-width: 600px;
    margin: 0;
}
/* /Pages/ApcParticipations/ApcParticipationTrackerComponent.razor.rz.scp.css */
/* ======================
   APC TRACKER
   ====================== */
.apc-tracker[b-5h4shy9k5j] {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e2e6ea;
    overflow: hidden;
}

/* ---- Formulaire ---- */

.apc-tracker-form[b-5h4shy9k5j] {
    padding: .6rem .75rem;
    background: #f8f9fb;
    border-bottom: 1px solid #e2e6ea;
    border-radius: 10px 10px 0 0;
}

.apc-tracker-form-inner[b-5h4shy9k5j] {
    display: grid;
    grid-template-columns: 1fr auto 36px;
    align-items: center;
    gap: .4rem;
}

.apc-tracker-field[b-5h4shy9k5j] {
    min-width: 0;
}

.apc-tracker-slot[b-5h4shy9k5j] {
    flex-shrink: 0;
}

.apc-tracker-slot-label[b-5h4shy9k5j] {
    display: inline-flex;
    align-items: center;
    height: 36px;
    padding: 0 .5rem;
    background: #fff;
    border: 1px solid #ced4da;
    border-radius: 6px;
    font-size: .85rem;
    font-weight: 700;
    color: var(--primary-color);
    white-space: nowrap;
}

.apc-tracker-select[b-5h4shy9k5j] {
    height: 36px;
    padding-top: 0;
    padding-bottom: 0;
    font-size: .85rem;
    width: 140px;
}

.apc-tracker-add-btn[b-5h4shy9k5j] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-color);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 1rem;
    cursor: pointer;
    transition: filter .15s;
}

    .apc-tracker-add-btn:hover:not(:disabled)[b-5h4shy9k5j] {
        filter: brightness(1.12);
    }

    .apc-tracker-add-btn:disabled[b-5h4shy9k5j] {
        opacity: .4;
        cursor: default;
    }

/* ---- Séparateur ---- */
.apc-tracker-sep[b-5h4shy9k5j] {
    display: flex;
    align-items: center;
    padding: .35rem .75rem;
    background: #f1f3f7;
    border-bottom: 1px solid #e2e6ea;
}

.apc-tracker-sep-label[b-5h4shy9k5j] {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #6b7280;
}

.apc-tracker-count[b-5h4shy9k5j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.4rem;
    height: 1.4rem;
    padding: 0 .35rem;
    border-radius: 9999px;
    background: var(--primary-color);
    color: #fff;
    font-size: .7rem;
    font-weight: 900;
}

/* ---- Liste ---- */
.apc-tracker-list[b-5h4shy9k5j] {
    display: flex;
    flex-direction: column;
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}

.apc-tracker-empty[b-5h4shy9k5j] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: 2rem 1rem;
    color: #9ca3af;
    font-size: .85rem;
    font-weight: 600;
}

    .apc-tracker-empty i[b-5h4shy9k5j] {
        font-size: 2rem;
        opacity: .35;
    }

/* ---- Ligne élève ---- */
.apc-tracker-row[b-5h4shy9k5j] {
    display: grid;
    grid-template-columns: 1fr auto 28px;
    align-items: center;
    gap: .55rem;
    padding: .5rem .75rem;
    border-bottom: 1px solid #f1f3f7;
    transition: background .1s;
}

    .apc-tracker-row:last-child[b-5h4shy9k5j] {
        border-bottom: none;
    }

    .apc-tracker-row:hover[b-5h4shy9k5j] {
        background: #fafbfc;
    }

.apc-tracker-name[b-5h4shy9k5j] {
    min-width: 0;
    display: flex;
    align-items: baseline;
    gap: .3rem;
    overflow: hidden;
}

    .apc-tracker-name .student-last-name[b-5h4shy9k5j] {
        font-weight: 700;
        text-transform: uppercase;
        color: #000;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .apc-tracker-name .student-first-name[b-5h4shy9k5j] {
        font-weight: 700;
        color: cornflowerblue;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        flex-shrink: 1;
    }

.apc-tracker-slot-text[b-5h4shy9k5j] {
    font-size: .78rem;
    font-weight: 600;
    color: #6b7280;
    white-space: nowrap;
}

.apc-tracker-remove[b-5h4shy9k5j] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: #9ca3af;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .85rem;
    cursor: pointer;
    transition: color .15s, background .15s, border-color .15s;
}

    .apc-tracker-remove:hover[b-5h4shy9k5j] {
        color: #dc2626;
        background: #fef2f2;
        border-color: #fecaca;
    }
/* /Pages/Authentication/Authentication.razor.rz.scp.css */
/* =====================================================
   Authentication.razor — styles du formulaire uniquement
   Layout, brand panel et skeleton → auth-layout.css
   ===================================================== */

/* ── En-tête card ── */

.auth-card__header[b-fqjxvtvzh3] {
    display: flex;
    flex-direction: column;
    gap: var(--mts-space-1);
}

.auth-card__title[b-fqjxvtvzh3] {
    font-size: var(--mts-font-size-2xl);
    font-weight: var(--mts-font-weight-bold);
    color: var(--mts-text-primary);
    letter-spacing: var(--mts-letter-spacing-tight);
    margin: 0;
}

.auth-card__subtitle[b-fqjxvtvzh3] {
    font-size: var(--mts-font-size-sm);
    color: var(--mts-text-secondary);
    margin: 0;
}

/* ── Champs ── */

.auth-fields[b-fqjxvtvzh3] {
    display: flex;
    flex-direction: column;
    gap: var(--mts-space-4);
}

.auth-fields-row[b-fqjxvtvzh3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--mts-space-3);
}

.auth-field[b-fqjxvtvzh3] {
    display: flex;
    flex-direction: column;
    gap: var(--mts-space-2);
}

.auth-field__label[b-fqjxvtvzh3] {
    font-size: var(--mts-font-size-sm);
    font-weight: var(--mts-font-weight-medium);
    color: var(--mts-text-primary);
    letter-spacing: 0.01em;
}

.auth-field__input[b-fqjxvtvzh3] {
    height: var(--mts-height-md);
    padding: 0 var(--mts-space-4);
    background: var(--mts-neutral-0);
    border: 1.5px solid var(--mts-border-default);
    border-radius: var(--mts-radius-md);
    font-size: var(--mts-font-size-md);
    font-family: var(--mts-font-family);
    color: var(--mts-text-primary);
    transition: border-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1);
    outline: none;
    width: 100%;
    box-sizing: border-box;
}

.auth-field__input[b-fqjxvtvzh3]::placeholder { color: var(--mts-text-placeholder); }

.auth-field__input:hover:not(:disabled)[b-fqjxvtvzh3] { border-color: var(--mts-neutral-400); }

.auth-field__input:focus[b-fqjxvtvzh3] {
    border-color: var(--mts-primary-500);
    box-shadow: 0 0 0 3px rgba(var(--mts-primary-rgb), 0.12);
}

.auth-field__input:disabled[b-fqjxvtvzh3] {
    background: var(--mts-neutral-100);
    color: var(--mts-text-disabled);
    cursor: not-allowed;
}

/* ── Boutons ── */

.auth-btn[b-fqjxvtvzh3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--mts-space-2);
    height: var(--mts-height-md);
    padding: 0 var(--mts-space-6);
    border-radius: var(--mts-radius-md);
    font-size: var(--mts-font-size-md);
    font-family: var(--mts-font-family);
    font-weight: var(--mts-font-weight-semibold);
    cursor: pointer;
    border: 1.5px solid transparent;
    width: 100%;
    white-space: nowrap;
    transition: background 150ms cubic-bezier(0.4, 0, 0.2, 1),
                border-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1),
                transform 80ms cubic-bezier(0.4, 0, 0.2, 1);
}

.auth-btn:active:not(:disabled)[b-fqjxvtvzh3] { transform: scale(0.98); }

.auth-btn--primary[b-fqjxvtvzh3] {
    background: var(--mts-primary-500);
    color: #ffffff;
    border-color: var(--mts-primary-500);
}

.auth-btn--primary:hover:not(:disabled)[b-fqjxvtvzh3] {
    background: var(--mts-primary-600);
    border-color: var(--mts-primary-600);
    box-shadow: 0 4px 14px rgba(var(--mts-primary-rgb), 0.35);
}

.auth-btn--primary:disabled[b-fqjxvtvzh3] {
    background: var(--mts-neutral-300);
    border-color: var(--mts-neutral-300);
    color: var(--mts-neutral-500);
    cursor: not-allowed;
}

.auth-btn--secondary[b-fqjxvtvzh3] {
    background: var(--mts-neutral-0);
    color: var(--mts-primary-600);
    border-color: var(--mts-primary-200);
    font-weight: var(--mts-font-weight-medium);
}

.auth-btn--secondary:hover:not(:disabled)[b-fqjxvtvzh3] {
    background: var(--mts-primary-50);
    border-color: var(--mts-primary-400);
}

.auth-btn--secondary:disabled[b-fqjxvtvzh3] { opacity: 0.5; cursor: not-allowed; }

.auth-btn--oauth[b-fqjxvtvzh3] {
    background: var(--mts-neutral-0);
    color: var(--mts-text-primary);
    border-color: var(--mts-border-default);
    font-weight: var(--mts-font-weight-medium);
    font-size: var(--mts-font-size-sm);
}

.auth-btn--oauth svg[b-fqjxvtvzh3] { width: 18px; height: 18px; flex-shrink: 0; }

.auth-btn--oauth:hover:not(:disabled)[b-fqjxvtvzh3] {
    background: var(--mts-neutral-50);
    border-color: var(--mts-neutral-400);
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}

.auth-btn--oauth:disabled[b-fqjxvtvzh3] { opacity: 0.5; cursor: not-allowed; }

.auth-btn__spinner[b-fqjxvtvzh3] {
    width: 16px; height: 16px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: auth-spin 0.65s linear infinite;
    flex-shrink: 0;
}

.auth-btn__spinner--dark[b-fqjxvtvzh3] {
    border-color: rgba(var(--mts-primary-rgb), 0.2);
    border-top-color: var(--mts-primary-500);
}

/* ── Séparateur OAuth ── */

.auth-oauth[b-fqjxvtvzh3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--mts-space-3);
}

.auth-divider[b-fqjxvtvzh3] {
    display: flex;
    align-items: center;
    gap: var(--mts-space-3);
    color: var(--mts-text-secondary);
    font-size: var(--mts-font-size-xs);
    text-transform: uppercase;
    letter-spacing: var(--mts-letter-spacing-wider);
}

.auth-divider[b-fqjxvtvzh3]::before,
.auth-divider[b-fqjxvtvzh3]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--mts-border-subtle);
}

/* ── Champ mot de passe avec toggle visibilité ── */

.auth-field__input-wrap[b-fqjxvtvzh3] {
    position: relative;
    display: flex;
    align-items: center;
}

.auth-field__input-wrap .auth-field__input[b-fqjxvtvzh3] {
    padding-right: calc(var(--mts-space-4) + 28px);
}

.auth-field__eye[b-fqjxvtvzh3] {
    position: absolute;
    right: var(--mts-space-3);
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--mts-text-secondary);
    display: flex;
    align-items: center;
    transition: color 150ms;
}

.auth-field__eye:hover[b-fqjxvtvzh3] { color: var(--mts-text-primary); }
.auth-field__eye svg[b-fqjxvtvzh3] { width: 18px; height: 18px; }

/* ── Mot de passe oublié ── */

.auth-forgot[b-fqjxvtvzh3] {
    text-align: right;
    margin-top: calc(-1 * var(--mts-space-2));
}

/* ── Switch login/signup ── */

.auth-switch[b-fqjxvtvzh3] {
    text-align: center;
    font-size: var(--mts-font-size-sm);
    color: var(--mts-text-secondary);
    margin: 0;
}

.auth-switch__link[b-fqjxvtvzh3] {
    background: none;
    border: none;
    padding: 0;
    font-size: inherit;
    font-family: var(--mts-font-family);
    font-weight: var(--mts-font-weight-semibold);
    color: var(--mts-primary-500);
    cursor: pointer;
    transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.auth-switch__link:hover:not(:disabled)[b-fqjxvtvzh3] { color: var(--mts-primary-700); text-decoration: underline; }
.auth-switch__link:disabled[b-fqjxvtvzh3] { opacity: 0.5; cursor: not-allowed; }

/* ── Écran "Vérifiez votre email" ── */

.auth-card--check-email[b-fqjxvtvzh3] { text-align: center; align-items: center; }
.auth-card--check-email .auth-card__header[b-fqjxvtvzh3] { align-items: center; }

.auth-email-icon[b-fqjxvtvzh3] {
    width: 64px; height: 64px;
    background: linear-gradient(135deg, var(--mts-primary-50) 0%, var(--mts-primary-100) 100%);
    border: 1.5px solid var(--mts-primary-200);
    border-radius: var(--mts-radius-2xl);
    display: flex; align-items: center; justify-content: center;
    color: var(--mts-primary-500);
    animation: auth-bounce-in 350ms cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.auth-email-icon svg[b-fqjxvtvzh3] { width: 30px; height: 30px; }

.auth-email-highlight[b-fqjxvtvzh3] {
    color: var(--mts-primary-600);
    font-weight: var(--mts-font-weight-semibold);
}

.auth-check-hint[b-fqjxvtvzh3] {
    font-size: var(--mts-font-size-sm);
    color: var(--mts-text-secondary);
    line-height: var(--mts-line-height-relaxed);
    margin: 0;
    max-width: 300px;
    text-align: center;
}
/* /Pages/CompleteProfile/CompleteProfile.razor.rz.scp.css */
/* Styles spécifiques à la page CompleteProfile.
   Les styles auth-field, auth-btn, etc. sont globaux (auth-layout.css). */

.auth-info-banner[b-iu11rlfln3] {
    display: flex;
    align-items: flex-start;
    gap: var(--mts-space-3);
    padding: var(--mts-space-3) var(--mts-space-4);
    background: var(--mts-primary-50);
    border: 1px solid var(--mts-primary-100);
    border-radius: var(--mts-radius-md);
    font-size: var(--mts-font-size-sm);
    color: var(--mts-primary-700);
    line-height: var(--mts-line-height-relaxed);
}

.auth-info-banner svg[b-iu11rlfln3] {
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--mts-primary-500);
}
/* /Pages/Features/ApcManager/ApcManagerClassroomList.razor.rz.scp.css */
/* ============================================================
   ApcManagerClassroomList — liste des élèves draggables
   Même style que les items ClassroomStudentShell (csh__student-*)
   ============================================================ */

.apcl-student-list[b-wtc9tii0lw] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.25rem 0;
}

.apcl-student-item[b-wtc9tii0lw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    min-height: 38px;
    padding: 0.3rem 0.55rem;
    border-radius: 8px;
    border: 1px solid var(--mts-primary-200, #9eccd8);
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, transparent);
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--mts-primary-700, #0e3f4a);
    cursor: grab;
    transition: background-color 0.15s ease;
    overflow: hidden;
}

.apcl-student-item:hover[b-wtc9tii0lw] {
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 10%, transparent);
}

.apcl-student-name[b-wtc9tii0lw] {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 0.9rem;
    font-weight: 700;
    color: cornflowerblue;
}

.apcl-student-name--last[b-wtc9tii0lw] {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.9rem;
    color: #000;
    flex-shrink: 0;
}

.apcl-drag-icon[b-wtc9tii0lw] {
    font-size: 1.1rem;
    color: var(--mts-secondary-500, #b8860b);
    flex-shrink: 0;
}
/* /Pages/Features/ApcManager/ApcManagerPage.razor.rz.scp.css */
/* ============================================================
   ApcManagerPage — panneau gauche élèves + layout B central
   ============================================================ */

/* ── Colonne centrale ────────────────────────────────── */

.apc-central[b-p62c17ejvi] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    gap: 0.6rem;
}

/* ── Zone de cartes (haut) ───────────────────────────── */

.apc-cards-zone[b-p62c17ejvi] {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.apc-cards-section[b-p62c17ejvi] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.apc-cards-section-header[b-p62c17ejvi] {
    padding: 0 0.1rem;
}

.apc-cards-section-label[b-p62c17ejvi] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-weight: 700;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0.15rem 0.5rem 0.15rem 0.35rem;
    border-radius: 6px;
}

/* Sessions d'APC — couleur primaire (teal) */
.apc-cards-section-label--session[b-p62c17ejvi] {
    color: var(--mts-primary-700, #0e3f4a);
    background: rgba(21, 87, 103, 0.07);
    border-left: 3px solid var(--mts-primary-500, #155767);
}

.apc-cards-section-label--session .material-symbols-rounded[b-p62c17ejvi] {
    font-size: 0.9rem;
    color: var(--mts-primary-500, #155767);
}

/* Coup de pouce — couleur ambre/dorée */
.apc-cards-section-label--support[b-p62c17ejvi] {
    color: #7a5500;
    background: rgba(184, 134, 11, 0.08);
    border-left: 3px solid #b8860b;
}

.apc-cards-section-label--support .material-symbols-rounded[b-p62c17ejvi] {
    font-size: 0.9rem;
    color: #b8860b;
}

.apc-cards-row[b-p62c17ejvi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: stretch;
}

/* ── Cartes (rendues dans les composants enfants via ::deep) */

[b-p62c17ejvi] .apc-slot-card {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.55rem 0.75rem;
    border-radius: 10px;
    border: 2px solid transparent;
    background: white;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    cursor: pointer;
    min-width: 130px;
    max-width: 210px;
    transition: box-shadow 0.15s, transform 0.15s, border-color 0.15s;
    user-select: none;
}

[b-p62c17ejvi] .apc-slot-card:hover:not(.is-selected) {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
    transform: translateY(-2px);
}

[b-p62c17ejvi] .apc-slot-card--session {
    border-left: 4px solid var(--mts-primary-500, #155767);
    background: linear-gradient(135deg, rgba(21, 87, 103, 0.10) 0%, rgba(21, 87, 103, 0.02) 55%, white 100%);
}

[b-p62c17ejvi] .apc-slot-card--support {
    border-left: 4px solid #b8860b;
    background: linear-gradient(135deg, rgba(184, 134, 11, 0.13) 0%, rgba(184, 134, 11, 0.03) 55%, white 100%);
}

[b-p62c17ejvi] .apc-slot-card--session.is-selected {
    border-color: var(--mts-primary-500, #155767);
    box-shadow: 0 0 0 2px rgba(21, 87, 103, 0.25), 0 4px 12px rgba(0, 0, 0, 0.14);
    transform: translateY(-2px);
}

[b-p62c17ejvi] .apc-slot-card--support.is-selected {
    border-color: #b8860b;
    box-shadow: 0 0 0 2px rgba(184, 134, 11, 0.28), 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

[b-p62c17ejvi] .apc-slot-card--add {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    padding: 0.55rem 0.9rem;
    border-radius: 10px;
    border: 2px dashed var(--mts-primary-300, #5bbcd1);
    background: transparent;
    color: var(--mts-primary-500, #155767);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    min-width: 80px;
    transition: background 0.15s;
}

[b-p62c17ejvi] .apc-slot-card--add:hover {
    background: rgba(21, 87, 103, 0.06);
}

[b-p62c17ejvi] .apc-slot-card--add .material-symbols-rounded {
    font-size: 1.2rem;
}

[b-p62c17ejvi] .apc-slot-card__title {
    font-size: 0.84rem;
    font-weight: 700;
    color: #111827;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

[b-p62c17ejvi] .apc-slot-card__meta {
    font-size: 0.73rem;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-p62c17ejvi] .apc-slot-card__footer {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-top: 0.15rem;
}

[b-p62c17ejvi] .apc-slot-card__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.08rem 0.4rem;
    border-radius: 9999px;
    font-size: 0.68rem;
    font-weight: 700;
    background: rgba(21, 87, 103, 0.08);
    color: var(--mts-primary-600, #124e5d);
    border: 1px solid rgba(21, 87, 103, 0.15);
}

[b-p62c17ejvi] .apc-slot-card__badge--support {
    background: rgba(184, 134, 11, 0.08);
    color: #7a5500;
    border-color: rgba(184, 134, 11, 0.22);
}

/* Titre et meta colorés pour les cartes support */
[b-p62c17ejvi] .apc-slot-card--support .apc-slot-card__title {
    color: #7a5500;
}

[b-p62c17ejvi] .apc-slot-card--support .apc-slot-card__meta {
    color: #a0750a;
}

/* Bouton add dashed adapté pour le support */
[b-p62c17ejvi] .apc-slot-card--support.apc-slot-card--add {
    border-color: rgba(184, 134, 11, 0.4);
    color: #7a5500;
}

[b-p62c17ejvi] .apc-slot-card--support.apc-slot-card--add:hover {
    background: rgba(184, 134, 11, 0.06);
}

[b-p62c17ejvi] .apc-slot-card__actions {
    margin-top: 0.2rem;
    display: flex;
    justify-content: flex-end;
}

/* ── Panneau de détail (bas) ─────────────────────────── */

.apc-detail-panel[b-p62c17ejvi] {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
    border-radius: 10px;
    border: 1px solid var(--mts-primary-200, #9eccd8);
    background: white;
}

/* ── Support slot detail ─────────────────────────────── */

.apc-support-detail[b-p62c17ejvi] {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.apc-support-detail-info[b-p62c17ejvi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
}

/* ── Panneau gauche élèves ───────────────────────────── */

.apc-student-shell[b-p62c17ejvi] {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 0;
}

/* ── Bandeau en-tête ──────────────────────────────────────── */

.apc-student-shell__header[b-p62c17ejvi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.35rem 0.75rem;
    border-radius: 10px;
    background-color: var(--mts-primary-600, #124e5d);
    margin-bottom: 0.75rem;
}

.apc-student-shell__title[b-p62c17ejvi] {
    color: white;
    font-size: 1rem;
    font-weight: 700;
}

.apc-student-shell__badge[b-p62c17ejvi] {
    background-color: rgba(255, 255, 255, 0.15);
    color: white;
    padding: 0.15rem 0.55rem;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── Zone de contenu ─────────────────────────────────────── */

.apc-student-shell__content[b-p62c17ejvi] {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
}
/* /Pages/Features/EmergencyDistributions/EmergencyDistributionPage.razor.rz.scp.css */
/* ============================================================
   EmergencyDistributionPage — tutoriel contextuel
   ============================================================ */

.ed-tutorial[b-u9uszv2bre] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    padding: 0.7rem 1rem;
    border-radius: 12px;
    background: #fff8e1;
    border: 1px solid rgba(184, 134, 11, 0.28);
    color: #7a5800;
    margin-top: 0.75rem;
    margin-bottom: 0.8rem;
}

.ed-tutorial--success[b-u9uszv2bre] {
    flex-direction: row;
    align-items: flex-start;
    gap: 0.75rem;
    background: #e8f7ee;
    border-color: #cfeedd;
    color: #136e39;
}

/* ── Ligne principale (icône + titre) ───────────────────── */

.ed-tutorial-header[b-u9uszv2bre] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.88rem;
    font-weight: 700;
}

.ed-tutorial-icon[b-u9uszv2bre] {
    font-size: 1.15rem;
    flex-shrink: 0;
}

/* ── Liste des conseils ─────────────────────────────────── */

.ed-tutorial-tips[b-u9uszv2bre] {
    list-style: none;
    margin: 0;
    padding: 0 0 0 0.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
}

.ed-tutorial-tips li[b-u9uszv2bre] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    font-size: 0.78rem;
    line-height: 1.4;
    opacity: 0.88;
}

.ed-tutorial-tips li i[b-u9uszv2bre] {
    font-size: 0.72rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
    color: var(--mts-secondary-500, #b8860b);
}

/* Icône inline dans le corps du texte (ex: référence au bouton ✏) */
.ed-tutorial-tip-icon[b-u9uszv2bre] {
    font-size: 0.72rem;
    color: var(--mts-secondary-500, #b8860b);
    margin: 0 1px;
}

/* ── État succès ────────────────────────────────────────── */

.ed-tutorial--success .ed-tutorial-icon[b-u9uszv2bre] {
    font-size: 1.3rem;
    margin-top: 0.05rem;
}

.ed-tutorial--success strong[b-u9uszv2bre] {
    display: block;
    font-size: 0.88rem;
    margin-bottom: 0.2rem;
}

.ed-tutorial--success p[b-u9uszv2bre] {
    font-size: 0.8rem;
    margin: 0;
    line-height: 1.45;
    opacity: 0.9;
}
/* /Pages/Features/Evaluations/EvaluationContentEditorComponent.razor.rz.scp.css */
td[b-2jwossejkn] {
    vertical-align: middle;
    padding: 0.15rem 0.3rem;
}

.auto-width-table[b-2jwossejkn] {
    width: auto;
    table-layout: auto;
    white-space: nowrap;
    border-collapse: separate;
    border-spacing: 0;
}

/* ── Scroll + style global du tableau ────────────────────── */

.table-responsive[b-2jwossejkn] {
    max-height: 83vh;
    overflow-y: auto;
    overflow-x: auto;
    position: relative;
    border: 1px solid rgba(21, 87, 103, 0.18);
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(21, 87, 103, 0.1), 0 1px 4px rgba(0, 0, 0, 0.05);
}

/* ── Séparateurs de lignes ───────────────────────────────── */

tbody tr td[b-2jwossejkn] {
    border-bottom: 1px solid rgba(21, 87, 103, 0.06);
}

tbody tr:last-child td[b-2jwossejkn] {
    border-bottom: none;
}

/* ── En-têtes fixes ──────────────────────────────────────── */

thead th[b-2jwossejkn] {
    position: sticky;
    top: 0;
    z-index: 5;
    background-color: #fff;
    text-align: center;
    min-width: 75px;
    align-content: center;
    padding: 0.2rem 0.4rem;
    border: 0;
}

/* Hauteurs fixes des deux lignes du thead */
thead tr:first-child[b-2jwossejkn] {
    height: 88px;
}

thead tr:last-child[b-2jwossejkn] {
    height: 44px;
}

thead th.sticky-col[b-2jwossejkn] {
    z-index: 10;
}

/* ── Colonnes fixes ──────────────────────────────────────── */

th.sticky-col[b-2jwossejkn],
td.sticky-col[b-2jwossejkn] {
    position: sticky;
    background: white;
    z-index: 9;
}

.sticky-col[b-2jwossejkn] {
    position: sticky;
    background: white;
    z-index: 9;
}

/* Row 2 du thead : colle juste sous la row 1 */
.second-row[b-2jwossejkn] {
    top: 88px;
}

.left-col[b-2jwossejkn] {
    left: 0;
}

.second-col[b-2jwossejkn] {
    z-index: 8;
    left: 180px;
    border-left: 0;
    align-content: center;
}

.col-student[b-2jwossejkn] {
    max-width: 180px !important;
    min-width: 180px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0.2rem;
    border-right: 0;
}

/* ── Colonne Élèves : header sticky stylisé ─────────────── */

.eval-student-th[b-2jwossejkn] {
    background: linear-gradient(145deg, #0a2f38 0%, #155767 100%) !important;
    border-right: 1px solid rgba(21, 87, 103, 0.3) !important;
    padding: 0 !important;
    vertical-align: top !important;
}

.eval-student-col-header[b-2jwossejkn] {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0.4rem 0.5rem 0.35rem;
    box-sizing: border-box;
}

/* Ligne du haut : lock + nom de l'évaluation */
.eval-student-col-top[b-2jwossejkn] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    min-width: 0;
    text-align: left;
}

.eval-student-col-name[b-2jwossejkn] {
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: rgba(255, 255, 255, 0.92);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
}

/* Ligne du bas : tri + navigation, collée en bas */
.eval-student-col-bottom[b-2jwossejkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.3rem;
    margin-top: auto;
    padding-top: 0.3rem;
}

/* ── Misc ────────────────────────────────────────────────── */

td.empty[b-2jwossejkn],
th.empty[b-2jwossejkn] {
    min-width: 12px !important;
    width: 12px !important;
    background-color: transparent;
    box-shadow: none;
    border: 0 !important;
    padding: 0 !important;
}

/* ── Hauteur de ligne cohérente ──────────────────────────── */

tbody tr[b-2jwossejkn] {
    height: 44px;
}

.score-container[b-2jwossejkn] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

/* ── Card visuelle par groupe de compétence ──────────────── */

/* tbody : semi-transparent, ok car non-sticky */
.skill-group-first[b-2jwossejkn],
.skill-group-mid[b-2jwossejkn],
.skill-group-last[b-2jwossejkn] {
    background: rgba(21, 87, 103, 0.06) !important;
}

/* thead : opaque obligatoire pour que le sticky masque le contenu derrière */
thead th.skill-group-header[b-2jwossejkn],
thead th.skill-group-first[b-2jwossejkn],
thead th.skill-group-mid[b-2jwossejkn],
thead th.skill-group-last[b-2jwossejkn] {
    background: #eef3f5 !important;
}

/* Largeur minimale pour une compétence sans skill */
thead th.skill-group-header[b-2jwossejkn] {
    min-width: 120px;
}

.skill-group-header[b-2jwossejkn] {
    background: #eef3f5 !important;
    border-top: 2px solid rgba(21, 87, 103, 0.4) !important;
    border-left: 2px solid rgba(21, 87, 103, 0.4) !important;
    border-right: 2px solid rgba(21, 87, 103, 0.4) !important;
}

/* Groupes adjacents : supprimer la bordure gauche du suivant pour éviter le doublon */
thead th.skill-group-header + th.skill-group-header[b-2jwossejkn] {
    border-left: none !important;
}

.skill-group-first[b-2jwossejkn] {
    border-left: 2px solid rgba(21, 87, 103, 0.4) !important;
}

.skill-group-last[b-2jwossejkn] {
    border-right: 2px solid rgba(21, 87, 103, 0.4) !important;
}

/* Groupes de compétences directement adjacents (sans séparateur vide) */
th.skill-group-last + th.skill-group-first[b-2jwossejkn],
td.skill-group-last + td.skill-group-first[b-2jwossejkn] {
    border-left: none !important;
}

/* Ferme la card en bas sur la dernière ligne du tbody */
tbody tr:last-child td.skill-group-first[b-2jwossejkn],
tbody tr:last-child td.skill-group-mid[b-2jwossejkn],
tbody tr:last-child td.skill-group-last[b-2jwossejkn] {
    border-bottom: 2px solid rgba(21, 87, 103, 0.4) !important;
}

/* ── Boutons du dialog option élève ──────────────────────── */

.sei-dialog-btn[b-2jwossejkn] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.9rem;
    border: none;
    border-radius: 10px;
    background: #f3f4f6;
    color: #374151;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, transform 0.1s, box-shadow 0.15s;
    width: 100%;
    text-align: left;
    box-shadow: 0 1px 3px rgba(0,0,0,0.07);
}

.sei-dialog-btn:hover[b-2jwossejkn] {
    background: #e5e7eb;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.sei-dialog-btn:active[b-2jwossejkn] {
    transform: scale(0.98);
}

.sei-dialog-btn.absent[b-2jwossejkn] {
    background: var(--important-color, #e53e3e);
    color: #fff;
    box-shadow: 0 2px 8px rgba(229, 62, 62, 0.3);
}

.sei-dialog-btn.absent:hover[b-2jwossejkn] {
    background: #c53030;
    box-shadow: 0 3px 10px rgba(229, 62, 62, 0.4);
}

.sei-dialog-btn.not-evaluated[b-2jwossejkn] {
    background: var(--secondary-color, #718096);
    color: #fff;
    box-shadow: 0 2px 8px rgba(113, 128, 150, 0.3);
}

.sei-dialog-btn.not-evaluated:hover[b-2jwossejkn] {
    background: #4a5568;
    box-shadow: 0 3px 10px rgba(113, 128, 150, 0.4);
}

.sei-dialog-btn--cancel[b-2jwossejkn] {
    background: #fffbeb;
    color: #92400e;
    box-shadow: 0 1px 3px rgba(251, 191, 36, 0.2);
    margin-top: 0.25rem;
}

.sei-dialog-btn--cancel:hover[b-2jwossejkn] {
    background: #fef3c7;
    box-shadow: 0 2px 6px rgba(251, 191, 36, 0.3);
}
/* /Pages/Features/Evaluations/EvaluationPage.razor.rz.scp.css */
.evaluation-list[b-zexx490v6h] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    overflow-y: auto;
    padding: 0.25rem 0.1rem;
}
/* /Pages/Features/Evaluations/NavigationModeToggle.razor.rz.scp.css */
.navmode-toggle[b-bij8awmdyf] {
    position: relative;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 1px 2px rgba(0,0,0,.08);
    display: inline-grid;
    place-items: center;
    cursor: pointer;
    outline: none;
    flex-shrink: 0;
    transition: background-color .15s, border-color .15s, box-shadow .15s;
}

.navmode-toggle:hover[b-bij8awmdyf] {
    background: #f3f4f6;
    border-color: rgba(0,0,0,.25);
}

.navmode-toggle:active[b-bij8awmdyf] {
    background: #e5e7eb;
}

.navmode-toggle:focus-visible[b-bij8awmdyf] {
    box-shadow: 0 0 0 3px rgba(21, 87, 103, 0.2);
}

/* Icônes superposées avec crossfade */
.navmode-toggle .icon[b-bij8awmdyf] {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    opacity: 0;
    transform: scale(.85);
    transition: opacity .18s ease, transform .18s ease;
    pointer-events: none;
}

.navmode-toggle .icon i[b-bij8awmdyf] {
    font-size: 0.9rem;
    line-height: 1;
    color: var(--primary-color, #155767);
}

.navmode-toggle .icon-horizontal[b-bij8awmdyf] {
    opacity: 1;
    transform: scale(1);
}

.navmode-toggle[aria-pressed="true"] .icon-horizontal[b-bij8awmdyf] {
    opacity: 0;
    transform: scale(.85);
}

.navmode-toggle[aria-pressed="true"] .icon-vertical[b-bij8awmdyf] {
    opacity: 1;
    transform: scale(1);
}

@media (prefers-reduced-motion: reduce) {
    .navmode-toggle .icon[b-bij8awmdyf] {
        transition: none;
    }
}
/* /Pages/Features/ExtracurricularActivities/ExtracurricularActivitiesItemList.razor.rz.scp.css */
/* ============================================================
   ExtracurricularActivitiesItemList — layout 2 panneaux
   Sidebar (liste activités) + Détail (créneaux)
   ============================================================ */

/* ── Layout global ──────────────────────────────────────── */

.eal-layout[b-ayi1j3gfnk] {
    display: flex;
    height: 100%;
    overflow: hidden;
}

/* ── Sidebar ────────────────────────────────────────────── */

.eal-sidebar[b-ayi1j3gfnk] {
    width: 240px;
    min-width: 240px;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--mts-primary-100, #c8e5ed);
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 3%, white);
    overflow: hidden;
}

.eal-sidebar-head[b-ayi1j3gfnk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 2.75rem;
    padding: 0 0.85rem;
    background: var(--mts-primary-600, #124e5d);
    flex-shrink: 0;
}

.eal-sidebar-title[b-ayi1j3gfnk] {
    color: white;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    opacity: 0.85;
}

.eal-sidebar-badge[b-ayi1j3gfnk] {
    background: rgba(255, 255, 255, 0.18);
    color: white;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
}

.eal-sidebar-list[b-ayi1j3gfnk] {
    flex: 1 1 0;
    overflow-y: auto;
    padding: 0.5rem 0.45rem;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.eal-sidebar-empty[b-ayi1j3gfnk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    color: #94a3b8;
    font-size: 0.78rem;
    text-align: center;
}

/* ── Item d'activité ────────────────────────────────────── */

.eal-activity-item[b-ayi1j3gfnk] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    border: 1px solid var(--mts-primary-100, #c8e5ed);
    background: white;
    box-shadow: 0 1px 3px rgba(21, 87, 103, 0.07);
    cursor: pointer;
    transition: box-shadow 0.15s, border-color 0.15s, background 0.15s;
    user-select: none;
}

.eal-activity-item:hover[b-ayi1j3gfnk] {
    border-color: var(--mts-primary-300, #5aafc3);
    box-shadow: 0 3px 8px rgba(21, 87, 103, 0.14);
}

.eal-activity-item--active[b-ayi1j3gfnk] {
    background: var(--mts-primary-600, #124e5d);
    border-color: var(--mts-primary-600, #124e5d);
    box-shadow: 0 4px 12px rgba(18, 78, 93, 0.32);
}

.eal-activity-item--active:hover[b-ayi1j3gfnk] {
    background: var(--mts-primary-500, #155767);
    border-color: var(--mts-primary-500, #155767);
}

/* Ligne 1 : nom + bouton suppr */
.eal-activity-header[b-ayi1j3gfnk] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.eal-activity-label[b-ayi1j3gfnk] {
    flex: 1 1 0;
    min-width: 0;
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--mts-primary-700, #0e3f4a);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eal-activity-item--active .eal-activity-label[b-ayi1j3gfnk] {
    color: white;
}

/* Ligne 2 : créneaux + élèves */
.eal-activity-meta[b-ayi1j3gfnk] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.72rem;
    color: var(--mts-primary-400, #3a8fa0);
}

.eal-activity-item--active .eal-activity-meta[b-ayi1j3gfnk] {
    color: rgba(255, 255, 255, 0.65);
}

.eal-activity-meta-chip[b-ayi1j3gfnk] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    font-weight: 600;
}

/* Bouton suppression dans la sidebar */
.eal-activity-delete-btn[b-ayi1j3gfnk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    padding: 0;
    border: none;
    border-radius: 4px;
    background: transparent;
    color: rgba(148, 163, 184, 0.8);
    font-size: 0.65rem;
    cursor: pointer;
    transition: background 0.12s, color 0.12s;
    flex-shrink: 0;
    opacity: 0;
}

.eal-activity-item:hover .eal-activity-delete-btn[b-ayi1j3gfnk] {
    opacity: 1;
}

.eal-activity-item--active .eal-activity-delete-btn[b-ayi1j3gfnk] {
    color: rgba(255, 255, 255, 0.5);
}

.eal-activity-item--active:hover .eal-activity-delete-btn[b-ayi1j3gfnk] {
    opacity: 1;
}

.eal-activity-delete-btn:hover[b-ayi1j3gfnk] {
    background: #fef2f2;
    color: #dc2626;
}

.eal-activity-item--active .eal-activity-delete-btn:hover[b-ayi1j3gfnk] {
    background: rgba(220, 38, 38, 0.2);
    color: #fca5a5;
}

/* ── Panneau détail ─────────────────────────────────────── */

.eal-detail[b-ayi1j3gfnk] {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Placeholder vide */
.eal-detail-placeholder[b-ayi1j3gfnk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--mts-primary-400, #3a8fa0);
    text-align: center;
    padding: 2rem;
}
/* /Pages/Features/MiddaySituations/MiddaySituationClassroomList.razor.rz.scp.css */
.midday-location-badge[b-qe6zhl9ubk] {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.15rem 0.45rem;
    border-radius: 999px;
    border: 1px solid #cbd5e1;
    background: #f8fafc;
    color: #0f172a;
}

.midday-location-canteen[b-qe6zhl9ubk] { border-color: #d97706; background: #ffedd5; color: #9a3412; }
.midday-location-playground[b-qe6zhl9ubk] { border-color: #2e7d32; background: #dcfce7; color: #166534; }
.midday-location-apc[b-qe6zhl9ubk] { border-color: #7c3aed; background: #ede9fe; color: #5b21b6; }
.midday-location-extracurricular[b-qe6zhl9ubk] { border-color: #38bdf8; background: #e0f2fe; color: #075985; }
.midday-location-home[b-qe6zhl9ubk] { border-color: #475569; background: #f1f5f9; color: #334155; }
/* /Pages/Features/PairedClasses/PairedClassesAssociatedClassPanel.razor.rz.scp.css */
/* ============================================================
   PairedClassesAssociatedClassPanel — colonne classe B
   ============================================================ */

.pcap-container[b-kcpg8r0odl] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 100%;
}

.pcap-empty-state[b-kcpg8r0odl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 2rem 1rem;
    flex: 1;
}

.pcap-empty-icon[b-kcpg8r0odl] {
    font-size: 2rem;
    color: #94a3b8;
    opacity: 0.6;
}

.pcap-empty-text[b-kcpg8r0odl] {
    font-size: 0.85rem;
    color: #64748b;
    font-weight: 500;
}

.pcap-associate-row[b-kcpg8r0odl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.pcap-associate-btn[b-kcpg8r0odl] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.4rem 0.9rem;
    border: none;
    border-radius: 8px;
    background: var(--mts-primary-600, #124e5d);
    color: white;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.pcap-associate-btn:hover:not(:disabled)[b-kcpg8r0odl] {
    background: var(--mts-primary-500, #155767);
}

.pcap-associate-btn:disabled[b-kcpg8r0odl] {
    opacity: 0.45;
    cursor: not-allowed;
}

/* Scroll interne — uniquement autour de la liste, pas du dropdown */
.pcap-student-scroll[b-kcpg8r0odl] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-right: 0.1rem;
}
/* /Pages/Features/PairedClasses/PairedClassesClassroomList.razor.rz.scp.css */
/* ClassroomStudentShell gère tout le rendu interne */
/* /Pages/Features/PairedClasses/PairedClassesPage.razor.rz.scp.css */
/* ============================================================
   PairedClassesPage — tutoriel contextuel + header groupes
   ============================================================ */

/* ── Tutoriel contextuel ────────────────────────────────── */

.pc-tutorial[b-753v7itr1o] {
    margin-bottom: 0.8rem;
}

.pc-tutorial-step[b-753v7itr1o] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.7rem 1rem;
    border-radius: 12px;
    background: #e8f1ff;
    border: 1px solid #cfe1ff;
    color: #0b4bb3;
}

.pc-tutorial-step--warn[b-753v7itr1o] {
    background: #fff8e1;
    border-color: rgba(184, 134, 11, 0.3);
    color: #7a5800;
}

.pc-tutorial-step--success[b-753v7itr1o] {
    background: #e8f7ee;
    border-color: #cfeedd;
    color: #136e39;
}

.pc-tutorial-icon[b-753v7itr1o] {
    font-size: 1.3rem;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

.pc-tutorial-step > div > strong[b-753v7itr1o] {
    display: block;
    font-size: 0.88rem;
    margin-bottom: 0.2rem;
}

.pc-tutorial-step p[b-753v7itr1o] {
    font-size: 0.8rem;
    margin: 0;
    line-height: 1.45;
    opacity: 0.9;
}

/* ── Header groupes ─────────────────────────────────────── */

.pc-groups-header[b-753v7itr1o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.45rem 0.8rem;
    background: var(--mts-primary-700, #0e3f4a);
    border-radius: 8px;
    gap: 0.5rem;
}

.pc-groups-title[b-753v7itr1o] {
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
}

.pc-groups-actions[b-753v7itr1o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Bouton Désassocier ─────────────────────────────────── */

.pc-btn-danger[b-753v7itr1o] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.3rem 0.75rem;
    border: 1px solid rgba(239, 68, 68, 0.35);
    border-radius: 8px;
    background: rgba(239, 68, 68, 0.08);
    color: #dc2626;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.pc-btn-danger:hover:not(:disabled)[b-753v7itr1o] {
    background: rgba(239, 68, 68, 0.16);
    border-color: rgba(239, 68, 68, 0.55);
}

.pc-btn-danger:disabled[b-753v7itr1o] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* ── Bouton Auto-répartition ────────────────────────────── */

.pc-btn-action[b-753v7itr1o] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.3rem 0.75rem;
    border: none;
    border-radius: 8px;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.pc-btn-action:hover:not(:disabled)[b-753v7itr1o] {
    background: var(--mts-secondary-400, #d4a017);
}

.pc-btn-action:disabled[b-753v7itr1o] {
    opacity: 0.4;
    cursor: not-allowed;
}
/* /Pages/Features/PlanifiedTasks/PlanifiedTaskPage.razor.rz.scp.css */
/* ============================================================
   PlanifiedTaskPage — layout sidebar liste
   ============================================================ */

.pt-task-list[b-xp74ufmr3e] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    padding: 0.5rem 0.45rem;
}

.pt-task-list-empty[b-xp74ufmr3e] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    color: #94a3b8;
    font-size: 0.78rem;
    text-align: center;
}
/* /Pages/Features/SchoolResponsabilities/SchoolResponsabilitiesList.razor.rz.scp.css */
/* ============================================================
   SchoolResponsabilitiesList — conteneur liste
   ============================================================ */

.srl-list[b-iy2kcfzo0i] {
    display: flex;
    flex-direction: column;
    padding: 0.25rem 0;
}

.srl-footer[b-iy2kcfzo0i] {
    padding: 0.35rem 0.5rem 0.5rem;
    border-top: 1px solid color-mix(in srgb, var(--mts-primary-600, #124e5d) 15%, transparent);
}
/* /Pages/Features/SchoolResponsabilities/SchoolResponsabilitiesPage.razor.rz.scp.css */
/* ============================================================
   SchoolResponsabilitiesPage — panel liste gauche DS
   ============================================================ */

.srl-panel[b-owkhfmh42e] {
    border: 1px solid var(--mts-primary-600, #124e5d);
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-height: 0;
}

.srl-panel-header[b-owkhfmh42e] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 0.8rem;
    background: var(--mts-primary-600, #124e5d);
}

.srl-panel-title[b-owkhfmh42e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
}

.srl-panel-title i[b-owkhfmh42e] {
    font-size: 1.25rem;
}

.srl-panel-content[b-owkhfmh42e] {
    flex: 1 1 0;
    overflow-y: auto;
    min-height: 0;
}
/* /Pages/Features/TicketManagements/TicketManagementPage.razor.rz.scp.css */
/* /Pages/Features/WorkTrackings/WorkTrackingContentByStudentComponent.razor.rz.scp.css */
.wbs-container[b-j7ym5y3i8n] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.5rem;
}

.wbs-cards[b-j7ym5y3i8n] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0.25rem 0.1rem 0.5rem;
}

.wbs-cards[b-j7ym5y3i8n]::-webkit-scrollbar {
    height: 5px;
}

.wbs-cards[b-j7ym5y3i8n]::-webkit-scrollbar-track {
    background: transparent;
}

.wbs-cards[b-j7ym5y3i8n]::-webkit-scrollbar-thumb {
    background: rgba(21, 87, 103, 0.25);
    border-radius: 3px;
}
/* /Pages/Features/WorkTrackings/WorkTrackingContentBySubjectComponent.razor.rz.scp.css */
.wbs-container[b-3vbj49slox] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.5rem;
    gap: 0.5rem;
    position: relative;
}

.wbs-cards[b-3vbj49slox] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0.25rem 0.1rem 0.5rem;
}

.wbs-cards[b-3vbj49slox]::-webkit-scrollbar {
    height: 5px;
}

.wbs-cards[b-3vbj49slox]::-webkit-scrollbar-track {
    background: transparent;
}

.wbs-cards[b-3vbj49slox]::-webkit-scrollbar-thumb {
    background: rgba(21, 87, 103, 0.25);
    border-radius: 3px;
}

.wbs-add[b-3vbj49slox] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
}
/* /Pages/Features/WorkTrackings/WorkTrackingPage.razor.rz.scp.css */
/* Header: prend toute la largeur */
.header-content[b-g9hw6s74mq] {
    height: fit-content;
    min-height:100px;
    white-space: nowrap;
    padding-block: 0.5rem;
}

/* Sidebar : largeur définie */
.sidebar-content[b-g9hw6s74mq] {
    width: 250px;
    border-right: 1px solid #ccc;
    overflow-y: auto;
    padding:5px;
}

/* Contenu principal : occupe tout l’espace restant */
.main-content[b-g9hw6s74mq] {
    padding: 1rem;
    overflow: auto;
}
/* /Pages/Features/WorkTrackings/WorkTrackingStudentListComponent.razor.rz.scp.css */
/* ── Conteneur principal ─────────────────────────────── */

.wsl-container[b-8665l3mde3] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

/* ── Chips de filtrage par groupe ────────────────────── */

.wsl-filters[b-8665l3mde3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    padding: 0.5rem 0.5rem 0;
}

.wsl-chip[b-8665l3mde3] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.22rem 0.65rem 0.22rem 0.5rem;
    border: 2px solid #d1d5db;
    border-radius: 999px;
    background: #f3f4f6;
    color: #111827;
    font-size: 0.75rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s, transform 0.1s, box-shadow 0.15s;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.wsl-chip:hover[b-8665l3mde3] {
    background: #e5e7eb;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0,0,0,0.1);
}

.wsl-chip--active[b-8665l3mde3] {
    border-color: transparent;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
}

.wsl-chip-dot[b-8665l3mde3] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
    border: 1.5px solid rgba(0,0,0,0.1);
}

/* ── Bouton de tri ───────────────────────────────────── */

.wsl-sort[b-8665l3mde3] {
    padding: 0.4rem 0.5rem 0.2rem;
}

/* ── Liste des élèves ────────────────────────────────── */

.wsl-list[b-8665l3mde3] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.25rem 0.5rem 0.5rem;
}
/* /Pages/Features/WorkTrackings/WorkTrackingSubjectListComponent.razor.rz.scp.css */
/* ── Conteneur global (liste + bouton add) ───────────── */

.wsl-subjects[b-g5t36wivp3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 100%;
    padding: 0 0.5rem;
}

/* ── Liste scrollable horizontalement ────────────────── */

.wsl-subjects-list[b-g5t36wivp3] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    overflow-x: auto;
    flex: 1;
    padding: 4px 4px 0.25rem;
}

.wsl-subjects-list[b-g5t36wivp3]::-webkit-scrollbar {
    height: 4px;
}

.wsl-subjects-list[b-g5t36wivp3]::-webkit-scrollbar-track {
    background: transparent;
}

.wsl-subjects-list[b-g5t36wivp3]::-webkit-scrollbar-thumb {
    background: rgba(21, 87, 103, 0.25);
    border-radius: 2px;
}
/* /Pages/Index.razor.rz.scp.css */
.no-classroom-placeholder[b-sj1wiq5g9o] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
}

.no-classroom-content[b-sj1wiq5g9o] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--mts-space-3);
    padding: var(--mts-space-6);
    text-align: center;
}

.no-classroom-content i[b-sj1wiq5g9o] {
    font-size: 2.5rem;
    color: var(--mts-neutral-300);
}

.no-classroom-title[b-sj1wiq5g9o] {
    font-size: var(--mts-font-size-md);
    font-weight: var(--mts-font-weight-semibold);
    color: var(--mts-text-primary);
    margin: 0;
}

.no-classroom-subtitle[b-sj1wiq5g9o] {
    font-size: var(--mts-font-size-sm);
    color: var(--mts-text-secondary);
    margin: 0;
    max-width: 260px;
    line-height: 1.5;
}
/* /Pages/Onboarding/UserOnboarding.razor.rz.scp.css */
/* =====================================================
   UserOnboarding.razor — styles spécifiques à la page
   Layout, card, champs et boutons → auth-layout.css
   ===================================================== */

/* ── Option tiles (étape 1) ── */

.onboarding-options[b-yyrwzy8atm] {
    display: flex;
    flex-direction: column;
    gap: var(--mts-space-3);
}

.onboarding-option[b-yyrwzy8atm] {
    display: flex;
    align-items: center;
    gap: var(--mts-space-4);
    padding: var(--mts-space-5);
    background: var(--mts-neutral-0);
    border: 1.5px solid var(--mts-border-default);
    border-radius: var(--mts-radius-md);
    cursor: pointer;
    font-family: var(--mts-font-family);
    width: 100%;
    transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.onboarding-option:hover[b-yyrwzy8atm] {
    border-color: var(--mts-primary-400);
    background: var(--mts-primary-50);
    box-shadow: 0 2px 8px rgba(var(--mts-primary-rgb), 0.10);
}

.onboarding-option:active[b-yyrwzy8atm] {
    transform: scale(0.99);
}

.onboarding-option__icon[b-yyrwzy8atm] {
    width: 44px;
    height: 44px;
    background: var(--mts-primary-50);
    border: 1.5px solid var(--mts-primary-100);
    border-radius: var(--mts-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mts-primary-600);
    flex-shrink: 0;
}

.onboarding-option__icon svg[b-yyrwzy8atm] {
    width: 22px;
    height: 22px;
}

.onboarding-option__text[b-yyrwzy8atm] {
    flex: 1;
    text-align: left;
}

.onboarding-option__title[b-yyrwzy8atm] {
    font-size: var(--mts-font-size-md);
    font-weight: var(--mts-font-weight-semibold);
    color: var(--mts-text-primary);
    margin: 0;
    line-height: 1.3;
}

.onboarding-option__subtitle[b-yyrwzy8atm] {
    font-size: var(--mts-font-size-xs);
    color: var(--mts-text-secondary);
    margin: 0.2rem 0 0;
    line-height: 1.4;
}

.onboarding-option__arrow[b-yyrwzy8atm] {
    color: var(--mts-text-secondary);
    flex-shrink: 0;
    opacity: 0.6;
}

/* ── Sélecteur de rôle (étape 2a) ── */

.onboarding-roles[b-yyrwzy8atm] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--mts-space-2);
}

.onboarding-roles--3col[b-yyrwzy8atm] {
    grid-template-columns: 1fr 1fr 1fr;
}

.onboarding-role[b-yyrwzy8atm] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--mts-space-2);
    height: 40px;
    border: 1.5px solid var(--mts-border-default);
    border-radius: var(--mts-radius-md);
    background: var(--mts-neutral-0);
    font-family: var(--mts-font-family);
    font-size: var(--mts-font-size-sm);
    font-weight: var(--mts-font-weight-medium);
    color: var(--mts-text-secondary);
    cursor: pointer;
    transition: border-color 150ms ease, background 150ms ease, color 150ms ease;
}

.onboarding-role:hover:not(:disabled):not(.onboarding-role--active)[b-yyrwzy8atm] {
    border-color: var(--mts-primary-300);
    background: var(--mts-primary-50);
    color: var(--mts-primary-600);
}

.onboarding-role--active[b-yyrwzy8atm] {
    border-color: var(--mts-primary-500);
    background: var(--mts-primary-50);
    color: var(--mts-primary-700);
    font-weight: var(--mts-font-weight-semibold);
}

.onboarding-role:disabled[b-yyrwzy8atm] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ── Feedback UAI (étape 2b) ── */

.onboarding-uai-searching[b-yyrwzy8atm] {
    display: flex;
    align-items: center;
    gap: var(--mts-space-2);
    font-size: var(--mts-font-size-xs);
    color: var(--mts-text-secondary);
    margin-top: calc(-1 * var(--mts-space-1));
}

.onboarding-uai-found[b-yyrwzy8atm] {
    display: flex;
    align-items: flex-start;
    gap: var(--mts-space-3);
    padding: var(--mts-space-3) var(--mts-space-4);
    background: #f0fdf4;
    border: 1px solid #86efac;
    border-radius: var(--mts-radius-md);
    margin-top: calc(-1 * var(--mts-space-1));
}

.onboarding-uai-found svg[b-yyrwzy8atm] {
    color: #16a34a;
    flex-shrink: 0;
    margin-top: 2px;
}

.onboarding-uai-found__name[b-yyrwzy8atm] {
    font-size: var(--mts-font-size-sm);
    font-weight: var(--mts-font-weight-semibold);
    color: #15803d;
    margin: 0;
    line-height: 1.4;
}

.onboarding-uai-found__address[b-yyrwzy8atm] {
    font-size: var(--mts-font-size-xs);
    color: #166534;
    margin: 0.125rem 0 0;
    line-height: 1.4;
}

/* ── Champ UAI validé — bordure verte ── */

.auth-field__input--success[b-yyrwzy8atm] {
    border-color: #16a34a;
}

.auth-field__input--success:focus[b-yyrwzy8atm] {
    border-color: #16a34a;
    box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.12);
}
/* /UIComponents/Common/ClassroomStudentShell.razor.rz.scp.css */
/* ============================================================
   ClassroomStudentShell — conteneur générique
   Sélecteur de classe + bandeau récapitulatif + slot élèves
   ============================================================ */

.csh[b-2kd9wote3t] {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 0;
}

/* ── Bandeau fusionné (sélecteur + compteur) ─────────────── */
.csh__header[b-2kd9wote3t] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.2rem 0.6rem 0.2rem 0.35rem;
    border-radius: 10px;
    background-color: var(--mts-primary-600, #124e5d);
    margin-bottom: 0.75rem;
}

/* Le wrapper dropdown prend tout l'espace disponible dans le flex header */
.csh__header[b-2kd9wote3t]  .mts-dropdown {
    flex: 1 1 0;
    min-width: 0;
}

/* Neutralise l'apparence standard du trigger dans ce contexte */
.csh__header[b-2kd9wote3t]  .mts-dropdown__trigger {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    font-weight: 600;
}

.csh__header[b-2kd9wote3t]  .mts-dropdown__trigger:hover:not(:disabled) {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border: none !important;
}

.csh__header[b-2kd9wote3t]  .mts-dropdown--open .mts-dropdown__trigger,
.csh__header[b-2kd9wote3t]  .mts-dropdown__trigger:focus-visible {
    background-color: rgba(255, 255, 255, 0.12) !important;
    border: none !important;
    box-shadow: none !important;
}

/* Texte sélectionné — plus grand que le Size="sm" par défaut */
.csh__header[b-2kd9wote3t]  .mts-dropdown__text {
    color: white;
    font-size: 1rem;
    font-weight: 700;
}

/* Placeholder légèrement atténué */
.csh__header[b-2kd9wote3t]  .mts-dropdown__text--placeholder {
    color: rgba(255, 255, 255, 0.55);
}

/* Caret */
.csh__header[b-2kd9wote3t]  .mts-dropdown__caret {
    color: rgba(255, 255, 255, 0.75);
}

/* Badge compteur élèves */
.csh__header-badge[b-2kd9wote3t] {
    background-color: rgba(255, 255, 255, 0.15);
    color: white;
    padding: 0.15rem 0.55rem;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── Zone de contenu ─────────────────────────────────────── */
.csh__content[b-2kd9wote3t] {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
}

/* ── Base commune des items élèves ───────────────────────────
   À utiliser dans chaque <StudentContent> via class="csh__student-item".
   Garantit un gabarit cohérent (flex, hauteur, espacement, curseur)
   quelle que soit la page. Le contenu interne (tags, icônes…) varie.
   ─────────────────────────────────────────────────────────── */
[b-2kd9wote3t] .csh__student-list {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.25rem 0;
}

[b-2kd9wote3t] .csh__student-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    min-height: 38px;
    padding: 0.3rem 0.55rem;
    border-radius: 8px;
    border: 1px solid var(--mts-primary-200, #9eccd8);
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, transparent);
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--mts-primary-700, #0e3f4a);
    cursor: grab;
    transition: background-color 0.15s ease;
    overflow: hidden;
}

[b-2kd9wote3t] .csh__student-item:hover {
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 10%, transparent);
}

/* Item non-draggable (interaction au clic) */
[b-2kd9wote3t] .csh__student-item--no-drag {
    cursor: pointer;
}

/* Item sélectionné (ex : sélection multi pour une action) */
[b-2kd9wote3t] .csh__student-item--selected {
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 18%, transparent);
    border-color: var(--mts-primary-500, #155767);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--mts-primary-500, #155767) 35%, transparent);
}

[b-2kd9wote3t] .csh__student-item--selected:hover {
    background-color: color-mix(in srgb, var(--mts-primary-500, #155767) 24%, transparent);
}

/* Noms dans l'item */
[b-2kd9wote3t] .csh__student-name {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 0.9rem;
    font-weight: 700;
    color: cornflowerblue;
}

[b-2kd9wote3t] .csh__student-name--last {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.9rem;
    color: #000;
    overflow: visible;
    flex-shrink: 0;
}

/* Icône de drag (optionnelle) */
[b-2kd9wote3t] .csh__drag-icon {
    font-size: 1.1rem;
    color: var(--mts-secondary-500, #b8860b);
    flex-shrink: 0;
}
/* /UIComponents/Popups/EmergencyDistributions/DuplicateEmergencyDistribution.razor.rz.scp.css */
/* ============================================================
   DuplicateEmergencyDistribution
   ============================================================ */

.ded-form[b-r1gf77eyhr] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.ded-field[b-r1gf77eyhr] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.ded-label[b-r1gf77eyhr] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #475569;
}
/* /UIComponents/Popups/Evaluations/CreateEvaluationPopup.razor.rz.scp.css */
/* intentionally empty */
/* /UIComponents/Popups/FileExplorerItems/FilePreviewModal.razor.rz.scp.css */
/* ============================================================
   FilePreviewModal
   ============================================================ */

.fpm-preview[b-x3r9903xyk] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 180px;
    border-radius: 10px;
    background: #f8fafc;
    border: 1px solid var(--mts-primary-100, #d0eaf0);
    overflow: hidden;
    padding: 1.25rem;
}

.fpm-preview-img[b-x3r9903xyk] {
    max-width: 100%;
    max-height: 340px;
    border-radius: 6px;
    object-fit: contain;
}

.fpm-preview-icon[b-x3r9903xyk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.6rem;
    color: var(--mts-primary-400, #3a9aac);
}

.fpm-preview-icon i[b-x3r9903xyk] {
    font-size: 4rem;
}

.fpm-preview-unavailable[b-x3r9903xyk] {
    font-size: 0.82rem;
    color: #94a3b8;
}
/* /UIComponents/Popups/PlanifiedTasks/CreatePlanifiedTaskPopup.razor.rz.scp.css */
/* ============================================================
   CreatePlanifiedTaskPopup
   ============================================================ */

/* ── Formulaire global ──────────────────────────────────── */

.cpt-form[b-yuo9h4uv0d] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ── Section avec label + contenu ───────────────────────── */

.cpt-section[b-yuo9h4uv0d] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.cpt-section-label[b-yuo9h4uv0d] {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--mts-primary-500, #155767);
}

/* ── Dates côte à côte ──────────────────────────────────── */

.cpt-dates[b-yuo9h4uv0d] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

/* ── Option semaine entière ─────────────────────────────── */

.cpt-full-week[b-yuo9h4uv0d] {
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, white);
    border: 1px solid var(--mts-primary-100, #c8e5ed);
}

/* ── Liste de classes ───────────────────────────────────── */

.cpt-classes-header[b-yuo9h4uv0d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.cpt-classroom-list[b-yuo9h4uv0d] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.35rem 1rem;
    max-height: 160px;
    overflow-y: auto;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 3%, white);
    border: 1px solid var(--mts-primary-100, #c8e5ed);
}

.cpt-classroom-item[b-yuo9h4uv0d] {
    min-width: 0;
    overflow: hidden;
}
/* /UIComponents/Popups/SchoolResponsabilities/CreateSchoolResponsabilityPopup.razor.rz.scp.css */
/* ============================================================
   CreateSchoolResponsabilityPopup
   ============================================================ */

.csr-form[b-fozttuz3hx] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ── Ligne libellé + couleur ─────────────────────────────── */

.csr-row[b-fozttuz3hx] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.75rem;
    align-items: end;
}

.csr-color-field[b-fozttuz3hx] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    align-items: center;
}

.csr-color-input[b-fozttuz3hx] {
    width: 3rem;
    height: 2.6rem;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    padding: 2px;
    cursor: pointer;
    background: none;
}

/* ── Champ générique ────────────────────────────────────── */

.csr-field[b-fozttuz3hx] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.csr-label[b-fozttuz3hx] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #475569;
}

/* ── Jours ──────────────────────────────────────────────── */

.csr-days[b-fozttuz3hx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1.2rem;
    padding: 0.5rem 0.25rem;
}

/* ── Heure ──────────────────────────────────────────────── */

.csr-time-input[b-fozttuz3hx] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 0.45rem 0.7rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    width: fit-content;
    cursor: pointer;
    font-family: inherit;
}

.csr-time-input:focus[b-fozttuz3hx] {
    outline: 2px solid var(--mts-primary-400, #3a9aac);
    outline-offset: 1px;
    border-color: transparent;
}

/* ── Slider durée ───────────────────────────────────────── */

.csr-range[b-fozttuz3hx] {
    width: 100%;
    accent-color: var(--mts-primary-600, #124e5d);
    cursor: pointer;
    height: 4px;
}

.csr-range-labels[b-fozttuz3hx] {
    display: flex;
    justify-content: space-between;
    font-size: 0.7rem;
    color: #94a3b8;
    padding: 0 2px;
}
/* /UIComponents/Popups/SchoolResponsabilities/EditSchoolResponsabilityItemPopup.razor.rz.scp.css */
/* ============================================================
   EditSchoolResponsabilityItemPopup
   ============================================================ */

.esri-form[b-gjkcdqr9ux] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.esri-field[b-gjkcdqr9ux] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.esri-label[b-gjkcdqr9ux] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #475569;
}

/* ── Recherche utilisateur ──────────────────────────────── */

.esri-search[b-gjkcdqr9ux] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 0.4rem 0.65rem;
    font-size: 0.88rem;
    width: 100%;
    font-family: inherit;
}

.esri-search:focus[b-gjkcdqr9ux] {
    outline: 2px solid var(--mts-primary-400, #3a9aac);
    outline-offset: 1px;
    border-color: transparent;
}

/* ── Liste utilisateurs ─────────────────────────────────── */

.esri-user-list[b-gjkcdqr9ux] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.3rem 1rem;
    max-height: 180px;
    overflow-y: auto;
    padding: 0.5rem 0.6rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fafafa;
}

/* ── Zone texte informations ────────────────────────────── */

.esri-textarea[b-gjkcdqr9ux] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 0.5rem 0.65rem;
    font-size: 0.9rem;
    resize: vertical;
    width: 100%;
    font-family: inherit;
    min-height: 80px;
    color: #1e293b;
}

.esri-textarea:focus[b-gjkcdqr9ux] {
    outline: 2px solid var(--mts-primary-400, #3a9aac);
    outline-offset: 1px;
    border-color: transparent;
}
/* /UIComponents/Popups/WorkTrackings/CreateWorkTrackingSubjectSkillPopup.razor.rz.scp.css */
.cwss-groups[b-ug8r00q5pl] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.cwss-chip[b-ug8r00q5pl] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.65rem;
    border-radius: 999px;
    border: 2px solid #d1d5db;
    background: #f3f4f6;
    color: #111827;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.cwss-chip:hover[b-ug8r00q5pl] {
    border-color: #9ca3af;
}

.cwss-chip--active[b-ug8r00q5pl] {
    border-width: 2px;
}

.cwss-chip-dot[b-ug8r00q5pl] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    border: 1.5px solid rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.cwss-chip--active .cwss-chip-dot[b-ug8r00q5pl] {
    border-color: rgba(255, 255, 255, 0.3);
}
/* /UIComponents/Templates/Classrooms/ClassroomItem.razor.rz.scp.css */
/* ============================================================
   ClassroomItem — carte fond primary + accent doré
   (même esprit que PlanifiedTaskItem)
   ============================================================ */

.ci-wrapper[b-3nev2hj24f] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.3rem 0.5rem;
}

/* ── Carte principale ───────────────────────────────────── */

.ci-card[b-3nev2hj24f] {
    display: flex;
    align-items: stretch;
    flex: 1 1 0;
    min-width: 0;
    min-height: 72px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    overflow: hidden;
    transition: box-shadow 0.15s, background 0.15s;
    position: relative;
}

.ci-card:hover[b-3nev2hj24f] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.ci-card--selected[b-3nev2hj24f] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.28);
}

/* ── Corps (label + meta) ───────────────────────────────── */

.ci-body[b-3nev2hj24f] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.2rem;
    padding: 0 0.85rem;
}

.ci-body--with-indicator[b-3nev2hj24f] {
    padding-left: 2.5rem;
}

.ci-label[b-3nev2hj24f] {
    font-size: 1.05rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
    line-height: 1.2;
    word-break: break-word;
}

.ci-card--selected .ci-label[b-3nev2hj24f] {
    color: var(--mts-secondary-300, #e8bc3a);
}

/* ── Meta : élèves + badge assigné ─────────────────────── */

.ci-meta[b-3nev2hj24f] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ci-meta-chip[b-3nev2hj24f] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.72rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
}


/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.ci-edit-btn[b-3nev2hj24f] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.92rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ci-edit-btn:hover[b-3nev2hj24f] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/Classrooms/ClassroomList.razor.rz.scp.css */
/* /UIComponents/Templates/EmergencyDistributions/ClassroomDispositionItemComponent.razor.rz.scp.css */
/* ============================================================
   ClassroomDispositionItemComponent
   ============================================================ */

.cdi[b-cwpen5c2e7] {
    display: flex;
    flex-direction: column;
    min-width: 220px;
    max-width: 220px;
    min-height: 260px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--mts-primary-200, #9eccd8);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.09);
    transition: opacity 0.2s ease, box-shadow 0.2s ease;
}

.cdi:hover[b-cwpen5c2e7] {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.13);
}

/* Classe désactivée */
.cdi--inactive[b-cwpen5c2e7] {
    opacity: 0.5;
}

/* Classe d'origine (source du glisser-déposer) */
.cdi--source[b-cwpen5c2e7] {
    opacity: 0.45;
    border-style: dashed;
}

/* ── Header ─────────────────────────────────────────────── */

.cdi__header[b-cwpen5c2e7] {
    background-color: var(--mts-primary-600, #124e5d);
    color: white;
    padding: 0.55rem 0.65rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    min-height: 50px;
}

.cdi__header-left[b-cwpen5c2e7] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.cdi__class-name[b-cwpen5c2e7] {
    font-size: 1.1rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Badge "origine" affiché sur la classe source */
.cdi__source-badge[b-cwpen5c2e7] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: rgba(255, 255, 255, 0.55);
}

.cdi__header-right[b-cwpen5c2e7] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    flex-shrink: 0;
}

/* ── Compteur de capacité ───────────────────────────────── */

.cdi__capacity[b-cwpen5c2e7] {
    background-color: rgba(255, 255, 255, 0.16);
    color: white;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.1rem 0.45rem;
    border-radius: 6px;
    white-space: nowrap;
}

.cdi__capacity--full[b-cwpen5c2e7] {
    background-color: var(--mts-secondary-500, #b8860b);
}

.cdi__capacity-sep[b-cwpen5c2e7] {
    opacity: 0.5;
    margin: 0 1px;
    font-weight: 400;
}

/* ── Boutons +/- capacité ───────────────────────────────── */

.cdi__cap-btn[b-cwpen5c2e7] {
    background: rgba(255, 255, 255, 0.1);
    border: none;
    color: white;
    border-radius: 5px;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background 0.15s;
    padding: 0;
}

.cdi__cap-btn:hover[b-cwpen5c2e7] {
    background: rgba(255, 255, 255, 0.25);
}

/* ── Bouton crayon (toggle édition) ─────────────────────── */

.cdi__edit-toggle[b-cwpen5c2e7] {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.65);
    border-radius: 6px;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    padding: 0;
}

.cdi__edit-toggle:hover[b-cwpen5c2e7],
.cdi__edit-toggle--active[b-cwpen5c2e7] {
    background: var(--mts-secondary-500, #b8860b);
    border-color: transparent;
    color: white;
}

/* ── Barre d'édition ────────────────────────────────────── */

.cdi__edit-bar[b-cwpen5c2e7] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.5rem;
    background-color: color-mix(in srgb, var(--mts-primary-600, #124e5d) 7%, white);
    border-bottom: 1px solid var(--mts-primary-100, #d0eaf0);
}

.cdi__edit-btn[b-cwpen5c2e7] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.18rem 0.45rem;
    border-radius: 5px;
    border: none;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.cdi__edit-btn i[b-cwpen5c2e7] {
    font-size: 0.85rem;
}

.cdi__edit-btn--on[b-cwpen5c2e7] {
    background: color-mix(in srgb, var(--mts-primary-600, #124e5d) 12%, white);
    color: var(--mts-primary-700, #0e3f4a);
}

.cdi__edit-btn--off[b-cwpen5c2e7] {
    background: #f1f5f9;
    color: #94a3b8;
}

/* ── Corps / zone de dépôt ──────────────────────────────── */

.cdi__body[b-cwpen5c2e7] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
    padding: 0.45rem;
    background-color: #f8fafc;
    overflow-y: auto;
    min-height: 80px;
}

.cdi__body--disabled[b-cwpen5c2e7] {
    background-color: #e2e8f0;
    opacity: 0.5;
}

/* ── État vide (invitation au dépôt) ────────────────────── */

.cdi__drop-hint[b-cwpen5c2e7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    flex: 1;
    color: #94a3b8;
    font-size: 0.74rem;
    padding: 1rem 0;
    text-align: center;
    border: 1.5px dashed #cbd5e1;
    border-radius: 7px;
    margin: 0.1rem;
}

.cdi__drop-hint i[b-cwpen5c2e7] {
    font-size: 1.3rem;
    opacity: 0.5;
}

/* ── Pill élève ─────────────────────────────────────────── */

.cdi__student[b-cwpen5c2e7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.3rem;
    padding: 0.25rem 0.3rem 0.25rem 0.5rem;
    border-radius: 7px;
    border: 1px solid var(--mts-primary-100, #d0eaf0);
    background: white;
    cursor: grab;
    transition: background 0.12s ease;
}

.cdi__student:hover[b-cwpen5c2e7] {
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, white);
}

/* Chef de groupe : bordure ambrée */
.cdi__student--leader[b-cwpen5c2e7] {
    border-color: var(--mts-secondary-400, #d4a017);
    background: color-mix(in srgb, var(--mts-secondary-400, #d4a017) 7%, white);
}

.cdi__student-left[b-cwpen5c2e7] {
    display: flex;
    align-items: baseline;
    gap: 0.2rem;
    min-width: 0;
    overflow: hidden;
}

.cdi__student-name[b-cwpen5c2e7] {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--mts-primary-700, #0e3f4a);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cdi__student-last[b-cwpen5c2e7] {
    font-size: 0.73rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #475569;
    white-space: nowrap;
    flex-shrink: 0;
}

.cdi__sibling-icon[b-cwpen5c2e7] {
    font-size: 0.68rem;
    color: var(--mts-primary-400, #3a9aac);
    flex-shrink: 0;
    align-self: center;
}

.cdi__student-actions[b-cwpen5c2e7] {
    display: flex;
    align-items: center;
    gap: 0;
    flex-shrink: 0;
}

/* Bouton étoile (chef de groupe) */
.cdi__leader-btn[b-cwpen5c2e7] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 2px 4px;
    font-size: 0.78rem;
    color: #cbd5e1;
    transition: color 0.15s;
    line-height: 1;
    display: flex;
    align-items: center;
}

.cdi__leader-btn:hover[b-cwpen5c2e7] {
    color: var(--mts-secondary-400, #d4a017);
}

.cdi__leader-btn--active[b-cwpen5c2e7] {
    color: var(--mts-secondary-400, #d4a017);
}

/* Bouton suppression */
.cdi__remove-btn[b-cwpen5c2e7] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 2px 3px;
    font-size: 1rem;
    color: #cbd5e1;
    transition: color 0.15s;
    line-height: 1;
    display: flex;
    align-items: center;
}

.cdi__remove-btn:hover[b-cwpen5c2e7] {
    color: #dc2626;
}
/* /UIComponents/Templates/EmergencyDistributions/SessionSelectorComponent.razor.rz.scp.css */
/* ============================================================
   SessionSelectorComponent
   ============================================================ */

.ssc[b-uf22skdwx2] {
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--mts-primary-600, #124e5d);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

/* ── En-tête DS ─────────────────────────────────────────── */

.ssc__header[b-uf22skdwx2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.8rem;
    background-color: var(--mts-primary-600, #124e5d);
}

.ssc__header-icon[b-uf22skdwx2] {
    font-size: 1rem;
    color: var(--mts-secondary-400, #d4a017);
    flex-shrink: 0;
}

.ssc__header-title[b-uf22skdwx2] {
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
}

/* ── Corps ──────────────────────────────────────────────── */

.ssc__body[b-uf22skdwx2] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 0.85rem 0.8rem;
    background: white;
}

/* ── Boutons d'action ───────────────────────────────────── */

.ssc__actions[b-uf22skdwx2] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}
/* /UIComponents/Templates/Evaluations/EvaluationItem.razor.rz.scp.css */
.ei-card[b-ge0qw1e7sn] {
    display: flex;
    align-items: stretch;
    min-height: 64px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    overflow: hidden;
    transition: box-shadow 0.15s, background 0.15s;
    position: relative;
    margin: 0.2rem 0.5rem;
}

.ei-card:hover[b-ge0qw1e7sn] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.ei-card--selected[b-ge0qw1e7sn] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.28);
}

.ei-body[b-ge0qw1e7sn] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.2rem;
    padding: 0.5rem 0.85rem;
}

.ei-body--with-indicator[b-ge0qw1e7sn] {
    padding-left: 2.5rem;
}

.ei-label[b-ge0qw1e7sn] {
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
    line-height: 1.2;
    word-break: break-word;
}

.ei-card--selected .ei-label[b-ge0qw1e7sn] {
    color: var(--mts-secondary-300, #e8bc3a);
}

.ei-meta[b-ge0qw1e7sn] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.3rem;
}

.ei-author[b-ge0qw1e7sn] {
    font-size: 0.72rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.5);
    font-style: italic;
}

.ei-edit-btn[b-ge0qw1e7sn] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.92rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ei-edit-btn:hover[b-ge0qw1e7sn] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/Evaluations/EvaluationQuestion/EvaluationQuestionItem.razor.rz.scp.css */
/* Dimensions communes : mêmes en mode édition et lecture */

.eqi-input[b-zqv28cppmv],
.eqi-display[b-zqv28cppmv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 30px;
    box-sizing: border-box;
}

/* ── Champ MaxPoints (mode édition) ──────────────────── */

.eqi-input[b-zqv28cppmv] {
    padding: 0 0.35rem;
    border: 2px solid #155767;
    border-radius: 6px;
    background: #fff;
    color: #0e3f4a;
    font-size: 0.82rem;
    font-weight: 700;
    text-align: center;
    outline: none;
    cursor: text;
    transition: border-color 0.12s, box-shadow 0.12s;
}

.eqi-input:focus[b-zqv28cppmv] {
    border-color: #155767;
    box-shadow: 0 0 0 3px rgba(21, 87, 103, 0.2);
}

/* ── Lecture seule ─────────────────────────────────── */

.eqi-display[b-zqv28cppmv] {
    padding: 0 0.5rem;
    border-radius: 999px;
    background: var(--mts-primary-600, #124e5d);
    color: rgba(255,255,255,0.8);
    font-size: 0.75rem;
    font-weight: 600;
    font-style: italic;
}
/* /UIComponents/Templates/Evaluations/EvaluationSkills/EvaluationSkillTableItem.razor.rz.scp.css */
/* ── Carte compétence ─────────────────────────────────── */

.est-card[b-ine4scqcpn] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    padding: 0.35rem 0.8rem;
    background: linear-gradient(135deg, #0e3f4a 0%, #155767 60%, #1a7080 100%);
    border-radius: 10px;
    min-width: 110px;
    min-height: 64px;
    box-shadow: 0 2px 8px rgba(21, 87, 103, 0.18);
}

/* Mode édition : fond clair, taille libre */
.est-card--editing[b-ine4scqcpn] {
    background: #f0f4f6;
    box-shadow: 0 0 0 2px #155767;
    padding: 0.45rem 0.65rem;
    min-width: 170px;
}

/* ── Label et points ──────────────────────────────────── */

.est-label[b-ine4scqcpn] {
    font-size: 0.75rem;
    font-weight: 800;
    color: #fff;
    text-align: center;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
}

.est-max-pts[b-ine4scqcpn] {
    font-size: 0.63rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
}

.est-edit-hint[b-ine4scqcpn] {
    font-size: 0.58rem;
    color: rgba(255, 255, 255, 0.4);
    margin-top: 0.05rem;
}

/* ── Zone cliquable en mode édition (non-editing) ────── */

.est-card-inner[b-ine4scqcpn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.1rem;
    border: none;
    background: none;
    padding: 0.12rem 0.3rem;
    color: inherit;
    border-radius: 7px;
    width: 100%;
}

button.est-card-inner[b-ine4scqcpn] {
    cursor: pointer;
    transition: background 0.12s;
}

button.est-card-inner:hover[b-ine4scqcpn] {
    background: rgba(255, 255, 255, 0.15);
}

/* ── Formulaire d'édition ─────────────────────────────── */

.est-edit-row[b-ine4scqcpn] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.3rem;
    width: 100%;
}

.est-edit-actions[b-ine4scqcpn] {
    display: flex;
    justify-content: center;
    gap: 0.3rem;
}
/* /UIComponents/Templates/Evaluations/EvaluationStudentScore/EvaluationStudentScoreItem.razor.rz.scp.css */
.essi-input[b-c4j6t8k0yy] {
    width: 58px;
    height: 30px;
    padding: 0 0.25rem;
    border: 1.5px solid #d1d5db;
    border-radius: 8px;
    background: #fff;
    color: #111827;
    font-size: 0.85rem;
    font-weight: 600;
    text-align: center;
    outline: none;
    display: block;
    transition: border-color 0.12s, box-shadow 0.12s;
}

.essi-input:focus[b-c4j6t8k0yy] {
    border-color: var(--mts-primary-500, #155767);
    box-shadow: 0 0 0 3px rgba(21, 87, 103, 0.15);
}

.essi-label[b-c4j6t8k0yy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 30px;
    padding: 0 0.5rem;
    border-radius: 6px;
    background: #f3f4f6;
    font-size: 0.82rem;
    font-weight: 700;
    color: #374151;
}
/* /UIComponents/Templates/ExtracurricularActivies/ExtracurricularActivityItemComponent.razor.rz.scp.css */
/* ============================================================
   ExtracurricularActivityItemComponent
   Panneau de détail d'une activité : header + grille de créneaux
   ============================================================ */

/* ── Panneau global ─────────────────────────────────────── */

.eai-panel[b-9rcop8yqp9] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 4%, white);
}

/* ── Header activité ────────────────────────────────────── */

.eai-panel-header[b-9rcop8yqp9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 2.75rem;
    padding: 0 1rem;
    background: var(--mts-primary-600, #124e5d);
    flex-shrink: 0;
}

.eai-panel-title[b-9rcop8yqp9] {
    flex: 1 1 0;
    min-width: 0;
    color: white;
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 0;
}

.eai-rename-wrap[b-9rcop8yqp9] {
    flex: 1 1 0;
    min-width: 0;
}

.eai-rename-wrap[b-9rcop8yqp9]  .mts-field__input {
    border-color: rgba(255, 255, 255, 0.3) !important;
    font-weight: 700;
    font-size: 0.95rem;
}

.eai-panel-header-right[b-9rcop8yqp9] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-shrink: 0;
}

.eai-panel-total[b-9rcop8yqp9] {
    font-size: 0.78rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 0.3rem;
    letter-spacing: 0.01em;
}

/* Bouton icône dans le header (fond sombre) */
.eai-hdr-btn[b-9rcop8yqp9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.15);
    color: white;
    font-size: 0.78rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.eai-hdr-btn:hover[b-9rcop8yqp9] {
    background: rgba(255, 255, 255, 0.28);
}

/* ── Zone de créneaux ───────────────────────────────────── */

.eai-slots-area[b-9rcop8yqp9] {
    flex: 1 1 0;
    min-height: 0;
    overflow: auto;
    padding: 0.75rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    align-content: start;
    gap: 0.75rem;
}

/* ── Carte créneau ──────────────────────────────────────── */

.eai-slot-card[b-9rcop8yqp9] {
    display: flex;
    flex-direction: column;
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, white);
    border: 1px solid var(--mts-primary-100, #c8e5ed);
    border-top: 3px solid var(--mts-secondary-500, #b8860b);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(21, 87, 103, 0.06);
    transition: box-shadow 0.15s, border-color 0.15s;
    align-self: start;
}

.eai-slot-card--dragover[b-9rcop8yqp9] {
    border-color: var(--mts-primary-500, #155767) !important;
    border-top-color: var(--mts-primary-500, #155767) !important;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--mts-primary-500, #155767) 30%, transparent);
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 3%, white);
}

/* Header du créneau */
.eai-slot-head[b-9rcop8yqp9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem;
    padding: 0.45rem 0.6rem;
    background: var(--mts-primary-600, #124e5d);
    border-bottom: none;
    flex-shrink: 0;
}

.eai-slot-info[b-9rcop8yqp9] {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
    min-width: 0;
}

.eai-slot-day[b-9rcop8yqp9] {
    font-size: 0.95rem;
    font-weight: 700;
    color: white;
    white-space: nowrap;
}

.eai-slot-time[b-9rcop8yqp9] {
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.72);
    white-space: nowrap;
}

.eai-slot-badge[b-9rcop8yqp9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 1.5rem;
    padding: 0 0.35rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.2);
    color: white;
    font-size: 0.72rem;
    font-weight: 700;
    flex-shrink: 0;
}

/* Bouton suppression créneau */
.eai-slot-delete-btn[b-9rcop8yqp9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.4rem;
    height: 1.4rem;
    padding: 0;
    border: none;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.62rem;
    cursor: pointer;
    transition: background 0.12s, color 0.12s;
    flex-shrink: 0;
}

.eai-slot-delete-btn:hover[b-9rcop8yqp9] {
    background: rgba(220, 38, 38, 0.75);
    color: white;
}

/* ── Indicateur de drop ─────────────────────────────────── */

.eai-drop-hint[b-9rcop8yqp9] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    margin: 0.35rem 0.4rem;
    padding: 0.35rem 0.5rem;
    border: 1.5px dashed color-mix(in srgb, var(--mts-primary-300, #5aafc3) 50%, transparent);
    border-radius: 6px;
    color: color-mix(in srgb, var(--mts-primary-400, #3a8fa0) 60%, transparent);
    font-size: 0.8rem;
    transition: all 0.15s;
}

.eai-drop-hint--active[b-9rcop8yqp9] {
    border-color: var(--mts-primary-500, #155767);
    color: var(--mts-primary-500, #155767);
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 6%, white);
}

/* ── Liste élèves ───────────────────────────────────────── */

.eai-student-list[b-9rcop8yqp9] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.3rem 0.4rem 0.4rem;
}

/* ── Pill élève ─────────────────────────────────────────── */

.eai-student[b-9rcop8yqp9] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.4rem;
    border-radius: 5px;
    border: 1px solid color-mix(in srgb, var(--mts-primary-400, #3a8fa0) 30%, transparent);
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 11%, white);
    font-size: 0.875rem;
    color: var(--mts-primary-700, #0e3f4a);
    cursor: grab;
    transition: background 0.12s, border-color 0.12s;
    min-width: 0;
}

.eai-student:hover[b-9rcop8yqp9] {
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 17%, white);
    border-color: color-mix(in srgb, var(--mts-primary-400, #3a8fa0) 50%, transparent);
}

.eai-student--pending[b-9rcop8yqp9] {
    opacity: 0.6;
}

.eai-student-drag[b-9rcop8yqp9] {
    font-size: 0.75rem;
    color: var(--mts-primary-200, #9eccd8);
    flex-shrink: 0;
}

.eai-student-names[b-9rcop8yqp9] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    gap: 0.25rem;
    align-items: baseline;
    overflow: hidden;
}

.eai-student-first[b-9rcop8yqp9] {
    font-weight: 700;
    color: cornflowerblue;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.eai-student-last[b-9rcop8yqp9] {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.8rem;
    white-space: nowrap;
    color: #000;
    flex-shrink: 0;
}

.eai-student-class[b-9rcop8yqp9] {
    font-size: 0.72rem;
    font-weight: 700;
    color: color-mix(in srgb, var(--mts-secondary-500, #b8860b) 85%, #000);
    background: color-mix(in srgb, var(--mts-secondary-500, #b8860b) 12%, white);
    border: 1px solid color-mix(in srgb, var(--mts-secondary-500, #b8860b) 30%, transparent);
    border-radius: 3px;
    padding: 0.06rem 0.3rem;
    white-space: nowrap;
    flex-shrink: 0;
}

.eai-remove-btn[b-9rcop8yqp9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    padding: 0;
    border: none;
    border-radius: 3px;
    background: transparent;
    color: #94a3b8;
    font-size: 0.58rem;
    cursor: pointer;
    transition: color 0.15s, background 0.15s;
    flex-shrink: 0;
}

.eai-remove-btn:hover[b-9rcop8yqp9] {
    background: #fef2f2;
    color: #dc2626;
}

.eai-spinner[b-9rcop8yqp9] {
    width: 0.7rem;
    height: 0.7rem;
    border-width: 0.1em;
    flex-shrink: 0;
    color: var(--mts-primary-400, #3a8fa0);
}

/* ── Carte "+" ajout créneau ────────────────────────────── */

.eai-slot-add-btn[b-9rcop8yqp9] {
    min-height: 120px;
    background: transparent;
    border: 2px dashed var(--mts-primary-200, #9eccd8);
    border-radius: 8px;
    color: var(--mts-primary-400, #3a8fa0);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    font-size: 0.9rem;
    transition: all 0.15s;
    align-self: start;
}

.eai-slot-add-btn:hover[b-9rcop8yqp9] {
    background: color-mix(in srgb, var(--mts-primary-500, #155767) 5%, white);
    border-color: var(--mts-primary-400, #3a8fa0);
    color: var(--mts-primary-600, #124e5d);
}

/* ── Carte formulaire ajout créneau ─────────────────────── */

.eai-slot-form-card[b-9rcop8yqp9] {
    align-self: start;
}

.eai-slot-head--form[b-9rcop8yqp9] {
    background: color-mix(in srgb, var(--mts-primary-600, #124e5d) 70%, var(--mts-secondary-500, #b8860b));
}

.eai-add-form[b-9rcop8yqp9] {
    padding: 0.6rem 0.55rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.eai-add-form-times[b-9rcop8yqp9] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem;
}

.eai-form-error[b-9rcop8yqp9] {
    font-size: 0.72rem;
    color: #dc2626;
    margin: 0;
}
/* /UIComponents/Templates/PlanifiedTasks/PlanifiedTaskItem.razor.rz.scp.css */
/* ============================================================
   PlanifiedTaskItem — carte fond primary + accent doré
   ============================================================ */

.pti-wrapper[b-h9e98ao3qg] {
    padding: 0.3rem 0.5rem;
}

.pti-card[b-h9e98ao3qg] {
    display: flex;
    align-items: stretch;
    min-height: 64px;
    border-radius: 8px;
    background: var(--mts-primary-600, #124e5d);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
    cursor: pointer;
    transition: background 0.15s, box-shadow 0.15s, outline 0.1s;
    overflow: hidden;
    position: relative;
}

.pti-card:hover[b-h9e98ao3qg] {
    background: var(--mts-primary-500, #155767);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.22);
}

.pti-card--selected[b-h9e98ao3qg] {
    background: var(--mts-primary-700, #0e3f4a);
    outline: 3px solid var(--important-color);
    outline-offset: 0px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.32);
}

/* ── Label ──────────────────────────────────────────────── */

.pti-label[b-h9e98ao3qg] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.75rem;
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
    line-height: 1.2;
    word-break: break-word;
    text-align: center;
}

.pti-card--selected .pti-label[b-h9e98ao3qg] {
    color: var(--mts-secondary-300, #e8bc3a);
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.pti-edit-btn[b-h9e98ao3qg] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.pti-edit-btn:hover[b-h9e98ao3qg] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/SchoolResponsabilities/SchoolResponsabilityItemComponent.razor.rz.scp.css */
/* ============================================================
   SchoolResponsabilityItemComponent — carte couleur custom DS
   ============================================================ */

.sri-wrapper[b-ftwjdo9lyj] {
    padding: 0.3rem 0.5rem;
}

.sri-card[b-ftwjdo9lyj] {
    display: flex;
    align-items: stretch;
    min-height: 64px;
    border-radius: 8px;
    background: var(--sri-bg, #124e5d);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.15s;
}

.sri-card:hover[b-ftwjdo9lyj] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.22);
}

/* ── Corps centré ───────────────────────────────────────── */

.sri-body[b-ftwjdo9lyj] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0.35rem 0.6rem;
    gap: 0.15rem;
}

.sri-label[b-ftwjdo9lyj] {
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-align: center;
    line-height: 1.2;
    word-break: break-word;
}

.sri-time[b-ftwjdo9lyj] {
    font-size: 0.72rem;
    font-weight: 500;
    opacity: 0.72;
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.sri-edit-btn[b-ftwjdo9lyj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.sri-edit-btn:hover[b-ftwjdo9lyj] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/StudentGroups/StudentGroupPickerComponent.razor.rz.scp.css */
.sgp-chips[b-yeje8cz5rm] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

/* ── Chip base ─────────────────────────────────────────── */

.sgp-chip[b-yeje8cz5rm] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.4rem;
    border-radius: 0.5rem;
    border: 2px solid #d1d5db;
    background: #f9fafb;
    font-size: 0.82rem;
    font-weight: 600;
    color: #6b7280;
    cursor: pointer;
    transition: border-color 0.12s, background-color 0.12s, color 0.12s;
    user-select: none;
    line-height: 1;
}

.sgp-chip:hover[b-yeje8cz5rm] {
    border-color: #9ca3af;
    background: #f3f4f6;
    color: #374151;
}

.sgp-chip--selected[b-yeje8cz5rm] {
    color: #111827;
    font-weight: 700;
}

.sgp-chip--selected:hover[b-yeje8cz5rm] {
    filter: brightness(0.97);
}

/* ── Pastille couleur ──────────────────────────────────── */

.sgp-chip-swatch[b-yeje8cz5rm] {
    width: 10px;
    height: 10px;
    border-radius: 3px;
    flex-shrink: 0;
}

/* ── Label ─────────────────────────────────────────────── */

.sgp-chip-label[b-yeje8cz5rm] {
    flex: 1 1 auto;
}

/* ── Indicateur de sélection (cercle) ─────────────────── */

.sgp-chip-indicator[b-yeje8cz5rm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1.5px solid #d1d5db;
    background: white;
    color: transparent;
    font-size: 0.65rem;
    flex-shrink: 0;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.sgp-chip-indicator--checked[b-yeje8cz5rm] {
    color: white;
}
/* /UIComponents/Templates/StudentGroups/StudentGroupTagItem.razor.rz.scp.css */
body[b-1pydl9rf7k] {
}
/* /UIComponents/Templates/Students/StudentEvaluationItem.razor.rz.scp.css */
/* ── Ligne élève ──────────────────────────────────────── */

.sei-row[b-5xe92i3svd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.3rem;
    width: 100%;
    min-height: 40px;
}

/* ── Nom ─────────────────────────────────────────────── */

.sei-name[b-5xe92i3svd] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}

.sei-name-line[b-5xe92i3svd] {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.3rem;
    min-width: 0;
}

.sei-last-name[b-5xe92i3svd] {
    font-size: 0.82rem;
    font-weight: 800;
    color: #111827;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 0;
}

.sei-first-name[b-5xe92i3svd] {
    font-size: 0.78rem;
    font-weight: 600;
    color: cornflowerblue;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Zone option (droite) ────────────────────────────── */

.sei-option[b-5xe92i3svd] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

/* Bouton circulaire (mode édition) */
.sei-option-btn[b-5xe92i3svd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1.5px solid #d1d5db;
    border-radius: 50%;
    background: #f9fafb;
    color: #6b7280;
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.sei-option-btn:hover[b-5xe92i3svd] {
    background: #e5e7eb;
    color: #111827;
}

.sei-option-btn.absent[b-5xe92i3svd] {
    background: var(--important-color, #e53e3e);
    border-color: var(--important-color, #e53e3e);
    color: #fff;
}

.sei-option-btn.not-evaluated[b-5xe92i3svd] {
    background: var(--secondary-color, #718096);
    border-color: var(--secondary-color, #718096);
    color: #fff;
}

/* Icône statut (mode lecture) — même taille que le bouton */
.sei-status-icon[b-5xe92i3svd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 0.8rem;
    color: #fff;
}

.sei-status-icon.absent[b-5xe92i3svd] {
    background: var(--important-color, #e53e3e);
}

.sei-status-icon.not-evaluated[b-5xe92i3svd] {
    background: var(--secondary-color, #718096);
}

/* Aucune option en mode lecture : espace réservé invisible */
.sei-status-icon--empty[b-5xe92i3svd] {
    visibility: hidden;
}
/* /UIComponents/Templates/Students/StudentWorkTrackingItem.razor.rz.scp.css */
/* ── Carte élève ─────────────────────────────────────── */

.swti-card[b-4d81z9xqfi] {
    display: flex;
    align-items: stretch;
    min-height: 52px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
    cursor: pointer;
    overflow: hidden;
    transition: box-shadow 0.15s, background 0.15s;
}

.swti-card:hover[b-4d81z9xqfi] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.26);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.swti-card--selected[b-4d81z9xqfi] {
    outline: 3px solid var(--important-color, #e5b00b);
    outline-offset: 0;
    box-shadow: 0 0 10px rgba(229, 176, 11, 0.22), 0 4px 12px rgba(0, 0, 0, 0.26);
}

/* ── Corps ───────────────────────────────────────────── */

.swti-body[b-4d81z9xqfi] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.25rem;
    padding: 0.4rem 0.75rem;
    min-width: 0;
}

/* ── Nom ─────────────────────────────────────────────── */

.swti-name-line[b-4d81z9xqfi] {
    display: flex;
    align-items: baseline;
    gap: 0.35rem;
    min-width: 0;
}

.swti-last-name[b-4d81z9xqfi] {
    font-size: 0.88rem;
    font-weight: 800;
    color: rgba(255, 255, 255, 0.95);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 0;
}

.swti-first-name[b-4d81z9xqfi] {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--mts-secondary-400, #d4a017);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Tags de groupe ──────────────────────────────────── */

.swti-groups[b-4d81z9xqfi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}
/* /UIComponents/Templates/Tickets/Lists/DailyEventsItems/CareSheetItem.razor.rz.scp.css */
/* Rangée d’icônes — visible et sobre */
.care-icons-row[b-g4gi4tvwv2] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: .4rem;
}

.care-icon[b-g4gi4tvwv2] {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid rgba(0,0,0,.08);
    background: rgba(var(--primary-color-rgb, 21,87,103), .06);
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.7);
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

    .care-icon i[b-g4gi4tvwv2] {
        font-size: 18px;
        line-height: 1;
        opacity: .95;
    }

    .care-icon:hover[b-g4gi4tvwv2] {
        transform: translateY(-1px) scale(1.2);
        border-color: rgba(0,0,0,.12);
    }

/* Accent visuel pour “Autre” (icône + ligne dédiée) */
.care-icon--other[b-g4gi4tvwv2] {
    background: rgba(var(--secondary-color-rgb, 184,134,11), .12);
    border-color: rgba(var(--secondary-color-rgb, 184,134,11), .45);
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.8), 0 0 0 2px rgba(var(--secondary-color-rgb, 184,134,11), .18);
}

.care-other[b-g4gi4tvwv2] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding-left: .25rem;
    border-left: 3px solid var(--secondary-color, #b8860b); /* lien visuel “Autre” ↔ texte */
}

.care-other-label[b-g4gi4tvwv2] {
    font-weight: 600;
    color: var(--secondary-color, #b8860b);
}

/* Commentaire : simple mais explicite */
.care-comment-label[b-g4gi4tvwv2] {
    font-weight: 600;
    opacity: .85;
    margin-right: .3rem;
}

.care-comment-text[b-g4gi4tvwv2] {
    opacity: .98;
}

/* Auteur en bas à droite (parent déjà position-relative) */
.care-author[b-g4gi4tvwv2] {
    position: static;
    display: block;
    margin-top: .5rem;
    text-align: right;
    opacity: .75;
}
/* /UIComponents/Templates/Timetables/SchoolTimetableItemComponent.razor.rz.scp.css */
/* ============================================================
   SchoolTimetableItemComponent — carte fond primary + accent doré
   (même esprit que ClassroomItem)
   ============================================================ */

.ttl-wrapper[b-7bzmlrw9uj] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.3rem 0.5rem;
}

/* ── Carte principale ───────────────────────────────────── */

.ttl-card[b-7bzmlrw9uj] {
    display: flex;
    align-items: stretch;
    flex: 1 1 0;
    min-width: 0;
    min-height: 58px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.15s, background 0.15s;
}

.ttl-card:hover[b-7bzmlrw9uj] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.ttl-card--selected[b-7bzmlrw9uj] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.28);
}

/* ── Corps (label) ──────────────────────────────────────── */

.ttl-body[b-7bzmlrw9uj] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0.5rem 0.85rem;
}

/* Décale le texte pour ne pas être derrière le triangle de partage */
.ttl-body--with-indicator[b-7bzmlrw9uj] {
    padding-left: 2.5rem;
}

.ttl-label[b-7bzmlrw9uj] {
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
    line-height: 1.25;
    /* 2-line clamp */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    word-break: break-word;
}

.ttl-card--selected .ttl-label[b-7bzmlrw9uj] {
    color: var(--mts-secondary-300, #e8bc3a);
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.ttl-edit-btn[b-7bzmlrw9uj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.92rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ttl-edit-btn:hover[b-7bzmlrw9uj] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/Timetables/TimetableClassroomItem.razor.rz.scp.css */
/* ============================================================
   TimetableClassroomItem — carte colorée (couleur de la classe)
   ============================================================ */

.tci-wrapper[b-i52o8o7dqb] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.25rem 0.5rem;
}

/* ── Carte principale ───────────────────────────────────── */

.tci-card[b-i52o8o7dqb] {
    display: flex;
    align-items: stretch;
    flex: 1 1 0;
    min-width: 0;
    min-height: 48px;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
    cursor: pointer;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.15s, filter 0.15s;
}

.tci-card:hover[b-i52o8o7dqb] {
    filter: brightness(0.94);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.26);
}

.tci-card--selected[b-i52o8o7dqb] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.3), 0 4px 10px rgba(0, 0, 0, 0.26);
}

/* ── Corps (label) ──────────────────────────────────────── */

.tci-body[b-i52o8o7dqb] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.75rem;
}

.tci-label[b-i52o8o7dqb] {
    font-size: 0.88rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-align: center;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.tci-edit-btn[b-i52o8o7dqb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0 8px 8px 0;
    background: rgba(0, 0, 0, 0.22);
    color: white;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
    height: 100%;
}

.tci-edit-btn:hover[b-i52o8o7dqb] {
    background: rgba(0, 0, 0, 0.38);
}
/* /UIComponents/Templates/Timetables/TimetableItemComponent.razor.rz.scp.css */
/* ============================================================
   TimetableItemComponent — carte fond primary + accent doré
   (même esprit que ClassroomItem)
   ============================================================ */

.ttl-wrapper[b-5m3i8dzzv3] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.3rem 0.5rem;
}

/* ── Carte principale ───────────────────────────────────── */

.ttl-card[b-5m3i8dzzv3] {
    display: flex;
    align-items: stretch;
    flex: 1 1 0;
    min-width: 0;
    min-height: 58px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.15s, background 0.15s;
}

.ttl-card:hover[b-5m3i8dzzv3] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.ttl-card--selected[b-5m3i8dzzv3] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.28);
}

/* ── Corps (label) ──────────────────────────────────────── */

.ttl-body[b-5m3i8dzzv3] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0.5rem 0.85rem;
}

/* Décale le texte pour ne pas être derrière le triangle */
.ttl-body--with-indicator[b-5m3i8dzzv3] {
    padding-left: 2.5rem;
}

.ttl-label[b-5m3i8dzzv3] {
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--mts-secondary-400, #d4a017);
    line-height: 1.25;
    /* 2-line clamp */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    word-break: break-word;
}

.ttl-card--selected .ttl-label[b-5m3i8dzzv3] {
    color: var(--mts-secondary-300, #e8bc3a);
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.ttl-edit-btn[b-5m3i8dzzv3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.92rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ttl-edit-btn:hover[b-5m3i8dzzv3] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/Timetables/TimetableSubjectItem.razor.rz.scp.css */
/* ============================================================
   TimetableSubjectItem — carte colorée (couleur de la matière)
   ============================================================ */

.tsi-wrapper[b-l9hlohwnr0] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.25rem 0.5rem;
}

/* ── Carte principale ───────────────────────────────────── */

.tsi-card[b-l9hlohwnr0] {
    display: flex;
    align-items: stretch;
    flex: 1 1 0;
    min-width: 0;
    min-height: 52px;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
    cursor: pointer;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.15s, filter 0.15s;
}

.tsi-card:hover[b-l9hlohwnr0] {
    filter: brightness(0.94);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.26);
}

.tsi-card--selected[b-l9hlohwnr0] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.3), 0 4px 10px rgba(0, 0, 0, 0.26);
}

/* ── Corps (label + durée) ──────────────────────────────── */

.tsi-body[b-l9hlohwnr0] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.1rem;
    padding: 0.4rem 0.75rem;
}

.tsi-label[b-l9hlohwnr0] {
    font-size: 0.88rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-align: center;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.tsi-meta[b-l9hlohwnr0] {
    font-size: 0.72rem;
    font-weight: 600;
    opacity: 0.75;
    text-align: center;
}

/* ── Bouton modifier — pleine hauteur, collé à droite ───── */

.tsi-edit-btn[b-l9hlohwnr0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0 8px 8px 0;
    background: rgba(0, 0, 0, 0.22);
    color: white;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
    height: 100%;
}

.tsi-edit-btn:hover[b-l9hlohwnr0] {
    background: rgba(0, 0, 0, 0.38);
}
/* /UIComponents/Templates/WorkTrackings/SkillResultComponent.razor.rz.scp.css */
.skre-row[b-hzuw8vtiz7] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.3rem 0.6rem;
    transition: background 0.15s;
}

.skre-row:hover[b-hzuw8vtiz7] {
    background: rgba(21, 87, 103, 0.04);
}

.skre-label-area[b-hzuw8vtiz7] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex: 1;
    min-width: 0;
}

.skre-label[b-hzuw8vtiz7] {
    font-size: 0.82rem;
    color: #374151;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /UIComponents/Templates/WorkTrackings/StudentResultByGroupComponent.razor.rz.scp.css */
.srbg-card[b-gblze4psxm] {
    border-radius: 8px;
    overflow: hidden;
    border: 1.5px solid rgba(21, 87, 103, 0.12);
    margin: 0.3rem 0.4rem;
}

.srbg-header[b-gblze4psxm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.3rem 0.4rem 0.3rem 0.65rem;
    min-height: 34px;
    gap: 0.5rem;
}

.srbg-name[b-gblze4psxm] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.srbg-header-right[b-gblze4psxm] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    flex-shrink: 0;
}

.srbg-count[b-gblze4psxm] {
    font-size: 0.68rem;
    font-weight: 700;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 999px;
    padding: 0.1rem 0.4rem;
    white-space: nowrap;
}

.srbg-body[b-gblze4psxm] {
    background: #fff;
}

.srbg-separator[b-gblze4psxm] {
    padding: 0 0.5rem;
}

.srbg-separator hr[b-gblze4psxm] {
    margin: 0.2rem 0;
    opacity: 0.15;
}
/* /UIComponents/Templates/WorkTrackings/StudentResultComponent.razor.rz.scp.css */
.sre-row[b-9i3mx2iphf] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.3rem 0.6rem;
    transition: background 0.15s;
}

.sre-row:hover[b-9i3mx2iphf] {
    background: rgba(21, 87, 103, 0.04);
}

.sre-row--changing[b-9i3mx2iphf] {
    background: rgba(212, 160, 23, 0.1);
}

.sre-name[b-9i3mx2iphf] {
    flex: 1;
    font-size: 0.82rem;
    color: #374151;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /UIComponents/Templates/WorkTrackings/WorkTrackingSubjectByStudentItem.razor.rz.scp.css */
/* ── Carte principale ─────────────────────────────────── */

.wsbsi-card[b-pen485o2h2] {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    border: 1.5px solid rgba(21, 87, 103, 0.15);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
    width: fit-content;
    min-width: 0;
    max-height: 70vh;
    flex-shrink: 0;
}

/* ── En-tête ──────────────────────────────────────────── */

.wsbsi-header[b-pen485o2h2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.6rem 0.55rem 2.4rem;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    flex-shrink: 0;
}

.wsbsi-title[b-pen485o2h2] {
    flex: 1;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--mts-secondary-400, #d4a017);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wsbsi-progress-pill[b-pen485o2h2] {
    font-size: 0.7rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    padding: 0.15rem 0.5rem;
    white-space: nowrap;
    flex-shrink: 0;
    margin-right: 0.5rem;
}

/* ── Barre de progression ─────────────────────────────── */

.wsbsi-progress-track[b-pen485o2h2] {
    height: 4px;
    background: rgba(21, 87, 103, 0.1);
    flex-shrink: 0;
}

.wsbsi-progress-fill[b-pen485o2h2] {
    height: 100%;
    background: var(--mts-secondary-400, #d4a017);
    transition: width 0.4s ease;
}

/* ── Barre d'outils ───────────────────────────────────── */

.wsbsi-toolbar[b-pen485o2h2] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.25rem;
    padding: 0.25rem 0.4rem;
    border-bottom: 1px solid rgba(21, 87, 103, 0.08);
    background: #f7fafb;
    flex-shrink: 0;
}

/* ── Corps scrollable ─────────────────────────────────── */

.wsbsi-body[b-pen485o2h2] {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding: 0.15rem 0;
}

.wsbsi-body[b-pen485o2h2]::-webkit-scrollbar {
    width: 4px;
}

.wsbsi-body[b-pen485o2h2]::-webkit-scrollbar-thumb {
    background: rgba(21, 87, 103, 0.2);
    border-radius: 2px;
}
/* /UIComponents/Templates/WorkTrackings/WorkTrackingSubjectItem.razor.rz.scp.css */
/* ── Wrapper (carte + flèches) ───────────────────────── */

.wsi-wrapper[b-jvwgdm7o0s] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
}

/* ── Carte ───────────────────────────────────────────── */

.wsi-card[b-jvwgdm7o0s] {
    display: flex;
    align-items: stretch;
    min-width: 110px;
    min-height: 60px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    overflow: hidden;
    transition: box-shadow 0.15s, background 0.15s;
    position: relative;
}

.wsi-card:hover[b-jvwgdm7o0s] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
    background: linear-gradient(135deg, var(--mts-primary-500, #155767) 0%, var(--mts-primary-700, #0e3f4a) 100%);
}

.wsi-card--selected[b-jvwgdm7o0s] {
    outline: 3px solid var(--important-color);
    outline-offset: 0;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.28);
}

/* ── Corps ───────────────────────────────────────────── */

.wsi-body[b-jvwgdm7o0s] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.85rem;
    min-width: 0;
}

.wsi-body--with-indicator[b-jvwgdm7o0s] {
    padding-left: 2.2rem;
}

/* ── Label ───────────────────────────────────────────── */

.wsi-label[b-jvwgdm7o0s] {
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--mts-secondary-400, #d4a017);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
}

.wsi-card--selected .wsi-label[b-jvwgdm7o0s] {
    color: var(--mts-secondary-300, #e8bc3a);
}

/* ── Bouton édition ──────────────────────────────────── */

.wsi-edit-btn[b-jvwgdm7o0s] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    padding: 0;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0 8px 8px 0;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.wsi-edit-btn:hover[b-jvwgdm7o0s] {
    background: var(--mts-secondary-400, #d4a017);
}
/* /UIComponents/Templates/WorkTrackings/WorkTrackingSubjectSkillItem.razor.rz.scp.css */
/* ── Carte principale ─────────────────────────────────── */

.wssi-card[b-heabwibzja] {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    border: 1.5px solid rgba(21, 87, 103, 0.15);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
    width: fit-content;
    min-width: 0;
    max-height: 70vh;
    flex-shrink: 0;
}

/* ── En-tête ──────────────────────────────────────────── */

.wssi-header[b-heabwibzja] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.6rem 0.55rem 2.4rem;
    background: linear-gradient(135deg, var(--mts-primary-600, #124e5d) 0%, var(--mts-primary-800, #0a2e37) 100%);
    flex-shrink: 0;
}

.wssi-header-body[b-heabwibzja] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.wssi-title[b-heabwibzja] {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--mts-secondary-400, #d4a017);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wssi-group-tags[b-heabwibzja] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.2rem;
}

.wssi-header-right[b-heabwibzja] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
    padding-right: 0.5rem;
}

.wssi-progress-pill[b-heabwibzja] {
    font-size: 0.7rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    padding: 0.15rem 0.5rem;
    white-space: nowrap;
}

.wssi-edit-btn[b-heabwibzja] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: none;
    border-radius: 6px;
    background: var(--mts-secondary-500, #b8860b);
    color: white;
    font-size: 0.75rem;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
}

.wssi-edit-btn:hover[b-heabwibzja] {
    background: var(--mts-secondary-400, #d4a017);
}

/* ── Barre de progression ─────────────────────────────── */

.wssi-progress-track[b-heabwibzja] {
    height: 4px;
    background: rgba(21, 87, 103, 0.1);
    flex-shrink: 0;
}

.wssi-progress-fill[b-heabwibzja] {
    height: 100%;
    background: var(--mts-secondary-400, #d4a017);
    transition: width 0.4s ease;
}

/* ── Barre d'outils ───────────────────────────────────── */

.wssi-toolbar[b-heabwibzja] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.25rem;
    padding: 0.25rem 0.4rem;
    border-bottom: 1px solid rgba(21, 87, 103, 0.08);
    background: #f7fafb;
    flex-shrink: 0;
}

/* ── Corps scrollable ─────────────────────────────────── */

.wssi-body[b-heabwibzja] {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding: 0.15rem 0;
}

.wssi-body[b-heabwibzja]::-webkit-scrollbar {
    width: 4px;
}

.wssi-body[b-heabwibzja]::-webkit-scrollbar-thumb {
    background: rgba(21, 87, 103, 0.2);
    border-radius: 2px;
}

.wssi-separator[b-heabwibzja] {
    padding: 0 0.75rem;
}

.wssi-separator hr[b-heabwibzja] {
    margin: 0.2rem 0;
    opacity: 0.15;
}
