/* DAV Communication Portal v5.9.0 — formal motion governance */

.motion-governance-card{
    margin:0 0 24px;
    padding:24px;
    border:1px solid #cbd5e1;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(15,23,42,.08);
}

.motion-heading-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
}

.motion-heading-row h2{
    margin:10px 0 0;
}

.motion-status-badge,
.motion-history-status{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:5px 10px;
    background:#e8f1f8;
    color:#0b5790;
    font-size:.78rem;
    font-weight:800;
}

.motion-number{
    color:#667085;
    font-size:.85rem;
    white-space:nowrap;
}

.motion-revision-note,
.motion-revision-source{
    margin:14px 0;
    padding:10px 12px;
    border-left:4px solid #0b5790;
    background:#f2f7fb;
    color:#344054;
}

.motion-formal-text{
    margin:18px 0;
    padding:18px;
    border:1px solid #d8e0e8;
    border-radius:12px;
    background:#f8fafc;
    color:#1f2937;
    font-size:1rem;
    line-height:1.6;
}

.motion-people-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin:18px 0;
}

.motion-people-grid > div{
    padding:14px;
    border:1px solid #d8e0e8;
    border-radius:12px;
}

.motion-people-grid span,
.motion-people-grid small{
    display:block;
    color:#667085;
}

.motion-people-grid strong{
    display:block;
    margin:4px 0;
}

.motion-discussion-callout{
    margin:16px 0;
    padding:14px;
    border:1px solid #f0cf87;
    border-radius:12px;
    background:#fff8e7;
    color:#6f4a00;
}

.motion-vote-roster,
.motion-discussion-section,
.motion-vote-form{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #e1e6ec;
}

.motion-vote-groups{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}

.motion-vote-group{
    min-width:0;
    padding:12px;
    border:1px solid #d8e0e8;
    border-radius:12px;
    background:#f8fafc;
}

.motion-initial-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:9px;
}

.motion-initial{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid #cbd5e1;
    background:#fff;
    font-size:.78rem;
    font-weight:850;
}

.motion-initial-yes{
    border-color:#7bc996;
    background:#e8f8ee;
    color:#116b35;
}

.motion-initial-no{
    border-color:#eca29d;
    background:#fff0ef;
    color:#9b1c17;
}

.motion-initial-abstain{
    border-color:#dfc27a;
    background:#fff8dd;
    color:#765400;
}

.motion-initial-pending{
    color:#475467;
}

.motion-empty-group{
    color:#98a2b3;
    font-size:.82rem;
}

.motion-majority-rule{
    margin:12px 0 0;
    color:#667085;
    font-size:.86rem;
}

.motion-discussion-thread{
    display:grid;
    gap:10px;
    margin-bottom:16px;
}

.motion-discussion-message{
    padding:13px;
    border:1px solid #d8e0e8;
    border-radius:12px;
    background:#f8fafc;
}

.motion-discussion-message header{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-bottom:8px;
    color:#667085;
    font-size:.83rem;
}

.motion-discussion-message header time{
    margin-left:auto;
}

.motion-no-discussion{
    color:#667085;
}

.motion-discussion-form textarea{
    min-height:100px;
}

.motion-second-form{
    margin-top:18px;
}

.motion-second-button{
    width:100%;
}

.motion-administration-actions{
    display:flex;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:12px;
    margin-top:20px;
}

.motion-termination-panel{
    flex:1 1 320px;
    border:1px solid #edb6b2;
    border-radius:12px;
    background:#fff8f7;
}

.motion-termination-panel summary{
    padding:12px 14px;
    color:#9b1c17;
    font-weight:800;
    cursor:pointer;
}

.motion-termination-panel form{
    padding:0 14px 14px;
}

.motion-close-form{
    flex:1 1 320px;
}

.motion-close-form button{
    width:100%;
}

.motion-voter-selector{
    min-width:0;
    margin:18px 0;
    padding:16px;
    border:1px solid #cbd5e1;
    border-radius:14px;
}

.motion-voter-selector legend{
    padding:0 7px;
    font-weight:800;
}

.motion-selector-actions{
    display:flex;
    gap:8px;
    margin-bottom:12px;
}

.motion-selector-actions button{
    width:auto !important;
}

.motion-officer-checklist{
    display:grid;
    gap:8px;
    max-height:360px;
    overflow-y:auto;
    padding:4px;
}

.motion-officer-row,
.motion-allow-change-row{
    display:flex !important;
    align-items:flex-start;
    gap:11px;
    width:100%;
    margin:0;
    padding:11px 12px;
    border:1px solid #d8e0e8;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
}

.motion-officer-row input,
.motion-allow-change-row input{
    flex:0 0 auto !important;
    width:20px !important;
    min-width:20px !important;
    max-width:20px !important;
    height:20px !important;
    min-height:20px !important;
    margin:1px 0 0 !important;
    padding:0 !important;
}

.motion-officer-row span,
.motion-allow-change-row span{
    display:block;
    min-width:0;
    flex:1 1 auto;
}

.motion-officer-row strong,
.motion-officer-row small{
    display:block;
}

.motion-officer-row small{
    margin-top:2px;
    color:#667085;
}

.motion-allow-change-row{
    margin:16px 0;
    background:#f8fafc;
}

.motion-history-list{
    display:grid;
    gap:14px;
}

.motion-history-item{
    padding:16px;
    border:1px solid #d8e0e8;
    border-radius:12px;
    background:#fff;
}

.motion-history-item header{
    display:flex;
    justify-content:space-between;
    gap:15px;
}

.motion-history-item h3{
    margin:8px 0;
}

.motion-history-item time,
.motion-history-people{
    color:#667085;
    font-size:.86rem;
}

.motion-outcome-summary,
.motion-termination-reason{
    margin:12px 0;
    padding:12px;
    border-radius:10px;
    background:#f8fafc;
}

.motion-history-passed{
    border-left:5px solid #26935a;
}

.motion-history-failed,
.motion-history-rescinded,
.motion-history-withdrawn{
    border-left:5px solid #bc3b32;
}

@media(max-width:700px){
    .motion-governance-card{
        padding:16px;
        border-radius:14px;
    }

    .motion-heading-row,
    .motion-history-item header{
        display:block;
    }

    .motion-number,
    .motion-history-item time{
        display:block;
        margin-top:8px;
    }

    .motion-people-grid,
    .motion-vote-groups{
        grid-template-columns:1fr;
    }

    .motion-vote-group{
        display:grid;
        grid-template-columns:90px minmax(0,1fr);
        align-items:center;
    }

    .motion-initial-list{
        margin-top:0;
    }

    .motion-discussion-message header time{
        flex-basis:100%;
        margin-left:0;
    }

    .motion-selector-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .motion-selector-actions button{
        width:100% !important;
    }

    .motion-officer-checklist{
        max-height:320px;
    }

    .motion-officer-row,
    .motion-allow-change-row{
        display:flex !important;
        padding:12px;
    }

    .motion-officer-row input,
    .motion-allow-change-row input{
        width:22px !important;
        min-width:22px !important;
        max-width:22px !important;
        height:22px !important;
        min-height:22px !important;
    }

    .motion-administration-actions{
        display:grid;
        grid-template-columns:1fr;
    }
}
