/*
 * Merkezi sistem teması
 * Mevcut sayfa tasarımlarını değiştirmeden ortak renk/surface tokenlarını bağlar.
 */

:root,
html[data-layout-theme="corporate"] {
    --primary: #2e4156;
    --primary-dark: #1a2d42;
    --primary-light: #60748b;
    --accent: #b88746;
    --accent-dark: #8a6332;
    --sidebar-bg: linear-gradient(180deg, #172638 0%, #1a2d42 48%, #0f1c2d 100%);
    --bg-body: #f3f6f8;
    --surface: rgba(255, 255, 255, .90);
    --surface-solid: #ffffff;
    --border-color: #d8e0e6;
    --muted: #64748b;
}

html[data-layout-theme="navy"] {
    --primary: #1d4ed8; --primary-dark: #1e3a8a; --primary-light: #60a5fa;
    --accent: #38bdf8; --accent-dark: #0284c7;
    --sidebar-bg: linear-gradient(180deg, #07111f 0%, #0f172a 54%, #111827 100%);
    --bg-body: #f3f7fc; --border-color: #dbe4ef;
}

html[data-layout-theme="emerald"] {
    --primary: #0f766e; --primary-dark: #115e59; --primary-light: #5eead4;
    --accent: #d97706; --accent-dark: #92400e;
    --sidebar-bg: linear-gradient(180deg, #0c2f35 0%, #123c44 52%, #09242a 100%);
    --bg-body: #f3f8f6; --border-color: #d7e6e3;
}

html[data-layout-theme="slate"] {
    --primary: #334155; --primary-dark: #0f172a; --primary-light: #94a3b8;
    --accent: #9333ea; --accent-dark: #7e22ce;
    --sidebar-bg: linear-gradient(180deg, #111827 0%, #1f2937 52%, #0b1120 100%);
    --bg-body: #f6f7fb; --border-color: #d8dee8;
}

html[data-layout-theme="burgundy"] {
    --primary: #7f1d1d; --primary-dark: #450a0a; --primary-light: #fca5a5;
    --accent: #b68a24; --accent-dark: #8a6115;
    --sidebar-bg: linear-gradient(180deg, #2a1118 0%, #43121b 52%, #18070c 100%);
    --bg-body: #faf7f7; --border-color: #ead8d8;
}

html[data-layout-theme="ocean"] {
    --primary: #0369a1; --primary-dark: #0c4a6e; --primary-light: #7dd3fc;
    --accent: #14b8a6; --accent-dark: #0f766e;
    --sidebar-bg: linear-gradient(180deg, #082f49 0%, #0c4a6e 52%, #06283a 100%);
    --bg-body: #f2f9fc; --border-color: #cfe8f3;
}

html[data-layout-theme="graphite"] {
    --primary: #374151; --primary-dark: #111827; --primary-light: #9ca3af;
    --accent: #f97316; --accent-dark: #c2410c;
    --sidebar-bg: linear-gradient(180deg, #111827 0%, #1f2937 50%, #050816 100%);
    --bg-body: #f5f5f4; --border-color: #dedbd2;
}

html[data-layout-theme="amber"] {
    --primary: #92400e; --primary-dark: #451a03; --primary-light: #fbbf24;
    --accent: #2563eb; --accent-dark: #1e40af;
    --sidebar-bg: linear-gradient(180deg, #2f1b06 0%, #78350f 52%, #1c1003 100%);
    --bg-body: #fffbeb; --border-color: #f1ddae;
}

html[data-layout-theme="violet"] {
    --primary: #6d28d9; --primary-dark: #3b0764; --primary-light: #c4b5fd;
    --accent: #06b6d4; --accent-dark: #0e7490;
    --sidebar-bg: linear-gradient(180deg, #1e1238 0%, #3b0764 52%, #13051f 100%);
    --bg-body: #faf7ff; --border-color: #e4d8f7;
}

html[data-layout-theme="indigo"] {
    --primary: #4f46e5; --primary-dark: #312e81; --primary-light: #a5b4fc;
    --accent: #f59e0b; --accent-dark: #b45309;
    --sidebar-bg: linear-gradient(180deg, #11133f 0%, #1e1b4b 52%, #0b102f 100%);
    --bg-body: #f7f7ff; --border-color: #dddafe;
}

html[data-layout-theme="teal"] {
    --primary: #0d9488; --primary-dark: #134e4a; --primary-light: #5eead4;
    --accent: #f97316; --accent-dark: #c2410c;
    --sidebar-bg: linear-gradient(180deg, #092f2d 0%, #134e4a 52%, #061f1e 100%);
    --bg-body: #f0fdfa; --border-color: #c8ece6;
}

html[data-layout-theme="rose"] {
    --primary: #be123c; --primary-dark: #881337; --primary-light: #fda4af;
    --accent: #f59e0b; --accent-dark: #b45309;
    --sidebar-bg: linear-gradient(180deg, #3f0918 0%, #881337 52%, #25040d 100%);
    --bg-body: #fff7f8; --border-color: #f4c7d1;
}

html[data-layout-theme] {
    --theme-page: var(--bg-body);
    --theme-card: var(--surface, rgba(255, 255, 255, .94));
    --theme-card-solid: var(--surface-solid, #ffffff);
    --theme-card-soft: color-mix(in srgb, var(--primary) 5%, var(--surface-solid, #ffffff));
    --theme-card-warm: color-mix(in srgb, var(--accent) 7%, var(--surface-solid, #ffffff));
    --theme-text: #0f172a;
    --theme-text-soft: #475569;
    --theme-muted: var(--muted, #64748b);
    --theme-line: color-mix(in srgb, var(--primary) 14%, var(--border-color));
    --theme-line-strong: color-mix(in srgb, var(--primary) 24%, var(--border-color));
    --theme-focus: 0 0 0 4px color-mix(in srgb, var(--primary) 17%, transparent);
    --theme-card-shadow: 0 16px 38px rgba(15, 23, 42, .08);
    --app-page: var(--theme-page);
    --app-surface: var(--theme-card-solid);
    --app-surface-soft: var(--theme-card-soft);
    --app-text: var(--theme-text);
    --app-text-soft: var(--theme-text-soft);
    --app-muted: var(--theme-muted);
    /* Legacy modules still consume these names; keep them on the same theme contract. */
    --text-primary: var(--app-text);
    --text-secondary: var(--app-muted);
    --text-main: var(--app-text);
    --text-muted: var(--app-muted);
    --app-border: var(--theme-line);
    --app-hover: color-mix(in srgb, var(--primary) 8%, var(--theme-card-solid));
    --app-input: var(--theme-card-solid);
    --app-shadow: var(--theme-card-shadow);
    /* Acik paletlerde parlak ana renkleri metin icin yeterince koyulastirir. */
    --app-link: color-mix(in srgb, var(--primary) 82%, var(--theme-text));
    --auth-accent: var(--primary);
    --auth-accent-strong: var(--primary-dark);
    --auth-accent-soft: color-mix(in srgb, var(--primary) 10%, #ffffff);
    --cp-accent: var(--primary);
    --cp-accent-strong: var(--primary-dark);
    --cp-accent-soft: color-mix(in srgb, var(--primary) 10%, #ffffff);
    accent-color: var(--primary);
}

html[data-layout-theme="night"] {
    --primary: #2563eb;
    --primary-dark: #020617;
    --primary-light: #93c5fd;
    --accent: #22d3ee;
    --accent-dark: #0891b2;
    --sidebar-bg: linear-gradient(180deg, #020617 0%, #0f172a 56%, #00040d 100%);
    --bg-body: #f5f7fb;
    --border-color: #cbd5e1;
}

html[data-color-scheme="dark"] {
    color-scheme: dark;
    --bg-body: #070b14;
    --surface: rgba(15, 23, 42, .94);
    --surface-solid: #0f172a;
    --border-color: #293548;
    --muted: #94a3b8;
    --theme-page: #070b14;
    --theme-card: rgba(15, 23, 42, .94);
    --theme-card-solid: #0f172a;
    --theme-card-soft: #162033;
    --theme-card-warm: #17243a;
    --theme-text: #e5edf8;
    --theme-text-soft: #c3cfdf;
    --theme-muted: #94a3b8;
    --theme-line: rgba(148, 163, 184, .24);
    --theme-line-strong: rgba(148, 163, 184, .38);
    --theme-focus: 0 0 0 4px rgba(96, 165, 250, .24);
    --theme-card-shadow: 0 18px 48px rgba(0, 0, 0, .28);
    --theme-card-shadow-hover: 0 24px 62px rgba(0, 0, 0, .38);
    --theme-header-soft: linear-gradient(135deg, #17243a, #111b2c);
    --app-hover: #1d2a40;
    --app-input: #0b1220;
    --app-link: color-mix(in srgb, var(--primary) 30%, #ffffff);
    --auth-bg: #070b14;
    --auth-bg-soft: #111b2c;
    --auth-surface: #0f172a;
    --auth-surface-2: #172033;
    --auth-line: #2a374b;
    --auth-line-strong: #3a4a62;
    --auth-accent: color-mix(in srgb, var(--primary) 30%, #ffffff);
    --auth-accent-strong: color-mix(in srgb, var(--primary) 18%, #ffffff);
    --auth-accent-soft: color-mix(in srgb, var(--primary) 18%, #111b2c);
    --auth-text: #edf4ff;
    --auth-muted: #b4c0d0;
    --auth-faint: #8fa0b6;
    --auth-shadow: 0 30px 75px rgba(0, 0, 0, .34);
    --auth-shadow-soft: 0 18px 40px rgba(0, 0, 0, .24);
    --cp-bg: #070b14;
    --cp-surface: #0f172a;
    --cp-soft: #162033;
    --cp-ink: #edf4ff;
    --cp-muted: #b4c0d0;
    --cp-faint: #8fa0b6;
    --cp-line: #2a374b;
    --cp-line-strong: #3a4a62;
    --cp-accent: color-mix(in srgb, var(--primary) 30%, #ffffff);
    --cp-accent-strong: color-mix(in srgb, var(--primary) 18%, #ffffff);
    --cp-accent-soft: color-mix(in srgb, var(--primary) 18%, #111b2c);
    --cp-shadow: 0 24px 70px rgba(0, 0, 0, .34);
    --pf-bg: #070b14;
    --pf-card: #0f172a;
    --pf-ink: #edf4ff;
    --pf-muted: #a8b6c8;
    --pf-line: #2a374b;
    --pf-primary: #2dd4bf;
    --pf-primary-dark: #0f766e;
    --ops-theme-bg: #070b14;
    --ops-theme-card: #0f172a;
    --ops-theme-card-soft: #162033;
    --ops-theme-border: rgba(148, 163, 184, .24);
    --ops-theme-text: #edf4ff;
    --ops-theme-muted: #a8b6c8;
    --finance-theme-page: #070b14;
    --finance-theme-surface: #0f172a;
    --finance-theme-border: #2a374b;
    --finance-theme-muted: #a8b6c8;
    --finance-theme-ink: #edf4ff;
}

/* Notification surfaces use their own component tokens. Bridge their accents and
   keep the shared confirm/prompt dialog internally consistent in dark mode. */
html[data-color-scheme="dark"] .hn-modal {
    --hn-primary: var(--app-link);
}

html[data-color-scheme="dark"] .hn-button--primary {
    border-color: var(--primary);
    background: var(--primary);
}

html[data-color-scheme="dark"] .notification-center {
    --nc-primary: var(--app-link);
}

html[data-color-scheme="dark"] .aslan-confirm-box {
    border-color: var(--app-border);
    background:
        radial-gradient(circle at 10% 0, color-mix(in srgb, var(--app-link) 16%, transparent), transparent 42%),
        linear-gradient(135deg, var(--app-surface), var(--app-surface-soft));
    color: var(--app-text);
}

html[data-color-scheme="dark"] .aslan-confirm-title {
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] .aslan-confirm-text,
html[data-color-scheme="dark"] .aslan-prompt-input-wrap small {
    color: var(--app-muted) !important;
}

html[data-color-scheme="dark"] .aslan-confirm-actions {
    border-color: var(--app-border);
    background: color-mix(in srgb, var(--app-surface-soft) 82%, var(--app-surface));
}

html[data-color-scheme="dark"] .aslan-confirm-btn.cancel {
    color: var(--app-text);
    background: var(--app-hover);
}

html[data-color-scheme="dark"] .aslan-prompt-input {
    border-color: var(--app-border) !important;
    background: var(--app-input) !important;
    color: var(--app-text) !important;
}

body.theme-global-skin,
body.theme-standalone,
body.pf-body {
    background-color: var(--app-page);
    color: var(--app-text);
}

body.theme-global-skin :where(a, button, input, select, textarea),
body.theme-standalone :where(a, button, input, select, textarea),
body.pf-body :where(a, button, input, select, textarea) {
    font-family: inherit;
}

body.theme-global-skin :where(input, select, textarea, button):focus-visible,
body.theme-standalone :where(input, select, textarea, button, a):focus-visible,
body.pf-body :where(input, select, textarea, button, a):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--primary) 42%, transparent);
    outline-offset: 2px;
}

/*
 * Metin kontrolleri kendi kenarlik/golge odagini kullanir. Genel outline bu
 * alanlarda ikinci bir dikdortgen olusturuyordu; buton, baglanti ve secim
 * kontrollerindeki klavye odak halkasi ise yukaridaki kuralla korunur.
 */
body.theme-global-skin :where(
    input:not([type]), input[type="text"], input[type="email"], input[type="password"],
    input[type="search"], input[type="tel"], input[type="url"], input[type="number"],
    input[type="date"], input[type="datetime-local"], input[type="month"],
    input[type="week"], input[type="time"], select, textarea
):focus-visible,
body.theme-standalone :where(
    input:not([type]), input[type="text"], input[type="email"], input[type="password"],
    input[type="search"], input[type="tel"], input[type="url"], input[type="number"],
    input[type="date"], input[type="datetime-local"], input[type="month"],
    input[type="week"], input[type="time"], select, textarea
):focus-visible,
body.pf-body :where(
    input:not([type]), input[type="text"], input[type="email"], input[type="password"],
    input[type="search"], input[type="tel"], input[type="url"], input[type="number"],
    input[type="date"], input[type="datetime-local"], input[type="month"],
    input[type="week"], input[type="time"], select, textarea
):focus-visible {
    outline: 0;
    border-color: color-mix(in srgb, var(--primary) 46%, var(--app-border));
    box-shadow: var(--theme-focus);
}

/* Bilesik alanlarda odak halkasi ic kontrol yerine dis kapsayicida kalir. */
body :where(
    .auth-control,
    .security-control,
    .company-picker-search,
    .search-input-group,
    .nav-hub-search,
    .finance-finder-search,
    .site-ai__composer
) :where(input, select, textarea):focus {
    outline: 0 !important;
    box-shadow: none !important;
}

body.theme-global-skin ::selection,
body.theme-standalone ::selection,
body.pf-body ::selection {
    background: color-mix(in srgb, var(--primary) 30%, transparent);
}

.theme-color-mode {
    display: grid;
    gap: 8px;
    margin: 12px 0;
    padding: 11px;
    border: 1px solid var(--app-border);
    border-radius: 14px;
    background: var(--app-surface-soft);
}

.theme-color-mode > span {
    color: var(--app-muted);
    font-size: .70rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.theme-color-mode > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
}

.theme-color-mode button {
    min-height: 36px;
    border: 1px solid var(--app-border);
    border-radius: 10px;
    background: var(--app-surface);
    color: var(--app-text);
    font-size: .75rem;
    font-weight: 850;
    cursor: pointer;
}

.theme-color-mode button:hover,
.theme-color-mode button.active {
    border-color: var(--app-link);
    background: color-mix(in srgb, var(--primary) 12%, var(--app-surface));
    color: var(--app-link);
}

/* Bootstrap ve yaygın sunucu-render bileşenleri */
html[data-layout-theme] body.theme-global-skin :where(.card, .modal-content, .dropdown-menu, .list-group-item, .popover) {
    background-color: var(--app-surface);
    color: var(--app-text);
    border-color: var(--app-border);
}

html[data-layout-theme] body.theme-global-skin :where(.card-header, .card-footer, .modal-header, .modal-footer, .dropdown-divider) {
    background-color: var(--app-surface-soft);
    color: var(--app-text);
    border-color: var(--app-border);
}

html[data-layout-theme] body.theme-global-skin :where(.form-control, .custom-select, .input-group-text, .custom-file-label, .select2-selection) {
    background-color: var(--app-input);
    color: var(--app-text);
    border-color: var(--app-border);
}

html[data-layout-theme] body.theme-global-skin :where(.form-control, .custom-select, .input-group-text)::placeholder {
    color: var(--app-muted);
    opacity: .9;
}

html[data-layout-theme] body.theme-global-skin :where(.form-control, .custom-select):focus {
    background-color: var(--app-input);
    color: var(--app-text);
    border-color: var(--primary);
    box-shadow: var(--theme-focus);
}

html[data-layout-theme] body.theme-global-skin .table {
    color: var(--app-text);
    background-color: transparent;
}

html[data-layout-theme] body.theme-global-skin .table :where(th, td) {
    border-color: var(--app-border);
}

html[data-layout-theme] body.theme-global-skin .table thead :where(th, td) {
    background-color: var(--app-surface-soft);
    color: var(--app-text);
}

html[data-layout-theme] body.theme-global-skin .table-striped tbody tr:nth-of-type(odd) {
    background-color: color-mix(in srgb, var(--primary) 4%, transparent);
}

html[data-layout-theme] body.theme-global-skin .table-hover tbody tr:hover {
    color: var(--app-text);
    background-color: var(--app-hover);
}

html[data-layout-theme] body.theme-global-skin :where(.nav-tabs, .border, .border-top, .border-right, .border-bottom, .border-left, hr) {
    border-color: var(--app-border) !important;
}

html[data-layout-theme] body.theme-global-skin :where(.nav-tabs .nav-link, .pagination .page-link, .btn-light, .btn-outline-secondary) {
    background-color: var(--app-surface);
    color: var(--app-text);
    border-color: var(--app-border);
}

html[data-layout-theme] body.theme-global-skin :where(.nav-tabs .nav-link.active, .pagination .page-item.active .page-link) {
    background-color: var(--primary);
    color: #ffffff;
    border-color: var(--primary);
}

html[data-layout-theme] body.theme-global-skin :where(.btn-primary, .badge-primary, .bg-primary) {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}

:where(html[data-layout-theme] body.theme-global-skin) .text-primary {
    color: var(--app-link);
}

:where(html[data-layout-theme] body.theme-global-skin) a:where(:not(.btn):not(.nav-link):not(.dropdown-item)) {
    color: var(--app-link);
}

/* Body class'ı DOMContentLoaded'da gelmeden önce inovasyon kartlarını doğru renkte boyar. */
html[data-color-scheme="dark"] :where(.icc-panel, .icc-digest-card) {
    --card-bg: var(--app-surface);
    --soft-bg: var(--app-input);
    --text-color: var(--app-text);
    --muted-color: var(--app-text-soft);
    --border-color: var(--app-border);
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] .icc-digest-card p {
    color: var(--app-text-soft) !important;
}

html[data-layout-theme] body.theme-global-skin :where(.text-muted, .form-text, small.text-muted) {
    color: var(--app-muted) !important;
}

/* Gece modu: sert kodlu açık yüzeylere kontrollü uyumluluk katmanı. */
html[data-color-scheme="dark"] body.theme-global-skin {
    background:
        radial-gradient(circle at 94% 0%, rgba(59, 130, 246, .15), transparent 30%),
        radial-gradient(circle at 5% 100%, rgba(34, 211, 238, .09), transparent 26%),
        var(--app-page) !important;
    color: var(--app-text);
}

html[data-color-scheme="dark"] body.theme-global-skin :where(#content, .content-wrapper, .main-panel, main) {
    color: var(--app-text);
}

html[data-color-scheme="dark"] body.theme-global-skin :where(.bg-white, .bg-light, .jumbotron) {
    background-color: var(--app-surface) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(.text-dark, .close, h1, h2, h3, h4, h5, h6, label, legend) {
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(.dropdown-item, .list-group-item-action) {
    color: var(--app-text);
}

html[data-color-scheme="dark"] body.theme-global-skin :where(.dropdown-item:hover, .dropdown-item:focus, .list-group-item-action:hover) {
    background-color: var(--app-hover);
    color: var(--app-text);
}

html[data-color-scheme="dark"] body.theme-global-skin :where(code, pre, kbd) {
    color: #c6dcff;
    background-color: #080d18;
    border-color: var(--app-border);
}

html[data-color-scheme="dark"] body.theme-global-skin :where(.ck-editor__main > .ck-editor__editable, .note-editor, .note-editable) {
    background-color: var(--app-input) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

/*
 * Legacy layout'un !important kullanan açık yüzeylerini koyu modda güvenle ezer.
 * Bu katman yalnızca ortak yüzey bileşenlerini hedefler; başarı/uyarı renkleri korunur.
 */
html[data-color-scheme="dark"] body.theme-global-skin :where(
    .card, .panel, .summary-card, .metric-card, .stat-card, .modern-card,
    .form-card, .filter-card, .detail-card, .info-card, .hub-card,
    .profile-card, .payment-card, .call-card, .cari-card, .emutabakat-card,
    .etiket-card, .theme-surface
) {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
    box-shadow: var(--app-shadow) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .card-header, .card-footer, .panel-header, .section-head, .list-head,
    .grid-head, .table-toolbar, .filter-head, .modal-header, .modal-footer
) {
    background: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .form-control, .custom-select, .input-group-text, .custom-file-label,
    select, textarea, input[type="text"], input[type="email"],
    input[type="password"], input[type="number"], input[type="date"],
    input[type="datetime-local"], input[type="search"], input[type="tel"],
    input[type="url"]
) {
    background-color: var(--app-input) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .btn-outline-primary, .btn-soft, .btn-light, .btn-outline-secondary,
    .nav-pills .nav-link, .nav-tabs .nav-link, .tab-btn, .tab-chip, .filter-pill
) {
    background: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .modal-content, .custom-modal, .modal-shell, .drawer-panel
) {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .46) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin .modal-body {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .table-striped tbody tr:nth-of-type(odd), table tbody tr:nth-of-type(odd)
) {
    background-color: color-mix(in srgb, var(--primary) 7%, var(--app-surface)) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .table-hover tbody tr:hover, table tbody tr:hover
) {
    background-color: var(--app-hover) !important;
}

html[data-color-scheme="dark"] body.theme-global-skin :where(
    .table tbody td, table tbody td, .grid-table tbody td, .data-table tbody td
) {
    color: var(--app-text-soft) !important;
    border-color: var(--app-border) !important;
}

/* Finans/operasyon köprülerinde açık renge sabitlenen tokenları düzeltir. */
html[data-color-scheme="dark"] body.theme-dark :where(.ops-drawer, .ops-drawer-body, .pg-drawer, .pg-drawer-body, .advops-panel, .advops-metric, .pg-panel, .pg-score-card, .platform-ui-card) {
    background-color: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-dark :where(.ops-mini-row, .ops-draft-box, .ops-mail-target, .advops-row, .pg-row, .pg-cluster, .pg-playbook, .pg-detail-row, .pg-empty) {
    background-color: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

/* Giriş, kayıt ve şirket seçimi ekranları */
html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page {
    background:
        radial-gradient(circle at top left, rgba(34, 211, 238, .10), transparent 32%),
        radial-gradient(circle at top right, rgba(59, 130, 246, .14), transparent 28%),
        var(--auth-bg);
}

html[data-color-scheme="dark"] body.theme-standalone :where(.auth-showcase, .auth-story, .auth-form-card, .auth-metric-card, .auth-dialog, .auth-google, .auth-control, .auth-dialog__button) {
    background: var(--auth-surface);
    color: var(--auth-text);
    border-color: var(--auth-line);
}

html[data-color-scheme="dark"] body.theme-standalone :where(.auth-signature-panel--soft, .auth-form-meta--rich, .auth-legal-summary, .auth-control__mark, .auth-dialog__close) {
    background: var(--auth-surface-2);
    color: var(--auth-text);
    border-color: var(--auth-line);
}

html[data-color-scheme="dark"] body.theme-standalone :where(.auth-legal-text p, .auth-legal-text li, .auth-legal-summary span, .auth-legal-summary small) {
    color: var(--auth-muted);
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page :where(
    .auth-secure-pill, .auth-topbar__status, .auth-feature, .auth-rule:not(.is-ok),
    .auth-hint, .auth-match:not(.is-ok):not(.is-bad), .auth-provider-diagnostic code,
    .auth-reset-context, .auth-stage, .auth-stage-card, .auth-register-progress,
    .auth-register-section, .auth-account-type, .auth-preview-card, .auth-consent
) {
    background: var(--auth-surface-2) !important;
    color: var(--auth-text) !important;
    border-color: var(--auth-line) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page .auth-preview-card strong {
    color: var(--auth-text) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page :where(
    .auth-register-progress__top, .auth-account-type > div > span,
    .auth-preview-card span, .auth-consent label
) {
    color: var(--auth-muted) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page :where(.auth-submit, .auth-dialog__button.is-primary) {
    background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--primary) 55%, #2563eb),
        color-mix(in srgb, var(--primary-dark) 48%, #1d4ed8)
    ) !important;
    color: #ffffff !important;
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page .auth-legal-notice {
    background: color-mix(in srgb, #f59e0b 13%, var(--auth-surface)) !important;
    color: #fef3c7 !important;
    border-color: rgba(245, 158, 11, .38) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.auth-workspace-page .auth-legal-notice :where(strong, p) {
    color: #fef3c7 !important;
}

html[data-color-scheme="dark"] body.theme-standalone.company-picker-page {
    background:
        radial-gradient(circle at 8% 5%, rgba(34, 211, 238, .10), transparent 28%),
        radial-gradient(circle at 94% 94%, rgba(59, 130, 246, .12), transparent 28%),
        var(--cp-bg);
}

html[data-color-scheme="dark"] body.theme-standalone :where(.company-picker-hero, .workspace-browser, .workspace-inspector, .company-card, .company-picker-summary article, .workspace-inspector__metrics article, .company-picker-noscript) {
    background: var(--cp-surface);
    color: var(--cp-ink);
    border-color: var(--cp-line);
}

html[data-color-scheme="dark"] body.theme-standalone :where(.company-picker-toolbar input, .company-picker-toolbar select, .company-picker-filters button, .workspace-inspector__actions button[type="button"]) {
    background: var(--cp-soft);
    color: var(--cp-ink);
    border-color: var(--cp-line);
}

html[data-color-scheme="dark"] body.theme-standalone.company-picker-page :where(
    .company-picker-user__logout, .company-picker-search, .company-picker-search kbd,
    .company-card__avatar, .company-card__tags em, .workspace-inspector__note
) {
    background: var(--cp-soft) !important;
    color: var(--cp-ink) !important;
    border-color: var(--cp-line) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.company-picker-page :where(
    .workspace-inspector__empty strong, .company-picker-empty b
) {
    color: var(--cp-ink) !important;
}

html[data-color-scheme="dark"] body.theme-standalone.company-picker-page :where(
    .company-picker-filters button.is-active,
    .workspace-inspector__actions button[type="submit"],
    .company-picker-noscript button
) {
    background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--primary) 55%, #2563eb),
        color-mix(in srgb, var(--primary-dark) 48%, #1d4ed8)
    ) !important;
    color: #ffffff !important;
}

/* Kişisel finans layout'u */
html[data-color-scheme="dark"] body.pf-body {
    background:
        radial-gradient(circle at top right, rgba(45, 212, 191, .10), transparent 34%),
        var(--pf-bg);
}

html[data-color-scheme="dark"] body.pf-body :where(.pf-topbar, .pf-card, .pf-metric, .pf-budget-card, .pf-list-item, .pf-tabbar, .pf-hero, .pf-period-form, .pf-form input, .pf-form select, .pf-form textarea, .pf-table td, .pf-insight, .pf-command, .pf-plan-card, .pf-calendar-item, .pf-category-row, .pf-interest-summary > div, .pf-user, .pf-chip) {
    background: var(--pf-card);
    color: var(--pf-ink);
    border-color: var(--pf-line);
}

html[data-color-scheme="dark"] body.pf-body :where(.pf-muted, .pf-form label, .pf-card-head span, .pf-table th, .pf-table small, .pf-list-item small, .pf-metric small, .pf-metric span, .pf-user small, .pf-hero p) {
    color: var(--pf-muted);
}

/* Basit layout'suz kamu ekranları; semantik başarı/uyarı renklerine dokunulmaz. */
html[data-color-scheme="dark"] body.theme-standalone:not(.auth-workspace-page):not(.company-picker-page) {
    background-color: var(--app-page) !important;
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] body.theme-standalone:not(.auth-workspace-page):not(.company-picker-page) :where(.card, .article, .panel, input, textarea, select) {
    background-color: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-standalone :where(.muted, .note, .footer, .public-footer, .score-hint, .sub-text, .input-hint) {
    color: var(--app-muted) !important;
}

/* MFA ve doğrulama ekranlarının kendi açık renk tokenlarını koyu moda bağlar. */
html[data-color-scheme="dark"] body.mfa-setup-page,
html[data-color-scheme="dark"] body.mfa-verify-page {
    --ink: var(--app-text);
    --muted: var(--app-muted);
    --line: var(--app-border);
    --card: rgba(15, 23, 42, .92);
    --soft: var(--app-surface-soft);
    background: radial-gradient(760px 520px at 8% 0%, rgba(59, 130, 246, .16), transparent 60%),
                radial-gradient(820px 520px at 96% 8%, rgba(34, 211, 238, .10), transparent 60%),
                var(--app-page) !important;
}

html[data-color-scheme="dark"] body.mfa-setup-page :where(
    .setup-card, .step, .secret-panel, .secret-code, .verify-box, .mfa-back, .btn-soft
),
html[data-color-scheme="dark"] body.mfa-verify-page :where(
    .verify-shell, .verify-body, .hint-card, .btn-soft, .countdown
) {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.code-verify-page {
    --text-main: var(--app-text);
    --text-muted: var(--app-muted);
    --card-bg: rgba(15, 23, 42, .94);
    --border: var(--app-border);
    --bg-gradient-start: var(--app-page);
}

html[data-color-scheme="dark"] body.code-verify-page::before {
    background: rgba(7, 11, 20, .84) !important;
}

html[data-color-scheme="dark"] body.code-verify-page :where(.card-wrap, .icon-badge) {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.test-login-page {
    --ink: var(--app-text);
    --muted: var(--app-muted);
    --bg-l: linear-gradient(135deg, #070b14 0%, #111b2c 100%);
    --glass-bg: rgba(15, 23, 42, .84);
    --glass-border: rgba(148, 163, 184, .24);
    background: radial-gradient(circle at 18% 8%, rgba(79, 70, 229, .15), transparent 32%),
                radial-gradient(circle at 86% 92%, rgba(56, 189, 248, .10), transparent 30%),
                var(--app-page) !important;
}

/* Kamuya açık operasyon ekranları. */
html[data-color-scheme="dark"] body.maintenance-page {
    --bg-main: var(--app-page);
    --bg-soft: var(--app-surface-soft);
    --card: rgba(15, 23, 42, .86);
    --card-strong: var(--app-surface);
    --text: var(--app-text);
    --muted: var(--app-muted);
    --muted-strong: var(--app-text-soft);
    --line: var(--app-border);
    --shadow: var(--app-shadow);
    --shadow-soft: var(--app-shadow);
    background: radial-gradient(circle at 15% 18%, rgba(37, 99, 235, .18), transparent 28%),
                radial-gradient(circle at 84% 18%, rgba(56, 189, 248, .13), transparent 28%),
                var(--app-page) !important;
}

html[data-color-scheme="dark"] body.maintenance-page :where(
    .side-card, .visual, .monitor, .check-item, .info-box, .btn-secondary, .version
) {
    background: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.maintenance-page .line {
    background: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.maintenance-page :where(.eyebrow, .status-pill) {
    color: color-mix(in srgb, var(--primary) 25%, #ffffff) !important;
}

html[data-color-scheme="dark"] body.receipt-verify-page {
    background: radial-gradient(circle at top left, rgba(37, 99, 235, .14), transparent 34%),
                radial-gradient(circle at bottom right, rgba(99, 102, 241, .10), transparent 30%),
                var(--app-page) !important;
}

html[data-color-scheme="dark"] body.receipt-verify-page :where(.brand, .receipt-no, .item strong) {
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] body.receipt-verify-page :where(.brand span, .item) {
    background: var(--app-surface-soft) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.receipt-verify-page :where(.item span, .note, .footer) {
    color: var(--app-muted) !important;
}

html[data-color-scheme="dark"] body.receipt-verify-page .item.total {
    background: #172033 !important;
    color: #ffffff !important;
}

html[data-color-scheme="dark"] body.survey-public-page .wrap,
html[data-color-scheme="dark"] body.survey-public-page :where(.call, .score-btn),
html[data-color-scheme="dark"] body.status-public-page .status {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.survey-public-page :where(.score-title, .score-hint),
html[data-color-scheme="dark"] body.status-public-page .muted {
    color: var(--app-muted) !important;
}

html[data-color-scheme="dark"] body.survey-public-page .score-radio:checked + .score-btn {
    background: #fef3c7 !important;
    color: #92400e !important;
    border-color: #f59e0b !important;
}

html[data-color-scheme="dark"] body.survey-public-page .score-btn:hover {
    background: color-mix(in srgb, #f59e0b 18%, var(--app-surface)) !important;
    color: #fcd34d !important;
    border-color: #f59e0b !important;
}

html[data-color-scheme="dark"] body.status-public-page .row {
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page :where(
    .summary-card, .response-state, .choice, .muted-box, .table th
) {
    background: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page {
    background: radial-gradient(circle at top left, rgba(37, 99, 235, .14), transparent 34%),
                var(--app-page) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page :where(
    .panel-head p, .summary-card span, .response-state span,
    .empty, .note, .public-footer
) {
    color: var(--app-muted) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page .field label {
    color: var(--app-text) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page .summary-card.focus strong {
    color: color-mix(in srgb, var(--primary) 25%, #ffffff) !important;
}

html[data-color-scheme="dark"] body.emutabakat-public-page :where(.table td, .table th, .panel-head) {
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.customer-portal-page :where(input, textarea) {
    background: var(--app-input) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-standalone .article .btn.ghost {
    background: var(--app-surface-soft) !important;
    color: var(--app-text) !important;
    border-color: var(--app-border) !important;
}

html[data-color-scheme="dark"] body.theme-standalone .article > p:last-child,
html[data-color-scheme="dark"] body.theme-standalone > main.card p {
    color: var(--app-text-soft) !important;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
    }

    body.theme-global-skin *, body.theme-global-skin *::before, body.theme-global-skin *::after,
    body.theme-standalone *, body.theme-standalone *::before, body.theme-standalone *::after,
    body.pf-body *, body.pf-body *::before, body.pf-body *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        transition-delay: 0ms !important;
    }
}

@media print {
    html[data-color-scheme="dark"] {
        color-scheme: light;
        --app-page: #ffffff;
        --app-surface: #ffffff;
        --app-surface-soft: #f8fafc;
        --app-input: #ffffff;
        --app-text: #111827;
        --app-text-soft: #334155;
        --app-muted: #475569;
        --app-border: #d1d5db;
        --app-shadow: none;
        --theme-page: #ffffff;
        --theme-card: #ffffff;
        --theme-card-solid: #ffffff;
        --theme-card-soft: #f8fafc;
        --theme-card-warm: #fffaf0;
        --theme-text: #111827;
        --theme-text-soft: #334155;
        --theme-muted: #475569;
        --theme-line: #d1d5db;
        --theme-line-strong: #9ca3af;
        --auth-bg: #ffffff;
        --auth-surface: #ffffff;
        --auth-surface-2: #f8fafc;
        --auth-text: #111827;
        --auth-muted: #475569;
        --auth-line: #d1d5db;
        --cp-bg: #ffffff;
        --cp-surface: #ffffff;
        --cp-soft: #f8fafc;
        --cp-ink: #111827;
        --cp-muted: #475569;
        --cp-line: #d1d5db;
        --pf-bg: #ffffff;
        --pf-card: #ffffff;
        --pf-ink: #111827;
        --pf-muted: #475569;
        --pf-line: #d1d5db;
    }

    html[data-color-scheme="dark"] body.theme-global-skin,
    html[data-color-scheme="dark"] body.theme-standalone,
    html[data-color-scheme="dark"] body.pf-body {
        background: #ffffff !important;
        color: #111827 !important;
    }

    html[data-color-scheme="dark"] :where(body.theme-global-skin, body.theme-standalone, body.pf-body) :where(
        .card, .panel, .article, .summary-card, .metric-card, .stat-card,
        .form-card, .filter-card, .detail-card, .info-card, .modal-content,
        .auth-form-card, .auth-stage-card, .company-card, .workspace-browser,
        .workspace-inspector, .pf-card, .pf-metric, .pf-list-item,
        input, textarea, select, table, th, td
    ) {
        background: #ffffff !important;
        color: #111827 !important;
        border-color: #d1d5db !important;
        box-shadow: none !important;
    }
}
