/* ── Anmol Welfare Society — Custom Styles (Dark theme) ──────────────────── */

:root {
    --aws-blue:    #1a5276;   /* navbar, active sidebar */
    --aws-blue-lt: #2e86c1;   /* lighter accent */
    --aws-accent:  #5dade2;   /* light blue for headings / values on dark bg */
    --sidebar-w:   240px;
}

/* ── Deep-dark palette override ──────────────────────────────────────────────
   Bootstrap's stock dark theme is a medium slate-grey (sidebar/cards look too
   light). Re-point its core variables to a deeper near-black so surfaces sit
   quietly against an almost-black page, with cards gently elevated. */
[data-bs-theme="dark"] {
    --bs-body-bg:        #17191c;   /* page background — almost black */
    --bs-body-bg-rgb:    23,25,28;
    --bs-tertiary-bg:    #1d2024;   /* sidebar, footer, table headers */
    --bs-tertiary-bg-rgb:29,32,36;
    --bs-secondary-bg:   #24272b;   /* hover / subtle fills */
    --bs-secondary-bg-rgb:36,39,43;
    --bs-border-color:   #2c3035;
    --bs-border-color-translucent: rgba(255,255,255,.08);
}
/* Cards sit one step above the page for depth */
[data-bs-theme="dark"] .card {
    --bs-card-bg:           #1f2226;
    --bs-card-color:        var(--bs-body-color);
    --bs-card-border-color: #2c3035;
}

/* ── Navbar ──────────────────────────────────────────────────────────────── */
.aws-navbar {
    background-color: var(--aws-blue) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.45);
}
.aws-navbar .navbar-brand { font-weight: 700; letter-spacing: .3px; }

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.aws-sidebar {
    width: var(--sidebar-w);
    min-height: calc(100vh - 56px);
    background: var(--bs-tertiary-bg);
    border-right: 1px solid var(--bs-border-color);
    flex-shrink: 0;
}
.aws-sidebar .nav-link {
    color: #e9ecef;
    font-weight: 500;
    border-radius: 6px;
    padding: .5rem .85rem;
    font-size: .9rem;
    display: flex;
    align-items: center;
    gap: .55rem;
    transition: background .15s, color .15s;
}
.aws-sidebar .nav-link:hover {
    background: var(--bs-secondary-bg);
    color: var(--aws-accent);
}
.aws-sidebar .nav-link.active {
    background: var(--aws-blue);
    color: #fff !important;
}
.aws-sidebar .nav-section {
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--bs-secondary-color);
    padding: 1rem .85rem .3rem;
}

/* ── Main Content ────────────────────────────────────────────────────────── */
.aws-content {
    flex: 1;
    min-width: 0;
    padding: 1.5rem;
    background: var(--bs-body-bg);
}

/* ── Page Header ─────────────────────────────────────────────────────────── */
.page-header {
    border-bottom: 2px solid var(--aws-blue-lt);
    padding-bottom: .6rem;
    margin-bottom: 1.5rem;
}
.page-header h2 { color: var(--aws-accent); font-size: 1.4rem; font-weight: 700; }

/* ── Footer ──────────────────────────────────────────────────────────────── */
.aws-footer {
    background: var(--bs-tertiary-bg);
    border-top: 1px solid var(--bs-border-color);
    font-size: .8rem;
    color: var(--bs-secondary-color);
    padding: .6rem 1.5rem;
}

/* ── Cards ───────────────────────────────────────────────────────────────── */
.stat-card { border-left: 4px solid var(--aws-blue-lt); }
.stat-card .stat-value { font-size: 1.6rem; font-weight: 700; color: var(--aws-accent); }

/* ── Tables ──────────────────────────────────────────────────────────────── */
.table th { background: rgba(46,134,193,.16); color: var(--aws-accent); font-size: .82rem; font-weight: 700; }

