/*
  Django admin'in kendi CSS değişkenlerini (custom properties) ezerek
  yeniden renklendirir — bkz. Django'nun admin/css/base.css ve dark_mode.css.
  Bu, Django'nun resmi olarak desteklediği tema özelleştirme yöntemidir;
  admin'in JS davranışı (arama, filtreler, açık/koyu tema geçişi vb.)
  hiç dokunulmadan aynı şekilde çalışmaya devam eder.
*/

:root, html[data-theme="light"] {
    --primary: #2a78d6;
    --secondary: #184f95;
    --accent: #eda100;
    --primary-fg: #fff;

    --body-fg: #14161a;
    --body-bg: #f6f7f9;
    --body-quiet-color: #6b7280;
    --body-medium-color: #40454d;
    --body-loud-color: #0b0b0b;

    --header-color: #fff;
    --header-branding-color: #fff;
    --header-bg: #14213d;
    --header-link-color: #fff;

    --breadcrumbs-fg: #c7d3e6;
    --breadcrumbs-link-fg: #fff;
    --breadcrumbs-bg: #1c2b4d;

    --link-fg: #2a78d6;
    --link-hover-color: #184f95;
    --link-selected-fg: #184f95;

    --hairline-color: #e7e9ee;
    --border-color: #dfe2e8;

    --error-fg: #d03b3b;

    --darkened-bg: #eef1f5;
    --selected-bg: #eaf1fb;
    --selected-row: #fff7e0;

    --button-fg: #fff;
    --button-bg: var(--primary);
    --button-hover-bg: var(--secondary);
    --default-button-bg: var(--secondary);
    --default-button-hover-bg: var(--primary);
    --close-button-bg: #6b7280;
    --close-button-hover-bg: #454b54;
    --delete-button-bg: #d03b3b;
    --delete-button-hover-bg: #a82f2f;

    --object-tools-fg: #fff;
    --object-tools-bg: #40454d;
    --object-tools-hover-bg: #23262b;

    --radius: 10px;
    --shadow-sm: 0 1px 2px rgba(11, 11, 11, 0.06);
    --shadow-md: 0 4px 14px rgba(11, 11, 11, 0.08);
}

@media (prefers-color-scheme: dark) {
    :root {
        --primary: #3987e5;
        --secondary: #1c5cab;
        --accent: #c98500;
        --primary-fg: #fff;

        --body-fg: #e5e6e8;
        --body-bg: #101114;
        --body-quiet-color: #a3a7ae;
        --body-medium-color: #cfd2d7;
        --body-loud-color: #ffffff;

        --header-color: #fff;
        --header-bg: #0b1220;
        --header-link-color: #fff;

        --breadcrumbs-fg: #a9b6cc;
        --breadcrumbs-link-fg: #fff;
        --breadcrumbs-bg: #0e1626;

        --link-fg: #6da7ec;
        --link-hover-color: #9ec5f4;
        --link-selected-fg: #6da7ec;

        --hairline-color: #23262b;
        --border-color: #2b2f36;

        --darkened-bg: #17181c;
        --selected-bg: #16233a;
        --selected-row: #241d0a;

        --close-button-bg: #454b54;
        --close-button-hover-bg: #6b7280;

        color-scheme: dark;
    }
}
html[data-theme="dark"] {
    --primary: #3987e5;
    --secondary: #1c5cab;
    --accent: #c98500;
    --primary-fg: #fff;
    --body-fg: #e5e6e8;
    --body-bg: #101114;
    --body-quiet-color: #a3a7ae;
    --body-medium-color: #cfd2d7;
    --body-loud-color: #ffffff;
    --header-color: #fff;
    --header-bg: #0b1220;
    --header-link-color: #fff;
    --breadcrumbs-fg: #a9b6cc;
    --breadcrumbs-link-fg: #fff;
    --breadcrumbs-bg: #0e1626;
    --link-fg: #6da7ec;
    --link-hover-color: #9ec5f4;
    --link-selected-fg: #6da7ec;
    --hairline-color: #23262b;
    --border-color: #2b2f36;
    --darkened-bg: #17181c;
    --selected-bg: #16233a;
    --selected-row: #241d0a;
    --close-button-bg: #454b54;
    --close-button-hover-bg: #6b7280;
    color-scheme: dark;
}

/* ---------------------------------------------------------------------- */
/* Genel yüzey / tipografi */
/* ---------------------------------------------------------------------- */
body {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

#header {
    box-shadow: var(--shadow-md);
    padding: 0.9rem 1.75rem;
}
#branding h1, #branding h1 a:link, #branding h1 a:visited {
    font-weight: 700;
    letter-spacing: -0.01em;
}
#user-tools {
    font-size: 0.85rem;
}
#user-tools a {
    border-bottom: none !important;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    transition: background-color 0.15s ease;
}
#user-tools a:hover {
    background: rgba(255, 255, 255, 0.12);
}

