/* ------------------------------------------------------------------
   Költségkezelő – saját arculat a Filament panel fölé.
   Csak stabil .fi-* osztályokra épít, build-lépés nélkül.
   ------------------------------------------------------------------ */

:root {
    --ep-brand: #0095DA;
    --ep-brand-dark: #0077B3;
    --ep-navy: #0C1E2E;
    --ep-navy-soft: #12293C;
    --ep-ink: #0F172A;
    --ep-muted: #64748B;
    --ep-line: #E6EAF0;
    --ep-surface: #FFFFFF;
    --ep-canvas: #F4F6FA;
    --ep-radius: 14px;
    --ep-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px -16px rgba(15, 23, 42, .18);
}

.dark {
    --ep-ink: #E8EDF4;
    --ep-muted: #94A3B8;
    --ep-line: rgba(255, 255, 255, .08);
    --ep-surface: #131C2B;
    --ep-canvas: #0B1220;
    --ep-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 32px -20px rgba(0, 0, 0, .8);
}

body,
.fi-body {
    background: var(--ep-canvas);
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
    -webkit-font-smoothing: antialiased;
}

/* Pénzösszegek, dátumok: azonos szélességű számjegyek, hogy a hasábok illeszkedjenek */
.fi-ta-text-item-label,
.fi-ta-cell,
.fi-wi-stats-overview-stat-value,
.fi-in-text {
    font-variant-numeric: tabular-nums;
}

/* ---------------- Oldalsáv: sötét, márkás ---------------- */

.fi-sidebar,
.fi-sidebar-header {
    background: var(--ep-navy) !important;
    border-right: 0 !important;
    box-shadow: none !important;
}

.fi-sidebar-header {
    border-bottom: 1px solid rgba(255, 255, 255, .07) !important;
}

.fi-sidebar .fi-logo,
.fi-sidebar-header .fi-logo {
    color: #fff !important;
    font-weight: 700;
    letter-spacing: -.02em;
}

/* márkajel a felirat elé */
.fi-sidebar .fi-logo::before {
    content: "";
    display: inline-block;
    width: .55rem;
    height: 1.15rem;
    margin-right: .6rem;
    border-radius: 3px;
    background: linear-gradient(180deg, var(--ep-brand) 0%, var(--ep-brand-dark) 100%);
    vertical-align: -.15rem;
}

.fi-sidebar-group-label {
    color: rgba(255, 255, 255, .38) !important;
    font-size: .68rem !important;
    letter-spacing: .09em;
    text-transform: uppercase;
    font-weight: 600;
}

.fi-sidebar-item-button {
    color: rgba(255, 255, 255, .72) !important;
    border-radius: 10px !important;
    font-weight: 500;
    transition: background-color .15s ease, color .15s ease;
}

.fi-sidebar-item-button:hover {
    background: rgba(255, 255, 255, .07) !important;
    color: #fff !important;
}

.fi-sidebar-item-icon {
    color: rgba(255, 255, 255, .55) !important;
}

.fi-sidebar-item-button:hover .fi-sidebar-item-icon {
    color: #fff !important;
}

.fi-sidebar-item-active .fi-sidebar-item-button {
    background: linear-gradient(90deg, rgba(0, 149, 218, .28) 0%, rgba(0, 149, 218, .10) 100%) !important;
    color: #fff !important;
    box-shadow: inset 3px 0 0 var(--ep-brand);
}

.fi-sidebar-item-active .fi-sidebar-item-icon {
    color: var(--ep-brand) !important;
}

.fi-sidebar-group-collapse-button,
.fi-sidebar-close-overlay {
    color: rgba(255, 255, 255, .5) !important;
}

/* ---------------- Fejléc ---------------- */

.fi-topbar > nav {
    background: var(--ep-surface) !important;
    border-bottom: 1px solid var(--ep-line);
    box-shadow: none !important;
}

.fi-header-heading {
    letter-spacing: -.025em;
    font-weight: 700;
}

.fi-breadcrumbs {
    opacity: .75;
}

/* ---------------- Kártyák, szekciók ---------------- */

.fi-section,
.fi-wi-stats-overview-stat,
.fi-ta-ctn,
.fi-fo-component-ctn > .fi-section {
    border-radius: var(--ep-radius) !important;
    border: 1px solid var(--ep-line) !important;
    box-shadow: var(--ep-shadow) !important;
    background: var(--ep-surface) !important;
}

