/*
Theme Name: Derneğim App
Author: Halk Kürsüsü Gençlik Teşkilatı
Description: Dernek Takip Uygulaması — üyeler, aidat, bağış, gelir-gider, duyurular ve projeler tek yerde. Tema etkinleştirildiğinde kurulum sihirbazı açılır; kullanmak için seri numarası gerekir.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: dernek-app
*/

/* =====================================================================
   RENK SİSTEMİ (v1.4) — Tüm renkler bu değişkenlerden gelir.
   Yeni tema = aşağıdaki gibi birkaç değişkeni değiştiren tek blok.
   ===================================================================== */
:root {
    color-scheme: light;
    accent-color: var(--birincil);
    --birincil: #0284c7;
    --birincil-koyu: #0369a1;
    --birincil-2: #06b6d4;
    --vurgu: #2563eb;
    --vurgu-koyu: #1e3a8a;

    --arka: #eaf1f8;
    --yuzey: #ffffff;
    --kutu: #ffffff;
    --kutu-2: #f8fafc;
    --kutu-3: #f1f5f9;
    --kutu-4: #e2e8f0;
    --kenar: #e2e8f0;
    --kenar-ince: #f1f5f9;
    --kenar-2: #cbd5e1;
    --cizgi: rgba(166, 180, 200, 0.2);

    --metin: #1e293b;
    --metin-2: #475569;
    --soluk: #64748b;
    --soluk-2: #94a3b8;

    --cam: rgba(255, 255, 255, 0.75);
    --cam-kenar: rgba(255, 255, 255, 0.5);
    --panel: rgba(255, 255, 255, 0.95);
    --ortu: rgba(234, 241, 248, 0.8);
    --golge: 8px 8px 20px rgba(166, 180, 200, 0.4), -8px -8px 20px rgba(255, 255, 255, 0.9);
    --golge-ic: inset 4px 4px 8px rgba(166, 180, 200, 0.3), inset -4px -4px 8px #fff;
    --golge-kucuk: 4px 4px 10px rgba(166, 180, 200, 0.4), -4px -4px 10px rgba(255, 255, 255, 0.9);

    --birincil-acik: color-mix(in srgb, var(--birincil) 12%, var(--kutu));
    --birincil-acik-2: color-mix(in srgb, var(--birincil) 5%, var(--kutu));
    --birincil-kenar: color-mix(in srgb, var(--birincil) 30%, var(--kutu));
    --kahraman: linear-gradient(135deg, var(--birincil) 0%, var(--birincil-koyu) 100%);

    /* Eski adlar (geriye uyumluluk) */
    --bg-color: var(--arka);
    --text-dark: var(--metin);
    --text-muted: var(--soluk);
    --accent-blue: var(--vurgu);
    --accent-cyan: var(--birincil-2);
    --accent-green: #10b981;
    --glass-bg: var(--cam);
    --glass-border: var(--cam-kenar);
    --shadow-soft: var(--golge);

    --sekme-yukseklik: 64px;
}

/* ---------- Açık temalar ---------- */
:root.theme-red-white { --birincil: #dc2626; --birincil-koyu: #b91c1c; --birincil-2: #ef4444; --vurgu: #ef4444; --vurgu-koyu: #991b1b; --arka: #f8eeee; --ortu: rgba(248, 238, 238, .8); }
:root.theme-yesil     { --birincil: #059669; --birincil-koyu: #047857; --birincil-2: #10b981; --vurgu: #059669; --vurgu-koyu: #065f46; --arka: #eaf5ef; --ortu: rgba(234, 245, 239, .8); }
:root.theme-lacivert  { --birincil: #1e3a8a; --birincil-koyu: #172554; --birincil-2: #d4a017; --vurgu: #1e40af; --vurgu-koyu: #b8860b; --arka: #eef1f7; --ortu: rgba(238, 241, 247, .8); }
:root.theme-mor       { --birincil: #7c3aed; --birincil-koyu: #5b21b6; --birincil-2: #a78bfa; --vurgu: #7c3aed; --vurgu-koyu: #4c1d95; --arka: #f2eefb; --ortu: rgba(242, 238, 251, .8); }
:root.theme-turuncu   { --birincil: #ea580c; --birincil-koyu: #c2410c; --birincil-2: #f59e0b; --vurgu: #ea580c; --vurgu-koyu: #9a3412; --arka: #fbf3ec; --ortu: rgba(251, 243, 236, .8); }
:root.theme-gri       { --birincil: #334155; --birincil-koyu: #1e293b; --birincil-2: #64748b; --vurgu: #334155; --vurgu-koyu: #0f172a; --arka: #eef0f3; --ortu: rgba(238, 240, 243, .8); }

/* ---------- Koyu temalar (ortak yüzeyler) ---------- */
:root.tema-koyu {
    color-scheme: dark;
    --arka: #0f172a;
    --yuzey: #1e293b;
    --kutu: #0f172a;
    --kutu-2: #0f172a;
    --kutu-3: #172033;
    --kutu-4: #334155;
    --kenar: #334155;
    --kenar-ince: #1e293b;
    --kenar-2: #475569;
    --cizgi: #334155;
    --metin: #e2e8f0;
    --metin-2: #cbd5e1;
    --soluk: #94a3b8;
    --soluk-2: #64748b;
    --cam: #1e293b;
    --cam-kenar: #1e293b;
    --panel: #1e293b;
    --ortu: rgba(2, 6, 23, .75);
    --golge: 5px 5px 10px #0b0f19, -5px -5px 10px #1d293d;
    --golge-ic: inset 3px 3px 6px #0b0f19, inset -3px -3px 6px #26354d;
    --golge-kucuk: 4px 4px 10px #0b0f19, -4px -4px 10px #1d293d;
    --birincil-acik: color-mix(in srgb, var(--birincil) 22%, var(--kutu));
    --birincil-acik-2: color-mix(in srgb, var(--birincil) 12%, var(--kutu));
    --birincil-kenar: color-mix(in srgb, var(--birincil) 40%, var(--kutu));
}
:root.theme-dark-mode { --birincil: #0284c7; --birincil-koyu: #075985; --birincil-2: #38bdf8; --vurgu: #38bdf8; --vurgu-koyu: #7dd3fc; }
:root.theme-gece      { --birincil: #059669; --birincil-koyu: #065f46; --birincil-2: #34d399; --vurgu: #34d399; --vurgu-koyu: #6ee7b7; }
:root.theme-gece-mor  { --birincil: #7c3aed; --birincil-koyu: #4c1d95; --birincil-2: #a78bfa; --vurgu: #a78bfa; --vurgu-koyu: #c4b5fd; }



* {
    margin: 0; 
    padding: 0; 
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

body {
    background-color: var(--bg-color);
    color: var(--text-dark);
    min-height: 100vh;
    overflow-x: hidden;
}

/* ARKA PLAN RESMİ İÇİN AYAR */
.app-background {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: -1;
    background-size: cover;
    background-position: center bottom;
    opacity: 0.8;
}

/* SAYFA DÜZENİ VE GENEL ORTALAMA */
.app-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 30px 20px;
    gap: 35px;
    max-width: 1300px;
    margin: 0 auto;
}

/* ÜST MENÜ PİLLERİ */
.top-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
    padding: 0 20px;
}

.neu-pill {
    background: var(--glass-bg);
    backdrop-filter: blur(10px);
    border: 1px solid var(--glass-border);
    padding: 12px 25px;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-dark);
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: var(--shadow-soft);
    cursor: pointer;
    transition: all 0.3s ease;
}
.neu-pill:hover { transform: translateY(-3px); }
.neu-pill i { font-size: 1.4rem; color: var(--accent-blue); }

/* ANA DOKU / DASHBOARD */
.main-dashboard {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 30px;
}

.side-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 25px;
    flex: 1;
}

/* KARTLAR */
.neu-card {
    background: var(--glass-bg);
    backdrop-filter: blur(12px);
    border: 1px solid var(--glass-border);
    border-radius: 25px;
    padding: 25px;
    display: flex;
    align-items: center;
    box-shadow: var(--shadow-soft);
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    gap: 20px;
}
.neu-card:hover { transform: translateY(-3px) scale(1.01); }

.icon-circle {
    width: 60px; height: 60px;
    border-radius: 50%;
    background: var(--yuzey);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.8rem;
    color: var(--accent-blue);
    box-shadow: var(--golge-ic);
    flex-shrink: 0;
}

.card-text { flex: 1; }
.card-text h3 {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--text-dark);
}
.card-text .line { height: 4px; border-radius: 2px; width: 40px; }
.line.blue { background: var(--accent-blue); }
.line.cyan { background: var(--accent-cyan); }
.line.dark-blue { background: var(--vurgu-koyu); }

.arrow { font-size: 1.5rem; color: var(--text-muted); }

/* ORTA LOGO VE HALKA */
.center-stage {
    position: relative;
    width: 350px;
    height: 350px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1.2;
}

.outer-ring {
    position: absolute;
    width: 320px; height: 320px;
    border: 3px solid var(--accent-cyan);
    border-radius: 50%;
    z-index: 1;
}

.outer-ring .dot {
    position: absolute;
    width: 14px; height: 14px;
    background: var(--yuzey);
    border: 3px solid var(--accent-cyan);
    border-radius: 50%;
}
.dot.top { top: -8px; left: 50%; transform: translateX(-50%); }
.dot.bottom { bottom: -8px; left: 50%; transform: translateX(-50%); }
.dot.left { left: -8px; top: 50%; transform: translateY(-50%); }
.dot.right { right: -8px; top: 50%; transform: translateY(-50%); }

.center-logo-box {
    position: relative;
    z-index: 2;
    width: 260px; height: 260px;
    background: var(--yuzey);
    border-radius: 50%;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    box-shadow: var(--shadow-soft);
    padding: 20px;
}

.logo-icon-wrapper i {
    font-size: 4.5rem;
    background: linear-gradient(135deg, var(--accent-blue), var(--accent-green));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 5px;
}

.center-logo-box h2 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-dark);
    letter-spacing: 0.5px;
    text-align: center;
    line-height: 1.3;
}

.tiny-heart { color: var(--accent-cyan); margin-top: 3px; font-size: 1.1rem; }

/* ALT PANEL VE YUKARI SLİDE EFEKTİ */
.bottom-panel { 
    width: 100%; 
    display: flex; 
    justify-content: center;
    margin-top: -15px; /* Menülere/Ana panele yakınlaştırma */
    
    /* Sayfa açılışında yukarı kayarak belirme efekti */
    animation: slideUpFade 0.7s cubic-bezier(0.16, 1, 0.3, 1) forwards;
    opacity: 0;
    transform: translateY(40px);
}

@keyframes slideUpFade {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.wide-card {
    width: 100%;
    max-width: 1600px;
    display: flex;
    justify-content: space-between;
    padding: 25px 40px;
    cursor: default;
    background: var(--glass-bg);
    backdrop-filter: blur(12px);
    border: 1px solid var(--glass-border);
    border-radius: 25px;
    box-shadow: var(--shadow-soft);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.wide-card:hover { 
    transform: translateY(-4px); 
}

.info-section { 
    display: flex; 
    align-items: flex-start; 
    gap: 20px; 
    flex: 1; 
    min-width: 0; /* Taşma koruması */
}

.info-lines {
    flex: 1;
    min-width: 0; /* Taşma koruması */
}

.info-lines p {
    font-size: 0.9rem; 
    margin: 10px 0;
    display: flex; 
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-width: 0;
}
.info-lines .label { 
    font-weight: 600; 
    min-width: 120px; 
    color: var(--text-dark);
    flex-shrink: 0;
}
.info-lines .dots { 
    color: var(--text-muted); 
    flex-grow: 1;
    flex-shrink: 1;
    overflow: hidden;
    white-space: nowrap;
    margin: 0 10px;
}
.info-lines .value {
    color: var(--text-muted);
    font-weight: 500;
    text-align: right;
    word-break: break-word;
    flex-shrink: 0;
    max-width: 65%;
}

.divider-line { 
    width: 2px; 
    background: var(--cizgi); 
    margin: 0 40px; 
    flex-shrink: 0;
}

/* DİNAMİK PANELLER (Açılır pencereler / Modallar) */
.panel-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: var(--ortu); backdrop-filter: blur(8px);
    display: flex; align-items: center; justify-content: center;
    opacity: 0; pointer-events: none; transition: 0.3s; z-index: 100;
}
.panel-overlay.active { opacity: 1; pointer-events: auto; }

.panel-content { 
    width: 95%; 
    max-width: 850px; 
    max-height: 85vh; 
    position: relative; 
    cursor: default; 
    overflow-y: auto; 
    padding: 30px !important;
    background: var(--panel); 
    backdrop-filter: blur(10px);
    border: 1px solid var(--glass-border);
    border-radius: 25px;
    box-shadow: var(--shadow-soft);
    display: flex;
    flex-direction: column;
}

.close-btn {
    position: absolute; top: 20px; right: 20px;
    background: var(--yuzey); border: none; width: 40px; height: 40px; border-radius: 50%;
    box-shadow: var(--shadow-soft); cursor: pointer; color: #ef4444; font-size: 1.2rem;
    z-index: 10;
}

/* =========================================
   AYARLAR PANELİ VE FORM TASARIMI
========================================= */

.dynamic-uploaded-logo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.settings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.settings-box {
    background: var(--kutu-2);
    border: 1px solid var(--kenar);
    border-radius: 15px;
    padding: 20px;
    box-shadow: inset 2px 2px 5px var(--cizgi);
}

.full-width-row {
    grid-column: span 2;
}

@media (max-width: 768px) {
    .full-width-row {
        grid-column: span 1;
    }
}

.settings-box h4 {
    font-size: 1rem;
    color: var(--accent-blue);
    margin-bottom: 15px;
    border-bottom: 1px solid var(--cizgi);
    padding-bottom: 5px;
}

/* Form İnput Tasarımları */
.form-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-bottom: 12px;
}

.form-group label {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-muted);
}

.form-group input, .form-group textarea {
    padding: 10px 15px;
    border: 1px solid var(--kenar-2);
    border-radius: 10px;
    background: var(--kutu);
    font-size: 0.9rem;
    color: var(--text-dark);
    transition: all 0.3s ease;
}

.form-group input:focus, .form-group textarea:focus {
    outline: none;
    border-color: var(--accent-blue);
    box-shadow: 0 0 8px color-mix(in srgb, var(--vurgu) 20%, transparent);
}

.form-sub-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

/* Aksiyon Butonları */
.settings-actions {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 25px;
    padding-top: 15px;
    border-top: 1px solid var(--cizgi);
}

.btn-action {
    padding: 12px 30px;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: transform 0.2s;
}
.btn-action:active { transform: scale(0.95); }

.btn-cancel { background: var(--kutu-3); color: var(--text-muted); }
.btn-save { background: linear-gradient(135deg, var(--birincil), var(--birincil-2)); color: #fff; }
.btn-aidat { 
    background: linear-gradient(135deg, #00b5ad, var(--birincil-2)); 
    color: #fff; 
    border: none; 
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%; 
    max-width: 220px;
    box-shadow: var(--golge-kucuk);
}


/* Split Görünüm */
.split-info-panel { display: flex; gap: 20px; }
.info-block-box { flex: 1; background: var(--kutu); padding: 20px; border-radius: 15px; box-shadow: var(--shadow-soft); }

/* Panel İçi WP Giriş Formu Tasarımı */
#panel-login-form p {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-bottom: 15px;
}
#panel-login-form label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-muted, var(--soluk));
}
#panel-login-form input[type="text"],
#panel-login-form input[type="password"] {
    padding: 10px 15px;
    border: 1px solid var(--kenar-2);
    border-radius: 10px;
    width: 100%;
    background: var(--kutu);
    font-size: 0.9rem;
    color: var(--text-dark, var(--metin));
    box-sizing: border-box;
}
#panel-login-form input[type="submit"] {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: #ffffff;
    padding: 12px 30px;
    border-radius: 10px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    width: 100%;
    margin-top: 10px;
    transition: transform 0.2s;
}
#panel-login-form input[type="submit"]:hover {
    background: linear-gradient(135deg, #dc2626, #b91c1c);
}
#panel-login-form input[type="submit"]:active {
    transform: scale(0.95);
}
.login-remember {
    flex-direction: row !important;
    align-items: center;
    gap: 10px !important;
}
.login-remember input {
    width: auto !important;
}


