
.scc-header span {
	color: var(--schwarz) !important; 
}

.scc-calendar-container {
    max-width: 960px;
    margin: 0 auto;
    font-family: inherit;
    color: var(--text, #333);
}

.scc-months-wrapper {
    display: flex;
    gap: 30px;
    width: 100%;
}

.scc-month-block {
    flex: 1;
    background: var(--hintergrund, #fff);
    padding: 15px;
    border-radius: 0; 
}

.scc-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 15px;
    text-transform: uppercase;
    color: var(--schwarz, #000); 
}

.scc-nav-btn {
    background: none;
    border: none;
    font-size: 26px;
    cursor: pointer;
    padding: 0 10px;
    color: var(--schwarz, #000); 
    transition: color 0.2s ease; 
}

.scc-nav-btn:hover {
    color: var(--orange2); 
	background: none;
}

.scc-nav-placeholder {
    width: 44px; 
}

.scc-hidden {
    visibility: hidden !important;
    pointer-events: none;
}

@media (min-width: 769px) {
    .scc-header-left .scc-next-btn,
    .scc-header-right .scc-prev-btn {
        visibility: hidden;
        pointer-events: none;
    }
}

.scc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    color: var(--schwarz);
}

.scc-table th {
    text-align: center;
    padding: 8px 0;
    font-size: 13px;
}

.scc-table td {
    height: 48px;
    text-align: center;
    vertical-align: middle;
    border-radius: 0;
}

/* --- FARB-LOGIK EXAKT NACH VORLAGE (TABELLE + LEGENDE) --- */

/* 1. Frei (komplett grün) */
.scc-swatch.scc-free,
.scc-table td.scc-free-day {
    background: lightgreen;
    color: var(--permaschwarz);
}

/* 4. Belegt (komplett rot/pink) */
.scc-swatch.scc-booked,
.scc-table td.scc-booked {
    background: #ffbfbf;
    color: var(--permaschwarz);
    cursor: not-allowed;
}

/* 2. Anreise (oben links pink, unten rechts grün) */
.scc-swatch.scc-arrival,
.scc-table td.scc-arrival {
    background: linear-gradient(to bottom right, #ffbfbf 50%, lightgreen 50%);
    color: var(--permaschwarz);
}

/* 3. Abreise (oben links grün, unten rechts pink) */
.scc-swatch.scc-departure,
.scc-table td.scc-departure {
    background: linear-gradient(to bottom right, lightgreen 50%, #ffbfbf 50%);
    color: var(--permaschwarz);
}

.scc-table td.scc-past {
    background: #f5f5f5;
    color: var(--permaschwarz);
    cursor: not-allowed;
    text-decoration: line-through;
}

/* Legende */
.scc-legend {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 25px; 
    font-size: 14px;
}

.scc-swatch {
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 0;
    vertical-align: middle;
    margin-right: 8px;
    border: 1px solid rgba(0,0,0,0.1); /* Hauchdünner Rahmen für perfekte Kanten */
}

.scc-swatch.scc-arrival {
    border-top: 1px solid #d8a2a2 !important;    /* Dunkleres Pink */
    border-left: 1px solid #d8a2a2 !important;   /* Dunkleres Pink */
    border-bottom: 1px solid #7aca7a !important; /* Dunkleres Grün */
    border-right: 1px solid #7aca7a !important;  /* Dunkleres Grün */
}

.scc-swatch.scc-departure {
    border-top: 1px solid #7aca7a !important;    /* Dunkleres Grün */
    border-left: 1px solid #7aca7a !important;   /* Dunkleres Grün */
    border-bottom: 1px solid #d8a2a2 !important; /* Dunkleres Pink */
    border-right: 1px solid #d8a2a2 !important;  /* Dunkleres Pink */
}

.scc-footer-text {
    margin-top: 15px; 
    font-size: 14px;  
    text-align: center;
    color: var(--schwarz, #333); 
    opacity: 0.8; 
}

.scc-footer-text p {
    margin: 4px 0;
    line-height: 1.4;
	text-align: center;
}

@media (max-width: 768px) {
    .scc-months-wrapper {
        flex-direction: column;
    }
}