.fi-section-header-heading {
    font-weight: 650;
    letter-spacing: -.01em;
}

/* ---------------- Mérőszám-kártyák ---------------- */

.fi-wi-stats-overview-stat {
    position: relative;
    overflow: hidden;
    padding-top: .25rem;
    transition: transform .15s ease, box-shadow .15s ease;
}

.fi-wi-stats-overview-stat::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: linear-gradient(90deg, var(--ep-brand) 0%, rgba(0, 149, 218, 0) 85%);
}

.fi-wi-stats-overview-stat:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(15, 23, 42, .05), 0 16px 32px -20px rgba(15, 23, 42, .35) !important;
}

.fi-wi-stats-overview-stat-label {
    font-size: .78rem !important;
    letter-spacing: .04em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--ep-muted) !important;
}

.fi-wi-stats-overview-stat-value {
    font-size: 1.9rem !important;
    font-weight: 700 !important;
    letter-spacing: -.03em;
    line-height: 1.15;
}

.fi-wi-stats-overview-stat-description {
    font-size: .78rem !important;
}

/* ---------------- Táblázat ---------------- */

.fi-ta-header-cell {
    font-size: .7rem !important;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-weight: 600 !important;
    color: var(--ep-muted) !important;
    background: color-mix(in srgb, var(--ep-canvas) 60%, transparent);
}

.fi-ta-row {
    transition: background-color .12s ease;
}

.fi-ta-row:hover {
    background: color-mix(in srgb, var(--ep-brand) 4%, transparent) !important;
}

.fi-ta-summary-row .fi-ta-cell,
.fi-ta-summary-header-cell {
    background: color-mix(in srgb, var(--ep-canvas) 70%, transparent);
    font-weight: 600;
}

/* csoport-fejléc kiemelése */
.fi-ta-group-header {
    background: color-mix(in srgb, var(--ep-brand) 6%, transparent) !important;
}

.fi-ta-group-header-heading {
    font-weight: 650 !important;
    letter-spacing: -.01em;
}

/* ---------------- Fülek (Ma / Hét / Hónap …) ---------------- */

.fi-tabs {
    background: var(--ep-surface) !important;
    border: 1px solid var(--ep-line);
    border-radius: 999px !important;
    padding: .3rem !important;
    box-shadow: var(--ep-shadow);
}

.fi-tabs-item {
    border-radius: 999px !important;
    font-weight: 550;
}

.fi-tabs-item-active {
    background: var(--ep-brand) !important;
    color: #fff !important;
    box-shadow: 0 4px 12px -4px rgba(0, 149, 218, .6);
}

.fi-tabs-item-active .fi-tabs-item-label,
.fi-tabs-item-active .fi-badge {
    color: #fff !important;
}

.fi-tabs-item-active .fi-badge {
    background: rgba(255, 255, 255, .22) !important;
}

/* ---------------- Gombok, jelvények ---------------- */

.fi-btn {
    border-radius: 10px !important;
    font-weight: 600;
    letter-spacing: -.005em;
}

.fi-btn.fi-color-primary {
    box-shadow: 0 6px 16px -8px rgba(0, 149, 218, .8);
}

.fi-badge {
    border-radius: 7px !important;
    font-weight: 600;
    letter-spacing: .01em;
}

/* kategória-pötty a listában */
.ep-cat {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-weight: 500;
    color: var(--ep-ink);
    white-space: nowrap;
}

.ep-cat i {
    width: .55rem;
    height: .55rem;
    border-radius: 999px;
    flex: 0 0 auto;
}

.ep-cat-none {
    color: var(--ep-muted);
}

/* ---------------- Űrlapmezők ---------------- */

.fi-input-wrp {
    border-radius: 10px !important;
}

.fi-fo-field-wrp-label {
    font-weight: 600 !important;
}

/* ---------------- Bejelentkezés ---------------- */

.fi-simple-layout {
    background:
        radial-gradient(120% 120% at 50% 0%, #E8F4FB 0%, var(--ep-canvas) 45%, #E2E8F0 100%);
}

.dark .fi-simple-layout {
    background:
        radial-gradient(120% 120% at 50% 0%, #0B2130 0%, #0F172A 50%, #020617 100%);
}

.fi-simple-main {
    border-radius: 18px !important;
    box-shadow: 0 24px 60px -30px rgba(15, 23, 42, .45) !important;
}
