/*
 * Angaza Classic Pro
 * Final presentation layer for authenticated pages. It keeps existing Blade,
 * routes and business logic intact while making older module views feel like
 * one polished navy/gold system.
 */

:root {
    --ad-navy: #062f3f;
    --ad-navy-dark: #041f2b;
    --ad-navy-soft: #083c4f;
    --ad-gold: #d99a2b;
    --ad-gold-light: #f1bd54;
    --ad-text: #102a43;
    --ad-muted: #667085;
    --ad-border: #e7eaf0;
    --ad-page: #f7f9fb;
    --ad-panel: #ffffff;
    --ad-success: #16a34a;
    --ad-danger: #dc2626;
    --ad-info: #0f6b8d;
    --ad-radius: 8px;
    --ad-shadow: 0 10px 25px rgba(6, 47, 63, 0.08);
    --ad-shadow-strong: 0 18px 45px rgba(6, 47, 63, 0.12);
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

body.angaza-app-shell {
    background: var(--ad-page) !important;
    color: var(--ad-text) !important;
    font-family: "Poppins", "Inter", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif !important;
    letter-spacing: 0 !important;
}

body.angaza-app-shell h1,
body.angaza-app-shell h2,
body.angaza-app-shell h3,
body.angaza-app-shell h4,
body.angaza-app-shell h5,
body.angaza-app-shell h6 {
    color: var(--ad-text);
    letter-spacing: 0 !important;
}

body.angaza-app-shell a,
body.angaza-app-shell button,
body.angaza-app-shell input,
body.angaza-app-shell select,
body.angaza-app-shell textarea {
    letter-spacing: 0 !important;
}

/* App Shell */
body.angaza-app-shell .main-wrapper {
    background: var(--ad-page) !important;
}

body.angaza-app-shell .sidebar-nav-wrapper {
    background: var(--ad-navy-dark) !important;
    border-right: 0 !important;
    box-shadow: 16px 0 38px rgba(4, 31, 43, 0.16) !important;
}

body.angaza-app-shell .navbar-logo {
    padding: 34px 28px 28px !important;
    border-bottom: 0 !important;
    background: transparent !important;
}

body.angaza-app-shell .navbar-logo a {
    justify-content: flex-start !important;
}

body.angaza-app-shell .navbar-logo img {
    max-height: 58px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.18)) !important;
}

body.angaza-app-shell .sidebar-nav {
    padding: 0 24px 24px !important;
}

body.angaza-app-shell .sidebar-nav ul li {
    margin-bottom: 16px !important;
}

body.angaza-app-shell .sidebar-nav ul li a {
    position: relative !important;
    min-height: 42px !important;
    padding: 0 !important;
    gap: 18px !important;
    border-radius: 0 !important;
    color: rgba(255, 255, 255, 0.78) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 0.94rem !important;
    font-weight: 600 !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
}

body.angaza-app-shell .sidebar-nav ul li a .icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    color: var(--ad-gold-light) !important;
    background: transparent !important;
    font-size: 1.18rem !important;
}

body.angaza-app-shell .sidebar-nav ul li a:hover,
body.angaza-app-shell .sidebar-nav ul li a.active,
body.angaza-app-shell .sidebar-nav ul li a[aria-expanded="true"] {
    color: #ffffff !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(4px) !important;
}

body.angaza-app-shell .sidebar-nav ul li a:hover .icon,
body.angaza-app-shell .sidebar-nav ul li a.active .icon,
body.angaza-app-shell .sidebar-nav ul li a[aria-expanded="true"] .icon {
    color: var(--ad-gold-light) !important;
    background: transparent !important;
}

body.angaza-app-shell .sidebar-nav ul li a.active::before,
body.angaza-app-shell .sidebar-nav ul li a[aria-expanded="true"]::before {
    content: "" !important;
    position: absolute !important;
    left: -24px !important;
    top: 50% !important;
    width: 5px !important;
    height: 42px !important;
    border-radius: 0 8px 8px 0 !important;
    background: var(--ad-gold) !important;
    transform: translateY(-50%) !important;
}

