/* AIHeroEX visual system. Presentation only; no behavior, dimensions or visibility changes. */
:root {
    --heading-font: 'Onest', sans-serif;
    --body-font: 'Onest', sans-serif;
    --ax-card-radius: 36px;
    --ax-feature-radius: 44px;
    --ax-control-radius: 16px;
    --ax-surface: radial-gradient(ellipse at 12% 0%, hsl(var(--base-two) / .08), transparent 60%), linear-gradient(150deg, hsl(var(--body-color) / .085), hsl(var(--body-color) / .035));
    --ax-featured-surface: radial-gradient(ellipse at 12% 0%, hsl(var(--white) / .48), hsl(var(--base-two) / .24) 18%, transparent 49%), linear-gradient(155deg, hsl(var(--base) / .55), hsl(var(--base) / .12) 62%, hsl(var(--body-color) / .04));
    --ax-surface-edge: hsl(var(--body-color) / .18);
}
body.aiheroex-ui { font-family: var(--body-font); font-weight: 400; }
body.aiheroex-ui :is(h1, h2, h3, h4, h5, h6, .page-banner__title) { font-family: var(--heading-font); font-weight: 500; letter-spacing: -.025em; }
body.aiheroex-ui :is(input, textarea, select, button, .btn) { font-family: var(--body-font); }
body.aiheroex-ui :is(.card, .custom--card, .account-card, .contact-card, .blog-card, .core-feature-card, .htw-card, .overview-card, .testimonial-card, .support-card, .view-details-card, .job-card, .onboarding-card, .consent-card, .resume-card, .target-card, .capability-card, .repeat-card, .ai-panel, .ai-empty-panel, .ai-activity-panel, .ai-guarantee-card, .ai-application-card, .ai-profile-panel, .ai-profile-summary-card, .ai-stat-card, .ai-dashboard-hero, .ai-applications, .ai-action-center, .gx-panel, .subscription-cancel-card, .responsive-filter-card) {
    border-radius: var(--ax-card-radius);
    background: var(--ax-surface), hsl(var(--body-bg));
    border-color: var(--ax-surface-edge);
    box-shadow: inset 0 1px 0 hsl(var(--body-color) / .055), 0 16px 40px hsl(var(--black) / .10);
}
body.aiheroex-ui :is(.card, .custom--card) > .card-header { border-top-left-radius: inherit; border-top-right-radius: inherit; }
body.aiheroex-ui :is(.card, .custom--card) > .card-footer { border-bottom-left-radius: inherit; border-bottom-right-radius: inherit; }
body.aiheroex-ui :is(.pricing-card, .ax-checkout__panel) {
    border-radius: var(--ax-feature-radius);
    background: var(--ax-surface), hsl(var(--body-bg));
    border: 1px solid var(--ax-surface-edge);
    box-shadow: inset 0 1px 0 hsl(var(--body-color) / .09), 0 20px 44px hsl(var(--black) / .12);
}
body.aiheroex-ui .pricing .pricing-card--plan-2,
body.aiheroex-ui .ax-checkout__summary > .ax-checkout__panel:first-child,
body.aiheroex-ui .ai-panel--primary {
    background: var(--ax-featured-surface), hsl(var(--body-bg));
    border-color: hsl(var(--body-color) / .27);
}
body.aiheroex-ui .pricing .pricing-card::before { border-top-left-radius: inherit; border-top-right-radius: inherit; background: none; }
body.aiheroex-ui .pricing :is(.trial-hero, .monthly-plan-note),
body.aiheroex-ui .ax-checkout :is(.ax-checkout__plan, .ax-checkout__verify-card) {
    border-radius: 24px;
    background: hsl(var(--body-color) / .025);
    border-color: hsl(var(--body-color) / .13);
    box-shadow: none;
}
body.aiheroex-ui .pricing .trial-hero__price,
body.aiheroex-ui .ax-checkout .ax-checkout__price { font-weight: 600; letter-spacing: -.035em; }
body.aiheroex-ui .ax-checkout h1 { font-weight: 500; }
body.aiheroex-ui .ax-checkout :is(h2, h3) { font-weight: 500; }
body.aiheroex-ui :is(.modal-content, .cookies-card, .blog-details-sidebar-widget, .cta-card) { border-radius: 28px; }
body.aiheroex-ui .modal-header { border-top-left-radius: inherit; border-top-right-radius: inherit; }
body.aiheroex-ui .modal-footer { border-bottom-left-radius: inherit; border-bottom-right-radius: inherit; }
body.aiheroex-ui :is(.accordion-item, .gateway-card, .card-deposit, .saved-method) { border-radius: 20px; }
body.aiheroex-ui .btn:not(.btn--close):not(.btn--icon),
body.aiheroex-ui :is(.advisor-copy, .subscription-action, .auth-form__button, .social-auth__btn) { border-radius: 999px; font-weight: 500; }
body.aiheroex-ui :is(.btn--base, .btn--gradient) { background: linear-gradient(120deg, hsl(var(--base-two)), hsl(var(--base)) 75%); border-color: transparent; }
body.aiheroex-ui :is(.form-control, .form--control, .form-select, .select2-selection) { border-radius: var(--ax-control-radius); font-weight: 400; }
body.aiheroex-ui .ax-checkout .form--control { border-radius: var(--ax-control-radius); }
body.aiheroex-ui .ax-checkout .btn { border-radius: 999px; font-weight: 500; }
body.aiheroex-ui .input-group > :first-child:not(:last-child) { border-radius: var(--ax-control-radius) 0 0 var(--ax-control-radius); }
body.aiheroex-ui .input-group > :last-child:not(:first-child) { border-radius: 0 var(--ax-control-radius) var(--ax-control-radius) 0; }
/* Native referral panels are light surfaces. Keep their text contrast and theme. */
body.aiheroex-ui :is(.advisor-stat, .advisor-panel) {
    border-radius: var(--ax-card-radius);
    background: radial-gradient(ellipse at 8% 0%, #e0edff, transparent 65%), linear-gradient(150deg, #fff, #f5f8ff);
    border-color: #d8e4f5;
}
body.aiheroex-ui .advisor-hero { border-radius: var(--ax-feature-radius); }
body.aiheroex-ui .advisor-panel__head :is(h3,h4), body.aiheroex-ui .advisor-stat strong { font-weight: 500; }
body.aiheroex-ui .advisor-link-box .form--control { border-radius: var(--ax-control-radius) 0 0 var(--ax-control-radius) !important; }
body.aiheroex-ui .advisor-link-box .advisor-copy { border-radius: 0 var(--ax-control-radius) var(--ax-control-radius) 0 !important; }
@media (max-width: 575px) {
    :root { --ax-card-radius: 28px; --ax-feature-radius: 32px; --ax-control-radius: 14px; }
    body.aiheroex-ui .advisor-link-box :is(.form--control, .advisor-copy) { border-radius: var(--ax-control-radius) !important; }
}
