:root {
    --primary: #008c95;
    --primary-dark: #06656b;
    --primary-soft: #d9f3f3;
    --sidebar: #0b7b83;
    --bg: #f3f7f8;
    --surface: #ffffff;
    --surface-soft: #f8fbfc;
    --ink: #25313b;
    --muted: #687782;
    --line: #dfe8eb;
    --accent-coral: #e76f51;
    --accent-gold: #d99a19;
    --accent-indigo: #5568c9;
    --accent-green: #2a9d8f;
    --shadow: 0 14px 36px rgba(28, 55, 68, .10);
}

body {
    margin: 0;
    background:
        linear-gradient(135deg, rgba(0, 140, 149, .08), rgba(231, 111, 81, .05) 42%, rgba(85, 104, 201, .06)),
        var(--bg);
    color: var(--ink);
    font-size: 14px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.app-shell {
    display: flex;
    min-height: 100vh;
}

.sidebar {
    width: 260px;
    background:
        linear-gradient(180deg, #086a71 0%, #0b8b92 58%, #0f6970 100%);
    color: #fff;
    position: fixed;
    inset: 0 auto 0 0;
    overflow-y: auto;
    z-index: 1040;
    box-shadow: 18px 0 38px rgba(8, 84, 91, .18);
}

.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(4, 63, 68, .45);
    border-bottom: 1px solid rgba(255, 255, 255, .16);
    letter-spacing: .2px;
}

.menu {
    padding: 12px;
}

.menu a {
    color: #fff;
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 13px;
    border-radius: 8px;
    text-decoration: none;
    margin-bottom: 3px;
    border: 1px solid transparent;
    color: rgba(255, 255, 255, .92);
    transition: background .18s ease, transform .18s ease, border-color .18s ease;
}

.menu a:hover,
.menu a.active {
    background: rgba(255, 255, 255, .16);
    border-color: rgba(255, 255, 255, .20);
    transform: translateX(2px);
    color: #fff;
}

.menu a i {
    width: 18px;
    text-align: center;
}

.menu-label {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(0, 70, 76, .28);
    padding: 11px 12px;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    border-radius: 8px;
    margin-top: 8px;
    font-family: inherit;
    text-align: left;
    box-shadow: none;
    appearance: none;
    -webkit-appearance: none;
}

.menu-label:hover,
.menu-label:focus {
    background: rgba(255, 255, 255, .14);
    color: #ffffff;
    outline: none;
    border-color: rgba(255, 255, 255, .28);
}

.menu-label.open {
    background: rgba(255, 255, 255, .18);
    color: #ffffff;
    border-color: rgba(255, 255, 255, .32);
}

.menu-label .menu-plus::before {
    content: "+";
    font-size: 18px;
    line-height: 1;
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    border-radius: 6px;
    background: rgba(255, 255, 255, .20);
    color: #ffffff;
}

.menu-label.open .menu-plus::before {
    content: "-";
    background: rgba(255, 255, 255, .30);
    color: #ffffff;
}

.submenu {
    display: none;
    margin-bottom: 6px;
}

.submenu.open {
    display: block;
}

.app-main {
    margin-left: 260px;
    width: calc(100% - 260px);
    transition: margin-left .18s ease, width .18s ease;
}

.sidebar {
    transition: width .18s ease, transform .2s ease;
}

body.sidebar-collapsed .sidebar {
    width: 82px;
}

body.sidebar-collapsed .app-main {
    margin-left: 82px;
    width: calc(100% - 82px);
}

body.sidebar-collapsed .brand span,
body.sidebar-collapsed .menu a span,
body.sidebar-collapsed .menu-label span:first-child,
body.sidebar-collapsed .menu-plus {
    display: none;
}

body.sidebar-collapsed .brand {
    justify-content: center;
    padding: 20px 10px;
}

body.sidebar-collapsed .menu a {
    justify-content: center;
    padding: 12px 8px;
    font-size: 0;
}

body.sidebar-collapsed .menu a i {
    width: auto;
    font-size: 15px;
}

body.sidebar-collapsed .submenu {
    display: block !important;
}

body.sidebar-collapsed .menu-label {
    justify-content: center;
    padding: 8px;
    min-height: 12px;
    opacity: .45;
}

.topbar {
    background: rgba(255, 255, 255, .86);
    backdrop-filter: blur(14px);
    min-height: 68px;
    border-bottom: 1px solid rgba(223, 232, 235, .86);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 22px;
    position: sticky;
    top: 0;
    z-index: 100;
}

.topbar-title {
    font-size: 21px;
    font-weight: 700;
    color: #1c2f37;
}

.topbar-clock {
    color: var(--muted);
    font-size: 12px;
}

.topbar-user {
    display: flex;
    align-items: center;
    gap: 12px;
}

.notification-pill {
    background: var(--primary-soft);
    color: var(--primary);
    border-radius: 999px;
    padding: 7px 11px;
    font-weight: 700;
    border: 1px solid rgba(0, 140, 149, .16);
}

.content-wrap {
    padding: 26px;
    position: relative;
}

.content-wrap::before {
    content: "";
    position: fixed;
    inset: 68px 0 auto 260px;
    height: 180px;
    background: linear-gradient(90deg, rgba(0, 140, 149, .12), rgba(85, 104, 201, .08), rgba(231, 111, 81, .08));
    pointer-events: none;
    z-index: -1;
}

body.sidebar-collapsed .content-wrap::before {
    left: 82px;
}

.panel {
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(223, 232, 235, .95);
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 18px;
    box-shadow: var(--shadow);
    backdrop-filter: blur(10px);
}

.panel h2,
.panel h3,
.panel .h5,
.panel .h6 {
    color: #18343b;
    font-weight: 800;
}

.stat-card {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(248, 251, 252, .92));
    border: 1px solid rgba(223, 232, 235, .95);
    border-radius: 8px;
    padding: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 96px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow);
}

.stat-card-link {
    color: inherit;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.stat-card-link:hover {
    color: inherit;
    transform: translateY(-3px);
    border-color: rgba(0, 140, 149, .32);
    box-shadow: 0 18px 42px rgba(28, 55, 68, .15);
}

.stat-card-link:hover .label {
    color: var(--primary);
}

.stat-card-link::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 18px;
    bottom: 12px;
    color: rgba(0, 140, 149, .32);
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity .18s ease, transform .18s ease;
}

.stat-card-link:hover::after {
    opacity: 1;
    transform: translateX(0);
}

.stat-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: var(--primary);
}

.row > div:nth-child(4n + 2) .stat-card::before {
    background: var(--accent-coral);
}

.row > div:nth-child(4n + 3) .stat-card::before {
    background: var(--accent-indigo);
}

.row > div:nth-child(4n + 4) .stat-card::before {
    background: var(--accent-gold);
}

.stat-card i {
    color: #fff;
    background: var(--primary);
    font-size: 20px;
    width: 46px;
    height: 46px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    box-shadow: 0 10px 22px rgba(0, 140, 149, .24);
}

.row > div:nth-child(4n + 2) .stat-card i {
    background: var(--accent-coral);
    box-shadow: 0 10px 22px rgba(231, 111, 81, .22);
}

.row > div:nth-child(4n + 3) .stat-card i {
    background: var(--accent-indigo);
    box-shadow: 0 10px 22px rgba(85, 104, 201, .22);
}

.row > div:nth-child(4n + 4) .stat-card i {
    background: var(--accent-gold);
    box-shadow: 0 10px 22px rgba(217, 154, 25, .22);
}

.stat-card .number {
    font-size: 28px;
    font-weight: 800;
    color: #17282f;
}

.stat-card .label {
    color: var(--muted);
    font-weight: 600;
}

.btn-primary,
.bg-primary {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}

.btn-primary {
    box-shadow: 0 8px 18px rgba(0, 140, 149, .18);
}

.btn-primary:hover {
    background-color: var(--primary-dark) !important;
    border-color: var(--primary-dark) !important;
}

.btn-secondary,
.btn-dark {
    background-color: #2f3d46 !important;
    border-color: #2f3d46 !important;
}

.form-control,
.form-select {
    border-color: #d8e3e7;
    border-radius: 8px;
    min-height: 40px;
}

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

.form-label {
    color: #334650;
    font-weight: 650;
}

.required::after {
    content: " *";
    color: #dc3545;
}

.table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.table {
    --bs-table-striped-bg: #f7fbfb;
    border-color: var(--line);
}

.table thead th {
    background: linear-gradient(180deg, #eefafa, #e8f2f5);
    color: #254149;
    border-bottom: 1px solid #d5e6ea;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .35px;
}

.table tbody tr {
    vertical-align: middle;
}

.table-hover tbody tr:hover {
    --bs-table-bg: #eefafa;
}

.badge {
    font-weight: 700;
    letter-spacing: .2px;
}

.dataTables_wrapper .dt-buttons .btn {
    border-radius: 8px;
    background: #008c95 !important;
    border-color: #008c95 !important;
    color: #ffffff !important;
    font-weight: 700;
    margin-right: 4px;
    box-shadow: 0 8px 18px rgba(0, 140, 149, .18);
}

.dataTables_wrapper .dt-buttons .btn:hover {
    background: #06656b !important;
    border-color: #06656b !important;
    color: #ffffff !important;
}

.dataTables_wrapper .dt-buttons .btn:focus,
.dataTables_wrapper .dt-buttons .btn:active {
    background: #064f55 !important;
    border-color: #064f55 !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 .2rem rgba(0, 140, 149, .20);
}

.dataTables_filter input,
.dataTables_length select {
    border-radius: 8px;
    border-color: #d8e3e7;
}

.alert {
    border-radius: 8px;
    border-width: 1px;
    box-shadow: 0 8px 20px rgba(28, 55, 68, .08);
}

.permission-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 10px;
}

.permission-tile {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid #d8e3e7;
    border-radius: 8px;
    background: #f8fbfc;
    font-weight: 650;
}

.bulk-assign-bar {
    background: #f8fbfc;
    border: 1px solid #d8e3e7;
    border-radius: 8px;
    padding: 14px;
}

.list-action-toolbar {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    background: #eefafa;
    border: 1px solid #d2e6e9;
    border-radius: 8px;
    padding: 10px;
    overflow-x: auto;
    white-space: nowrap;
}

.combined-export-actions {
    display: flex !important;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap !important;
    margin-bottom: 12px;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 4px;
}

.dataTables_wrapper .dt-buttons.combined-export-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
}

.combined-export-actions .list-action-toolbar {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    margin: 0 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    width: auto !important;
    min-width: max-content;
}

#selectedActionToolbar.inline-selected-actions {
    order: 10;
}

