/* Umut Bilişim kurumsal tema: logo kırmızısı + antrasit. Şablonun varsayılan görünümünü geçersiz kılar. */
:root {
    --kr-kirmizi: #b81010;
    --kr-kirmizi-koyu: #8f0c0c;
    --kr-antrasit: #2d3136;
    --kr-antrasit-acik: #3b4047;
    --kr-zemin: #f4f5f7;
    --kr-cizgi: #d9dce1;
    --kr-metin: #1f2328;
    --kr-soluk: #5f6670;
}

html, body {
    font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif !important;
    color: var(--kr-metin);
}

body { background: var(--kr-zemin); }

/* ---- Kenar menü ---- */
.sidebar {
    background: var(--kr-antrasit) !important;
    background-image: none !important;
}

.sidebar .top-row {
    background: #fff !important;
    border-bottom: 3px solid var(--kr-kirmizi) !important;
    height: auto !important;
    min-height: 76px !important;
    padding: 10px 16px !important;
    justify-content: flex-start !important;
}

.sidebar .navbar-brand { padding: 0; display: block; }
.sidebar .navbar-brand img { display: block; width: 100%; max-width: 210px; height: auto; }

.sidebar .nav-item { font-size: .95rem; padding-bottom: .1rem; }

.sidebar .nav-link {
    color: #d4d8de !important;
    border-radius: 4px !important;
    height: 2.6rem !important;
    line-height: 2.6rem !important;
}

.sidebar .nav-link:hover { background: rgba(255, 255, 255, .08) !important; color: #fff !important; }

.sidebar .nav-link.active {
    background: rgba(184, 16, 16, .30) !important;
    color: #fff !important;
    box-shadow: inset 3px 0 0 var(--kr-kirmizi);
}

/* ---- Üst çubuk ve içerik ---- */
main > .top-row {
    background: #fff !important;
    border-bottom: 1px solid var(--kr-cizgi) !important;
}

.kr-kullanici { margin-right: 16px; color: var(--kr-soluk); font-size: .92rem; }
.kr-kullanici strong { color: var(--kr-metin); font-weight: 600; }

article.content { padding-top: 1.4rem !important; }

h1 {
    font-size: 1.55rem;
    font-weight: 600;
    color: var(--kr-metin);
    padding-bottom: .55rem;
    margin-bottom: 1.2rem;
    border-bottom: 1px solid var(--kr-cizgi);
    position: relative;
}

h1::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 72px;
    height: 3px;
    background: var(--kr-kirmizi);
}

h2 { color: var(--kr-metin); font-weight: 600; }
h3 { color: var(--kr-metin); font-weight: 600; }

main a { color: var(--kr-kirmizi-koyu); }
main a:hover { color: var(--kr-kirmizi); }

/* ---- Düğmeler ---- */
main button, .kr-btn {
    background: var(--kr-antrasit-acik);
    color: #fff;
    border: 1px solid var(--kr-antrasit-acik);
    border-radius: 4px;
    padding: 5px 14px;
    font-size: .9rem;
    line-height: 1.4;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}

main button:hover:not(:disabled) { background: var(--kr-kirmizi); border-color: var(--kr-kirmizi); }
main button:disabled { opacity: .45; cursor: not-allowed; }

main button.kr-birincil { background: var(--kr-kirmizi); border-color: var(--kr-kirmizi); }
main button.kr-birincil:hover:not(:disabled) { background: var(--kr-kirmizi-koyu); border-color: var(--kr-kirmizi-koyu); }

main .top-row button {
    background: transparent;
    color: var(--kr-antrasit);
    border: 1px solid #b8bdc5;
}

main .top-row button:hover:not(:disabled) {
    background: var(--kr-antrasit);
    color: #fff;
    border-color: var(--kr-antrasit);
}

/* ---- Form alanları ---- */
input:not([type=checkbox]):not([type=radio]), select, textarea {
    border: 1px solid #c3c8d0;
    border-radius: 4px;
    padding: 5px 8px;
    background: #fff;
    font-size: .92rem;
    color: var(--kr-metin);
}

input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: var(--kr-kirmizi);
    box-shadow: 0 0 0 3px rgba(184, 16, 16, .15);
}

