/* ====================================================================
   QCS NEPAL Emailing System - Custom Styles
   Menu/Background मा कालो रङ्ग प्रयोग नगरी आकर्षक Gradient Theme प्रयोग गरिएको
   ==================================================================== */

:root {
    --qcs-primary: #2563eb;      /* Bright Blue */
    --qcs-primary-dark: #1d4ed8;
    --qcs-secondary: #0ea5e9;    /* Sky Blue */
    --qcs-accent: #f59e0b;       /* Amber accent */
    --qcs-success: #16a34a;
    --qcs-danger: #dc2626;
    --qcs-bg: #f4f7fe;           /* Light lavender-blue background */
    --qcs-card: #ffffff;
    --qcs-text: #1e293b;
}

body {
    background: linear-gradient(160deg, #eef2ff 0%, #f4f7fe 40%, #e0f2fe 100%);
    color: var(--qcs-text);
    font-family: 'Segoe UI', Roboto, Arial, sans-serif;
    min-height: 100vh;
}

/* ------------------ Top Navbar ------------------ */
.qcs-navbar {
    background: linear-gradient(90deg, var(--qcs-primary) 0%, var(--qcs-secondary) 100%);
    box-shadow: 0 2px 10px rgba(37, 99, 235, 0.25);
}
.qcs-navbar .navbar-brand {
    font-weight: 700;
    color: #ffffff !important;
    letter-spacing: .5px;
}
.qcs-navbar .nav-link {
    color: #eaf2ff !important;
    font-weight: 500;
    border-radius: 8px;
    margin: 0 2px;
    padding-left: .6rem !important;
    padding-right: .6rem !important;
    white-space: nowrap;
    transition: all .2s ease;
}
.qcs-navbar .navbar-nav {
    flex-wrap: nowrap;
}
@media (max-width: 1300px) and (min-width: 992px) {
    .qcs-navbar .nav-link {
        font-size: .92rem;
        padding-left: .45rem !important;
        padding-right: .45rem !important;
    }
}
.qcs-navbar .nav-link:hover,
.qcs-navbar .nav-link.active {
    background: rgba(255,255,255,0.18);
    color: #ffffff !important;
}

/* ------------------ Sidebar (optional) ------------------ */
.qcs-sidebar {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 4px 18px rgba(37,99,235,0.08);
}

/* ------------------ Cards ------------------ */
.qcs-card {
    background: var(--qcs-card);
    border: none;
    border-radius: 16px;
    box-shadow: 0 4px 18px rgba(37, 99, 235, 0.08);
    transition: transform .15s ease, box-shadow .15s ease;
}
.qcs-card:hover {
    box-shadow: 0 8px 26px rgba(37, 99, 235, 0.14);
}

.qcs-stat-card {
    border-radius: 16px;
    padding: 22px;
    color: #fff;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}
.qcs-stat-1 { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.qcs-stat-2 { background: linear-gradient(135deg, #0ea5e9, #38bdf8); }
.qcs-stat-3 { background: linear-gradient(135deg, #f59e0b, #fbbf24); }
.qcs-stat-4 { background: linear-gradient(135deg, #16a34a, #4ade80); }

/* ------------------ Buttons ------------------ */
.btn-qcs-primary {
    background: linear-gradient(90deg, var(--qcs-primary), var(--qcs-secondary));
    border: none;
    color: #fff;
    font-weight: 600;
    border-radius: 10px;
}
.btn-qcs-primary:hover {
    background: linear-gradient(90deg, var(--qcs-primary-dark), var(--qcs-secondary));
    color: #fff;
}

/* ------------------ Tables ------------------ */
.table-qcs thead {
    background: linear-gradient(90deg, #e0e7ff, #dbeafe);
}
.table-qcs thead th {
    color: var(--qcs-primary-dark);
    font-weight: 700;
    border: none;
}
.table-qcs tbody tr:hover {
    background-color: #f0f7ff;
}

/* ------------------ Badges ------------------ */
.badge-category {
    background: linear-gradient(90deg, #6366f1, #0ea5e9);
    color: #fff;
    padding: 6px 12px;
    border-radius: 20px;
    font-weight: 500;
}

/* ------------------ Login Page ------------------ */
.qcs-login-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #2563eb 0%, #0ea5e9 50%, #38bdf8 100%);
}
.qcs-login-card {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 15px 45px rgba(0,0,0,0.25);
    padding: 40px;
    width: 100%;
    max-width: 420px;
}
.qcs-login-card .logo-circle {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--qcs-primary), var(--qcs-secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    margin: 0 auto 15px auto;
}

/* ------------------ Misc ------------------ */
.page-title {
    font-weight: 700;
    color: var(--qcs-primary-dark);
}
.section-card-header {
    background: linear-gradient(90deg, #eef2ff, #e0f2fe);
    border-radius: 14px 14px 0 0;
    font-weight: 700;
    color: var(--qcs-primary-dark);
}
footer.qcs-footer {
    text-align: center;
    padding: 20px;
    color: #64748b;
    font-size: 14px;
}
