
.sco-events{
    --green:#00843d;
    --green-dark:#006d32;
    --dark:#111827;
    --muted:#5b6573;
    --border:#dfe5e1;
    max-width:1200px;
    margin:auto;
}

.sco-events-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:1.25rem;
}

.sco-event{
    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    overflow:hidden;
    width:100%;
    background:#fff;
    border:1px solid var(--border);
    border-top:5px solid var(--green);
    border-radius:14px;
    box-shadow:0 10px 28px rgba(17,24,39,.09);
}

.sco-event-date{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:100%;
    padding:1.25rem .75rem;
    color:#fff;
    background:var(--green);
}

.sco-event-date strong{
    font-size:2.3rem;
    line-height:1;
}

.sco-event-date span{
    margin-top:.4rem;
    font-size:.82rem;
    font-weight:800;
    text-transform:uppercase;
}

.sco-event-body{
    padding:1.25rem 1.4rem 1.35rem;
    min-width:0;
}

.sco-event-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.35rem .85rem;
    margin:0 0 .65rem;
    color:var(--muted);
    font-size:.88rem;
    font-weight:650;
}

.sco-event h3{
    margin:0 0 .7rem;
    font-size:1.45rem;
    line-height:1.25;
}

.sco-event-location{
    margin:0 0 .8rem;
    color:var(--muted);
}

.sco-event-location a{
    color:var(--green-dark);
    font-weight:700;
    text-decoration:none;
    overflow-wrap:anywhere;
}

.sco-event-location a:hover{
    text-decoration:underline;
}

.sco-event-desc{
    margin-top:1rem;
    color:var(--muted);
    font-size:1rem;
    line-height:1.65;
    overflow:visible;
    max-height:none;
    height:auto;
    white-space:normal;
}

.sco-event-desc p:last-child{
    margin-bottom:0;
}

.sco-event-actions{
    display:flex;
    flex-wrap:wrap;
    gap:.75rem;
    margin-top:1.15rem;
    padding-top:1rem;
    border-top:1px solid var(--border);
}

.sco-event-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:.72rem 1rem;
    border:1px solid var(--green);
    border-radius:7px;
    background:var(--green);
    color:#fff;
    font-weight:750;
    line-height:1.2;
    text-decoration:none;
}

.sco-event-button:hover{
    background:var(--green-dark);
    border-color:var(--green-dark);
    color:#fff;
}

.sco-event-button--secondary{
    background:#fff;
    color:var(--green-dark);
}

.sco-event-button--secondary:hover{
    background:#f2f8f4;
    color:var(--green-dark);
}

.sco-events-msg{
    padding:1rem 1.2rem;
    background:#f4f8f5;
    border-left:4px solid var(--green);
    border-radius:8px;
}

/* Startseite: kompakte Vorschau */
.sco-events--compact .sco-events-grid{
    grid-template-columns:1fr;
    gap:.85rem;
}

.sco-events--compact .sco-event{
    grid-template-columns:74px minmax(0,1fr);
    border-top-width:1px;
}

.sco-events--compact .sco-event-date{
    padding:.8rem .5rem;
}

.sco-events--compact .sco-event-date strong{
    font-size:1.8rem;
}

.sco-events--compact .sco-event-date span{
    font-size:.68rem;
}

.sco-events--compact .sco-event-body{
    padding:.85rem 1rem;
}

.sco-events--compact .sco-event-meta{
    margin-bottom:.3rem;
    font-size:.8rem;
}

.sco-events--compact .sco-event h3{
    margin-bottom:.35rem;
    font-size:1.08rem;
}

.sco-events--compact .sco-event-location{
    margin-bottom:0;
    font-size:.92rem;
}

@media(max-width:680px){
    .sco-event{
        grid-template-columns:80px minmax(0,1fr);
    }

    .sco-event-body{
        padding:1rem;
    }

    .sco-event h3{
        font-size:1.22rem;
    }

    .sco-event-actions{
        flex-direction:column;
    }

    .sco-event-button{
        width:100%;
    }
}
