:root,
[data-bs-theme='light'] {
    --duaya-canvas: #edf4f0;
    --duaya-surface: rgba(255, 255, 255, .76);
    --duaya-solid: #fafffc;
    --duaya-soft: rgba(240, 247, 242, .74);
    --duaya-hover: rgba(255, 255, 255, .96);
    --duaya-navigation: rgba(252, 255, 253, .83);
    --duaya-field: rgba(255, 255, 255, .82);
    --duaya-text: #3d594a;
    --duaya-heading: #1d4034;
    --duaya-muted: #647b6c;
    --duaya-border: rgba(105, 143, 121, .2);
    --duaya-glint: rgba(255, 255, 255, .9);
    --duaya-accent: #237d70;
    --duaya-accent-soft: rgba(39, 139, 125, .10);
    --duaya-chart-text: #687b62;
    --duaya-chart-grid: #dce8df;
    --duaya-chart-surface: #f8fcf9;
    --duaya-shadow: 0 8px 28px rgba(27, 66, 45, .045), inset 0 1px 0 var(--duaya-glint);
    --duaya-lift-shadow: 0 14px 34px rgba(27, 66, 45, .10), inset 0 1px 0 var(--duaya-glint);
    --duaya-halo-a: rgba(102, 192, 164, .17);
    --duaya-halo-b: rgba(195, 205, 142, .14);
    --bs-body-bg: #edf4f0;
    --bs-body-bg-rgb: 237, 244, 240;
    --bs-body-color: #3d594a;
    --bs-body-color-rgb: 61, 89, 74;
    --bs-secondary-color: #647b6c;
    --bs-secondary-color-rgb: 100, 123, 108;
    --bs-heading-color: #1d4034;
    --bs-paper-bg: #fafffc;
    --bs-border-color: rgba(105, 143, 121, .2);
    --bs-link-color: #237d70;
    --bs-link-color-rgb: 35, 125, 112;
    --bs-link-hover-color: #155e54;
    --bs-link-hover-color-rgb: 21, 94, 84;
}

[data-bs-theme='dark'] {
    --duaya-canvas: #0c1716;
    --duaya-surface: rgba(22, 43, 37, .78);
    --duaya-solid: #172c26;
    --duaya-soft: rgba(31, 56, 46, .68);
    --duaya-hover: rgba(37, 65, 53, .82);
    --duaya-navigation: rgba(16, 34, 29, .86);
    --duaya-field: rgba(12, 29, 23, .66);
    --duaya-text: #c3d7ca;
    --duaya-heading: #e6f5e9;
    --duaya-muted: #9ab2a0;
    --duaya-border: rgba(183, 226, 192, .13);
    --duaya-glint: rgba(213, 255, 223, .07);
    --duaya-accent: #83d3b8;
    --duaya-accent-soft: rgba(109, 205, 167, .12);
    --duaya-chart-text: #9ab2a0;
    --duaya-chart-grid: #294437;
    --duaya-chart-surface: #182e26;
    --duaya-shadow: 0 8px 30px rgba(0, 10, 4, .13), inset 0 1px 0 var(--duaya-glint);
    --duaya-lift-shadow: 0 14px 36px rgba(0, 10, 4, .25), inset 0 1px 0 rgba(191, 255, 209, .12);
    --duaya-halo-a: rgba(49, 134, 104, .16);
    --duaya-halo-b: rgba(121, 139, 63, .10);
    --bs-body-bg: #0c1716;
    --bs-body-bg-rgb: 12, 23, 22;
    --bs-body-color: #c3d7ca;
    --bs-body-color-rgb: 195, 215, 202;
    --bs-secondary-color: #9ab2a0;
    --bs-secondary-color-rgb: 154, 178, 160;
    --bs-tertiary-bg: #203a2c;
    --bs-secondary-bg: #243c30;
    --bs-heading-color: #e6f5e9;
    --bs-emphasis-color: #e6f5e9;
    --bs-emphasis-color-rgb: 230, 245, 233;
    --bs-paper-bg: #172c26;
    --bs-primary: #83d3b8;
    --bs-primary-rgb: 131, 211, 184;
    --bs-primary-bg-subtle: #203e31;
    --bs-primary-text-emphasis: #a4e3c7;
    --bs-link-color: #83d3b8;
    --bs-link-color-rgb: 131, 211, 184;
    --bs-link-hover-color: #b7eed1;
    --bs-link-hover-color-rgb: 183, 238, 209;
    --bs-border-color: rgba(183, 226, 192, .13);
    --bs-border-color-translucent: rgba(183, 226, 192, .13);
}