.combined-export-actions .btn,
.combined-export-actions button,
.combined-export-actions form {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

.combined-export-actions .btn {
    padding: 7px 10px !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
}

.combined-export-actions .toolbar-title {
    font-size: 13px;
    margin-left: 4px;
}

.combined-export-actions .selected-tender-label {
    margin-left: 4px !important;
    font-size: 12px;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

.combined-export-actions .inline-table-search {
    margin-left: auto !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

.combined-export-actions .inline-table-search label {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    font-weight: 700;
}

.combined-export-actions .inline-table-search input {
    width: 230px !important;
    min-height: 38px;
}

.dt-button-collection {
    border: 1px solid #d7e5ea !important;
    border-radius: 8px !important;
    box-shadow: 0 16px 36px rgba(20, 44, 58, 0.18) !important;
}

.dt-button-collection .dt-button {
    border: 0 !important;
    border-radius: 6px !important;
    color: #253642 !important;
    background: #ffffff !important;
    text-align: left !important;
}

.dt-button-collection .dt-button.active,
.dt-button-collection .dt-button:hover {
    color: #ffffff !important;
    background: #008c95 !important;
}

.dataTables_wrapper .dataTables_length {
    float: none !important;
    display: inline-flex;
    align-items: center;
    margin: 0 12px 12px 0;
    font-weight: 700;
}

.dataTables_wrapper .dataTables_length label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.dataTables_wrapper .dataTables_length select {
    width: auto;
    min-width: 74px;
    border: 1px solid #d7e5ea;
    border-radius: 6px;
    padding: 6px 28px 6px 10px;
}

.tender-compact-table {
    table-layout: fixed;
    width: 100% !important;
    max-width: 100% !important;
}

.tender-compact-table th,
.tender-compact-table td {
    padding: 7px 8px !important;
    vertical-align: middle !important;
    word-break: normal;
    font-size: 13px;
}

.tender-compact-table th {
    white-space: nowrap;
    font-size: 12px;
}

.tender-compact-table th.no-sort {
    background-image: none !important;
    cursor: default !important;
}

.tender-compact-table th.no-sort::before,
.tender-compact-table th.no-sort::after {
    display: none !important;
    content: none !important;
}

.tender-compact-table th:nth-child(1),
.tender-compact-table td:nth-child(1) {
    width: 3% !important;
    text-align: center;
}

.tender-compact-table th:nth-child(2),
.tender-compact-table td:nth-child(2) {
    width: 4% !important;
    text-align: center;
}

.tender-compact-table th:nth-child(3),
.tender-compact-table td:nth-child(3) {
    width: 14% !important;
    white-space: nowrap;
}

.tender-compact-table th:nth-child(4),
.tender-compact-table td:nth-child(4) {
    width: 9% !important;
    white-space: nowrap;
}

.tender-compact-table th:nth-child(5),
.tender-compact-table td:nth-child(5) {
    width: 22% !important;
    white-space: nowrap;
}

.tender-compact-table th:nth-child(6),
.tender-compact-table td:nth-child(6) {
    width: 22% !important;
    white-space: nowrap;
}

.tender-compact-table th:nth-child(7),
.tender-compact-table td:nth-child(7) {
    width: 16% !important;
    text-align: center;
    white-space: nowrap;
}

.tender-compact-table th:nth-child(8),
.tender-compact-table td:nth-child(8) {
    width: 10% !important;
    text-align: center;
    white-space: nowrap;
}

.tender-compact-table td:nth-child(3),
.tender-compact-table td:nth-child(5),
.tender-compact-table td:nth-child(6),
.tender-compact-table td:nth-child(8) {
    overflow: hidden;
    text-overflow: ellipsis;
}

.tender-compact-table .badge,
.tender-compact-table .status-badge {
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 11px;
    padding: 5px 8px;
}

.no-horizontal-scroll {
    overflow-x: visible;
}

@media (max-width: 1199px) {
    .combined-export-actions {
        overflow-x: auto;
    }

    .combined-export-actions .inline-table-search {
        margin-left: 8px !important;
    }
}

/* Force selected action toolbar into a compact single line */
.panel > .list-action-toolbar.mb-3 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    width: 100% !important;
}

.panel > .list-action-toolbar.mb-3 .toolbar-title,
.panel > .list-action-toolbar.mb-3 .selected-tender-label,
.panel > .list-action-toolbar.mb-3 button,
.panel > .list-action-toolbar.mb-3 form {
    display: inline-flex !important;
    align-items: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    width: auto !important;
    flex: 0 0 auto !important;
}

.panel > .list-action-toolbar.mb-3 .selected-tender-label {
    margin-left: 8px !important;
}

.dt-selected-actions {
    margin: 10px 0 14px;
}

.toolbar-title {
    font-weight: 800;
    color: #18343b;
    margin-right: 6px;
}

.selected-tender-label {
    color: #5d6d78;
    font-weight: 650;
    margin-left: auto;
    white-space: nowrap;
}

.list-action-toolbar form {
    display: inline-flex;
    margin: 0;
}

.list-action-toolbar .btn {
    flex: 0 0 auto;
}

.tender-cursor-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.cursor-spacer {
    flex: 1;
}

@media (max-width: 767px) {
    .tender-cursor-bar {
        flex-wrap: wrap;
    }

    .list-action-toolbar {
        flex-wrap: wrap;
        white-space: normal;
    }

    .cursor-spacer {
        display: none;
    }
}

.kpi-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; }
.kpi-chip { display:flex; align-items:center; gap:12px; border:1px solid #cfe2e5; background:#fff; padding:14px; border-radius:8px; box-shadow:0 4px 14px rgba(25,65,72,.05); }
.kpi-chip i { width:34px; height:34px; display:grid; place-items:center; color:#fff; background:#008c95; border-radius:7px; }
.kpi-chip strong,.kpi-chip span { display:block; }
.kpi-chip strong { font-size:21px; color:#243740; }
.kpi-chip span { font-size:12px; font-weight:700; color:#667981; }
.leader-grid { display:grid; gap:8px; }
.leader-row { display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; padding:10px 12px; background:#f3f9f9; border-left:4px solid #008c95; }
.leader-row span { color:#008c95; font-weight:800; }
.clarification-inline { display:grid; grid-template-columns:120px 105px minmax(150px,1fr) 180px auto; gap:6px; min-width:760px; }

/* BidHive v1.1 dashboard experience */
body { background:#f3f7f8; }
.sidebar { background:#075f63; box-shadow:10px 0 28px rgba(7,55,59,.13); }
.brand { background:#064f53; }
.topbar { background:rgba(255,255,255,.96); backdrop-filter:blur(10px); }
.content-wrap::before { display:none; }
.content-wrap { max-width:1800px; margin:0 auto; }
.panel { box-shadow:0 5px 18px rgba(29,61,70,.06); background:#fff; }

.dashboard-welcome { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; padding:2px 2px 4px; }
.dashboard-welcome h1 { margin:2px 0 3px; font-size:24px; line-height:1.2; font-weight:800; letter-spacing:0; color:#17363d; }
.dashboard-welcome p { margin:0; color:#6a7c83; }
.eyebrow { display:block; color:#008c95; font-size:10px; line-height:1.2; font-weight:800; letter-spacing:.8px; }

.dashboard-metric-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.metric-card { display:grid; grid-template-columns:42px minmax(0,1fr) 16px; align-items:center; gap:11px; min-height:86px; padding:14px; color:#25343b; text-decoration:none; background:#fff; border:1px solid #dce7e9; border-top:3px solid #8aa0a6; border-radius:7px; box-shadow:0 4px 14px rgba(29,61,70,.05); transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.metric-card:hover { color:#25343b; transform:translateY(-2px); border-color:#9bcdd0; box-shadow:0 8px 20px rgba(29,61,70,.09); }
.metric-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:7px; background:#eef4f5; color:#536a72; font-size:17px; }
.metric-card strong,.metric-card span { display:block; }
.metric-card strong { font-size:23px; line-height:1.05; font-weight:800; }
.metric-card span { margin-top:4px; color:#687a81; font-size:11px; font-weight:700; }
.metric-arrow { color:#b0c0c4; font-size:10px; }
.metric-success { border-top-color:#32a06f; }.metric-success .metric-icon { color:#21845a;background:#eaf7f0; }
.metric-danger { border-top-color:#d84c4c; }.metric-danger .metric-icon { color:#c53f3f;background:#fceeee; }
.metric-warning { border-top-color:#d99a19; }.metric-warning .metric-icon { color:#b97a00;background:#fff7e5; }
.metric-info { border-top-color:#3586c4; }.metric-info .metric-icon { color:#2774ad;background:#edf6fc; }

.dashboard-panel { height:calc(100% - 18px); padding:16px; }
.panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:13px; }
.panel-heading h2 { margin:2px 0 0; font-size:15px; line-height:1.25; font-weight:800; letter-spacing:0; }
.panel-heading > a { color:#008c95; font-size:11px; font-weight:700; text-decoration:none; white-space:nowrap; }
.operation-table { margin-bottom:0; }
.operation-table thead th,.compact-table thead th { background:#f2f7f8; font-size:10px; }
.operation-table td { padding-top:10px; padding-bottom:10px; }
.operation-table td strong,.operation-table td small,.compact-table td strong,.compact-table td small { display:block; }
.operation-table td small,.compact-table td small { max-width:250px; margin-top:2px; color:#7a898e; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.priority-tag { display:inline-flex; align-items:center; gap:4px; font-size:10px; font-weight:800; }
.priority-urgent,.priority-high { color:#c93e3e; }.priority-medium { color:#c17b00; }.priority-low { color:#3477ad; }
.soft-status { display:inline-block; padding:4px 7px; border-radius:5px; background:#eaf6f7; color:#08777d; font-size:10px; font-weight:800; text-transform:capitalize; white-space:nowrap; }
.icon-action { width:30px; height:30px; display:inline-grid; place-items:center; border:1px solid #cfe0e3; border-radius:6px; color:#008c95; text-decoration:none; background:#fff; }
.icon-action:hover { background:#008c95; border-color:#008c95; color:#fff; }
.empty-state { padding:22px!important; color:#829197!important; text-align:center; }

.mini-bars { display:flex; align-items:flex-end; justify-content:space-between; height:180px; padding:12px 4px 0; }
.mini-bar { width:12%; height:100%; display:grid; grid-template-rows:18px 1fr 20px; align-items:end; text-align:center; }
.mini-bar .bar-value { font-size:10px; font-weight:800; color:#53656c; }
.mini-bar > div { height:100%; display:flex; align-items:flex-end; justify-content:center; background:#f1f6f7; border-radius:4px 4px 0 0; overflow:hidden; }
.mini-bar i { display:block; width:55%; min-height:6px; background:#008c95; border-radius:3px 3px 0 0; }
.mini-bar small { padding-top:5px; color:#7a898e; font-size:9px; }

.compact-feed { display:grid; gap:2px; }
.compact-feed > a { display:grid; grid-template-columns:34px minmax(0,1fr); gap:9px; align-items:center; padding:9px 3px; border-bottom:1px solid #edf2f3; color:#263940; text-decoration:none; }
.compact-feed > a:last-child { border-bottom:0; }
.compact-feed strong,.compact-feed small { display:block; }
.compact-feed strong { font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.compact-feed small { margin-top:3px; color:#798a90; font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.feed-icon,.feed-avatar { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; font-size:11px; font-weight:800; }
.feed-icon.warning { color:#b57700; background:#fff3d7; }.feed-avatar { color:#fff; background:#087f83; }

.firm-bars,.workload-bars { display:grid; gap:11px; }
.firm-bars > div,.workload-bars > div { display:grid; grid-template-columns:minmax(80px,120px) minmax(80px,1fr) 26px; align-items:center; gap:8px; font-size:10px; }
.firm-bars span,.workload-bars span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
.firm-bars > div > div,.workload-bars > div > div { height:8px; border-radius:6px; background:#eaf1f2; overflow:hidden; }
.firm-bars i,.workload-bars i { display:block; height:100%; border-radius:inherit; background:#008c95; }
.firm-bars b,.workload-bars b { text-align:right; }

.risk-list { display:grid; gap:8px; }
.risk-list a { display:grid; grid-template-columns:10px 1fr auto; align-items:center; gap:8px; padding:11px; border:1px solid #e1eaec; border-radius:6px; color:#33484f; text-decoration:none; }
.risk-list i { width:8px; height:8px; border-radius:50%; background:#7d9399; }
.risk-list span { font-size:11px; font-weight:700; }.risk-list strong { font-size:16px; }
.risk-list .risk-today i { background:#e0a019; }.risk-list .risk-soon i { background:#ed7b38; }.risk-list .risk-overdue i { background:#d84c4c; }

.quick-action-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.quick-action-grid > a { display:flex; align-items:center; gap:13px; padding:15px; border:1px solid #d9e6e8; border-radius:7px; background:#fff; color:#263940; text-decoration:none; box-shadow:0 4px 14px rgba(29,61,70,.04); }
.quick-action-grid > a > i { width:38px; height:38px; display:grid; place-items:center; color:#008c95; background:#eaf7f7; border-radius:7px; font-size:17px; }
.quick-action-grid strong,.quick-action-grid span { display:block; }.quick-action-grid strong { font-size:12px; }.quick-action-grid span { margin-top:3px; color:#77888e; font-size:10px; }

@media (max-width:1199px) { .dashboard-metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:767px) {
 .dashboard-welcome { align-items:flex-start; flex-direction:column; }.dashboard-welcome h1 { font-size:21px; }
 .dashboard-metric-grid { grid-template-columns:1fr 1fr; }.metric-card { grid-template-columns:36px minmax(0,1fr); }.metric-arrow { display:none; }
 .quick-action-grid { grid-template-columns:1fr; }.content-wrap { padding:16px; }
}
@media (max-width:480px) { .dashboard-metric-grid { grid-template-columns:1fr; } }

/* Compact admin summary tiles */
.summary-card-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.summary-card { position:relative; display:grid; grid-template-columns:34px minmax(0,1fr) 10px; align-items:center; gap:9px; min-height:70px; padding:11px 12px; color:#263940; text-decoration:none; background:#fff; border:1px solid #dce7e9; border-radius:7px; box-shadow:0 3px 11px rgba(29,61,70,.045); overflow:hidden; transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease; }
.summary-card::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:#00969d; }
.summary-card:nth-child(4n+2)::before { background:#e76f51; }.summary-card:nth-child(4n+3)::before { background:#5568c9; }.summary-card:nth-child(4n+4)::before { background:#d99a19; }
.summary-card:hover { color:#263940; transform:translateY(-1px); border-color:#a9d2d5; box-shadow:0 6px 16px rgba(29,61,70,.08); }
.summary-icon { width:32px; height:32px; display:grid; place-items:center; border-radius:6px; color:#008c95; background:#eaf7f7; font-size:14px; }
.summary-card:nth-child(4n+2) .summary-icon { color:#d85e42;background:#fff0eb; }.summary-card:nth-child(4n+3) .summary-icon { color:#4f62c5;background:#eef0ff; }.summary-card:nth-child(4n+4) .summary-icon { color:#bc8008;background:#fff6df; }
.summary-copy { min-width:0; }.summary-copy strong,.summary-copy small { display:block; }.summary-copy strong { font-size:19px; line-height:1; font-weight:800; color:#172e35; }.summary-copy small { margin-top:5px; color:#667a81; font-size:10px; line-height:1.2; font-weight:750; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.summary-arrow { color:#b7c5c8; font-size:8px; }
.dashboard-metric-grid { gap:10px; }.metric-card { min-height:70px; padding:10px 12px; grid-template-columns:34px minmax(0,1fr) 12px; }.metric-icon { width:32px; height:32px; font-size:14px; }.metric-card strong { font-size:19px; }.metric-card span { font-size:10px; }

@media (max-width:1450px) { .summary-card-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:991px) { .summary-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:600px) { .summary-card-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:380px) { .summary-card-grid { grid-template-columns:1fr; } }

.submission-checklist { display:grid; gap:7px; }
.checklist-row { display:grid; grid-template-columns:minmax(220px,1fr) minmax(160px,260px) auto; align-items:center; gap:8px; padding:9px 10px; border:1px solid #e0e9eb; border-radius:6px; background:#f9fbfc; }
.checklist-row label { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; }
.notification-filters { display:grid; grid-template-columns:repeat(3,minmax(140px,220px)) auto auto; gap:8px; align-items:center; padding:12px; }
.notification-item { position:relative; border-left:4px solid #9aabb0; }
.notification-item.priority-high { border-left-color:#db9412; }.notification-item.priority-urgent { border-left-color:#d74343; }.notification-item.priority-low { border-left-color:#4d8fc2; }
.notification-actions { display:flex; align-items:center; gap:5px; margin-top:8px; }.notification-actions form { margin:0; }
.backup-health-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:16px; }
.backup-health-grid > div { display:flex; align-items:center; gap:10px; padding:13px; border:1px solid #dce7e9; border-radius:7px; background:#fff; }
.backup-health-grid i { width:34px;height:34px;display:grid;place-items:center;border-radius:6px;background:#eaf7f7;color:#008c95; }
.backup-health-grid span,.backup-health-grid strong { display:block; }.backup-health-grid span { color:#718188;font-size:10px;font-weight:700; }.backup-health-grid strong { margin-top:3px;color:#21383f;font-size:14px; }

@media (max-width:767px) {
 .topbar { min-height:58px; padding:8px 12px; }.topbar-title { font-size:17px; }.topbar-user { gap:6px; }.topbar-user > span { display:none; }.notification-pill { padding:5px 8px; }
 .panel { padding:13px; margin-bottom:12px; }.table-responsive { border:0; }.operation-table { min-width:720px; }
 .checklist-row { grid-template-columns:1fr; }.notification-filters { grid-template-columns:1fr 1fr; }.backup-health-grid { grid-template-columns:1fr 1fr; }
 .dashboard-panel { height:auto; }.quick-action-grid > a { padding:12px; }
}
@media (max-width:480px) { .notification-filters,.backup-health-grid { grid-template-columns:1fr; } }

/* BidHive SaaS foundation */
.brand span { min-width:0; }.brand small { display:inline-block; margin-left:4px; font-size:9px; opacity:.72; }.brand em { display:block; max-width:165px; margin-top:2px; color:rgba(255,255,255,.68); font-size:9px; font-style:normal; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.workspace-chip { display:inline-flex; align-items:center; gap:6px; max-width:220px; padding:6px 9px; border:1px solid #d5e4e6; border-radius:6px; background:#f6fafb; color:#496067; font-size:11px; font-weight:750; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.platform-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; padding:19px 20px; color:#fff; background:#075f63; border-radius:8px; box-shadow:0 8px 22px rgba(7,78,82,.16); }
.platform-hero h1 { margin:3px 0 4px; color:#fff; font-size:23px; font-weight:800; letter-spacing:0; }.platform-hero p { margin:0; color:rgba(255,255,255,.72); }.platform-hero .eyebrow { color:#8ee0da; }
.platform-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:16px; }.platform-metrics > div { display:flex; align-items:center; gap:11px; padding:14px; border:1px solid #dce7e9; border-radius:7px; background:#fff; }.platform-metrics i { width:36px;height:36px;display:grid;place-items:center;border-radius:7px;background:#eaf7f7;color:#008c95; }.platform-metrics span,.platform-metrics strong { display:block; }.platform-metrics span { color:#6c7d83;font-size:10px;font-weight:750; }.platform-metrics strong { margin-top:2px;color:#19353c;font-size:20px; }
.tenant-status { display:inline-flex; align-items:center; padding:4px 7px; border-radius:5px; font-size:9px; font-weight:800; text-transform:uppercase; }.tenant-active,.tenant-trial { color:#187650;background:#e7f6ed; }.tenant-provisioning { color:#956400;background:#fff4d8; }.tenant-suspended,.tenant-cancelled { color:#a43e3e;background:#fdeaea; }
.readiness-list { display:grid; gap:8px; }.readiness-list > div { display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #e3eaec;border-radius:6px;color:#78898f;font-size:11px;font-weight:700; }.readiness-list i { width:22px;text-align:center; }.readiness-list .done { color:#1f7c58;background:#eff9f3; }.readiness-list .current { color:#087c82;background:#edf8f8;border-color:#bfe1e3; }.platform-notice { display:flex;gap:10px;margin-top:13px;padding:11px;border-left:3px solid #d99a19;background:#fff8e8;color:#6f5a27; }.platform-notice p { margin:0;font-size:10px;line-height:1.45; }
.workspace-layout { display:grid; grid-template-columns:minmax(520px,.9fr) minmax(480px,1.1fr); gap:16px; align-items:start; }.workspace-form,.workspace-list { margin:0; }.count-pill { padding:5px 8px;border-radius:5px;background:#eaf6f7;color:#087a80;font-size:10px;font-weight:800; }.tenant-cards { display:grid;gap:9px;max-height:720px;overflow:auto;padding-right:3px; }.tenant-card { padding:12px;border:1px solid #dce7e9;border-radius:7px;background:#fff; }.tenant-card-head { display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px; }.tenant-avatar { width:38px;height:38px;display:grid;place-items:center;border-radius:7px;background:#075f63;color:#fff;font-size:12px;font-weight:800; }.tenant-card-head strong,.tenant-card-head small { display:block; }.tenant-card-head strong { color:#213a41;font-size:12px; }.tenant-card-head small { margin-top:2px;color:#849297;font-size:9px; }.tenant-card-meta { display:flex;flex-wrap:wrap;gap:14px;margin:11px 0;padding:9px 0;border-top:1px solid #eef2f3;border-bottom:1px solid #eef2f3; }.tenant-card-meta span { display:flex;align-items:center;gap:5px;color:#60747b;font-size:9px;font-weight:700; }.tenant-card-meta i { color:#008c95; }.tenant-card-foot { display:flex;align-items:center;justify-content:space-between;gap:10px; }.tenant-card-foot small { color:#75868c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }

.auth-page { min-height:100vh; display:grid; place-items:center; padding:24px; background:#edf4f5; }.auth-shell { width:min(880px,100%); min-height:500px; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; border:1px solid #d6e3e5; border-radius:8px; background:#fff; box-shadow:0 24px 60px rgba(25,61,68,.15); }.auth-brand { display:flex;flex-direction:column;justify-content:center;padding:48px;background:#075f63;color:#fff; }.auth-logo { width:48px;height:48px;display:grid;place-items:center;margin-bottom:22px;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:rgba(255,255,255,.1);font-size:21px; }.auth-brand .eyebrow { color:#8ee0da; }.auth-brand h1 { max-width:320px;margin:7px 0 10px;color:#fff;font-size:30px;line-height:1.15;font-weight:800;letter-spacing:0; }.auth-brand p { max-width:320px;color:rgba(255,255,255,.72);line-height:1.6; }.auth-trust { display:grid;gap:9px;margin-top:32px; }.auth-trust span { display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.76);font-size:10px;font-weight:700; }.auth-trust i { width:16px;color:#8ee0da; }.auth-card { align-self:center;padding:48px; }.auth-card-head { display:flex;align-items:center;gap:12px;margin-bottom:28px; }.auth-card-head h2 { margin:0;color:#19353c;font-size:22px;font-weight:800; }.auth-card-head p { margin:3px 0 0;color:#75868c;font-size:11px; }.auth-mobile-logo { display:none; }.auth-submit { display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px; }

@media(max-width:1100px){.workspace-layout{grid-template-columns:1fr}.tenant-cards{max-height:none}.platform-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.workspace-chip{display:none}.platform-hero{align-items:flex-start;flex-direction:column}.platform-metrics{grid-template-columns:1fr 1fr}.auth-page{padding:12px}.auth-shell{min-height:auto;grid-template-columns:1fr}.auth-brand{display:none}.auth-card{padding:30px 24px}.auth-mobile-logo{width:38px;height:38px;display:grid;place-items:center;border-radius:7px;background:#075f63;color:#fff}.tenant-card-meta{gap:9px}}
@media(max-width:460px){.platform-metrics{grid-template-columns:1fr}.workspace-layout{display:block}.tenant-card-head{grid-template-columns:34px minmax(0,1fr)}.tenant-card-head .tenant-status{grid-column:2}.auth-card{padding:25px 18px}}

.topbar .btn-dark {
    border-radius: 8px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
}

.brand i {
    background: rgba(255, 255, 255, .18);
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 8px;
}

.brand small {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    font-weight: 700;
    opacity: .78;
}

body > .panel {
    border-top: 5px solid var(--primary);
}

body.d-flex {
    background:
        linear-gradient(145deg, rgba(0, 140, 149, .18), rgba(85, 104, 201, .10) 48%, rgba(231, 111, 81, .12)),
        #f3f7f8;
}

@media (max-width: 991px) {
    .sidebar {
        transform: translateX(-100%);
        transition: transform .2s ease;
    }

    .sidebar.show {
        transform: translateX(0);
    }

    .app-main {
        margin-left: 0;
        width: 100%;
    }

    .content-wrap::before {
        left: 0;
    }
}

/* Sidebar accordion readability override */
.sidebar .menu .menu-label,
.sidebar .menu button.menu-label,
.sidebar .menu div.menu-label,
.sidebar .menu .menu-label:visited {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    background: #064f55 !important;
    background-color: #064f55 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, .28) !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .12) !important;
    text-shadow: none !important;
}

.sidebar .menu .menu-label:hover,
.sidebar .menu .menu-label:focus,
.sidebar .menu .menu-label:active,
.sidebar .menu .menu-label.open {
    background: #0a767d !important;
    background-color: #0a767d !important;
    color: #ffffff !important;
    outline: none !important;
}

.sidebar .menu .menu-label span,
.sidebar .menu .menu-label .menu-plus,
.sidebar .menu .menu-label .menu-plus::before {
    color: #ffffff !important;
    opacity: 1 !important;
}

.report-chart-panel {
    min-height: 390px;
}

.report-chart-panel canvas {
    min-height: 310px;
    max-height: 330px;
}

.report-total-pill {
    background: rgba(0, 140, 149, .12);
    border: 1px solid rgba(0, 140, 149, .22);
    color: #006b72;
    border-radius: 999px;
    font-weight: 800;
    padding: 8px 14px;
    white-space: nowrap;
}

.empty-chart-state {
    min-height: 300px;
    display: grid;
    place-items: center;
    color: #6b7785;
    background: #f6fafb;
    border: 1px dashed #d7e5ea;
    border-radius: 8px;
}

.infographic-panel {
    min-height: 220px;
}

.workflow-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.workflow-node {
    min-height: 126px;
    border: 1px solid #d7e5ea;
    border-radius: 8px;
    background: linear-gradient(180deg, #ffffff, #f4fbfc);
    display: grid;
    place-items: center;
    text-align: center;
    padding: 14px 8px;
}

.workflow-node i {
    color: #008c95;
    font-size: 24px;
}

.workflow-node strong {
    font-size: 28px;
    line-height: 1;
    color: #263640;
}

.workflow-node span {
    color: #667481;
    font-weight: 700;
    font-size: 13px;
}

.status-bars {
    display: grid;
    gap: 10px;
}

.status-bar-row {
    display: grid;
    grid-template-columns: minmax(110px, 180px) 1fr 36px;
    align-items: center;
    gap: 10px;
}

.status-bar-label {
    color: #34444f;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.status-bar-track {
    height: 14px;
    background: #edf5f6;
    border-radius: 999px;
    overflow: hidden;
}

.status-bar-track span {
    display: block;
    height: 100%;
    border-radius: inherit;
}

.note-timeline {
    display: grid;
    gap: 10px;
}

.note-item {
    border: 1px solid #d7e5ea;
    border-radius: 8px;
    background: #fbfefe;
    padding: 12px;
}

.note-meta {
    color: #6b7785;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 6px;
}

.notification-list {
    display: grid;
    gap: 10px;
}

.notification-item {
    border: 1px solid #d7e5ea;
    border-radius: 8px;
    background: #ffffff;
    padding: 12px 14px;
}

.notification-item.unread {
    border-color: rgba(0, 140, 149, .35);
    background: #f0fbfc;
}

@media (max-width: 767px) {
    .workflow-strip {
        grid-template-columns: repeat(2, 1fr);
    }

    .status-bar-row {
        grid-template-columns: 1fr 36px;
    }

    .status-bar-label {
        grid-column: 1 / -1;
    }
}

/* BidHive v2 professional dashboard polish */
.content-wrap {
    padding-top: 22px;
}

.dashboard-welcome {
    align-items: center;
    padding: 18px 20px;
    border: 1px solid rgba(213, 231, 234, .9);
    border-radius: 10px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(241, 250, 251, .92)),
        #ffffff;
    box-shadow: 0 10px 28px rgba(31, 64, 72, .08);
}

.dashboard-welcome h1 {
    font-size: 22px;
}

.dashboard-welcome .btn {
    border-radius: 8px;
    font-weight: 750;
}

.dashboard-metric-grid,
.summary-card-grid {
    gap: 9px;
}

.metric-card,
.summary-card {
    border-radius: 9px;
    box-shadow: 0 8px 22px rgba(31, 64, 72, .065);
}

.metric-card {
    min-height: 64px;
    padding: 10px 11px;
    border-top-width: 0;
}

.metric-card::before {
    content: "";
    width: 4px;
    align-self: stretch;
    border-radius: 99px;
    background: #8aa0a6;
    grid-column: 1;
    grid-row: 1;
    margin-right: -2px;
}

.metric-card {
    grid-template-columns: 5px 32px minmax(0, 1fr) 10px;
}

.metric-card .metric-icon {
    grid-column: 2;
}

.metric-card > div:not(.metric-icon) {
    grid-column: 3;
}

.metric-card .metric-arrow {
    grid-column: 4;
}

.metric-success::before { background: #32a06f; }
.metric-danger::before { background: #d84c4c; }
.metric-warning::before { background: #d99a19; }
.metric-info::before { background: #3586c4; }
.metric-neutral::before { background: #008c95; }

.summary-card {
    min-height: 62px;
    padding: 9px 11px;
    grid-template-columns: 30px minmax(0,1fr) 8px;
}

.summary-icon {
    width: 28px;
    height: 28px;
    font-size: 12px;
}

.summary-copy strong {
    font-size: 17px;
}

.summary-copy small {
    font-size: 9px;
}

.dashboard-insight-grid {
    display: grid;
    grid-template-columns: minmax(280px, 1.2fr) minmax(250px, .9fr) minmax(250px, .9fr);
    gap: 12px;
}

.dashboard-insight-grid .panel {
    margin-bottom: 0;
}

.insight-hero {
    min-height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    color: #ffffff;
    background:
        linear-gradient(135deg, rgba(0, 140, 149, .96), rgba(12, 94, 107, .98) 58%, rgba(43, 62, 82, .96)),
        #075f63;
    border: 0;
    box-shadow: 0 16px 34px rgba(0, 89, 96, .18);
}

.insight-hero .eyebrow,
.insight-hero h2 {
    color: #ffffff;
}

.insight-hero h2 {
    margin: 6px 0;
    font-size: 28px;
    line-height: 1.1;
}

.insight-hero p {
    max-width: 560px;
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-weight: 600;
}

.insight-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.insight-actions a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border: 1px solid rgba(255, 255, 255, .26);
    border-radius: 7px;
    color: #ffffff;
    background: rgba(255, 255, 255, .12);
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
}

.insight-actions a:hover {
    background: rgba(255, 255, 255, .2);
}

.staff-focus {
    background:
        linear-gradient(135deg, rgba(85, 104, 201, .96), rgba(0, 140, 149, .96)),
        #5568c9;
}

.insight-chart {
    min-height: 210px;
    padding: 14px;
}

.insight-chart canvas {
    width: 100% !important;
    height: 145px !important;
}

.panel-heading {
    margin-bottom: 9px;
}

.panel-heading h2 {
    font-size: 14px;
}

.dashboard-panel {
    border-radius: 10px;
}

.operation-table td,
.compact-table td {
    font-size: 12px;
}

.leader-grid {
    display: grid;
    gap: 8px;
}

.leader-row {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 1px solid #e3ecef;
    border-radius: 8px;
    background: #fbfefe;
}

.leader-row span {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 7px;
    background: #eaf7f7;
    color: #008c95;
    font-weight: 900;
}

.leader-row strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.leader-row b {
    color: #586b72;
    font-size: 11px;
}

@media (max-width: 1350px) {
    .dashboard-insight-grid {
        grid-template-columns: 1fr 1fr;
    }

    .insight-hero {
        grid-column: 1 / -1;
        min-height: 170px;
    }
}

@media (max-width: 991px) {
    .dashboard-insight-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-welcome {
        align-items: flex-start;
        flex-direction: column;
    }

    .insight-hero,
    .insight-chart {
        min-height: auto;
    }
}

@media (max-width: 600px) {
    .dashboard-welcome {
        padding: 14px;
    }

    .dashboard-welcome .d-flex {
        width: 100%;
        flex-direction: column;
    }

    .dashboard-welcome .btn {
        width: 100%;
    }
}

/* System health center */
.health-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.health-summary {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px solid #dce7e9;
    border-radius: 9px;
    background: #ffffff;
    box-shadow: 0 8px 22px rgba(31, 64, 72, .06);
}

.health-summary i {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #eaf7f7;
    color: #008c95;
}

.health-summary.ok i {
    background: #eaf7f0;
    color: #21845a;
}

.health-summary.bad i {
    background: #fff3d7;
    color: #b57700;
}

.health-summary span,
.health-summary strong {
    display: block;
}

.health-summary span {
    min-width: 0;
    color: #667a81;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.health-summary strong {
    margin-top: 3px;
    color: #18343b;
    font-size: 18px;
    line-height: 1.1;
    text-transform: none;
}

.health-panel {
    border-radius: 10px;
}

.health-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.health-list.compact {
    grid-template-columns: 1fr;
}

.health-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 10px;
    align-items: center;
    padding: 10px 11px;
    border: 1px solid #e0eaed;
    border-left: 4px solid #9fb1b7;
    border-radius: 8px;
    background: #fbfefe;
}

.health-item.ok {
    border-left-color: #2a9d8f;
}

.health-item.bad {
    border-left-color: #d99a19;
    background: #fffaf0;
}

.health-item span {
    min-width: 0;
    color: #263940;
    font-size: 12px;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.health-item strong {
    padding: 4px 7px;
    border-radius: 999px;
    background: #eaf7f7;
    color: #08777d;
    font-size: 10px;
    line-height: 1;
    white-space: nowrap;
}

.health-item.bad strong {
    background: #fff0d5;
    color: #9a6200;
}

.health-item small {
    grid-column: 1 / -1;
    min-width: 0;
    color: #75868c;
    font-size: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .health-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .health-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .health-summary-grid {
        grid-template-columns: 1fr;
    }
}

/* Clarification inbox */
.clarification-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.clarification-kpi {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 13px;
    border: 1px solid #dce7e9;
    border-radius: 9px;
    background: #ffffff;
    color: #263940;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(31, 64, 72, .055);
}

.clarification-kpi.active,
.clarification-kpi:hover {
    border-color: rgba(0, 140, 149, .35);
    color: #263940;
    background: #f2fbfc;
}

.clarification-kpi i {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #eaf7f7;
    color: #008c95;
}

.clarification-kpi span,
.clarification-kpi strong {
    display: block;
}

.clarification-kpi span {
    color: #667a81;
    font-size: 11px;
    font-weight: 800;
}

.clarification-kpi strong {
    margin-top: 2px;
    color: #18343b;
    font-size: 20px;
    line-height: 1;
}

.clarification-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 13px;
}

.clarification-filter .form-select {
    max-width: 220px;
}

.clarification-board {
    display: grid;
    gap: 12px;
}

.clarification-card {
    border-radius: 10px;
}

.clarification-card.overdue {
    border-left: 4px solid #d99a19;
}

.clarification-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 10px;
}

.clarification-card-head h2 {
    margin: 3px 0;
    font-size: 18px;
}

.clarification-card-head p {
    margin: 0;
    color: #667a81;
    font-size: 12px;
    font-weight: 650;
}

.clarification-status {
    display: inline-flex;
    align-items: center;
    padding: 6px 9px;
    border-radius: 999px;
    background: #eaf7f7;
    color: #08777d;
    font-size: 10px;
    font-weight: 900;
    white-space: nowrap;
}

.clarification-status.status-open {
    background: #fff3d7;
    color: #9a6200;
}

.clarification-status.status-in_progress {
    background: #edf0ff;
    color: #4f62c5;
}

.clarification-status.status-replied,
.clarification-status.status-closed {
    background: #eaf7f0;
    color: #21845a;
}

.clarification-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.clarification-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border-radius: 7px;
    background: #f3f8f9;
    color: #61737a;
    font-size: 10px;
    font-weight: 800;
}

.clarification-text {
    padding: 12px;
    border: 1px solid #e1ebee;
    border-radius: 8px;
    background: #fbfefe;
}

.clarification-text strong {
    color: #263940;
    font-size: 12px;
}

.clarification-text p {
    margin: 6px 0 0;
    color: #40545c;
}

.attachment-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    color: #008c95;
    font-weight: 800;
    text-decoration: none;
}

.clarification-response {
    display: grid;
    grid-template-columns: minmax(160px, 220px) minmax(260px, 1fr) minmax(220px, 300px) auto;
    gap: 10px;
    align-items: end;
    margin-top: 12px;
}

.clarification-response .btn {
    min-height: 40px;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .clarification-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .clarification-response {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .clarification-kpi-grid,
    .clarification-response {
        grid-template-columns: 1fr;
    }

    .clarification-card-head {
        flex-direction: column;
    }

    .clarification-filter .form-select,
    .clarification-filter .btn {
        max-width: none;
        width: 100%;
    }
}

/* Staff work center */
.work-center-kpis {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

.work-kpi {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px;
    border: 1px solid #dce7e9;
    border-radius: 9px;
    background: #ffffff;
    color: #263940;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(31, 64, 72, .055);
}

.work-kpi:hover,
.work-kpi.active {
    color: #263940;
    border-color: rgba(0, 140, 149, .35);
    background: #f2fbfc;
}

.work-kpi i {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #eaf7f7;
    color: #008c95;
}

.work-kpi span,
.work-kpi strong {
    display: block;
}

.work-kpi span {
    color: #667a81;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.work-kpi strong {
    margin-top: 2px;
    color: #18343b;
    font-size: 20px;
    line-height: 1;
}

.work-filter-bar {
    display: grid;
    grid-template-columns: repeat(4, minmax(150px, 1fr)) auto auto;
    gap: 8px;
    align-items: center;
    padding: 13px;
}

.staff-work-table {
    min-width: 1120px;
}

.staff-work-table th,
.staff-work-table td {
    padding: 9px 10px !important;
    font-size: 12px;
    vertical-align: middle;
}

.staff-work-table td:nth-child(1),
.staff-work-table td:nth-child(3),
.staff-work-table td:nth-child(4),
.staff-work-table td:nth-child(6) {
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.deadline-chip {
    display: inline-flex;
    align-items: center;
    padding: 5px 8px;
    border-radius: 999px;
    background: #f3f8f9;
    color: #40545c;
    font-size: 10px;
    font-weight: 900;
    white-space: nowrap;
}

.deadline-chip.deadline-today {
    background: #fff3d7;
    color: #9a6200;
}

.deadline-chip.deadline-overdue {
    background: #fdeaea;
    color: #a43e3e;
}

.soft-status.task-completed {
    background: #eaf7f0;
    color: #21845a;
}

.soft-status.task-pending {
    background: #fff3d7;
    color: #9a6200;
}

.soft-status.task-in_progress {
    background: #edf0ff;
    color: #4f62c5;
}

.table-actions-nowrap {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}

.table-actions-nowrap .btn {
    border-radius: 7px;
    font-weight: 800;
}

@media (max-width: 1250px) {
    .work-center-kpis {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .work-filter-bar {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }
}

@media (max-width: 640px) {
    .work-center-kpis,
    .work-filter-bar {
        grid-template-columns: 1fr;
    }

    .work-filter-bar .btn {
        width: 100%;
    }
}

/* v2.0 visual dashboard alignment */
.content-wrap {
    background:
        radial-gradient(circle at 10% 0%, rgba(0, 140, 149, .06), transparent 28%),
        linear-gradient(180deg, #f8fbfc, #f2f7f8);
}

.visual-welcome {
    border: 0;
    padding: 12px 2px 16px;
    background: transparent;
    box-shadow: none;
}

.visual-welcome h1 {
    margin: 0 0 5px;
    color: #152b34;
    font-size: 20px;
    font-weight: 850;
}

.visual-welcome p {
    color: #607481;
    font-size: 12px;
    font-weight: 650;
}

.visual-welcome .wave {
    color: #d99a19;
    font-size: 14px;
}

.visual-welcome .btn {
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 7px;
}

.visual-kpi-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}

.visual-kpi {
    min-height: 116px;
    grid-template-columns: 42px minmax(0, 1fr) 10px;
    align-items: start;
    padding: 16px 16px 12px;
    border: 1px solid rgba(213, 226, 231, .95);
    border-radius: 9px;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(35, 62, 75, .07);
}

.visual-kpi::before {
    display: none;
}

.visual-kpi .summary-icon {
    width: 42px;
    height: 42px;
    border-radius: 9px;
    color: #ffffff;
    background: #008c95;
    box-shadow: 0 10px 18px rgba(0, 140, 149, .18);
}

.visual-kpi.kpi-coral .summary-icon { background: #f06445; box-shadow: 0 10px 18px rgba(240, 100, 69, .18); }
.visual-kpi.kpi-indigo .summary-icon { background: #7568d9; box-shadow: 0 10px 18px rgba(117, 104, 217, .18); }
.visual-kpi.kpi-gold .summary-icon { background: #e29a0b; box-shadow: 0 10px 18px rgba(226, 154, 11, .18); }
.visual-kpi.kpi-red .summary-icon { background: #ee5a5a; box-shadow: 0 10px 18px rgba(238, 90, 90, .18); }
.visual-kpi.kpi-blue .summary-icon { background: #4d8fe8; box-shadow: 0 10px 18px rgba(77, 143, 232, .18); }
.visual-kpi.kpi-green .summary-icon { background: #35a853; box-shadow: 0 10px 18px rgba(53, 168, 83, .18); }

.visual-kpi .summary-copy strong {
    font-size: 25px;
    letter-spacing: 0;
}

.visual-kpi .summary-copy small {
    margin-top: 3px;
    color: #536a75;
    font-size: 11px;
    font-weight: 800;
}

.visual-kpi .summary-arrow {
    margin-top: 12px;
    font-size: 13px;
    color: #9db1b8;
}

.kpi-spark {
    grid-column: 1 / -1;
    width: 100%;
    height: 34px;
    margin-top: 8px;
}

.kpi-spark polyline {
    fill: none;
    stroke: #008c95;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kpi-coral .kpi-spark polyline { stroke: #f06445; }
.kpi-indigo .kpi-spark polyline { stroke: #7568d9; }
.kpi-gold .kpi-spark polyline { stroke: #e29a0b; }
.kpi-red .kpi-spark polyline { stroke: #ee5a5a; }
.kpi-blue .kpi-spark polyline { stroke: #4d8fe8; }
.kpi-green .kpi-spark polyline { stroke: #35a853; }

.key-performance-panel {
    border-radius: 10px;
    padding: 18px;
}

.performance-rings {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.perf-ring {
    display: grid;
    justify-items: center;
    gap: 7px;
    color: #263940;
    text-align: center;
    text-decoration: none;
}

.perf-ring:hover {
    color: #263940;
}

.perf-ring span {
    width: 92px;
    height: 92px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background:
        radial-gradient(circle at center, #ffffff 56%, transparent 57%),
        conic-gradient(#008c95 var(--ring), #e6edf0 0);
}

.perf-ring strong {
    color: #1b3039;
    font-size: 21px;
    line-height: 1;
}

.perf-ring b {
    color: #243b44;
    font-size: 12px;
}

.perf-ring small {
    color: #70838b;
    font-size: 10px;
    font-weight: 750;
}

.ring-green span { background: radial-gradient(circle at center, #ffffff 56%, transparent 57%), conic-gradient(#35a853 var(--ring), #e6edf0 0); }
.ring-gold span { background: radial-gradient(circle at center, #ffffff 56%, transparent 57%), conic-gradient(#e29a0b var(--ring), #e6edf0 0); }
.ring-indigo span { background: radial-gradient(circle at center, #ffffff 56%, transparent 57%), conic-gradient(#7568d9 var(--ring), #e6edf0 0); }
.ring-red span { background: radial-gradient(circle at center, #ffffff 56%, transparent 57%), conic-gradient(#ee5a5a var(--ring), #e6edf0 0); }

.dashboard-panel,
.insight-chart,
.infographic-panel,
.panel {
    border-radius: 10px;
    border-color: rgba(213, 226, 231, .95);
    box-shadow: 0 12px 30px rgba(35, 62, 75, .06);
}

.insight-chart canvas {
    height: 170px !important;
}

.risk-list a,
.leader-row,
.compact-feed > a {
    border-radius: 8px;
}

@media (max-width: 1600px) {
    .visual-kpi-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .visual-kpi-grid,
    .performance-rings {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .visual-kpi-grid,
    .performance-rings {
        grid-template-columns: 1fr;
    }
}

/* v2.0 notification center */
.notification-summary-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

.notification-summary {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 13px;
    border: 1px solid #dce7e9;
    border-radius: 9px;
    background: #ffffff;
    color: #263940;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(31, 64, 72, .055);
}

.notification-summary:hover,
.notification-summary.active {
    color: #263940;
    border-color: rgba(0, 140, 149, .35);
    background: #f2fbfc;
}

.notification-summary i {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #eaf7f7;
    color: #008c95;
}

.notification-summary.priority-urgent i {
    background: #fdeaea;
    color: #d74343;
}

.notification-summary span,
.notification-summary strong {
    display: block;
}

.notification-summary span {
    color: #667a81;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.notification-summary strong {
    margin-top: 2px;
    color: #18343b;
    font-size: 20px;
    line-height: 1;
}

.notification-filter-pro {
    grid-template-columns: repeat(3, minmax(150px, 1fr)) auto auto;
    max-width: none;
}

.notification-center-panel {
    border-radius: 10px;
}

.notification-list {
    gap: 9px;
}

.notification-item {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    padding: 13px 14px;
    border-left-width: 4px;
}

.notification-icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: #edf6f7;
    color: #008c95;
}

.notification-item.priority-urgent .notification-icon {
    background: #fdeaea;
    color: #d74343;
}

.notification-item.priority-high .notification-icon {
    background: #fff3d7;
    color: #b57700;
}

.notification-title-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.notification-title-row strong {
    color: #223840;
    font-size: 13px;
}

.notification-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
    color: #75868c;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.priority-pill,
.read-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 7px;
    border-radius: 999px;
    background: #eaf7f7;
    color: #08777d;
    font-size: 9px;
    font-weight: 900;
}

.priority-pill.priority-urgent {
    background: #fdeaea;
    color: #a43e3e;
}

.priority-pill.priority-high {
    background: #fff3d7;
    color: #9a6200;
}

.priority-pill.priority-low {
    background: #edf6fc;
    color: #2774ad;
}

.notification-message {
    margin-top: 6px;
    color: #40545c;
    font-size: 12px;
}

.notification-actions {
    align-items: center;
}

@media (max-width: 1200px) {
    .notification-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .notification-filter-pro {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }
}

@media (max-width: 640px) {
    .notification-summary-grid,
    .notification-filter-pro {
        grid-template-columns: 1fr;
    }

    .notification-item {
        grid-template-columns: 1fr;
    }

    .notification-title-row {
        flex-direction: column;
    }

    .notification-meta {
        justify-content: flex-start;
    }
}

/* BidHive logo asset integration */
.brand .brand-logo {
    width: 174px;
    max-width: 100%;
    height: auto;
    display: block;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.brand {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.brand .brand-version {
    display: block;
    margin-top: -4px;
    color: rgba(255, 255, 255, .78);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .2px;
}

body.sidebar-collapsed .brand .brand-logo {
    width: 52px;
    height: 38px;
    object-fit: contain;
}

body.sidebar-collapsed .brand {
    align-items: center;
}

body.sidebar-collapsed .brand .brand-version {
    display: none;
}

.auth-logo-card {
    width: 245px;
    max-width: 100%;
    margin-bottom: 24px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.auth-logo-card img {
    width: 100%;
    height: auto;
    display: block;
}

.auth-mobile-logo {
    overflow: hidden;
    background: #075f63 !important;
    border: 1px solid rgba(7, 95, 99, .2);
}

.auth-mobile-logo img {
    width: 44px;
    height: 30px;
    object-fit: contain;
    display: block;
}

/* BidHive v2.1 UI Foundation - 11 July 2026 */
:root{
    --bh-navy:#082f59;--bh-navy-2:#061f3f;--bh-blue:#2556d9;--bh-blue-soft:#eef3ff;
    --bh-bg:#f6f8fc;--bh-line:#e5eaf2;--bh-ink:#14213d;--bh-muted:#69758a;
    --bh-card-shadow:0 3px 12px rgba(21,41,82,.07);
}
body{background:var(--bh-bg);color:var(--bh-ink)}
.sidebar{width:220px;background:linear-gradient(180deg,var(--bh-navy) 0%,var(--bh-navy-2) 100%);box-shadow:none}
.app-main{margin-left:220px;width:calc(100% - 220px)}
.brand{min-height:92px;padding:18px 20px;background:transparent;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-logo{max-width:142px;max-height:52px}.brand-version{font-size:10px;background:#fff;color:#143764;padding:3px 6px;border-radius:4px}
.menu{padding:8px 10px 80px}.menu a{padding:9px 11px;border-radius:7px;margin-bottom:2px;font-size:12.5px;color:rgba(255,255,255,.86)}
.menu a:hover,.menu a.active{background:linear-gradient(90deg,#2f62df,#2853c6);border-color:transparent;transform:none;box-shadow:0 6px 16px rgba(23,77,205,.25)}
.menu-label{border:0;background:transparent;padding:16px 10px 6px;margin:0;color:rgba(255,255,255,.55);font-size:10px;letter-spacing:.65px}
.menu-label:hover,.menu-label:focus,.menu-label.open{background:transparent;border:0;color:rgba(255,255,255,.72)}
.menu-label .menu-plus::before{background:transparent;font-size:14px}.submenu{padding-left:2px}
.topbar-v21{min-height:60px;padding:0 18px;background:#fff;border-bottom:1px solid var(--bh-line);box-shadow:none;gap:18px}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-left{flex:1;min-width:0}.topbar-actions{justify-content:flex-end}
.topbar-icon-btn{position:relative;width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:9px;background:transparent;color:#52617a;text-decoration:none}
.topbar-icon-btn:hover{background:#f2f5fa;color:#2454d6}.topbar-icon-btn.has-badge span{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#e33c45;color:#fff;font-size:9px;display:grid;place-items:center;border:2px solid #fff}
.global-search{height:38px;max-width:480px;flex:1;display:flex;align-items:center;gap:10px;border:1px solid #dfe5ef;border-radius:9px;padding:0 12px;background:#fff}.global-search:focus-within{border-color:#8faaf1;box-shadow:0 0 0 3px rgba(37,86,217,.08)}
.global-search input{border:0;outline:0;flex:1;min-width:0;font-size:12.5px;color:#26334b}.global-search i{color:#8a96aa}.global-search kbd{font-size:9px;background:#f2f4f8;color:#8490a2;border:1px solid #e3e7ee;border-radius:5px;padding:2px 5px}
.workspace-selector{height:36px;display:flex;align-items:center;gap:8px;border:1px solid #dfe5ef;border-radius:8px;padding:0 12px;color:#35445f;font-size:12px;max-width:180px}.workspace-selector span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-menu-compact{display:flex;align-items:center;gap:9px;padding-left:10px;border-left:1px solid var(--bh-line)}.user-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e9edf4;color:#68758a}.user-meta{display:flex;flex-direction:column;line-height:1.15}.user-meta strong{font-size:12px}.user-meta small{font-size:10px;color:#7a8799}.logout-link{color:#6b778b;padding:7px}
.content-wrap{padding:18px 20px}.content-wrap::before{display:none}.panel{border:1px solid var(--bh-line);border-radius:10px;box-shadow:var(--bh-card-shadow);background:#fff}.dashboard-welcome{margin-bottom:12px}.dashboard-welcome h1{font-size:22px}.dashboard-welcome p{font-size:12px;color:var(--bh-muted)}
.summary-card-grid.visual-kpi-grid{grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.summary-card.visual-kpi{min-height:100px;border:1px solid var(--bh-line);border-radius:10px;box-shadow:var(--bh-card-shadow);padding:13px;background:#fff}.visual-kpi .summary-icon{width:38px;height:38px;border-radius:9px}.visual-kpi .summary-copy strong{font-size:22px}.visual-kpi .summary-copy small{font-size:11px}.kpi-spark,.summary-arrow{display:none}
.dashboard-insight-grid{grid-template-columns:1.15fr 1fr 1fr;gap:12px}.insight-hero,.insight-chart{min-height:250px}.panel-heading h2{font-size:15px}.eyebrow{font-size:9px;letter-spacing:.8px;color:#8490a2}
.table{font-size:12px}.table thead th{font-size:10px;text-transform:none;letter-spacing:.2px;color:#66738a;background:#f8f9fc;border-bottom:1px solid var(--bh-line);padding:11px}.table tbody td{padding:11px;border-color:#edf0f5}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-bg-type:#fff}
.btn{border-radius:8px;font-size:12px}.btn-primary{background:#2556d9;border-color:#2556d9}.btn-primary:hover{background:#1e49bb;border-color:#1e49bb}
@media(max-width:1280px){.summary-card-grid.visual-kpi-grid{grid-template-columns:repeat(3,1fr)}.workspace-selector,.user-meta{display:none}}
@media(max-width:991px){.sidebar{transform:translateX(-100%);width:220px}.app-main{margin-left:0;width:100%}.sidebar.mobile-open{transform:translateX(0)}.global-search{max-width:none}.topbar-actions .theme-toggle,.workspace-selector{display:none}.content-wrap{padding:14px}.dashboard-insight-grid{grid-template-columns:1fr}.summary-card-grid.visual-kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575px){.global-search kbd,.topbar-actions .topbar-icon-btn:nth-of-type(n+2){display:none}.summary-card-grid.visual-kpi-grid{grid-template-columns:1fr 1fr}.user-menu-compact{padding-left:0;border-left:0}.user-meta{display:none}}
.dashboard-filterbar{display:flex;justify-content:flex-end;align-items:center;gap:10px}.dashboard-period{height:34px;display:flex;align-items:center;gap:8px;padding:0 12px;background:#fff;border:1px solid var(--bh-line);border-radius:8px;color:#44526a;font-size:11px}
@media(max-width:991px){.sidebar.show{transform:translateX(0)}}
body.theme-dark{--bh-bg:#0d1524;--bh-line:#253149;--bh-ink:#e9eef8;--bh-muted:#9ca9bd;background:#0d1524;color:#e9eef8}
body.theme-dark .topbar-v21,body.theme-dark .panel,body.theme-dark .summary-card.visual-kpi,body.theme-dark .global-search,body.theme-dark .dashboard-period{background:#141f32;color:#e9eef8;border-color:#253149}
body.theme-dark .global-search input{background:transparent;color:#e9eef8}body.theme-dark .table{--bs-table-color:#dfe7f5;--bs-table-bg:#141f32;--bs-table-striped-bg:#162239}body.theme-dark .table thead th{background:#18243a;color:#aebbd0;border-color:#253149}body.theme-dark .workspace-selector{border-color:#253149;color:#dfe7f5}body.theme-dark .topbar-icon-btn{color:#aebbd0}body.theme-dark .topbar-icon-btn:hover{background:#1d2b43;color:#fff}

/* BidHive v2.2 dashboard matching the approved UI reference */
.mock-dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.mock-dashboard-head h1{font-size:25px;margin:0;color:#14223c}.mock-dashboard-head p{margin:3px 0 0;color:#6f7d91}.mock-head-actions{display:flex;gap:10px;align-items:center}.mock-head-actions>span{background:#fff;border:1px solid #dfe5ef;border-radius:8px;padding:9px 13px;font-size:12px;font-weight:700;color:#26344d;box-shadow:0 2px 8px rgba(35,49,79,.04)}
.mock-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px}.mock-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.mock-kpi-card{background:#fff;border:1px solid #e0e6ef;border-radius:10px;padding:14px 12px;display:flex;gap:11px;align-items:flex-start;text-decoration:none;box-shadow:0 3px 10px rgba(31,45,71,.06);min-height:100px;transition:.2s}.mock-kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(31,45,71,.1)}.mock-kpi-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:19px;flex:0 0 auto}.mock-kpi-card small{display:block;color:#25324a;font-weight:700;font-size:11px}.mock-kpi-card strong{display:block;color:#14213a;font-size:21px;line-height:1.35;white-space:nowrap}.mock-kpi-card em{display:block;color:#758197;font-size:10px;font-style:normal}.kpi-violet .mock-kpi-icon{background:#eee8ff;color:#7045db}.kpi-blue .mock-kpi-icon{background:#e7efff;color:#3267d6}.kpi-orange .mock-kpi-icon{background:#fff0e1;color:#ff7a18}.kpi-teal .mock-kpi-icon{background:#def7f4;color:#009b85}.kpi-green .mock-kpi-icon{background:#e3f7e9;color:#138a54}.kpi-navy .mock-kpi-icon{background:#e9edf5;color:#243b64}
.mock-chart-grid{display:grid;grid-template-columns:1.05fr 1.05fr .95fr;gap:12px;margin-bottom:16px}.mock-chart-card{min-height:255px;padding:16px}.mock-chart-card h2,.mock-table-card h2,.rail-card h2{font-size:13px;margin:0;color:#1d2a42;font-weight:800}.mock-chart-box{height:205px;position:relative}.chart-center-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.chart-center-label strong{display:block;font-size:22px}.chart-center-label span{font-size:10px;color:#7c8798}.buyer-bars{margin-top:22px}.buyer-bars>div{display:grid;grid-template-columns:70px 1fr 72px;gap:8px;align-items:center;margin:14px 0;font-size:10px}.buyer-bars span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.buyer-bars i{height:12px;background:#edf2f8;border-radius:3px;overflow:hidden}.buyer-bars b{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#2365c8,#36b8ef)}.buyer-bars strong{text-align:right;font-size:10px}.mock-card-link,.rail-footer{display:block;text-align:center;font-size:10px;font-weight:700;color:#1e64d6;text-decoration:none;margin-top:14px}
.mock-table-card{padding:0;overflow:hidden;margin-bottom:16px}.mock-card-title{padding:13px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0f5}.mock-card-title>a{font-size:10px;font-weight:700;text-decoration:none}.mock-table-card .table{margin:0;font-size:10px}.mock-table-card th{background:#f8f9fc;color:#5b6678;padding:10px 8px;white-space:nowrap}.mock-table-card td{padding:10px 8px;color:#27344a}.bid-link{color:#075bd8;font-weight:800;text-decoration:none}.priority-pill{display:inline-block;border-radius:6px;padding:3px 7px;font-size:9px;font-weight:700}.priority-high,.priority-urgent{background:#ffe6e6;color:#d62929}.priority-medium{background:#fff0d5;color:#c57700}.priority-low{background:#e3f7e8;color:#16814b}.mock-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mock-mini-card{background:#fff;border:1px solid #e0e6ef;border-radius:10px;padding:13px;display:flex;align-items:center;gap:10px;text-decoration:none;color:#1d2a42}.mock-mini-card>i{font-size:25px;color:#15986a}.mock-mini-card.danger>i{color:#df4040}.mock-mini-card small{display:block;font-size:10px;color:#6f7d91}.mock-mini-card strong{font-size:13px}.mini-ring{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#67bd49 calc(var(--value)*1%),#e5edf1 0);position:relative}.mini-ring:after{content:"";position:absolute;inset:6px;background:#fff;border-radius:50%}.mini-ring b{position:relative;z-index:1;font-size:11px}
.mock-right-rail{display:flex;flex-direction:column;gap:12px}.rail-card{padding:0;overflow:hidden}.rail-alerts{border-color:#f3cccc;background:#fffafa}.rail-alerts .mock-card-title h2{color:#d53535}.rail-item{display:flex;gap:9px;padding:11px 12px;margin:8px;border:1px solid #f2dcdc;background:#fff;border-radius:8px;text-decoration:none;color:#26344b}.rail-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto}.rail-icon.danger{background:#ffe9e9;color:#e33a3a}.rail-icon.warning{background:#fff1da;color:#df8a00}.rail-item strong,.rail-simple strong{display:block;font-size:10px}.rail-item small,.rail-simple small{display:block;font-size:9px;color:#657287}.rail-item em{display:block;font-size:8px;color:#8b95a5;font-style:normal;margin-top:2px}.rail-simple{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 13px;border-bottom:1px solid #edf0f5;text-decoration:none;color:#26344b}.rail-simple time{font-size:9px;color:#e45c26;white-space:nowrap}.rail-card .empty-state{padding:16px;font-size:10px}
@media(max-width:1400px){.mock-kpi-grid{grid-template-columns:repeat(3,1fr)}.mock-chart-grid{grid-template-columns:1fr 1fr}.mock-chart-grid .mock-chart-card:last-child{grid-column:1/-1}.buyer-bars>div{grid-template-columns:110px 1fr 90px}}
@media(max-width:1100px){.mock-dashboard-layout{grid-template-columns:1fr}.mock-right-rail{display:grid;grid-template-columns:repeat(3,1fr)}.mock-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.mock-dashboard-head{display:block}.mock-head-actions{margin-top:10px;flex-wrap:wrap}.mock-kpi-grid,.mock-chart-grid,.mock-right-rail,.mock-mini-grid{grid-template-columns:1fr}.mock-chart-grid .mock-chart-card:last-child{grid-column:auto}.mock-kpi-grid{grid-template-columns:repeat(2,1fr)}.mock-kpi-card{min-height:90px}.mock-kpi-card strong{font-size:18px}}


/* BidHive v2.3 dashboard cache-safe layout fixes */
.content-wrap > .mock-dashboard-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;margin-bottom:16px!important}
.content-wrap > .mock-dashboard-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 290px!important;gap:16px!important}
.content-wrap .mock-kpi-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;margin-bottom:16px!important}
.content-wrap .mock-chart-grid{display:grid!important;grid-template-columns:1.05fr 1.05fr .95fr!important;gap:12px!important;margin-bottom:16px!important}
.content-wrap .mock-mini-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
.content-wrap .mock-right-rail{display:flex!important;flex-direction:column!important;gap:12px!important}
.content-wrap .mock-kpi-card,.content-wrap .mock-mini-card,.content-wrap .rail-item,.content-wrap .rail-simple{display:flex!important;text-decoration:none!important}
.content-wrap .mock-kpi-card{background:#fff!important;border:1px solid #e0e6ef!important;border-radius:10px!important;padding:14px 12px!important;gap:11px!important;min-height:100px!important;box-shadow:0 3px 10px rgba(31,45,71,.06)!important}
.content-wrap .mock-mini-card{background:#fff!important;border:1px solid #e0e6ef!important;border-radius:10px!important;padding:13px!important;align-items:center!important;gap:10px!important;color:#1d2a42!important}
.content-wrap .rail-card{background:#fff!important;border:1px solid #e0e6ef!important;border-radius:10px!important;overflow:hidden!important;padding:0!important}
@media(max-width:1400px){.content-wrap .mock-kpi-grid{grid-template-columns:repeat(3,1fr)!important}.content-wrap .mock-chart-grid{grid-template-columns:1fr 1fr!important}.content-wrap .mock-chart-grid .mock-chart-card:last-child{grid-column:1/-1!important}}
@media(max-width:1100px){.content-wrap > .mock-dashboard-layout{grid-template-columns:1fr!important}.content-wrap .mock-right-rail{display:grid!important;grid-template-columns:repeat(3,1fr)!important}.content-wrap .mock-mini-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:767px){.content-wrap > .mock-dashboard-head{display:block!important}.content-wrap .mock-kpi-grid{grid-template-columns:repeat(2,1fr)!important}.content-wrap .mock-chart-grid,.content-wrap .mock-right-rail,.content-wrap .mock-mini-grid{grid-template-columns:1fr!important}.content-wrap .mock-chart-grid .mock-chart-card:last-child{grid-column:auto!important}}

/* BidHive v2.4 exact approved-dashboard replica */
:root{--exact-navy:#062b52;--exact-navy2:#031f3d;--exact-blue:#2854d7;--exact-bg:#f7f9fc;--exact-line:#e1e7ef;--exact-text:#11203b;--exact-muted:#64728b}
body{background:var(--exact-bg)!important;color:var(--exact-text)!important;font-size:12px!important}
.sidebar{width:216px!important;background:linear-gradient(180deg,#062f58 0%,#032446 58%,#021d38 100%)!important;box-shadow:none!important;border-right:1px solid rgba(255,255,255,.05)}
.app-main{margin-left:216px!important;width:calc(100% - 216px)!important}
.exact-brand{height:96px!important;padding:14px 20px!important;background:transparent!important;border:0!important;justify-content:flex-start!important}
.exact-brand .brand-logo{width:162px!important;max-height:64px!important;object-fit:contain!important}
.exact-menu{padding:0 10px 70px!important}
.exact-menu a{min-height:37px!important;padding:8px 13px!important;margin:0 0 2px!important;border-radius:6px!important;font-size:12px!important;color:#f4f7fc!important;gap:11px!important;border:0!important;transform:none!important;position:relative}
.exact-menu a i{font-size:13px!important;width:16px!important;color:#f0f5ff!important}
.exact-menu a:hover,.exact-menu a.active{background:linear-gradient(90deg,#2558d9,#2d61df)!important;color:#fff!important;box-shadow:0 5px 12px rgba(21,63,172,.3)!important}
.exact-menu-heading{padding:12px 16px 6px;color:#b9c8db;text-transform:uppercase;font-size:9px;letter-spacing:.45px}
.nav-count{margin-left:auto;border-radius:999px;background:#6e45e2;color:#fff;padding:3px 7px;font-size:9px;line-height:1}.nav-count.green{background:#12a568}
.exact-collapse{position:fixed;bottom:0;left:0;width:216px;height:51px;background:#032442;color:#d7e2f1;border:0;border-top:1px solid rgba(255,255,255,.09);display:flex;align-items:center;gap:8px;padding:0 22px;font-size:11px;z-index:1050}.exact-collapse i:last-child{margin-left:auto}
.topbar-v21{height:60px!important;min-height:60px!important;padding:0 24px!important;background:#fff!important;border-bottom:1px solid #e4e9f1!important;box-shadow:none!important}
.topbar-left{gap:22px!important}.topbar-icon-btn{width:34px!important;height:34px!important;border:0!important;background:transparent!important;color:#52627b!important}.topbar-icon-btn:hover{background:#f4f6fb!important}
.global-search{width:478px!important;height:38px!important;border:1px solid #dce3ee!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;padding:0 13px!important}.global-search input{font-size:11px!important}.global-search kbd{display:none!important}
.topbar-actions{gap:10px!important}.workspace-selector{height:36px!important;min-width:150px!important;border:1px solid #dce3ee!important;border-radius:8px!important;background:#fff!important;padding:0 14px!important;font-size:10px!important;justify-content:space-between!important}.user-avatar{width:32px!important;height:32px!important;background:#e9edf4!important;color:#65728a!important}.user-meta strong{font-size:10px!important}.user-meta small{font-size:8px!important}.logout-link{display:none!important}
.content-wrap{padding:13px 24px 18px!important;background:#fff!important;min-height:calc(100vh - 60px)!important}.content-wrap:before{display:none!important}
.mock-dashboard-head{margin-bottom:12px!important;align-items:center!important}.mock-dashboard-head h1{font-size:21px!important;line-height:1.15!important}.mock-dashboard-head p{font-size:11px!important;color:#536a99!important;margin-top:4px!important}.mock-head-actions>span{height:37px!important;display:flex!important;align-items:center!important;padding:0 13px!important;font-size:10px!important;box-shadow:none!important}.mock-head-actions .btn{height:37px!important;display:flex!important;align-items:center!important;padding:0 16px!important;border-radius:7px!important;background:#2754d7!important;border-color:#2754d7!important;font-size:10px!important}
.content-wrap>.mock-dashboard-layout{grid-template-columns:minmax(0,1fr) 292px!important;gap:18px!important}
.content-wrap .mock-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;margin-bottom:16px!important}.content-wrap .mock-kpi-card{height:101px!important;min-height:101px!important;border-radius:9px!important;padding:14px 12px!important;border:1px solid #dde4ed!important;box-shadow:0 3px 8px rgba(23,39,68,.07)!important;align-items:flex-start!important}.mock-kpi-icon{width:42px!important;height:42px!important;border-radius:9px!important}.mock-kpi-card small{font-size:10px!important}.mock-kpi-card strong{font-size:21px!important}.mock-kpi-card em{font-size:9px!important;margin-top:7px!important}
.content-wrap .mock-chart-grid{grid-template-columns:1.08fr 1fr .98fr!important;gap:12px!important;margin-bottom:16px!important}.mock-chart-card{height:247px!important;min-height:247px!important;padding:16px!important;margin:0!important;border-radius:9px!important;border:1px solid #e0e5ed!important;box-shadow:0 2px 7px rgba(30,44,72,.05)!important}.mock-chart-card h2{font-size:11px!important}.mock-chart-box{height:192px!important}.buyer-bars{margin-top:20px!important}.buyer-bars>div{grid-template-columns:45px 1fr 65px!important;margin:13px 0!important;font-size:9px!important}.buyer-bars i{height:12px!important}.mock-card-link{margin-top:10px!important;font-size:9px!important}
.mock-table-card{height:300px!important;margin-bottom:16px!important;border-radius:9px!important;border:1px solid #e0e5ed!important;box-shadow:0 2px 7px rgba(30,44,72,.05)!important}.mock-card-title{height:43px!important;padding:0 16px!important}.mock-card-title h2{font-size:11px!important}.mock-card-title>a{font-size:9px!important}.mock-table-card .table{font-size:9px!important}.mock-table-card th,.mock-table-card td{padding:10px 11px!important;height:37px!important}.mock-table-card th{font-size:8px!important}.priority-pill{font-size:8px!important;padding:4px 7px!important}
.content-wrap .mock-mini-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important}.content-wrap .mock-mini-card{height:122px!important;border-radius:9px!important;padding:14px 12px!important;align-items:flex-start!important;box-shadow:0 2px 7px rgba(30,44,72,.05)!important;position:relative!important}.mock-mini-card>i{font-size:29px!important;margin-top:28px!important}.mock-mini-card small{font-size:10px!important;color:#24334c!important;font-weight:700!important}.mock-mini-card strong{font-size:15px!important;margin-top:20px!important;display:block!important}.mini-ring{width:60px!important;height:60px!important;margin-top:25px!important}.mini-ring:after{inset:7px!important}.mini-ring b{font-size:14px!important}.mock-mini-card .trend{font-size:8px;color:#6d7a91;position:absolute;bottom:10px;left:55px}.mock-mini-card .trend.good{color:#15945e}.mock-mini-card .trend.bad{color:#df3f3f}
.content-wrap .mock-right-rail{gap:10px!important}.content-wrap .rail-card{border-radius:9px!important;border:1px solid #e0e5ed!important;box-shadow:0 2px 7px rgba(30,44,72,.05)!important}.rail-alerts{height:275px!important;background:#fff9f9!important;border-color:#f2c9c9!important}.rail-card:not(.rail-alerts){min-height:260px!important}.rail-card h2{font-size:11px!important}.rail-item{margin:8px 9px!important;padding:9px!important;border-radius:7px!important}.rail-icon{width:29px!important;height:29px!important}.rail-item strong,.rail-simple strong{font-size:9px!important}.rail-item small,.rail-simple small{font-size:8px!important}.rail-simple{min-height:55px!important;padding:9px 13px!important}.rail-footer{font-size:9px!important;margin-top:5px!important;padding-bottom:9px!important}
.panel{background:#fff!important;box-shadow:none!important}.table>:not(caption)>*>*{border-color:#edf0f5!important}
@media(max-width:1450px){.sidebar{width:200px!important}.app-main{margin-left:200px!important;width:calc(100% - 200px)!important}.exact-collapse{width:200px!important}.content-wrap{padding-left:18px!important;padding-right:18px!important}.content-wrap>.mock-dashboard-layout{grid-template-columns:minmax(0,1fr) 270px!important}.global-search{width:410px!important}}
@media(max-width:1180px){.content-wrap>.mock-dashboard-layout{grid-template-columns:1fr!important}.content-wrap .mock-right-rail{display:grid!important;grid-template-columns:repeat(3,1fr)!important}.content-wrap .mock-kpi-grid{grid-template-columns:repeat(3,1fr)!important}.content-wrap .mock-chart-grid{grid-template-columns:1fr 1fr!important}.content-wrap .mock-chart-grid .mock-chart-card:last-child{grid-column:1/-1!important}.content-wrap .mock-mini-grid{grid-template-columns:repeat(3,1fr)!important}}

/* BidHive v2.5 — unified padding and UI system for every application page */
:root{
  --page-pad-x:24px;
  --page-pad-y:20px;
  --page-radius:10px;
  --page-border:#e1e7ef;
  --page-shadow:0 3px 12px rgba(24,43,76,.06);
}

/* Consistent page canvas */
.content-wrap{
  padding:var(--page-pad-y) var(--page-pad-x) 28px!important;
  background:#f7f9fc!important;
}
.content-wrap > *{max-width:100%;}
.content-wrap > .container,
.content-wrap > .container-fluid{
  padding-left:0!important;
  padding-right:0!important;
  max-width:none!important;
}

/* Standard page heading alignment */
.content-wrap .page-header,
.content-wrap .content-header,
.content-wrap .d-flex.justify-content-between.align-items-center.mb-3,
.content-wrap .d-flex.justify-content-between.align-items-center.mb-4{
  margin-bottom:16px!important;
  gap:12px;
  flex-wrap:wrap;
}
.content-wrap h1,
.content-wrap .page-title{
  margin:0;
  color:#14213d;
  font-size:22px;
  line-height:1.25;
  font-weight:750;
  letter-spacing:-.2px;
}
.content-wrap h2{color:#1c2942;}
.content-wrap .text-muted{color:#6d7b91!important;}

/* Cards/panels across all pages */
.content-wrap .card,
.content-wrap .panel,
.content-wrap .table-card,
.content-wrap .form-card,
.content-wrap .content-card,
.content-wrap .filter-card,
.content-wrap .report-card,
.content-wrap .stat-card{
  background:#fff!important;
  border:1px solid var(--page-border)!important;
  border-radius:var(--page-radius)!important;
  box-shadow:var(--page-shadow)!important;
  overflow:hidden;
}
.content-wrap .card + .card,
.content-wrap .panel + .panel{margin-top:16px;}
.content-wrap .card-header,
.content-wrap .panel-header,
.content-wrap .card-footer,
.content-wrap .panel-footer{
  background:#fff!important;
  border-color:#e8edf4!important;
  padding:13px 16px!important;
}
.content-wrap .card-body,
.content-wrap .panel-body{padding:16px!important;}

/* Tables: clean, padded and horizontally safe */
.content-wrap .table-responsive,
.content-wrap .dataTables_wrapper{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.content-wrap table.table{
  width:100%!important;
  margin-bottom:0!important;
  color:#24324a;
  vertical-align:middle;
}
.content-wrap .table thead th{
  background:#f8fafc!important;
  color:#536179!important;
  font-size:11px!important;
  font-weight:700!important;
  text-transform:none;
  white-space:nowrap;
  padding:11px 13px!important;
  border-bottom:1px solid #e4eaf2!important;
}
.content-wrap .table tbody td{
  padding:11px 13px!important;
  border-bottom:1px solid #edf1f6!important;
  font-size:12px;
}
.content-wrap .table tbody tr:hover{background:#f9fbff!important;}
.content-wrap .table tbody tr:last-child td{border-bottom:0!important;}

/* Forms */
.content-wrap .row{--bs-gutter-x:1rem;--bs-gutter-y:1rem;}
.content-wrap .form-label{
  margin-bottom:6px;
  color:#34425a;
  font-size:11px;
  font-weight:650;
}
.content-wrap .form-control,
.content-wrap .form-select,
.content-wrap .input-group-text{
  min-height:40px;
  border-color:#dce3ed!important;
  border-radius:8px;
  font-size:12px;
  box-shadow:none!important;
}
.content-wrap textarea.form-control{min-height:96px;}
.content-wrap .form-control:focus,
.content-wrap .form-select:focus{
  border-color:#7f9ce8!important;
  box-shadow:0 0 0 3px rgba(40,84,215,.09)!important;
}
.content-wrap .input-group > :not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;}
.content-wrap .input-group > :not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0;}

/* Buttons */
.content-wrap .btn{
  min-height:36px;
  border-radius:7px!important;
  padding:7px 13px;
  font-size:11px;
  font-weight:650;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  box-shadow:none!important;
}
.content-wrap .btn-primary{
  background:#2854d7!important;
  border-color:#2854d7!important;
}
.content-wrap .btn-primary:hover{background:#2148bf!important;border-color:#2148bf!important;}
.content-wrap .btn-light,
.content-wrap .btn-outline-secondary{background:#fff!important;border-color:#dce3ed!important;color:#42516a!important;}

/* Filters, search strips and DataTables controls */
.content-wrap .filters,
.content-wrap .filter-row,
.content-wrap .search-row,
.content-wrap .toolbar,
.content-wrap .table-toolbar{
  background:#fff;
  border:1px solid var(--page-border);
  border-radius:var(--page-radius);
  padding:13px 14px;
  margin-bottom:16px;
  box-shadow:var(--page-shadow);
}
.content-wrap .dataTables_wrapper .row:first-child,
.content-wrap .dataTables_wrapper .row:last-child{
  padding:12px 14px;
  margin:0!important;
  align-items:center;
}
.content-wrap .dataTables_filter input,
.content-wrap .dataTables_length select{min-height:34px;border:1px solid #dce3ed;border-radius:7px;padding:5px 9px;}
.content-wrap .pagination{margin:0;gap:3px;}
.content-wrap .page-link{border-radius:6px!important;border-color:#e0e6ef;color:#3f5d9b;font-size:11px;}

/* Alerts and badges */
.content-wrap .alert{border-radius:9px;border-width:1px;padding:11px 14px;font-size:12px;}
.content-wrap .badge{border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700;}

/* Tabs */
.content-wrap .nav-tabs{border-bottom:1px solid #dfe6ef;gap:4px;margin-bottom:16px;}
.content-wrap .nav-tabs .nav-link{border:0;border-bottom:2px solid transparent;color:#607089;padding:10px 12px;font-size:11px;font-weight:650;}
.content-wrap .nav-tabs .nav-link.active{color:#2854d7;border-bottom-color:#2854d7;background:transparent;}

/* Prevent content touching edges on legacy pages */
.content-wrap > form,
.content-wrap > table,
.content-wrap > .table-responsive,
.content-wrap > .alert,
.content-wrap > .row,
.content-wrap > .d-flex{
  margin-left:0!important;
  margin-right:0!important;
}

/* Dashboard keeps approved white canvas while retaining page padding */
.content-wrap:has(.mock-dashboard-layout){background:#fff!important;}

@media(max-width:991px){
  :root{--page-pad-x:16px;--page-pad-y:16px;}
  .content-wrap .card-body,.content-wrap .panel-body{padding:14px!important;}
  .content-wrap h1,.content-wrap .page-title{font-size:20px;}
}
@media(max-width:767px){
  :root{--page-pad-x:12px;--page-pad-y:12px;}
  .content-wrap{padding-bottom:20px!important;}
  .content-wrap .card-body,.content-wrap .panel-body{padding:12px!important;}
  .content-wrap .table thead th,.content-wrap .table tbody td{padding:9px 10px!important;}
  .content-wrap .btn{width:auto;}
  .content-wrap .d-flex.justify-content-between{align-items:flex-start!important;}
}


/* BidHive v2.6 — compact master tables and consistent list-page UI */
.master-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px!important}
.master-page-header h1{font-size:21px!important;margin:0 0 4px!important}
.master-page-header p{font-size:11px!important}
.master-form-panel{padding:16px!important;margin-bottom:16px!important;overflow:visible!important}
.master-table-panel{padding:0!important;overflow:hidden!important;margin-bottom:18px!important}
.master-table-head{min-height:54px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6ebf2;background:#fff}
.master-table-head h2{font-size:14px!important;margin:0;color:#1b2942}
.master-table-head small{display:block;margin-top:2px;color:#7b8799;font-size:10px}
.master-table-panel>.table-responsive{overflow-x:auto!important}
.master-table{min-width:1080px;margin:0!important;table-layout:auto}
.master-table thead th{height:44px!important;padding:10px 12px!important;font-size:10px!important;letter-spacing:0!important;text-transform:none!important;background:#f7f9fc!important;color:#506079!important;border-bottom:1px solid #e2e8f0!important;vertical-align:middle!important}
.master-table tbody tr{height:auto!important;min-height:48px!important;background:#fff!important}
.master-table.table-hover tbody tr:hover{background:#f8fbff!important}
.master-table tbody td{height:auto!important;min-height:48px!important;padding:10px 12px!important;font-size:11px!important;line-height:1.35!important;vertical-align:middle!important;white-space:normal!important;background:transparent!important}
.master-table tbody tr:nth-child(even){background:#fbfcfe!important}
.master-table .cell-text{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#26354d}
.master-table .cell-text.is-empty{color:#a6afbd}
.master-table th:last-child,.master-table td:last-child{position:sticky;right:0;z-index:2;background:#fff!important;box-shadow:-6px 0 10px -10px rgba(22,36,62,.35)}
.master-table tbody tr:nth-child(even) td:last-child{background:#fbfcfe!important}
.master-action-cell{width:162px!important;min-width:162px!important}
.master-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:nowrap!important}
.master-actions form{display:inline-flex!important;margin:0!important}
.master-actions .btn{width:auto!important;min-width:70px!important;min-height:32px!important;height:32px!important;padding:5px 9px!important;font-size:10px!important;line-height:1!important;white-space:nowrap!important;border-radius:6px!important}
.master-actions .btn i{font-size:10px}
.status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:750;text-transform:capitalize}
.status-badge.is-active{background:#e9f8f1;color:#138354}
.status-badge.is-inactive{background:#f1f3f6;color:#6c7788}
.master-table-panel .dataTables_wrapper>.row:first-child{padding:12px 14px!important;border-bottom:1px solid #edf1f5}
.master-table-panel .dataTables_wrapper>.row:last-child{padding:12px 14px!important;border-top:1px solid #edf1f5}
.master-table-panel .dataTables_filter{display:flex;justify-content:flex-end;align-items:center;gap:7px}
.master-table-panel .dataTables_filter label,.master-table-panel .dataTables_length label{font-size:10px;color:#647188;margin:0}
.master-table-panel .dataTables_filter input{width:220px!important;margin-left:7px!important}
@media(max-width:767px){
 .master-form-panel{padding:12px!important}
 .master-table{min-width:960px}
 .master-actions .btn span{display:none}
 .master-actions .btn{min-width:32px!important;width:32px!important;padding:0!important}
 .master-action-cell{width:86px!important;min-width:86px!important}
 .master-table-panel .dataTables_filter input{width:150px!important}
}

/* BidHive v2.7 functional administration pages */
.page-heading-row,.panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-title-row{align-items:center;margin-bottom:14px}.panel-title-row h2{font-size:15px;margin:0}.panel-title-row p{font-size:11px;color:#758298;margin:3px 0 0}.automation-live-badge{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#e9f8f1;color:#118357;font-size:11px;font-weight:700}.automation-live-badge i{font-size:7px}.automation-summary-grid,.user-summary-grid,.performance-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.automation-stat,.user-summary-grid>div,.performance-kpi-grid>div{background:#fff;border:1px solid #e3e9f1;border-radius:11px;box-shadow:0 5px 18px rgba(28,44,73,.05);padding:16px;display:flex;align-items:center;gap:13px}.automation-stat>i,.user-summary-grid>div>i,.performance-kpi-grid>div>i{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#2854d7;font-size:17px}.automation-stat span,.user-summary-grid span,.performance-kpi-grid span{font-size:10px;color:#758298;display:flex;flex-direction:column}.automation-stat strong,.user-summary-grid strong,.performance-kpi-grid strong{font-size:20px;color:#17233c;margin-top:2px}.performance-kpi-grid small{font-size:9px;color:#8b96a8}.automation-rules-panel,.automation-history-panel,.user-editor,.user-table-panel,.performance-filter,.performance-chart-card,.leaderboard-card,.performance-table{padding:16px!important;margin-bottom:16px!important}.automation-rule-list{display:flex;flex-direction:column;gap:10px}.automation-rule-card{display:grid;grid-template-columns:46px minmax(250px,1fr) minmax(390px,auto) auto;align-items:center;gap:14px;padding:13px;border:1px solid #e5eaf2;border-radius:10px;background:#fbfcfe}.automation-rule-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#edf3ff;color:#2854d7}.automation-rule-main h3{font-size:12px;margin:0 0 3px;color:#1b2942}.automation-rule-main p{font-size:10px;color:#778399;margin:0}.automation-rule-main small{font-size:9px;color:#99a2b1}.automation-rule-controls{display:grid;grid-template-columns:44px 105px 105px 70px;gap:8px;align-items:center}.switch-control input{display:none}.switch-control span{display:block;width:38px;height:22px;border-radius:999px;background:#cfd6e1;position:relative;cursor:pointer}.switch-control span:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s}.switch-control input:checked+span{background:#2854d7}.switch-control input:checked+span:after{left:19px}.automation-rule-controls .form-control,.automation-rule-controls .form-select{min-height:34px!important;height:34px!important;padding:4px 8px!important}.run-rule-btn{white-space:nowrap}.run-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:700;text-transform:capitalize}.run-status.is-success{background:#e9f8f1;color:#118357}.run-status.is-failed{background:#fff0f0;color:#dc3545}.run-status.is-running{background:#fff7df;color:#b17800}.permission-section{margin-top:16px;padding-top:16px;border-top:1px solid #e8edf4}.permission-section.is-disabled{opacity:.45;pointer-events:none}.permission-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.permission-section-head h3{font-size:13px;margin:0}.permission-section-head p{font-size:10px;color:#7c8799;margin:2px 0 0}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.permission-tile{cursor:pointer}.permission-tile input{display:none}.permission-tile span{display:flex;align-items:center;gap:8px;min-height:38px;padding:9px 11px;border:1px solid #dfe5ee;border-radius:8px;background:#fff;font-size:10px;color:#526078}.permission-tile span i{display:none}.permission-tile input:checked+span{border-color:#8ca7ef;background:#f0f4ff;color:#2854d7}.permission-tile input:checked+span i{display:inline}.form-actions{display:flex;justify-content:flex-end;margin-top:16px}.user-cell{display:flex;align-items:center;gap:10px}.user-cell>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf3ff;color:#2854d7;font-weight:750}.user-cell div{display:flex;flex-direction:column}.user-cell strong{font-size:11px}.user-cell small{font-size:9px;color:#8792a5}.role-badge,.score-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:700}.role-admin{background:#eee9ff;color:#6941c6}.role-staff{background:#e9f5ff;color:#1675b9}.table-action-group{display:flex;align-items:center;gap:5px;white-space:nowrap}.table-action-group form{display:inline-flex;margin:0}.table-action-group .btn{width:32px!important;height:32px!important;min-height:32px!important;padding:0!important}.performance-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}.chart-wrap{height:320px}.leader-row{display:grid;grid-template-columns:28px 34px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf1f5}.leader-row:last-child{border-bottom:0}.leader-rank{font-size:10px;font-weight:700;color:#7e8a9c}.leader-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#eef3ff;color:#2854d7;font-weight:700}.leader-row div{display:flex;flex-direction:column}.leader-row strong{font-size:10px}.leader-row small{font-size:9px;color:#8390a3}.leader-row b{color:#1a8c5c;font-size:11px}.metric-progress{width:76px;height:6px;background:#e9edf3;border-radius:999px;overflow:hidden;margin-bottom:3px}.metric-progress span{display:block;height:100%;background:#2854d7}.score-pill{background:#e9f8f1;color:#118357}.exact-collapse{cursor:pointer}body.sidebar-collapsed .exact-collapse span,body.sidebar-collapsed .exact-collapse>.fa-chevron-left{display:none}body.sidebar-collapsed .exact-collapse{justify-content:center}.sidebar-collapsed .exact-menu-heading{font-size:0;height:18px}.sidebar-collapsed .nav-count{display:none}
@media(max-width:1100px){.automation-rule-card{grid-template-columns:46px 1fr}.automation-rule-controls{grid-column:2}.run-rule-btn{grid-column:2;justify-self:start}.automation-summary-grid,.user-summary-grid,.performance-kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.page-heading-row,.panel-title-row{flex-direction:column}.automation-summary-grid,.user-summary-grid,.performance-kpi-grid,.permission-grid,.performance-layout{grid-template-columns:1fr}.automation-rule-card{grid-template-columns:40px 1fr}.automation-rule-controls{grid-column:1/-1;grid-template-columns:44px 1fr 1fr 64px}.run-rule-btn{grid-column:1/-1}.table-action-group{gap:3px}}
