/* KİŞİSEL YAŞAM MERKEZİ */
/* Genel tasarım renkleri */

:root {
    --ana-renk: #2563eb;
    --arka-plan: #f4f7fc;
    --kart-rengi: #ffffff;
    --yazi-rengi: #1e293b;
    --ikincil-yazi: #64748b;
    --kenarlik: #e2e8f0;
}

/* Genel sayfa ayarları */

* {
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', Arial, sans-serif;
    background-color: var(--arka-plan);
    color: var(--yazi-rengi);
    margin: 0;
}

/* Koyu tema renkleri */

body.dark-mode {
    --ana-renk: #60a5fa;
    --arka-plan: #111827;
    --kart-rengi: #1f2937;
    --yazi-rengi: #f9fafb;
    --ikincil-yazi: #9ca3af;
    --kenarlik: #374151;
}
/* ================================= */
/* SOL MENÜ TASARIMI                  */
/* ================================= */

.sol-menu {
    width: 240px;
    height: 100vh;
    background-color: var(--kart-rengi);
    border-right: 1px solid var(--kenarlik);
    position: fixed;
    top: 0;
    left: 0;
    padding: 20px 12px;
    overflow-y: auto;
    text-align: left;
}

.logo {
    font-size: 17px;
    font-weight: 700;
    color: var(--yazi-rengi);
    padding: 12px 10px;
    margin-bottom: 25px;
    white-space: nowrap;
}

