/* ==========================================================================
   US Coin Events – Calendar Styles
   Dark premium theme — matches uce-frontend.css design system.
   ========================================================================== */

.uce-calendar {
    font-family: var(--uce-font, 'Inter', sans-serif);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.07);
    box-shadow: 0 8px 32px rgba(0,0,0,0.4);
}

/* ── Navigation bar ─────────────────────────────────────────────────────── */
.uce-cal-nav {
    display:          flex;
    align-items:      center;
    justify-content:  space-between;
    padding:          14px 20px;
    background:       rgba(16,24,48,0.90);
    backdrop-filter:  blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom:    1px solid rgba(255,255,255,0.07);
}

.uce-cal-title {
    font-size:      1.1rem;
    font-weight:    700;
    color:          #e2eaf5;
    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(255,255,255,0.06);
    border:          1px solid rgba(255,255,255,0.08);
    color:           #8fa3bd;
    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(200,160,66,0.15);
    border-color: rgba(200,160,66,0.35);
    color:        #c8a042;
}

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

/* ── Day-of-week headers ────────────────────────────────────────────────── */
.uce-cal-dow {
    background:     rgba(16,24,48,0.80);
    color:          #4a6080;
    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(255,255,255,0.06);
    border-right:   1px solid rgba(255,255,255,0.04);
}

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

/* ── Individual cells ───────────────────────────────────────────────────── */
.uce-cal-cell {
    border-right:  1px solid rgba(255,255,255,0.05);
    border-bottom: 1px solid rgba(255,255,255,0.05);
    min-height:    100px;
    padding:       8px 6px 6px;
    background:    transparent;
    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(255,255,255,0.025); }

.uce-cal-empty {
    background: rgba(0,0,0,0.15);
    opacity:    0.5;
}

.uce-cal-today {
    background:  rgba(200,160,66,0.06);
    outline:     2px solid rgba(200,160,66,0.45);
    outline-offset: -2px;
}

.uce-cal-has-events { background: rgba(26,86,219,0.05); }

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

.uce-cal-today .uce-cal-day-num {
    background:    var(--uce-gold, #c8a042);
    color:         #070d18;
    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(26,86,219,0.18);
    border-left:     2px solid rgba(59,130,246,0.7);
    color:           #93b8f0;
    font-size:       0.67rem;
    font-weight:     500;
    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(26,86,219,0.32);
    border-color: #3b82f6;
    color:        #bdd4f8;
}

.uce-cal-event.featured {
    background:   rgba(200,160,66,0.18);
    border-color: rgba(200,160,66,0.7);
    color:        #d4ac57;
}

.uce-cal-event.featured:hover {
    background:   rgba(200,160,66,0.30);
    border-color: #c8a042;
    color:        #e2c574;
}

.uce-cal-more {
    font-size: 0.62rem;
    color:     #3b5070;
    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, #c8a042);
        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; }
}