body.angaza-app-shell .dropdown-nav {
    margin: 10px 0 18px 46px !important;
    padding: 8px 0 8px 14px !important;
    border-left: 1px solid rgba(241, 189, 84, 0.24) !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.angaza-app-shell .dropdown-nav li {
    margin-bottom: 8px !important;
}

body.angaza-app-shell .dropdown-nav li a {
    min-height: 32px !important;
    padding: 0 !important;
    color: rgba(255, 255, 255, 0.66) !important;
    font-size: 0.84rem !important;
    font-weight: 550 !important;
}

body.angaza-app-shell .promo-box {
    margin: 24px !important;
    padding: 18px !important;
    border: 1px solid rgba(241, 189, 84, 0.26) !important;
    border-radius: var(--ad-radius) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    text-align: left !important;
}

body.angaza-app-shell .promo-box .main-btn {
    width: 100%;
    border-radius: var(--ad-radius) !important;
}

/* Top Bar */
body.angaza-app-shell .header {
    min-height: 92px !important;
    border-bottom: 1px solid var(--ad-border) !important;
    background: var(--ad-page) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

body.angaza-app-shell .angaza-header-shell {
    min-height: 92px !important;
    gap: 18px !important;
}

body.angaza-app-shell #menu-toggle.main-btn {
    width: auto !important;
    min-height: 44px !important;
    padding: 0 16px !important;
    border-radius: var(--ad-radius) !important;
    color: #ffffff !important;
    background: var(--ad-navy) !important;
    box-shadow: 0 12px 24px rgba(6, 47, 63, 0.16) !important;
}

body.angaza-app-shell .header-search {
    max-width: 470px !important;
}

body.angaza-app-shell .header-search form {
    position: relative !important;
    height: 56px !important;
    min-width: min(470px, 42vw) !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 22px rgba(6, 47, 63, 0.05) !important;
}

body.angaza-app-shell .header-search input {
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 58px 0 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--ad-text) !important;
    font-size: 0.94rem !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}

body.angaza-app-shell .header-search button {
    position: absolute !important;
    top: 7px !important;
    right: 7px !important;
    width: 42px !important;
    height: 42px !important;
    border: 0 !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-gold) !important;
    background: rgba(217, 154, 43, 0.13) !important;
    transform: none !important;
}

body.angaza-app-shell .header-search input:focus {
    box-shadow: none !important;
}

body.angaza-app-shell .topbar-search-results,
body.angaza-app-shell .topbar-mobile-search-panel,
body.angaza-app-shell .angaza-topbar-menu,
body.angaza-app-shell .profile-box .dropdown-menu {
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    box-shadow: var(--ad-shadow-strong) !important;
}

body.angaza-app-shell .topbar-menu-heading,
body.angaza-app-shell .profile-menu-summary {
    border-radius: var(--ad-radius) !important;
    background: var(--ad-navy) !important;
}

body.angaza-app-shell .angaza-topbar-actions {
    gap: 12px !important;
    margin-right: 0 !important;
}

