/**
 * GocSmsOtp — giriş formu ve yönetim/kullanıcı sayfası stilleri.
 * Kurumsal kırmızı vurgu: #9A0000
 */

/* --- Giriş formu OTP alanı ---
   Kod alanı ve buton, üstteki kullanıcı adı/parola alanlarıyla AYNI görünsün diye
   temanın form-control / btn stilini MİRAS ALIR; burada yalnızca yerleşim ve ince
   okunurluk ayarları yapılır.

   DİKKAT (Goc_Kurumsal login cilası ile etkileşim): tema, login panelinde
   `.login .login-panel .btn-primary { width:100% }` (Oturum aç tam genişlik) ve
   `.login .col-right input/button { margin-bottom:1rem }` kuralları içerir. Bu
   kurallar OTP satırındaki yan-yana düzeni bozar (buton tüm satırı kaplar, kod
   alanı sıfıra sıkışır). Aşağıdaki kurallar !important ile bu genel login
   kurallarını yalnızca .gocsmsotp-row İÇİNDE etkisiz kılar — yükleme sırası ve
   özgüllük fark etmeksizin. */
.gocsmsotp-loginblock {
    margin-top: 1rem;
}

.gocsmsotp-loginblock > label {
    display: block;
    margin-bottom: 0.35rem;
    font-weight: 600;
}

/* Kod alanı ile "Kod Gönder" butonu yan yana ve EŞİT YÜKSEKLİKTE */
.gocsmsotp-row {
    display: flex;
    gap: 0.5rem;
    align-items: stretch;
}

.gocsmsotp-row .form-control {
    width: auto !important;        /* temanın width:100%'ü flex'te taşmaya yol açar */
    flex: 1 1 auto;
    min-width: 0;
    margin-bottom: 0 !important;   /* temanın login margin-bottom:1rem'ini satır içinde iptal et */
    text-align: center;
    letter-spacing: 3px;
    font-variant-numeric: tabular-nums;
}

.gocsmsotp-row .btn {
    width: auto !important;        /* temanın .login .login-panel .btn-primary { width:100% } kuralını ez */
    flex: 0 0 auto;
    margin-bottom: 0 !important;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    padding-top: 0;                /* yükseklik align-items:stretch ile inputa eşitlenir */
    padding-bottom: 0;
    font-size: 0.95rem;
}

/* Yer tutucu (placeholder) girilen kodun geniş harf aralığını miras almasın;
   sade, normal aralıkta gösterilir, aksi halde metin kutuya sığmaz. */
#gocsmsotp_code::placeholder {
    letter-spacing: normal;
    font-style: italic;
    color: #9ca3af;
    opacity: 1;
}

/* Geri sayım */
#gocsmsotp-timer {
    margin-left: 8px;
    font-weight: 700;
    color: #9A0000;
    white-space: nowrap;
}

/* Mesaj alanı */
#gocsmsotp-msg {
    margin-top: 8px;
    min-height: 1.3em;
    font-size: 0.92em;
}

.gso-msg-ok {
    color: #1e7e34;
}

.gso-msg-err {
    color: #9A0000;
    font-weight: 600;
}

.gso-msg-warn {
    color: #b05c00;
}

/* Simülasyon kodu vurgusu (yalnız simulation_mode açıkken görünür) */
.gocsmsotp-simcode {
    color: #e65100;
    font-weight: 700;
}

/* --- Simülasyon modu sabit üst uyarı bandı --- */
.gocsmsotp-simbanner {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    padding: 6px 16px;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #fff;
    background: linear-gradient(90deg, #9A0000 0%, #e65100 100%);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}

/* --- Yönetim / kullanıcı sayfası öğeleri --- */

/* Sonuç mesajı alanı (admin.js doldurur) */
#gso-alert {
    display: none;
    margin-bottom: 12px;
}

#gso-alert.alert {
    display: block;
}

/* Kredi göstergesi */
#gso-credit {
    font-weight: 700;
    color: #9A0000;
}

/* Kurtarma kodu listesi (tek seferlik gösterim) */
#gso-recovery-list {
    margin-top: 10px;
}

.gso-recovery-codes {
    margin: 0 0 10px;
    padding: 10px 14px;
    list-style: none;
    background: #fafafa;
    border: 1px dashed #9A0000;
    border-radius: 4px;
    -webkit-columns: 2;
    columns: 2;
}

.gso-recovery-codes li {
    padding: 2px 0;
}

.gso-recovery-codes code {
    font-size: 1.05em;
    letter-spacing: 2px;
    color: #212121;
    background: transparent;
}
