/* ═══════════════════════════════════════════
   SCT Cards v1.2.2
   Toate proprietățile vizuale folosesc var()
   cu fallback — suprascrise per-card prin
   inline style="--sct-xxx: valoare"
   ═══════════════════════════════════════════ */

/* ─── Wrapper — centrare card în coloana părinte ─── */
.sct-card-wrap {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 10px 0;
}

/* ─── Card Base ─── */
.sct-card {
    background-color: var(--sct-card-bg, #ffffff);
    border: 1px solid var(--sct-card-border, #e5e7eb);
    border-radius: var(--sct-card-radius, 10px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    width: 100%;
    max-width: var(--sct-card-max-w, 380px);
    text-align: center;
    font-family: toyota-type-book, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.sct-card:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2);
    transform: translateY(-3px);
    border-color: var(--sct-accent, #ff0022);
}

/* ═══════════════════════════════════════════
   HEADER — Locație (alb, badge)
   ═══════════════════════════════════════════ */
.sct-card__header {
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    border-bottom: 3px solid var(--sct-accent, #ff0022);
    background-color: var(--sct-header-bg, var(--sct-card-bg, #ffffff));
}

.sct-card__badge {
    font-size: var(--sct-badge-size, 0.8rem);
    color: var(--sct-badge-color, #6b7280);
    font-weight: var(--sct-badge-weight, 500);
    font-family: var(--sct-badge-font, inherit);
    letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════════
   HEADER — Fiscal (negru)
   ═══════════════════════════════════════════ */
.sct-card__header--dark {
    background-color: var(--sct-header-bg, #282830);
    color: var(--sct-header-color, #ffffff);
    height: 70px;
    padding: 0 15px;
}

.sct-card__header--dark h3 {
    margin: 0;
    padding: 0;
    font-size: var(--sct-header-size, 1.1rem);
    font-weight: var(--sct-header-weight, 800);
    font-family: var(--sct-header-font, inherit);
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--sct-header-color, #ffffff);
    line-height: 1.2;
}

/* ─── Body ─── */
.sct-card__body {
    padding: 15px;
}

/* ─── Map ─── */
.sct-card__map {
    width: 100%;
    line-height: 0;
    border-top: 1px solid var(--sct-card-border, #e5e7eb);
}
.sct-card__map iframe {
    width: 100%;
    display: block;
    border: 0;
    min-height: 350px;
}

/* ═══════════════════════════════════════════
   LOCATION CARD — Zone fixe
   ═══════════════════════════════════════════ */
.sct-loc__zone {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    text-align: center;
}

/* Titlu */
.sct-loc__zone--title { height: 52px; }

.sct-loc__title {
    margin: 0;
    font-size: var(--sct-title-size, 1rem);
    font-weight: var(--sct-title-weight, 800);
    font-family: var(--sct-title-font, inherit);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--sct-title-color, #282830);
    line-height: 1.3;
    text-align: center;
    width: 100%;
}
.sct-loc__title a {
    color: var(--sct-title-color, #282830);
    text-decoration: none;
    transition: color 0.2s;
}
.sct-loc__title a:hover {
    color: var(--sct-accent, #ff0022);
}

/* Adresă */
.sct-loc__zone--address { height: 55px; }

.sct-loc__address {
    font-size: var(--sct-address-size, 0.85rem);
    font-weight: var(--sct-address-weight, 400);
    font-family: var(--sct-address-font, inherit);
    color: var(--sct-address-color, #1f2937);
    line-height: 1.5;
    margin: 0;
    text-align: center;
    width: 100%;
}

/* Program */
.sct-loc__zone--schedule {
    height: 120px;
    padding: 10px 0;
    border-top: 1px solid #f3f4f6;
    border-bottom: 1px solid #f3f4f6;
}

.sct-loc__schedule-label {
    display: block;
    font-size: var(--sct-sched-label-size, 0.75rem);
    font-weight: var(--sct-sched-label-weight, 800);
    color: var(--sct-sched-label-color, var(--sct-accent, #ff0022));
    text-transform: uppercase;
    margin-bottom: 6px;
}

.sct-loc__schedule-line {
    display: block;
    font-size: var(--sct-sched-size, 0.82rem);
    font-weight: var(--sct-sched-weight, 400);
    font-family: var(--sct-sched-font, inherit);
    color: var(--sct-sched-color, #1f2937);
    line-height: 1.6;
}

/* Contact */
.sct-loc__zone--contact {
    height: 65px;
    margin-top: 10px;
}

.sct-loc__contact-line {
    display: block;
    font-size: var(--sct-contact-size, 0.82rem);
    font-weight: var(--sct-contact-weight, 400);
    font-family: var(--sct-contact-font, inherit);
    color: var(--sct-contact-color, #1f2937);
    line-height: 1.8;
}

.sct-loc__contact-line a {
    color: var(--sct-link-color, var(--sct-accent, #ff0022));
    text-decoration: none;
    font-weight: 600;
    transition: color 0.2s;
}
.sct-loc__contact-line a:hover {
    color: var(--sct-title-color, #282830);
    text-decoration: underline;
}

/* ═══════════════════════════════════════════
   FISCAL CARD
   ═══════════════════════════════════════════ */
.sct-fiscal__row {
    margin-bottom: 15px;
    text-align: center;
}

.sct-fiscal__label {
    display: block;
    font-size: var(--sct-label-size, 0.7rem);
    font-weight: var(--sct-label-weight, 800);
    font-family: var(--sct-label-font, inherit);
    color: var(--sct-label-color, var(--sct-accent, #ff0022));
    text-transform: uppercase;
    margin-bottom: 4px;
}

.sct-fiscal__value {
    display: block;
    font-size: var(--sct-value-size, 0.85rem);
    font-weight: var(--sct-value-weight, 500);
    font-family: var(--sct-value-font, inherit);
    color: var(--sct-value-color, #282830);
    line-height: 1.5;
    font-style: normal;
    text-align: center;
}

.sct-fiscal__data {
    margin-top: 5px;
    padding-top: 15px;
    border-top: 1px solid #f3f4f6;
}

.sct-fiscal__badge {
    background-color: var(--sct-badge-bg, #fcfcfc);
    padding: 8px;
    border-radius: 6px;
    border: 1px solid var(--sct-badge-border, #f0f0f0);
    margin-bottom: 10px;
    text-align: center;
}

.sct-fiscal__badge-label {
    display: block;
    font-size: var(--sct-badge-label-size, 0.65rem);
    color: var(--sct-badge-label-color, #6b7280);
    font-weight: bold;
    text-transform: uppercase;
}

.sct-fiscal__badge-value {
    display: block;
    font-size: var(--sct-badge-value-size, 0.8rem);
    font-weight: var(--sct-badge-value-weight, 700);
    color: var(--sct-badge-value-color, #282830);
}

/* ─── Responsive ─── */
@media (max-width: 768px) {
    .sct-card {
        max-width: 100%;
    }
}