body.angaza-app-shell .angaza-topbar-icon {
    width: 44px !important;
    height: 44px !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: 50% !important;
    color: var(--ad-navy) !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

body.angaza-app-shell .angaza-topbar-icon::after {
    display: none !important;
}

body.angaza-app-shell .angaza-topbar-icon:hover,
body.angaza-app-shell .profile-info:hover {
    border-color: rgba(217, 154, 43, 0.54) !important;
    background: #fff8ea !important;
    transform: translateY(-1px) !important;
}

body.angaza-app-shell .angaza-topbar-badge {
    top: -5px !important;
    right: -6px !important;
    min-width: 20px !important;
    height: 20px !important;
    border: 2px solid #ffffff !important;
    background: var(--ad-danger) !important;
    font-size: 0.66rem !important;
}

body.angaza-app-shell .profile-info {
    min-height: 48px !important;
    padding: 0.28rem 0.72rem 0.28rem 0.32rem !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

body.angaza-app-shell .profile-info .image {
    width: 40px !important;
    height: 40px !important;
    border: 2px solid var(--ad-gold) !important;
}

body.angaza-app-shell .profile-info h6 {
    color: var(--ad-text) !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
}

body.angaza-app-shell .profile-info p {
    color: var(--ad-muted) !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
}

/* Main Content */
body.angaza-app-shell .section {
    padding: 28px 32px 36px !important;
}

body.angaza-app-shell .container,
body.angaza-app-shell .container-fluid {
    max-width: 1480px !important;
}

body.angaza-app-shell .angaza-page-shell,
body.angaza-app-shell .angaza-dashboard {
    display: grid !important;
    gap: 22px !important;
    color: var(--ad-text) !important;
}

body.angaza-app-shell .dashboard-hero,
body.angaza-app-shell .angaza-page-hero,
body.angaza-app-shell .page-header,
body.angaza-app-shell .stock-hero-panel,
body.angaza-app-shell .messages-hero,
body.angaza-app-shell .compose-hero,
body.angaza-app-shell .message-hero {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
    padding: 28px 32px !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-text) !important;
    background: linear-gradient(135deg, #eef6f8 0%, #fff7e7 100%) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body.angaza-app-shell .dashboard-hero::before,
body.angaza-app-shell .angaza-page-hero::before,
body.angaza-app-shell .page-header::before,
body.angaza-app-shell .stock-hero-panel::before,
body.angaza-app-shell .messages-hero::before,
body.angaza-app-shell .compose-hero::before,
body.angaza-app-shell .message-hero::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: 5px !important;
    background: var(--ad-gold) !important;
}

body.angaza-app-shell .dashboard-hero h1,
body.angaza-app-shell .angaza-page-hero h1,
body.angaza-app-shell .angaza-page-hero h2,
body.angaza-app-shell .page-header h1,
body.angaza-app-shell .page-header h2,
body.angaza-app-shell .page-header h3,
body.angaza-app-shell .stock-title,
body.angaza-app-shell .messages-hero h1,
body.angaza-app-shell .compose-hero h1,
body.angaza-app-shell .message-hero h1 {
    margin: 0 !important;
    color: var(--ad-navy) !important;
    font-family: "Playfair Display", "Poppins", Georgia, serif !important;
    font-size: clamp(1.75rem, 2.4vw, 2.45rem) !important;
    font-weight: 700 !important;
    line-height: 1.14 !important;
}

body.angaza-app-shell .dashboard-hero p,
body.angaza-app-shell .angaza-page-hero p,
body.angaza-app-shell .stock-subtitle,
body.angaza-app-shell .messages-hero p,
body.angaza-app-shell .compose-hero p,
body.angaza-app-shell .message-hero p {
    max-width: 760px !important;
    margin: 10px 0 0 !important;
    color: var(--ad-muted) !important;
    font-size: 0.94rem !important;
    font-weight: 500 !important;
    line-height: 1.65 !important;
}

body.angaza-app-shell .dashboard-eyebrow,
body.angaza-app-shell .angaza-page-kicker,
body.angaza-app-shell .stock-eyebrow,
body.angaza-app-shell .messages-kicker,
body.angaza-app-shell .compose-kicker,
body.angaza-app-shell .message-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
    color: #986411 !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

body.angaza-app-shell .dashboard-date-card,
body.angaza-app-shell .stock-hero-badge {
    min-width: 180px !important;
    padding: 16px !important;
    border: 1px solid rgba(217, 154, 43, 0.34) !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-navy) !important;
    background: #fff4dc !important;
    text-align: right !important;
}

body.angaza-app-shell .dashboard-date-card span,
body.angaza-app-shell .stock-hero-badge span {
    color: #8a5b12 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
}

body.angaza-app-shell .dashboard-date-card strong,
body.angaza-app-shell .stock-hero-badge strong {
    color: var(--ad-navy) !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
}

/* Cards, panels and metrics */
body.angaza-app-shell .card,
body.angaza-app-shell .quick-action-card,
body.angaza-app-shell .stat-card,
body.angaza-app-shell .stats-card,
body.angaza-app-shell .chart-card,
body.angaza-app-shell .dashboard-table-card,
body.angaza-app-shell .module-card,
body.angaza-app-shell .angaza-stat-card,
body.angaza-app-shell .angaza-action-card,
body.angaza-app-shell .settings-section,
body.angaza-app-shell .settings-field,
body.angaza-app-shell .messages-panel,
body.angaza-app-shell .compose-panel,
body.angaza-app-shell .message-detail,
body.angaza-app-shell .access-panel {
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--ad-shadow) !important;
}

