/* =============================================================================
   Beérkező (számlabeolvasás) — feltöltés, lista fülekkel, adatlap két hasábbal, tömeges eredmény.
   Egy fájl = egy komponens-család, ≤ 200 sor. A tokenek az absec-rendszerből jönnek (tokens.css); az alap-
   komponenseket (f-table, f-kartya, f-dl-racs, f-badge, f-alert, f-lapozo) a közös stíluslapok adják, ide csak a beérkezőre
   jellemző szabályok kerülnek. Az osztályok f-bk- előtagúak, és a szabályok csak ezekre hatnak (a fájl minden oldalon betöltődik).

   BETÖLTÉS: a _Stilusok.cshtml listájából, a nav-szamlak.css után (az integráció veszi fel). Nincs style="" és <style>:
   a kezdeti láthatóságot a hidden attribútum adja, a JS (wwwroot/js/beerkezo.js) csak azt kapcsolja.
   ============================================================================= */

/* ---- feltöltés: húzd-ide mező (a fájlválasztó a háttérben ott marad, JS nélkül is működik) ---- */
.f-bk-feltoltes {
    padding: 1.5rem;
    text-align: center;
    border: 2px dashed var(--glass-line);
    border-radius: var(--r-card);
    background: var(--f-light);
    transition: border-color 0.15s ease, background-color 0.15s ease;
}
.f-bk-feltoltes--aktiv { border-color: var(--f-primary); background: var(--f-primary-soft, var(--f-light)); }
.f-bk-feltoltes input[type="file"] { max-width: 28rem; margin: 0.75rem auto 0; }
.f-bk-kivalasztott { margin: 0.75rem 0 0; padding: 0; list-style: none; font-size: 0.88rem; color: var(--f-grey); }

/* A fogadás eredménye: fájlonként egy sor, a hibásak jelezve. */
.f-bk-eredmeny { margin: 0; padding: 0; list-style: none; }
.f-bk-eredmeny li {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem 0.75rem;
    padding: 0.55rem 0;
    border-bottom: 1px solid var(--f-line);
    overflow-wrap: anywhere;
}
.f-bk-eredmeny li:last-child { border-bottom: 0; }
.f-bk-eredmeny__hiba { flex: 1 1 100%; margin: 0; color: var(--f-ink); font-size: 0.9rem; }

/* ---- lista: fülek ---- */
.f-bk-fulek {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0 0 1.25rem;
    padding: 0;
    list-style: none;
}
.f-bk-fulek a {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.95rem;
    color: var(--f-ink);
    text-decoration: none;
    background: var(--f-card);
    border: 1px solid var(--glass-line);
    border-radius: var(--r-pill);
}
.f-bk-fulek a:hover { border-color: var(--f-primary); }
.f-bk-fulek a[aria-current="page"] { font-weight: 700; background: var(--f-light); border-color: var(--f-ink); }
.f-bk-fulek__darab { font-family: var(--font-mono, "DM Mono", ui-monospace, monospace); font-size: 0.82rem; color: var(--f-grey); }

/* A tömeges jóváhagyás sávja a táblázat alatt. */
.f-bk-tomeges { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.75rem 1rem; margin: 1rem 0; }
.f-bk-tomeges .f-form-group { margin: 0; min-width: 15rem; }
.f-bk-jelolo { width: 1.1rem; height: 1.1rem; accent-color: var(--f-primary); }
.f-bk-osszeg { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.f-table thead th.f-bk-osszeg { text-align: right; }
.f-bk-fajlnev { min-width: 10rem; max-width: 18rem; overflow-wrap: anywhere; }
.f-bk-nowrap { white-space: nowrap; }
.f-bk-hiba-jel { margin: 0.25rem 0 0; font-size: 0.82rem; color: var(--f-ink-soft); overflow-wrap: anywhere; }

/* A tömeges jóváhagyás eredménye: mi ment át, mi maradt ki és miért. */
.f-bk-tomeges-eredmeny { margin: 0.75rem 0 0; padding: 0; list-style: none; }
.f-bk-tomeges-eredmeny li { padding: 0.45rem 0; border-bottom: 1px solid var(--f-line); overflow-wrap: anywhere; }
.f-bk-tomeges-eredmeny li:last-child { border-bottom: 0; }

/* ---- adatlap: két hasáb (bal: a fájl, jobb: az űrlap); 992 px alatt egymás alatt ---- */
.f-bk-racs { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 1.5rem; align-items: start; }
.f-bk-fajl { position: sticky; top: 1rem; }
.f-bk-fajl img { display: block; max-width: 100%; height: auto; border: 1px solid var(--f-line); border-radius: var(--r-field); }
.f-bk-fajl__hely {
    display: grid;
    place-items: center;
    min-height: 9rem;
    padding: 1rem;
    text-align: center;
    background: var(--f-light);
    border: 1px dashed var(--glass-line);
    border-radius: var(--r-field);
}
.f-bk-hash { display: block; font-size: 0.78rem; overflow-wrap: anywhere; }

/* ---- adatlap: egy mező az űrlapon (címke, beviteli mező, forrás-jelvény, bizonyosság) ---- */
.f-bk-mezok { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.25rem; }
.f-bk-mezo { margin-bottom: 1rem; min-width: 0; }
.f-bk-mezo__fej { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.5rem; margin-bottom: 0.35rem; }
.f-bk-mezo__fej .f-label { margin: 0; }
.f-bk-mezo__jel { font-size: 0.8rem; color: var(--f-ink-soft); }
.f-bk-mezo--alacsony input { border-color: var(--f-danger); }
.f-bk-mezo--kozepes input { border-color: var(--f-mustard); }
.f-bk-mezo--teljes { grid-column: 1 / -1; }

/* ---- adatlap: ellenőrzések, NAV-jelöltek, duplikációk ---- */
.f-bk-lista { margin: 0; padding: 0; list-style: none; }
.f-bk-lista li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.4rem 0.75rem; padding: 0.5rem 0; border-bottom: 1px solid var(--f-line); }
.f-bk-lista li:last-child { border-bottom: 0; }
.f-bk-lista__szoveg { flex: 1 1 14rem; min-width: 0; overflow-wrap: anywhere; }
.f-bk-jeloltek td.f-azonosito { white-space: nowrap; }
.f-bk-jeloltek button { white-space: normal; }

/* ---- az adatlap alsó műveletsora és a külön (elvetés, visszaállítás) űrlapok ---- */
.f-bk-muveletek { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; margin-top: 1rem; }
.f-bk-kulon { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--f-line); }

@media (max-width: 991px) {
    .f-bk-racs { grid-template-columns: minmax(0, 1fr); }
    .f-bk-fajl { position: static; }
}

@media (max-width: 560px) {
    .f-bk-mezok { grid-template-columns: minmax(0, 1fr); }
    .f-bk-muveletek .btn-f,
    .f-bk-muveletek .btn-f-outline { flex: 1 1 100%; text-align: center; }
    .f-bk-tomeges .f-form-group { min-width: 0; flex: 1 1 100%; }
    .f-bk-fajlnev { max-width: none; min-width: 0; }
}
