/*
 * Slayt açıklaması (v1.70.0) — panonun ve paneldeki önizlemenin ORTAK stili.
 *
 * Tek dosya bilinçlidir: pano (display_pano.html) ile Slaytlar bölümündeki
 * önizleme penceresi (admin_dashboard.html) bu dosyayı birlikte yükler. İki
 * kopya olsaydı idarecinin önizlemede gördüğü ile panoda çizilen zamanla ayrışırdı.
 *
 * Ölçek ekranın değil SLAYT KUTUSUNUN birimiyle kurulur (`cqh`/`cqw`): orta alan
 * bir panoda 1600 px, başka birinde 700 px genişliktedir. Kalan taşmayı
 * `data-fit-box` sözleşmesi (display.js::fitContentToBox) küçülterek kapatır.
 * Seçenek anahtarları constants/slides.py'dedir.
 */

.slide-caption-host {
    container-type: size;
}

.slide-caption {
    position: absolute;
    z-index: 20;
    max-width: 72%;
    max-height: 46%;
    overflow: hidden;
    box-sizing: border-box;
    padding: 0.7em 1em;
    border-radius: 0.6em;
    pointer-events: none;
    /* Ölçek tabanı: kutu birimi yoksa (eski tarayıcı) vh'ye düşer. */
    font-size: 2.4vh;
    font-size: min(4.6cqh, 2.8cqw);
}

.slide-caption[data-size="sm"] { font-size: 1.8vh; font-size: min(3.4cqh, 2.1cqw); }
.slide-caption[data-size="lg"] { font-size: 3.2vh; font-size: min(6.2cqh, 3.7cqw); }

.slide-caption[data-position^="top-"] { top: 4%; }
.slide-caption[data-position^="bottom-"] { bottom: 4%; }
.slide-caption[data-position$="-left"] { left: 3%; text-align: left; }
.slide-caption[data-position$="-right"] { right: 3%; text-align: right; }
.slide-caption[data-position$="-center"] {
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}

.slide-caption-body {
    font-size: calc(1em * var(--fit, 1));
    line-height: 1.25;
}

.slide-caption-title {
    font-family: 'Sora', 'Inter', system-ui, sans-serif;
    font-weight: 700;
    font-size: 1.3em;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.slide-caption-text {
    margin-top: 0.3em;
    font-size: 0.85em;
    white-space: pre-line;
    overflow-wrap: anywhere;
}

.slide-caption-title:empty,
.slide-caption-text:empty { display: none; }
.slide-caption-title:empty + .slide-caption-text { margin-top: 0; }

/* Hazır tasarımlar */
.slide-caption[data-style="dark"] {
    background: rgba(15, 23, 42, 0.78);
    color: #ffffff;
}

.slide-caption[data-style="light"] {
    background: rgba(255, 255, 255, 0.94);
    color: #0f172a;
    box-shadow: 0 0.3em 1.2em rgba(15, 23, 42, 0.25);
}

.slide-caption[data-style="brand"] {
    background: rgba(3, 105, 161, 0.92);
    color: #ffffff;
    border-left: 0.35em solid #f9c143;
}

.slide-caption[data-style="shadow"] {
    background: transparent;
    color: #ffffff;
    padding-left: 0;
    padding-right: 0;
    text-shadow: 0 0.08em 0.25em rgba(0, 0, 0, 0.95), 0 0 0.6em rgba(0, 0, 0, 0.7);
}