html { min-block-size: 100%; background-color: var(--duaya-canvas); }
body {
    color: var(--duaya-text);
    background-color: var(--duaya-canvas);
    background-image: radial-gradient(ellipse at 90% 4%, var(--duaya-halo-a), transparent 43%), radial-gradient(ellipse at 8% 65%, var(--duaya-halo-b), transparent 45%);
    background-attachment: fixed;
}
::selection { background: var(--duaya-accent); color: var(--duaya-canvas); }
a { color: var(--duaya-accent); }
a:hover { color: var(--bs-link-hover-color); }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
.page-heading h1, .duaya-brand-name, .stat-value, .dashboard-pulse strong,
.operation-card strong, .dashboard-chart-totals strong, .allocation-caption strong,
.insight-value, .holding-capital, .holding-bottom strong, .sidebar-note .fw-medium { color: var(--duaya-heading); }
.stat-heading, .stat-description, .dashboard-pulse small, .operation-card h2,
.operation-card p, .operation-arrow, .dashboard-chart-totals small, .allocation-caption,
.insight-label, .holding-reference, .holding-bottom, .dashboard-disclosure,
.dashboard-disclosure summary, .duaya-brand-caption, .page-heading .eyebrow { color: var(--duaya-muted); }
.currency { color: var(--duaya-muted); }
.dashboard-frequency-panel .card-body small { color: var(--duaya-muted) !important; }
.duaya-brand--light .duaya-brand-name { color: #f0fff3; }
.duaya-brand--light .duaya-brand-caption { color: #b6d6c7; }

.card, .dashboard-pulse, .operation-card {
    background: linear-gradient(130deg, var(--duaya-glint), transparent 45%) 0 0 / 100% 1px no-repeat, var(--duaya-surface);
    border-color: var(--duaya-border);
    box-shadow: var(--duaya-shadow);
    -webkit-backdrop-filter: blur(16px) saturate(125%);
    backdrop-filter: blur(16px) saturate(125%);
}
.layout-menu.bg-menu-theme {
    background: var(--duaya-navigation) !important;
    border-inline-end: 1px solid var(--duaya-border);
    box-shadow: 8px 0 40px rgba(12, 47, 29, .025);
    -webkit-backdrop-filter: blur(22px) saturate(130%);
    backdrop-filter: blur(22px) saturate(130%);
}
.layout-navbar.bg-navbar-theme {
    background: var(--duaya-navigation) !important;
    border-color: var(--duaya-border);
    box-shadow: var(--duaya-shadow);
    -webkit-backdrop-filter: blur(22px) saturate(140%);
    backdrop-filter: blur(22px) saturate(140%);
    overflow: visible;
    z-index: 1040;
}
.card-header, .border-top, .border-bottom, .dashboard-pulse > div,
.risk-breakdown, .allocation-caption, .holding-bottom, .dashboard-disclosure { border-color: var(--duaya-border) !important; }
.bg-menu-theme .menu-item .menu-link { color: var(--duaya-text); }
.bg-menu-theme .menu-item .menu-link:hover { color: var(--duaya-accent); background: var(--duaya-accent-soft); }
.bg-menu-theme .menu-inner > .menu-item.active > .menu-link { background: var(--duaya-accent-soft) !important; color: var(--duaya-accent) !important; }
.bg-menu-theme .menu-item.active .menu-icon { color: var(--duaya-accent); }
.menu-header { color: var(--duaya-muted) !important; }
.sidebar-note { background: var(--duaya-soft); color: var(--duaya-muted); border-color: var(--duaya-border); }
.avatar-circle { background: var(--duaya-accent-soft); color: var(--duaya-accent); border-color: var(--duaya-border); box-shadow: none; }
.holding-card { background: var(--duaya-soft); border-color: var(--duaya-border); }
.operation-card { color: var(--duaya-text); }
.holding-symbol, .operation-icon { background: var(--duaya-accent-soft); color: var(--duaya-accent); }
.operation-card:nth-child(2) .operation-icon { background: rgba(195, 156, 75, .12); color: #b99448; }
.operation-card:nth-child(3) .operation-icon { background: rgba(94, 157, 177, .12); color: #73a4b5; }
.dashboard-hero { border: 1px solid rgba(183, 233, 193, .17); box-shadow: 0 12px 35px rgba(17, 66, 39, .10), inset 0 1px 0 rgba(236, 255, 238, .13); }
.dashboard-hero h2 { color: #f2fff4; }
[data-bs-theme='dark'] .dashboard-hero,
[data-bs-theme='dark'] .dashboard-workspace--investor .dashboard-hero { background: linear-gradient(115deg, rgba(20, 63, 45, .90), rgba(41, 93, 60, .76)); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
[data-bs-theme='dark'] .dashboard-hero .btn-light { background: rgba(208, 246, 210, .12); color: #d8f9dc; border-color: rgba(191, 235, 195, .25); }
.table { --bs-table-bg: transparent; --bs-table-color: var(--duaya-text); --bs-table-border-color: var(--duaya-border); --bs-table-hover-color: var(--duaya-text); --bs-table-hover-bg: var(--duaya-soft); }
.table th { background: var(--duaya-soft); color: var(--duaya-muted); }
.table > thead > tr > th { --bs-table-bg: transparent; background-color: var(--duaya-soft) !important; box-shadow: none; }
.table td { color: var(--duaya-text); border-color: var(--duaya-border); }
.table tbody tr:hover { background: var(--duaya-soft); }
.form-control, .form-select, .input-group-text { color: var(--duaya-text); background-color: var(--duaya-field); border-color: var(--duaya-border); }
.form-control:focus, .form-select:focus { color: var(--duaya-heading); background-color: var(--duaya-field); border-color: var(--duaya-accent); box-shadow: 0 0 0 .2rem var(--duaya-accent-soft); }
.form-control::placeholder { color: var(--duaya-muted); opacity: .78; }
.form-control:disabled, .form-select:disabled { background-color: var(--duaya-soft); color: var(--duaya-muted); }
.form-label, .form-check-label { color: var(--duaya-text); }
.dropdown-menu, .list-group-item { background-color: var(--duaya-solid); color: var(--duaya-text); border-color: var(--duaya-border); }
.page-link { background-color: var(--duaya-surface); color: var(--duaya-text); border-color: var(--duaya-border); }
.page-link:hover { background-color: var(--duaya-accent-soft); color: var(--duaya-accent); }
.pagination .active .page-link { background-color: var(--duaya-accent); color: var(--duaya-canvas); border-color: var(--duaya-accent); }
.progress { background: var(--duaya-soft); }
.opportunity-top { background: linear-gradient(120deg, var(--duaya-accent-soft), var(--duaya-soft)); }
.opportunity-card h2 a { color: var(--duaya-heading); }
.opportunity-card { border-color: var(--duaya-border); }
.opportunity-top .bg-white { background-color: var(--duaya-solid) !important; }
.opportunity-metrics strong { color: var(--duaya-heading); }
.opportunity-metrics small, .detail-list dt { color: var(--duaya-muted); }
.auth-form-panel { background: var(--duaya-surface); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.auth-form-wrap { min-inline-size: 0; }
.content-footer { background: transparent !important; }
.auth-theme-controls { position: relative; display: flex; align-items: center; justify-content: flex-end; gap: 10px; }

[data-bs-theme='dark'] .btn-primary {
    --bs-btn-color: #102c1e; --bs-btn-bg: #83d3b8; --bs-btn-border-color: #83d3b8;
    --bs-btn-hover-color: #102c1e; --bs-btn-hover-bg: #a1e3c5; --bs-btn-hover-border-color: #a1e3c5;
    --bs-btn-active-color: #102c1e; --bs-btn-active-bg: #75c2a4; --bs-btn-active-border-color: #75c2a4;
    --bs-btn-disabled-bg: #83d3b8; --bs-btn-disabled-border-color: #83d3b8;
    box-shadow: 0 4px 16px rgba(68, 164, 123, .12);
}
[data-bs-theme='dark'] .btn-outline-primary { --bs-btn-color: #a5dfc4; --bs-btn-border-color: #4f7a63; --bs-btn-hover-color: #e6f5e9; --bs-btn-hover-bg: #28563f; --bs-btn-hover-border-color: #76aa8b; --bs-btn-active-bg: #28563f; --bs-btn-active-border-color: #76aa8b; }
[data-bs-theme='dark'] .btn-outline-secondary { --bs-btn-color: #bad0bf; --bs-btn-border-color: #405b49; --bs-btn-hover-bg: #2b4936; --bs-btn-hover-border-color: #56735c; --bs-btn-active-bg: #2b4936; --bs-btn-active-border-color: #56735c; }
[data-bs-theme='dark'] .bg-label-primary { background: rgba(109, 205, 167, .12) !important; color: #9bdbbb !important; }
[data-bs-theme='dark'] .bg-label-success { background: rgba(138, 206, 142, .12) !important; color: #afd7a7 !important; }
[data-bs-theme='dark'] .bg-label-info { background: rgba(129, 185, 208, .12) !important; color: #a5ccdf !important; }
[data-bs-theme='dark'] .bg-label-warning { background: rgba(215, 177, 99, .12) !important; color: #e1c68b !important; }
[data-bs-theme='dark'] .bg-label-danger { background: rgba(236, 142, 151, .12) !important; color: #f0afb4 !important; }
[data-bs-theme='dark'] .bg-label-secondary { background: rgba(163, 189, 169, .12) !important; color: #bad0bf !important; }
[data-bs-theme='dark'] .text-danger { color: #f0afb4 !important; }
[data-bs-theme='dark'] .alert-info { --bs-alert-color: #b8d7df; --bs-alert-bg: rgba(102, 162, 180, .13); --bs-alert-border-color: rgba(135, 183, 196, .2); }
[data-bs-theme='dark'] .alert-success { --bs-alert-color: #afd7a7; --bs-alert-bg: rgba(138, 206, 142, .12); --bs-alert-border-color: rgba(138, 206, 142, .2); }
[data-bs-theme='dark'] .alert-warning { --bs-alert-color: #e1c68b; --bs-alert-bg: rgba(215, 177, 99, .12); --bs-alert-border-color: rgba(215, 177, 99, .2); }
[data-bs-theme='dark'] .alert-danger { --bs-alert-color: #f0afb4; --bs-alert-bg: rgba(236, 142, 151, .12); --bs-alert-border-color: rgba(236, 142, 151, .2); }
.apexcharts-tooltip, .apexcharts-xaxistooltip { border-color: var(--duaya-border) !important; background: var(--duaya-solid) !important; color: var(--duaya-text) !important; box-shadow: var(--duaya-shadow) !important; }
.apexcharts-tooltip-title { background: var(--duaya-soft) !important; border-color: var(--duaya-border) !important; color: var(--duaya-heading) !important; }

.theme-picker { position: relative; flex: 0 0 auto; }
.theme-toggle { display: grid; place-items: center; inline-size: 36px; block-size: 36px; border: 1px solid var(--duaya-border); border-radius: 10px; background: var(--duaya-soft); color: var(--duaya-accent); cursor: pointer; list-style: none; }
.theme-toggle::-webkit-details-marker { display: none; }
.theme-toggle::marker { content: ''; }
.theme-toggle i { font-size: 19px; }
.theme-indicator { display: none; }
.theme-indicator--system { display: inline-block; }
[data-theme-preference='light'] .theme-indicator--system,
[data-theme-preference='dark'] .theme-indicator--system { display: none; }
[data-theme-preference='light'] .theme-indicator--light,
[data-theme-preference='dark'] .theme-indicator--dark { display: inline-block; }
.theme-picker[open] .theme-toggle, .theme-toggle:hover { background: var(--duaya-accent-soft); border-color: var(--duaya-accent); }
.theme-options { position: absolute; inset-block-start: calc(100% + 10px); inset-inline-end: 0; inline-size: 200px; padding: 8px; border: 1px solid var(--duaya-border); border-radius: 14px; background: var(--duaya-solid); box-shadow: 0 16px 44px rgba(0, 20, 9, .20), inset 0 1px 0 var(--duaya-glint); z-index: 1100; animation: duaya-menu-in .16s ease-out; }
.theme-options-heading { display: block; padding: 7px 10px 9px; color: var(--duaya-muted); font-size: 11px; font-weight: 600; }
.theme-options button { display: flex; align-items: center; gap: 11px; inline-size: 100%; padding: 11px; border: 0; border-radius: 9px; background: transparent; color: var(--duaya-text); font: inherit; font-size: 12px; text-align: start; cursor: pointer; }
.theme-options button:hover { background: var(--duaya-soft); }
.theme-options button[aria-pressed='true'] { background: var(--duaya-accent-soft); color: var(--duaya-accent); }
.theme-options button > i { font-size: 17px; }
.theme-option-check { margin-inline-start: auto; visibility: hidden; }
.theme-options button[aria-pressed='true'] .theme-option-check { visibility: visible; }
.theme-toggle:focus-visible, .theme-options button:focus-visible { outline: 3px solid var(--duaya-accent); outline-offset: 3px; }
.skip-link { background: var(--duaya-solid); color: var(--duaya-heading); border: 1px solid var(--duaya-border); border-radius: 8px; }

@keyframes duaya-menu-in { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
@keyframes duaya-welcome-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: no-preference) {
    [data-theme-ready='true'] body, [data-theme-ready='true'] .card, [data-theme-ready='true'] .layout-menu,
    [data-theme-ready='true'] .layout-navbar, [data-theme-ready='true'] .form-control,
    [data-theme-ready='true'] .form-select, [data-theme-ready='true'] .dashboard-pulse,
    [data-theme-ready='true'] .holding-card, [data-theme-ready='true'] .operation-card { transition: background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease; }
    .dashboard-hero { animation: duaya-welcome-in .4s ease-out backwards; }
    .dashboard-kpis > :nth-child(1) { animation: duaya-welcome-in .4s .04s ease-out backwards; }
    .dashboard-kpis > :nth-child(2) { animation: duaya-welcome-in .4s .08s ease-out backwards; }
    .dashboard-kpis > :nth-child(3) { animation: duaya-welcome-in .4s .12s ease-out backwards; }
    .dashboard-kpis > :nth-child(4) { animation: duaya-welcome-in .4s .16s ease-out backwards; }
}
@media (hover: hover) and (pointer: fine) {
    .stat-card:hover, .holding-card:hover, .operation-card:hover { transform: translateY(-3px); border-color: var(--duaya-accent); box-shadow: var(--duaya-lift-shadow); }
    .theme-toggle:hover { box-shadow: 0 0 0 3px var(--duaya-accent-soft); }
}
@media (max-width: 575px) {
    .navbar-account { gap: 6px !important; }
    .navbar-account .language-switcher .btn { min-inline-size: 3rem; padding-inline: 8px; font-size: 11px; }
    .navbar-mobile-brand { margin-inline-end: 6px; }
    .navbar-mobile-brand .duaya-brand-mark { inline-size: 36px; block-size: 29px; flex-basis: 36px; }
    .navbar-mobile-brand .duaya-brand-mark img { inline-size: 60px; block-size: 60px; inset-inline-start: -12px; inset-block-start: -16.5px; }
    .theme-toggle { inline-size: 32px; block-size: 32px; border-radius: 9px; }
    .navbar-account .theme-picker, .auth-theme-controls .theme-picker { position: static; }
    .navbar-account .theme-options { inset-inline: 12px; inset-block-start: calc(100% + 8px); inline-size: auto; }
    .auth-theme-controls .theme-options { inset-inline: 0; inline-size: auto; }
}
@media (prefers-reduced-motion: reduce) {
    .theme-options, .dashboard-hero, .dashboard-kpis > * { animation: none !important; }
    .stat-card:hover, .holding-card:hover, .operation-card:hover, .opportunity-card:hover { transform: none; }
    .opportunity-card { transition: none; }
}
@media (max-width: 379px) {
    .layout-navbar.navbar-detached { padding-inline: 10px; }
    .layout-navbar .layout-menu-toggle { margin-inline: 0 8px !important; }
    .navbar-account { flex-wrap: nowrap; gap: 4px !important; }
    .navbar-account .language-switcher { gap: 2px !important; }
    .navbar-account .language-switcher .btn { min-inline-size: 0; padding-inline: 6px; font-size: 10px; }
    .navbar-mobile-brand { margin-inline-end: 4px; }
    .navbar-mobile-brand .duaya-brand-mark { inline-size: 28px; block-size: 23px; flex-basis: 28px; }
    .navbar-mobile-brand .duaya-brand-mark img { inline-size: 47px; block-size: 47px; inset-inline-start: -9.5px; inset-block-start: -13px; }
    .theme-toggle { inline-size: 30px; }
    .navbar-signout { padding-inline: 6px; }
    .dashboard-kpis { grid-template-columns: minmax(0, 1fr); }
    .dashboard-kpis .stat-heading { font-size: 12px; align-items: center; }
    .dashboard-kpis .stat-value { font-size: 24px !important; }
    .dashboard-kpis .stat-description { font-size: 11px; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .card, .dashboard-pulse, .operation-card, .layout-menu.bg-menu-theme, .layout-navbar.bg-navbar-theme, .auth-form-panel { background: var(--duaya-solid) !important; }
}
@media (prefers-reduced-transparency: reduce) {
    .card, .dashboard-pulse, .operation-card, .layout-menu.bg-menu-theme, .layout-navbar.bg-navbar-theme, .auth-form-panel { background: var(--duaya-solid) !important; -webkit-backdrop-filter: none; backdrop-filter: none; }
}
@media (forced-colors: active) {
    .theme-options button[aria-pressed='true'] { outline: 1px solid Highlight; }
    .theme-toggle, .card, .dashboard-pulse, .operation-card { border: 1px solid ButtonText; }
}
@media print {
    :root, [data-bs-theme='dark'] { --duaya-canvas: #fff; --duaya-surface: #fff; --duaya-solid: #fff; --duaya-soft: #fafafa; --duaya-text: #222; --duaya-heading: #111; --duaya-muted: #555; --duaya-border: #ddd; --duaya-shadow: none; --duaya-accent: #205c40; --bs-body-color: #222; --bs-heading-color: #111; }
    body { background: #fff; }
    .theme-picker { display: none; }
    .card, .dashboard-pulse, .operation-card { -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
    .dashboard-hero, [data-bs-theme='dark'] .dashboard-hero { background: #fff; border-color: #ddd; box-shadow: none; }
    .dashboard-hero h2, .dashboard-hero p, .dashboard-hero-label, .dashboard-hero time { color: #222; }
}
