/* JURISAY/assets/css/global.css (COMPLETE AND FINAL - Includes Color Palettes) */

/* Değişkenler ile Modern Renk Paleti (Varsayılan: Dark Theme - Mavi) */
:root {
    --primary-color: #4A90E2;
    --primary-hover: #5AA1F2;
    --background-color: #0b1220;
    --surface-color: #111827;
    --border-color: #1f2937;
    --text-primary: #e5e7eb;
    --text-secondary: #9ca3af;
    --success-color: #10B981;
    --error-color: #EF4444;
    --font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    --border-radius: 8px;
    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}

/* --- RENK PALETİ: YEŞİL --- */
body.theme-green {
    --primary-color: #10B981; /* Yeşil tonu */
    --primary-hover: #34D399; /* Daha açık yeşil */
}
/* Aydınlık tema için Yeşil */
body.light-theme.theme-green {
    --primary-color: #059669; /* Koyu yeşil */
    --primary-hover: #047857;
}

/* --- RENK PALETİ: MOR --- */
body.theme-purple {
    --primary-color: #8B5CF6; /* Mor tonu */
    --primary-hover: #A78BFA; /* Daha açık mor */
}
/* Aydınlık tema için Mor */
body.light-theme.theme-purple {
    --primary-color: #7C3AED; /* Koyu mor */
    --primary-hover: #6D28D9;
}


/* --- AYDINLIK TEMA ÜZERİNE YAZMA --- */
body.light-theme {
    --background-color: #f9fafb; --surface-color: #ffffff; --border-color: #e5e7eb;
    --text-primary: #111827; --text-secondary: #6b7280;
    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    /* Özel elemanlar */
    .fc .fc-button { background-color: #fff; color: var(--text-primary); border-color: var(--border-color); }
    .fc .fc-daygrid-day-number { color: var(--text-secondary); }
    #calendar-container { --fc-today-bg-color: rgba(74, 144, 226, 0.05); } /* Mavi kalabilir veya primary-color'dan türetilebilir */
    .preview-content { border: 1px solid var(--border-color); color: #333; background-color: #fff; }
    .admin-table th { background-color: #f3f4f6; color: var(--text-secondary); }
    .admin-table tbody tr:hover { background-color: #f9fafb; }
     .form-control[readonly], .form-control[disabled] { background-color: #f3f4f6; }
}

/* Genel Sıfırlama ve Temel Ayarlar (Değişiklik yok) */
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
    font-family: var(--font-family); background-color: var(--background-color); color: var(--text-primary);
    line-height: 1.6; transition: background-color 0.3s, color 0.3s;
    display: flex; flex-direction: column; min-height: 100vh;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
main { flex-grow: 1; }
.container { max-width: 1100px; margin: 2rem auto; padding: 0 1.5rem; width: 100%; }
.container-fluid { max-width: 100%; padding: 0 1.5rem; margin: 2rem auto; width: 100%; }

/* Kart */
.card { background-color: var(--surface-color); border: 1px solid var(--border-color); border-radius: var(--border-radius); padding: 1.5rem 2rem; box-shadow: var(--shadow); transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out; }
.card:hover { /* ... (Hover stili aynı) ... */ transform: translateY(-3px); box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1); }
body.light-theme .card:hover { box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -4px rgba(0, 0, 0, 0.05); }

/* Form */
.form-group { margin-bottom: 1.25rem; }
.form-group label { display: block; margin-bottom: 0.5rem; font-weight: 500; color: var(--text-secondary); }
.form-control { width: 100%; padding: 0.75rem 1rem; background-color: var(--background-color); border: 1px solid var(--border-color); border-radius: var(--border-radius); color: var(--text-primary); font-size: 1rem; transition: border-color 0.2s, box-shadow 0.2s; }
.form-control:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-color) 20%, transparent); /* Mix ile transparan focus */ }
.form-control[readonly], .form-control[disabled] { /* Readonly stili eklendi */
    background-color: color-mix(in srgb, var(--surface-color) 80%, var(--background-color) 20%);
    opacity: 0.7; cursor: not-allowed; border-color: var(--border-color);
}
body.light-theme .form-control[readonly], body.light-theme .form-control[disabled] { background-color: #f3f4f6; }


/* Butonlar */
.button { display: inline-block; padding: 0.75rem 1.5rem; border: none; border-radius: var(--border-radius); background-color: var(--primary-color); color: #fff; font-weight: 600; font-size: 1rem; text-decoration: none; cursor: pointer; text-align: center; transition: background-color 0.2s ease-in-out; }
.button:hover { background-color: var(--primary-hover); }
.button:disabled { opacity: 0.6; cursor: not-allowed; }
.button-outline { display: inline-block; padding: 0.75rem 1.5rem; border: 1px solid var(--border-color); border-radius: var(--border-radius); background-color: transparent; color: var(--text-primary); font-weight: 600; font-size: 1rem; text-decoration: none; cursor: pointer; text-align: center; transition: background-color 0.2s, color 0.2s, border-color 0.2s; }
.button-outline:hover { background-color: var(--surface-color); border-color: var(--primary-color); color: var(--primary-color); }
body.light-theme .button-outline:hover { background-color: #f3f4f6; }
.button.danger { background-color: var(--error-color); } /* Danger butonu */
.button.danger:hover { background-color: color-mix(in srgb, var(--error-color) 80%, black); }

/* Linkler */
a { color: var(--primary-color); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Başlıklar */
h1, h2, h3, h4 { color: var(--text-primary); line-height: 1.3; margin-bottom: 1rem; }
h1 { font-size: 2.25rem; } h2 { font-size: 1.75rem; } h3 { font-size: 1.25rem; }

/* Admin Paneli Düzeni */
.admin-layout-wrapper { display: flex; flex-grow: 1; } /* Footer'ı aşağı itmek için */
.main-content { flex-grow: 1; }

/* Admin Tablosu */
.admin-table { width: 100%; border-collapse: collapse; margin-top: 1.5rem; }
.admin-table th, .admin-table td { padding: 12px 15px; text-align: left; border-bottom: 1px solid var(--border-color); vertical-align: middle;}
.admin-table th { background-color: var(--surface-color); font-weight: 600; color: var(--text-secondary); border-bottom-width: 2px; }
.admin-table tbody tr:hover { background-color: color-mix(in srgb, var(--surface-color) 50%, var(--background-color) 50%); }

/* Utility */
.text-center { text-align: center; }
.alert { padding: 1rem 1.5rem; border-radius: var(--border-radius); margin-bottom: 1.5rem; font-size: 0.95rem; border: 1px solid transparent; }
.alert.error { background-color: rgba(239, 68, 68, 0.1); color: var(--error-color); border-color: rgba(239, 68, 68, 0.2); }
.alert.success { background-color: rgba(16, 185, 129, 0.1); color: var(--success-color); border-color: rgba(16, 185, 129, 0.2); }
.required { color: var(--error-color); margin-left: 2px; } /* Zorunlu alan işareti */

/* Pagination */
.pagination { display: flex; justify-content: center; gap: 0.5rem; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--border-color);}
.pagination a, .pagination span { padding: 8px 14px; border-radius: 5px; color: var(--text-secondary); background-color: var(--surface-color); border: 1px solid var(--border-color); text-decoration: none; font-size: 0.9rem;}
.pagination a:hover { background-color: var(--primary-color); color: white; border-color: var(--primary-color);}
.pagination span { cursor: default; opacity: 0.6; } /* Tıklanamaz */
.pagination span.current { background-color: var(--primary-color); color: white; border-color: var(--primary-color); opacity: 1; font-weight: bold;}