/*
 * KGTÜ kurumsal renk teması
 * Palet logodan alınmıştır. Bootstrap ve eski (legacy/reservation.css) değişkenlerini ezer;
 * bu yüzden diğer tüm stil dosyalarından SONRA yüklenmelidir.
 */
:root {
    --brand: #961b1e;          /* kurumsal bordo */
    --brand-rgb: 150, 27, 30;
    --brand-dark: #6b1013;
    --brand-darker: #4a0b0d;
    --brand-light: #b4302a;
    --brand-tint: #f9eaea;     /* çok açık bordo zemin */
    --brand-tint-2: #f2d4d4;
    --gold: #c9973a;           /* amblemdeki altın */
    --gold-rgb: 201, 151, 58;
    --gold-light: #f0d890;
    --gold-tint: #fbf4e2;
    --ink: #1f2328;            /* header/footer ve koyu metin */

    /* Eski CSS değişkenleri (takvim, ödeme sayfası) */
    --primary-color: var(--brand-dark);
    --secondary-color: var(--brand);
    --light-bg: #f3eeee;

    /* Bootstrap 5.3 */
    --bs-primary: var(--brand);
    --bs-primary-rgb: var(--brand-rgb);
    --bs-primary-text-emphasis: var(--brand-dark);
    --bs-primary-bg-subtle: var(--brand-tint);
    --bs-primary-border-subtle: var(--brand-tint-2);
    --bs-info: var(--gold);
    --bs-info-rgb: var(--gold-rgb);
    --bs-info-text-emphasis: #6b4e12;
    --bs-info-bg-subtle: var(--gold-tint);
    --bs-info-border-subtle: var(--gold-light);
    --bs-link-color: var(--brand);
    --bs-link-color-rgb: var(--brand-rgb);
    --bs-link-hover-color: var(--brand-dark);
    --bs-link-hover-color-rgb: 107, 16, 19;
    --bs-focus-ring-color: rgba(var(--brand-rgb), .25);
    --bs-code-color: #7a2a2c;
}