body.angaza-app-shell .card .card,
body.angaza-app-shell .settings-field .card {
    box-shadow: none !important;
}

body.angaza-app-shell .card-header,
body.angaza-app-shell .card-footer,
body.angaza-app-shell .settings-section-header {
    border-color: var(--ad-border) !important;
    background: #ffffff !important;
}

body.angaza-app-shell .card-header,
body.angaza-app-shell .settings-section-header h4,
body.angaza-app-shell .section-heading h2,
body.angaza-app-shell .card-title-row h2,
body.angaza-app-shell .card-title-row h3 {
    color: var(--ad-text) !important;
    font-weight: 700 !important;
}

body.angaza-app-shell .quick-action-card,
body.angaza-app-shell .angaza-action-card {
    color: var(--ad-text) !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

body.angaza-app-shell .quick-action-card:hover,
body.angaza-app-shell .angaza-action-card:hover,
body.angaza-app-shell .stats-card:hover,
body.angaza-app-shell .stat-card:hover,
body.angaza-app-shell .card:hover {
    border-color: rgba(217, 154, 43, 0.42) !important;
    box-shadow: 0 16px 36px rgba(6, 47, 63, 0.10) !important;
}

body.angaza-app-shell .stat-icon,
body.angaza-app-shell .stats-icon,
body.angaza-app-shell .stats-card .stat-icon,
body.angaza-app-shell .quick-action-icon,
body.angaza-app-shell .module-icon,
body.angaza-app-shell .angaza-stat-icon,
body.angaza-app-shell .angaza-action-card i {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-gold) !important;
    background: rgba(217, 154, 43, 0.13) !important;
    font-size: 1.08rem !important;
}

body.angaza-app-shell .stat-label,
body.angaza-app-shell .stats-label,
body.angaza-app-shell .angaza-stat-label {
    color: var(--ad-muted) !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

body.angaza-app-shell .stat-value,
body.angaza-app-shell .stats-value,
body.angaza-app-shell .stats-card .stat-value,
body.angaza-app-shell .angaza-stat-value {
    color: var(--ad-navy) !important;
    font-size: clamp(1.35rem, 2vw, 1.95rem) !important;
    font-weight: 700 !important;
}

body.angaza-app-shell .stat-card::after {
    display: none !important;
}

body.angaza-app-shell .bar-track,
body.angaza-app-shell .list-bar-track {
    border-radius: 999px !important;
    background: #edf3f6 !important;
}

body.angaza-app-shell .bar-fill,
body.angaza-app-shell .list-bar-fill {
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--ad-gold), var(--ad-navy)) !important;
}

body.angaza-app-shell .donut-chart::after {
    background: #ffffff !important;
}

body.angaza-app-shell .table-row,
body.angaza-app-shell .message-row {
    border-color: var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    background: #fbfdff !important;
}

body.angaza-app-shell .empty-state,
body.angaza-app-shell .angaza-empty-state,
body.angaza-app-shell .messages-empty {
    border: 1px dashed #cbd5e1 !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-muted) !important;
    background: #f8fafc !important;
}

/* Buttons and inputs */
body.angaza-app-shell .btn,
body.angaza-app-shell .main-btn,
body.angaza-app-shell .message-action,
body.angaza-app-shell .message-tab {
    min-height: 40px !important;
    border-radius: var(--ad-radius) !important;
    font-weight: 700 !important;
}

body.angaza-app-shell .btn-primary,
body.angaza-app-shell .btn-dark,
body.angaza-app-shell .main-btn.primary-btn,
body.angaza-app-shell .message-action,
body.angaza-app-shell .message-tab.active {
    border-color: var(--ad-navy) !important;
    color: #ffffff !important;
    background: var(--ad-navy) !important;
    box-shadow: 0 10px 22px rgba(6, 47, 63, 0.14) !important;
}

