/* ── Page événement ── */
.event-header          { margin-bottom: 2rem; }
.event-category-badge  {
    display: inline-block;
    padding: .25rem .75rem;
    border-radius: 50px;
    font-size: .78rem;
    font-weight: 700;
    font-family: system-ui, sans-serif;
    color: #fff;
    margin-bottom: .75rem;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.event-title           { font-size: 2rem; line-height: 1.2; margin-bottom: .5rem; }
.event-dates           { font-family: system-ui, sans-serif; font-size: .9rem; color: #666; }
.event-dates span      { margin-right: 1.5rem; }

#sntm-event-map        { height: 280px; border-radius: 8px; margin: 1.5rem 0; border: 1px solid #e2e8f0; }

.event-content         { margin: 2rem 0 3rem; }

/* ── Sondage ── */
.sntm-sondage          {
    border-top: 2px solid #e2e8f0;
    padding-top: 2rem;
    margin-top: 2rem;
    font-family: system-ui, sans-serif;
}
.sntm-sondage h2       { font-size: 1.2rem; font-weight: 700; margin-bottom: 1.25rem; }

.sntm-vote-form        { background: #f8f9fa; border-radius: 8px; padding: 1.5rem; margin-bottom: 2rem; }
.sntm-form-row         { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.sntm-form-row input[type="text"] {
    flex: 1;
    min-width: 140px;
    padding: .5rem .75rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    font-size: .95rem;
}
.sntm-vote-options     { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1rem; }
.sntm-vote-option      { display: none; }
.sntm-vote-option + label {
    cursor: pointer;
    padding: .45rem 1rem;
    border-radius: 50px;
    border: 2px solid #ced4da;
    font-size: .88rem;
    font-weight: 600;
    transition: all .15s;
    user-select: none;
}
.sntm-vote-option[value="present"] + label  { border-color: #2DC653; color: #2DC653; }
.sntm-vote-option[value="maybe"] + label    { border-color: #F77F00; color: #F77F00; }
.sntm-vote-option[value="absent"] + label   { border-color: #E53E3E; color: #E53E3E; }
.sntm-vote-option:checked + label[data-vote="present"] { background: #2DC653; color: #fff; }
.sntm-vote-option:checked + label[data-vote="maybe"]   { background: #F77F00; color: #fff; }
.sntm-vote-option:checked + label[data-vote="absent"]  { background: #E53E3E; color: #fff; }

.sntm-has-key-row      { display: flex; align-items: center; gap: .5rem; margin-bottom: 1.25rem; font-size: .9rem; }

.sntm-form-actions     { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }

.sntm-vote-submit      {
    background: #2c5282;
    color: #fff;
    border: none;
    padding: .55rem 1.5rem;
    border-radius: 6px;
    font-size: .95rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s;
}
.sntm-vote-submit:hover  { background: #1a365d; }

.sntm-vote-delete        {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: transparent;
    color: #E53E3E;
    border: 1.5px solid #E53E3E;
    padding: .5rem 1.1rem;
    border-radius: 6px;
    font-size: .88rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s, color .15s;
}
.sntm-vote-delete:hover  { background: #E53E3E; color: #fff; }
.sntm-vote-delete:disabled { opacity: .5; cursor: not-allowed; }

.sntm-vote-msg           { margin-top: .75rem; font-size: .88rem; color: #2DC653; display: none; }

/* ── Liste des votes ── */
.sntm-votes-grid       { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1.5rem; }
@media (max-width: 540px) { .sntm-votes-grid { grid-template-columns: 1fr; } }

.sntm-votes-col h3     { font-size: .85rem; font-weight: 700; text-transform: uppercase;
                          letter-spacing: .06em; margin-bottom: .75rem; }
.sntm-votes-col--present h3 { color: #2DC653; }
.sntm-votes-col--absent h3  { color: #E53E3E; }

.sntm-vote-item        {
    display: flex;
    align-items: center;
    gap: .4rem;
    padding: .4rem .6rem;
    border-radius: 5px;
    font-size: .9rem;
    margin-bottom: .35rem;
}
.sntm-vote-item--present { background: #f0fff4; }
.sntm-vote-item--maybe   { background: #fffaf0; }
.sntm-vote-item--absent  { background: #fff5f5; }
.sntm-vote-item .key-badge { font-size: .8rem; margin-left: auto; opacity: .7; }
