/* Simple Meeting Minutes */

:root {
    --mm-chair-color: #0d6efd;
    --mm-chair-bg: rgba(13, 110, 253, 0.08);
    --mm-sec-color: #6f42c1;
    --mm-sec-bg: rgba(111, 66, 193, 0.08);
}

.mm-summary-row .card-body {
    font-size: 1rem;
}

.mm-edit-btn {
    min-width: 2.5rem;
    min-height: 2.5rem;
}

.mm-participants-table {
    overflow-x: auto;
}

.mm-participants-grid {
    --mm-row-h: 2.85rem;
}

.mm-grid-row {
    display: grid;
    grid-template-columns: 4.25rem 4.25rem minmax(0, 1fr) 4rem 4.5rem 3rem;
    column-gap: 0.5rem;
    align-items: stretch;
    min-height: var(--mm-row-h);
}

.mm-participants-header {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bs-secondary);
    margin-bottom: 0;
}

.mm-participants-header > div {
    white-space: nowrap;
}

.mm-participants-header .mm-g-name,
.mm-participants-header .mm-g-member,
.mm-participants-header .mm-g-present,
.mm-participants-header .mm-g-action {
    display: flex;
    align-items: center;
    min-height: var(--mm-row-h);
    padding-bottom: 0.35rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.mm-g-chair {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: var(--mm-row-h);
    box-sizing: border-box;
    border-left: 2px solid var(--mm-chair-color);
    border-right: 2px solid var(--mm-chair-color);
    background: var(--mm-chair-bg);
    color: var(--mm-chair-color);
}

.mm-g-sec {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: var(--mm-row-h);
    box-sizing: border-box;
    border-left: 2px solid var(--mm-sec-color);
    border-right: 2px solid var(--mm-sec-color);
    background: var(--mm-sec-bg);
    color: var(--mm-sec-color);
}

/* Continuous column: overlap row seams by 2px */
.mm-participants-header .mm-g-chair {
    border-top: 2px solid var(--mm-chair-color);
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
}

.mm-participants-header .mm-g-sec {
    border-top: 2px solid var(--mm-sec-color);
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
}

.mm-row .mm-g-chair,
.mm-row .mm-g-sec {
    margin-top: -2px;
}

.mm-add-row .mm-g-chair {
    border-bottom: 2px solid var(--mm-chair-color);
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.mm-add-row .mm-g-sec {
    border-bottom: 2px solid var(--mm-sec-color);
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.mm-g-chair .form-check-input,
.mm-g-sec .form-check-input {
    width: 1.1rem;
    height: 1.1rem;
    margin: 0;
    float: none;
}

.mm-g-chair .form-check-input {
    border-color: var(--mm-chair-color);
}

.mm-g-chair .form-check-input:checked {
    background-color: var(--mm-chair-color);
    border-color: var(--mm-chair-color);
}

.mm-g-sec .form-check-input {
    border-color: var(--mm-sec-color);
}

.mm-g-sec .form-check-input:checked {
    background-color: var(--mm-sec-color);
    border-color: var(--mm-sec-color);
}

.mm-role-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 0.5rem;
    border: 2px solid;
    margin-top: 0.35rem;
    margin-right: 0.35rem;
}

.mm-role-badge-chair {
    border-color: var(--mm-chair-color);
    background: var(--mm-chair-bg);
    color: var(--mm-chair-color);
}

.mm-role-badge-sec {
    border-color: var(--mm-sec-color);
    background: var(--mm-sec-bg);
    color: var(--mm-sec-color);
}

.mm-role-badge .mm-role-name {
    font-weight: 500;
    color: var(--bs-body-color);
}

.mm-row {
    padding: 0;
    margin: 0;
}

.mm-row:not(.mm-add-row) .mm-g-name,
.mm-row:not(.mm-add-row) .mm-g-member,
.mm-row:not(.mm-add-row) .mm-g-present,
.mm-row:not(.mm-add-row) .mm-g-action {
    border-bottom: 1px solid var(--bs-border-color-translucent);
    display: flex;
    align-items: center;
    min-height: var(--mm-row-h);
}

.mm-row:not(.mm-add-row) .mm-g-member,
.mm-row:not(.mm-add-row) .mm-g-present,
.mm-row:not(.mm-add-row) .mm-g-action {
    justify-content: center;
}

.mm-add-row {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.mm-add-row .mm-g-name,
.mm-add-row .mm-g-member,
.mm-add-row .mm-g-present,
.mm-add-row .mm-g-action {
    border-top: 2px dashed var(--bs-border-color);
    padding-top: 0.35rem;
    min-height: calc(var(--mm-row-h) + 0.35rem);
}

.mm-g-member .form-check-input,
.mm-g-present .form-check-input {
    width: 1.15rem;
    height: 1.15rem;
    margin: 0;
    float: none;
}

.mm-remove-btn,
.mm-add-btn {
    min-width: 2.25rem;
    min-height: 2.25rem;
    padding: 0.25rem 0.4rem;
}

#btnStartMeeting,
#btnFinishMeeting,
#btnPreviewPdf {
    min-height: calc(1.5em + 1rem + 2px);
}

.mm-finish-row .input-group-lg > .form-control,
.mm-finish-row .input-group-lg > .input-group-text {
    min-height: calc(1.5em + 1rem + 2px);
}

.mm-finish-next-date .input-group-text {
    white-space: nowrap;
}

.mm-finish-next-date {
    min-width: min(100%, 20rem);
}

.mm-home-foot img {
    height: 42px;
    width: auto;
}

.mm-finish-success-icon {
    font-size: 3rem;
    line-height: 1;
}

.mm-motion-card {
    background: #fff;
}

.mm-motion-card .mm-motion-display {
    font-weight: 500;
    white-space: pre-wrap;
}

.mm-motion-rejected {
    text-decoration: line-through;
    color: var(--bs-secondary);
}

@media (max-width: 575.98px) {
    .mm-participants-grid {
        --mm-row-h: 2.65rem;
    }

    .mm-grid-row {
        grid-template-columns: 3.5rem 3.5rem minmax(0, 1fr) 3.25rem 3.75rem 2.75rem;
        column-gap: 0.35rem;
    }

    .mm-participants-header {
        font-size: 0.7rem;
    }
}