/* ── Login ───────────────────────────────────────────────────────────────── */
.login-card {
    max-width: 400px;
    width: 100%;
    border: none;
    box-shadow: 0 4px 24px rgba(0,0,0,.5);
    border-radius: 12px;
    overflow: hidden;
}
.login-header {
    background: var(--aws-blue);
    color: #fff;
    padding: 1.5rem;
    text-align: center;
}

/* ── Dashboard fund cards ─────────────────────────────────────────────── */
.letter-spacing { letter-spacing: .06em; }

/* ── Dark-theme remaps for fixed-colour Bootstrap utilities ─────────────────
   Many views hardcode .bg-white / .bg-light / .table-light / .text-dark,
   which would render as light blocks on the dark UI. Remap them to the dark
   palette. Scoped to screen so printing keeps its own light styling below. */
@media screen {
    [data-bs-theme="dark"] .bg-white  { background-color: var(--bs-tertiary-bg) !important; }
    [data-bs-theme="dark"] .bg-light  { background-color: var(--bs-tertiary-bg) !important; }
    [data-bs-theme="dark"] .text-dark { color: var(--bs-body-color) !important; }
    [data-bs-theme="dark"] .table-light {
        --bs-table-bg: var(--bs-secondary-bg);
        --bs-table-color: var(--bs-body-color);
        --bs-table-border-color: var(--bs-border-color);
    }
}

/* ── Reports: £/Rs column grouping + fund-header banner ─────────────────────
   Light tints (cream £ / blue Rs) are kept for the printed report; on the dark
   screen they become subtle warm/cool dark tints so the header isn't a glaring
   light strip. Text colour falls through to .table th (accent) or the cells'
   own semantic classes, so it stays readable on both. */
.table th.rpt-gbp { background: #fff8e7; }   /* £ Sterling group  — cream */
.table th.rpt-pkr { background: #f0f8ff; }   /* Rs Rupees group   — light blue */
.rpt-fundhdr      { background: #e8f0fb !important; }
@media screen {
    [data-bs-theme="dark"] .table th.rpt-gbp { background: #2b2517; }   /* warm dark */
    [data-bs-theme="dark"] .table th.rpt-pkr { background: #16232f; }   /* cool dark */
    [data-bs-theme="dark"] .rpt-fundhdr      { background: #1c2733 !important; }
}
@media print {
    .table th.rpt-gbp { background: #fff8e7 !important; }
    .table th.rpt-pkr { background: #f0f8ff !important; }
}

/* ── Print styles ────────────────────────────────────────────────────── */
@media print {
    /* Hide all navigation chrome */
    .aws-navbar,
    .aws-sidebar,
    .offcanvas,
    .offcanvas-backdrop,
    .aws-footer,
    .no-print             { display: none !important; }

    /* Force light rendering on paper regardless of the dark screen theme */
    body, .aws-content    { background: #fff !important; }
    body                  { color: #000 !important; }
    .card, .table         { background-color: #fff !important; }
    .table th             { background: #e9ecef !important; color: #000 !important; }

    /* Remove layout padding so content fills page */
    .aws-content          { padding: 0 !important; }

    /* Show print-only elements */
    .print-only           { display: block !important; }

    /* Force full-width content */
    .aws-content,
    main, #mainContent    { width: 100% !important; flex: none !important; }

    /* Keep tables on one page where possible */
    table                 { page-break-inside: auto; }
    tr                    { page-break-inside: avoid; page-break-after: auto; }
    thead                 { display: table-header-group; }

    /* Remove box-shadows and borders that look bad when printed */
    .card                 { box-shadow: none !important; border: 1px solid #dee2e6 !important; }
    .shadow-sm            { box-shadow: none !important; }

    /* Ensure colours print */
    .text-success         { color: #1a8a5a !important; }
    .text-danger          { color: #c0392b !important; }

    /* Page header prints correctly */
    .page-header          { border-bottom: 2px solid #000; }
}
