.mybsuite-button {
    color: #fff;
    background-color: #0B3754;
    background-image: none;
    border-color: #0B3754;
}

/* Badge "identité utilisateur", variante claire (fond blanc) - voir
   .mbs-sidebar-user/.mbs-connected-user pour la variante fond sombre */
.connected-user, .connected-user:hover {
    text-decoration: none;
    color: #0B3754;
    cursor: default;
    margin: 5px 5px 5px 5px;
}
a.uk-icon-button.connected-user {
    background: rgba(11, 55, 84, .08);
    color: #0B3754;
}

.mybsuite-button:hover {
    color: #fff;
    background-color: #FC8A44;
    background-image: none;
    border-color: #FC8A44;
}

.mybsuite_logo {
    margin-top: 100px;
    width: 400px;
}

.mybsuite_logo_accueil {
    width: 400px;
    margin-top: 40px;
    margin-bottom: 30px;
}

.user-link {
    margin-top: 10px !important;
}

.test {
    flex: 0 0 100%;
}

.mybsuite {
    margin-top: 5%;
}

.uk-modal-title {
    font-size: 1.5rem;
}

.mybsuite-form-create {
    margin-bottom: 20px;
}

.create-room {
    border-bottom: 1px solid #D7D7D7;
    border-top: none;
    border-left: none;
    border-right: none;
    width: 100%;
    border-radius: 0;
}

.mybsuite-alert {
    margin-top: 5%;
}


.room-name {
    margin-bottom: 40px;
}

.mbs-join-wrap {
    min-height: 100vh;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    max-width: 480px;
    margin: 0 auto;
    padding: 40px 20px;
}
.mbs-join-wrap h4 {
    margin-top: 0;
}
.mbs-join-logo {
    margin-top: 0;
    margin-bottom: 40px;
    width: 320px;
}

.mbs-join-wrap .mbs-join-row {
    width: 100%;
    margin: 24px auto 4px;
}
.mbs-join-wrap .mbs-join-row .mbs-btn {
    padding: 11px 26px;
    font-size: 14px;
}

.mbs-join-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #5a6b7a;
    cursor: pointer;
    margin-bottom: 24px;
}

.mbs-join-note {
    font-size: 13px;
    color: #5a6b7a;
    margin: 0 0 24px;
}

.mbs-join-secondary {
    width: 100%;
    margin-top: 4px;
    padding-top: 20px;
    border-top: 1px solid #e7e9ee;
    font-size: 13.5px;
    color: #5a6b7a;
}

#triangle-bottomleft {
    position: fixed;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 0 0 260px;
    border-color: transparent transparent transparent #FC8A44;
    z-index: 2;
    pointer-events: none;
}

#triangle-topright {
    position: fixed;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 360px 60px 0;
    border-color: transparent #0B3754 transparent transparent;
    z-index: -1;
}

h4 {
    text-align: center;
    margin-top: 50px;
    padding: .375rem .75rem;
    color: #0B3754;
}

label {
    float: right;
    padding: .375rem .75rem;
}