div.breadcrumbs {
    font-size: 0.8rem;
    padding: 0.6rem 1.75rem;
}

/* ---------------------------------------------------------------------- */
/* Butonlar */
/* ---------------------------------------------------------------------- */
.button, input[type="submit"], input[type="button"], .submit-row input, a.button {
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-weight: 600;
    border: none;
    box-shadow: var(--shadow-sm);
    transition: background-color 0.15s ease, transform 0.05s ease;
    text-transform: none;
    letter-spacing: 0;
}
.button:active, input[type="submit"]:active {
    transform: translateY(1px);
}
.button.default, input[type="submit"].default, .submit-row input.default {
    box-shadow: var(--shadow-md);
}
a.deletelink {
    border-radius: 8px !important;
}

/* ---------------------------------------------------------------------- */
/* Modüller / kartlar (ana sayfa uygulama listesi, formlar) */
/* ---------------------------------------------------------------------- */
.module {
    /* overflow:hidden buraya KONULMAMALI: fieldset.module aynı zamanda
       inline (FaturaSatiri vb.) tablo kapsayıcısıdır ve Django'nun kendi
       "overflow-x: auto" kuralına sahiptir (bkz. forms.css) — burada
       overflow:hidden ezerse geniş inline tablolar kırpılıp sütun
       kaybolmuş gibi görünür. Köşe yuvarlaklığı yerine başlık çubuğuna
       (.module h2) ayrıca uygulanır. */
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}
.module h2, .module caption, .inline-group h2 {
    border-radius: var(--radius) var(--radius) 0 0;
    font-weight: 600;
    letter-spacing: 0.01em;
}
#content-main .module {
    margin-bottom: 1.5rem;
}

/* Ana sayfa uygulama/model kartları */
.app-list, #content-related .module {
    border-radius: var(--radius);
}
.app-list table, .module table {
    border-radius: 0;
}
table.module {
    box-shadow: none;
}

/* ---------------------------------------------------------------------- */
/* Tablolar (değişiklik listesi) */
/* ---------------------------------------------------------------------- */
#changelist {
    /* DİKKAT: overflow:hidden buraya KONULMAMALI — #changelist-form .results
       kendi overflow-x:auto ile geniş tabloları yatay kaydırır; üstteki
       kapsayıcıda overflow:hidden olursa sığmayan sütunlar (bu projede
       "Tarih", "Belge" gibi) tamamen görünmez olur, veri kaybı gibi görünür. */
    box-shadow: var(--shadow-sm);
}
#changelist-form .results {
    border-radius: var(--radius);
    overflow-x: auto;
    overflow-y: hidden;
}
#changelist-filter {
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}
#changelist-filter h2 {
    border-radius: 0;
}
#result_list {
    border-radius: 0;
}
#result_list tbody tr:hover {
    background-color: var(--darkened-bg);
}
.paginator {
    border-radius: 0 0 var(--radius) var(--radius);
}

/* ---------------------------------------------------------------------- */
/* Formlar */
/* ---------------------------------------------------------------------- */
.form-row input[type="text"], .form-row input[type="email"], .form-row input[type="number"],
.form-row input[type="password"], .form-row input[type="url"], .form-row textarea,
select, .vTextField, .vLargeTextField {
    border-radius: 7px !important;
    border: 1px solid var(--border-color) !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.form-row input:focus, .form-row textarea:focus, select:focus {
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 20%, transparent);
    outline: none;
}
fieldset.module {
    border-radius: var(--radius);
}

/* ---------------------------------------------------------------------- */
/* Giriş sayfası */
/* ---------------------------------------------------------------------- */
.login #container {
    border-radius: var(--radius);
    box-shadow: var(--shadow-md);
    overflow: hidden;
    border: 1px solid var(--border-color);
}
.login .form-row input {
    border-radius: 7px !important;
}
.login .submit-row {
    border: none;
}

/* ---------------------------------------------------------------------- */
/* Sidebar (uygulama gezinme) */
/* ---------------------------------------------------------------------- */
#nav-sidebar {
    border-right: 1px solid var(--border-color);
}
.current-app .section:link, .current-app .section:visited {
    font-weight: 700;
}
#nav-sidebar .current-model {
    border-radius: 6px;
}

/* ---------------------------------------------------------------------- */
/* Rozetler / durum göstergeleri (mevcut admin list_display çıktılarıyla uyumlu) */
/* ---------------------------------------------------------------------- */
.messagelist li {
    border-radius: 8px;
}
