/* Talare: quiet financial workspace, petroleum accent, readable dense data. */
:root {
    --bellatrix-primary: #0e7c7b;
    --bellatrix-primary-strong: #095e5d;
    --bellatrix-dark: #0b1220;
    --bellatrix-bg: #f7f8f9;
    --bellatrix-text: #182630;
    --bellatrix-text-muted: #526371;
    --bellatrix-surface-hero: #102d35;
    --bellatrix-radius: 12px;
    --bellatrix-radius-lg: 18px;
    --bellatrix-shadow: 0 8px 24px rgb(11 18 32 / 5%);
    --bellatrix-shadow-sm: 0 3px 12px rgb(11 18 32 / 4%);
}
body.bellatrix-app { background: #f7f8f9; color: #182630; }
.bellatrix-main { padding-top: 24px; }
.bellatrix-shell { max-width: 1440px; padding-inline: 28px; }
.bellatrix-main, .bellatrix-shell, .bellatrix-page { min-width: 0; width: 100%; }
.bellatrix-page > *, .revenue-ops-layout > *, .row > *, .bellatrix-page-hero__content > * { min-width: 0; }
.bellatrix-panel, .chart-card, .table-responsive { min-width: 0; max-width: 100%; }
.table-responsive { overflow-x: auto; }
.bellatrix-page-hero h1 { overflow-wrap: anywhere; }
.bellatrix-navbar { background: #0b222b !important; box-shadow: none; border-bottom: 1px solid #29424a; }
.bellatrix-navbar .container-fluid { padding-block: 12px; }
.navbar-brand { font-size: 1.5rem; letter-spacing: -.06em; flex-shrink: 0; }
.navbar-brand::before { content: none; }
.talare-brand-mark { width: 34px; height: 34px; }
.navbar-dark .navbar-nav .nav-link { padding: .65rem .65rem; border-radius: 7px; font-size: .88rem; }
.navbar-dark .navbar-nav .nav-link.active { background: #24434a; box-shadow: none; }
.bellatrix-navbar .nav-link.bellatrix-navbar__cta { background: #0e7c7b; color: #fff !important; box-shadow: none; }
.bellatrix-navbar .nav-link.bellatrix-navbar__cta:hover { background: #095e5d; }
.bellatrix-navbar .navbar-nav { gap: 2px; }
.bellatrix-navbar .nav-link span { white-space: nowrap; }
.bellatrix-navbar .navbar-collapse { min-width: 0; }
.bellatrix-navbar #userDropdown span { max-width: 15ch; overflow: hidden; text-overflow: ellipsis; }
.bellatrix-navbar #userDropdown { min-width: 0; }
.bellatrix-navbar #userDropdown::after, .stats-icon { flex-shrink: 0; }
.bellatrix-metric-card__meta { min-width: 0; }
.auth-card .alert-dismissible, .bellatrix-flash-stack .alert-dismissible { padding-right: 3.25rem; }
.talare-profile .card-header { background: #102d35 !important; color: #fff; }
.talare-profile .card-header h5 { color: #fff; }
.talare-chart-bounded { position: relative; height: 360px; }
.talare-funnel-row { margin-bottom: 16px; }
.talare-funnel-label { display: flex; justify-content: space-between; gap: 12px; color: #182630; font-weight: 650; }
.talare-funnel-track { height: 12px; margin-top: 6px; background: #e5edef; border-radius: 4px; overflow: hidden; }
.talare-funnel-bar { height: 100%; background: #0e7c7b; }
.talare-funnel-row small { color: #526371; }
.talare-date-field { min-width: 0; }
.talare-date-field label { display: block; color: #526371; font-size: .8rem; margin-bottom: 4px; }
.bellatrix-page-hero .talare-date-field label { color: #c9dfe3; }
.bellatrix-footer { background: #0b222b; margin-top: 48px; padding: 28px 0; }
.bellatrix-footer small { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 24px; color: #dae4e8; }
.bellatrix-footer a { color: #dae4e8; }
.talare-provider { color: #dae4e8; font-size: .8rem; line-height: 1.7; }
.talare-company { max-width: 920px; margin-inline: auto; }
.talare-company dd { margin-bottom: 20px; overflow-wrap: anywhere; }
.btn { border-radius: 8px; font-weight: 650; box-shadow: none; }
.btn-primary { background: #0e7c7b; border-color: #0e7c7b; color: #fff; }
.btn-primary:hover, .btn-primary:focus-visible { background: #095e5d; border-color: #095e5d; }
.btn-outline-primary { border-color: #0e7c7b; color: #095e5d; background: transparent; }
.btn-outline-primary:hover { background: #0e7c7b; border-color: #0e7c7b; color: #fff; }
.btn:focus-visible, a:focus-visible { outline: 3px solid #b7791f; outline-offset: 3px; }
.text-primary { color: #095e5d !important; }
.bg-primary { background: #0e7c7b !important; }
.form-control, .form-select { border-radius: 8px; border-color: #b9c7cd; min-height: 44px; }
.form-control:focus, .form-select:focus { border-color: #0e7c7b; box-shadow: 0 0 0 3px rgb(14 124 123 / 14%); }
.card, .bellatrix-metric-card, .bellatrix-toolbar { border-radius: 12px; box-shadow: var(--bellatrix-shadow-sm); }
.bellatrix-page-hero { background: #102d35; box-shadow: none; padding: 28px; border-radius: 14px; }
.bellatrix-page-hero h1 { font-size: clamp(1.7rem, 2.2vw, 2.4rem); line-height: 1.15; }
.bellatrix-page-subtitle { max-width: 65ch; }
.bellatrix-page-hero__stats { gap: 24px; }
.bellatrix-page-hero__stats .bellatrix-inline-stat { padding: 0; min-width: 0; border: 0; box-shadow: none; background: transparent; }
.bellatrix-page-hero__stats .bellatrix-inline-stat__value { font-size: .95rem; }
.bellatrix-page-hero .btn-outline-light { background: transparent; color: #fff; border-color: #9cb9c0; }
.bellatrix-page-hero .btn-outline-light:hover { background: #fff; color: #102d35; }
.talare-dashboard-metrics { display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); gap: 16px; margin: 0; }
.talare-dashboard-metrics > div { width: 100%; padding: 0; margin: 0; min-width: 0; }
.talare-dashboard-metrics .bellatrix-metric-card { height: 100%; padding: 20px; }
.talare-dashboard-metrics .stats-value { font-size: clamp(1.4rem, 1.8vw, 1.8rem) !important; max-width: 100%; overflow-wrap: anywhere; }
.talare-dashboard-metrics .stats-icon { width: 38px; height: 38px; margin-bottom: 14px; }
.bellatrix-metric-card--primary { background: #102d35; }
.bellatrix-metric-card--primary .stats-value { color: #fff !important; }
.stats-value { font-variant-numeric: tabular-nums; }
.stats-label, .bellatrix-panel__eyebrow { color: #526371; }
.chart-header .chart-title { font-size: 1.1rem; margin: 0; }
.bellatrix-page-eyebrow { color: #c9dfe3; }
.bellatrix-metric-card--primary .stats-label { color: #c9dfe3; }
.bellatrix-metric-card .text-warning { color: #996400 !important; }
.pricing-hero, .signup-hero, .enterprise-hero { background: #102d35; box-shadow: none; padding: 32px; border-radius: 16px; }
.signup-hero h1, .pricing-hero h1 { font-size: clamp(1.9rem, 3vw, 2.8rem); }
.signup-proof-card, .pricing-note { box-shadow: none; }
.signup-hero .signup-proof-card p, .signup-hero .signup-proof-card span { color: #334155; }
.pricing-card { display: flex; flex-direction: column; border-radius: 14px; box-shadow: none; }
.pricing-card.recommended { border-color: #0e7c7b; transform: none; }
.pricing-card > a { margin-top: auto; }
.pricing-chip, .signup-plan-label { background: #e5f2f1; color: #095e5d; }
.signup-plan-row.recommended { background: #eff8f7; border-color: #7fb9b6; }
.auth-shell { min-height: 64vh; padding-block: 28px; }
.auth-card { box-shadow: var(--bellatrix-shadow) !important; border-radius: 14px; }
.auth-card .card-header { display: block; padding: 24px; background: #102d35 !important; text-align: center; }
.auth-card h1 { font-size: 1.8rem; color: white; }
.auth-card .card-body { padding: 28px; }
.welcome-hero, .bellatrix-hero { background: #102d35; box-shadow: none; }
.welcome-hero { padding: 32px 24px; }
.welcome-hero h1, .welcome-hero p, .bellatrix-hero h5 { color: #fff; }
.bellatrix-hero .text-white-50 { color: #c9dfe3 !important; }
.step-card i { color: #0e7c7b; }
.progress-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-bottom: 28px; }
.progress-steps .step { display: flex; flex-direction: column; align-items: center; gap: 8px; color: #526371; font-size: .8rem; text-align: center; }
.progress-steps .step-number { width: 32px; height: 32px; display: grid; place-items: center; background: #e0e9ec; color: #344d56; border-radius: 50%; font-weight: 700; }
.progress-steps .active .step-number, .progress-steps .completed .step-number { background: #0e7c7b; color: #fff; }
.progress-steps .completed .step-number:empty::before { content: "✓"; }
.onboarding-container .form-section { padding: 24px; border: 1px solid #dce5e8; background: #fff; border-radius: 14px; }
.onboarding-container .form-section h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); }
.onboarding-container .notification-card { padding: 20px; margin-block: 20px; }
.onboarding-container .notification-card h5 { margin-bottom: 16px; }
.onboarding-container .form-check { margin-block: 14px; }
.onboarding-container .form-check-input:checked { background-color: #0e7c7b; border-color: #0e7c7b; }
.onboarding-container .success-animation { text-align: center; padding: 32px 20px; background: #e6f2f0; border-radius: 14px; }
.onboarding-container .import-option { padding: 20px; margin-block: 16px; border: 1px solid #bccdd1; border-radius: 10px; }
.onboarding-container .import-option.selected { border-color: #0e7c7b; background: #e6f2f0; }
.onboarding-container .no-nuvemshop-alert { margin-block: 20px; color: #526371; }
.form-group { margin-bottom: 20px; }
.onboarding-container .btn-navigation { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.talare-skip-link { position: absolute; left: 16px; top: -100px; z-index: 1100; padding: 12px; background: white; color: #095e5d; }
.talare-skip-link:focus { top: 12px; }
.talare-landing { max-width: 1240px; margin: 0 auto; }
.talare-hero { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 48px; padding: 60px 0 48px; }
.talare-eyebrow { font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: #095e5d; font-weight: 750; }
.talare-hero h1 { font-size: clamp(2.6rem, 4.4vw, 4.4rem); line-height: 1.07; letter-spacing: -.045em; max-width: 17ch; margin: 20px 0; font-weight: 750; }
.talare-hero h1 em { color: #0e7c7b; font-style: normal; }
.talare-hero .lead { font-size: 1.1rem; line-height: 1.7; color: #526371; max-width: 49ch; }
.talare-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 12px; }
.talare-actions .btn { padding: 13px 20px; }
.talare-trial-note { font-size: .85rem; color: #526371; line-height: 1.6; }
.talare-trial-note a { text-decoration: underline; text-underline-offset: 3px; }
.talare-preview { padding: 24px; background: #102d35; border-radius: 18px; box-shadow: 0 20px 50px rgb(16 45 53 / 14%); }
.talare-preview__head { display: flex; align-items: center; justify-content: space-between; color: #e3efef; font-size: .85rem; padding-bottom: 20px; }
.talare-preview__badge { color: #9cdbcf; border: 1px solid #37636a; border-radius: 5px; padding: 4px 8px; font-size: .7rem; }
.talare-preview__balance { color: #fff; }
.talare-preview__balance span { display: block; font-size: .85rem; color: #b8ced4; }
.talare-preview__balance strong { display: block; margin: 7px 0 22px; font-size: 2.7rem; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.talare-preview__rows { background: #fff; border-radius: 10px; padding: 4px 20px; }
.talare-preview__rows div { display: flex; gap: 16px; justify-content: space-between; padding: 17px 0; border-bottom: 1px solid #e7ecee; font-size: .92rem; }
.talare-preview__rows div:last-child { border: 0; }
.talare-preview__rows strong { white-space: nowrap; font-variant-numeric: tabular-nums; }
.talare-preview__caption { color: #b8ced4; font-size: .75rem; margin: 15px 0 0; }
.talare-proof { display: flex; flex-wrap: wrap; gap: 16px 36px; border-block: 1px solid #dce5e8; padding: 20px 0; font-size: .9rem; color: #526371; }
.talare-section { padding: 64px 0; scroll-margin-top: 90px; }
.talare-section h2 { font-size: clamp(1.9rem, 2.7vw, 2.75rem); max-width: 30ch; line-height: 1.17; margin: 12px 0 20px; }
.talare-section > p { color: #526371; max-width: 64ch; }
.talare-benefits { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; margin-top: 32px; }
.talare-benefits article { border-top: 2px solid #abc7c7; padding-top: 24px; }
.talare-benefits h3 { font-size: 1.2rem; margin: 12px 0; }
.talare-benefits p { color: #526371; line-height: 1.7; }
.talare-step-number { font-weight: 750; color: #0e7c7b; }
.talare-product-shot { margin: 32px 0 0; border: 1px solid #cddbdd; border-radius: 14px; padding: 10px; background: #fff; }
.talare-product-shot img { width: 100%; height: auto; border-radius: 7px; }
.talare-product-shot figcaption { padding: 12px; color: #526371; font-size: .8rem; }
.talare-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 32px; }
.talare-plans .pricing-card { border: 1px solid #cad8dc; padding: 26px; background: #fff; }
.talare-plans .recommended { border: 2px solid #0e7c7b; }
.talare-faq { max-width: 850px; }
.talare-faq details { border-bottom: 1px solid #ccd9dd; padding: 20px 0; }
.talare-faq summary { cursor: pointer; font-weight: 650; padding: 6px 0; }
.talare-faq details p { color: #526371; line-height: 1.7; padding-top: 14px; }
.talare-close { padding: 40px; background: #e6f2f0; border-radius: 16px; margin-bottom: 24px; }
@media (max-width: 1399.98px) {
    .bellatrix-navbar .navbar-collapse { padding-top: 12px; max-height: calc(100vh - 85px); max-height: calc(100dvh - 85px); overflow-y: auto; overscroll-behavior: contain; }
    .bellatrix-navbar .navbar-nav .nav-link { padding: 12px; width: 100%; }
}
@media (max-width: 991.98px) {
    .revenue-ops-layout { grid-template-columns: minmax(0, 1fr); }
    .signup-hero .col-xl-4 { display: none; }
    .talare-dashboard-metrics { grid-template-columns: 1fr 1fr; }
    .talare-dashboard-metrics > div:first-child { grid-column: 1 / -1; }
    .talare-hero { grid-template-columns: 1fr; gap: 28px; padding-top: 32px; }
    .talare-hero h1 { max-width: 20ch; }
    .talare-plans { grid-template-columns: 1fr; }
    .talare-section { padding-block: 40px; }
    .bellatrix-page-hero__stats { flex-wrap: wrap; }
}
@media (max-width: 575.98px) {
    .onboarding-container .form-section { padding: 20px 16px; }
    .steps-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .steps-overview .step-card { padding: 20px 12px; }
    .steps-overview .step-card i { font-size: 2rem; }
    .onboarding-container { padding: 16px 0; }
    .onboarding-container .actions { display: grid; gap: 12px; }
    .onboarding-container .actions .btn { margin: 0; }
    .bellatrix-page-hero__stats { display: none; }
    .bellatrix-kpi-grid--compact { grid-template-columns: minmax(0, 1fr); }
    .bellatrix-kpi-grid--compact .bellatrix-metric-card { padding: 16px; }
    .bellatrix-kpi-grid--compact .stats-value { font-size: 1.6rem !important; white-space: nowrap; }
    .talare-dashboard-metrics { grid-template-columns: 1fr; }
    .bellatrix-shell { padding-inline: 16px; }
    .bellatrix-main { padding-top: 16px; }
    .talare-benefits { grid-template-columns: 1fr; gap: 16px; }
    .talare-actions .btn { width: 100%; }
    .talare-preview { padding: 20px; }
    .talare-preview__balance strong { font-size: 2.25rem; }
    .talare-close, .pricing-hero, .signup-hero, .enterprise-hero { padding: 24px 20px; }
    .bellatrix-page-hero { padding: 22px 18px; }
    .bellatrix-page-hero__stats { gap: 16px; }
    .signup-plan-row { flex-wrap: wrap; }
    .table-responsive { max-width: 100%; }
}
