/* BMS — تصميم موحّد بهوية دافئة (قهوة وحلويات)، جوال أولاً */
:root {
    --bms-primary: #7c5137;
    --bms-primary-dark: #5f3d28;
    --bms-primary-soft: #f3ece5;
    --bms-accent: #c98d2c;
    --bms-bg: #faf8f5;
    --bms-surface: #ffffff;
    --bms-text: #2d2620;
    --bms-muted: #8a7d70;
    --bms-border: #e9e1d8;
    --bms-success: #2e7d52;
    --bms-danger: #b3423a;
    --bms-radius: 14px;
    --bms-sidebar-w: 250px;
}

body {
    font-family: 'IBM Plex Sans Arabic', system-ui, -apple-system, 'Segoe UI', Tahoma, sans-serif;
    background: var(--bms-bg);
    color: var(--bms-text);
    min-height: 100vh;
}

/* ---------- بطاقات وأزرار ---------- */
.card {
    border: 1px solid var(--bms-border);
    border-radius: var(--bms-radius);
    box-shadow: 0 1px 3px rgba(45, 38, 32, .05);
}

.btn-primary {
    background: var(--bms-primary);
    border-color: var(--bms-primary);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background: var(--bms-primary-dark) !important;
    border-color: var(--bms-primary-dark) !important;
}
.btn-outline-primary {
    color: var(--bms-primary);
    border-color: var(--bms-primary);
}
.btn-outline-primary:hover {
    background: var(--bms-primary);
    border-color: var(--bms-primary);
}

.text-bms { color: var(--bms-primary); }
.bg-bms-soft { background: var(--bms-primary-soft); }

a { color: var(--bms-primary); }

.form-control:focus, .form-select:focus {
    border-color: var(--bms-primary);
    box-shadow: 0 0 0 .2rem rgba(124, 81, 55, .15);
}

/* ---------- صفحة الدخول ---------- */
.login-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(160deg, var(--bms-primary-soft) 0%, var(--bms-bg) 55%);
    padding: 1rem;
}
.login-card {
    width: 100%;
    max-width: 420px;
}
.login-logo {
    width: 68px;
    height: 68px;
    border-radius: 20px;
    background: var(--bms-primary);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.9rem;
    margin: 0 auto .75rem;
}

/* ---------- الهيكل العام ---------- */
.app-topbar {
    background: var(--bms-surface);
    border-bottom: 1px solid var(--bms-border);
    height: 60px;
}

.app-sidebar {
    width: var(--bms-sidebar-w);
    background: var(--bms-surface);
    border-inline-end: 1px solid var(--bms-border);
}
.app-sidebar .nav-link {
    color: var(--bms-text);
    border-radius: 10px;
    padding: .6rem .9rem;
    margin-bottom: .15rem;
    font-weight: 500;
}
.app-sidebar .nav-link:hover { background: var(--bms-primary-soft); }
.app-sidebar .nav-link.active {
    background: var(--bms-primary);
    color: #fff;
}

@media (min-width: 992px) {
    .app-main { margin-inline-start: var(--bms-sidebar-w); }
    .app-sidebar {
        position: fixed;
        top: 60px;
        bottom: 0;
        inset-inline-start: 0;
        overflow-y: auto;
    }
}

/* ---------- عناصر مساعدة ---------- */
.stat-card .stat-value {
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.1;
}
.stat-card .stat-label {
    color: var(--bms-muted);
    font-size: .85rem;
}

.table > :not(caption) > * > * { padding: .75rem .75rem; }
.table thead th {
    color: var(--bms-muted);
    font-size: .8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
    border-bottom-width: 1px;
}

.badge-status { font-weight: 600; padding: .45em .8em; border-radius: 20px; }

/* جداول قابلة للتمرير على الجوال */
.table-responsive { border-radius: var(--bms-radius); }

[x-cloak] { display: none !important; }
