/* Import the base Radzen theme */
@import url('_content/Radzen.Blazor/css/default.css');

/* Import Montserrat font */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

/* Core brand colors with full gradient ranges */
:root {
    /* New Accent Gray */
    --accent-gray: #a6a6a6;
    --accent-gray-100: #f7f7f7;
    --accent-gray-200: #efefef;
    --accent-gray-300: #e7e7e7;
    --accent-gray-400: #dfdfdf;
    --accent-gray-500: #d7d7d7;
    --accent-gray-600: #cfcfcf;
    --accent-gray-700: #c7c7c7;
    --accent-gray-800: #bfbfbf;
    --accent-gray-900: #b7b7b7;

    /* Primary Purple with 9-step gradient */
    --purple: #32174D;
    --purple-100: #eae7ed; /* Lightest tint */
    --purple-200: #d6d0db;
    --purple-300: #c1b9c9;
    --purple-400: #ada2b7;
    --purple-500: #988ba6;
    --purple-600: #847394;
    --purple-700: #6f5c82;
    --purple-800: #5a4570;
    --purple-900: #462e5e;

    /* Primary Blue with 9-step gradient */
    --blue: #003256;
    --blue-100: #e6eef4; /* Lightest tint */
    --blue-200: #ccdde9;
    --blue-300: #b3ccde;
    --blue-400: #99bbd3;
    --blue-500: #80aac8;
    --blue-600: #6699bd;
    --blue-700: #4d88b2;
    --blue-800: #3377a7;
    --blue-900: #1a669c;

    /* Charcoal Gray with gradient */
    --charcoal-gray: #333333;
    --charcoal-gray-100: #ebebeb;
    --charcoal-gray-200: #d6d6d6;
    --charcoal-gray-300: #c2c2c2;
    --charcoal-gray-400: #adadad;
    --charcoal-gray-500: #999999;
    --charcoal-gray-600: #858585;
    --charcoal-gray-700: #707070;
    --charcoal-gray-800: #5c5c5c;
    --charcoal-gray-900: #474747;

    /* Light Gray with gradient */
    --light-gray: #747474;
    --light-gray-100: #f4f4f4;
    --light-gray-200: #e9e9e9;
    --light-gray-300: #dedede;
    --light-gray-400: #d3d3d3;
    --light-gray-500: #c8c8c8;
    --light-gray-600: #bebebe;
    --light-gray-700: #b3b3b3;
    --light-gray-800: #a8a8a8;
    --light-gray-900: #9d9d9d;

    /* Base colors */
    --white: #FFFFFF;
    --black: #000000;

    /* Semantic colors with gradients */
    --advisory-green: #8FA752;
    --advisory-green-100: #f5f8ef;
    --advisory-green-200: #ebf2de;
    --advisory-green-300: #e1ebce;
    --advisory-green-400: #d7e5bd;
    --advisory-green-500: #ccdeac;
    --advisory-green-600: #c2d79c;
    --advisory-green-700: #b8d18b;
    --advisory-green-800: #aeca7a;
    --advisory-green-900: #a4c36a;

    --protect-red: #D52128;
    --protect-red-100: #faeaea;
    --protect-red-200: #f5d5d6;
    --protect-red-300: #f0c0c1;
    --protect-red-400: #ebabac;
    --protect-red-500: #e69697;
    --protect-red-600: #e08182;
    --protect-red-700: #db6c6d;
    --protect-red-800: #d65758;
    --protect-red-900: #d14243;

    --fiduciary-beige: #CFB190;
    --fiduciary-beige-100: #faf7f3;
    --fiduciary-beige-200: #f5efe7;
    --fiduciary-beige-300: #f0e7db;
    --fiduciary-beige-400: #ebdfcf;
    --fiduciary-beige-500: #e6d7c3;
    --fiduciary-beige-600: #e1cfb7;
    --fiduciary-beige-700: #dcc7ab;
    --fiduciary-beige-800: #d7bf9f;
    --fiduciary-beige-900: #d2b793;

    --investment-hub-blue: #5675B4;
    --investment-hub-blue-100: #eff3f8;
    --investment-hub-blue-200: #dfe7f1;
    --investment-hub-blue-300: #cfdaeb;
    --investment-hub-blue-400: #bfcee4;
    --investment-hub-blue-500: #afc2dd;
    --investment-hub-blue-600: #9fb6d6;
    --investment-hub-blue-700: #8fa9d0;
    --investment-hub-blue-800: #7f9dc9;
    --investment-hub-blue-900: #6f91c2;

    /* Additional brand colors with gradients */
    --jade: #005B57;
    --jade-100: #e6f0f0;
    --jade-200: #cce1e0;
    --jade-300: #b3d2d1;
    --jade-400: #99c3c1;
    --jade-500: #80b4b2;
    --jade-600: #66a5a2;
    --jade-700: #4d9693;
    --jade-800: #338783;
    --jade-900: #1a7874;

    --alternative-investments: #FCBE4D;
    --alternative-investments-100: #fff9ee;
    --alternative-investments-200: #fff3dd;
    --alternative-investments-300: #feeccc;
    --alternative-investments-400: #fee6bb;
    --alternative-investments-500: #fedfaa;
    --alternative-investments-600: #fdd999;
    --alternative-investments-700: #fdd388;
    --alternative-investments-800: #fdcc77;
    --alternative-investments-900: #fcc666;

    /* Status and feedback colors */
    --status-success: #3E9B4F; /* Distinct from advisory-green but harmonious */
    --status-info: #3871C1;    /* Different from investment-hub-blue but in same family */
    --status-warning: #E59400; /* Amber that complements fiduciary-beige */
    --status-error: #CF3030;   /* Distinct from protect-red but related */
    --status-secondary: #6371A7; /* Neutral support color */

    /* Validation states */
    --valid: #2E8540;       /* Slightly different shade for form validation */
    --invalid: #D83933;     /* Form validation error */

    /* Neutral system colors */
    --neutral-50: #FAFAFA;  /* Lightest */
    --neutral-100: #F5F5F5;
    --neutral-200: #EEEEEE;
    --neutral-300: #E0E0E0;
    --neutral-400: #BDBDBD;
    --neutral-500: #9E9E9E;
    --neutral-600: #757575;
    --neutral-700: #616161;
    --neutral-800: #424242;
    --neutral-900: #212121;  /* Darkest */
}