.menu {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.menu a {
    display: block;
    text-decoration: none;
    color: var(--yazi-rengi);
    padding: 12px 15px;
    border-radius: 12px;
    font-size: 14px;
    transition: all 0.2s ease;
}

.menu a:hover {
    background-color: #e8f0ff;
    color: #2563eb;
}

.menu a.aktif {
    background-color: #dbeafe;
    color: #1d4ed8;
    font-weight: 600;
}

/* ================================= */
/* ANA İÇERİK ALANI                   */
/* ================================= */

.ana-icerik {
    margin-left: 240px;
    padding: 35px;
    min-height: 100vh;
    text-align: left;
}

.ana-icerik h1 {
    font-size: 30px;
    color: var(--yazi-rengi);
    margin-top: 0;
}

.ana-icerik p {
    color: var(--ikincil-yazi);
    font-size: 15px;
}
/* ================================= */
/* ÜST KONTROL PANELİ                 */
/* ================================= */

.ust-panel {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 12px 18px;
    margin-bottom: 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* ARAMA KUTUSU */

.arama-alani {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: var(--arka-plan);
    border: 1px solid var(--kenarlik);
    border-radius: 12px;
    padding: 10px 15px;
    width: 45%;
    min-width: 200px;
}

.arama-alani input {
    border: none;
    outline: none;
    background: transparent;
    width: 100%;
    font-size: 14px;
    color: var(--yazi-rengi);
}

/* SAĞ TARAFTAKİ BUTONLAR */

.ust-islemler {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ust-buton,
.aile-buton,
.profil-buton,
.tema-buton {
    border: 1px solid var(--kenarlik);
    background-color: var(--arka-plan);
    color: var(--yazi-rengi);
    border-radius: 12px;
    padding: 10px 14px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.2s ease;
}

.ust-buton:hover,
.aile-buton:hover,
.profil-buton:hover,
.tema-buton:hover {
    background-color: #dbeafe;
    color: #1d4ed8;
}

/* YENİ EKLE BUTONU */

.ust-buton:first-child {
    background-color: var(--ana-renk);
    color: white;
    border-color: var(--ana-renk);
}

/* KARŞILAMA ALANI */

.karsilama {
    background: linear-gradient(120deg, #dbeafe, #f8fafc);
    padding: 30px;
    border-radius: 18px;
    margin-bottom: 25px;
}

.karsilama h1 {
    margin: 0 0 10px 0;
    font-size: 30px;
    color: #1e293b;
}

.karsilama p {
    margin: 0;
    color: #64748b;
}
/* ================================= */
/* ANA EKRAN ÖZET KARTLARI            */
/* ================================= */

.ozet-kartlari {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 25px;
}

/* Kartların genel görünümü */

.ozet-kart {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 14px;
    border-radius: 15px;
    min-height: 105px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ozet-kart:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

/* Kart ikonları */

.kart-ikon {
    font-size: 25px;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.55);
    border-radius: 12px;
}

/* Kart yazıları */

.kart-bilgi {
    min-width: 0;
}

.kart-bilgi span {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #334155;
}

.kart-bilgi h2 {
    font-size: 26px;
    margin: 5px 0;
    color: #0f172a;
}

.kart-bilgi small {
    font-size: 11px;
    color: #64748b;
}

/* Pastel kart renkleri */

.kart-mavi {
    background: #e4f0ff;
}

.kart-yesil {
    background: #e2f7ed;
}

.kart-kirmizi {
    background: #ffe8e9;
}

.kart-turkuaz {
    background: #e0f5f8;
}

.kart-sari {
    background: #fff4d8;
}

.kart-mor {
    background: #f2e7ff;
}

/* Farklı ekran genişliklerine uyum */

@media (max-width: 1450px) {
    .ozet-kartlari {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 800px) {
    .ozet-kartlari {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .ozet-kartlari {
        grid-template-columns: 1fr;
    }
}
/* ================================= */
/* GÜNLÜK PROGRAM TASARIMI            */
/* ================================= */

.gunluk-program {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 22px;
    margin-bottom: 25px;
    max-width: 650px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Bölüm başlığı */

.bolum-baslik {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.bolum-baslik h2 {
    font-size: 18px;
    font-weight: 700;
    color: var(--yazi-rengi);
    margin: 0;
}

.bolum-baslik a {
    color: var(--ana-renk);
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
}

.bolum-baslik a:hover {
    text-decoration: underline;
}

/* Etkinlik listesi */

.program-listesi {
    display: flex;
    flex-direction: column;
}

.program-satir {
    display: grid;
    grid-template-columns: 75px minmax(0, 1fr) 90px;
    align-items: center;
    gap: 12px;
    padding: 15px 5px;
    border-bottom: 1px solid var(--kenarlik);
}

.program-satir:last-child {
    border-bottom: none;
}

/* Saat */

.program-saat {
    color: var(--ikincil-yazi);
    font-size: 13px;
    font-weight: 600;
}

/* Etkinlik açıklaması */

.program-etkinlik {
    color: var(--yazi-rengi);
    font-size: 14px;
    font-weight: 500;
}

/* Konum */

.program-yer {
    color: var(--ikincil-yazi);
    font-size: 12px;
    text-align: right;
}

/* Dar ekranlara uyum */

@media (max-width: 600px) {
    .gunluk-program {
        padding: 16px;
    }

    .program-satir {
        grid-template-columns: 55px minmax(0, 1fr);
        gap: 8px;
    }

    .program-yer {
        grid-column: 2;
        text-align: left;
    }
}
/* ================================= */
/* YAPILACAK İŞLER KARTI              */
/* ================================= */

.yapilacak-isler {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 22px;
    margin-bottom: 25px;
    max-width: 650px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Görev ekleme düğmesi */

.gorev-ekle {
    background-color: var(--ana-renk);
    color: white;
    border: none;
    border-radius: 10px;
    padding: 9px 18px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}

.gorev-ekle:hover {
    opacity: 0.85;
}

/* Görev filtreleri */

.gorev-filtreleri {
    display: flex;
    gap: 8px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.gorev-filtreleri button {
    border: none;
    background-color: var(--arka-plan);
    color: var(--ikincil-yazi);
    padding: 8px 15px;
    border-radius: 9px;
    font-size: 12px;
    cursor: pointer;
}

.gorev-filtreleri button.secili {
    background-color: #dbeafe;
    color: #1d4ed8;
    font-weight: 600;
}

/* Görev listesi */

.gorev-listesi {
    display: flex;
    flex-direction: column;
}

.gorev-satir {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 5px;
    border-bottom: 1px solid var(--kenarlik);
}

.gorev-satir:last-child {
    border-bottom: none;
}

/* İşaretleme kutuları */

.gorev-satir input[type="checkbox"] {
    width: 17px;
    height: 17px;
    accent-color: var(--ana-renk);
    cursor: pointer;
    flex-shrink: 0;
}

/* Görev açıklamaları */

.gorev-satir span {
    flex: 1;
    font-size: 13px;
    color: var(--yazi-rengi);
}

/* Tamamlanan görevler */

.gorev-satir input:checked + span {
    text-decoration: line-through;
    color: var(--ikincil-yazi);
}

/* Kategori etiketleri */

.gorev-satir small {
    padding: 5px 10px;
    border-radius: 7px;
    font-size: 11px;
    white-space: nowrap;
}

.etiket-is {
    background-color: #fee2e2;
    color: #b91c1c;
}

.etiket-kisisel {
    background-color: #dcfce7;
    color: #15803d;
}

.etiket-aile {
    background-color: #dbeafe;
    color: #1d4ed8;
}

/* Dar ekran uyumluluğu */

@media (max-width: 600px) {
    .yapilacak-isler {
        padding: 16px;
    }

    .gorev-satir {
        gap: 8px;
    }

    .gorev-filtreleri button {
        padding: 7px 11px;
    }
}
/* ================================= */
/* YAKLAŞAN HATIRLATMALAR TASARIMI     */
/* ================================= */

.hatirlatmalar {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 22px;
    margin-bottom: 25px;
    max-width: 650px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Hatırlatma listesi */

.hatirlatma-listesi {
    display: flex;
    flex-direction: column;
}

/* Her hatırlatma satırı */

.hatirlatma-satir {
    display: grid;
    grid-template-columns: 55px minmax(0, 1fr) 85px;
    align-items: center;
    gap: 10px;
    padding: 16px 5px;
    border-bottom: 1px solid var(--kenarlik);
}

.hatirlatma-satir:last-child {
    border-bottom: none;
}

/* Hatırlatma tarihi */

.hatirlatma-tarih {
    color: var(--ikincil-yazi);
    font-size: 12px;
    font-weight: 600;
}

/* Hatırlatma açıklaması */

.hatirlatma-aciklama {
    color: var(--yazi-rengi);
    font-size: 13px;
    font-weight: 500;
}

/* Kalan gün bilgisi */

.hatirlatma-satir small {
    color: var(--ikincil-yazi);
    font-size: 11px;
    text-align: right;
    white-space: nowrap;
}

/* Fare üzerine geldiğinde */

.hatirlatma-satir:hover {
    background-color: var(--arka-plan);
    border-radius: 8px;
}

/* Dar ekran uyumluluğu */

@media (max-width: 600px) {
    .hatirlatmalar {
        padding: 16px;
    }

    .hatirlatma-satir {
        grid-template-columns: 45px minmax(0, 1fr);
        gap: 8px;
    }

    .hatirlatma-satir small {
        grid-column: 2;
        text-align: left;
    }
}
/* ================================= */
/* ANA EKRAN ÜÇLÜ KART DÜZENİ         */
/* ================================= */

.ana-kartlar {
    display: grid;
    grid-template-columns: 1.1fr 1.1fr 1fr;
    gap: 15px;
    align-items: stretch;
    margin-bottom: 25px;
}

/* Üç kartın ortak ayarları */

.ana-kartlar > section {
    width: 100%;
    max-width: none;
    min-width: 0;
    margin-bottom: 0;
}

/* Kart başlıkları */

.ana-kartlar .bolum-baslik h2 {
    font-size: 16px;
}

/* İçeriklerin taşmasını engelle */

.ana-kartlar .program-satir {
    grid-template-columns: 55px minmax(0, 1fr) 55px;
    gap: 6px;
}

.ana-kartlar .hatirlatma-satir {
    grid-template-columns: 45px minmax(0, 1fr);
    gap: 6px;
}

.ana-kartlar .hatirlatma-satir small {
    grid-column: 2;
    text-align: left;
}

/* Orta genişlikte ekranlar */

@media (max-width: 1250px) {
    .ana-kartlar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Telefon ve dar ekranlar */

@media (max-width: 800px) {
    .ana-kartlar {
        grid-template-columns: 1fr;
    }
}
/* ================================= */
/* ALIŞVERİŞ LİSTESİ KARTI            */
/* ================================= */

.alisveris-karti {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 20px;
    min-width: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Ürün ekleme düğmesi */

.urun-ekle {
    background-color: var(--ana-renk);
    color: white;
    border: none;
    border-radius: 10px;
    padding: 9px 14px;
    font-size: 12px;
    cursor: pointer;
    white-space: nowrap;
}

.urun-ekle:hover {
    opacity: 0.85;
}

/* Alışveriş listesi */

.alisveris-listesi {
    display: flex;
    flex-direction: column;
}

/* Ürün satırları */

.alisveris-satir {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 3px;
    border-bottom: 1px solid var(--kenarlik);
}

.alisveris-satir:last-child {
    border-bottom: none;
}

/* İşaretleme kutuları */

.alisveris-satir input[type="checkbox"] {
    width: 17px;
    height: 17px;
    accent-color: #10b981;
    cursor: pointer;
    flex-shrink: 0;
}

/* Ürün isimleri */

.alisveris-satir span {
    flex: 1;
    font-size: 13px;
    color: var(--yazi-rengi);
}

/* Tamamlanan ürünler */

.alisveris-satir input:checked + span {
    text-decoration: line-through;
    color: var(--ikincil-yazi);
}

/* Ürün kategorileri */

.urun-kategori {
    background-color: #dcfce7;
    color: #15803d;
    padding: 5px 9px;
    border-radius: 7px;
    font-size: 11px;
}

.urun-kategori.temizlik {
    background-color: #dbeafe;
    color: #1d4ed8;
}

/* ALT PANELİN GEÇİCİ YERLEŞİMİ */

.alt-kartlar {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
    margin-bottom: 25px;
}

@media (max-width: 1250px) {
    .alt-kartlar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 800px) {
    .alt-kartlar {
        grid-template-columns: 1fr;
    }
}
/* ================================= */
/* FİNANS / ÖDEMELER KARTI            */
/* ================================= */

.finans-karti {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 20px;
    min-width: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Finans listesi */

.finans-listesi {
    display: flex;
    flex-direction: column;
}

/* Ödeme satırları */

.finans-satir {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px auto;
    align-items: center;
    gap: 8px;
    padding: 13px 2px;
    border-bottom: 1px solid var(--kenarlik);
}

.finans-satir:last-child {
    border-bottom: none;
}

/* Ödeme açıklaması */

.finans-satir span {
    font-size: 12px;
    color: var(--yazi-rengi);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Ödeme tarihi */

.finans-satir small {
    font-size: 11px;
    color: var(--ikincil-yazi);
    white-space: nowrap;
}

/* Ödeme tutarı */

.finans-satir strong {
    font-size: 12px;
    color: var(--yazi-rengi);
    font-weight: 600;
    white-space: nowrap;
    text-align: right;
}

/* İlk ödeme tutarını vurgula */

.finans-satir:first-child strong {
    color: #dc2626;
}

/* Fare üzerine geldiğinde */

.finans-satir:hover {
    background-color: var(--arka-plan);
    border-radius: 8px;
}
/* ================================= */
/* AİLE TAKVİMİ KARTI                 */
/* ================================= */

.aile-takvimi-karti {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 20px;
    min-width: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Aile etkinlik listesi */

.aile-etkinlik-listesi {
    display: flex;
    flex-direction: column;
}

/* Etkinlik satırları */

.aile-etkinlik {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 15px 2px;
    border-bottom: 1px solid var(--kenarlik);
}

.aile-etkinlik:last-child {
    border-bottom: none;
}

/* Tarih */

.aile-tarih {
    color: var(--ikincil-yazi);
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}

/* Etkinlik açıklaması */

.aile-aciklama {
    color: var(--yazi-rengi);
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

/* Fare üzerine geldiğinde */

.aile-etkinlik:hover {
    background-color: var(--arka-plan);
    border-radius: 8px;
}
/* ================================= */
/* HIZLI NOTLAR KARTI                 */
/* ================================= */

.hizli-notlar-karti {
    background-color: var(--kart-rengi);
    border: 1px solid var(--kenarlik);
    border-radius: 16px;
    padding: 20px;
    min-width: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

/* Not yazma alanı */

.hizli-not-alani {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 15px;
    margin-bottom: 20px;
}

.hizli-not-input {
    width: 100%;
    min-height: 75px;
    padding: 12px;
    border: 1px solid var(--kenarlik);
    border-radius: 10px;
    background-color: var(--arka-plan);
    color: var(--yazi-rengi);
    font-family: inherit;
    font-size: 12px;
    resize: vertical;
    box-sizing: border-box;
}

.hizli-not-input:focus {
    outline: 2px solid #2563eb;
    outline-offset: 1px;
}

/* Kaydet düğmesi */

.not-kaydet {
    align-self: flex-end;
    background-color: #2563eb;
    color: white;
    border: none;
    border-radius: 9px;
    padding: 10px 18px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.not-kaydet:hover {
    background-color: #1d4ed8;
}

/* Son notlar başlığı */

.son-notlar h3 {
    font-size: 13px;
    color: var(--yazi-rengi);
    margin-bottom: 10px;
}

/* Not satırları */

.not-satir {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    padding: 12px 2px;
    border-bottom: 1px solid var(--kenarlik);
}

.not-satir:last-child {
    border-bottom: none;
}

.not-satir span {
    font-size: 12px;
    color: var(--yazi-rengi);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.not-satir small {
    color: var(--ikincil-yazi);
    font-size: 11px;
    white-space: nowrap;
}
/* ================================= */
/* ANA EKRAN KOMPAKT DÜZENLEME        */
/* ================================= */

/* Üstteki üç kart */

.ana-kartlar {
    align-items: start;
    gap: 14px;
}

.ana-kartlar > section {
    min-height: 0;
    height: auto;
    padding: 16px;
    box-sizing: border-box;
}

/* Üst kartların satır aralıkları */

.ana-kartlar .program-satir,
.ana-kartlar .hatirlatma-satir {
    padding-top: 10px;
    padding-bottom: 10px;
}

/* Alt sıradaki dört kart */

.alt-kartlar {
    gap: 14px;
    align-items: stretch;
}

.alt-kartlar > section {
    padding: 15px;
    box-sizing: border-box;
}

/* Alt kartların başlıkları */

.alt-kartlar .bolum-baslik {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 12px;
}

.alt-kartlar .bolum-baslik h2 {
    font-size: 15px;
    line-height: 1.3;
    margin: 0;
    min-width: 0;
}

.alt-kartlar .bolum-baslik a,
.alt-kartlar .bolum-baslik button {
    flex-shrink: 0;
}

/* Alt kartların satır aralıkları */

.alt-kartlar .alisveris-satir,
.alt-kartlar .finans-satir,
.alt-kartlar .aile-etkinlik,
.alt-kartlar .not-satir {
    padding-top: 9px;
    padding-bottom: 9px;
}

/* Hızlı not alanı */

.alt-kartlar .hizli-not-input {
    min-height: 60px;
}

.alt-kartlar .hizli-not-alani {
    margin-top: 8px;
    margin-bottom: 12px;
}
/* Üst kontrol paneli kartlarını eşitle */

.ana-kartlar {
    align-items: stretch;
}

.ana-kartlar > section {
    height: 100%;
    box-sizing: border-box;
}
/* 33. ADIM - KOMPAKT ÜST KARTLAR */

.ana-kartlar {
    align-items: stretch;
}

.ana-kartlar > section {
    height: 370px;
    min-height: 0;
    overflow-y: auto;
    box-sizing: border-box;
}

/* Kart içi kaydırma çubuğu */

.ana-kartlar > section::-webkit-scrollbar {
    width: 5px;
}

.ana-kartlar > section::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 10px;
}
/* ================================= */
/* 34. ADIM - RESPONSIVE TASARIM      */
/* ================================= */

/* Üst kartların esnek yüksekliği */
.ana-kartlar > section {
    height: clamp(320px, 36vh, 440px);
    min-height: 0;
    overflow-y: auto;
}

/* Büyük ekran */
@media (min-width: 1500px) {
    .ana-kartlar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .alt-kartlar {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Orta boy ekran ve laptop */
@media (min-width: 901px) and (max-width: 1499px) {
    .ana-kartlar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .alt-kartlar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Tablet */
@media (min-width: 601px) and (max-width: 900px) {
    .ana-kartlar,
    .alt-kartlar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ana-kartlar > section {
        height: auto;
        max-height: 400px;
    }
}

/* Telefon */
@media (max-width: 600px) {
    .ana-kartlar,
    .alt-kartlar {
        grid-template-columns: 1fr;
    }

    .ana-kartlar > section {
        height: auto;
        max-height: none;
        overflow: visible;
    }

    .alt-kartlar > section {
        min-width: 0;
    }
}
/* ANA EKRANI DÜZENLE DÜĞMESİ */

.duzenle-buton {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

    background-color: #eef4ff;
    color: #2563eb;

    border: 1px solid #dbe5f5;
    border-radius: 10px;

    padding: 11px 14px;
    font-size: 12px;
    font-weight: 600;

    cursor: pointer;
    white-space: nowrap;
    transition: 0.2s;
}

.duzenle-buton:hover {
    background-color: #dbeafe;
    border-color: #93c5fd;
}

/* Küçük ekranlarda düğmeyi daralt */

@media (max-width: 900px) {
    .duzenle-buton {
        padding: 9px;
        font-size: 11px;
    }
}
/* ANA EKRAN DÜZENLEME MODU */

.duzenleme-modu .ana-kartlar > section,
.duzenleme-modu .alt-kartlar > section {

    outline: 2px dashed #3b82f6;
    outline-offset: -4px;

    cursor: move;
    transition: 0.2s;
}

.duzenleme-modu .ana-kartlar > section:hover,
.duzenleme-modu .alt-kartlar > section:hover {

    outline-color: #1d4ed8;
    background-color: #f8fbff;
}

.duzenleme-modu .duzenle-buton {
    background-color: #dcfce7;
    color: #166534;
    border-color: #86efac;
}
/* KUTU SÜRÜKLEME GÖRÜNÜMÜ */

.duzenleme-modu section[draggable="true"] {
    cursor: grab;
}

.duzenleme-modu section.tasiniyor {
    opacity: 0.45;
    border: 2px dashed #2563eb;
    cursor: grabbing;
}

/* ESNEK ANA EKRAN - 15.10.2026 */
.dashboard-grid {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-auto-flow:row dense;
    grid-auto-rows:minmax(90px,auto);
    gap:14px;
    margin-bottom:25px;
    align-items:stretch;
}
.dashboard-grid > section {
    grid-column:span var(--kart-genislik,4);
    min-width:0;
    max-width:none;
    width:100%;
    height:auto;
    min-height:var(--kart-yukseklik,320px);
    max-height:none;
    overflow:auto;
    margin:0;
    padding:16px;
    background-color:var(--kart-rengi);
    border:1px solid var(--kenarlik);
    border-radius:16px;
    box-shadow:0 4px 15px rgba(0,0,0,.03);
    position:relative;
}
.dashboard-grid > section.kart-gizli {display:none !important;}
.dashboard-grid .bolum-baslik h2 {font-size:16px;}
.dashboard-grid .program-satir {grid-template-columns:55px minmax(0,1fr) 55px;gap:6px;}
.dashboard-grid .hatirlatma-satir {grid-template-columns:45px minmax(0,1fr);gap:6px;}
.dashboard-grid .hatirlatma-satir small {grid-column:2;text-align:left;}
.dashboard-grid .bolum-baslik {flex-wrap:wrap;}
.dashboard-grid .bolum-baslik h2 {min-width:0;}
.dashboard-grid .finans-satir {grid-template-columns:minmax(0,1fr) 48px auto;}
.dashboard-grid > section.kart-surukleniyor {opacity:.45;}
.duzenleme-modu .dashboard-grid > section {outline:2px dashed #3b82f6;outline-offset:-4px;}
.duzenleme-modu .dashboard-grid > section.kart-hedef {outline:3px solid #2563eb;}
.kart-araclari {
    display:flex;flex-wrap:wrap;align-items:center;gap:6px;
    padding:8px;margin:-4px -4px 12px;
    border-radius:10px;background:var(--arka-plan);
    border:1px solid var(--kenarlik);
}
.kart-araclari button,.kart-araclari select {
    font:inherit;font-size:12px;color:var(--yazi-rengi);
    border:1px solid var(--kenarlik);border-radius:7px;
    background:var(--kart-rengi);padding:6px 8px;cursor:pointer;
}
.kart-araclari .tutamac {cursor:grab;touch-action:none;font-weight:600;}
.kart-araclari label {font-size:12px;color:var(--ikincil-yazi);}
.dashboard-panel {
    display:flex;flex-wrap:wrap;align-items:center;gap:10px;
    margin:0 0 16px;padding:12px 14px;
    background:var(--kart-rengi);border:1px solid var(--kenarlik);border-radius:12px;
}
.dashboard-panel button {
    padding:9px 12px;border:1px solid var(--kenarlik);border-radius:9px;
    background:var(--arka-plan);color:var(--yazi-rengi);cursor:pointer;
}
.dashboard-panel .kaydet {background:#2563eb;color:white;}
.dashboard-panel select {padding:8px;border:1px solid var(--kenarlik);border-radius:8px;}
.dashboard-panel .aciklama {font-size:12px;color:var(--ikincil-yazi);}
@media(max-width:1499px) {
    .dashboard-grid > section {grid-column:span min(var(--kart-genislik,4),6);}
}
@media(max-width:1000px) {
    .ana-icerik {padding:20px;}
    .ust-panel {flex-wrap:wrap;}
    .arama-alani {flex:1 1 260px;width:auto;}
    .ust-islemler {flex-wrap:wrap;}
    .dashboard-grid > section {grid-column:span 6;}
}
@media(max-width:700px) {
    .sol-menu {position:relative;width:100%;height:auto;max-height:220px;}
    .ana-icerik {margin-left:0;padding:14px;}
    .dashboard-grid > section {grid-column:span 12;}
    .dashboard-grid {gap:12px;}
    .ozet-kartlari {grid-template-columns:repeat(2,minmax(0,1fr));}
}

.dashboard-panel[hidden] {display:none;}


/* TAKVİMİN ANA SAYFA ENTEGRASYONU */
.takvim-baglanti { text-decoration:none; color:inherit; cursor:pointer; }
.takvim-baglanti:hover { background:var(--arka-plan); border-radius:8px; }
.takvim-bos-mesaj { color:var(--ikincil-yazi); font-size:13px; padding:18px 6px; margin:0; }
#sonraki-etkinlik-ozeti { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:210px; }

/* Oturum kapatma */
.ky-logout{display:block;margin:20px 14px;padding:10px 14px;background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;border-radius:10px;cursor:pointer;font-weight:600;text-align:left}
.ky-logout:hover{background:#e2e8f0}
