:root {
    --bs-primary: #278b7d;
    --bs-primary-rgb: 39, 139, 125;
    --bs-link-color: #237d70;
    --bs-link-hover-color: #155e54;
    --bs-heading-color: #1e3d35;
    --portal-purple: #278b7d;
    --portal-ink: #193c36;
    --portal-muted: #74817d;
    --duaya-green: #278b7d;
    --duaya-dark: #173e36;
    --duaya-border: #e4ece8;
}

body { background: #f4f7f5; color: #334b43; }
h1, h2, h3, h4, h5, h6 { color: #1e3d35; }
a { color: #237d70; }
a:hover { color: #155e54; }
.btn { border-radius: 9px; font-weight: 600; }
.btn-primary {
    --bs-btn-bg: #278b7d; --bs-btn-border-color: #278b7d;
    --bs-btn-hover-bg: #20786c; --bs-btn-hover-border-color: #20786c;
    --bs-btn-active-bg: #195e54; --bs-btn-active-border-color: #195e54;
    --bs-btn-disabled-bg: #278b7d; --bs-btn-disabled-border-color: #278b7d;
    --bs-btn-focus-shadow-rgb: 39, 139, 125;
    box-shadow: 0 3px 9px #1d6d6020;
}
.btn-outline-primary {
    --bs-btn-color: #237d70; --bs-btn-border-color: #9ac6b8;
    --bs-btn-hover-bg: #278b7d; --bs-btn-hover-border-color: #278b7d;
    --bs-btn-active-bg: #20786c; --bs-btn-active-border-color: #20786c;
}
.btn-outline-secondary { --bs-btn-border-color: #dce5df; --bs-btn-color: #52695f; }
.bg-label-primary { background: #e8f4ef !important; color: #237d70 !important; }
.bg-label-info { background: #eaf3f8 !important; color: #37788d !important; }
.bg-label-success { background: #eaf5ec !important; color: #3f8550 !important; }
.bg-label-warning { background: #fcf3e3 !important; color: #b4822b !important; }
.bg-label-danger { background: #fcebec !important; color: #cf4d58 !important; }
.form-control:focus, .form-select:focus { border-color: #61a997; box-shadow: 0 0 0 .18rem #278b7d14; }
a:focus-visible, button:focus-visible { outline-color: #52a895; }

.duaya-brand { display: inline-flex; align-items: center; gap: 10px; color: #224a40; min-inline-size: 0; }
.duaya-brand-mark { display: block; position: relative; inline-size: 60px; block-size: 48px; overflow: hidden; flex: 0 0 60px; background: #fff; border-radius: 4px; }
.duaya-brand-mark img { position: absolute; inline-size: 100px; block-size: 100px; max-inline-size: none; inset-inline-start: -20px; inset-block-start: -27px; }
.duaya-brand-copy { display: flex; flex-direction: column; gap: 5px; min-inline-size: 0; }
.duaya-brand-name { color: inherit; font-size: 16px; font-weight: 750; line-height: 1.3; letter-spacing: -.4px; }
.duaya-brand-caption { color: #879b90; font-size: 8px; letter-spacing: 1.6px; font-weight: 600; }
.duaya-brand--light { color: #fff; }
.duaya-brand--light .duaya-brand-mark { border-radius: 10px; }
.duaya-brand--light .duaya-brand-caption { color: #b6d6c7; }
.duaya-brand--light .duaya-brand-name { font-size: 20px; }
.auth-mobile-brand { display: none; }
.navbar-mobile-brand { display: none; margin-inline-end: 10px; }
.navbar-mobile-brand .duaya-brand-copy { display: none; }
.navbar-mobile-brand .duaya-brand-mark { inline-size: 44px; block-size: 35px; flex-basis: 44px; }
.navbar-mobile-brand .duaya-brand-mark img { inline-size: 73px; block-size: 73px; inset-inline-start: -14.5px; inset-block-start: -20px; }
.navbar-signout-icon { display: none; }

.layout-menu.bg-menu-theme { box-shadow: 1px 0 0 #e6ece7; background: #fff !important; }
.layout-menu .app-brand { margin-block: 16px 12px; padding-inline: 20px; }
.menu-header { color: #9aa79e !important; font-size: 10px !important; letter-spacing: 1.2px; }
.bg-menu-theme .menu-item .menu-link { border-radius: 9px; font-size: 13px; color: #6a7d72; }
.bg-menu-theme .menu-inner > .menu-item.active > .menu-link { background: #e8f3ed !important; color: #247c68 !important; box-shadow: none !important; font-weight: 650; }
.bg-menu-theme .menu-inner > .menu-item.active::before { display: none; }
.bg-menu-theme .menu-item .menu-link:hover { background: #f4f8f5; color: #247c68; }
.bg-menu-theme .menu-item.active .menu-icon { color: #278b7d; }
.sidebar-note { background: #f1f7f3; border: 1px solid #e3eee6; color: #7b8a80; border-radius: 12px !important; }
.sidebar-note .fw-medium { color: #365c49; }
.layout-navbar.navbar-detached { box-shadow: 0 2px 12px #143e3210; border: 1px solid #e5ece7; border-radius: 13px; }
.avatar-circle { background: #e6f1e9; color: #35795d; border: 2px solid #fff; box-shadow: 0 0 0 1px #dce9de; }
.page-heading .eyebrow { color: #6d9380; font-size: 9px; letter-spacing: 1.8px; }
.page-heading h1 { color: #1e3d35; font-size: clamp(22px, 2.1vw, 28px); font-weight: 700; letter-spacing: -.8px; }
.page-heading p.text-muted { max-inline-size: 720px; font-size: 12px; line-height: 1.8; }
.card { border: 1px solid var(--duaya-border); border-radius: 16px; box-shadow: 0 4px 20px #153b2e04; }
.card-header { border-color: #edf2ee; padding: 22px 24px; }
.card-header h2, .card-header .h5 { font-weight: 650; font-size: 15px; }
.card-header small { font-size: 11px; line-height: 1.8; }
.table th { background: #f8faf8; color: #6d806f; font-size: 10px; font-weight: 650; letter-spacing: .65px; padding-block: 14px; }
.table td { font-size: 13px; color: #52665a; padding-block: 17px; border-color: #f0f3f0; }
.table tbody tr:last-child td { border-bottom: 0; }
.table tbody tr:hover { background: #fbfdfb; }
.table .badge { font-size: 10px; font-weight: 500; }
.table-responsive { border-radius: 0 0 16px 16px; }
.money { font-variant-numeric: tabular-nums; letter-spacing: -.3px; }
.currency { color: #96a397; font-weight: 500; }
.stat-card .card-body { padding: 22px; }
.stat-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-block-end: 20px; color: #657869; font-size: 12px; font-weight: 500; }
.stat-icon { inline-size: 38px; block-size: 38px; border-radius: 12px; font-size: 20px; flex-shrink: 0; }
.stat-value { color: #264839; font-size: clamp(21px, 1.8vw, 29px) !important; font-weight: 700; margin-block-end: 9px; letter-spacing: -.7px; }
.stat-description { font-size: 11px; color: #6d7d6d; line-height: 1.7; }
.stat-card { position: relative; overflow: hidden; }
.stat-card::after { content: ''; position: absolute; inset-block-end: 0; inset-inline: 22px; block-size: 2px; background: #4c9b782b; }
.stat-card--success::after { background: #78a67442; }
.stat-card--info::after { background: #6b9aaf42; }
.stat-card--warning::after { background: #c7a25e42; }

.dashboard-workspace { display: grid; gap: 24px; }
.dashboard-workspace > * { min-inline-size: 0; }
.dashboard-hero { display: flex; align-items: center; justify-content: space-between; gap: 30px; position: relative; overflow: hidden; padding: 30px 34px; border-radius: 18px; color: #fff; background: linear-gradient(115deg, #173f35, #286a52); }
.dashboard-hero::before, .dashboard-hero::after { content: ''; position: absolute; pointer-events: none; border: 1px solid #b4d7b71a; border-radius: 50%; inline-size: 330px; block-size: 330px; inset-inline-end: 100px; inset-block-start: -180px; }
.dashboard-hero::after { inline-size: 440px; block-size: 440px; inset-inline-end: -55px; inset-block-start: -160px; border-width: 30px; border-color: #b4d7b708; }
.dashboard-workspace--investor .dashboard-hero { background: linear-gradient(115deg, #1c5147, #377a65); }
.dashboard-hero > * { position: relative; z-index: 1; }
.dashboard-hero-label { display: inline-flex; align-items: center; gap: 7px; color: #bad7c4; font-size: 9px; font-weight: 650; letter-spacing: 1.4px; text-transform: uppercase; margin-block-end: 13px; }
.dashboard-hero-label::before { content: ''; inline-size: 5px; block-size: 5px; border-radius: 50%; background: #b8d4a1; }
.dashboard-hero h2 { color: #fff; font-size: clamp(22px, 2.1vw, 30px); line-height: 1.4; font-weight: 650; letter-spacing: -.7px; margin-block-end: 9px; }
.dashboard-hero p { color: #c1d6c7; font-size: 12px; line-height: 1.9; margin: 0; max-inline-size: 650px; }
.dashboard-hero-aside { min-inline-size: 190px; text-align: end; }
.dashboard-hero-aside time { display: block; color: #bad2c2; font-size: 10px; margin-block-end: 16px; }
.dashboard-hero .btn { font-size: 11px; padding: 11px 16px; border: 1px solid #ffffff38; }
.dashboard-hero .btn-light { color: #244f3a; background: #f7fbf5; }
.dashboard-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.dashboard-pulse { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 22px 24px; gap: 22px; background: #fff; border: 1px solid var(--duaya-border); border-radius: 14px; }
.dashboard-pulse > div { border-inline-end: 1px solid #eaf0eb; padding-inline-end: 15px; }
.dashboard-pulse > div:last-child { border: 0; padding: 0; }
.dashboard-pulse small { display: block; color: #70826e; font-size: 11px; margin-block-end: 8px; }
.dashboard-pulse strong { color: #425d49; font-size: 16px; font-weight: 650; }
.dashboard-operations { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.operation-card { display: flex; align-items: flex-start; gap: 15px; padding: 22px; background: #fff; border: 1px solid var(--duaya-border); border-radius: 14px; color: #617566; transition: border-color .16s, transform .16s; }
.operation-card:hover { border-color: #94be9f; transform: translateY(-2px); }
.operation-icon { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 12px; background: #f0f5eb; color: #789358; font-size: 21px; flex-shrink: 0; }
.operation-card:nth-child(2) .operation-icon { background: #fbf3e4; color: #bb9750; }
.operation-card:nth-child(3) .operation-icon { background: #eaf2f5; color: #6d94a1; }
.operation-card h2 { font-size: 11px; margin-block-end: 9px; color: #7c8e7e; font-weight: 500; }
.operation-card strong { font-size: 26px; color: #3d5d43; font-weight: 650; line-height: 1; }
.operation-card p { font-size: 11px; line-height: 1.8; margin-block: 9px 0; color: #697b62; }
.operation-arrow { margin-inline-start: auto; color: #a6b6a9; font-size: 20px; }
.dashboard-charts { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); gap: 24px; }
.dashboard-charts > *, .dashboard-details > * { min-inline-size: 0; }
.dashboard-chart-totals { display: flex; gap: 36px; flex-wrap: wrap; margin-block-end: 10px; }
.dashboard-chart-totals small { display: block; font-size: 10px; color: #95a18f; margin-block-end: 5px; }
.dashboard-chart-totals strong { font-size: 18px; font-weight: 650; color: #436345; }
.chart-area { min-block-size: 280px; }
.dashboard-year-form { display: inline-flex; align-items: center; gap: 7px; }
.dashboard-year-form .form-control { inline-size: 90px; font-size: 11px; min-block-size: 33px; }
.dashboard-year-form .btn { min-block-size: 33px; font-size: 10px; }
.allocation-caption { display: flex; justify-content: space-between; border-top: 1px solid #edf1ea; padding-block-start: 18px; font-size: 11px; color: #93a08a; }
.allocation-caption strong { color: #456847; }
.dashboard-details { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 24px; }
.dashboard-insights { display: grid; gap: 20px; }
.insight-label { font-size: 10px; color: #92a085; display: block; margin-block-end: 8px; }
.insight-value { color: #486841; font-size: 21px; font-weight: 650; }
.risk-breakdown { padding-block-start: 18px; border-top: 1px solid #edf1ea; }
.risk-breakdown > div { display: flex; justify-content: space-between; align-items: center; margin-block-start: 12px; gap: 15px; }
.risk-breakdown .money { font-size: 12px; }
.investor-holdings { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; padding: 20px 24px 24px; }
.holding-card { border: 1px solid #e6eee4; background: #fbfdf9; border-radius: 12px; padding: 19px; min-inline-size: 0; }
.holding-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-block-end: 17px; }
.holding-symbol { display: grid; place-items: center; inline-size: 35px; block-size: 35px; border-radius: 10px; background: #edf3e9; color: #8da27a; font-size: 13px; font-weight: 650; }
.holding-card h3 { font-size: 12px; line-height: 1.7; margin-block-end: 5px; }
.holding-reference { font-size: 11px; color: #72846c; overflow-wrap: anywhere; }
.holding-capital { display: block; font-size: 20px; margin-block: 17px; color: #4b6f40; font-weight: 650; }
.holding-bottom { display: flex; justify-content: space-between; gap: 10px; border-top: 1px solid #e6ecdf; padding-block-start: 13px; color: #9ca78f; font-size: 9px; }
.holding-bottom strong { font-weight: 500; color: #6e8461; }
.dashboard-section-link { font-size: 10px; font-weight: 600; white-space: nowrap; }
.dashboard-disclosure { border-top: 1px solid #dfe8dc; padding-block-start: 18px; color: #99a58e; font-size: 10px; line-height: 1.9; }
.dashboard-disclosure summary { cursor: pointer; color: #74896a; font-weight: 600; }
.dashboard-disclosure p { margin-block: 10px 0; }
.dashboard-frequency-panel .form-select { font-size: 11px; min-inline-size: 155px; }
.dashboard-frequency-panel .card-header { gap: 16px !important; }
.dashboard-frequency-panel .form-label { font-size: 10px; }
.dashboard-frequency-panel .card-body small { color: #a0ab93 !important; font-size: 10px; }
.auth-story { background: linear-gradient(145deg, #163d33, #2d7152); }
.auth-story .auth-features p { color: #91b99a; }
.auth-story .auth-features span { color: #dce9db; }
.hero-banner { background: linear-gradient(115deg, #1d493c, #3e8056); }
.hero-banner p { color: #dce9d8; }
.opportunity-top { background: linear-gradient(125deg, #edf4e9, #f7faf3); }
.project-monogram { color: #75a46c30; }
.progress { background: #edf2e7; }
.empty-symbol { color: #9db48a; }

html[lang='ar'] .duaya-brand-name,
html[lang='ar'] .duaya-brand-caption,
html[lang='ar'] .dashboard-hero-label,
html[lang='ar'] .dashboard-hero h2,
html[lang='ar'] .page-heading .eyebrow { letter-spacing: 0; }
html[lang='ar'] .duaya-brand-caption { font-size: 9px; }
html[lang='ar'] .stat-heading { font-size: 12px; }
html[lang='ar'] .stat-description,
html[lang='ar'] .operation-card p,
html[lang='ar'] .dashboard-hero p { line-height: 1.9; }
html[lang='ar'] .table th { font-size: 11px; }
html[lang='ar'] .dashboard-hero h2 { line-height: 1.6; font-size: clamp(22px, 2vw, 29px); }
html[lang='ar'] .operation-card h2 { font-size: 12px; }
html[lang='ar'] .holding-card h3 { font-size: 13px; }

@media (max-width: 1399px) {
    .dashboard-charts { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); }
    .dashboard-kpis { gap: 14px; }
    .stat-card .card-body { padding: 18px; }
}
@media (max-width: 991px) {
    .dashboard-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-charts, .dashboard-details { grid-template-columns: minmax(0, 1fr); }
    .investor-holdings { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-operations { gap: 12px; }
    .operation-card { padding: 17px; gap: 10px; }
    .operation-icon { inline-size: 33px; block-size: 33px; }
}
@media (max-width: 1199px) {
    .navbar-mobile-brand { display: inline-flex; }
}
@media (max-width: 850px) {
    .auth-mobile-brand { display: inline-flex; margin-block-end: 25px; }
}
@media (max-width: 575px) {
    .navbar-signout-label { display: none; }
    .navbar-signout-icon { display: inline; font-size: 18px; }
    .navbar-signout { padding-inline: 9px; }
    .dashboard-workspace { gap: 18px; }
    .dashboard-hero { padding: 25px; flex-direction: column; align-items: flex-start; gap: 20px; }
    .dashboard-hero-aside { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; inline-size: 100%; text-align: start; }
    .dashboard-hero-aside time { margin: 0; }
    .dashboard-hero h2 { font-size: 22px; }
    .dashboard-kpis { gap: 12px; }
    .stat-card .card-body { padding: 16px 14px; }
    .stat-heading { font-size: 10px; align-items: flex-start; margin-block-end: 14px; }
    .stat-icon { inline-size: 29px; block-size: 29px; border-radius: 9px; font-size: 17px; }
    .stat-value { font-size: 18px !important; }
    .stat-description { font-size: 9px; }
    .dashboard-pulse { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 19px; gap: 20px; }
    .dashboard-pulse > div:nth-child(2) { border: 0; }
    .dashboard-operations { grid-template-columns: minmax(0, 1fr); }
    .operation-card { padding: 18px; }
    .operation-card p { margin-block-start: 6px; }
    .operation-card strong { font-size: 23px; }
    .investor-holdings { grid-template-columns: minmax(0, 1fr); padding: 16px; }
    .card-header { padding: 20px; }
    .dashboard-section-link { white-space: normal; }
    .dashboard-frequency-panel .card-header > div { max-inline-size: 100%; }
    .dashboard-frequency-panel form { inline-size: 100%; }
    .dashboard-frequency-panel form > div { flex: 1; }
    .dashboard-frequency-panel .form-select { inline-size: 100%; min-inline-size: 0; }
    html[lang='ar'] .stat-heading { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
    .operation-card { transition: none; }
    .operation-card:hover { transform: none; }
}

.investor-workspace { display: grid; gap: 24px; }
.investor-summary { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; padding: 26px; }
.investor-identity { display: flex; align-items: center; gap: 18px; min-inline-size: 0; }
.investor-avatar { display: inline-grid; place-items: center; inline-size: 38px; block-size: 38px; flex: 0 0 auto; border-radius: 12px; background: var(--duaya-accent-soft); color: var(--duaya-accent); font-size: 16px; font-weight: 650; border: 1px solid var(--duaya-border); }
.investor-avatar--large { inline-size: 62px; block-size: 62px; border-radius: 19px; font-size: 26px; }
.investor-identity-copy { min-inline-size: 0; }
.investor-summary-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-block-end: 8px; }
.investor-summary h2 { font-size: 20px; margin: 0; overflow-wrap: anywhere; }
.investor-summary p { display: flex; flex-wrap: wrap; gap: 10px; font-size: 12px; color: var(--duaya-muted); margin: 0; overflow-wrap: anywhere; }
.investor-summary > .btn { flex: 0 0 auto; }
.investor-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.investor-editor { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(300px, 1fr); align-items: start; gap: 24px; }
.investor-form-stack { display: grid; align-content: start; gap: 24px; min-inline-size: 0; }
.investor-section { min-inline-size: 0; }
.investor-section-heading { display: flex; align-items: flex-start; gap: 13px; }
.investor-section-icon { display: grid; place-items: center; inline-size: 36px; block-size: 36px; flex: 0 0 auto; border-radius: 11px; background: var(--duaya-accent-soft); color: var(--duaya-accent); font-size: 19px; }
.investor-section-heading h2, .investor-directory-heading h2 { font-size: 14px; line-height: 1.5; margin: 0; font-weight: 650; }
.investor-section-heading p, .investor-directory-heading p { font-size: 11px; line-height: 1.8; margin: 4px 0 0; color: var(--duaya-muted); }
.investor-section .card-header { padding: 23px; }
.investor-section .card-body { padding: 24px; }
.investor-section .card-header + .card-body { padding-block-start: 24px; }
.investor-section .card-body > .row:last-child > div > .mb-5 { margin-block-end: 0 !important; }
.investor-section .form-control, .investor-section .form-select { font-size: 13px; }
.investor-section .form-label { font-weight: 550; }
.investor-section small { font-size: 11px; line-height: 1.8; }
.investor-savebar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 18px; padding: 20px 0; border-block-start: 1px solid var(--duaya-border); }
.investor-savebar > span { font-size: 11px; color: var(--duaya-muted); }
.investor-savebar > div { display: flex; flex-wrap: wrap; gap: 10px; }
.investor-access { scroll-margin-block-start: 110px; border-color: var(--duaya-accent) !important; }
.investor-login-email { display: flex; align-items: center; gap: 10px; padding: 13px 14px; background: var(--duaya-accent-soft); border: 1px solid var(--duaya-border); border-radius: 10px; margin-block-end: 23px; overflow-wrap: anywhere; }
.investor-login-email > div { min-inline-size: 0; }
.investor-login-email small { display: block; color: var(--duaya-muted); margin-block-end: 2px; }
.investor-login-email bdi { display: block; font-size: 12px; color: var(--duaya-heading); }
.investor-account-indicator { inline-size: 7px; block-size: 7px; border-radius: 50%; background: var(--duaya-accent); flex: 0 0 auto; }
.investor-access-note { display: flex; align-items: flex-start; gap: 8px; color: var(--duaya-muted); font-size: 10px; line-height: 1.9; margin: 16px 0 0; }
.investor-access-note > i { flex: 0 0 auto; font-size: 16px; }
.investor-access-unavailable { text-align: center; padding: 10px 0; }
.investor-access-unavailable > i { display: block; color: var(--duaya-muted); font-size: 30px; margin-block-end: 12px; }
.investor-detail-list { display: grid; gap: 17px; margin: 0; }
.investor-detail-list > div { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.investor-detail-list dt { color: var(--duaya-muted); font-size: 11px; font-weight: 400; }
.investor-detail-list dd { margin: 0; font-size: 12px; text-align: end; }
.investor-filters { flex-direction: row; padding: 22px; margin: 0; }
.investor-filters .investor-search { flex: 2; }
.investor-search-control { position: relative; }
.investor-search-control > i { position: absolute; inset-inline-start: 12px; inset-block-start: 50%; transform: translateY(-50%); color: var(--duaya-muted); pointer-events: none; }
.investor-search-control > input { padding-inline-start: 36px; }
.investor-directory { overflow: hidden; }
.investor-directory .table-responsive { overflow-y: hidden; }
.investor-directory-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px; }
.investor-directory-symbol { display: grid; place-items: center; inline-size: 38px; block-size: 38px; border-radius: 12px; font-size: 22px; background: var(--duaya-accent-soft); color: var(--duaya-accent); }
.investor-row-person { display: inline-flex; align-items: center; gap: 12px; min-inline-size: 0; }
.investor-row-copy { display: block; min-inline-size: 0; overflow-wrap: anywhere; }
.investor-row-copy strong { display: block; color: var(--duaya-heading); font-weight: 600; font-size: 12px; }
.investor-row-copy small { display: block; font-size: 10px; color: var(--duaya-muted); margin-block-start: 4px; }
.investor-table > tbody > tr > td { vertical-align: middle; }
.investor-table-phone { white-space: nowrap; font-size: 11px !important; }
.investor-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; }
.investor-row-actions > .btn { white-space: nowrap; font-size: 10px; }
.investor-row-actions .investor-icon-button { inline-size: 32px; block-size: 32px; display: inline-grid; place-items: center; padding: 0; font-size: 16px; }
.password-control { position: relative; }
.password-control > .form-control { padding-inline-end: 46px; }
.password-control > .form-control.is-invalid { padding-inline-end: 70px; background-position: right 46px center; }
.password-toggle { position: absolute; inset-inline-end: 6px; inset-block-start: 5px; inline-size: 32px; block-size: 32px; display: grid; place-items: center; border: 0; background: transparent; color: var(--duaya-muted); border-radius: 7px; padding: 0; cursor: pointer; font-size: 18px; }
.password-toggle:hover, .password-toggle[aria-pressed='true'] { color: var(--duaya-accent); background: var(--duaya-accent-soft); }
html[dir='rtl'] .password-control > .form-control.is-invalid { background-position: left 46px center; }
@media (max-width: 1199px) {
    .investor-editor { grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr); }
}
@media (max-width: 991px) {
    .investor-editor { grid-template-columns: minmax(0, 1fr); }
    .investor-summary { gap: 18px; }
    .investor-metrics { gap: 12px; }
}
@media (max-width: 767px) {
    .investor-directory .table-responsive { overflow: visible; }
    .investor-table > thead { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .investor-table, .investor-table > tbody { display: block; }
    .investor-table > tbody > tr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; padding: 22px; border-block-end: 1px solid var(--duaya-border); }
    .investor-table > tbody > tr:last-child { border-block-end: 0; }
    .investor-table > tbody > tr > td { padding: 0; border: 0; min-inline-size: 0; box-shadow: none; }
    .investor-table td::before { display: block; content: attr(data-label); font-size: 10px; color: var(--duaya-muted); margin-block-end: 5px; }
    .investor-table td:not([data-label])::before { display: none; }
    .investor-table-identity, .investor-table-phone, .investor-table-actions, .investor-table-empty > td { grid-column: 1 / -1; }
    .investor-table-status { grid-column: 1 / -1; grid-row: 2; }
    .investor-table-phone { display: none; }
    .investor-table-actions { padding-block-start: 5px !important; }
    .investor-row-actions { justify-content: flex-start; }
    .investor-row-actions > .btn:first-child { flex: 1; }
    .investor-row-person { inline-size: 100%; }
    .investor-row-copy strong { font-size: 13px; }
    .investor-row-copy small { font-size: 11px; }
}
@media (max-width: 575px) {
    .investor-workspace, .investor-form-stack { gap: 18px; }
    .investor-summary { flex-direction: column; align-items: flex-start; padding: 20px; }
    .investor-summary > .btn { inline-size: 100%; }
    .investor-avatar--large { inline-size: 48px; block-size: 48px; font-size: 22px; border-radius: 14px; }
    .investor-summary h2 { font-size: 17px; }
    .investor-identity { gap: 12px; inline-size: 100%; }
    .investor-summary p { font-size: 11px; gap: 6px; }
    .investor-summary p > span { display: none; }
    .investor-metrics { grid-template-columns: minmax(0, 1fr); }
    .investor-metrics .stat-heading { align-items: center; }
    .investor-section .card-header, .investor-section .card-body { padding: 20px; }
    .investor-section .card-header + .card-body { padding-block-start: 20px; }
    .investor-section .card-body > .row:last-child > div > .mb-5 { margin-block-end: 1.25rem !important; }
    .investor-savebar > div, .investor-savebar .btn { inline-size: 100%; }
    .investor-filters { padding: 20px; }
    .investor-filters .filter-field { flex-basis: 100%; min-inline-size: 0; }
    .investor-filters > .btn { flex: 1; }
}
@media (prefers-reduced-motion: no-preference) {
    .investor-table > tbody > tr { transition: background-color .15s; }
    .investor-table > tbody > tr:hover { background-color: var(--duaya-accent-soft); }
}

.dashboard-analysis-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.dashboard-analysis-card { min-inline-size: 0; }
.dashboard-analysis-card .card-body { display: flex; flex-direction: column; }
.dashboard-analysis-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; min-block-size: 111px; }
.dashboard-analysis-heading > div { min-inline-size: 0; }
.dashboard-analysis-heading h2 { line-height: 1.5; }
.dashboard-analysis-heading small { display: block; line-height: 1.8; }
.dashboard-analysis-icon { display: grid; place-items: center; flex: 0 0 auto; inline-size: 34px; block-size: 34px; border-radius: 10px; font-size: 19px; color: var(--duaya-accent); background: var(--duaya-accent-soft); }
.dashboard-analysis-total { display: grid; gap: 8px; padding-block-start: 20px; }
.dashboard-analysis-total > small { color: var(--duaya-muted); font-size: 10px; }
.dashboard-analysis-total > strong { color: var(--duaya-heading); font-size: 22px; line-height: 1.5; font-weight: 650; overflow-wrap: anywhere; }
.dashboard-analysis-chart { min-block-size: 270px; margin-block-start: 12px; }
.dashboard-chart-figures { border-block-start: 1px solid var(--duaya-border); padding-block-start: 16px; margin-block-start: auto; }
.dashboard-chart-figures summary { color: var(--duaya-accent); }
.dashboard-chart-figures .table tbody th { text-transform: none; letter-spacing: 0; font-size: 11px; font-weight: 500; }
.dashboard-chart-figures .table th, .dashboard-chart-figures .table td { padding-inline: 10px; }
@media (min-width: 992px) and (max-width: 1399px) {
    .dashboard-analysis-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-analysis-card:last-child { grid-column: 1 / -1; }
}
@media (max-width: 991px) {
    .dashboard-analysis-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .dashboard-analysis-heading { min-block-size: 0; }
}
@media (max-width: 575px) {
    .dashboard-analysis-card .card-header, .dashboard-analysis-card .card-body { padding-inline: 18px; }
    .dashboard-analysis-total > strong { font-size: 22px; }
    .dashboard-analysis-total > small { font-size: 11px; }
}

.dashboard-chart-section { display: grid; gap: 24px; min-inline-size: 0; scroll-margin-block-start: 96px; }
.dashboard-chart-section-heading h2 { font-size: 20px; font-weight: 650; margin: 0 0 7px; }
.dashboard-chart-section-heading p { color: var(--duaya-muted); font-size: 12px; line-height: 1.8; margin: 0; }
@media (max-width: 575px) {
    .dashboard-chart-section { gap: 18px; }
    .dashboard-chart-section-heading h2 { font-size: 18px; }
    .dashboard-chart-section-heading p { font-size: 11px; }
}
