.stg-comite-calendar{
    --stg-purple:#4C2B46;
    --stg-purple-soft:#785170;
    --stg-orange:#E97700;
    --stg-white:#fff;
}
.stg-calendar-shell{
    overflow:hidden;
    border:1px solid var(--stg-purple-soft);
    background:linear-gradient(180deg,#573751 0%,#76516f 100%);
    color:var(--stg-white);
    box-shadow:0 2px 8px rgba(0,0,0,.16);
}
.stg-calendar-header{
    display:grid;
    grid-template-columns:2.5rem 1fr 2.5rem;
    gap:.5rem;
    align-items:center;
    padding:.75rem;
    border-bottom:1px solid rgba(255,255,255,.18);
}
.stg-calendar-month{
    text-align:center;
    font-weight:600;
}
.stg-calendar-nav{
    width:2.5rem;
    height:2.5rem;
    border:1px solid rgba(255,255,255,.6);
    background:transparent;
    color:#fff;
    cursor:pointer;
    font-size:1.5rem;
    line-height:1;
}
.stg-calendar-nav:hover,
.stg-calendar-nav:focus-visible{
    border-color:var(--stg-orange);
    background:rgba(233,119,0,.15);
    outline:none;
}
.stg-calendar-weekdays,
.stg-calendar-grid{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
}
.stg-calendar-weekdays{
    padding:.3rem .45rem 0;
    color:#f6d5c6;
    font-size:.74rem;
    font-weight:600;
    text-align:center;
}
.stg-calendar-weekdays span{
    padding:.4rem .15rem;
}
.stg-calendar-grid{
    padding:0 .45rem .55rem;
}
.stg-calendar-cell{
    position:relative;
    min-height:2.5rem;
    border-bottom:1px solid rgba(255,255,255,.12);
    text-align:center;
}
.stg-calendar-cell.is-empty{
    border-bottom-color:transparent;
}
.stg-calendar-day{
    display:inline-flex;
    width:2.15rem;
    height:2.15rem;
    margin-top:.12rem;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    border-radius:50%;
    background:transparent;
    color:#fff;
    font:inherit;
}
.stg-calendar-cell.has-event .stg-calendar-day{
    border-color:var(--stg-orange);
    background:var(--stg-orange);
    color:#fff;
    cursor:pointer;
    font-weight:700;
}
.stg-calendar-cell.has-event .stg-calendar-day:hover,
.stg-calendar-cell.has-event .stg-calendar-day:focus-visible{
    outline:2px solid #fff;
    outline-offset:2px;
}
.stg-calendar-cell.is-today .stg-calendar-day{
    box-shadow:0 0 0 2px #f6d5c6 inset;
}
.stg-calendar-count{
    position:absolute;
    top:.05rem;
    right:.08rem;
    min-width:1rem;
    height:1rem;
    padding:0 .18rem;
    border-radius:999px;
    background:#fff;
    color:var(--stg-purple);
    font-size:.62rem;
    font-weight:700;
    line-height:1rem;
}
.stg-calendar-empty{
    margin:0;
    padding:.7rem .85rem .85rem;
    color:rgba(255,255,255,.72);
}
.stg-calendar-event + .stg-calendar-event{
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid #ddd;
}
@media(max-width:639px){
    .stg-calendar-cell{min-height:2.25rem}
    .stg-calendar-day{width:1.9rem;height:1.9rem;font-size:.82rem}
}