body { background-color: #f6f4f4 !important; }

/* Düğmeler */
.btn-primary {
    --bs-btn-bg: var(--brand);
    --bs-btn-border-color: var(--brand);
    --bs-btn-hover-bg: var(--brand-dark);
    --bs-btn-hover-border-color: var(--brand-dark);
    --bs-btn-active-bg: var(--brand-darker);
    --bs-btn-active-border-color: var(--brand-darker);
    --bs-btn-disabled-bg: var(--brand);
    --bs-btn-disabled-border-color: var(--brand);
    --bs-btn-focus-shadow-rgb: var(--brand-rgb);
}
.btn-outline-primary {
    --bs-btn-color: var(--brand);
    --bs-btn-border-color: var(--brand);
    --bs-btn-hover-bg: var(--brand);
    --bs-btn-hover-border-color: var(--brand);
    --bs-btn-active-bg: var(--brand-dark);
    --bs-btn-active-border-color: var(--brand-dark);
    --bs-btn-disabled-color: var(--brand);
    --bs-btn-disabled-border-color: var(--brand);
    --bs-btn-focus-shadow-rgb: var(--brand-rgb);
}
.btn-link { --bs-btn-color: var(--brand); --bs-btn-hover-color: var(--brand-dark); }

/* Sekmeler, sayfalama, form öğeleri */
.nav-pills { --bs-nav-pills-link-active-bg: var(--brand); }
.nav-link { --bs-nav-link-color: var(--brand); --bs-nav-link-hover-color: var(--brand-dark); }
.nav-tabs { --bs-nav-tabs-link-active-color: var(--brand); }
.pagination {
    --bs-pagination-color: var(--brand);
    --bs-pagination-hover-color: var(--brand-dark);
    --bs-pagination-focus-color: var(--brand-dark);
    --bs-pagination-active-bg: var(--brand);
    --bs-pagination-active-border-color: var(--brand);
    --bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(var(--brand-rgb), .25);
}
.list-group { --bs-list-group-active-bg: var(--brand); --bs-list-group-active-border-color: var(--brand); }
.form-control:focus, .form-select:focus {
    border-color: rgba(var(--brand-rgb), .5);
    box-shadow: 0 0 0 .2rem rgba(var(--brand-rgb), .15);
}
.form-check-input:checked { background-color: var(--brand); border-color: var(--brand); }
.form-check-input:focus { border-color: rgba(var(--brand-rgb), .5); box-shadow: 0 0 0 .2rem rgba(var(--brand-rgb), .15); }
.form-switch .form-check-input:focus:not(:checked) {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28150, 27, 30, 0.5%29'/%3e%3c/svg%3e");
}
.btn-check:checked + .btn-outline-primary { background-color: var(--brand); border-color: var(--brand); }

/* Bilgi kutuları altın tonunda */
.alert-info {
    --bs-alert-color: #6b4e12;
    --bs-alert-bg: var(--gold-tint);
    --bs-alert-border-color: var(--gold-light);
    --bs-alert-link-color: #4f390c;
}
.badge.bg-info { color: #3d2c08 !important; }

/* Kartlar ve başlıklar */
.card-header.bg-white { border-bottom: 1px solid #efe7e7; }
/* Başlık ikonları bordo; koyu/renkli zeminli başlıklarda (text-white) beyaz kalır */
h4 > .bi, h5 > .bi, h6 > .bi, .card-header.bg-white > .bi, .card-header.bg-white > span > .bi { color: var(--brand); }
.text-white .bi, .text-white > .bi, .card-header.text-white .bi { color: inherit !important; }

/* Alt bilgi */
.site-footer { background: var(--ink) !important; border-top: 3px solid var(--brand); }

/* ---------------- Takvim ---------------- */
.calendar-header { border-bottom-color: var(--brand-tint-2); }
.calendar-day-header { color: var(--brand-dark); }
.calendar-day.selectable:hover {
    border-color: var(--brand);
    box-shadow: 0 4px 12px rgba(var(--brand-rgb), .18);
}
.calendar-day.selected { background-color: var(--brand); border-color: var(--brand); color: #fff; }
.calendar-day.selected .meal-icon { color: #fff; }
.calendar-day.selected-meal { background-color: var(--brand-tint); border-color: var(--brand); }
.calendar-day.week-selected { background-color: var(--gold-tint); border-color: var(--gold); }
.calendar-day.disabled { background-color: #f3f3f3; }
/* Kapalı: nötr taralı; rezerve: altın tonlu ve tikli (ikisi karışmasın) */
.calendar-day.closed {
    background: repeating-linear-gradient(135deg, #f4f1f1, #f4f1f1 6px, #ebe5e5 6px, #ebe5e5 12px);
    border-color: #ded6d6;
    color: #9a8f8f;
}
.calendar-day.reserved {
    background: var(--gold-tint);
    border-color: var(--gold);
    color: #6b4e12;
}
.calendar-day.reserved .day-number::after {
    content: "\2713";
    font-size: .8em;
    margin-left: 2px;
    color: var(--gold);
}
.calendar-day.today { box-shadow: inset 0 0 0 2px var(--brand-light); }
.meal-icon.selected { color: var(--brand); }

.calendar-legend { display: flex; flex-wrap: wrap; gap: .4rem 1rem; font-size: .8rem; color: #6c757d; margin-top: .75rem; }
.calendar-legend span { display: inline-flex; align-items: center; gap: .35rem; }
.calendar-legend i { width: .9rem; height: .9rem; border-radius: 3px; display: inline-block; border: 1px solid; }
.calendar-legend .lg-selected { background: var(--brand); border-color: var(--brand); }
.calendar-legend .lg-week { background: var(--gold-tint); border-color: var(--gold); }
.calendar-legend .lg-reserved { background: var(--gold-tint); border-color: var(--gold); position: relative; }
.calendar-legend .lg-reserved::after { content: "\2713"; font-size: .6rem; color: var(--gold); position: absolute; left: 1px; top: -1px; }
.calendar-legend .lg-closed { background: repeating-linear-gradient(135deg, #f4f1f1, #f4f1f1 3px, #e3dbdb 3px, #e3dbdb 6px); border-color: #ded6d6; }
.calendar-legend .lg-today { background: #fff; border: 2px solid var(--brand-light); }

/* Seçim paneli ve ödeme */
.total-section, .total-row, .checkout-hero, .payment-header {
    background: linear-gradient(135deg, var(--brand-dark), var(--brand)) !important;
}
.payment-method:hover, .payment-method.active { border-color: var(--brand); }
.payment-method.active { background-color: var(--brand-tint); }
.order-summary { background-color: #fbf8f8; }
.dot, .section-title .dot { background: var(--brand); }

/* ---------------- Yönetim: ortak özet kartı ve tablo (Raporlar, Kullanıcılar) ---------------- */
.summary-card { display: block; height: 100%; padding: .65rem .85rem; border-radius: .6rem; background: #fff; border: 2px solid transparent;
    box-shadow: 0 1px 2px rgba(0,0,0,.06); color: inherit; text-decoration: none; transition: border-color .15s, transform .15s; }
.summary-card:hover { transform: translateY(-1px); border-color: #dee2e6; color: inherit; }
.summary-card.active { border-color: var(--bs-primary); }
.summary-card .s-label { font-size: .78rem; color: #6c757d; display: flex; align-items: center; gap: .35rem; }
.summary-card .s-count { font-size: 1.25rem; font-weight: 700; line-height: 1.2; }
.summary-card .s-amount { font-size: .8rem; color: #6c757d; }
.dot { width: .55rem; height: .55rem; border-radius: 50%; display: inline-block; }
.report-table thead th { position: sticky; top: 0; background: #f8f9fa; z-index: 1; border-bottom-width: 1px; }
.report-table td { padding-top: .55rem; padding-bottom: .55rem; }
.report-table .sort-link { color: inherit; text-decoration: none; white-space: nowrap; }
.report-table .sort-link.active { color: var(--bs-primary); }
.report-table .group-row td { background: #eef2f7; font-weight: 600; font-size: .85rem; padding-top: .4rem; padding-bottom: .4rem; }
.report-table .cell-sub { font-size: .78rem; color: #6c757d; }
.report-table code { font-size: .78rem; }

/* ---------------- Yönetim ---------------- */
.admin-sidebar .list-group-item.active { background: var(--brand) !important; border-color: var(--brand) !important; }
.admin-sidebar .list-group-item:not(.active):hover { background: var(--brand-tint); }
.admin-sidebar .menu-heading { color: var(--brand-dark); }
.admin-stat { border-left-color: var(--brand) !important; }
.admin-stat.warning { border-left-color: var(--bs-warning) !important; }
.admin-stat.success { border-left-color: var(--bs-success) !important; }
.admin-stat.info { border-left-color: var(--gold) !important; }
.summary-card.active { border-color: var(--brand) !important; }
.report-table .sort-link.active { color: var(--brand) !important; }
.report-table .group-row td { background: var(--brand-tint) !important; color: var(--brand-darker); }
.report-table thead th { background: #faf6f6 !important; }
.period-nav .label .bi { color: var(--brand) !important; }
.selection-chip { background: #f1ecec; }
