/**
 * Tipografi — Outfit (başlık / bilgi kutuları) + Manrope (form / gövde metni)
 */

body {
    font-family: var(--app-font-body);
    font-size: var(--app-text-base);
    line-height: 1.5;
}

/* ——— Başlıklar & bilgi alanları (Outfit) ——— */
h1, h2, h3, h4, h5, h6,
.page-header h1,
.page-header h2,
.page-header h3,
.page-header h4,
.page-header h5,
.card-header,
.card-title,
.modal-title,
.accordion-button,
.stat-card h3,
.stat-card h4,
.stat-card h5,
.stat-card h6,
.alert-heading,
.dropdown-header,
.offcanvas-title,
.rsp-header-title {
    font-family: var(--app-font-display);
    letter-spacing: -0.015em;
}

.page-header h2,
.page-header h3 {
    font-weight: 600;
    font-size: var(--app-text-xl);
    line-height: 1.25;
}

.page-header .text-muted,
.page-header p.text-muted {
    font-family: var(--app-font-body);
    font-size: var(--app-text-sm);
}

.card-header {
    font-family: var(--app-font-display);
    font-weight: 600;
    font-size: var(--app-text-base);
}

.stat-card h6,
.stat-card .text-muted.mb-2 {
    font-family: var(--app-font-display);
    font-size: var(--app-text-xs);
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--app-text-muted) !important;
}

.stat-card h3 {
    font-family: var(--app-font-display);
    font-weight: 700;
    font-size: var(--app-text-2xl);
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.stat-card small.text-muted {
    font-family: var(--app-font-body);
    font-size: var(--app-text-xs);
    text-transform: none;
    letter-spacing: normal;
    font-weight: 400;
}

.form-label,
label.form-label,
.col-form-label,
.form-check-label,
.input-group-text {
    font-family: var(--app-font-display);
    font-size: var(--app-text-sm);
    font-weight: 500;
    color: var(--app-text-secondary);
}

.table thead th {
    font-family: var(--app-font-display);
}

.sidebar-brand h4,
.sidebar-menu a,
.sidebar-menu-group-title {
    font-family: var(--app-font-display);
}

.btn {
    font-family: var(--app-font-display);
    font-weight: 500;
    font-size: var(--app-text-sm);
}

.badge {
    font-family: var(--app-font-display);
}

/* ——— Yazım alanları & gövde metni (Manrope) ——— */
.form-control,
.form-select,
textarea.form-control,
.input-group-text,
.form-control-plaintext,
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select,
.select2-container--default .select2-selection--single,
table.table td,
table.table tbody,
.card-body,
.modal-body,
.dropdown-item,
.list-group-item,
.breadcrumb,
p,
small,
.form-text {
    font-family: var(--app-font-body);
}

.form-control,
.form-select,
textarea.form-control {
    font-size: var(--app-text-sm);
    line-height: 1.45;
    padding: 0.5rem 0.75rem;
    min-height: 2.375rem;
    border-radius: 8px;
}

.form-control-sm,
.form-select-sm {
    font-size: var(--app-text-xs);
    padding: 0.35rem 0.55rem;
    min-height: 2rem;
    border-radius: 6px;
}

textarea.form-control {
    min-height: 5rem;
}

/* Tablo içi düzenlenebilir alanlar — liste metni orantılı kalsın */
.table .form-control,
.table .form-control-sm,
.table-responsive .form-control {
    font-size: var(--app-text-sm);
    font-weight: 500;
    min-height: 1.875rem;
    padding: 0.25rem 0.45rem;
    line-height: 1.35;
}

.table .urun-adi-input {
    font-weight: 600;
}

.table td,
.table th {
    font-size: var(--app-text-sm);
    vertical-align: middle;
}

/* ——— Mobil: form metni stabil, orantılı ——— */
@media (max-width: 767.98px) {
    body {
        font-size: var(--app-text-sm);
    }

    .page-header h2,
    .page-header h3 {
        font-size: var(--app-text-lg);
    }

    .stat-card h3 {
        font-size: var(--app-text-xl);
    }

    .card-header {
        font-size: var(--app-text-sm);
    }

    .form-label,
    label.form-label {
        font-size: var(--app-text-xs);
        margin-bottom: 0.35rem;
    }

    /* Ana formlar — etiketlerle orantılı, kompakt */
    .form-control:not(.form-control-sm),
    .form-select:not(.form-select-sm),
    textarea.form-control {
        font-size: 0.875rem !important;
        line-height: 1.4;
        padding: 0.4rem 0.65rem;
        min-height: 2.125rem;
    }

    .form-control-sm,
    .form-select-sm {
        font-size: 0.875rem !important;
        min-height: 2rem;
        padding: 0.3rem 0.5rem;
    }

    textarea.form-control {
        min-height: 4.5rem;
    }

    /* Tablo / inline düzenleme: 16px yerine orantılı küçük metin */
    .table .form-control,
    .table .form-control-sm,
    .table-responsive .form-control {
        font-size: 0.8125rem !important;
        min-height: 1.75rem;
        padding: 0.2rem 0.4rem;
        font-weight: 500;
    }

    .table td,
    .table th {
        font-size: 0.8125rem;
    }

    .table-responsive {
        font-size: inherit;
    }

    .btn {
        font-size: var(--app-text-sm);
        min-height: 2.5rem;
        padding: 0.45rem 0.85rem;
    }

    .btn-sm {
        min-height: 2rem;
        font-size: var(--app-text-xs);
        padding: 0.3rem 0.55rem;
    }
}