body.angaza-app-shell .btn-primary:hover,
body.angaza-app-shell .btn-dark:hover,
body.angaza-app-shell .main-btn.primary-btn:hover,
body.angaza-app-shell .message-action:hover {
    border-color: var(--ad-navy-dark) !important;
    background: var(--ad-navy-dark) !important;
}

body.angaza-app-shell .btn-warning,
body.angaza-app-shell .btn-success {
    border-color: var(--ad-gold) !important;
    color: var(--ad-navy-dark) !important;
    background: var(--ad-gold) !important;
    box-shadow: 0 10px 22px rgba(217, 154, 43, 0.18) !important;
}

body.angaza-app-shell .btn-light {
    border-color: var(--ad-border) !important;
    color: var(--ad-navy) !important;
    background: #ffffff !important;
}

body.angaza-app-shell .btn-outline-primary,
body.angaza-app-shell .btn-outline-dark,
body.angaza-app-shell .btn-outline-secondary,
body.angaza-app-shell .message-tab {
    border-color: rgba(6, 47, 63, 0.20) !important;
    color: var(--ad-navy) !important;
    background: #ffffff !important;
}

body.angaza-app-shell .btn-outline-primary:hover,
body.angaza-app-shell .btn-outline-dark:hover,
body.angaza-app-shell .btn-outline-secondary:hover,
body.angaza-app-shell .message-tab:hover {
    border-color: rgba(217, 154, 43, 0.55) !important;
    color: var(--ad-navy) !important;
    background: #fff8ea !important;
}

body.angaza-app-shell .btn-danger,
body.angaza-app-shell .btn-outline-danger:hover {
    border-color: var(--ad-danger) !important;
    color: #ffffff !important;
    background: var(--ad-danger) !important;
}

body.angaza-app-shell .form-control,
body.angaza-app-shell .form-select,
body.angaza-app-shell input[type="search"],
body.angaza-app-shell textarea {
    min-height: 40px !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    color: var(--ad-text) !important;
    background: #ffffff !important;
    font-weight: 500 !important;
}

body.angaza-app-shell .form-control:focus,
body.angaza-app-shell .form-select:focus,
body.angaza-app-shell input[type="search"]:focus,
body.angaza-app-shell textarea:focus {
    border-color: rgba(217, 154, 43, 0.72) !important;
    box-shadow: 0 0 0 0.18rem rgba(217, 154, 43, 0.14) !important;
}

body.angaza-app-shell .form-check-input:checked {
    border-color: var(--ad-gold) !important;
    background-color: var(--ad-gold) !important;
}

/* Standard responsive tables */
body.angaza-app-shell .table-container,
body.angaza-app-shell .table-responsive,
body.angaza-app-shell .ads-table-responsive,
body.angaza-app-shell .access-table-wrap {
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: var(--ad-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--ad-shadow) !important;
}

body.angaza-app-shell .table-container {
    padding: 0 !important;
}

body.angaza-app-shell .table-responsive::-webkit-scrollbar,
body.angaza-app-shell .table-container::-webkit-scrollbar,
body.angaza-app-shell .ads-table-responsive::-webkit-scrollbar {
    height: 10px !important;
}

body.angaza-app-shell .table-responsive::-webkit-scrollbar-track,
body.angaza-app-shell .table-container::-webkit-scrollbar-track,
body.angaza-app-shell .ads-table-responsive::-webkit-scrollbar-track {
    background: #edf2f7 !important;
    border-radius: 999px !important;
}

body.angaza-app-shell .table-responsive::-webkit-scrollbar-thumb,
body.angaza-app-shell .table-container::-webkit-scrollbar-thumb,
body.angaza-app-shell .ads-table-responsive::-webkit-scrollbar-thumb {
    background: rgba(6, 47, 63, 0.42) !important;
    border-radius: 999px !important;
}