@media (max-width: 762px) {
    .user-info {
        display: none;
    }
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes spin2 {
    0% {
        stroke-dasharray: 1, 800;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 400, 400;
        stroke-dashoffset: -200px;
    }
    100% {
        stroke-dasharray: 800, 1;
        stroke-dashoffset: -800px;
    }
}

.spin2 {
    transform-origin: center;
    animation: spin2 1.5s ease-in-out infinite,
        spin 2s linear infinite;
    animation-direction: alternate;
}

.mbs-loader {
    max-width: 20%;
    top: 20%;
    position: absolute;
    left: 39%;
}

.uk-container-xlarge {
    margin: auto;
}

.user-info {
    position: absolute;
    left: 10px;
    top: 10px;
}

.mbs-legend {
    margin-top: 0;
}

.mbs-title {
    margin-bottom: 0;
}

/* ---- Refonte de la page historique des enregistrements ---- */

.mbs-sidebar {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 260px;
    background: #0B3754;
    border-right: 1px solid rgba(255, 255, 255, .08);
    z-index: 1;
    padding: 36px 28px;
    overflow-y: auto;
}

.mbs-sidebar-logo {
    width: 190px;
    height: auto;
    display: block;
    margin-bottom: 22px;
}

/* Badge "identité utilisateur", variante fond sombre - voir
   .connected-user (composant css/bbbFullname.css:8) pour la variante fond clair */
.mbs-sidebar-user {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0 22px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    margin-bottom: 22px;
}

.mbs-sidebar-user-icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mbs-connected-user {
    font-size: 15px;
    color: #fff;
    font-weight: 500;
}

.mbs-tab {
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255, 255, 255, .65);
    font-size: 15.5px;
    font-weight: 500;
    text-decoration: none;
    padding: 11px 10px;
    margin: 0 -10px;
    border-radius: 7px;
    transition: background .15s, color .15s;
}
.mbs-tab svg { flex-shrink: 0; opacity: .8; }
.mbs-tab.on { color: #fff; font-weight: 700; }
.mbs-tab.on svg { opacity: 1; color: #FC8A44; }
.mbs-tab.disabled { color: rgba(255, 255, 255, .3); cursor: default; }
.mbs-tab.disabled svg { opacity: .5; }
.mbs-tab:not(.disabled):hover { background: rgba(255, 255, 255, .08); color: #fff; }

.mbs-main {
    margin-left: 260px;
    padding: 150px 64px 90px;
    height: 100vh;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.mbs-create-row {
    box-sizing: border-box;
    max-width: 1000px;
    display: flex;
    align-items: flex-end;
    gap: 20px;
    margin: 0 auto 52px;
    padding: 20px 16px 20px 30px;
    flex-shrink: 0;
}
.mbs-create-field {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.mbs-create-field label {
    font-size: 12px;
    font-weight: 600;
    color: #8b909a;
    margin-bottom: 4px;
}
.mbs-create-row .mbs-btn {
    padding: 12px 28px;
    font-size: 14.5px;
}
.mbs-btn, .mbs-btn-small {
    border-radius: 8px;
    padding: 10px 26px;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
    border: none;
    text-transform: none;
    box-shadow: none;
    transition: background .15s, box-shadow .15s;
}
.mbs-create-row .mbs-btn:hover {
    box-shadow: 0 6px 16px rgba(252, 138, 68, .35);
}

.mbs-btn-small {
    padding: 8px 16px;
    font-size: 13px;
    line-height: 18px;
}

.mbs-create-row input {
    border: none;
    border-bottom: 1px solid #d7d7d7;
    padding: 7px 2px;
    font-size: 17px;
    outline: none;
    background: transparent;
}
.mbs-create-row input:focus { border-bottom-color: #0B3754; }
.mbs-create-row input.uk-form-danger { border-bottom-color: #f0506e; }

.mbs-history-wrap {
    box-sizing: border-box;
    width: 100%;
    max-width: 1150px;
    margin: 0 auto;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    border-top: 1px solid #e7e9ee;
    padding-top: 24px;
}

.mbs-history-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.mbs-history-scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0 10px;
}
.mbs-history-head h4.mbs-title {
    margin: 0;
    text-align: left;
    padding: 0;
    font-size: 19px;
    font-weight: 600;
}
.mbs-history-count {
    font-weight: 400;
    color: #8b909a;
    font-size: 14px;
}

.mbs-periods { display: flex; gap: 6px; }
.mbs-period-chip {
    font-size: 13px;
    font-weight: 500;
    color: #5a6b7a;
    padding: 6px 14px;
    border-radius: 20px;
    cursor: pointer;
    border: 1px solid #e7e9ee;
    transition: color .15s, border-color .15s, background .15s;
}
.mbs-period-chip:hover { color: #0B3754; border-color: #c7cfd9; }
.mbs-period-chip.on {
    color: #fff;
    font-weight: 600;
    background: #0B3754;
    border-color: #0B3754;
}

table.mbs-history-table { width: 100%; border-collapse: collapse; }
table.mbs-history-table th {
    text-align: left;
    font-size: 13px;
    font-weight: 600;
    color: #8b909a;
    padding: 0 14px 14px;
    border-bottom: 1px solid #e7e9ee;
}
table.mbs-history-table td {
    padding: 17px 14px;
    font-size: 15px;
    color: #243543;
    border-bottom: 1px solid #f0f1f4;
    vertical-align: middle;
}
table.mbs-history-table td:first-child {
    font-weight: 600;
    color: #0B3754;
}
table.mbs-history-table tr:last-child td { border-bottom: none; }
table.mbs-history-table tbody tr:hover td { background: #fafbfc; }

/* ---- Historique en liste (variante d'essai, voir preview-historique-liste.html) ---- */
/* Shared grid across all rows (via subgrid below) so "Écouter" and the
   compte-rendu/statut column line up at the same x on every row, instead
   of each row sizing its own columns independently. */
.mbs-history-list {
    display: grid;
    grid-template-columns: 1fr auto auto;
}
.mbs-history-item {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: subgrid;
    align-items: center;
    column-gap: 24px;
    padding: 16px 22px 16px 10px;
    margin: 0 -10px;
    border-bottom: 1px solid #f0f1f4;
}
.mbs-history-item:last-child { border-bottom: none; }
.mbs-history-item.mbs-row-alt { background: #f7f8fa; }
.mbs-history-item:hover { background: #eef1f4; }
.mbs-hi-main { min-width: 0; }
.mbs-hi-name {
    font-weight: 600;
    color: #0B3754;
    font-size: 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mbs-hi-date {
    font-size: 13px;
    color: #8b909a;
    margin-top: 3px;
}
.mbs-hi-desc {
    font-size: 13px;
    color: #5a6b7a;
    margin-top: 6px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.mbs-hi-people {
    font-size: 12.5px;
    color: #8b909a;
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mbs-hi-play, .mbs-hi-status {
    display: flex;
    align-items: center;
    white-space: nowrap;
}
@media (max-width: 640px) {
    .mbs-history-item {
        grid-template-columns: 1fr;
        row-gap: 10px;
    }
    .mbs-hi-play, .mbs-hi-status { flex-wrap: wrap; }
}

.mbs-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 8px;
}
.mbs-status-dot.progress { background: #FC8A44; }
.mbs-status-dot.error { background: #d9534f; }

.mbs-link {
    font-size: 14px;
    font-weight: 500;
    color: #0B3754;
    text-decoration: none;
}
.mbs-link:hover {
    text-decoration: underline;
}
.mbs-link-accent {
    font-weight: 600;
    color: #0B3754;
}
.mbs-share-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-left: 10px;
    background: rgba(11, 55, 84, .07);
    color: #0B3754;
}
.mbs-share-icon:hover {
    background: rgba(11, 55, 84, .14);
    text-decoration: none;
}

/* Restyle UIkit's default notification (used for the "Lien copié !" toast,
   see showToast in js/bbb.js) - default is a plain grey box, oversized text */
.uk-notification { width: 320px; }
.uk-notification-message {
    background: #0B3754;
    color: #fff;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.4;
    padding: 14px 18px;
    box-shadow: 0 10px 30px rgba(11, 55, 84, .3);
}
.uk-notification-message-danger { background: #d9534f; }
.uk-notification-close { color: rgba(255, 255, 255, .7); }
.uk-notification-close:hover { color: #fff; }

@media (max-width: 900px) {
    .mbs-sidebar { display: none; }
    .mbs-main { margin-left: 0; padding-top: 40px; }
}

/* Compte-rendu IA (modal) - meme largeur que la maquette d'origine */
.report-modal {
    width: min(960px, 100%);
    max-width: 960px;
}

.report-modal-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-right: 34px;
}

.report-modal-head .uk-modal-title {
    margin: 0;
}

.report-modal-head .mybsuite-button {
    flex-shrink: 0;
}

.report-meta {
    color: #8b909a;
    font-size: 13px;
    margin-bottom: 15px;
}

.report-subheading {
    font-size: 14.5px;
    font-weight: 700;
    color: #0B3754;
    margin: 22px 0 12px;
}

.report-person {
    display: flex;
    gap: 12px;
    align-items: center;
    border: 1px solid #e7e9ee;
    border-radius: 10px;
    padding: 10px 12px;
    margin-bottom: 10px;
}

.report-person-avatar {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #0B3754;
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.report-person-name {
    font-weight: 600;
    font-size: 14px;
}

.report-person-role {
    font-size: 12.5px;
    color: #8b909a;
}

.report-person-time {
    margin-left: auto;
    font-size: 12px;
    color: #8b909a;
    white-space: nowrap;
}

.report-timeline {
    position: relative;
    margin-top: 6px;
    padding-left: 24px;
}

.report-timeline::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 6px;
    bottom: 6px;
    width: 2px;
    background: #e7e9ee;
}

.report-timeline-item {
    position: relative;
    padding: 0 0 20px 18px;
}

.report-timeline-item::before {
    content: "";
    position: absolute;
    left: -24px;
    top: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid #0B3754;
}

.report-timeline-item.report-timeline-decision::before {
    border-color: #FC8A44;
    box-shadow: 0 0 0 4px #fdeddb;
}

.report-timeline-time {
    font-size: 12px;
    font-weight: 700;
    color: #0B3754;
}

.report-timeline-title {
    font-size: 14.5px;
    font-weight: 600;
    margin: 2px 0 4px;
}

.report-timeline-desc {
    font-size: 13.5px;
    line-height: 1.5;
    color: #5a6b7a;
}

.report-timeline-speaker {
    display: inline-block;
    margin-top: 6px;
    font-size: 11.5px;
    color: #8b909a;
}

.report-tag-decision {
    display: inline-block;
    background: #fdeddb;
    color: #e0760f;
    font-size: 10.5px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    margin-left: 4px;
}

.report-action {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border: 1px solid #e7e9ee;
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 10px;
}

.report-action-done .report-action-text {
    text-decoration: line-through;
    color: #8b909a;
}

.report-action-text {
    font-size: 14px;
    font-weight: 500;
}

.report-action-sub {
    font-size: 12.5px;
    color: #8b909a;
    margin-top: 3px;
}

.report-prio {
    font-size: 11px;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 20px;
    flex-shrink: 0;
    white-space: nowrap;
}

.report-prio-h { background: #fdeaea; color: #d9534f; }
.report-prio-m { background: #fdf3e0; color: #c98a00; }
.report-prio-l { background: #eaf3ee; color: #2f9e6b; }

.mbs-ai-disclaimer {
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid #e7e9ee;
    font-size: 12px;
    color: #8b909a;
}