/* =========================================
   AİDAT AYARLARI TABLOSU
========================================= */

.aidat-ayarlari-container {
    font-family: 'Inter', sans-serif;
    background-color: var(--kutu-2);
    padding: 30px;
    min-height: 100vh;
}

.ayarlar-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
}

.ayarlar-header h2 {
    color: var(--metin);
    font-size: 24px;
    font-weight: 600;
    margin: 0;
}

.btn-geri {
    background: var(--kutu);
    border: 1px solid var(--kenar);
    border-radius: 8px;
    padding: 8px 12px;
    cursor: pointer;
    color: var(--metin);
}

.ayarlar-card {
    background: var(--kutu);
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
    padding: 24px;
}

.card-toolbar {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.btn-teal {
    background: #00b5ad;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 10px 20px;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-outline-red {
    background: transparent;
    color: #ff6b6b;
    border: 1px solid #ff6b6b;
    border-radius: 8px;
    padding: 10px 20px;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

.aidat-table {
    width: 100%;
    border-collapse: collapse;
}

.aidat-table th {
    color: var(--metin);
    font-weight: 600;
    text-align: left;
    padding: 15px;
    font-size: 14px;
    background: var(--kutu-2);
}

.aidat-table td {
    padding: 15px;
    vertical-align: middle;
    border-bottom: 1px solid var(--kenar-ince);
}

.aktif-satir {
    background-color: var(--birincil-acik-2);
}

.form-input {
    border: 1px solid var(--kenar);
    border-radius: 6px;
    padding: 8px 12px;
    color: var(--metin-2);
    background: var(--kutu);
    width: 100%;
    box-sizing: border-box;
}

.input-group {
    display: flex;
    align-items: center;
    border: 1px solid var(--kenar);
    border-radius: 6px;
    padding: 0 10px;
    background: var(--kutu);
}

.input-group i {
    color: #00b5ad;
    margin-right: 8px;
}

.input-group .form-input {
    border: none;
    padding-left: 0;
}

.input-group .form-input:focus {
    outline: none;
}

.islemler {
    display: flex;
    gap: 10px;
}

.btn-icon {
    background: transparent;
    border: 1px solid var(--kenar);
    border-radius: 6px;
    padding: 8px 10px;
    cursor: pointer;
}

.btn-edit { color: #3b82f6; }
.btn-delete { color: #ff6b6b; }

.card-footer {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

.btn-teal-large {
    background: #00b5ad;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 40px;
    font-weight: 600;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* =========================================
   MOBİL UYUMLULUK (RESPONSIVE DESIGN)
========================================= */

/* Tabletler (992px ve altı) */
@media (max-width: 992px) {
    .main-dashboard {
        flex-direction: column;
        gap: 40px;
    }

    .center-stage {
        order: -1;
        width: 300px;
        height: 300px;
    }

    .outer-ring {
        width: 280px; 
        height: 280px;
    }

    .center-logo-box {
        width: 220px; 
        height: 220px;
    }

    .logo-icon-wrapper i {
        font-size: 4rem;
    }

    .side-column {
        width: 100%;
        max-width: 500px;
    }

    .bottom-panel {
        margin-top: 0; /* Mobilde dikey hizalama düzgün dursun diye sıfırlıyoruz */
    }

    .wide-card {
        flex-direction: column !important;
        gap: 25px;
        padding: 25px;
        width: 100%;
    }

    .divider-line {
        width: 100%;
        height: 2px;
        margin: 10px 0;
    }
}

/* Telefonlar (768px ve altı) */
@media (max-width: 768px) {
    .top-nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;
        padding: 0 10px;
    }

    .app-container {
        padding: 15px 10px;
        gap: 25px;
    }

    .center-stage {
        width: 250px;
        height: 250px;
    }

    .outer-ring {
        width: 230px; 
        height: 230px;
    }

    .center-logo-box {
        width: 180px; 
        height: 180px;
    }

    .logo-icon-wrapper i {
        font-size: 3rem;
    }

    .center-logo-box h2 {
        font-size: 1.1rem;
    }

    .info-section {
        width: 100%;
        gap: 15px;
    }

    .info-lines p {
        justify-content: space-between;
        gap: 10px;
    }
    
    .info-lines .dots {
        display: none;
    }

    .info-lines .label {
        min-width: auto;
    }

    .info-lines .value {
        text-align: right;
        max-width: 60%;
    }

    /* AYARLAR MODAL MOBİL UYUMU */
    .form-sub-split { grid-template-columns: 1fr; }
    .settings-actions { flex-direction: column; align-items: stretch; }
    .btn-aidat { max-width: none; }
}
/* =====================================================================
   v1.1 — Şablondan taşınan yerleşim stilleri + uygulama bileşenleri
   ===================================================================== */

[hidden] { display: none !important; }

.app-container { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; max-width: 1200px; margin: 0 auto; padding: 20px; box-sizing: border-box; }
.top-nav { display: flex; justify-content: center; align-items: center; gap: 15px; width: 100%; margin-bottom: 30px; flex-wrap: wrap; }
.main-dashboard { display: flex; justify-content: center; align-items: center; gap: 35px; width: 100%; flex-wrap: wrap; }
.side-column { display: flex; flex-direction: column; justify-content: center; gap: 20px; flex: 1; min-width: 260px; max-width: 320px; }
.center-stage { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; flex: 1; min-width: 280px; cursor: pointer; }
.center-logo-box { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.neu-card[role=button], .center-stage[role=button] { cursor: pointer; }
.neu-card[role=button]:focus-visible, .center-stage[role=button]:focus-visible, .neu-pill:focus-visible { outline: 3px solid var(--birincil); outline-offset: 3px; }
body.d-panel-acik { overflow: hidden; }

.panel-content { width: 90%; max-width: 450px; transition: max-width .25s ease; }
.panel-content.d-panel-orta { max-width: 680px; }
.panel-content.d-panel-genis { width: 95%; max-width: 1200px; }
#panel-body { text-align: left; min-width: 0; width: 100%; align-self: stretch; }

/* Bildirim (toast) */
.d-bildirim { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 30px); background: #1e293b; color: #fff; padding: 12px 18px; border-radius: 10px; font-size: .9rem; font-weight: 600; box-shadow: 0 10px 25px rgba(0,0,0,.2); opacity: 0; pointer-events: none; transition: .25s; z-index: 1000; max-width: calc(100% - 32px); }
.d-bildirim.goster { opacity: 1; transform: translate(-50%, 0); }
.d-bildirim.ok { background: #059669; }
.d-bildirim.hata { background: #dc2626; }

/* Yardımcı metin sınıfları */
.d-soluk { color: var(--soluk); } .d-kalin { font-weight: 700; } .d-kucuk { font-size: .8rem; } .d-buyuk { font-size: 1.1rem; }
.d-mavi { color: var(--birincil); } .d-yesil { color: #10b981; } .d-kirmizi { color: #ef4444; } .d-turuncu { color: #f59e0b; } .d-mor { color: #8b5cf6; }
.d-ortala { text-align: center; } .d-orta { text-align: center; } .d-sag { text-align: right; } .d-blok { display: block; }
.d-mono { font-family: ui-monospace, monospace; font-weight: 700; letter-spacing: .5px; word-break: break-all; }
.d-bos { color: var(--soluk-2); text-align: center; padding: 18px; font-size: .9rem; }
.d-not { font-size: .78rem; color: var(--soluk); margin: 6px 0 10px; line-height: 1.45; }
.d-ust-bosluk { margin-top: 18px; }

/* Başlıklar ve düzen */
.d-panel-baslik { margin: 0 0 15px; padding-bottom: 10px; border-bottom: 1px solid var(--kenar); display: flex; align-items: center; gap: 8px; color: var(--metin); padding-right: 44px; }
.d-alt-baslik { margin: 0 0 8px; font-size: .92rem; color: var(--birincil-koyu); display: flex; align-items: center; gap: 6px; }
.d-baslik-satir { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; padding-right: 44px; }
.d-baslik-satir h3 { margin: 0; display: flex; align-items: center; gap: 8px; color: var(--metin); }
.d-baslik-serit { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; background: var(--kutu-2); padding: 14px; border-radius: 12px; border: 1px solid var(--kenar); margin: 0 44px 16px 0; }
.d-baslik-serit h3 { margin: 0; display: flex; align-items: center; gap: 8px; color: var(--metin); }
.d-arac-cubugu { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.d-esnek { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.d-esnek-1 { flex: 1; min-width: 0; }
.d-form-dikey { display: flex; flex-direction: column; gap: 10px; }
.d-form-dikey p { margin: 0; }
.d-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 15px; }
.d-izgara-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; }
.d-kutu { background: var(--kutu-2); border: 1px solid var(--kenar); border-radius: 12px; padding: 14px; margin-bottom: 14px; }
.d-form-kutu { background: var(--kutu); border: 1px solid var(--kenar); border-radius: 12px; padding: 20px; }
.d-satir { display: flex; justify-content: space-between; align-items: center; gap: 10px; background: var(--kutu); border: 1px solid var(--kenar); padding: 10px 12px; border-radius: 8px; margin-bottom: 8px; font-size: .88rem; }
.d-kaydirma { max-height: 420px; overflow-y: auto; padding-right: 4px; }
.d-metin-kutu { background: var(--kutu-2); padding: 12px; border-radius: 8px; border: 1px solid var(--kenar); font-size: .9rem; line-height: 1.55; margin: 0 0 18px; }
.d-uyari { background: #fef3c7; color: #92400e; border: 1px solid #fcd34d; border-radius: 10px; padding: 12px 14px; margin-bottom: 14px; font-size: .88rem; line-height: 1.5; }
.d-uyari a { color: #92400e; font-weight: 700; }

/* Form öğeleri */
.d-input { width: 100%; padding: 10px 12px; border: 1px solid var(--kenar-2); border-radius: 8px; background: var(--kutu); font-size: .9rem; color: var(--metin); font-family: inherit; box-sizing: border-box; }
.d-input:focus { outline: none; border-color: var(--birincil); box-shadow: 0 0 0 3px color-mix(in srgb, var(--birincil) 15%, transparent); }
.d-input-kucuk { width: auto; padding: 8px 10px; }
.d-arama { position: relative; }
.d-arama i { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); color: var(--soluk-2); }
.d-arama .d-input { padding-left: 32px; width: 230px; max-width: 100%; }
.d-etiket { display: block; margin-bottom: 8px; font-weight: 700; color: var(--metin-2); font-size: .85rem; }
.d-onay { display: flex; align-items: center; gap: 8px; font-size: .85rem; color: var(--metin-2); margin-top: 8px; cursor: pointer; }
.d-onay input { width: auto; }
.d-resim-alani { margin-bottom: 18px; background: var(--kutu-2); padding: 14px; border-radius: 8px; border: 1px dashed var(--kenar-2); }
.d-pasif-alani { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 0 15px; background: #fff7ed; padding: 14px 14px 4px; border-radius: 10px; border: 1px solid #fed7aa; margin-bottom: 12px; }
.d-pasif-alani .d-not { grid-column: 1 / -1; }
.d-pasif-alani label { color: #c2410c; }

/* Düğmeler */
.d-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 9px 14px; border-radius: 8px; border: 1px solid transparent; font-weight: 700; font-size: .85rem; cursor: pointer; text-decoration: none; font-family: inherit; line-height: 1.2; transition: filter .15s, transform .1s; }
.d-btn:hover { filter: brightness(.95); }
.d-btn:active { transform: scale(.98); }
.d-btn:disabled { opacity: .6; cursor: wait; }
.d-btn-genis { width: 100%; padding: 12px; font-size: .95rem; margin: 6px 0; }
.d-btn-kucuk { padding: 5px 10px; font-size: .75rem; }
.d-btn-mavi { background: var(--birincil); color: #fff; }
.d-btn-yesil { background: #10b981; color: #fff; }
.d-btn-kirmizi { background: #ef4444; color: #fff; }
.d-btn-mor { background: linear-gradient(135deg, #8b5cf6, #7c3aed); color: #fff; margin-bottom: 14px; }
.d-btn-beyaz { background: var(--kutu); color: var(--metin-2); border-color: var(--kenar-2); }
.d-btn-kirmizi-acik { background: #fee2e2; color: #ef4444; border-color: #fca5a5; }
.d-btn-whatsapp { background: #25D366; color: #fff; }
.d-ikon-btn { background: var(--kutu); border: 1px solid var(--kenar-2); padding: 6px 10px; border-radius: 6px; cursor: pointer; font-size: 1rem; line-height: 1; }
.d-ikon-btn.d-kirmizi { border-color: #fecaca; }
.d-link { background: none; border: 0; padding: 0; font: inherit; font-weight: 700; color: var(--metin); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.d-tema-btn { display: flex; align-items: center; gap: 12px; background: var(--kutu-2); border: 1px solid var(--kenar); padding: 14px; border-radius: 12px; font-weight: 600; cursor: pointer; text-align: left; width: 100%; font-family: inherit; font-size: .95rem; }
.d-tema-btn.secili { border-color: var(--birincil); box-shadow: 0 0 0 2px color-mix(in srgb, var(--birincil) 25%, transparent); }
.d-tema-renk { width: 20px; height: 20px; border-radius: 50%; display: inline-block; }

/* Rozetler */
.d-rozet { display: inline-block; padding: 4px 10px; border-radius: 20px; font-size: .75rem; font-weight: 700; }
.d-rozet-yesil { background: #dcfce7; color: #15803d; }
.d-rozet-kirmizi { background: #fee2e2; color: #b91c1c; }
.d-etiket-kucuk { background: var(--kutu-4); padding: 2px 6px; border-radius: 4px; font-size: .7rem; font-weight: 700; margin-left: 4px; }
.d-tarih-rozet { font-size: .75rem; color: var(--soluk); white-space: nowrap; background: var(--kutu-3); padding: 3px 8px; border-radius: 12px; }

/* Üye tablosu */
.d-tablo-kap { width: 100%; background: var(--kutu); border-radius: 12px; border: 1px solid var(--kenar-ince); overflow-x: auto; }
.d-tablo { width: 100%; border-collapse: collapse; text-align: left; font-size: .9rem; }
.d-tablo th { padding: 12px 15px; border-bottom: 2px solid var(--kenar); color: var(--soluk); background: var(--kutu-2); white-space: nowrap; }
.d-tablo td { padding: 12px 15px; border-bottom: 1px solid var(--kenar-ince); color: var(--metin-2); vertical-align: middle; }
.d-tablo tbody tr:hover td { background: var(--kutu-2); }
.table-avatar-container { display: flex; align-items: center; gap: 12px; color: var(--metin); }
.d-avatar { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; border: 1px solid var(--kenar); flex-shrink: 0; }
.d-avatar-harf { background: linear-gradient(135deg, var(--birincil), var(--birincil-2)); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; }
.d-islemler { display: flex; gap: 5px; justify-content: center; }

@media screen and (max-width: 768px) {
    #tbl-uyeler-liste thead { display: none; }
    #tbl-uyeler-liste, #tbl-uyeler-liste tbody, #tbl-uyeler-liste tr, #tbl-uyeler-liste td { display: block; width: 100%; box-sizing: border-box; }
    #tbl-uyeler-liste tr { margin-bottom: 15px; border: 1px solid var(--kenar); border-radius: 10px; background: var(--kutu); padding: 10px; }
    #tbl-uyeler-liste tr[hidden] { display: none !important; }
    #tbl-uyeler-liste td { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 5px; text-align: right; }
    #tbl-uyeler-liste td::before { content: attr(data-label); font-weight: 700; color: var(--soluk); text-transform: uppercase; font-size: .72rem; text-align: left; }
    #tbl-uyeler-liste td.d-bos::before { content: none; }
    #tbl-uyeler-liste td:last-child { border-bottom: none; }
    .table-avatar-container { justify-content: flex-end; }
    .d-baslik-serit { margin-right: 0; margin-top: 40px; }
    .d-arama .d-input, .d-input-kucuk { width: 100%; }
    .d-arac-cubugu > * { flex: 1 1 auto; }
    .d-izgara-2, .d-pasif-alani { grid-template-columns: 1fr; }
    .panel-content { padding: 20px !important; max-height: 92vh; }
}

/* Profil */
.d-profil-ust { display: flex; gap: 18px; align-items: center; }
.d-profil-resim { width: 80px; height: 80px; border-radius: 50%; overflow: hidden; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 2.2rem; border: 2px solid #fff; box-shadow: 0 4px 10px rgba(0,0,0,.08); }
.d-profil-resim img { width: 100%; height: 100%; object-fit: cover; }
.d-profil-isim { margin: 0 0 4px; font-size: 1.35rem; color: var(--metin); overflow-wrap: anywhere; }
.d-aidat-ozet { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; background: linear-gradient(135deg, var(--birincil-acik-2), var(--birincil-acik)); border-color: var(--birincil-kenar); }
.d-pasif-kutu { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; background: #fee2e2; border: 1px solid #fca5a5; padding: 14px; border-radius: 10px; margin-bottom: 14px; font-size: .85rem; color: #9b1c1c; }
.d-bilgi-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; font-size: .85rem; }
.d-bilgi-izgara > div, .d-bilgi-satir { background: var(--kutu-3); padding: 10px; border-radius: 6px; overflow-wrap: anywhere; color: var(--metin); }
.d-bilgi-satir { font-size: .85rem; margin-top: 10px; }
.d-sifre-kutu { margin-top: 18px; }
.d-sifre-satir { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }

/* Aidat */
.aidat-stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; margin-bottom: 10px; }
.aidat-stat-card { background: var(--kutu); border: 1px solid var(--kenar); border-radius: 8px; padding: 10px; text-align: center; }
.aidat-stat-card .stat-title { font-size: .7rem; color: var(--soluk); font-weight: 700; text-transform: uppercase; margin-bottom: 4px; display: block; }
.aidat-stat-card .stat-value { font-size: 1.05rem; font-weight: 700; color: var(--metin); }
.aidat-stat-card .stat-value.d-kirmizi { color: #ef4444; } .aidat-stat-card .stat-value.d-yesil { color: #10b981; } .aidat-stat-card .stat-value.d-turuncu { color: #f59e0b; }
.d-filtreler { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--kenar-ince); }
.aidat-filter-btn { background: var(--kutu-3); border: 1px solid var(--kenar-2); color: var(--metin-2); padding: 6px 12px; border-radius: 20px; font-size: .75rem; font-weight: 700; cursor: pointer; font-family: inherit; }
.aidat-filter-btn.active { background: var(--birincil); color: #fff; border-color: var(--birincil); }
.aidat-card-item { background: var(--kutu); border: 1px solid var(--kenar); border-radius: 10px; padding: 12px; margin-bottom: 10px; color: var(--metin); }
.aidat-card-item.paid { border-left: 4px solid #10b981; background: #f0fdf4; }
.aidat-card-item.unpaid { border-left: 4px solid #ef4444; background: #fff5f5; }
.aidat-badge { padding: 4px 10px; border-radius: 12px; font-size: .72rem; font-weight: 700; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.aidat-badge.paid { background: #dcfce7; color: #15803d; }
.aidat-badge.unpaid { background: #fee2e2; color: #b91c1c; }
.d-aidat-detay { margin-top: 8px; font-size: .8rem; color: var(--metin-2); background: rgba(255,255,255,.7); padding: 8px; border-radius: 6px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px; }
.d-aidat-ode { margin-top: 8px; display: grid; grid-template-columns: 90px 120px 1fr auto; gap: 6px; align-items: center; }
.d-aidat-ode .d-input { padding: 6px 8px; font-size: .8rem; }
@media (max-width: 560px) { .d-aidat-ode { grid-template-columns: 1fr 1fr; } }

.d-iban-kart { background: linear-gradient(135deg, var(--birincil), var(--birincil-koyu)); color: #fff; padding: 14px; border-radius: 12px; margin-bottom: 12px; }
.d-iban-kart strong, .d-iban-kart span { color: #fff !important; }
.d-iban-etiket { font-size: .7rem; text-transform: uppercase; opacity: .85; font-weight: 700; display: block; }
.d-iban-ikon { font-size: 1.5rem; opacity: .8; }
.d-iban-satir { margin-top: 8px; background: rgba(255,255,255,.15); padding: 8px 12px; border-radius: 8px; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.d-iban-satir .d-btn { color: var(--birincil); }

/* Mesajlaşma */
.d-sohbet { max-height: 240px; min-height: 90px; overflow-y: auto; background: var(--kutu-2); border: 1px solid var(--kenar); border-radius: 8px; padding: 10px; margin-bottom: 10px; display: flex; flex-direction: column; gap: 8px; }
.d-sohbet-kucuk { max-height: 170px; }
.chat-msg-item { max-width: 80%; padding: 8px 12px; border-radius: 12px; font-size: .85rem; line-height: 1.4; word-break: break-word; }
.chat-msg-uye { align-self: flex-end; background: var(--birincil); color: #fff; border-bottom-right-radius: 2px; }
.chat-msg-yonetici { align-self: flex-start; background: var(--kutu-4); color: var(--metin); border-bottom-left-radius: 2px; }
.d-mesaj-ust { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: .7rem; font-weight: 700; opacity: .85; margin-bottom: 2px; }
.d-mesaj-ust button { background: none; border: 0; color: inherit; cursor: pointer; font-size: .75rem; opacity: .75; padding: 0 0 0 6px; }
.d-mesaj-metin { white-space: pre-wrap; }
.chat-msg-uye .d-mesaj-ust span, .chat-msg-uye .d-mesaj-metin { color: #fff !important; }
.d-mesaj-form { display: flex; gap: 8px; }
.d-mesaj-form .d-input { flex: 1; }
.d-mesaj-karti { background: var(--kutu); }

/* Duyurular */
.d-duyuru { background: var(--kutu); border: 1px solid var(--kenar); border-radius: 10px; margin-bottom: 10px; padding: 12px; }
.d-duyuru summary { cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 10px; list-style: none; color: var(--metin); }
.d-duyuru summary::-webkit-details-marker { display: none; }
.d-duyuru[open] summary i { transform: rotate(90deg); }
.d-duyuru summary i { color: var(--birincil); transition: transform .2s; }
.d-duyuru-icerik { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--kenar-2); font-size: .88rem; color: var(--metin-2); line-height: 1.55; overflow-wrap: anywhere; }
.d-duyuru-icerik img { max-width: 100%; height: auto; }


/* =====================================================================
   v1.2 — Mesajlaşma
   ===================================================================== */
.d-sayac { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; margin-left: 6px; border-radius: 10px; background: #ef4444; color: #fff !important; font-size: .7rem; font-weight: 700; line-height: 1; vertical-align: middle; }
.neu-pill { position: relative; }
.neu-pill .d-sayac { position: absolute; top: -6px; right: -6px; margin: 0; box-shadow: 0 0 0 2px #fff; }
.d-sayac-satir { margin-left: 2px; }

.d-sohbet-alani { display: flex; flex-direction: column; }
.d-sohbet-buyuk { max-height: 52vh; min-height: 260px; }
.chat-msg-benim { align-self: flex-end; background: var(--birincil); color: #fff; border-bottom-right-radius: 2px; }
.chat-msg-karsi { align-self: flex-start; background: var(--kutu-4); color: var(--metin); border-bottom-left-radius: 2px; }
.chat-msg-benim .d-mesaj-ust span, .chat-msg-benim .d-mesaj-metin, .chat-msg-benim .d-mesaj-alt, .chat-msg-benim a { color: #fff !important; }
.d-mesaj-alt { text-align: right; font-size: .7rem; margin-top: 2px; }
.d-okundu { opacity: .7; letter-spacing: -2px; }
.d-okundu.evet { opacity: 1; color: #a7f3d0 !important; }
.d-ek-resim { display: block; max-width: 220px; max-height: 220px; border-radius: 8px; margin: 4px 0; object-fit: cover; background: rgba(255,255,255,.3); }
.d-ek-dosya { display: inline-flex; align-items: center; gap: 6px; margin: 4px 0; padding: 6px 10px; border-radius: 8px; background: rgba(255,255,255,.25); color: inherit; text-decoration: none; font-weight: 600; word-break: break-all; }
.chat-msg-karsi .d-ek-dosya { background: var(--kutu); color: var(--birincil-koyu); }

.d-mesaj-form { align-items: flex-end; }
.d-mesaj-form textarea { resize: none; min-height: 40px; max-height: 140px; line-height: 1.4; }
.d-ek-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex-shrink: 0; border: 1px solid var(--kenar-2); border-radius: 8px; background: var(--kutu); color: var(--metin-2); cursor: pointer; font-size: 1.15rem; }
.d-ek-btn:hover { border-color: var(--birincil); color: var(--birincil); }
.d-ek-secili { display: flex; align-items: center; gap: 6px; font-size: .8rem; background: var(--birincil-acik); color: var(--birincil-koyu); padding: 6px 10px; border-radius: 8px; margin-bottom: 8px; }
.d-ek-secili button { margin-left: auto; background: none; border: 0; color: inherit; cursor: pointer; font-size: .85rem; }
.d-gizli-metin { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
@media (max-width: 480px) { .d-gonder-yazi { display: none; } }

.d-yeni-sohbet { margin-bottom: 12px; }
.d-sohbet-listesi { display: flex; flex-direction: column; gap: 6px; max-height: 60vh; overflow-y: auto; }
.d-sohbet-satir { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; background: var(--kutu); border: 1px solid var(--kenar); border-radius: 10px; padding: 10px 12px; cursor: pointer; font-family: inherit; color: var(--metin); }
.d-sohbet-satir:hover { border-color: var(--birincil); }
.d-sohbet-satir.okunmamis { border-left: 4px solid #ef4444; background: #fff7f7; }
.d-sohbet-satir.okunmamis .d-sohbet-ad, .d-sohbet-satir.okunmamis .d-sohbet-onizleme { font-weight: 700; color: var(--metin); }
.d-sohbet-orta { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.d-sohbet-ad { font-weight: 600; }
.d-sohbet-onizleme { font-size: .82rem; color: var(--soluk); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.d-sohbet-sag { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: .72rem; color: var(--soluk-2); flex-shrink: 0; }
.d-sohbet-sag .d-sayac { margin: 0; }
.d-sohbet-baslik { min-width: 0; }
.d-sohbet-baslik .d-avatar { width: 32px; height: 32px; font-size: .9rem; }


/* =====================================================================
   v1.3 — Bağış ve Mali Yönetim
   ===================================================================== */
.d-pill-bagis i { color: #e11d48; }
.d-btn-bagis { background: linear-gradient(135deg, #e11d48, #be123c); color: #fff; }
.d-bal { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.d-rozet-sari { background: #fef3c7; color: #92400e; }
.d-buyuk-ikon { font-size: 3rem; color: #10b981; }
.d-pasif { opacity: .6; }
.d-hesap-baslik { margin-top: 0; }

/* Bağış Yap */
.d-adimlar { margin: 0 0 14px; padding: 12px 12px 12px 32px; background: #fff1f2; border: 1px solid #fecdd3; border-radius: 10px; font-size: .88rem; color: #881337; line-height: 1.7; }
.d-hizli-tutar { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin-bottom: 6px; }
.d-hizli-tutar button { padding: 10px 4px; border: 1px solid var(--kenar-2); background: var(--kutu); border-radius: 8px; font-weight: 700; cursor: pointer; font-family: inherit; color: var(--metin); }
.d-hizli-tutar button.secili { background: #e11d48; border-color: #e11d48; color: #fff; }
.d-hesap-sec { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--kenar); border-radius: 10px; margin-bottom: 6px; cursor: pointer; background: var(--kutu); }
.d-hesap-sec:has(input:checked) { border-color: #e11d48; box-shadow: 0 0 0 2px rgba(225,29,72,.15); }
.d-hesap-sec > span { display: flex; flex-direction: column; flex: 1; min-width: 0; color: var(--metin); }
.d-hesap-sec small { color: var(--soluk); }
.d-hesap-sec input { width: auto; }
.d-hesap-sec i { font-size: 1.4rem; color: var(--soluk); }
.d-bagis-sonuc { text-align: center; }
.d-bagis-sonuc h3 { margin: 4px 0 8px; color: var(--metin); }
.d-bagis-sonuc p { color: var(--metin-2); line-height: 1.55; }
.d-bagis-sonuc .d-iban-kart { text-align: left; }
.d-referans { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; background: #fff7ed; border: 2px dashed #fb923c; border-radius: 12px; padding: 14px; margin: 14px 0; }
.d-referans span { font-size: .8rem; color: #9a3412; font-weight: 700; text-transform: uppercase; }
.d-referans strong { font-size: 1.5rem; color: #9a3412; letter-spacing: 2px; }
.d-karekod { margin-top: 10px; background: rgba(255,255,255,.95); border-radius: 8px; padding: 8px 10px; color: var(--metin); }
.d-karekod summary { cursor: pointer; font-weight: 700; font-size: .85rem; color: var(--birincil-koyu); }
.d-karekod img { display: block; width: 200px; max-width: 100%; margin: 10px auto 6px; image-rendering: pixelated; background: var(--kutu); padding: 6px; border-radius: 6px; }
.d-karekod small { display: block; text-align: center; color: var(--soluk) !important; }
.d-karekod.acik { text-align: center; }
.d-ilerleme { display: inline-block; width: 100%; max-width: 220px; height: 8px; background: var(--kutu-4); border-radius: 4px; overflow: hidden; vertical-align: middle; margin: 4px 8px 4px 0; }
.d-ilerleme span { display: block; height: 100%; background: linear-gradient(90deg, #10b981, var(--birincil)); }

/* Mali panel */
.d-sekmeler { display: flex; gap: 4px; overflow-x: auto; border-bottom: 2px solid var(--kenar); margin: 0 0 14px; padding-bottom: 0; scrollbar-width: thin; }
.d-sekmeler button { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; background: none; border: 0; border-bottom: 3px solid transparent; margin-bottom: -2px; padding: 10px 12px; font-family: inherit; font-weight: 700; font-size: .85rem; color: var(--soluk); cursor: pointer; }
.d-sekmeler button.active { color: var(--birincil); border-bottom-color: var(--birincil); }
.d-sekmeler .d-sayac { margin-left: 2px; }
.d-filtre-satir { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 12px; }
.d-filtre-satir .d-onay { margin: 0; }
.d-hizli { margin: 10px 0 16px; }
.d-tur-sec { display: flex; gap: 6px; margin-bottom: 12px; flex-wrap: wrap; }
.d-tur-sec label { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border: 1px solid var(--kenar-2); border-radius: 20px; cursor: pointer; font-weight: 700; font-size: .85rem; background: var(--kutu); color: var(--metin); }
.d-tur-sec label:has(input:checked) { background: var(--birincil); border-color: var(--birincil); color: #fff; }
.d-tur-sec label.d-tur-gelir:has(input:checked) { background: #10b981; border-color: #10b981; }
.d-tur-sec label.d-tur-gider:has(input:checked) { background: #ef4444; border-color: #ef4444; }
.d-tur-sec input { width: auto; }
.d-kayit-formu.gelir { border-left: 4px solid #10b981; }
.d-kayit-formu.gider { border-left: 4px solid #ef4444; }
.d-defter td { vertical-align: top; }
.d-defter .d-h-gelir .d-tutar { color: #059669; }
.d-defter .d-h-gider .d-tutar { color: #dc2626; }
.d-defter .d-h-transfer .d-tutar { color: var(--metin-2); }
.d-defter tr.d-iptal td { opacity: .55; }
.d-defter tr.d-iptal .d-tutar, .d-defter tr.d-iptal strong { text-decoration: line-through; }
.d-defter tfoot td { background: var(--kutu-2); font-size: .85rem; }
.d-onay-formu { display: grid; grid-template-columns: 110px 1fr 140px 1fr auto auto; gap: 6px; margin-top: 10px; align-items: center; }
.d-onay-formu .d-input { padding: 7px 8px; font-size: .82rem; }
.d-bagis-karti { background: var(--kutu); }
.d-rapor-izgara { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 10px 0; }
.d-rapor-tablo { font-size: .85rem; }
.d-rapor-tablo th, .d-rapor-tablo td { padding: 8px 10px; }
.d-rapor-tablo .d-toplam-satir td { font-weight: 700; border-top: 2px solid var(--kenar-2); background: var(--kutu-2); }
.d-pay { white-space: nowrap; }
.d-pay .d-ilerleme { width: 60px; }
.d-rapor-ust { margin-bottom: 8px; }
.d-aylik-grafik { display: grid; grid-template-columns: repeat(12, 1fr); gap: 6px; height: 160px; align-items: end; padding: 10px; background: var(--kutu-2); border: 1px solid var(--kenar); border-radius: 10px; }
.d-ay { display: flex; flex-direction: column; align-items: center; height: 100%; justify-content: flex-end; gap: 4px; }
.d-cubuklar { display: flex; align-items: flex-end; gap: 2px; height: 100%; width: 100%; justify-content: center; }
.d-cubuklar span { width: 40%; max-width: 14px; min-height: 2px; border-radius: 3px 3px 0 0; }
.d-cubuklar .g, .d-lejant.g { background: #10b981; }
.d-cubuklar .c, .d-lejant.c { background: #ef4444; }
.d-ay small { font-size: .65rem; color: var(--soluk); }
.d-lejant { display: inline-block; width: 10px; height: 10px; border-radius: 2px; margin: 0 4px 0 10px; vertical-align: middle; }
.d-hesap-karti .d-sag .d-arac-cubugu { justify-content: flex-end; margin-top: 6px; }
.d-rozetler { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 4px; }
.d-karekod-onizleme { width: 120px; height: 120px; object-fit: contain; background: var(--kutu); border: 1px solid var(--kenar); border-radius: 6px; display: block; margin-bottom: 6px; }
.d-araclar { margin-top: 18px; font-size: .85rem; }
.d-araclar summary { cursor: pointer; font-weight: 700; color: var(--metin-2); }
.d-bagis-listesi { margin-bottom: 14px; }
.d-aidat-ode-2 { display: grid; grid-template-columns: 1fr 150px; gap: 6px; margin-top: 6px; }
.d-aidat-ode-2 .d-input { padding: 6px 8px; font-size: .8rem; }

@media (max-width: 768px) {
    .d-rapor-izgara { grid-template-columns: 1fr; }
    .d-onay-formu { grid-template-columns: 1fr 1fr; }
    .d-onay-formu button { width: 100%; }
    .d-hizli-tutar { grid-template-columns: repeat(2, 1fr); }
    .d-aylik-grafik { gap: 2px; padding: 6px; }
    .d-defter thead { display: none; }
    .d-defter, .d-defter tbody, .d-defter tr, .d-defter td, .d-defter tfoot { display: block; width: 100%; box-sizing: border-box; }
    .d-defter tr { border: 1px solid var(--kenar); border-radius: 10px; margin-bottom: 10px; padding: 6px 8px; background: var(--kutu); }
    .d-defter td { border: 0; padding: 4px 2px; text-align: left; overflow-wrap: anywhere; }
    .d-defter td:empty { display: none; }
    .d-defter td::before { content: attr(data-label); display: block; font-weight: 700; color: var(--soluk); font-size: .68rem; text-transform: uppercase; }
    .d-defter td[data-label=""]::before { content: none; }
    .d-defter td.d-tutar { font-size: 1.05rem; }
    .d-defter tfoot td { text-align: right; }
    .d-defter tfoot td::before { content: none; }
    .panel-content { overflow-x: hidden; }
    .d-aidat-ode-2 { grid-template-columns: 1fr; }
}


/* =====================================================================
   v1.4 — Koyu tema ayrıntıları (renkli zeminli bileşenler)
   ===================================================================== */
.tema-koyu .app-background { background: var(--arka) !important; opacity: 1; }
.tema-koyu a:not(.d-btn) { color: var(--birincil-2); }
.tema-koyu .aidat-card-item.paid { background: #052e16; }
.tema-koyu .aidat-card-item.unpaid { background: #2a0a0a; }
.tema-koyu .d-pasif-alani { background: #2a1606; border-color: #7c2d12; }
.tema-koyu .d-pasif-alani label { color: #fdba74; }
.tema-koyu .d-adimlar { background: #2a0a12; border-color: #881337; color: #fecdd3; }
.tema-koyu .d-referans { background: #2a1606; }
.tema-koyu .d-referans span, .tema-koyu .d-referans strong { color: #fdba74; }
.tema-koyu .d-sohbet-satir.okunmamis { background: #2a0a0a; }
.tema-koyu .d-kirmizi { color: #f87171; }
.tema-koyu .d-yesil { color: #34d399; }
.tema-koyu .d-turuncu { color: #fbbf24; }
.tema-koyu .d-mavi { color: var(--birincil-2); }
.tema-koyu .d-btn-kirmizi-acik { background: #2a0a0a; color: #f87171; border-color: #7f1d1d; }
.tema-koyu .d-ek-secili { color: var(--metin); }
.tema-koyu .d-sekmeler button.active, .tema-koyu .d-sekmeler button.active span { color: var(--birincil-2); border-bottom-color: var(--birincil-2); }
.tema-koyu .d-iban-satir .d-btn { color: var(--metin); }
.d-karekod, .d-karekod summary { color: #1e293b; }
.d-karekod summary { color: #0369a1; }
.neu-pill .d-sayac { box-shadow: 0 0 0 2px var(--yuzey); }

/* =====================================================================
   v1.4 — Tema seçici
   ===================================================================== */
.d-tema-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.d-tema-izgara .d-tema-btn { padding: 12px; font-size: .88rem; }
.d-tema-grup { margin: 14px 0 8px; font-size: .78rem; font-weight: 700; color: var(--soluk); letter-spacing: .5px; }
.d-tema-btn { color: var(--metin); }
.d-tema-renk { flex-shrink: 0; box-shadow: 0 0 0 2px var(--kutu), 0 0 0 3px var(--kenar-2); }

/* =====================================================================
   v1.4 — Yönetici: Mali Yönetim özet şeridi (logonun altında)
   ===================================================================== */
.d-mali-serit { width: 100%; margin: 4px auto 0; display: flex; align-items: center; gap: 22px; padding: 18px 26px; }
.d-mali-serit .card-text { flex: 0 0 auto; }
.d-mali-ozet { flex: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.d-mali-ozet > div { background: var(--kutu-2); border: 1px solid var(--kenar); border-radius: 14px; padding: 10px 14px; min-width: 0; }
.d-mali-ozet span { display: block; font-size: .74rem; font-weight: 600; color: var(--soluk); }
.d-mali-ozet strong { display: block; font-size: 1.1rem; color: var(--metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.d-mali-ozet strong.d-yesil { color: #059669; } .d-mali-ozet strong.d-kirmizi { color: #dc2626; }
.tema-koyu .d-mali-ozet strong.d-yesil { color: #34d399; } .tema-koyu .d-mali-ozet strong.d-kirmizi { color: #f87171; }
.d-mali-serit .d-sayac { position: static; }

/* =====================================================================
   v1.4 — Mobil üst başlık, karşılama kartı ve alt sekme çubuğu
   (masaüstünde gizli)
   ===================================================================== */
.d-mobil-ust, .d-mobil-kahraman, .d-sekme-cubugu { display: none; }

@media (max-width: 768px) {
    body { padding-bottom: calc(var(--sekme-yukseklik) + env(safe-area-inset-bottom, 0px) + 12px); }
    .app-container { justify-content: flex-start; min-height: 0; padding: 12px 16px 8px; gap: 16px; }
    .top-nav { display: none; }
    .center-stage { display: none; }

    /* Üst başlık */
    .d-mobil-ust { display: flex; align-items: center; gap: 10px; width: 100%; padding-top: env(safe-area-inset-top, 0px); }
    .d-mobil-logo { width: 40px; height: 40px; border-radius: 12px; background: var(--yuzey); box-shadow: var(--golge-kucuk); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; color: var(--birincil); font-size: 1.4rem; }
    .d-mobil-logo img { width: 100%; height: 100%; object-fit: cover; }
    .d-mobil-ad { flex: 1; min-width: 0; font-weight: 700; font-size: 1rem; color: var(--metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .d-mobil-ikon { width: 40px; height: 40px; border-radius: 12px; border: 0; background: var(--yuzey); box-shadow: var(--golge-kucuk); color: var(--metin); font-size: 1.25rem; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; position: relative; flex-shrink: 0; }
    .d-mobil-ikon .d-sayac { position: absolute; top: -5px; right: -5px; margin: 0; }

    /* Karşılama kartı (banka uygulaması tarzı) */
    .d-mobil-kahraman { display: block; width: 100%; background: var(--kahraman); color: #fff; border-radius: 22px; padding: 20px; box-shadow: 0 12px 28px color-mix(in srgb, var(--birincil) 35%, transparent); position: relative; overflow: hidden; }
    .d-mobil-kahraman::after { content: ""; position: absolute; right: -40px; top: -40px; width: 160px; height: 160px; border-radius: 50%; background: rgba(255, 255, 255, .08); }
    .d-mobil-kahraman::before { content: ""; position: absolute; right: 30px; bottom: -70px; width: 140px; height: 140px; border-radius: 50%; background: rgba(255, 255, 255, .06); }
    .d-kahraman-selam { font-size: .82rem; opacity: .85; margin: 0 0 2px; color: #fff; }
    .d-kahraman-baslik { font-size: 1.25rem; font-weight: 700; margin: 0 0 14px; color: #fff; line-height: 1.25; }
    .d-kahraman-islemler { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; position: relative; z-index: 1; }
    .d-kahraman-islemler button { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 4px; background: rgba(255, 255, 255, .16); border: 1px solid rgba(255, 255, 255, .22); border-radius: 14px; color: #fff; font-family: inherit; font-size: .74rem; font-weight: 600; cursor: pointer; }
    .d-kahraman-islemler button i { font-size: 1.4rem; color: #fff; }
    .d-kahraman-islemler button:active { background: rgba(255, 255, 255, .26); }
    .d-kahraman-islemler .d-sayac { position: absolute; top: 4px; right: 8px; margin: 0; box-shadow: none; }
    .d-kahraman-islemler button { position: relative; }

    /* Kartlar: iki sütunlu kutucuklar */
    .main-dashboard { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .side-column { display: contents; }
    .main-dashboard .neu-card { flex-direction: column; align-items: flex-start; gap: 10px; padding: 16px; border-radius: 18px; min-height: 112px; position: relative; }
    .main-dashboard .neu-card:hover { transform: none; }
    .main-dashboard .neu-card .icon-circle { width: 44px; height: 44px; font-size: 1.35rem; }
    .main-dashboard .neu-card .card-text h3 { font-size: .82rem; margin-bottom: 6px; line-height: 1.25; }
    .main-dashboard .neu-card .arrow { position: absolute; top: 14px; right: 12px; font-size: 1.1rem; }
    .main-dashboard .neu-card .d-sayac { position: absolute; top: 14px; right: 36px; margin: 0; }

    /* Mali şerit: tam genişlik kart */
    .d-mali-serit { flex-wrap: wrap; gap: 12px; padding: 16px; border-radius: 18px; margin: 0; }
    .d-mali-serit .icon-circle { width: 44px; height: 44px; font-size: 1.35rem; }
    .d-mali-serit .card-text { flex: 1; }
    .d-mali-serit .card-text h3 { font-size: .9rem; }
    .d-mali-ozet { flex-basis: 100%; order: 3; grid-template-columns: 1fr 1fr; gap: 8px; }
    .d-mali-ozet > div:first-child { grid-column: 1 / -1; }
    .d-mali-ozet > div:first-child strong { font-size: 1.35rem; }
    .d-mali-ozet strong { font-size: .95rem; }

    /* Alt bilgi kartı */
    .bottom-panel { padding: 0 16px; margin-top: 4px; }
    .wide-card { padding: 18px; border-radius: 18px; }
    .wide-card:hover { transform: none; }

    /* Alt sekme çubuğu */
    .d-sekme-cubugu { display: grid; grid-template-columns: repeat(5, 1fr); align-items: end; position: fixed; left: 0; right: 0; bottom: 0; z-index: 300;
        height: calc(var(--sekme-yukseklik) + env(safe-area-inset-bottom, 0px)); padding: 0 6px env(safe-area-inset-bottom, 0px);
        background: color-mix(in srgb, var(--yuzey) 94%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
        border-top: 1px solid var(--kenar); box-shadow: 0 -6px 20px rgba(15, 23, 42, .06); }
    .d-sekme { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; height: var(--sekme-yukseklik); background: none; border: 0; font-family: inherit; font-size: .68rem; font-weight: 600; color: var(--soluk); cursor: pointer; position: relative; -webkit-tap-highlight-color: transparent; min-width: 0; }
    .d-sekme i { font-size: 1.45rem; }
    .d-sekme span.d-sekme-ad { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
    .d-sekme.aktif { color: var(--birincil); }
    .d-sekme.aktif i { font-weight: bold; }
    .d-sekme .d-sayac { position: absolute; top: 6px; left: 50%; margin: 0 0 0 6px; }
    .d-sekme-orta { justify-content: flex-start; }
    .d-sekme-orta .d-sekme-daire { width: 54px; height: 54px; margin-top: -20px; border-radius: 50%; background: var(--kahraman); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 18px color-mix(in srgb, var(--birincil) 45%, transparent), 0 0 0 5px var(--yuzey); }
    .d-sekme-orta .d-sekme-daire i { font-size: 1.6rem; color: #fff; }

    /* Paneller: tam ekran sayfa */
    .panel-overlay { bottom: calc(var(--sekme-yukseklik) + env(safe-area-inset-bottom, 0px)); height: auto; align-items: stretch; background: var(--arka); backdrop-filter: none; }
    .panel-overlay .panel-content, .panel-content.d-panel-orta, .panel-content.d-panel-genis { width: 100%; max-width: none; max-height: none; height: 100%; border-radius: 0; border: 0; box-shadow: none; padding: 0 16px 48px !important; background: var(--arka); transform: none; }
    .panel-overlay .panel-content:hover { transform: none; }
    #panel-body > .d-panel-baslik:first-child, #panel-body > div:first-child > .d-baslik-satir:first-child > h3,
    #panel-body > .d-baslik-satir:first-child > h3, #panel-body > div:first-child > .d-baslik-serit:first-child > h3 { display: none; }
    #panel-body .d-baslik-satir > [data-geri], #panel-body .d-baslik-satir > .d-arac-cubugu > [data-geri] { display: none; }
    #panel-body > .d-baslik-satir:first-child { justify-content: flex-end; }
    .d-panel-ust { align-self: stretch; position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 8px; margin: 0 -16px 14px; padding: calc(10px + env(safe-area-inset-top, 0px)) 12px 10px; background: color-mix(in srgb, var(--arka) 92%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--kenar); }
    .d-panel-ust-baslik { flex: 1; min-width: 0; font-weight: 700; font-size: 1rem; color: var(--metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; }
    .d-panel-ust button { width: 40px; height: 40px; border-radius: 12px; border: 0; background: var(--yuzey); color: var(--metin); font-size: 1.2rem; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: var(--golge-kucuk); flex-shrink: 0; }
    .panel-content > .close-btn { display: none; }
    #panel-body .d-panel-baslik, #panel-body .d-baslik-satir, #panel-body .d-baslik-serit { padding-right: 0; margin-right: 0; }
    #panel-body .d-baslik-serit { margin-top: 0; }
    .d-bildirim { bottom: calc(var(--sekme-yukseklik) + env(safe-area-inset-bottom, 0px) + 34px); }
}
@media (min-width: 769px) { .d-panel-ust { display: none; } }

/* WordPress yönetici çubuğu açıkken paneller altında kalmasın */
.admin-bar .panel-overlay { top: 32px; height: auto; bottom: 0; }
@media (max-width: 782px) { .admin-bar .panel-overlay { top: 46px; } }
@media (max-width: 768px) { .admin-bar .panel-overlay { bottom: calc(var(--sekme-yukseklik) + env(safe-area-inset-bottom, 0px)); } }

/* =====================================================================
   v1.5 — Duyurular
   ===================================================================== */
.d-rozet-mavi { background: var(--birincil-acik); color: var(--birincil-koyu); }
.d-rozet-yeni { background: #dc2626; color: #fff; letter-spacing: .5px; }
.tema-koyu .d-rozet-mavi { color: var(--birincil-2); }

/* Logonun altında "Duyurular / 3 yeni duyuru" etiketi */
.d-yeni-duyuru { display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; padding: 4px 12px; border-radius: 20px; font-size: .78rem; font-weight: 600; background: var(--birincil-acik); color: var(--birincil-koyu); }
.d-yeni-duyuru.var { background: #dc2626; color: #fff; animation: dYanip 2s ease-in-out infinite; }
.d-yeni-duyuru i { font-size: 1rem; }
@keyframes dYanip { 50% { box-shadow: 0 0 0 6px rgba(220, 38, 38, .15); } }
@media (prefers-reduced-motion: reduce) { .d-yeni-duyuru.var { animation: none; } }

/* Acil bant */
.d-acil-bant { width: 100%; display: flex; align-items: center; gap: 12px; background: #dc2626; color: #fff; border-radius: 16px; padding: 12px 16px; box-shadow: 0 10px 24px rgba(220, 38, 38, .3); }
.d-acil-bant[hidden] { display: none; }
.d-acil-bant > i { font-size: 1.6rem; flex-shrink: 0; }
.d-acil-bant span { flex: 1; min-width: 0; line-height: 1.35; color: #fff; }
.d-acil-bant strong { color: #fff; }
.d-acil-bant .d-btn { color: #b91c1c; background: #fff; border: 0; flex-shrink: 0; }

/* Liste */
.d-duyuru-arac { display: flex; flex-direction: column; gap: 4px; margin-bottom: 14px; }
.d-duyuru-kart { display: flex; align-items: flex-start; gap: 12px; width: 100%; text-align: left; font-family: inherit; color: var(--metin); background: var(--kutu); border: 1px solid var(--kenar); border-radius: 14px; padding: 14px; margin-bottom: 10px; cursor: pointer; transition: border-color .15s, transform .1s; }
.d-duyuru-kart:hover { border-color: var(--birincil); }
.d-duyuru-kart:active { transform: scale(.99); }
.d-duyuru-kart.yeni { border-left: 5px solid #dc2626; }
.d-duyuru-kart.d-onem-onemli { background: color-mix(in srgb, #f59e0b 8%, var(--kutu)); border-color: color-mix(in srgb, #f59e0b 45%, var(--kutu)); }
.d-duyuru-kart.d-onem-acil { background: color-mix(in srgb, #dc2626 7%, var(--kutu)); border-color: color-mix(in srgb, #dc2626 45%, var(--kutu)); }
.d-duyuru-kucuk { width: 72px; height: 72px; object-fit: cover; border-radius: 10px; flex-shrink: 0; background: var(--kutu-3); }
.d-duyuru-govde { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.d-duyuru-govde .d-rozetler { margin: 0; }
.d-duyuru-baslik { font-size: 1.02rem; line-height: 1.3; color: var(--metin); overflow-wrap: anywhere; }
.d-duyuru-tarih { font-size: .78rem; color: var(--soluk); }
.d-duyuru-ozet { font-size: .88rem; color: var(--metin-2); line-height: 1.45; overflow-wrap: anywhere; }
.d-duyuru-alt { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: .78rem; color: var(--soluk); margin-top: 2px; }
.d-duyuru-alt i { vertical-align: -2px; }
.d-duyuru-ok { color: var(--soluk-2); font-size: 1.2rem; align-self: center; }

/* Ayrıntı */
.d-duyuru-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: .85rem; color: var(--soluk); margin-bottom: 6px; }
.d-duyuru-detay-baslik { font-size: 1.35rem; line-height: 1.3; margin: 4px 0 14px; color: var(--metin); overflow-wrap: anywhere; }
.d-duyuru-metin { font-size: 1.02rem; line-height: 1.7; color: var(--metin); overflow-wrap: anywhere; }
.d-duyuru-metin p { margin: 0 0 12px; }
.d-duyuru-metin ul, .d-duyuru-metin ol { margin: 0 0 12px 22px; }
.d-duyuru-metin li { margin-bottom: 4px; }
.d-duyuru-metin a { color: var(--birincil); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; word-break: break-word; }
.d-duyuru-metin img { max-width: 100%; height: auto; border-radius: 10px; }
.d-duyuru-metin iframe, .d-duyuru-metin video { max-width: 100%; }
.d-duyuru-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; margin: 14px 0; }
.d-duyuru-galeri.tek { grid-template-columns: 1fr; }
.d-galeri-oge { padding: 0; border: 0; background: var(--kutu-3); border-radius: 12px; overflow: hidden; cursor: zoom-in; aspect-ratio: 4 / 3; }
.d-duyuru-galeri.tek .d-galeri-oge { aspect-ratio: auto; max-height: 520px; }
.d-galeri-oge img { width: 100%; height: 100%; object-fit: cover; display: block; }
.d-duyuru-galeri.tek .d-galeri-oge img { object-fit: contain; height: auto; max-height: 520px; }
.d-belge { display: flex; align-items: center; gap: 12px; background: var(--kutu); border: 1px solid var(--kenar); border-radius: 12px; padding: 10px 12px; margin-bottom: 8px; flex-wrap: wrap; }
.d-belge-ikon { font-size: 2rem; color: var(--birincil); flex-shrink: 0; }
.d-belge-ad { flex: 1; min-width: 140px; display: flex; flex-direction: column; overflow-wrap: anywhere; }
.d-belge-ad small { color: var(--soluk); font-size: .75rem; }
.d-okuyanlar summary { cursor: pointer; font-weight: 600; color: var(--metin); padding: 4px 0; }
.d-okuyanlar [data-okuyan-liste] { margin-top: 8px; max-height: 260px; overflow-y: auto; }

/* Tam ekran fotoğraf */
.d-isik-kutusu { position: fixed; inset: 0; z-index: 2000; background: rgba(0, 0, 0, .92); display: flex; align-items: center; justify-content: center; padding: 16px; cursor: zoom-out; }
.d-isik-kutusu img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 6px; }
.d-isik-kapat { position: absolute; top: calc(12px + env(safe-area-inset-top, 0px)); right: 12px; width: 46px; height: 46px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .15); color: #fff; font-size: 1.5rem; cursor: pointer; }
.d-isik-indir { position: absolute; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); left: 50%; transform: translateX(-50%); }

/* Yazma formu */
.d-input-buyuk { font-size: 1rem; padding: 12px 14px; }
textarea.d-input-buyuk { line-height: 1.55; resize: vertical; min-height: 180px; }
.d-alan-grubu { border: 0; padding: 0; margin: 0; }
.d-alan-grubu legend { font-size: .85rem; font-weight: 700; color: var(--metin-2); margin-bottom: 6px; }
.d-secimler { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.d-secim { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 2px solid var(--kenar); border-radius: 12px; background: var(--kutu); cursor: pointer; }
.d-secim input { margin-top: 3px; width: 18px; height: 18px; flex-shrink: 0; }
.d-secim span { display: flex; flex-direction: column; gap: 2px; color: var(--metin); }
.d-secim small { font-size: .75rem; color: var(--soluk); }
.d-secim:has(input:checked) { border-color: var(--birincil); background: var(--birincil-acik-2); }
.d-secim-sari:has(input:checked) { border-color: #f59e0b; background: color-mix(in srgb, #f59e0b 10%, var(--kutu)); }
.d-secim-kirmizi:has(input:checked) { border-color: #dc2626; background: color-mix(in srgb, #dc2626 8%, var(--kutu)); }
.d-onay-buyuk { align-items: flex-start; padding: 12px; border: 1px solid var(--kenar); border-radius: 12px; background: var(--kutu); margin: 0; }
.d-onay-buyuk input { width: 18px; height: 18px; margin-top: 3px; flex-shrink: 0; }
.d-onay-buyuk span { display: flex; flex-direction: column; gap: 2px; color: var(--metin); }
.d-onay-buyuk small { font-size: .75rem; color: var(--soluk); }
.d-dosya-sec { margin: 4px 0; cursor: pointer; }
.d-ek-satir { display: flex; align-items: center; gap: 10px; padding: 8px; border: 1px solid var(--kenar); border-radius: 10px; background: var(--kutu); margin-bottom: 6px; }
.d-ek-satir img { width: 44px; height: 44px; object-fit: cover; border-radius: 8px; flex-shrink: 0; }
.d-ek-satir > i { font-size: 1.8rem; color: var(--birincil); width: 44px; text-align: center; flex-shrink: 0; }
.d-ek-satir span { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: .88rem; overflow-wrap: anywhere; color: var(--metin); }
.d-ek-satir small { color: var(--soluk); font-size: .74rem; }
.d-ek-satir.silinecek { opacity: .55; }
.d-ek-satir.silinecek span { text-decoration: line-through; }
.d-ek-satir.yeni { border-style: dashed; border-color: var(--birincil); }
.d-btn-yayinla { font-size: 1.02rem; padding: 14px; margin-top: 8px; }

@media (max-width: 768px) {
    .d-acil-bant { border-radius: 14px; padding: 10px 12px; font-size: .88rem; }
    .d-duyuru-kucuk { width: 60px; height: 60px; }
    .d-duyuru-metin { font-size: 1.05rem; }
    .d-sekme .d-sayac[data-sayac=duyuru] { top: 4px; }
}

/* =====================================================================
   v1.6 — Gönüllüler
   ===================================================================== */
.d-segment { display: inline-flex; gap: 4px; padding: 4px; margin: 0 44px 14px 0; background: var(--kutu-3); border: 1px solid var(--kenar); border-radius: 14px; max-width: 100%; }
.d-segment button { display: inline-flex; align-items: center; gap: 6px; padding: 9px 16px; border: 0; border-radius: 10px; background: none; font-family: inherit; font-weight: 700; font-size: .88rem; color: var(--metin-2); cursor: pointer; white-space: nowrap; }
.d-segment button.active { background: var(--kutu); color: var(--birincil); box-shadow: 0 2px 8px rgba(15, 23, 42, .08); }
.d-segment button .d-soluk { font-weight: 600; }
.d-gonullu-form { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) auto; gap: 8px; align-items: center; background: var(--kutu-2); border: 1px dashed var(--kenar-2); border-radius: 12px; padding: 10px; margin-bottom: 12px; }
.d-gonullu-form.duzenle { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) auto auto; margin: 0; width: 100%; border-style: solid; border-color: var(--birincil); }
.d-gonullu-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: 8px; }
.d-gonullu-satir { display: flex; align-items: center; gap: 12px; background: var(--kutu); border: 1px solid var(--kenar); border-radius: 12px; padding: 10px 12px; min-width: 0; }
.d-gonullu-satir:has(.duzenle) { grid-column: 1 / -1; padding: 0; border: 0; background: none; }
.d-gonullu-ad { flex: 1; min-width: 0; display: flex; flex-direction: column; overflow-wrap: anywhere; color: var(--metin); }
.d-gonullu-tel { font-size: .85rem; color: var(--metin-2); text-decoration: none; font-variant-numeric: tabular-nums; }
.d-gonullu-satir .d-islemler { flex-shrink: 0; }
.d-gonullu-satir a.d-ikon-btn { text-decoration: none; display: inline-flex; }

/* =====================================================================
   v1.6 — Projelerimiz
   ===================================================================== */
.d-proje-serit { width: 100%; margin: 0 auto; display: flex; align-items: center; gap: 22px; padding: 18px 26px; }
.d-proje-serit[hidden] { display: none; }
.d-proje-serit .card-text { flex: 0 0 auto; }
.d-proje-onizleme { flex: 1; min-width: 0; display: flex; gap: 10px; align-items: center; overflow: hidden; }
.d-proje-mini { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1 1 0; max-width: 300px; background: var(--kutu-2); border: 1px solid var(--kenar); border-radius: 14px; padding: 6px 12px 6px 6px; }
.d-proje-mini img, .d-proje-mini > i { width: 46px; height: 46px; border-radius: 10px; object-fit: cover; flex-shrink: 0; background: var(--kutu-3); color: var(--soluk-2); display: flex; align-items: center; justify-content: center; font-size: 1.3rem; }
.d-proje-mini span { font-size: .82rem; font-weight: 600; color: var(--metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.d-proje-daha { flex-shrink: 0; font-weight: 700; color: var(--birincil); background: var(--birincil-acik); border-radius: 12px; padding: 8px 12px; font-size: .85rem; }

.d-durum-plan { background: #e0e7ff; color: #3730a3; }
.d-durum-devam { background: #fef3c7; color: #92400e; }
.d-durum-tamam { background: #dcfce7; color: #166534; }
.d-rozet i { vertical-align: -1px; }

.d-proje-ekle { margin-bottom: 12px; }
.d-proje-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.d-proje-kart { display: flex; flex-direction: column; text-align: left; padding: 0; overflow: hidden; font-family: inherit; color: var(--metin); background: var(--kutu); border: 1px solid var(--kenar); border-radius: 16px; cursor: pointer; transition: transform .15s, box-shadow .15s, border-color .15s; }
.d-proje-kart:hover { transform: translateY(-2px); border-color: var(--birincil); box-shadow: 0 10px 24px rgba(15, 23, 42, .08); }
.d-proje-kart.taslak { opacity: .75; border-style: dashed; }
.d-proje-kapak { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 9; background: var(--birincil-acik); color: var(--birincil); font-size: 2.4rem; overflow: hidden; }
.d-proje-kapak img { width: 100%; height: 100%; object-fit: cover; display: block; }
.d-proje-rozet { position: absolute; left: 10px; top: 10px; }
.d-proje-rozet .d-rozet { box-shadow: 0 2px 8px rgba(0, 0, 0, .15); }
.d-proje-taslak { position: absolute; right: 10px; top: 10px; background: rgba(15, 23, 42, .75); color: #fff; font-size: .72rem; font-weight: 700; padding: 4px 10px; border-radius: 20px; }
.d-proje-govde { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; flex: 1; }
.d-proje-govde > strong { font-size: 1.02rem; line-height: 1.3; overflow-wrap: anywhere; }
.d-proje-ozet { font-size: .86rem; line-height: 1.45; color: var(--metin-2); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.d-proje-bilgi { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: .78rem; color: var(--soluk); }
.d-proje-bilgi i { vertical-align: -2px; }
.d-proje-bilgi-buyuk { font-size: .9rem; margin: -6px 0 12px; }
.d-proje-ilerleme { margin-top: 4px; font-size: .8rem; color: var(--metin-2); }
.d-proje-ilerleme .d-ilerleme { width: 100%; max-width: none; margin: 6px 0 0; height: 10px; border-radius: 5px; }
.d-proje-buyuk-kapak { display: block; width: 100%; padding: 0; border: 0; border-radius: 16px; overflow: hidden; margin: 0 0 14px; cursor: zoom-in; background: var(--kutu-3); max-height: 420px; }
.d-proje-buyuk-kapak img { width: 100%; max-height: 420px; object-fit: cover; display: block; }
.d-proje-giris { font-size: 1.05rem; line-height: 1.6; color: var(--metin); font-weight: 500; margin: 0 0 12px; }
.d-proje-bagis { background: color-mix(in srgb, #e11d48 6%, var(--kutu)); border: 1px solid color-mix(in srgb, #e11d48 30%, var(--kutu)); border-radius: 14px; padding: 14px; margin: 16px 0; }
.d-proje-bagis .d-btn-genis { margin-top: 12px; }
.d-kapak-sec { display: inline-flex; align-items: center; gap: 4px; font-size: .78rem; font-weight: 600; color: var(--metin-2); cursor: pointer; white-space: nowrap; }
.d-kapak-sec input { width: auto; }
.tema-koyu .d-durum-plan { background: #1e1b4b; color: #c7d2fe; }
.tema-koyu .d-durum-devam { background: #422006; color: #fde68a; }
.tema-koyu .d-durum-tamam { background: #052e16; color: #86efac; }

@media (max-width: 768px) {
    .d-segment { display: flex; margin-right: 0; }
    .d-segment button { flex: 1; justify-content: center; padding: 10px 8px; }
    #panel-body .d-segment ~ div .d-baslik-serit > h3 { display: none; }
    .d-gonullu-form, .d-gonullu-form.duzenle { grid-template-columns: 1fr; }
    .d-gonullu-form .d-btn { width: 100%; }
    .d-gonullu-liste { grid-template-columns: 1fr; }
    .d-proje-serit { flex-wrap: wrap; gap: 12px; padding: 16px; border-radius: 18px; margin: 0; }
    .d-proje-serit .icon-circle { width: 44px; height: 44px; font-size: 1.35rem; }
    .d-proje-serit .card-text { flex: 1; }
    .d-proje-serit .card-text h3 { font-size: .9rem; }
    .d-proje-onizleme { flex-basis: 100%; order: 3; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
    .d-proje-mini { flex: 0 0 72%; max-width: none; }
    .d-proje-izgara { grid-template-columns: 1fr; }
}

/* =====================================================================
   v1.7 — Excel'den al
   ===================================================================== */
.d-aktar-adimlar { margin: 0 0 14px; padding-left: 22px; display: flex; flex-direction: column; gap: 14px; color: var(--metin); }
.d-aktar-adimlar li { line-height: 1.55; font-size: .92rem; color: var(--metin-2); }
.d-aktar-adimlar li strong { color: var(--metin); }
.d-aktar-adimlar .d-btn { display: inline-flex; }
.d-dosya-buyuk { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 22px 14px; margin-bottom: 10px; border: 2px dashed var(--kenar-2); border-radius: 14px; background: var(--kutu-2); color: var(--metin-2); font-weight: 600; cursor: pointer; text-align: center; overflow-wrap: anywhere; }
.d-dosya-buyuk i { font-size: 1.8rem; color: var(--birincil); flex-shrink: 0; }
.d-dosya-buyuk.secili { border-style: solid; border-color: var(--birincil); background: var(--birincil-acik-2); color: var(--metin); }
.d-aktar-sonuc { display: flex; gap: 12px; align-items: flex-start; padding: 14px; border-radius: 12px; margin: 10px 0; background: #fef3c7; color: #92400e; }
.d-aktar-sonuc.basarili { background: #dcfce7; color: #166534; }
.d-aktar-sonuc > i { font-size: 1.6rem; flex-shrink: 0; }
.d-aktar-sonuc strong { color: inherit; }
.d-aktar-sonuc details { margin-top: 6px; font-size: .85rem; }
.d-aktar-sonuc summary { cursor: pointer; font-weight: 600; }
.d-aktar-sonuc ul { margin: 6px 0 0 18px; max-height: 220px; overflow-y: auto; }

/* =====================================================================
   v1.7 — Basit Mali Yönetim (büyük düğmeler, sade dil)
   ===================================================================== */
.d-mali-mod-sec { background: var(--birincil-acik-2); border: 1px solid var(--birincil-kenar); border-radius: 14px; padding: 12px 14px; }
.d-mali-mod-sec legend { padding: 0 4px; }
.d-beyan-sec { max-width: 230px; font-size: .75rem; padding: 4px 6px; }

[data-mb] { font-size: 1.02rem; }
.d-mb-ozet { display: flex; flex-direction: column; gap: 2px; background: var(--kahraman); color: #fff; border-radius: 18px; padding: 18px 20px; margin-bottom: 16px; }
.d-mb-ozet span { font-size: .9rem; opacity: .9; color: #fff; }
.d-mb-ozet strong { font-size: 2rem; line-height: 1.2; color: #fff; font-variant-numeric: tabular-nums; }
.d-mb-ozet small { font-size: .88rem; color: #fff; opacity: .95; }
.d-mb-ozet small b { color: #fff; font-weight: 700; }
.d-mb-izgara { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 14px; }
.d-mb-izgara-2 { grid-template-columns: repeat(2, 1fr); }
.d-mb-kutu { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; text-align: left; min-height: 128px; padding: 16px; border-radius: 18px; border: 2px solid transparent; font-family: inherit; cursor: pointer; transition: transform .1s, box-shadow .15s; }
.d-mb-kutu:hover { box-shadow: 0 8px 20px rgba(15, 23, 42, .1); }
.d-mb-kutu:active { transform: scale(.98); }
.d-mb-kutu i { font-size: 2.2rem; margin-bottom: 4px; }
.d-mb-kutu strong { font-size: 1.12rem; line-height: 1.2; }
.d-mb-kutu small { font-size: .82rem; opacity: .85; line-height: 1.3; }
.d-mb-kutu .d-sayac { position: absolute; top: 12px; right: 12px; margin: 0; min-width: 28px; height: 28px; font-size: .9rem; border-radius: 14px; }
.d-mb-kucuk-kutu { min-height: 104px; }
.d-mb-yesil { background: #dcfce7; color: #14532d; border-color: #86efac; } .d-mb-yesil i { color: #16a34a; }
.d-mb-pembe { background: #ffe4e6; color: #881337; border-color: #fda4af; } .d-mb-pembe i { color: #e11d48; }
.d-mb-mavi { background: #e0f2fe; color: #0c4a6e; border-color: #7dd3fc; } .d-mb-mavi i { color: #0284c7; }
.d-mb-kirmizi { background: #fee2e2; color: #7f1d1d; border-color: #fca5a5; } .d-mb-kirmizi i { color: #dc2626; }
.d-mb-mor { background: #ede9fe; color: #4c1d95; border-color: #c4b5fd; } .d-mb-mor i { color: #7c3aed; }
.d-mb-turuncu { background: #ffedd5; color: #7c2d12; border-color: #fdba74; } .d-mb-turuncu i { color: #ea580c; }
.tema-koyu .d-mb-kutu { background: var(--kutu); color: var(--metin); border-color: var(--kenar-2); }
.d-mb-son { display: flex; align-items: center; gap: 14px; width: 100%; padding: 16px; border-radius: 16px; border: 1px solid var(--kenar); background: var(--kutu); color: var(--metin); font-family: inherit; text-align: left; cursor: pointer; }
.d-mb-son > i:first-child { font-size: 1.8rem; color: var(--birincil); }
.d-mb-son span { flex: 1; display: flex; flex-direction: column; }
.d-mb-son small { color: var(--soluk); font-size: .82rem; }
.d-mb-gelismis { text-align: center; margin: 18px 0 4px; font-size: .85rem; }

.d-mb-soru { font-size: 1.25rem; margin: 6px 0 10px; color: var(--metin); }
.d-mb-arama { margin-bottom: 10px; }
.d-mb-arama .d-input { width: 100%; font-size: 1.05rem; padding: 14px 14px 14px 38px; }
.d-mb-liste { display: flex; flex-direction: column; gap: 8px; }
.d-mb-satir { display: flex; align-items: center; gap: 12px; width: 100%; padding: 14px; border-radius: 14px; border: 1px solid var(--kenar); background: var(--kutu); color: var(--metin); font-family: inherit; font-size: 1rem; text-align: left; cursor: pointer; }
.d-mb-satir[hidden] { display: none; }
.d-mb-satir:hover { border-color: var(--birincil); }
.d-mb-satir > span:not(.d-avatar):not(.d-mb-kod) { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.d-mb-satir small { color: var(--soluk); font-size: .82rem; }
.d-mb-satir > i { color: var(--soluk-2); font-size: 1.2rem; }
.d-mb-satir .d-avatar { width: 42px; height: 42px; font-size: 1.1rem; }
.d-mb-kod { flex-shrink: 0; min-width: 46px; padding: 4px 8px; border-radius: 8px; background: var(--kutu-3); color: var(--metin-2); font-weight: 700; font-size: .8rem; text-align: center; }
.d-mb-yonlendir { border-style: dashed; }
.d-mb-grup { margin: 10px 2px 2px; font-size: .8rem; font-weight: 700; color: var(--soluk); text-transform: none; }
.d-mb-kisi { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: var(--kutu-2); border: 1px solid var(--kenar); margin-bottom: 12px; }
.d-mb-kisi strong { flex: 1; min-width: 0; font-size: 1.05rem; color: var(--metin); }
.d-mb-kisi > i { font-size: 1.4rem; color: var(--birincil); }
.d-mb-aylar { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }
.d-mb-ay { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 14px; border: 2px solid var(--kenar); background: var(--kutu); cursor: pointer; }
.d-mb-ay input { width: 24px; height: 24px; flex-shrink: 0; }
.d-mb-ay span { flex: 1; display: flex; justify-content: space-between; gap: 10px; color: var(--metin); }
.d-mb-ay:has(input:checked) { border-color: #16a34a; background: color-mix(in srgb, #16a34a 8%, var(--kutu)); }
.d-mb-alan { display: flex; flex-direction: column; gap: 6px; margin: 14px 0; border: 0; padding: 0; }
.d-mb-alan legend, .d-mb-etiket { font-weight: 700; color: var(--metin); font-size: .98rem; margin-bottom: 6px; }
.d-mb-alan .d-input { font-size: 1.05rem; padding: 13px 14px; }
.d-mb-tutar { display: flex; align-items: center; gap: 8px; }
.d-mb-tutar .d-input { font-size: 1.6rem; font-weight: 700; padding: 12px 14px; max-width: 260px; font-variant-numeric: tabular-nums; }
.d-mb-tutar b { font-size: 1.5rem; color: var(--soluk); }
.d-mb-ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.d-mb-secim { display: block; cursor: pointer; }
.d-mb-secim input { position: absolute; opacity: 0; pointer-events: none; }
.d-mb-secim span { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 16px 10px; border-radius: 14px; border: 2px solid var(--kenar-2); background: var(--kutu); color: var(--metin); font-weight: 700; font-size: 1rem; text-align: center; }
.d-mb-secim span i { font-size: 1.5rem; }
.d-mb-secim input:checked + span { border-color: var(--birincil); background: var(--birincil-acik); color: var(--birincil-koyu); box-shadow: 0 0 0 3px color-mix(in srgb, var(--birincil) 20%, transparent); }
.d-mb-secim input:focus-visible + span { outline: 3px solid var(--birincil); outline-offset: 2px; }
.d-mb-banka { margin-top: 8px; }
.d-mb-toplam { font-size: 1.15rem; margin: 10px 0; color: var(--metin); }
.d-mb-toplam strong { font-size: 1.4rem; }
.d-mb-kaydet { font-size: 1.12rem; padding: 16px; margin-top: 10px; }
.d-mb-buyuk { padding: 14px 16px; font-size: 1rem; }
.d-mb-basari { text-align: center; padding: 20px 10px; }
.d-mb-basari > i { font-size: 4rem; color: #16a34a; }
.d-mb-basari h3 { font-size: 1.4rem; margin: 6px 0 8px; color: var(--metin); }
.d-mb-basari p { color: var(--metin-2); line-height: 1.6; font-size: 1.02rem; }
.d-mb-bos > i { color: var(--soluk-2); font-size: 3rem; }
.d-mb-dugmeler { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }
.d-mb-bagis { border: 1px solid var(--kenar); border-radius: 16px; padding: 14px; margin-bottom: 10px; background: var(--kutu); }
.d-mb-bagis-ust { display: flex; justify-content: space-between; gap: 10px; font-size: 1.12rem; color: var(--metin); }
.d-mb-bagis-ust b { color: #be123c; white-space: nowrap; }
.d-mb-bagis-bilgi { font-size: .85rem; color: var(--soluk); margin: 4px 0 12px; overflow-wrap: anywhere; }
.d-mb-ek { margin: 12px 0; padding: 10px 14px; border: 1px dashed var(--kenar-2); border-radius: 12px; }
.d-mb-ek summary { cursor: pointer; font-weight: 600; color: var(--metin-2); font-size: .92rem; }
.d-mb-cikti { margin-bottom: 14px; }
.d-mb-cikti .d-btn { text-decoration: none; }
.d-btn-word { background: #1d4ed8; color: #fff; }
.d-mb-beyan { border: 2px solid var(--metin); border-radius: 10px; padding: 8px 12px; margin-bottom: 12px; background: var(--kutu); }
.d-mb-beyan-baslik { font-weight: 800; padding: 4px 0 6px; color: var(--metin); }
.d-mb-beyan-satir { display: flex; justify-content: space-between; gap: 12px; padding: 5px 0; border-bottom: 1px dotted var(--kenar-2); font-size: .95rem; color: var(--metin); }
.d-mb-beyan-satir.alt { padding-left: 22px; font-size: .88rem; color: var(--metin-2); }
.d-mb-beyan-satir.sifir span:last-child { color: var(--soluk-2); }
.d-mb-beyan-satir span:last-child { white-space: nowrap; font-variant-numeric: tabular-nums; font-weight: 600; }
.d-mb-beyan-satir.toplam { border-bottom: 0; border-top: 2px solid var(--metin); margin-top: 4px; padding-top: 8px; font-weight: 800; }
.d-mb-beyan-satir b { color: var(--metin-2); }
.d-mb-hareket { display: flex; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--kenar); border-radius: 14px; margin-bottom: 8px; background: var(--kutu); }
.d-mb-hareket-ikon { width: 42px; height: 42px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; flex-shrink: 0; }
.d-mb-hareket-ikon.gelir { background: #dcfce7; color: #16a34a; } .d-mb-hareket-ikon.gider { background: #fee2e2; color: #dc2626; }
.d-mb-hareket-orta { flex: 1; min-width: 0; display: flex; flex-direction: column; color: var(--metin); }
.d-mb-hareket-orta small { color: var(--soluk); font-size: .8rem; overflow-wrap: anywhere; }
.d-mb-hareket-sag { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; flex-shrink: 0; max-width: 46%; }
.d-mb-hareket-sag small { font-size: .7rem; }

@media (max-width: 768px) {
    .d-mb-izgara { grid-template-columns: 1fr 1fr; gap: 10px; }
    .d-mb-kutu { min-height: 118px; padding: 14px; }
    .d-mb-ozet strong { font-size: 1.7rem; }
    .d-mb-tutar .d-input { max-width: none; }
    .d-mb-hareket { flex-wrap: wrap; }
    .d-mb-hareket-sag { flex-direction: row; align-items: center; justify-content: space-between; max-width: none; width: 100%; padding-left: 54px; }
}

/* ================================================================
 * v1.8 — Üye araçları: aidat özeti, ek filtreler, istatistikler, toplu WhatsApp, proje paylaşımı
 * ================================================================ */
.d-bos-buyuk { text-align: center; padding: 26px 12px; color: var(--metin-2); }
.d-bos-buyuk > i { font-size: 3rem; color: var(--birincil); display: block; margin-bottom: 8px; }
.d-bos-buyuk p { font-size: 1.05rem; line-height: 1.5; margin: 0; }
.d-link-btn { background: none; border: 0; padding: 0; font: inherit; color: var(--birincil); text-decoration: underline; cursor: pointer; }
.d-sayac-ic { display: inline-block; min-width: 20px; padding: 1px 7px; margin-left: 4px; border-radius: 10px; background: rgba(255, 255, 255, .28); font-size: .78rem; font-weight: 800; line-height: 1.5; }
.d-btn-beyaz .d-sayac-ic { background: var(--birincil); color: #fff; }
.d-btn-buyuk { padding: 16px 18px; font-size: 1.05rem; }
.d-btn[disabled] { opacity: .5; cursor: not-allowed; }
.d-not-bilgi { display: flex; gap: 10px; align-items: flex-start; background: var(--birincil-acik, #e0f2fe); color: var(--metin); border-radius: 12px; padding: 12px 14px; font-size: .9rem; }
.d-not-bilgi > i { font-size: 1.3rem; color: var(--birincil); flex-shrink: 0; }
.tema-koyu .d-not-bilgi { background: var(--kutu-3); }
.d-orta-hizali { justify-content: center; }
.d-alt-bosluk { margin-bottom: 10px; }

/* Aidat özeti (üyeler paneli üstü) */
.d-uye-aidat-ozet { margin: 0 0 12px; }
.d-aidat-kartlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.d-aidat-kart { display: grid; grid-template-columns: auto 1fr; column-gap: 10px; row-gap: 2px; align-items: center; text-align: left; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--kenar); background: var(--kutu); color: var(--metin-2); font-family: inherit; font-size: .9rem; }
button.d-aidat-kart { cursor: pointer; transition: border-color .15s, box-shadow .15s; }
button.d-aidat-kart:hover { border-color: var(--birincil); }
.d-aidat-kart > i { grid-row: span 2; font-size: 1.7rem; color: var(--soluk); }
.d-aidat-kart strong { color: var(--metin); font-size: 1.15rem; }
.d-aidat-kart small { color: var(--soluk); font-size: .78rem; grid-column: 2; }
.d-aidat-kart-kirmizi > i { color: #dc2626; }
.d-aidat-kart-yesil > i { color: #16a34a; }
.d-aidat-kart.secili { border-color: var(--birincil); box-shadow: 0 0 0 2px var(--birincil); }
.d-aidat-oran { grid-column: 2; display: block; height: 8px; border-radius: 4px; background: var(--kutu-3); overflow: hidden; margin-top: 4px; }
.d-aidat-oran > span { display: block; height: 100%; border-radius: 4px; background: #16a34a; }
.d-aidat-toplu { margin-top: 10px; }
.d-aidat-hucre { border: 0; font-family: inherit; cursor: pointer; white-space: nowrap; background: var(--kutu-3); color: var(--metin-2); }
.d-aidat-hucre.d-rozet-kirmizi { background: #fee2e2; color: #b91c1c; }
.d-aidat-hucre.d-rozet-yesil { background: #dcfce7; color: #15803d; }
.tema-koyu .d-aidat-hucre.d-rozet-kirmizi, .tema-koyu .d-rozet-kirmizi { background: #3b0d0d; color: #fca5a5; }
.tema-koyu .d-aidat-hucre.d-rozet-yesil, .tema-koyu .d-rozet-yesil { background: #052e16; color: #86efac; }

/* Daha fazla filtre */
.d-ek-filtre { margin: 0 0 12px; }
.d-ek-filtre-ust { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.d-ek-filtre-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; margin-top: 10px; padding: 12px; border-radius: 12px; background: var(--kutu-2); border: 1px solid var(--kenar-ince); }
.d-ek-filtre-alan { display: flex; flex-direction: column; gap: 4px; font-size: .8rem; font-weight: 700; color: var(--metin-2); }
.d-ek-filtre-alan .d-input { width: 100%; }

/* İstatistikler */
.d-ist-ust { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.d-ist-ust p { margin: 0; }
.d-segment-kucuk { margin: 0; }
.d-segment-kucuk button { padding: 7px 12px; font-size: .82rem; }
.d-ist-kutucuklar { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px; margin-bottom: 14px; }
.d-ist-kutucuk { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: 14px; background: var(--kutu); border: 1px solid var(--kenar); }
.d-ist-kutucuk i { font-size: 1.3rem; color: var(--birincil); }
.d-ist-kutucuk strong { font-size: 1.5rem; color: var(--metin); line-height: 1.2; font-variant-numeric: tabular-nums; }
.d-ist-kutucuk span { font-size: .78rem; color: var(--soluk); font-weight: 600; }
.d-ist-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.d-ist-bolum { padding: 12px 14px; border-radius: 14px; background: var(--kutu); border: 1px solid var(--kenar); }
.d-ist-bolum .d-alt-baslik { margin-top: 0; }
.d-ist-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.d-ist-satir { width: 100%; display: grid; grid-template-columns: minmax(80px, 34%) 1fr auto; gap: 10px; align-items: center; padding: 6px 6px; border: 0; border-radius: 8px; background: none; font-family: inherit; font-size: .86rem; color: var(--metin-2); text-align: left; }
button.d-ist-satir { cursor: pointer; }
button.d-ist-satir:hover, button.d-ist-satir:focus-visible { background: var(--kutu-3); }
.d-ist-ad { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--metin); font-weight: 600; }
.d-ist-cubuk { display: block; height: 10px; border-radius: 4px; background: var(--kutu-3); overflow: hidden; }
.d-ist-cubuk > span { display: block; height: 100%; border-radius: 0 4px 4px 0; background: var(--birincil); }
.d-ist-satir.belirsiz .d-ist-ad { color: var(--soluk); font-weight: 500; font-style: italic; }
.d-ist-satir.belirsiz .d-ist-cubuk > span { background: var(--kenar-2); }
.d-ist-deger { white-space: nowrap; font-variant-numeric: tabular-nums; color: var(--metin); min-width: 82px; text-align: right; }
.d-ist-deger small { color: var(--soluk); }

/* Toplu WhatsApp */
.d-wa-liste { display: flex; flex-direction: column; gap: 6px; max-height: 340px; overflow-y: auto; padding: 2px; }
.d-wa-kisi { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--kenar); background: var(--kutu); cursor: pointer; }
.d-wa-kisi input { width: 22px; height: 22px; }
.d-wa-kisi.pasif { opacity: .6; cursor: default; }
.d-wa-ad { display: flex; flex-direction: column; min-width: 0; }
.d-wa-ad strong { color: var(--metin); }
.d-wa-ad small { color: var(--soluk); font-size: .78rem; }
.d-wa-borc { text-align: right; font-weight: 800; color: #b91c1c; display: flex; flex-direction: column; }
.tema-koyu .d-wa-borc { color: #f87171; }
.d-wa-borc small { font-weight: 600; color: var(--soluk); }
.d-wa-liste + .d-alt-baslik { margin-top: 18px; }
.d-wa-mesaj { width: 100%; min-height: 160px; font-size: .95rem; line-height: 1.5; resize: vertical; }
.d-wa-onizleme { white-space: pre-wrap; word-break: break-word; font-family: inherit; font-size: .9rem; line-height: 1.5; background: #dcf8c6; color: #111b21; border-radius: 12px 12px 12px 2px; padding: 12px 14px; margin: 10px 0 14px; }
.tema-koyu .d-wa-onizleme { background: #005c4b; color: #e9edef; }
.d-wa-ilerleme { display: flex; align-items: center; gap: 10px; font-weight: 800; color: var(--metin-2); margin-bottom: 12px; }
.d-wa-ilerleme .d-aidat-oran { flex: 1; margin: 0; }
.d-wa-sira-kart { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 18px; border-radius: 16px; background: var(--kutu-2); border: 1px solid var(--kenar); text-align: center; }
.d-wa-sira-ad { font-size: 1.35rem; color: var(--metin); }

/* Proje paylaşımı */
.d-paylas { margin: 16px 0 4px; padding: 14px; border-radius: 14px; background: var(--kutu-2); border: 1px solid var(--kenar); }
.d-paylas .d-alt-baslik { margin-top: 0; }
.d-paylas-dugmeler { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
.d-btn-facebook { background: #1877f2; color: #fff; }

@media (max-width: 768px) {
    .d-aidat-kartlar { grid-template-columns: 1fr 1fr; }
    .d-aidat-kart { padding: 10px 12px; }
    .d-aidat-kart > i { font-size: 1.4rem; }
    .d-ist-izgara { grid-template-columns: 1fr; }
    .d-ist-satir { grid-template-columns: minmax(70px, 38%) 1fr auto; gap: 8px; }
    .d-ist-deger { min-width: 70px; }
    .d-segment:not(.d-segment-kucuk) { display: flex; width: 100%; margin-right: 0; }
    .d-segment:not(.d-segment-kucuk) button { flex: 1 1 auto; justify-content: center; padding: 9px 6px; font-size: .8rem; gap: 4px; }
    .d-segment:not(.d-segment-kucuk) button i { display: none; }
    .d-aidat-toplu { width: 100%; justify-content: center; }
}

/* ================================================================
 * v1.9 — Telif, sayman hesapları, veri ve bakım
 * ================================================================ */
.d-telif { text-align: center; font-size: .75rem; color: var(--soluk); margin: 18px auto 8px; padding: 0 16px; letter-spacing: .2px; }
.d-ayar-dugmeler { gap: 10px; margin: 10px 0 4px; }
.d-sayman-satir { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid var(--kenar); border-radius: 12px; background: var(--kutu); margin-bottom: 8px; }
.d-sayman-satir > i { font-size: 1.8rem; color: var(--birincil); }
.d-sayman-satir span { display: flex; flex-direction: column; min-width: 0; }
.d-sayman-satir strong { color: var(--metin); }
.d-sayman-satir small { color: var(--soluk); font-size: .78rem; overflow-wrap: anywhere; }
.d-bakim-liste { display: flex; flex-direction: column; gap: 8px; }
.d-bakim-satir { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid var(--kenar); border-radius: 12px; background: var(--kutu); cursor: pointer; }
.d-bakim-satir input { width: 20px; height: 20px; }
.d-bakim-satir span { display: flex; flex-direction: column; }
.d-bakim-satir strong { color: var(--metin); font-size: .92rem; }
.d-bakim-satir small { color: var(--soluk); font-size: .78rem; }
.d-bakim-satir b { font-size: 1.15rem; color: var(--metin); font-variant-numeric: tabular-nums; min-width: 32px; text-align: right; }
.d-bakim-satir.bos { opacity: .55; cursor: default; }
.d-bakim-tablo td { padding: 7px 12px; }
.d-sag { text-align: right; font-variant-numeric: tabular-nums; }
.d-sifirla-izgara { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.d-sifirla-kart { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px; border: 1px solid var(--kenar); border-radius: 14px; background: var(--kutu); text-align: left; font-family: inherit; cursor: pointer; color: var(--metin-2); }
.d-sifirla-kart:hover { border-color: var(--birincil); }
.d-sifirla-kart > i { font-size: 1.5rem; color: var(--birincil); }
.d-sifirla-kart strong { color: var(--metin); }
.d-sifirla-kart small { font-size: .78rem; color: var(--soluk); line-height: 1.45; }
.d-sifirla-tehlike > i { color: #dc2626; }
.d-sifirla-tehlike:hover { border-color: #dc2626; }
@media (max-width: 768px) {
    .d-sifirla-izgara { grid-template-columns: 1fr; }
    .d-ayar-dugmeler { grid-template-columns: 1fr; }
    .d-telif { margin: 4px auto 12px; }
}

/* ================================================================
 * Lisans ve kurulum
 * ================================================================ */
.d-lisans-bant { display: flex; align-items: center; gap: 12px; width: 100%; max-width: 1200px; box-sizing: border-box; padding: 12px 16px; margin: 0 0 14px; border-radius: 14px; background: #fffbeb; border: 1px solid #fde68a; color: #92400e; font-size: .9rem; line-height: 1.5; }
.d-lisans-bant > i { font-size: 1.5rem; flex-shrink: 0; }
.d-lisans-bant > span { flex: 1; }
.d-lisans-bant.kritik { background: #fef2f2; border-color: #fecaca; color: #991b1b; }
.d-lisans-bant small { font-weight: 600; white-space: nowrap; }
.tema-koyu .d-lisans-bant { background: #2a1606; border-color: #7c2d12; color: #fdba74; }
.tema-koyu .d-lisans-bant.kritik { background: #2a0a0a; border-color: #7f1d1d; color: #fca5a5; }
.d-lisans-dugme { margin-top: 10px; }
.d-lisans-dugme img { vertical-align: -4px; }
.d-lisans-kart { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 16px; background: linear-gradient(135deg, #eff6ff, #f8fbff); border: 1px solid #dbeafe; margin-bottom: 14px; }
.tema-koyu .d-lisans-kart { background: var(--kutu-3); border-color: var(--kenar); }
.d-lisans-logo { width: 56px; height: 56px; flex-shrink: 0; }
.d-lisans-kart div { display: flex; flex-direction: column; gap: 2px; }
.d-lisans-marka { font-size: 1.15rem; color: var(--metin); font-weight: 800; }
.d-lisans-kart small { color: var(--soluk); font-size: .8rem; }
.d-lisans-durum { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 12px; }
.d-lisans-durum > i { font-size: 2rem; flex-shrink: 0; }
.d-lisans-durum span { display: flex; flex-direction: column; gap: 2px; }
.d-lisans-durum strong { font-size: 1.05rem; color: var(--metin); }
.d-lisans-durum small { color: var(--soluk); font-size: .82rem; line-height: 1.5; }
.d-mono { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; letter-spacing: .5px; }
.d-seri-girdi { text-transform: uppercase; font-size: 1.05rem; text-align: center; letter-spacing: 1.5px; }
@media (max-width: 768px) {
    .d-lisans-bant { flex-wrap: wrap; }
}