body.angaza-app-shell table.table,
body.angaza-app-shell .table-responsive table,
body.angaza-app-shell .table-container table,
body.angaza-app-shell .ads-table-responsive table {
    width: 100% !important;
    min-width: 880px !important;
    margin-bottom: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

body.angaza-app-shell #stockTable {
    min-width: 1320px !important;
}

body.angaza-app-shell table.table thead th,
body.angaza-app-shell .table thead th,
body.angaza-app-shell #stockTable thead th,
body.angaza-app-shell #mediaTable thead th,
body.angaza-app-shell #companyTable thead th {
    padding: 0.9rem 0.85rem !important;
    border: 0 !important;
    border-right: 1px solid rgba(255, 255, 255, 0.10) !important;
    border-bottom: 3px solid var(--ad-gold) !important;
    color: #ffffff !important;
    background: #111111 !important;
    box-shadow: none !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
}

body.angaza-app-shell table.table thead th:first-child,
body.angaza-app-shell #stockTable thead th:first-child {
    border-top-left-radius: var(--ad-radius) !important;
}

body.angaza-app-shell table.table thead th:last-child,
body.angaza-app-shell #stockTable thead th:last-child {
    border-right: 0 !important;
    border-top-right-radius: var(--ad-radius) !important;
}

body.angaza-app-shell table.table tbody td,
body.angaza-app-shell #stockTable tbody td {
    padding: 0.82rem 0.85rem !important;
    border-color: #eef1f5 !important;
    color: #263645 !important;
    font-size: 0.88rem !important;
    font-weight: 550 !important;
    vertical-align: middle !important;
}

body.angaza-app-shell table.table tbody tr:nth-of-type(odd),
body.angaza-app-shell #stockTable tbody tr:nth-of-type(odd) {
    background-color: #fcfdff !important;
}

body.angaza-app-shell table.table tbody tr:nth-of-type(even),
body.angaza-app-shell #stockTable tbody tr:nth-of-type(even) {
    background-color: #ffffff !important;
}

body.angaza-app-shell table.table tbody tr:hover,
body.angaza-app-shell #stockTable tbody tr:hover {
    background: #fff8ea !important;
    box-shadow: inset 4px 0 0 var(--ad-gold) !important;
}

body.angaza-app-shell .dataTables_wrapper .row {
    row-gap: 12px !important;
}

body.angaza-app-shell .dataTables_wrapper .dataTables_filter input,
body.angaza-app-shell .dataTables_wrapper .form-select,
body.angaza-app-shell .dataTables_wrapper input[type="search"] {
    border-radius: var(--ad-radius) !important;
}

body.angaza-app-shell .dataTables_wrapper .dataTables_info,
body.angaza-app-shell .dataTables_wrapper .dataTables_length label,
body.angaza-app-shell .dataTables_wrapper .dataTables_filter label {
    color: var(--ad-muted) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
}

body.angaza-app-shell .page-link {
    min-height: 38px !important;
    color: var(--ad-navy) !important;
    border-color: var(--ad-border) !important;
    font-weight: 700 !important;
}

body.angaza-app-shell .page-item.active .page-link {
    border-color: var(--ad-navy) !important;
    color: #ffffff !important;
    background: var(--ad-navy) !important;
}

/* Badges and labels */
body.angaza-app-shell .badge,
body.angaza-app-shell .status-badge,
body.angaza-app-shell .section-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    border-radius: 999px !important;
    padding: 0.42rem 0.62rem !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    text-transform: none !important;
}

body.angaza-app-shell .bg-primary,
body.angaza-app-shell .badge.bg-primary {
    background-color: var(--ad-info) !important;
}

body.angaza-app-shell .bg-success,
body.angaza-app-shell .badge.bg-success,
body.angaza-app-shell .status-approved,
body.angaza-app-shell .status-active,
body.angaza-app-shell .status-paid,
body.angaza-app-shell .status-completed {
    color: #ffffff !important;
    background-color: var(--ad-success) !important;
}

body.angaza-app-shell .bg-warning,
body.angaza-app-shell .badge.bg-warning,
body.angaza-app-shell .status-pending,
body.angaza-app-shell .section-badge {
    color: var(--ad-navy-dark) !important;
    background-color: var(--ad-gold-light) !important;
}

