/* LogiSmart giriş ekranı — marka renkleri: lacivert #1e4069, turkuaz #48bbc0
   Koyu tema, <html data-bs-theme="dark"> ile devreye girer (tema.js uygular). */

:root {
    /* Tarayıcının kendi denetimleri (imleç, kaydırma çubuğu, otomatik doldurma) de temaya uysun.
       Giriş ekranı Bootstrap yüklemediğinden burada elle belirtilir. */
    color-scheme: light;

    --ls-lacivert: #1e4069;
    --ls-lacivert-koyu: #16304f;
    --ls-turkuaz: #48bbc0;
    --ls-turkuaz-koyu: #3aa6ab;
    --ls-hata: #d64545;

    /* Açık tema */
    --ls-zemin: #f2f6f9;
    --ls-kart: #ffffff;
    --ls-kart-cizgi: rgba(30, 64, 105, 0.06);
    --ls-kart-golge: rgba(30, 64, 105, 0.10);
    --ls-metin: #24344a;
    --ls-metin-soluk: #6b7a90;
    --ls-cizgi: #d5dde6;
    --ls-alan-zemin: #fbfcfe;
    --ls-alan-zemin-odak: #ffffff;
    --ls-yer-tutucu: #a8b3c2;
    --ls-baslik: var(--ls-lacivert);
    --ls-surum: #9aa7b7;
}

[data-bs-theme="dark"] {
    color-scheme: dark;

    --ls-zemin: #0d1b2c;
    --ls-kart: #142434;
    --ls-kart-cizgi: rgba(255, 255, 255, 0.08);
    --ls-kart-golge: rgba(0, 0, 0, 0.45);
    --ls-metin: #dce6f2;
    --ls-metin-soluk: #93a7bf;
    --ls-cizgi: #2a4361;
    --ls-alan-zemin: #0f1f30;
    --ls-alan-zemin-odak: #16283c;
    --ls-yer-tutucu: #5f7899;
    --ls-baslik: #6fd3d8;
    --ls-surum: #6b7f97;
    --ls-hata: #ff7b7b;
}

* {
    box-sizing: border-box;
}

html, body {
    height: 100%;
    margin: 0;
}

.giris-govde {
    font-family: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
    color: var(--ls-metin);
    background: var(--ls-zemin);
}

.giris-sayfa {
    display: flex;
    min-height: 100vh;
}

/* ------- Sol tanıtım paneli ------- */

.giris-tanitim {
    flex: 1 1 55%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 64px 8%;
    color: #ffffff;
    background:
        radial-gradient(900px 500px at 85% -10%, rgba(72, 187, 192, 0.28), transparent 60%),
        radial-gradient(700px 500px at -10% 110%, rgba(72, 187, 192, 0.16), transparent 55%),
        linear-gradient(150deg, var(--ls-lacivert) 0%, var(--ls-lacivert-koyu) 100%);
    position: relative;
}

.giris-tanitim-cizgi {
    width: 56px;
    height: 4px;
    border-radius: 2px;
    background: var(--ls-turkuaz);
    margin-bottom: 28px;
}

.giris-tanitim h1 {
    font-size: clamp(28px, 3.2vw, 42px);
    line-height: 1.2;
    font-weight: 700;
    margin: 0 0 16px;
}

.giris-tanitim p {
    font-size: 16px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.82);
    max-width: 460px;
    margin: 0 0 36px;
}

.giris-hizmetler {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 18px;
}

.giris-hizmetler li {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 15px;
    color: rgba(255, 255, 255, 0.92);
}

.giris-hizmetler svg {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    padding: 8px;
    border-radius: 10px;
    background: rgba(72, 187, 192, 0.18);
    fill: var(--ls-turkuaz);
}

.giris-tanitim-alt {
    position: absolute;
    left: 8%;
    bottom: 28px;
    font-size: 13px;
    letter-spacing: 0.4px;
    color: rgba(255, 255, 255, 0.45);
}

/* ------- Sağ giriş paneli ------- */

.giris-panel {
    flex: 1 1 45%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
}

.giris-kart {
    width: 100%;
    max-width: 410px;
    background: var(--ls-kart);
    border: 1px solid var(--ls-kart-cizgi);
    border-radius: 16px;
    box-shadow: 0 18px 45px var(--ls-kart-golge);
    padding: 40px 36px 28px;
}

/* Koyu temada renkli logo okunmaz; beyaza çevrilir */
[data-bs-theme="dark"] .giris-logo img {
    filter: brightness(0) invert(1);
}

.giris-logo {
    text-align: center;
    margin-bottom: 20px;
}

.giris-logo img {
    width: 210px;
    max-width: 100%;
}

.giris-kart h2 {
    margin: 0;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: var(--ls-baslik);
}

.giris-alt-baslik {
    margin: 6px 0 18px;
    text-align: center;
    font-size: 14px;
    color: var(--ls-metin-soluk);
}

/* ------- Hatalar ------- */

.giris-hatalar {
    text-align: center;
    margin-bottom: 12px;
}

.giris-hatalar:empty {
    margin: 0;
}

.giris-hatalar span {
    display: block;
    font-size: 13.5px;
    color: var(--ls-hata);
}

