/* =====================================================================
   Uygulama özel stilleri — marka renkleri ve düzen
   Ana renkler: Slate #3D4451, vurgu #1F3A4D, gri #6B7280
   ===================================================================== */

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('../fonts/inter-var.woff2') format('woff2');
}

:root {
    --renk-slate: #3D4451;
    --renk-vurgu: #1F3A4D;
    --renk-gri: #6B7280;
    --kenar-genislik: 240px;
}

body {
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    background: #f1f5f9;
    color: var(--renk-slate);
}

/* --- Sol menü --- */
.kenar-menu {
    width: var(--kenar-genislik);
    min-height: 100vh;
    background: var(--renk-vurgu);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
    display: flex;
    flex-direction: column;
}
.kenar-menu .marka {
    color: #fff;
    font-weight: 700;
    font-size: 0.95rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    text-decoration: none;
    display: block;
}
.kenar-menu .nav-link {
    color: rgba(255, 255, 255, 0.75);
    padding: 0.65rem 1.25rem;
    font-size: 0.9rem;
    border-left: 3px solid transparent;
}
.kenar-menu .nav-link:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.06);
}
.kenar-menu .nav-link.aktif {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
    border-left-color: #fff;
    font-weight: 600;
}

.ana-icerik {
    margin-left: var(--kenar-genislik);
    padding: 1.5rem;
    min-height: 100vh;
}

.ust-cubuk {
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    margin: -1.5rem -1.5rem 1.5rem;
    padding: 0.75rem 1.5rem;
}

/* Mobil: menü gizli, hamburger ile açılır */
@media (max-width: 991.98px) {
    .kenar-menu {
        transform: translateX(-100%);
        transition: transform 0.2s ease;
    }
    .kenar-menu.acik {
        transform: translateX(0);
    }
    .ana-icerik {
        margin-left: 0;
    }
    .menu-karartma {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.4);
        z-index: 1029;
    }
}

/* --- Sayaç kartları --- */
.sayac-kart {
    border: 0;
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.sayac-kart .sayi {
    font-size: 1.9rem;
    font-weight: 700;
    line-height: 1.1;
}
.sayac-kart .etiket {
    font-size: 0.8rem;
    color: var(--renk-gri);
}

/* Sarı rozette koyu metin (okunabilirlik) */
.badge.bg-warning { color: var(--renk-slate); }

/* --- Turuncu rozet (7 gün içinde / termin uyarısı) --- */
.badge.bg-orange, .btn-orange {
    background-color: #ea700b !important;
    color: #fff;
}
.table-orange, .table-orange > td, .table-orange > th {
    background-color: #ffe8d1 !important;
}

/* Tablolar */
.card {
    border: 0;
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.table th {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--renk-gri);
    font-weight: 600;
}
.table td {
    font-size: 0.88rem;
    vertical-align: middle;
}

/* Butonlar — marka rengi */
.btn-primary {
    background-color: var(--renk-vurgu);
    border-color: var(--renk-vurgu);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #162c3c !important;
    border-color: #162c3c !important;
}
.btn-outline-primary {
    color: var(--renk-vurgu);
    border-color: var(--renk-vurgu);
}
.btn-outline-primary:hover {
    background-color: var(--renk-vurgu);
    border-color: var(--renk-vurgu);
}

a { color: var(--renk-vurgu); }

/* Giriş sayfası */
.giris-sayfa {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(160deg, var(--renk-vurgu), var(--renk-slate));
}
.giris-kart {
    width: 100%;
    max-width: 400px;
}

/* Boş durum */
.bos-durum {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--renk-gri);
}
.bos-durum .ikon { font-size: 2.5rem; }

/* Muayene zaman çizelgesi */
.zaman-cizelge {
    border-left: 2px solid #e2e8f0;
    margin-left: 0.5rem;
    padding-left: 1.25rem;
}
.zaman-cizelge .madde {
    position: relative;
    padding-bottom: 1.25rem;
}
.zaman-cizelge .madde::before {
    content: '';
    position: absolute;
    left: -1.65rem;
    top: 0.3rem;
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    background: var(--renk-vurgu);
}

@media print {
    .kenar-menu, .ust-cubuk, .yazdirma-gizle { display: none !important; }
    .ana-icerik { margin-left: 0; }
}