body.angaza-app-shell .bg-danger,
body.angaza-app-shell .badge.bg-danger,
body.angaza-app-shell .status-rejected,
body.angaza-app-shell .status-failed,
body.angaza-app-shell .status-cancelled {
    color: #ffffff !important;
    background-color: var(--ad-danger) !important;
}

body.angaza-app-shell .text-warning {
    color: var(--ad-gold) !important;
}

/* Responsive */
@media (min-width: 1200px) {
    body.angaza-app-shell .sidebar-nav-wrapper {
        width: 245px !important;
    }

    body.angaza-app-shell .main-wrapper {
        margin-left: 245px !important;
    }
}

@media (max-width: 1199.98px) {
    body.angaza-app-shell .section {
        padding: 22px !important;
    }

    body.angaza-app-shell .dashboard-grid,
    body.angaza-app-shell .dashboard-tables-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 991.98px) {
    body.angaza-app-shell .header {
        min-height: 76px !important;
    }

    body.angaza-app-shell .angaza-header-shell {
        min-height: 76px !important;
    }

    body.angaza-app-shell .dashboard-hero,
    body.angaza-app-shell .angaza-page-hero,
    body.angaza-app-shell .page-header,
    body.angaza-app-shell .stock-hero-panel,
    body.angaza-app-shell .messages-hero,
    body.angaza-app-shell .compose-hero,
    body.angaza-app-shell .message-hero {
        align-items: stretch !important;
        flex-direction: column !important;
        padding: 22px !important;
    }

    body.angaza-app-shell .dashboard-date-card,
    body.angaza-app-shell .stock-hero-badge {
        width: 100% !important;
        text-align: left !important;
    }

    body.angaza-app-shell .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    body.angaza-app-shell .section {
        padding: 14px !important;
    }

    body.angaza-app-shell #menu-toggle.main-btn {
        width: 42px !important;
        padding: 0 !important;
    }

    body.angaza-app-shell .angaza-topbar-actions {
        gap: 8px !important;
    }

    body.angaza-app-shell .angaza-topbar-icon {
        width: 40px !important;
        height: 40px !important;
    }

    body.angaza-app-shell .profile-info {
        padding: 0.22rem !important;
    }

    body.angaza-app-shell .profile-info h6,
    body.angaza-app-shell .profile-info p {
        display: none !important;
    }

    body.angaza-app-shell .dashboard-hero h1,
    body.angaza-app-shell .angaza-page-hero h1,
    body.angaza-app-shell .stock-title,
    body.angaza-app-shell .messages-hero h1,
    body.angaza-app-shell .compose-hero h1 {
        font-size: 1.55rem !important;
    }

    body.angaza-app-shell .stats-grid,
    body.angaza-app-shell .quick-actions-grid,
    body.angaza-app-shell .module-grid,
    body.angaza-app-shell .angaza-stats-grid,
    body.angaza-app-shell .angaza-action-grid {
        grid-template-columns: 1fr !important;
    }

    body.angaza-app-shell table.table,
    body.angaza-app-shell .table-responsive table,
    body.angaza-app-shell .table-container table,
    body.angaza-app-shell .ads-table-responsive table {
        min-width: 760px !important;
    }

    body.angaza-app-shell #stockTable {
        min-width: 1120px !important;
    }

    body.angaza-app-shell .btn {
        white-space: normal !important;
    }
}

@media (max-width: 575.98px) {
    body.angaza-app-shell .header .container-fluid {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.angaza-app-shell .section {
        padding: 10px !important;
    }

    body.angaza-app-shell .dashboard-hero,
    body.angaza-app-shell .angaza-page-hero,
    body.angaza-app-shell .page-header,
    body.angaza-app-shell .stock-hero-panel,
    body.angaza-app-shell .messages-hero,
    body.angaza-app-shell .compose-hero,
    body.angaza-app-shell .message-hero {
        padding: 18px !important;
    }

    body.angaza-app-shell .topbar-mobile-search-panel {
        border-radius: var(--ad-radius) !important;
    }
}