.giris-hatalar .field-validation-valid {
    display: none;
}

.input-validation-error {
    border-color: var(--ls-hata) !important;
}

/* ------- Form alanları ------- */

.giris-alan {
    margin-bottom: 16px;
}

.giris-alan label {
    display: block;
    margin-bottom: 6px;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--ls-baslik);
}

.giris-alan input {
    width: 100%;
    padding: 12px 14px;
    font-size: 15px;
    color: var(--ls-metin);
    background: var(--ls-alan-zemin);
    border: 1px solid var(--ls-cizgi);
    border-radius: 10px;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.giris-alan input::placeholder {
    color: var(--ls-yer-tutucu);
}

.giris-alan input:focus {
    border-color: var(--ls-turkuaz);
    box-shadow: 0 0 0 4px rgba(72, 187, 192, 0.16);
    background: var(--ls-alan-zemin-odak);
}

.giris-secenekler {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 4px 0 20px;
}

.giris-hatirla {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--ls-metin-soluk);
    cursor: pointer;
    user-select: none;
}

.giris-hatirla input {
    width: 17px;
    height: 17px;
    accent-color: var(--ls-turkuaz);
    cursor: pointer;
}

/* ------- Buton ------- */

.giris-buton {
    width: 100%;
    padding: 13px 16px;
    font-size: 15.5px;
    font-weight: 600;
    letter-spacing: 0.3px;
    color: #ffffff;
    background: var(--ls-turkuaz);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: background-color 0.15s ease, transform 0.05s ease;
}

.giris-buton:hover {
    background: var(--ls-turkuaz-koyu);
}

.giris-buton:active {
    transform: translateY(1px);
}

.giris-buton:focus-visible {
    outline: 3px solid rgba(72, 187, 192, 0.4);
    outline-offset: 2px;
}

.giris-surum {
    margin-top: 18px;
    text-align: center;
    font-size: 12px;
    color: var(--ls-surum);
}

/* ------- TV ile giriş (cihaz eşleştirme) ------- */

.giris-ayrac {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 14px 0 10px;
    color: var(--ls-metin-soluk);
    font-size: 12px;
}

.giris-ayrac::before,
.giris-ayrac::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--ls-cizgi);
}

.giris-tv-ac {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 11px 16px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--ls-baslik);
    background: transparent;
    border: 1px solid var(--ls-cizgi);
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.15s ease, color 0.15s ease;
}

.giris-tv-ac:hover {
    border-color: var(--ls-turkuaz);
    color: var(--ls-turkuaz);
}

/* TV görünümü açıkken normal giriş alanları gizlenir (logo ve başlık kalır) */
.giris-kart.tv-acik .giris-hatalar,
.giris-kart.tv-acik .giris-alan,
.giris-kart.tv-acik .giris-secenekler,
.giris-kart.tv-acik .giris-buton,
.giris-kart.tv-acik .giris-ayrac,
.giris-kart.tv-acik .giris-tv-ac {
    display: none;
}

.giris-tv {
    text-align: center;
}

.giris-tv-aciklama {
    margin: 6px 0 14px;
    font-size: 14px;
    color: var(--ls-metin-soluk);
}

.giris-tv-kod {
    font-size: 44px;
    font-weight: 800;
    letter-spacing: 14px;
    text-indent: 14px; /* letter-spacing son karakterde de boşluk bırakır; ortalamayı dengeler */
    color: var(--ls-baslik);
    padding: 10px 0;
    background: var(--ls-alan-zemin);
    border: 1px dashed var(--ls-cizgi);
    border-radius: 12px;
}

.giris-tv-durum {
    margin: 10px 0 14px;
    font-size: 13px;
    color: var(--ls-metin-soluk);
}

.giris-tv-geri {
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--ls-turkuaz);
    cursor: pointer;
}

.giris-tv-geri:hover {
    color: var(--ls-turkuaz-koyu);
}

/* ------- Tema geçiş düğmesi (sağ üst köşe) ------- */

.giris-tema {
    position: absolute;
    top: 22px;
    right: 26px;
    z-index: 2;
}

.tema-dugme {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid var(--ls-cizgi);
    border-radius: 50%;
    background: var(--ls-kart);
    color: var(--ls-baslik);
    cursor: pointer;
    transition: border-color 0.15s ease, color 0.15s ease;
}

.tema-dugme:hover {
    border-color: var(--ls-turkuaz);
    color: var(--ls-turkuaz);
}

.tema-dugme .ikon-ay { display: inline-flex; }
.tema-dugme .ikon-gunes { display: none; }
[data-bs-theme="dark"] .tema-dugme .ikon-ay { display: none; }
[data-bs-theme="dark"] .tema-dugme .ikon-gunes { display: inline-flex; }

/* ------- Duyarlı düzen ------- */

@media (max-width: 900px) {
    .giris-tanitim {
        display: none;
    }

    .giris-panel {
        flex: 1 1 100%;
        background:
            radial-gradient(600px 300px at 100% 0%, rgba(72, 187, 192, 0.12), transparent 60%),
            var(--ls-zemin);
    }
}

@media (max-width: 480px) {
    .giris-kart {
        padding: 32px 22px 22px;
        border-radius: 14px;
    }
}