input:disabled, select:disabled, textarea:disabled { background: #eceef1; color: #7b828c; }

label { font-size: .86rem; color: var(--kr-soluk); margin-bottom: 2px; }
label:has(> input[type=checkbox]) { color: var(--kr-metin); font-size: .9rem; }

/* ---- Tablolar ---- */
table.table {
    width: 100%;
    background: #fff;
    border: 1px solid var(--kr-cizgi);
    border-collapse: collapse;
    margin-bottom: 1rem;
}

table.table thead th {
    background: #eceef1;
    color: var(--kr-metin);
    font-weight: 600;
    font-size: .86rem;
    border-bottom: 2px solid var(--kr-kirmizi) !important;
    padding: .55rem .75rem;
    text-align: left;
}

table.table td, table.table th { padding: .5rem .75rem; vertical-align: middle; border-top: 1px solid #edeff2; }
table.table tbody tr:hover td { background: #fafbfc; }

/* ---- Kartlar ve özet kutuları ---- */
.kr-kart {
    background: #fff;
    border: 1px solid var(--kr-cizgi);
    border-radius: 6px;
    padding: 16px 18px;
}

.kr-ozet { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.kr-ozet .kr-kart { min-width: 170px; border-top: 3px solid var(--kr-kirmizi); }
.kr-ozet .kr-sayi { font-size: 1.9rem; font-weight: 600; line-height: 1.1; }
.kr-ozet .kr-etiket { color: var(--kr-soluk); font-size: .86rem; }

.kr-mesaj-hata { color: #8f0c0c; background: #fdecec; border: 1px solid #f3b9b9; padding: 8px 12px; border-radius: 4px; }
.kr-mesaj-bilgi { color: #0a5d2a; background: #e8f6ed; border: 1px solid #b5e0c4; padding: 8px 12px; border-radius: 4px; }

/* ---- Giriş sayfaları ---- */
.kr-giris-sayfa {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--kr-zemin);
    padding: 16px;
}

.kr-giris-kart {
    width: 100%;
    max-width: 400px;
    background: #fff;
    border: 1px solid var(--kr-cizgi);
    border-top: 4px solid var(--kr-kirmizi);
    border-radius: 6px;
    padding: 28px 28px 22px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, .06);
}

.kr-giris-logo { display: block; width: 100%; max-width: 300px; margin: 0 auto 18px; }
.kr-giris-baslik { text-align: center; font-size: 1.15rem; margin-bottom: 14px; color: var(--kr-antrasit); }
.kr-giris-kart label { display: block; margin-top: 12px; }
.kr-giris-kart input { width: 100%; }
.kr-giris-kart .kr-mesaj-hata, .kr-giris-kart .kr-mesaj-bilgi { margin-bottom: 8px; font-size: .9rem; }

.kr-giris-kart button[type=submit] {
    width: 100%;
    margin-top: 18px;
    padding: 9px;
    background: var(--kr-kirmizi);
    color: #fff;
    border: 1px solid var(--kr-kirmizi);
    border-radius: 4px;
    font-size: 1rem;
    cursor: pointer;
}

.kr-giris-kart button[type=submit]:hover { background: var(--kr-kirmizi-koyu); border-color: var(--kr-kirmizi-koyu); }
.kr-giris-alt { text-align: center; color: var(--kr-soluk); font-size: .8rem; margin-top: 16px; }
.kr-giris-alt a { color: var(--kr-kirmizi-koyu); }

/* ---- Yazdırma ---- */
.kr-yazdirma-baslik { display: none; }

@media print {
    .sidebar, main > .top-row, .kr-yazdirma-gizle, #blazor-error-ui { display: none !important; }
    .page { display: block !important; }
    main, article.content { padding: 0 !important; margin: 0 !important; }
    body { background: #fff !important; }
    .kr-yazdirma-baslik { display: block !important; }
    table.table { font-size: 11px; }
    h1::after { display: none; }
    a { color: #000 !important; text-decoration: none !important; }
}

/* ---- Rapor yazdırma ---- */
.kr-rapor { page: rapor; }

@page rapor {
    size: A4 landscape;
    margin: 12mm;
}

.kr-yazdirma-baslik .ust {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: 3px solid var(--kr-kirmizi);
    padding-bottom: 8px;
}

.kr-yazdirma-baslik img { height: 46px; width: auto; }
.kr-yazdirma-baslik .rapor-adi { font-size: 18px; font-weight: 600; text-align: right; }
.kr-yazdirma-baslik .alt { font-size: 11px; color: #444; margin-top: 6px; }

.kr-yazdirma-alt { display: none; }

@media print {
    body { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .kr-yazdirma-baslik { margin-bottom: 12px; }
    .kr-yazdirma-alt {
        display: block !important;
        margin-top: 14px;
        padding-top: 6px;
        border-top: 1px solid #999;
        font-size: 10px;
        color: #555;
        text-align: center;
    }
    table.table th, table.table td { border: 1px solid #bbb !important; padding: 4px 6px !important; }
    table.table thead th { background: #eceef1 !important; }
    tr { page-break-inside: avoid; }
}

/* ---- Servis formu (yazdırma) ---- */
.kr-form-sayfa { background: #fff; border: 1px solid var(--kr-cizgi); border-radius: 6px; padding: 24px; max-width: 900px; }

.kr-form-baslik {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 3px solid var(--kr-kirmizi);
    padding-bottom: 8px;
    margin-bottom: 14px;
}

.kr-form-baslik .ad { font-size: 22px; font-weight: 700; letter-spacing: .5px; }

.kr-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 24px; margin-bottom: 14px; font-size: 13px; }
.kr-form-grid span, .kr-form-kutu span { color: #5f6670; }

.kr-form-kutu { border: 1px solid var(--kr-cizgi); border-radius: 4px; padding: 10px 12px; font-size: 13px; }

.kr-imza-alani { display: flex; gap: 48px; margin-top: 56px; }
.kr-imza { flex: 1; border-top: 1px solid #444; padding-top: 6px; text-align: center; font-size: 12px; color: #333; }

@media print {
    .kr-form-sayfa { border: none; padding: 0; max-width: none; }
}

/* ==== Kurumsal cila (v2): daha sakin düğmeler, yumuşak gölgeler, düzenli tablo ve kartlar ==== */
@media screen {
    ::selection { background: rgba(184, 16, 16, .18); }

    body { -webkit-font-smoothing: antialiased; line-height: 1.5; }

    article.content { max-width: 1600px; }

    article.content h2 { margin: 1.5rem 0 .75rem; }
    article.content h2:first-child { margin-top: 0; }

    /* Düğmeler: varsayılan sade çerçeveli, birincil işlem kırmızı dolu. */
    main button {
        background: #fff;
        color: var(--kr-antrasit);
        border: 1px solid #b8bdc5;
        border-radius: 5px;
        padding: 6px 14px;
        font-weight: 500;
        box-shadow: 0 1px 1px rgba(16, 24, 40, .04);
    }

    main button:hover:not(:disabled) {
        background: #fff5f5;
        color: var(--kr-kirmizi-koyu);
        border-color: var(--kr-kirmizi);
    }

    main button:focus-visible { outline: 3px solid rgba(184, 16, 16, .25); outline-offset: 1px; }

    main button.kr-birincil { background: var(--kr-kirmizi); color: #fff; border-color: var(--kr-kirmizi); }
    main button.kr-birincil:hover:not(:disabled) { background: var(--kr-kirmizi-koyu); color: #fff; border-color: var(--kr-kirmizi-koyu); }

    table.table td button, table.table td a button { padding: 3px 10px; font-size: .84rem; }

    /* Form alanları */
    input:not([type=checkbox]):not([type=radio]):not([type=file]), select { min-height: 34px; }
    textarea { resize: vertical; line-height: 1.4; }
    input[type=checkbox], input[type=radio] { accent-color: var(--kr-kirmizi); }

    /* Kartlar */
    .kr-kart { box-shadow: 0 1px 2px rgba(16, 24, 40, .05); }
    a.kr-kart { transition: box-shadow .15s, transform .15s, border-color .15s; }
    a.kr-kart:hover { box-shadow: 0 6px 16px rgba(16, 24, 40, .10); transform: translateY(-1px); border-color: #c9ced6; }

    .kr-kart > h2 {
        font-size: .82rem !important;
        text-transform: uppercase;
        letter-spacing: .06em;
        color: var(--kr-soluk);
        border-left: 3px solid var(--kr-kirmizi);
        padding-left: 8px;
        margin: 0 0 .9rem;
    }

    .kr-ozet .kr-sayi { letter-spacing: -.01em; }

    /* Tablolar */
    table.table {
        border-collapse: separate;
        border-spacing: 0;
        border-radius: 6px;
        overflow: hidden;
        box-shadow: 0 1px 2px rgba(16, 24, 40, .05);
    }

    table.table thead th {
        font-size: .78rem;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: var(--kr-soluk);
        background: #f1f3f5;
    }

    table.table tbody tr:nth-child(even) td { background: #fbfbfc; }
    table.table tbody tr:hover td { background: #f4f6f8; }
    table.table tbody tr:first-child td { border-top: none; }

    /* Mesajlar */
    .kr-mesaj-hata, .kr-mesaj-bilgi { border-left-width: 4px; font-size: .92rem; }
    .kr-mesaj-hata { border-left-color: #b81010; }
    .kr-mesaj-bilgi { border-left-color: #1a7f37; }

    /* Kenar menü */
    .sidebar { border-right: 1px solid rgba(0, 0, 0, .25); }
    .sidebar .nav-link { transition: background .15s, color .15s; }

    /* İnce kaydırma çubukları */
    * { scrollbar-width: thin; scrollbar-color: #b5bbc4 transparent; }
}