/* Improved background gradient with smoother transition */
body {
    background-color: white !important;
    background-image: radial-gradient(
            ellipse farthest-corner at bottom right,
            var(--blue-100) 0%,
            var(--light-gray-200) 30%,
            rgba(255, 255, 255, 0.5) 60%,
            rgba(255, 255, 255, 0) 80%
    ) !important;
    background-attachment: fixed !important;
    background-position: bottom right !important;
    background-repeat: no-repeat !important;
    background-size: 70% 70% !important;
}

/* Adjust for mobile devices */
@media (max-width: 768px) {
    body {
        background-size: 100% 50% !important;
    }
}

/* Button styling with data-theme for specificity */
html[data-theme="everest-wealth"] .rz-button,
.rz-button {
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-weight: 500;
    text-transform: none;
    transition: all 0.2s ease-in-out;
}

/* Button variants */
html[data-theme="everest-wealth"] .rz-button.rz-primary,
.rz-button.rz-primary {
    background-color: var(--blue) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-button.rz-secondary,
.rz-button.rz-secondary {
    background-color: var(--accent-gray) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-button.rz-success,
.rz-button.rz-success {
    background-color: var(--advisory-green) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-button.rz-info,
.rz-button.rz-info {
    background-color: var(--investment-hub-blue) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-button.rz-warning,
.rz-button.rz-warning {
    background-color: var(--fiduciary-beige) !important;
    color: var(--charcoal-gray) !important;
}

html[data-theme="everest-wealth"] .rz-button.rz-danger,
.rz-button.rz-danger {
    background-color: var(--protect-red) !important;
    color: var(--white) !important;
}

/* Hover effects */
html[data-theme="everest-wealth"] .rz-button:hover,
.rz-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Active nav item styling */
html[data-theme="everest-wealth"] .rz-sidebar .rz-navigation-item-wrapper-active .rz-navigation-item-link,
.rz-sidebar .rz-navigation-item-wrapper-active .rz-navigation-item-link {
    background-color: var(--purple-200) !important;
    color: var(--black) !important;
    font-weight: 500;
}

/* Active nav item hover styling */
html[data-theme="everest-wealth"] .rz-sidebar .rz-navigation-item-wrapper-active .rz-navigation-item-link:hover,
.rz-sidebar .rz-navigation-item-wrapper-active .rz-navigation-item-link:hover {
    color: var(--white) !important;
}

/* Panel background styling */
html[data-theme="everest-wealth"] .rz-sidebar,
.rz-sidebar {
    background-color: var(--purple);
}

/* Menu item styling */
html[data-theme="everest-wealth"] .rz-navigation-item-wrapper .rz-navigation-item-link,
.rz-navigation-item-wrapper .rz-navigation-item-link {
    background-color: var(--purple);
}

/* Submenu styling */
html[data-theme="everest-wealth"] .rz-navigation-menu .rz-navigation-item-link,
.rz-navigation-menu .rz-navigation-item-link {
    background-color: var(--purple-800);
    padding-left: 2.5rem !important; /* Increased indentation for submenu items */
}

/* For deeper nested levels, add even more indentation */
html[data-theme="everest-wealth"] .rz-navigation-menu .rz-navigation-menu .rz-navigation-item-link,
.rz-navigation-menu .rz-navigation-menu .rz-navigation-item-link {
    padding-left: 3.5rem !important;
}

/* Hover effects */
html[data-theme="everest-wealth"] .rz-navigation-item-wrapper .rz-navigation-item-link:hover,
.rz-navigation-item-wrapper .rz-navigation-item-link:hover {
    background-color: var(--purple-700) !important;
}

/* Active menu indicator styling */
html[data-theme="everest-wealth"] .rz-navigation-item-wrapper-active:before,
.rz-navigation-item-wrapper-active:before {
    background-color: var(--accent-gray) !important;
}

/* Parent menu active indicator styling */
html[data-theme="everest-wealth"] .rz-sidebar-expanded .rz-navigation-item-wrapper-active:before,
.rz-sidebar-expanded .rz-navigation-item-wrapper-active:before {
    background-color: var(--accent-gray) !important;
}

/* Submenu active indicator styling */
html[data-theme="everest-wealth"] .rz-navigation-menu .rz-navigation-item-wrapper-active:before,
.rz-navigation-menu .rz-navigation-item-wrapper-active:before {
    background-color: var(--accent-gray) !important;
}

/* Badge styling overrides */
html[data-theme="everest-wealth"] .rz-badge.rz-badge-primary,
.rz-badge.rz-badge-primary {
    background-color: var(--purple) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-badge.rz-badge-secondary,
.rz-badge.rz-badge-secondary {
    background-color: var(--status-secondary) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-badge.rz-badge-info,
.rz-badge.rz-badge-info {
    background-color: var(--status-info) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-badge.rz-badge-success,
.rz-badge.rz-badge-success {
    background-color: var(--advisory-green) !important;
    color: var(--white) !important;
}

html[data-theme="everest-wealth"] .rz-badge.rz-badge-warning,
.rz-badge.rz-badge-warning {
    background-color: var(--status-warning) !important;
    color: var(--charcoal-gray) !important;
}

html[data-theme="everest-wealth"] .rz-badge.rz-badge-danger,
.rz-badge.rz-badge-danger {
    background-color: var(--status-error) !important;
    color: var(--white) !important;
}

/* Breadcrumb styling */
html[data-theme="everest-wealth"] .rz-breadcrumb,
.rz-breadcrumb {
    background-color: transparent;
    padding: 0.5rem 0;
}

html[data-theme="everest-wealth"] .rz-breadcrumb-item,
.rz-breadcrumb-item {
    color: var(--black);
}

html[data-theme="everest-wealth"] .rz-breadcrumb-item.rz-breadcrumb-item-active,
.rz-breadcrumb-item.rz-breadcrumb-item-active {
    color: var(--purple);
    font-weight: 500;
}

html[data-theme="everest-wealth"] .rz-breadcrumb-item a,
.rz-breadcrumb-item a {
    color: var(--accent-gray);
    text-decoration: none;
    transition: color 0.2s ease;
}

html[data-theme="everest-wealth"] .rz-breadcrumb-item a:hover,
.rz-breadcrumb-item a:hover {
    color: var(--purple);
    text-decoration: underline;
}

html[data-theme="everest-wealth"] .rz-breadcrumb .rz-breadcrumb-chevron,
.rz-breadcrumb .rz-breadcrumb-chevron {
    color: var(--light-gray);
    margin: 0 0.5rem;
}

@media (max-width: 768px) {
    /* Card and layout spacing */
    html[data-theme="everest-wealth"] .rz-card,
    .rz-card {
        padding: 0.75rem;
    }

    /* Typography scaling */
    html[data-theme="everest-wealth"] .rz-text-h3,
    .rz-text-h3 {
        font-size: 1.5rem;
    }

    html[data-theme="everest-wealth"] .rz-text-h5,
    .rz-text-h5 {
        font-size: 1.25rem;
    }

    html[data-theme="everest-wealth"] .rz-text-h6,
    .rz-text-h6 {
        font-size: 1.1rem;
    }

    /* Form controls for better touch targets */
    html[data-theme="everest-wealth"] .rz-textbox,
    .rz-textbox,
    html[data-theme="everest-wealth"] .rz-dropdown,
    .rz-dropdown,
    html[data-theme="everest-wealth"] .rz-numeric,
    .rz-numeric {
        height: 44px;
    }

    html[data-theme="everest-wealth"] .rz-button,
    .rz-button {
        padding: 0.5rem 1rem;
        min-height: 44px;
    }

    /* Action buttons container */
    .action-buttons-container {
        margin-top: 1rem;
    }

    /* Points balance display */
    .points-balance-card {
        margin-bottom: 0.5rem;
    }

    /* Improve spacing for better readability */
    html[data-theme="everest-wealth"] .rz-row,
    .rz-row {
        margin-bottom: 0.5rem;
    }

    /* Adjust filter layout */
    html[data-theme="everest-wealth"] .rz-column,
    .rz-column {
        padding: 0.25rem;
    }

    /* Card spacing for stacked views */
    html[data-theme="everest-wealth"] .product-card,
    .product-card {
        margin-bottom: 1rem;
    }

    /* Improve button usability on mobile */
    html[data-theme="everest-wealth"] .rz-badge,
    .rz-badge {
        white-space: normal;
        text-align: center;
    }

    /* Improve dialog experience on mobile */
    html[data-theme="everest-wealth"] .rz-dialog,
    .rz-dialog {
        max-width: 95vw !important;
        max-height: 90vh !important;
    }
}