/* ==========================================================================
   US Coin Events – Calendar Styles
   Light theme — matches site default light mode.
   ========================================================================== */

.uce-calendar {
    font-family: var(--uce-font, 'Inter', sans-serif);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(13,27,42,0.08);
    box-shadow: 0 4px 24px rgba(13,27,42,0.06);
    background: #ffffff;
}

/* ── Navigation bar ─────────────────────────────────────────────────────── */
.uce-cal-nav {
    display:          flex;
    align-items:      center;
    justify-content:  space-between;
    padding:          14px 20px;
    background:       rgba(253,246,230,0.90);
    backdrop-filter:  blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom:    1px solid rgba(13,27,42,0.08);
}

.uce-cal-title {
    font-size:      1.1rem;
    font-weight:    700;
    color:          #0d1b2a;
    margin:         0;
    letter-spacing: 0.01em;
}

.uce-cal-nav-btn {
    display:         flex;
    align-items:     center;
    justify-content: center;
    width:           34px;
    height:          34px;
    border-radius:   7px;
    background:      rgba(13,27,42,0.06);
    border:          1px solid rgba(13,27,42,0.08);
    color:           #718096;
    text-decoration: none;
    font-size:       20px;
    line-height:     1;
    transition:      background 0.2s, color 0.2s, border-color 0.2s;
}

.uce-cal-nav-btn:hover {
    background:   rgba(184,146,45,0.15);
    border-color: rgba(184,146,45,0.35);
    color:        #b8922d;
}

/* ── Grid ───────────────────────────────────────────────────────────────── */
.uce-cal-grid {
    display:               grid;
    grid-template-columns: repeat(7, 1fr);
    background:            #ffffff;
}

/* ── Day-of-week headers ────────────────────────────────────────────────── */
.uce-cal-dow {
    background:     rgba(253,246,230,0.80);
    color:          #718096;
    text-align:     center;
    padding:        10px 4px;
    font-size:      0.68rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-bottom:  1px solid rgba(13,27,42,0.06);
    border-right:   1px solid rgba(13,27,42,0.04);
}

.uce-cal-dow:last-child { border-right: none; }

/* ── Individual cells ───────────────────────────────────────────────────── */
.uce-cal-cell {
    border-right:  1px solid rgba(13,27,42,0.07);
    border-bottom: 1px solid rgba(13,27,42,0.07);
    min-height:    100px;
    padding:       8px 6px 6px;
    background:    #ffffff;
    vertical-align: top;
    position:      relative;
    transition:    background 0.15s;
}

.uce-cal-cell:nth-child(7n)  { border-right: none; }
.uce-cal-cell:last-child      { border-bottom: none; }

.uce-cal-cell:hover { background: rgba(13,27,42,0.02); }

.uce-cal-empty {
    background: rgba(13,27,42,0.03);
    opacity:    0.6;
}

.uce-cal-today {
    background:  rgba(184,146,45,0.06);
    outline:     2px solid rgba(184,146,45,0.45);
    outline-offset: -2px;
}

.uce-cal-has-events { background: rgba(74,85,104,0.05); }

/* ── Day number ─────────────────────────────────────────────────────────── */
.uce-cal-day-num {
    display:       block;
    font-size:     0.75rem;
    font-weight:   600;
    color:         #718096;
    margin-bottom: 5px;
    text-align:    right;
    line-height:   1;
}

.uce-cal-today .uce-cal-day-num {
    background:    var(--uce-gold, #b8922d);
    color:         #fdf6e6;
    width:         22px;
    height:        22px;
    border-radius: 50%;
    display:       inline-flex;
    align-items:   center;
    justify-content: center;
    float:         right;
    font-size:     0.72rem;
    font-weight:   700;
}

/* ── Event pills ────────────────────────────────────────────────────────── */
.uce-cal-events { clear: both; }

.uce-cal-event {
    display:         block;
    background:      rgba(74,85,104,0.12);
    border-left:     2px solid #3d3d3d;
    color:           #0d5f60;
    font-size:       0.67rem;
    font-weight:     600;
    padding:         2px 5px;
    border-radius:   0 3px 3px 0;
    margin-bottom:   2px;
    text-decoration: none;
    overflow:        hidden;
    white-space:     nowrap;
    text-overflow:   ellipsis;
    transition:      background 0.15s, color 0.15s, border-color 0.15s;
}

.uce-cal-event:hover {
    background:   rgba(74,85,104,0.22);
    border-color: #2d2d2d;
    color:        #0d4a4b;
}

.uce-cal-event.featured {
    background:   rgba(184,146,45,0.1);
    border-color: #b8922d;
    color:        #b8922d;
}

.uce-cal-event.featured:hover {
    background:   rgba(184,146,45,0.18);
    border-color: #d4a932;
    color:        #d4a932;
}

.uce-cal-more {
    font-size: 0.62rem;
    color:     #718096;
    padding:   1px 5px;
    display:   block;
    margin-top: 1px;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
    .uce-cal-cell {
        min-height: 56px;
        padding:    4px;
    }

    .uce-cal-event {
        display: none;
    }

    .uce-cal-more { display: none; }

    .uce-cal-has-events::after {
        content:       '';
        display:       block;
        width:         5px;
        height:        5px;
        background:    var(--uce-gold, #b8922d);
        border-radius: 50%;
        margin:        3px auto 0;
    }

    .uce-cal-day-num { font-size: 0.68rem; }
}

@media (max-width: 420px) {
    .uce-cal-dow { font-size: 0.58rem; letter-spacing: 0; padding: 8px 2px; }
    .uce-cal-nav { padding: 10px 12px; }
    .uce-cal-title { font-size: 0.95rem; }
}
