/* =====================================================================
   Netinas téma — modern felület a Paper Dashboard (Bootstrap 3) fölé
   A paper-dashboard.css és az aril.css UTÁN töltődik; minden szabály a
   body.nt-theme alá van kötve, így a téma egy osztállyal ki-be kapcsolható.
   ===================================================================== */

:root {
    --nt-navy-900: #0a1328;
    --nt-navy-800: #0f1d3d;
    --nt-navy-700: #16295a;
    --nt-blue-600: #1d5fe0;
    --nt-blue-500: #2f74f5;
    --nt-blue-400: #5b93ff;
    --nt-blue-50:  #edf3ff;
    --nt-red-600:  #d4141b;
    --nt-red-50:   #fdecec;
    --nt-amber-500:#f0a019;
    --nt-amber-50: #fff6e5;
    --nt-green-600:#12a150;
    --nt-green-50: #e8f8ef;

    --nt-bg:       #f3f5fa;
    --nt-surface:  #ffffff;
    --nt-border:   #e5e8f0;
    --nt-border-strong: #d5dae6;
    --nt-text:     #18213a;
    --nt-text-2:   #4a5470;
    --nt-muted:    #7a849c;

    --nt-radius-sm: 8px;
    --nt-radius:    12px;
    --nt-radius-lg: 16px;
    --nt-shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);
    --nt-shadow:    0 1px 2px rgba(16, 24, 40, .05), 0 8px 24px -6px rgba(16, 24, 40, .08);
    --nt-shadow-lg: 0 24px 60px -12px rgba(10, 19, 40, .35);
    --nt-ring:      0 0 0 4px rgba(47, 116, 245, .16);
    --nt-ease:      cubic-bezier(.2, .8, .2, 1);
}

/* ---------- alap tipográfia ---------------------------------------- */
body.nt-theme,
body.nt-theme .main-panel,
body.nt-theme h1, body.nt-theme h2, body.nt-theme h3, body.nt-theme h4, body.nt-theme h5, body.nt-theme h6,
body.nt-theme p, body.nt-theme .btn, body.nt-theme .form-control, body.nt-theme .navbar,
body.nt-theme .sidebar .nav p, body.nt-theme .table, body.nt-theme label {
    font-family: 'Inter', 'Open Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
body.nt-theme {
    color: var(--nt-text);
    background: var(--nt-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "cv11", "ss01";
}
body.nt-theme a { color: var(--nt-blue-600); }
body.nt-theme a:hover { color: var(--nt-blue-500); }
body.nt-theme ::selection { background: rgba(47, 116, 245, .18); }

/* vékony, visszafogott görgetősáv */
body.nt-theme * { scrollbar-width: thin; scrollbar-color: #c3c9d8 transparent; }
body.nt-theme ::-webkit-scrollbar { width: 10px; height: 10px; }
body.nt-theme ::-webkit-scrollbar-thumb { background: #c9cfdc; border-radius: 10px; border: 3px solid transparent; background-clip: content-box; }
body.nt-theme ::-webkit-scrollbar-thumb:hover { background-color: #a9b1c3; }

/* ---------- oldalsáv --------------------------------------------- */
body.nt-theme .sidebar:before,
body.nt-theme .sidebar:after {
    background: radial-gradient(120% 60% at 0% 0%, rgba(47, 116, 245, .28) 0%, rgba(47, 116, 245, 0) 55%),
                radial-gradient(90% 40% at 100% 100%, rgba(212, 20, 27, .16) 0%, rgba(212, 20, 27, 0) 60%),
                linear-gradient(180deg, var(--nt-navy-800) 0%, var(--nt-navy-900) 100%) !important;
}
body.nt-theme .sidebar .sidebar-wrapper { box-shadow: none; }

/* logó: fehér „kártya" a sötét sávon */
body.nt-theme .sidebar .logo {
    background: transparent;
    box-shadow: none;
    height: auto;
    padding: 18px 18px 6px;
}
body.nt-theme .sidebar .logo:before { display: none; }
body.nt-theme .sidebar .logo a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: var(--nt-radius);
    padding: 8px 12px;
    box-shadow: 0 6px 20px -6px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(255, 255, 255, .6);
    transition: transform .25s var(--nt-ease), box-shadow .25s var(--nt-ease);
}
body.nt-theme .sidebar .logo a:hover { transform: translateY(-1px); box-shadow: 0 10px 26px -6px rgba(0, 0, 0, .5); }
body.nt-theme .sidebar .logo img { height: 44px; }
body.nt-theme .sidebar .sidebar-wrapper { height: calc(100% - 86px); }

/* felhasználó-blokk */
body.nt-theme .sidebar .user {
    margin: 14px 12px 6px;
    padding: 10px 0;
    border-radius: var(--nt-radius);
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .07);
}
body.nt-theme .sidebar .user:after { display: none; }
body.nt-theme .sidebar .user .photo {
    margin-left: 12px;
    width: 36px; height: 36px;
    border: 2px solid rgba(255, 255, 255, .85);
    box-shadow: 0 0 0 3px rgba(47, 116, 245, .45);
}
body.nt-theme .sidebar .user .info > a { padding: 8px 16px 8px 0; opacity: 1; }
body.nt-theme .sidebar .user .info > a > span { color: #fff; font-weight: 600; font-size: 13.5px; }
body.nt-theme .sidebar .user .info .caret { right: 14px; top: 17px; }
body.nt-theme .sidebar .user .info .collapse .nav,
body.nt-theme .sidebar .user .info .collapsing .nav { margin: 6px 8px 0; }

/* menüpontok */
body.nt-theme .sidebar .sidebar-wrapper > .nav { margin-top: 8px; padding: 0 12px; }
body.nt-theme .sidebar .sidebar-wrapper > .nav li > a,
body.nt-theme .sidebar .sidebar-wrapper .user .nav li > a {
    margin: 2px 0 0;
    padding: 8px 12px;
    border-radius: 10px;
    opacity: 1;
    color: rgba(226, 232, 245, .78) !important;
    transition: background-color .18s ease, color .18s ease, transform .18s var(--nt-ease);
}
body.nt-theme .sidebar .sidebar-wrapper > .nav li > a:hover,
body.nt-theme .sidebar .sidebar-wrapper .user .nav li > a:hover {
    background: rgba(255, 255, 255, .07);
    color: #fff !important;
}
body.nt-theme .sidebar .sidebar-wrapper > .nav li > a:hover i { transform: translateX(1px); }
body.nt-theme .sidebar .sidebar-wrapper > .nav i {
    font-size: 17px;
    width: 26px;
    line-height: 26px;
    margin-right: 10px;
    color: rgba(170, 190, 230, .85);
    transition: transform .18s var(--nt-ease), color .18s ease;
}
body.nt-theme .sidebar .sidebar-wrapper > .nav p {
    font-size: 13.5px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: .005em;
    line-height: 26px;
    white-space: normal;
    padding-right: 14px;
}
body.nt-theme .sidebar .sidebar-wrapper > .nav .caret { margin-top: 11px; right: 4px; opacity: .6; }

/* aktív menüpont: kék „pill" fénnyel, a régi piros sáv helyett */
body.nt-theme .sidebar .sidebar-wrapper > .nav li.active > a,
body.nt-theme .sidebar .sidebar-wrapper .user .nav li.active > a {
    color: #fff !important;
    background: linear-gradient(135deg, var(--nt-blue-600) 0%, var(--nt-blue-500) 100%);
    box-shadow: 0 8px 20px -8px rgba(47, 116, 245, .8), inset 0 1px 0 rgba(255, 255, 255, .18);
}
body.nt-theme .sidebar .sidebar-wrapper > .nav li.active > a i { color: #fff; }
body.nt-theme .sidebar .nav li.active > a:before,
body.nt-theme .sidebar .nav li.active > a:after { display: none !important; }

/* lenyíló almenü (pl. a kiválasztott cég lapjai) */
body.nt-theme .sidebar .sidebar-wrapper > .nav .collapse > .nav,
body.nt-theme .sidebar .sidebar-wrapper > .nav .collapsing > .nav {
    margin: 4px 0 8px 22px;
    padding-left: 10px;
    border-left: 1px solid rgba(255, 255, 255, .1);
}
body.nt-theme .sidebar .sidebar-wrapper > .nav [data-toggle="collapse"] ~ div > ul > li > a {
    padding: 5px 10px;
    margin: 1px 0;
    border-radius: 8px;
}
body.nt-theme .sidebar .sidebar-wrapper > .nav [data-toggle="collapse"] ~ div > ul > li > a .sidebar-normal,
body.nt-theme .sidebar .sidebar-wrapper .user .info [data-toggle="collapse"] ~ div > ul > li > a .sidebar-normal {
    font-size: 13px;
    font-weight: 500;
    text-transform: none;
    margin-left: 0;
}
/* almenüben az aktív elem visszafogottabb, hogy a szülő kiemelése maradjon a fő */
body.nt-theme .sidebar .sidebar-wrapper > .nav .collapse li.active > a,
body.nt-theme .sidebar .sidebar-wrapper .user .collapse li.active > a {
    background: rgba(91, 147, 255, .18);
    box-shadow: inset 2px 0 0 var(--nt-blue-400);
    color: #fff !important;
}

/* „csak mindenhatóknak" és hasonló szekciócímek */
body.nt-theme .sidebar .sidebar-wrapper > .nav li.separator:after { background-color: rgba(255, 255, 255, .1); }
body.nt-theme .sidebar .sidebar-wrapper > .nav li:not([class]) > p,
body.nt-theme .sidebar .sidebar-wrapper > .nav > li > p {
    color: rgba(170, 190, 230, .55);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* ---------- fő panel, felső sáv ----------------------------------- */
body.nt-theme .main-panel { background: var(--nt-bg); }
body.nt-theme .navbar-default {
    background: rgba(255, 255, 255, .78);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid var(--nt-border);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .6);
    min-height: 64px;
}
body.nt-theme .navbar .navbar-brand {
    font-size: 15px;
    font-weight: 600;
    color: var(--nt-text) !important;
    margin: 14px 0 0 0;
    padding: 6px 8px;
    letter-spacing: -.005em;
}
/* a morzsamenü elemei: az utolsó hangsúlyos, a korábbiak halványabbak */
body.nt-theme .navbar .navbar-header a.navbar-brand { color: var(--nt-muted) !important; border-radius: 8px; }
body.nt-theme .navbar .navbar-header a.navbar-brand:hover { background: rgba(16, 24, 40, .04); color: var(--nt-text) !important; }
body.nt-theme .navbar .navbar-header a.navbar-brand:last-child { color: var(--nt-text) !important; }
body.nt-theme .navbar .navbar-header span.navbar-brand { color: #b5bccb !important; padding: 6px 2px; font-weight: 400; }

body.nt-theme .navbar .navbar-nav > li > a { color: var(--nt-text-2); }
body.nt-theme .navbar .navbar-nav > li > a:hover { color: var(--nt-blue-600); }
body.nt-theme .navbar .navbar-nav > li > a i { font-size: 18px; }

/* ---------- tartalom ----------------------------------------------- */
body.nt-theme .main-panel > .content { padding: 28px 22px 0; }
body.nt-theme .content h1, body.nt-theme .content h2, body.nt-theme .content h3,
body.nt-theme .content h4, body.nt-theme .content h5 { color: var(--nt-text); letter-spacing: -.015em; }
body.nt-theme .content > .container-fluid > .row > h3,
body.nt-theme .content h3.title,
body.nt-theme .content .title { font-weight: 700; }

/* kártyák */
body.nt-theme .card {
    border-radius: var(--nt-radius-lg);
    border: 1px solid var(--nt-border);
    box-shadow: var(--nt-shadow);
    color: var(--nt-text);
    transition: box-shadow .25s var(--nt-ease);
}
body.nt-theme .card .card-header { padding: 22px 24px 0; }
body.nt-theme .card .card-content { padding: 18px 24px 22px; }
body.nt-theme .card .card-footer { padding: 0 24px 22px; }
body.nt-theme .card .card-title {
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -.015em;
    color: var(--nt-text);
}
body.nt-theme .card .category,
body.nt-theme .card label { color: var(--nt-muted); }
body.nt-theme .card hr { border-color: var(--nt-border); }
body.nt-theme .ajaxform .card { border-radius: var(--nt-radius-lg); padding: 32px; }

/* ---------- gombok ----------------------------------------------- */
body.nt-theme .btn,
body.nt-theme .navbar .navbar-nav > li > a.btn {
    border-radius: 10px;
    border-width: 1px;
    font-weight: 600;
    font-size: 13.5px;
    letter-spacing: .005em;
    padding: 8px 16px;
    line-height: 1.45;
    border-color: var(--nt-border-strong);
    color: var(--nt-text-2);
    background-color: var(--nt-surface);
    box-shadow: var(--nt-shadow-sm);
    transition: transform .15s var(--nt-ease), box-shadow .15s ease, background-color .15s ease, border-color .15s ease, color .15s ease;
}
body.nt-theme .btn:hover,
body.nt-theme .btn:focus {
    border-color: #b9c1d3;
    color: var(--nt-text);
    background-color: #fafbfd;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px -6px rgba(16, 24, 40, .18);
}
body.nt-theme .btn:active, body.nt-theme .btn.active { transform: translateY(0); box-shadow: var(--nt-shadow-sm); }
body.nt-theme .btn:focus-visible { box-shadow: var(--nt-ring); }
body.nt-theme .btn.btn-lg { padding: 11px 22px; font-size: 15px; border-radius: 12px; }
body.nt-theme .btn.btn-sm, body.nt-theme .btn.btn-xs { padding: 4px 10px; font-size: 12.5px; border-radius: 8px; }
body.nt-theme .btn-submit { font-size: 15px; padding: 12px 20px; border-radius: 12px; }

/* kitöltött gombok színenként */
body.nt-theme .btn.btn-fill {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(180deg, #3a4461 0%, #2b3450 100%);
    box-shadow: 0 1px 2px rgba(16, 24, 40, .15), inset 0 1px 0 rgba(255, 255, 255, .12);
}
body.nt-theme .btn.btn-fill:hover, body.nt-theme .btn.btn-fill:focus { color: #fff; filter: brightness(1.07); box-shadow: 0 8px 18px -8px rgba(16, 24, 40, .45); }

body.nt-theme .btn-info.btn-fill, body.nt-theme .btn-primary.btn-fill {
    background: linear-gradient(180deg, var(--nt-blue-500) 0%, var(--nt-blue-600) 100%);
    box-shadow: 0 1px 2px rgba(29, 95, 224, .3), inset 0 1px 0 rgba(255, 255, 255, .18);
}
body.nt-theme .btn-info.btn-fill:hover, body.nt-theme .btn-primary.btn-fill:hover { box-shadow: 0 10px 22px -10px rgba(29, 95, 224, .8); }
body.nt-theme .btn-success.btn-fill {
    background: linear-gradient(180deg, #19b562 0%, var(--nt-green-600) 100%);
    box-shadow: 0 1px 2px rgba(18, 161, 80, .3), inset 0 1px 0 rgba(255, 255, 255, .18);
}
body.nt-theme .btn-warning.btn-fill {
    background: linear-gradient(180deg, #f6b23a 0%, var(--nt-amber-500) 100%);
    box-shadow: 0 1px 2px rgba(240, 160, 25, .3), inset 0 1px 0 rgba(255, 255, 255, .25);
}
body.nt-theme .btn-danger.btn-fill {
    background: linear-gradient(180deg, #e8323a 0%, var(--nt-red-600) 100%);
    box-shadow: 0 1px 2px rgba(212, 20, 27, .3), inset 0 1px 0 rgba(255, 255, 255, .18);
}

/* körvonalas (nem kitöltött) színes gombok */
body.nt-theme .btn-info:not(.btn-fill):not(.btn-simple),
body.nt-theme .btn-primary:not(.btn-fill):not(.btn-simple) { color: var(--nt-blue-600); border-color: #c7d8fb; background: var(--nt-blue-50); }
body.nt-theme .btn-danger:not(.btn-fill):not(.btn-simple)  { color: var(--nt-red-600);  border-color: #f6c5c7; background: var(--nt-red-50); }
body.nt-theme .btn-warning:not(.btn-fill):not(.btn-simple) { color: #b86e00;             border-color: #f7dca8; background: var(--nt-amber-50); }
body.nt-theme .btn-success:not(.btn-fill):not(.btn-simple) { color: var(--nt-green-600); border-color: #bfe8d0; background: var(--nt-green-50); }

/* „egyszerű" (keret nélküli) gombok */
body.nt-theme .btn.btn-simple {
    border-color: transparent;
    background: transparent;
    box-shadow: none;
}
body.nt-theme .btn.btn-simple:hover { background: rgba(16, 24, 40, .05); transform: none; box-shadow: none; }

/* ikon-gombok a táblázatokban (szerkesztés, törlés, nyomtatás…) */
body.nt-theme .btn.btn-icon,
body.nt-theme .btn.btn-simple.btn-icon {
    width: 34px; height: 34px;
    padding: 0;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f4f6fb;
    border: 1px solid transparent;
    box-shadow: none;
    vertical-align: middle;
}
body.nt-theme .btn.btn-icon i,
body.nt-theme .navbar .navbar-nav > li > a.btn.btn-icon i {
    background: transparent;
    padding: 0;
    border-radius: 0;
    font-size: 15px;
}
body.nt-theme .btn.btn-icon:hover { transform: translateY(-1px); box-shadow: 0 6px 12px -6px rgba(16, 24, 40, .25); }
body.nt-theme .btn.btn-icon.btn-warning, body.nt-theme .btn.btn-icon.edit   { background: var(--nt-amber-50); color: #c77c00; }
body.nt-theme .btn.btn-icon.btn-danger,  body.nt-theme .btn.btn-icon.remove { background: var(--nt-red-50);   color: var(--nt-red-600); }
body.nt-theme .btn.btn-icon.btn-info    { background: var(--nt-blue-50);  color: var(--nt-blue-600); }
body.nt-theme .btn.btn-icon.btn-success { background: var(--nt-green-50); color: var(--nt-green-600); }
body.nt-theme .btn.btn-icon.btn-warning:hover, body.nt-theme .btn.btn-icon.edit:hover     { background: #ffeac2; }
body.nt-theme .btn.btn-icon.btn-danger:hover,  body.nt-theme .btn.btn-icon.remove:hover   { background: #fbd6d7; }
body.nt-theme .btn.btn-icon.btn-info:hover    { background: #dbe7ff; }
body.nt-theme .btn.btn-icon.btn-success:hover { background: #d1f1de; }

/* ---------- űrlapok ---------------------------------------------- */
body.nt-theme .form-control,
body.nt-theme .input-no-border.form-control {
    background-color: var(--nt-surface);
    border: 1px solid var(--nt-border-strong);
    border-radius: 10px;
    color: var(--nt-text);
    font-size: 14px;
    height: 40px;
    padding: 8px 12px;
    box-shadow: 0 1px 1px rgba(16, 24, 40, .03);
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
body.nt-theme textarea.form-control { height: auto; min-height: 90px; line-height: 1.55; }
body.nt-theme select.form-control { padding-right: 30px; }
body.nt-theme .form-control::placeholder { color: #a3abbd; }
body.nt-theme .form-control:hover { border-color: #bfc6d6; }
body.nt-theme .form-control:focus {
    background-color: #fff;
    border-color: var(--nt-blue-500);
    box-shadow: var(--nt-ring);
    outline: 0;
}
body.nt-theme .form-control[disabled],
body.nt-theme .form-control[readonly] { background-color: #f5f7fb; color: var(--nt-text-2); cursor: not-allowed; }
body.nt-theme .input-group-addon { border-radius: 10px; border-color: var(--nt-border-strong); background: #f5f7fb; color: var(--nt-muted); }

body.nt-theme .form-horizontal .control-label {
    font-size: 13.5px;
    font-weight: 500;
    color: var(--nt-text-2);
    padding-top: 11px !important;
    line-height: 1.35;
}
body.nt-theme .form-horizontal .control-p,
body.nt-theme .form-static-text { font-size: 14px; color: var(--nt-text); }
body.nt-theme .help-block { color: var(--nt-muted); font-size: 12.5px; margin-top: 6px; }
body.nt-theme .form-group { margin-bottom: 16px; }
body.nt-theme .has-error .form-control { border-color: #ef8a8e; box-shadow: 0 0 0 4px rgba(212, 20, 27, .1); }
body.nt-theme .has-error .help-block, body.nt-theme .has-error .control-label { color: var(--nt-red-600); }

/* jelölőnégyzetek, rádiógombok: a böngésző natív vezérlője márkaszínnel */
body.nt-theme input[type="checkbox"], body.nt-theme input[type="radio"] { accent-color: var(--nt-blue-500); }

/* chosen (kereshető legördülő, pl. a felső cégválasztó) */
body.nt-theme .chosen-container-single .chosen-single {
    height: 38px;
    line-height: 36px;
    border-radius: 10px;
    border: 1px solid var(--nt-border-strong);
    background: #fff;
    box-shadow: 0 1px 1px rgba(16, 24, 40, .03);
    color: var(--nt-text);
    font-size: 13.5px;
    padding-left: 12px;
}
body.nt-theme .chosen-container-single .chosen-single div b { background-position-y: 9px; }
body.nt-theme .chosen-container-active .chosen-single,
body.nt-theme .chosen-container-active.chosen-with-drop .chosen-single {
    border-color: var(--nt-blue-500);
    box-shadow: var(--nt-ring);
    background: #fff;
}
body.nt-theme .chosen-container .chosen-drop {
    border: 1px solid var(--nt-border);
    border-radius: 12px;
    margin-top: 6px;
    box-shadow: 0 18px 40px -12px rgba(16, 24, 40, .25);
    overflow: hidden;
}
body.nt-theme .chosen-container-multi .chosen-choices {
    border-radius: 10px;
    border: 1px solid var(--nt-border-strong);
    background: #fff;
    padding: 3px 6px;
    min-height: 40px;
}
body.nt-theme .chosen-container-multi .chosen-choices li.search-choice {
    border-radius: 7px;
    background: var(--nt-blue-50);
    border: 1px solid #c7d8fb;
    color: var(--nt-blue-600);
    box-shadow: none;
}
body.nt-theme .chosen-container .chosen-results li.highlighted { background: var(--nt-blue-500); border-radius: 7px; }
body.nt-theme .chosen-container .chosen-search input[type="text"] { border-radius: 8px; border-color: var(--nt-border-strong); }

/* ---------- táblázatok ------------------------------------------- */
body.nt-theme .table { color: var(--nt-text); }
body.nt-theme .table > thead > tr > th {
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--nt-muted);
    border-bottom: 1px solid var(--nt-border) !important;
    background: #f8f9fc;
    padding: 9px 12px !important;
}
body.nt-theme .table > thead > tr > th:first-child { border-top-left-radius: 10px; }
body.nt-theme .table > thead > tr > th:last-child  { border-top-right-radius: 10px; }
body.nt-theme .table > tbody > tr > td {
    border-top: 1px solid #eef0f6 !important;
    padding: 5px 12px !important;
    vertical-align: middle;
    font-size: 13.5px;
    line-height: 1.35;
}
/* a listák ikongombjai (szerkesztés, törlés…) kisebbek, hogy a sortávot ne ők adják */
body.nt-theme .table .btn.btn-icon,
body.nt-theme .table .btn.btn-simple.btn-icon { width: 28px; height: 28px; border-radius: 8px; }
body.nt-theme .table .btn.btn-icon i { font-size: 13px; }
body.nt-theme .table-striped > tbody > tr:nth-of-type(odd) { background-color: #fbfcfe; }
body.nt-theme .table-hover > tbody > tr { transition: background-color .12s ease; }
body.nt-theme .table-hover > tbody > tr:hover { background-color: #f1f5ff; }
body.nt-theme .table > tbody > tr > td a:not(.btn) { font-weight: 600; text-decoration: none; }
body.nt-theme .table > tbody > tr > td a:not(.btn):hover { text-decoration: underline; text-underline-offset: 3px; }

/* DataTables vezérlők: keresés, oldalméret, lapozó */
body.nt-theme .dataTables_wrapper .dataTables_filter input,
body.nt-theme .dataTables_wrapper .dataTables_length select {
    border-radius: 10px;
    border: 1px solid var(--nt-border-strong);
    background: #fff;
    height: 38px;
    padding: 6px 12px;
    box-shadow: none;
}
body.nt-theme .dataTables_wrapper .dataTables_filter input { min-width: 220px; }
/* oldalméret-választó („100 találat oldalanként"): mellékes, ezért kicsi, és a kereső mellett jobbra áll */
body.nt-theme .dataTables_wrapper .nt-dt-fej { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 6px 14px; }
body.nt-theme .dataTables_wrapper .nt-dt-fej .nt-dt-toolbar { margin: 0 auto 0 0; padding: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
/* a gombsor gombjai a keresőmezővel egy magasságban (38px), a btn-lg-t is beleértve */
body.nt-theme .dataTables_wrapper .nt-dt-fej .nt-dt-toolbar .btn,
body.nt-theme .dataTables_wrapper .nt-dt-fej .nt-dt-toolbar .btn.btn-lg {
    margin: 0; height: 38px; padding: 0 14px;
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13.5px; line-height: 1; border-radius: 10px;
}
body.nt-theme .dataTables_wrapper .nt-dt-fej .nt-dt-toolbar .btn i { font-size: 12px; }
body.nt-theme .dataTables_wrapper .nt-dt-fej .dataTables_length,
body.nt-theme .dataTables_wrapper .nt-dt-fej .dataTables_filter { float: none; margin: 0; text-align: right; }
body.nt-theme .dataTables_wrapper .nt-dt-fej .dataTables_length select { height: 24px; padding: 0 4px; border-radius: 6px; font-size: 10px; }
body.nt-theme .dataTables_wrapper .nt-dt-fej .dataTables_length label { font-size: 10px; font-weight: 400; margin: 0; }
body.nt-theme .dataTables_wrapper .dataTables_filter input:focus { border-color: var(--nt-blue-500); box-shadow: var(--nt-ring); }
body.nt-theme .dataTables_wrapper .dataTables_filter label,
body.nt-theme .dataTables_wrapper .dataTables_length label,
body.nt-theme .dataTables_wrapper .dataTables_info { color: var(--nt-muted); font-size: 13px; font-weight: 500; }
body.nt-theme .pagination > li > a,
body.nt-theme .pagination > li > span {
    border: 1px solid transparent;
    border-radius: 9px !important;
    margin: 0 2px;
    min-width: 36px;
    text-align: center;
    color: var(--nt-text-2);
    background: transparent;
    font-weight: 600;
    font-size: 13px;
}
body.nt-theme .pagination > li > a:hover { background: #eef1f8; color: var(--nt-text); }
body.nt-theme .pagination > .active > a,
body.nt-theme .pagination > .active > a:hover,
body.nt-theme .pagination > .active > span {
    background: linear-gradient(180deg, var(--nt-blue-500) 0%, var(--nt-blue-600) 100%);
    border-color: transparent;
    color: #fff;
    box-shadow: 0 6px 14px -6px rgba(29, 95, 224, .7);
}
body.nt-theme .pagination > .disabled > a { color: #c2c8d6; background: transparent; }
body.nt-theme table.dataTable thead .sorting:after,
body.nt-theme table.dataTable thead .sorting_asc:after,
body.nt-theme table.dataTable thead .sorting_desc:after { opacity: .45; }

/* ---------- értesítések, címkék, fülek ------------------------------ */
body.nt-theme .alert {
    border-radius: var(--nt-radius);
    border: 1px solid transparent;
    box-shadow: 0 12px 28px -12px rgba(16, 24, 40, .25);
    font-weight: 500;
}
body.nt-theme .alert-info    { background: #eaf2ff; border-color: #c9dbff; color: #103f99; }
body.nt-theme .alert-success { background: #e8f8ef; border-color: #bce7cf; color: #0b6b36; }
body.nt-theme .alert-warning { background: #fff6e5; border-color: #f8dfab; color: #7a4d00; }
body.nt-theme .alert-danger  { background: #fdecec; border-color: #f6c5c7; color: #8f0f14; }

body.nt-theme .label, body.nt-theme .badge { border-radius: 999px; font-weight: 600; letter-spacing: .02em; padding: 4px 9px; }

body.nt-theme .nav-tabs { border-bottom: 1px solid var(--nt-border); }
body.nt-theme .nav-tabs > li > a { border: 0; border-radius: 10px 10px 0 0; color: var(--nt-muted); font-weight: 600; }
body.nt-theme .nav-tabs > li.active > a,
body.nt-theme .nav-tabs > li.active > a:hover { color: var(--nt-blue-600); background: transparent; border: 0; box-shadow: inset 0 -2px 0 var(--nt-blue-500); }
body.nt-theme .nav-pills > li > a { border-radius: 10px; font-weight: 600; }
body.nt-theme .nav-pills > li.active > a { background: var(--nt-blue-500); }

body.nt-theme .dropdown-menu {
    border: 1px solid var(--nt-border);
    border-radius: 12px;
    box-shadow: 0 18px 40px -12px rgba(16, 24, 40, .25);
    padding: 6px;
}
body.nt-theme .dropdown-menu > li > a { border-radius: 8px; padding: 8px 12px; }
body.nt-theme .dropdown-menu > li > a:hover { background: var(--nt-blue-50); color: var(--nt-blue-600); }

body.nt-theme .modal-content,
body.nt-theme .mfp-content .card { border-radius: var(--nt-radius-lg); border: 0; box-shadow: var(--nt-shadow-lg); }
body.nt-theme .mfp-bg { background: #0a1328; opacity: .55; }
body.nt-theme .tooltipster-sidetip .tooltipster-box { border-radius: 10px; background: var(--nt-navy-800); border: 0; box-shadow: 0 12px 28px -10px rgba(0, 0, 0, .45); }

/* ---------- lábléc ----------------------------------------------- */
body.nt-theme .main-panel > .footer {
    border-top: 1px solid var(--nt-border);
    background: transparent;
}
body.nt-theme .footer nav > ul a,
body.nt-theme .footer .copyright { color: var(--nt-muted); font-size: 12.5px; font-weight: 500; text-transform: none; }
body.nt-theme .footer nav > ul a:hover { color: var(--nt-blue-600); }
body.nt-theme .footer .copyright a { color: var(--nt-text-2) !important; }

/* ---------- belépő oldal ----------------------------------------- */
body.nt-theme .login-page,
body.nt-theme .full-page.login-page {
    background: #0a1328 !important;
    background-image: none !important;
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}
body.nt-theme .full-page:after,
body.nt-theme .full-page .full-page-background { display: none !important; }
/* mozgó színfoltok és rács a háttérben */
body.nt-theme .login-page:before {
    content: "";
    position: absolute;
    inset: -20%;
    background:
        radial-gradient(40% 35% at 20% 25%, rgba(47, 116, 245, .55) 0%, rgba(47, 116, 245, 0) 70%),
        radial-gradient(35% 30% at 80% 20%, rgba(212, 20, 27, .35) 0%, rgba(212, 20, 27, 0) 70%),
        radial-gradient(45% 40% at 70% 85%, rgba(91, 147, 255, .35) 0%, rgba(91, 147, 255, 0) 70%);
    filter: blur(20px);
    animation: nt-drift 18s ease-in-out infinite alternate;
    z-index: 0;
}
body.nt-theme .login-page:after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
    background-color: transparent !important;
    opacity: 1 !important;
    background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 30%, transparent 80%);
    mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 30%, transparent 80%);
    z-index: 0;
    display: block !important;
    pointer-events: none;
}
@keyframes nt-drift {
    0%   { transform: translate3d(0, 0, 0) rotate(0deg); }
    100% { transform: translate3d(-4%, 3%, 0) rotate(8deg); }
}
@media (prefers-reduced-motion: reduce) {
    body.nt-theme .login-page:before { animation: none; }
}
body.nt-theme .login-page > .content {
    position: relative;
    z-index: 2;
    padding-top: 12vh;
}
body.nt-theme .login-page .card {
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 22px;
    box-shadow: var(--nt-shadow-lg), 0 0 0 1px rgba(255, 255, 255, .06);
    padding: 12px 8px 6px;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    animation: nt-rise .6s var(--nt-ease) both;
}
@keyframes nt-rise {
    from { opacity: 0; transform: translateY(14px) scale(.985); }
    to   { opacity: 1; transform: none; }
}
body.nt-theme .login-page .card .card-header { text-align: center; padding-top: 22px; }
body.nt-theme .login-page .card .card-title img { display: block; margin: 0 auto 14px; width: 132px !important; }
body.nt-theme .login-page .card .card-title span {
    display: block;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--nt-text);
}
body.nt-theme .login-page .card .card-title:after {
    content: "Jelentkezz be a folytatáshoz";
    display: block;
    margin-top: 4px;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--nt-muted);
    letter-spacing: 0;
}
body.nt-theme .login-page .card label { color: var(--nt-text-2); font-weight: 600; font-size: 13px; text-transform: none; }
body.nt-theme .login-page .form-control { height: 44px; background: #f7f8fc; }
body.nt-theme .login-page .form-control:focus { background: #fff; }
body.nt-theme .login-page .card-footer { padding: 4px 24px 26px; }
body.nt-theme .login-page .card-footer .btn {
    width: 100%;
    height: 46px;
    border-radius: 12px;
    font-size: 15px;
    color: #fff;
    border: 0;
    background: linear-gradient(135deg, var(--nt-blue-600) 0%, var(--nt-blue-500) 60%, #4f8bff 100%);
    box-shadow: 0 14px 28px -12px rgba(29, 95, 224, .85), inset 0 1px 0 rgba(255, 255, 255, .2);
}
body.nt-theme .login-page .card-footer .btn:hover { filter: brightness(1.06); transform: translateY(-1px); }
body.nt-theme .login-page .card .card-title[data-alcim]:after { content: attr(data-alcim); }
body.nt-theme .login-page .card-footer .btn + .nt-login-link { margin-top: 14px; }
body.nt-theme .login-page .card-footer a.btn { display: inline-flex; align-items: center; justify-content: center; }
body.nt-theme .login-page .nt-login-also { padding-top: 18px; }
/* üzenet a kártyán belül (a régi alert() helyett) */
body.nt-theme .login-page .nt-login-uzenet {
    margin: 16px 24px 0;
    padding: 11px 14px;
    border-radius: 10px;
    background: var(--nt-blue-50);
    color: var(--nt-navy-700);
    font-size: 13.5px;
    line-height: 1.45;
}
body.nt-theme .login-page .nt-login-uzenet-hiba { background: var(--nt-red-50); color: #9b1016; }
body.nt-theme .login-page .nt-login-elfelejtett {
    display: inline-block;
    margin-top: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--nt-blue-600);
}
body.nt-theme .login-page .nt-login-elfelejtett:hover { text-decoration: underline; }
body.nt-theme .login-page .nt-login-link,
body.nt-theme .login-page .nt-login-link-gomb {
    display: block;
    margin: 0 auto;
    padding: 0;
    border: 0;
    background: none;
    font-size: 13px;
    font-weight: 600;
    color: var(--nt-muted);
}
body.nt-theme .login-page .nt-login-link:hover,
body.nt-theme .login-page .nt-login-link-gomb:hover { color: var(--nt-blue-600); }
body.nt-theme .login-page .nt-login-megj { margin: -4px 0 0; font-size: 12.5px; color: var(--nt-muted); }
/* fiókválasztó: egy e-mail-cím, több iroda / felhasználó */
body.nt-theme .login-page .nt-login-fiokok { display: flex; flex-direction: column; gap: 10px; }
body.nt-theme .login-page .nt-login-fiok {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding: 12px 14px;
    border: 1px solid var(--nt-border);
    border-radius: 12px;
    background: #f7f8fc;
    text-align: left;
    transition: border-color .15s, background .15s, transform .15s;
}
body.nt-theme .login-page button.nt-login-fiok:hover,
body.nt-theme .login-page button.nt-login-fiok:focus-visible {
    border-color: var(--nt-blue-500);
    background: var(--nt-blue-50);
    transform: translateY(-1px);
    outline: none;
}
body.nt-theme .login-page .nt-login-fiok-info { margin-bottom: 16px; background: var(--nt-blue-50); border-color: transparent; }
body.nt-theme .login-page .nt-login-fiok-iroda { font-size: 14.5px; font-weight: 700; color: var(--nt-text); }
body.nt-theme .login-page .nt-login-fiok-nev { margin-top: 2px; font-size: 13px; color: var(--nt-text-2); }
/* „ÚJ VERZIÓ” jelzés a lábléc előtt */
body.nt-theme .login-page .nt-uj-verzio {
    display: inline-block;
    margin-right: 10px;
    padding: 4px 11px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--nt-red-600) 0%, #ff4d4f 100%);
    color: #fff;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .08em;
    vertical-align: middle;
    box-shadow: 0 0 0 0 rgba(255, 77, 79, .6);
    animation: nt-uj-pulzus 2.2s ease-out infinite;
}
@keyframes nt-uj-pulzus {
    0%   { box-shadow: 0 0 0 0 rgba(255, 77, 79, .6); }
    70%  { box-shadow: 0 0 0 10px rgba(255, 77, 79, 0); }
    100% { box-shadow: 0 0 0 0 rgba(255, 77, 79, 0); }
}
@media (prefers-reduced-motion: reduce) {
    body.nt-theme .login-page .nt-uj-verzio { animation: none; }
}
body.nt-theme .login-page .footer { position: relative; z-index: 2; }
body.nt-theme .login-page .footer .copyright { color: rgba(226, 232, 245, .55); font-weight: 500; font-size: 12.5px; }

/* ---------- mobil ------------------------------------------------ */
@media (max-width: 991px) {
    body.nt-theme .main-panel > .content { padding: 18px 8px 0; }
    body.nt-theme .navbar-default { -webkit-backdrop-filter: none; backdrop-filter: none; background: #fff; }
    body.nt-theme .card .card-header { padding: 18px 18px 0; }
    body.nt-theme .card .card-content { padding: 14px 18px 18px; }
    body.nt-theme .login-page > .content { padding-top: 6vh; }
}

/* ---------- finomítások ------------------------------------------ */
/* lenyitható szülő (pl. a kiválasztott cég): csak halvány kiemelés, a kék
   „pill" a ténylegesen aktív lapé marad */
body.nt-theme .sidebar .sidebar-wrapper > .nav li.active > a[data-toggle="collapse"] {
    background: rgba(255, 255, 255, .08);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
}
body.nt-theme .sidebar .sidebar-wrapper > .nav li.active > a[data-toggle="collapse"] i { color: var(--nt-blue-400); }

/* morzsamenü a felső sávban: függőlegesen középen, olvasható méretben */
body.nt-theme .navbar .navbar-header { display: flex; align-items: center; min-height: 64px; flex-wrap: wrap; }
body.nt-theme .navbar .navbar-brand { margin: 0; font-size: 16px; line-height: 24px; height: auto; }
body.nt-theme .navbar .navbar-nav > li[style] { margin: 13px 0 !important; }

/* hosszú menüfeliratok: az ikon mellett tördeljenek, ne alatta */
body.nt-theme .sidebar .sidebar-wrapper > .nav > li > a {
    display: flex;
    align-items: center;
    position: relative;
}
body.nt-theme .sidebar .sidebar-wrapper > .nav > li > a > i { float: none; flex: 0 0 26px; }
body.nt-theme .sidebar .sidebar-wrapper > .nav > li > a > p { flex: 1 1 auto; line-height: 1.35; padding: 4px 16px 4px 0; }

/* DataTables sorkibontó (+) ikonja kapja vissza a helyét */
body.nt-theme table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child,
body.nt-theme table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child { padding-left: 38px !important; }
body.nt-theme table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
body.nt-theme table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
    top: 50%;
    margin-top: -9px;
    left: 12px;
    height: 18px; width: 18px;
    line-height: 18px;
    border: 0;
    border-radius: 6px;
    box-shadow: none;
    background-color: var(--nt-blue-500);
    font-family: inherit;
    font-weight: 700;
    font-size: 14px;
    text-indent: 0;
    text-align: center;
    color: #fff;
}
body.nt-theme table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before { background-color: var(--nt-red-600); }

/* súgó/magyarázó szövegek (blockquote) info-dobozként */
body.nt-theme blockquote {
    border-left: 0;
    margin: 0 0 20px;
    padding: 14px 18px 14px 46px;
    position: relative;
    font-size: 14px;
    font-style: normal;
    line-height: 1.55;
    color: #1d3f82;
    background: linear-gradient(135deg, #eef4ff 0%, #f6f9ff 100%);
    border: 1px solid #d6e3ff;
    border-radius: var(--nt-radius);
}
body.nt-theme blockquote:before {
    content: "i";
    position: absolute;
    left: 16px; top: 15px;
    width: 20px; height: 20px;
    border-radius: 50%;
    background: var(--nt-blue-500);
    color: #fff;
    font: 700 12px/20px Georgia, serif;
    text-align: center;
}
body.nt-theme blockquote p { font-size: inherit; font-style: normal; margin: 0; }

/* mobilon a felső sáv elemei (cégválasztó, kilépés) az oldalsávba kerülnek */
body.nt-theme .sidebar .nav-mobile-menu { padding: 0 12px; margin-top: 10px; }
body.nt-theme .sidebar .nav-mobile-menu > li { margin: 0 !important; }
body.nt-theme .sidebar .nav-mobile-menu select {
    width: 100%;
    height: 40px;
    margin: 4px 0 8px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .07);
    color: #e6ebf5;
    font: 500 13.5px 'Inter', sans-serif;
    -webkit-appearance: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, rgba(226, 232, 245, .7) 50%), linear-gradient(135deg, rgba(226, 232, 245, .7) 50%, transparent 50%);
    background-position: calc(100% - 18px) 17px, calc(100% - 13px) 17px;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}
body.nt-theme .sidebar .nav-mobile-menu select option { color: var(--nt-text); background: #fff; }
body.nt-theme .sidebar .nav-mobile-menu > li > a { display: flex; align-items: center; border-radius: 10px; }
body.nt-theme .sidebar .nav-mobile-menu > li > a p { margin: 0; }
body.nt-theme .sidebar .nav-mobile-menu:after {
    content: "";
    display: block;
    height: 1px;
    margin: 10px 4px 4px;
    background: rgba(255, 255, 255, .08);
}

/* ---------- javítások (2026-09-24, user-visszajelzés) --------------- */
/* 1) a fejléc (és benne a cégválasztó lenyíló listája) a tartalom fölött legyen;
      a backdrop-filter saját rétegrendet nyit, ezért kell explicit z-index */
body.nt-theme .main-panel > .navbar { position: relative; z-index: 1030; }

/* a cégválasztó ne nyúljon a leghosszabb cégnévig; a lenyíló lista lehet szélesebb */
body.nt-theme .navbar .chosen-container { width: 320px !important; max-width: 42vw; }
body.nt-theme .navbar .chosen-container .chosen-single span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.nt-theme .navbar .chosen-container.chosen-with-drop .chosen-drop {
    left: auto;
    right: 0;
    width: min(560px, 90vw);
}
body.nt-theme .chosen-container .chosen-results { max-height: 360px; padding: 4px; margin: 0; }
body.nt-theme .chosen-container .chosen-results li { padding: 7px 10px; line-height: 1.35; border-radius: 7px; white-space: normal; }

/* 2) a btn-icon osztályt a sablonok szöveges linkekre is használják —
      ikon-négyzet csak akkor legyen, ha a gombban tényleg csak ikon van */
body.nt-theme .btn.btn-icon:not(:has(> i:only-child)),
body.nt-theme .btn.btn-simple.btn-icon:not(:has(> i:only-child)) {
    width: auto;
    height: auto;
    min-height: 0;
    padding: 2px 0;
    display: inline;
    background: transparent !important;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    transform: none;
    font-weight: 600;
    font-size: 14px;
    text-align: left;
    white-space: normal;
    color: var(--nt-blue-600);
}
body.nt-theme .btn.btn-icon:not(:has(> i:only-child)):hover {
    color: var(--nt-blue-500);
    text-decoration: underline;
    text-underline-offset: 3px;
}
body.nt-theme .btn.btn-icon.btn-danger:not(:has(> i:only-child)) { color: var(--nt-red-600); }
/* ikon + szöveg vegyesen: kis ikon a szöveg előtt */
body.nt-theme .btn.btn-icon:not(:has(> i:only-child)) > i { font-size: 14px; margin-right: 6px; }

/* cégválasztó: a chosen 7px-es felső paddingje miatt a szöveg lecsúszott */
body.nt-theme .chosen-container-single .chosen-single {
    padding: 0 34px 0 12px;
    line-height: 36px;
}
body.nt-theme .chosen-container-single .chosen-single span { line-height: 36px; height: 36px; margin-right: 0; }
body.nt-theme .chosen-container-single .chosen-single div { top: 0; height: 100%; width: 30px; display: flex; align-items: center; justify-content: center; }
body.nt-theme .chosen-container-single .chosen-single div b { height: 16px; width: 12px; background-position: 0 -1px; }
body.nt-theme .chosen-container-active.chosen-with-drop .chosen-single div b { background-position: -18px -1px; }

/* fejléc: az aktuális oldal neve legyen igazi oldalcím, a szülők kisebbek */
body.nt-theme .navbar .navbar-header a.navbar-brand { font-size: 15px; font-weight: 500; }
body.nt-theme .navbar .navbar-header a.navbar-brand:last-child {
    font-size: 21px;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--nt-text) !important;
    padding-left: 6px;
}
body.nt-theme .navbar .navbar-header a.navbar-brand:last-child:hover { background: transparent; cursor: default; }
body.nt-theme .navbar .navbar-header span.navbar-brand { font-size: 18px; }

/* ---------- javítások 2. kör (user-visszajelzés, Befizetendők oldal) ---------- */
/* fejléc: egységes betűméret — az utolsó elem csak sötétebb, nem nagyobb */
body.nt-theme .navbar .navbar-header a.navbar-brand,
body.nt-theme .navbar .navbar-header a.navbar-brand:last-child {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.01em;
    padding-left: 8px;
}
body.nt-theme .navbar .navbar-header a.navbar-brand:last-child { color: var(--nt-text) !important; }
body.nt-theme .navbar .navbar-header span.navbar-brand { font-size: 16px; }

/* kilépés: felirattal ellátott gomb a magányos ikon helyett */
body.nt-theme .navbar .navbar-right > li > a[href="?logout"] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 13px 0 13px 12px;
    padding: 8px 14px !important;
    border-radius: 10px;
    border: 1px solid var(--nt-border-strong);
    background: #fff;
    color: var(--nt-text-2);
    font-size: 13.5px;
    font-weight: 600;
    line-height: 20px;
    box-shadow: var(--nt-shadow-sm);
    transition: color .15s ease, border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}
body.nt-theme .navbar .navbar-right > li > a[href="?logout"] i { font-size: 15px; background: none; padding: 0; }
body.nt-theme .navbar .navbar-right > li > a[href="?logout"] p { display: inline !important; margin: 0; font-size: inherit; font-weight: inherit; text-transform: none; }
body.nt-theme .navbar .navbar-right > li > a[href="?logout"]:hover {
    color: var(--nt-red-600);
    border-color: #f6c5c7;
    background: var(--nt-red-50);
}

/* nyers (form-control nélküli) beviteli mezők a modulokban: táblázatos
   szerkesztők, szűrő-legördülők — ugyanaz a megjelenés, kicsit tömörebben */
body.nt-theme .main-panel .content input[type="text"]:not(.form-control):not(.chosen-search-input),
body.nt-theme .main-panel .content input[type="number"]:not(.form-control),
body.nt-theme .main-panel .content input[type="email"]:not(.form-control),
body.nt-theme .main-panel .content input[type="date"]:not(.form-control),
body.nt-theme .main-panel .content input[type="password"]:not(.form-control),
body.nt-theme .main-panel .content textarea:not(.form-control),
body.nt-theme .main-panel .content select:not(.form-control):not([multiple]) {
    height: 34px;
    padding: 5px 10px;
    border: 1px solid var(--nt-border-strong);
    border-radius: 8px;
    background-color: #fff;
    color: var(--nt-text);
    font: 400 13.5px/1.4 'Inter', 'Open Sans', sans-serif;
    box-shadow: 0 1px 1px rgba(16, 24, 40, .03);
    transition: border-color .15s ease, box-shadow .15s ease;
    vertical-align: middle;
}
body.nt-theme .main-panel .content textarea:not(.form-control) { height: auto; min-height: 60px; }
body.nt-theme .main-panel .content select:not(.form-control):not([multiple]) {
    -webkit-appearance: none;
    appearance: none;
    padding-right: 28px;
    background-image: linear-gradient(45deg, transparent 50%, #7a849c 50%), linear-gradient(135deg, #7a849c 50%, transparent 50%);
    background-position: calc(100% - 15px) 14px, calc(100% - 10px) 14px;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    cursor: pointer;
}
body.nt-theme .main-panel .content input:not(.form-control):not([type="checkbox"]):not([type="radio"]):hover,
body.nt-theme .main-panel .content select:not(.form-control):hover,
body.nt-theme .main-panel .content textarea:not(.form-control):hover { border-color: #bfc6d6; }
body.nt-theme .main-panel .content input:not(.form-control):not([type="checkbox"]):not([type="radio"]):focus,
body.nt-theme .main-panel .content select:not(.form-control):focus,
body.nt-theme .main-panel .content textarea:not(.form-control):focus {
    outline: 0;
    border-color: var(--nt-blue-500);
    box-shadow: var(--nt-ring);
}
body.nt-theme .main-panel .content input:not(.form-control)[readonly],
body.nt-theme .main-panel .content input:not(.form-control)[disabled] { background-color: #f5f7fb; color: var(--nt-text-2); }
/* táblázatcellában a mező töltse ki a helyet */
body.nt-theme .main-panel .content td > input[type="text"]:not(.form-control) { width: 100%; }

/* összegmezők: jobbra zárt, táblázatos számok */
body.nt-theme input[id^="osszeg_"],
body.nt-theme input.osszeg { text-align: right; font-variant-numeric: tabular-nums; max-width: 120px !important; }
/* összeg + „Ft" egy sorban maradjon */
body.nt-theme .main-panel .content td:has(> input[id^="osszeg_"]) { white-space: nowrap; }
body.nt-theme .main-panel .content td > input[id^="osszeg_"] { width: calc(100% - 26px) !important; min-width: 90px; margin-right: 4px; }

/* =====================================================================
   Kezdőlap — áttekintés
   ===================================================================== */
body.nt-theme .nt-dash { padding-bottom: 24px; }

/* üdvözlő sáv */
body.nt-theme .nt-dash-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 18px 24px;
    padding: 28px 30px;
    margin-bottom: 22px;
    border-radius: 20px;
    color: #fff;
    background:
        radial-gradient(60% 120% at 100% 0%, rgba(212, 20, 27, .35) 0%, rgba(212, 20, 27, 0) 60%),
        radial-gradient(70% 140% at 0% 100%, rgba(91, 147, 255, .45) 0%, rgba(91, 147, 255, 0) 60%),
        linear-gradient(135deg, var(--nt-navy-800) 0%, #1a3a86 100%);
    box-shadow: 0 20px 40px -20px rgba(15, 29, 61, .55);
}
body.nt-theme .nt-dash-hero:after {
    content: "";
    position: absolute; inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size: 32px 32px;
    -webkit-mask-image: linear-gradient(90deg, transparent 30%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 30%, #000 100%);
    pointer-events: none;
}
body.nt-theme .nt-dash-hero > * { position: relative; z-index: 1; }
body.nt-theme .nt-dash-date { font-size: 13px; font-weight: 500; color: rgba(226, 232, 245, .75); letter-spacing: .01em; }
body.nt-theme .nt-dash-hero h2 { color: #fff; margin: 6px 0 6px; font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
body.nt-theme .nt-dash-hero p { margin: 0; color: rgba(226, 232, 245, .88); font-size: 14.5px; }
body.nt-theme .nt-dash-hero p strong { color: #fff; }
body.nt-theme .nt-dash-actions { display: flex; flex-wrap: wrap; gap: 8px; }
body.nt-theme .nt-dash-actions .btn:not(.btn-fill) {
    background: rgba(255, 255, 255, .1);
    border-color: rgba(255, 255, 255, .18);
    color: #fff;
    box-shadow: none;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
body.nt-theme .nt-dash-actions .btn:not(.btn-fill):hover { background: rgba(255, 255, 255, .18); color: #fff; border-color: rgba(255, 255, 255, .3); }
body.nt-theme .nt-dash-actions .btn i { margin-right: 4px; }

/* mutatók */
body.nt-theme .nt-dash-kpis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 16px;
    margin-bottom: 22px;
}
body.nt-theme .nt-kpi {
    --kpi: var(--nt-blue-500);
    --kpi-bg: var(--nt-blue-50);
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas: "label icon" "value icon" "sub sub";
    align-items: center;
    padding: 18px 20px;
    border-radius: var(--nt-radius-lg);
    background: var(--nt-surface);
    border: 1px solid var(--nt-border);
    box-shadow: var(--nt-shadow);
    color: var(--nt-text) !important;
    text-decoration: none !important;
    overflow: hidden;
    transition: transform .2s var(--nt-ease), box-shadow .2s var(--nt-ease), border-color .2s ease;
}
body.nt-theme .nt-kpi:before {
    content: "";
    position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
    background: var(--kpi);
    opacity: .9;
}
body.nt-theme .nt-kpi:hover { transform: translateY(-2px); box-shadow: 0 16px 30px -14px rgba(16, 24, 40, .25); border-color: #d9deea; }
body.nt-theme .nt-kpi-blue   { --kpi: var(--nt-blue-500);  --kpi-bg: var(--nt-blue-50); }
body.nt-theme .nt-kpi-green  { --kpi: var(--nt-green-600); --kpi-bg: var(--nt-green-50); }
body.nt-theme .nt-kpi-red    { --kpi: var(--nt-red-600);   --kpi-bg: var(--nt-red-50); }
body.nt-theme .nt-kpi-amber  { --kpi: var(--nt-amber-500); --kpi-bg: var(--nt-amber-50); }
body.nt-theme .nt-kpi-violet { --kpi: #7c4dff;             --kpi-bg: #f1ecff; }
body.nt-theme .nt-kpi-label { grid-area: label; font-size: 12.5px; font-weight: 600; color: var(--nt-muted); text-transform: uppercase; letter-spacing: .05em; }
body.nt-theme .nt-kpi-value { grid-area: value; font-size: 32px; font-weight: 700; letter-spacing: -.03em; line-height: 1.15; margin-top: 4px; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-kpi-sub { grid-area: sub; margin-top: 6px; font-size: 12.5px; color: var(--nt-muted); }
body.nt-theme .nt-kpi-sub b { color: var(--kpi); font-weight: 600; }
body.nt-theme .nt-kpi-icon {
    grid-area: icon;
    width: 46px; height: 46px;
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    background: var(--kpi-bg);
    color: var(--kpi);
    font-size: 20px;
}

/* panelek */
body.nt-theme .nt-dash-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-items: start;
}
body.nt-theme .nt-dash-grid .nt-dash-wide { grid-column: 1 / -1; }
body.nt-theme .nt-dash-panel { margin: 0; padding: 6px 0 8px; }
body.nt-theme .nt-panel-head {
    display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px;
    padding: 16px 22px 10px;
}
body.nt-theme .nt-panel-head h4 { margin: 0; font-size: 16px; font-weight: 700; letter-spacing: -.01em; }
body.nt-theme .nt-panel-hint { font-size: 12.5px; color: var(--nt-muted); }
body.nt-theme .nt-panel-link { margin-left: auto; font-size: 13px; font-weight: 600; white-space: nowrap; }
body.nt-theme .nt-panel-link i { margin-left: 2px; }

body.nt-theme .nt-list { list-style: none; margin: 0; padding: 0 10px; }
body.nt-theme .nt-list li + li { border-top: 1px solid #f0f2f7; }
body.nt-theme .nt-list li > a {
    display: flex; align-items: center; gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    color: var(--nt-text);
    text-decoration: none;
    transition: background-color .12s ease;
}
body.nt-theme .nt-list li > a:hover { background: #f4f7fe; }
body.nt-theme .nt-list-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
body.nt-theme .nt-list-title { font-weight: 600; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.nt-theme .nt-list-sub { font-size: 12.5px; color: var(--nt-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.nt-theme .nt-list-meta { flex: 0 0 auto; font-size: 12.5px; color: var(--nt-muted); font-variant-numeric: tabular-nums; }
body.nt-theme .nt-list-icon {
    flex: 0 0 34px; width: 34px; height: 34px;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    background: var(--nt-blue-50); color: var(--nt-blue-600);
}
body.nt-theme .nt-list-icon-amber { background: var(--nt-amber-50); color: #c77c00; }

body.nt-theme .nt-pill {
    flex: 0 0 auto;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}
body.nt-theme .nt-pill-danger  { background: var(--nt-red-50);   color: var(--nt-red-600); }
body.nt-theme .nt-pill-warning { background: var(--nt-amber-50); color: #b86e00; }
body.nt-theme .nt-pill-info    { background: var(--nt-blue-50);  color: var(--nt-blue-600); }

body.nt-theme .nt-empty { padding: 22px; text-align: center; color: var(--nt-muted); font-size: 14px; }
body.nt-theme .nt-empty i { color: var(--nt-green-600); margin-right: 6px; }

/* modulcsempék */
body.nt-theme .nt-dash-section-title {
    margin: 26px 2px 12px;
    font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
    color: var(--nt-muted);
}
body.nt-theme .nt-dash-modules {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 12px;
}
body.nt-theme .nt-module {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--nt-surface);
    border: 1px solid var(--nt-border);
    box-shadow: var(--nt-shadow-sm);
    color: var(--nt-text) !important;
    font-weight: 600; font-size: 13.5px;
    text-decoration: none !important;
    transition: transform .18s var(--nt-ease), box-shadow .18s ease, border-color .18s ease;
}
body.nt-theme .nt-module i {
    flex: 0 0 34px; width: 34px; height: 34px;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    background: var(--nt-blue-50); color: var(--nt-blue-600);
    font-size: 16px;
}
body.nt-theme .nt-module:hover { transform: translateY(-2px); border-color: #c7d8fb; box-shadow: 0 12px 24px -12px rgba(29, 95, 224, .35); }

@media (max-width: 991px) {
    body.nt-theme .nt-dash-grid { grid-template-columns: minmax(0, 1fr); }
    body.nt-theme .nt-dash-hero { padding: 22px 20px; }
    body.nt-theme .nt-dash-hero h2 { font-size: 22px; }
}

/* =====================================================================
   Oldalsáv fejléce: logó + fiók (avatár, lenyíló fiókmenü)
   ===================================================================== */
body.nt-theme .sidebar .nt-brand {
    position: relative;
    z-index: 6;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    height: 72px;
    padding: 0 16px 0 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
}
body.nt-theme .sidebar .sidebar-wrapper { height: calc(100% - 72px); }
body.nt-theme .sidebar .nt-brand-logo {
    display: flex; align-items: center;
    padding: 4px 2px;
    border-radius: 10px;
    transition: opacity .2s ease, transform .2s var(--nt-ease);
}
body.nt-theme .sidebar .nt-brand-logo img {
    height: 42px; width: auto;
    filter: drop-shadow(0 4px 14px rgba(47, 116, 245, .35));
}
body.nt-theme .sidebar .nt-brand-logo:hover { transform: translateY(-1px); }

body.nt-theme .nt-account { position: relative; }
body.nt-theme .nt-avatar-btn {
    width: 40px; height: 40px;
    padding: 0;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .85);
    background: #fff;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 0 0 3px rgba(47, 116, 245, .35), 0 6px 16px -6px rgba(0, 0, 0, .5);
    transition: box-shadow .2s ease, transform .2s var(--nt-ease);
}
body.nt-theme .nt-avatar-btn img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.nt-theme .nt-avatar-btn:hover,
body.nt-theme .nt-account.open .nt-avatar-btn { box-shadow: 0 0 0 4px rgba(91, 147, 255, .6), 0 8px 18px -6px rgba(0, 0, 0, .55); transform: scale(1.04); }
body.nt-theme .nt-avatar-btn:focus-visible { outline: 0; box-shadow: 0 0 0 4px rgba(91, 147, 255, .9); }

body.nt-theme .nt-account-menu {
    position: absolute;
    top: calc(100% + 10px);
    right: -6px;
    width: 236px;
    padding: 6px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid var(--nt-border);
    box-shadow: 0 24px 48px -16px rgba(10, 19, 40, .45);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px) scale(.98);
    transform-origin: top right;
    transition: opacity .16s ease, transform .16s var(--nt-ease), visibility 0s linear .16s;
}
body.nt-theme .nt-account.open .nt-account-menu {
    opacity: 1; visibility: visible; transform: none;
    transition: opacity .16s ease, transform .16s var(--nt-ease), visibility 0s;
}
body.nt-theme .nt-account-menu:before {
    content: ""; position: absolute; top: -6px; right: 20px;
    width: 12px; height: 12px; background: #fff;
    border-left: 1px solid var(--nt-border); border-top: 1px solid var(--nt-border);
    transform: rotate(45deg);
}
body.nt-theme .nt-account-head {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 10px 12px;
    margin-bottom: 4px;
    border-bottom: 1px solid var(--nt-border);
}
body.nt-theme .nt-account-head img { width: 38px; height: 38px; border-radius: 50%; box-shadow: 0 0 0 2px var(--nt-blue-50); }
body.nt-theme .nt-account-head div { min-width: 0; display: flex; flex-direction: column; }
body.nt-theme .nt-account-head strong { color: var(--nt-text); font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.nt-theme .nt-account-head span { color: var(--nt-muted); font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.nt-theme .nt-account-menu > a {
    display: flex; align-items: center; gap: 10px;
    padding: 9px 10px;
    border-radius: 9px;
    color: var(--nt-text-2) !important;
    font-size: 13.5px; font-weight: 500;
    text-decoration: none;
}
body.nt-theme .nt-account-menu > a i { width: 18px; text-align: center; color: var(--nt-muted); font-size: 15px; }
body.nt-theme .nt-account-menu > a:hover,
body.nt-theme .nt-account-menu > a.active { background: var(--nt-blue-50); color: var(--nt-blue-600) !important; }
body.nt-theme .nt-account-menu > a:hover i,
body.nt-theme .nt-account-menu > a.active i { color: var(--nt-blue-600); }
body.nt-theme .nt-account-menu > a.nt-account-logout { margin-top: 4px; border-top: 1px solid var(--nt-border); border-radius: 0 0 9px 9px; }
body.nt-theme .nt-account-menu > a.nt-account-logout:hover { background: var(--nt-red-50); color: var(--nt-red-600) !important; }
body.nt-theme .nt-account-menu > a.nt-account-logout:hover i { color: var(--nt-red-600); }

/* asztali nézetben a kilépés a fiókmenüben van — a felső sávból eltűnik
   (mobilon az oldalsávba kerülő menüben marad) */
@media (min-width: 992px) {
    body.nt-theme .navbar .navbar-right > li:has(> a[href="?logout"]) { display: none; }
}

/* belépőoldal: átlátszó hátterű logó */
body.nt-theme .login-page .card .card-title img { content: url(/core/assets/img/netinas-logo.png); }

/* =====================================================================
   Cégsáv: a kiválasztott cég az oldal tetején (+ cégválasztó, céglapok)
   ===================================================================== */
body.nt-theme .nt-cegsav {
    position: relative;
    z-index: 1020;              /* a lenyíló céglista a tartalom fölött nyíljon */
    margin: 20px 22px 0;
    background: var(--nt-surface);
    border: 1px solid var(--nt-border);
    border-radius: var(--nt-radius-lg);
    box-shadow: var(--nt-shadow);
}
body.nt-theme .nt-cegsav:before {          /* színes sáv a bal szélen */
    content: "";
    position: absolute; left: -1px; top: 14px; bottom: 14px; width: 4px;
    border-radius: 0 4px 4px 0;
    background: linear-gradient(180deg, var(--nt-blue-500), #7c4dff);
}
body.nt-theme .nt-cegsav-ures:before { background: #c9cfdc; }
body.nt-theme .main-panel > .nt-cegsav + .content { padding-top: 20px; }

body.nt-theme .nt-cegsav-fo {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px 14px 20px;
}
body.nt-theme .nt-cegsav-ikon {
    flex: 0 0 44px; width: 44px; height: 44px;
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--nt-blue-50), #f1ecff);
    color: var(--nt-blue-600);
    font-size: 20px;
}
body.nt-theme .nt-cegsav-ures .nt-cegsav-ikon { background: #f1f3f8; color: var(--nt-muted); }
body.nt-theme .nt-cegsav-info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
body.nt-theme .nt-cegsav-cimke {
    font-size: 11.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
    color: var(--nt-muted);
    margin-bottom: 2px;
}
body.nt-theme .nt-cegsav-nev {
    font-size: 19px; font-weight: 700; letter-spacing: -.015em; color: var(--nt-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body.nt-theme .nt-cegsav-jobb { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
body.nt-theme .nt-cegsav-chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #f4f6fb;
    color: var(--nt-text-2);
    font-size: 12.5px; font-weight: 600;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
body.nt-theme .nt-cegsav-chip i { color: var(--nt-muted); }

/* a cégnév maga a kereshető cégválasztó (chosen), címként megjelenítve */
body.nt-theme .nt-cegsav .chosen-container { width: min(680px, 100%) !important; }
body.nt-theme .nt-cegsav .chosen-container-single .chosen-single {
    height: auto;
    min-height: 34px;
    padding: 2px 34px 2px 8px;
    margin-left: -8px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    box-shadow: none;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -.015em;
    line-height: 30px;
    color: var(--nt-text);
    transition: background-color .15s ease, border-color .15s ease;
}
body.nt-theme .nt-cegsav .chosen-container-single .chosen-single span { line-height: 30px; height: auto; }
body.nt-theme .nt-cegsav-ures .chosen-container-single .chosen-single { color: var(--nt-muted); font-weight: 600; }
body.nt-theme .nt-cegsav .chosen-container-single .chosen-single:hover { background: #f4f6fb; border-color: var(--nt-border); }
body.nt-theme .nt-cegsav .chosen-container-active.chosen-with-drop .chosen-single,
body.nt-theme .nt-cegsav .chosen-container-active .chosen-single {
    background: #fff; border-color: var(--nt-blue-500); box-shadow: var(--nt-ring);
}
body.nt-theme .nt-cegsav .chosen-container .chosen-drop { width: min(680px, 90vw); margin-top: 8px; }
body.nt-theme .nt-cegsav .chosen-container .chosen-results li { font-size: 13.5px; font-weight: 500; letter-spacing: 0; }

/* céglapok: vízszintes fülek a sáv alján (görgethető, ha nem férnek ki) */
body.nt-theme .nt-cegsav-fulek {
    display: flex;
    gap: 2px;
    padding: 0 14px;
    border-top: 1px solid var(--nt-border);
    overflow-x: auto;
    scrollbar-width: thin;
}
body.nt-theme .nt-cegsav-fulek a {
    flex: 0 0 auto;
    padding: 11px 12px 10px;
    border-bottom: 2px solid transparent;
    color: var(--nt-muted) !important;
    font-size: 13.5px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none !important;
    transition: color .15s ease, border-color .15s ease;
}
body.nt-theme .nt-cegsav-fulek a:hover { color: var(--nt-text) !important; border-bottom-color: #d5dae6; }
body.nt-theme .nt-cegsav-fulek a.active { color: var(--nt-blue-600) !important; border-bottom-color: var(--nt-blue-500); }

@media (max-width: 991px) {
    body.nt-theme .nt-cegsav { margin: 14px 8px 0; }
    body.nt-theme .nt-cegsav-fo { flex-wrap: wrap; padding: 12px 14px; }
    body.nt-theme .nt-cegsav-jobb { width: 100%; justify-content: flex-start; padding-left: 58px; }
    body.nt-theme .nt-cegsav .chosen-container-single .chosen-single { font-size: 16px; }
}
/* mobilon a chosen nem indul el (natív választó) — az is címként jelenjen meg */
body.nt-theme .nt-cegsav select.nt-cegsav-select {
    width: 100%;
    max-width: 680px;
    height: 36px;
    margin-left: -8px;
    padding: 0 30px 0 8px;
    border: 1px solid transparent;
    border-radius: 10px;
    background-color: transparent;
    color: var(--nt-text);
    font: 700 17px/1.2 'Inter', 'Open Sans', sans-serif;
    letter-spacing: -.015em;
    -webkit-appearance: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #7a849c 50%), linear-gradient(135deg, #7a849c 50%, transparent 50%);
    background-position: calc(100% - 15px) 16px, calc(100% - 10px) 16px;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}
body.nt-theme .nt-cegsav select.nt-cegsav-select:focus { outline: 0; border-color: var(--nt-blue-500); box-shadow: var(--nt-ring); background-color: #fff; }
body.nt-theme .nt-cegsav-info { flex: 1 1 0; }

/* ---------- egységes cégkezelés ---------- */
/* „Válassz céget" oldal */
body.nt-theme .nt-valassz {
    max-width: 460px;
    margin: 40px auto;
    padding: 36px 32px;
    text-align: center;
    background: var(--nt-surface);
    border: 1px dashed #c7d8fb;
    border-radius: var(--nt-radius-lg);
    box-shadow: var(--nt-shadow);
}
/* csempés kezdőoldalon (pl. Számviteli politika cég nélkül): a cím alatt, a csempék előtt */
body.nt-theme .nt-csempe-elotte::after { content: ""; display: table; clear: both; }
body.nt-theme .nt-csempe-elotte > .col-md-12 { float: none; padding: 0; }
body.nt-theme .nt-csempe-elotte .nt-valassz { margin: 8px auto 28px; }
body.nt-theme .nt-valassz-ikon {
    width: 64px; height: 64px; margin: 0 auto 14px;
    border-radius: 18px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--nt-blue-50), #f1ecff);
    color: var(--nt-blue-600); font-size: 28px;
}
body.nt-theme .nt-valassz h3 { margin: 0 0 8px; font-size: 20px; font-weight: 700; }
body.nt-theme .nt-valassz p { color: var(--nt-muted); font-size: 14px; margin: 0 0 18px; }
/* saját iroda a sávban */
body.nt-theme .nt-cegsav-nev small { font-size: 13px; font-weight: 500; color: var(--nt-muted); margin-left: 6px; letter-spacing: 0; }
/* zárolt cégmező az űrlapokon */
body.nt-theme select.nt-zarolt { pointer-events: none; background-color: #f5f7fb !important; color: var(--nt-text) !important; font-weight: 600; background-image: none !important; }
body.nt-theme .nt-zarolt-sugo { color: var(--nt-muted); font-size: 12px; }
body.nt-theme select.nt-zarolt { -webkit-appearance: none; appearance: none; }

/* =====================================================================
   Cégválasztó a fejléc sorában (a korábbi külön cégsáv helyett)
   ===================================================================== */
body.nt-theme .navbar .navbar-header { gap: 4px; flex-wrap: nowrap; min-width: 0; }
body.nt-theme .nt-cegvalaszto {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding-left: 4px;
}
body.nt-theme .nt-cegvalaszto-ikon {
    flex: 0 0 36px; width: 36px; height: 36px;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--nt-blue-50), #f1ecff);
    color: var(--nt-blue-600);
    font-size: 17px;
}
body.nt-theme .nt-cegvalaszto-ures .nt-cegvalaszto-ikon { background: #f1f3f8; color: var(--nt-muted); }
body.nt-theme .nt-cegvalaszto-iroda .nt-cegvalaszto-ikon { background: linear-gradient(135deg, #fff1e0, #ffe6e6); color: #c2410c; }
body.nt-theme .nt-cegvalaszto-nev {
    font-size: 17px; font-weight: 700; letter-spacing: -.015em; color: var(--nt-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body.nt-theme .nt-cegvalaszto-nev small { font-size: 13px; font-weight: 500; color: var(--nt-muted); margin-left: 6px; letter-spacing: 0; }
body.nt-theme .nt-cegvalaszto .chosen-container { width: min(460px, 42vw) !important; }
body.nt-theme .nt-cegvalaszto .chosen-container-single .chosen-single {
    height: 38px; min-height: 0;
    padding: 0 30px 0 8px;
    margin-left: -8px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    box-shadow: none;
    font-size: 17px; font-weight: 700; letter-spacing: -.015em;
    line-height: 36px;
    color: var(--nt-text);
}
body.nt-theme .nt-cegvalaszto .chosen-container-single .chosen-single span { line-height: 36px; height: 36px; }
body.nt-theme .nt-cegvalaszto-ures .chosen-container-single .chosen-single { color: var(--nt-muted); font-weight: 600; }
body.nt-theme .nt-cegvalaszto .chosen-container-single .chosen-single:hover { background: #f4f6fb; border-color: var(--nt-border); }
body.nt-theme .nt-cegvalaszto .chosen-container-active .chosen-single { background: #fff; border-color: var(--nt-blue-500); box-shadow: var(--nt-ring); }
body.nt-theme .nt-cegvalaszto .chosen-container .chosen-drop { width: min(600px, 90vw); margin-top: 8px; }
body.nt-theme .nt-cegvalaszto .chosen-container .chosen-results li { font-size: 13.5px; font-weight: 500; letter-spacing: 0; }
body.nt-theme .nt-cegvalaszto .nt-cegsav-chip { flex: 0 0 auto; }
body.nt-theme .nt-cegvalaszto-adatok {
    flex: 0 0 auto;
    width: 32px; height: 32px;
    border-radius: 9px;
    display: flex; align-items: center; justify-content: center;
    color: var(--nt-muted) !important;
    border: 1px solid var(--nt-border);
    background: #fff;
    transition: color .15s ease, border-color .15s ease;
}
body.nt-theme .nt-cegvalaszto-adatok:hover { color: var(--nt-blue-600) !important; border-color: #c7d8fb; }
/* jelszómezők (Cégek → Ügyfélkapu) */
body.nt-theme .nt-jelszo .input-group-btn .btn { height: 38px; padding: 0 12px; border-color: var(--nt-border-strong); color: var(--nt-muted); }
body.nt-theme .nt-jelszo .input-group-btn .btn:hover { color: var(--nt-blue-600); }
body.nt-theme .nt-jelszo-torles { font-weight: 400; margin-left: 10px; cursor: pointer; }
body.nt-theme .nt-jelszo-sor { display: inline-flex; align-items: center; gap: 2px; white-space: nowrap; }
body.nt-theme .nt-jelszo-sor code { background: #f4f6fb; color: var(--nt-text-2); padding: 2px 7px; border-radius: 6px; font-size: 12.5px; }
body.nt-theme .nt-jelszo-sor .btn { padding: 2px 5px; color: var(--nt-muted); }
body.nt-theme .nt-jelszo-hianyzik { font-size: 12px; color: #b45309; }
body.nt-theme .nt-jelszo-athelyezes { font-size: 13px; padding: 8px 12px; margin-bottom: 8px; }

/* Összes cég / Új cég gombok a választó mellett */
body.nt-theme .nt-cegvalaszto-gombok { flex: 0 0 auto; display: flex; gap: 6px; margin-left: 4px; }
body.nt-theme .nt-cegvalaszto-gombok a {
    display: inline-flex; align-items: center; gap: 5px;
    height: 32px; padding: 0 11px;
    border-radius: 9px;
    border: 1px solid var(--nt-border);
    background: #fff;
    color: var(--nt-text-2) !important;
    font-size: 13px; font-weight: 600; white-space: nowrap;
    text-decoration: none !important;
    transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}
body.nt-theme .nt-cegvalaszto-gombok a i { font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-cegvalaszto-gombok a:hover { color: var(--nt-blue-600) !important; border-color: #c7d8fb; }
body.nt-theme .nt-cegvalaszto-gombok a:hover i,
body.nt-theme .nt-cegvalaszto-gombok a.active i { color: var(--nt-blue-600); }
body.nt-theme .nt-cegvalaszto-gombok a.active { background: var(--nt-blue-50); border-color: #c7d8fb; color: var(--nt-blue-600) !important; }
body.nt-theme .nt-cegvalaszto-csakgomb .nt-cegvalaszto-gombok { margin-left: 0; }
/* natív választó (mobilon a chosen nem indul) */
body.nt-theme .nt-cegvalaszto select.nt-cegsav-select {
    max-width: 100%;
    height: 38px;
    padding: 0 28px 0 8px;
    border: 1px solid transparent;
    border-radius: 10px;
    background-color: transparent;
    color: var(--nt-text);
    font: 700 16px/1.2 'Inter', 'Open Sans', sans-serif;
    -webkit-appearance: none; appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #7a849c 50%), linear-gradient(135deg, #7a849c 50%, transparent 50%);
    background-position: calc(100% - 14px) 17px, calc(100% - 9px) 17px;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}
/* a választó utáni útvonal: függőleges elválasztó, kisebb betű */
body.nt-theme .nt-utvonal-elvalaszto { width: 1px; height: 24px; background: var(--nt-border-strong); margin: 0 10px 0 6px; flex: 0 0 1px; }
body.nt-theme .nt-cegvalaszto ~ .navbar-brand,
body.nt-theme .nt-utvonal-elvalaszto ~ .navbar-brand { font-size: 14px !important; font-weight: 500 !important; color: var(--nt-muted) !important; white-space: nowrap; }
body.nt-theme .nt-utvonal-elvalaszto ~ a.navbar-brand:last-child { color: var(--nt-text-2) !important; font-weight: 600 !important; }

/* céglapok: a fejléc alatti fehér sáv */
body.nt-theme .main-panel > .nt-cegsav-fulek {
    position: relative;
    z-index: 5;
    background: #fff;
    border-top: 0;
    border-bottom: 1px solid var(--nt-border);
    padding: 0 18px;
}

@media (max-width: 991px) {
    body.nt-theme .nt-cegvalaszto .chosen-container { width: 100% !important; }
    body.nt-theme .nt-cegvalaszto .nt-cegsav-chip,
    body.nt-theme .nt-utvonal-elvalaszto,
    body.nt-theme .nt-utvonal-elvalaszto ~ .navbar-brand { display: none; }
    body.nt-theme .nt-cegvalaszto { flex: 1 1 auto; }
    body.nt-theme .nt-cegvalaszto-gombok a { padding: 0 9px; }
    body.nt-theme .nt-cegvalaszto-gombok a > span { display: none; }   /* mobilon csak ikon */
}
/* a fejléc cégválasztójának lenyíló listája a választó BAL széléhez igazodik és jobbra nyílik
   (a korábbi, jobb felső sarokhoz készült szabály jobbra igazított, így a lista az oldalsáv alá lógott) */
body.nt-theme .navbar .nt-cegvalaszto .chosen-container.chosen-with-drop .chosen-drop,
body.nt-theme .navbar .nt-cegvalaszto .chosen-container .chosen-drop {
    left: 0;
    right: auto;
    width: max(100%, 460px);
    max-width: calc(100vw - 300px);
}
@media (max-width: 991px) {
    body.nt-theme .navbar .nt-cegvalaszto .chosen-container .chosen-drop { max-width: calc(100vw - 24px); width: 100%; }
}
/* „cég nélkül" jelölés a dokumentum-listákban */
body.nt-theme .nt-cimke-cegnelkul { display: inline-block; padding: 2px 8px; border-radius: 999px; background: #f1f3f8; color: var(--nt-muted); font-size: 11.5px; font-weight: 600; letter-spacing: .02em; vertical-align: 1px; }

/* almenü csoportcímek (pl. GDPR: Szabályzatok / Nyilvántartások / Informatika) */
body.nt-theme .sidebar .nav .collapse li.nt-almenu-csoport > span { display: block; margin: 12px 0 4px; padding: 0 10px; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: rgba(170, 190, 230, .55); }
body.nt-theme .sidebar .nav .collapse li.nt-almenu-csoport:first-child > span { margin-top: 4px; }

/* ---------- archív modul (pl. Pénzmosás 2019): csak olvasható ---------- */
body.nt-theme .nt-archiv-sav {
    position: relative;
    z-index: 4;
    margin: 16px 22px 0;
    padding: 11px 16px;
    border-radius: var(--nt-radius);
    background: var(--nt-amber-50);
    border: 1px solid #f7dca8;
    color: #7a4d00;
    font-size: 13.5px;
    line-height: 1.5;
}
body.nt-theme .nt-archiv-sav i { margin-right: 6px; }
body.nt-theme .nt-archiv-sav a { color: #7a4d00; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
/* a szerver úgyis letiltja — a gombok el se jelenjenek meg */
body.nt-theme.nt-archiv .main-panel .content a[href*="/new"],
body.nt-theme.nt-archiv .main-panel .content .btn.remove,
body.nt-theme.nt-archiv .main-panel .content a[href*="/delete"],
body.nt-theme.nt-archiv .main-panel .content a[onclick*="delete"],
body.nt-theme.nt-archiv .main-panel .content button[type="submit"],
body.nt-theme.nt-archiv .main-panel .content input[type="submit"],
body.nt-theme.nt-archiv .main-panel .content .btn-submit,
body.nt-theme.nt-archiv .main-panel .content .form-submit { display: none !important; }
body.nt-theme.nt-archiv .main-panel .content form input,
body.nt-theme.nt-archiv .main-panel .content form select,
body.nt-theme.nt-archiv .main-panel .content form textarea { pointer-events: none; background-color: #f7f8fb !important; }

/* =====================================================================
   Lábléc mindig az oldal alján (rövid tartalomnál se középen lebegjen)
   ===================================================================== */
body.nt-theme .main-panel { display: flex; flex-direction: column; }
body.nt-theme .main-panel > .navbar,
body.nt-theme .main-panel > .footer,
body.nt-theme .main-panel > .nt-cegsav-fulek { flex: 0 0 auto; }
body.nt-theme .main-panel > .content { flex: 1 0 auto; }

/* =====================================================================
   Könyvelői modul → Befizetendők (lépések: határidő, tételek, értesítő)
   ===================================================================== */
body.nt-theme .nt-fiz .nt-fiz-bevezeto { color: var(--nt-muted); font-size: 13.5px; margin: -4px 0 16px; max-width: 760px; }
body.nt-theme .nt-fiz .nt-fiz-lepes { margin-bottom: 18px; }
body.nt-theme .nt-fiz .nt-fiz-lepes-cim { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; font-size: 15px; font-weight: 700; color: var(--nt-text); margin-bottom: 14px; }
body.nt-theme .nt-fiz .nt-fiz-lepes-cim small { font-size: 13px; font-weight: 500; color: var(--nt-muted); }
body.nt-theme .nt-fiz .nt-fiz-szam { flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--nt-blue-50); color: var(--nt-blue-600); font-size: 13px; font-weight: 700; }
body.nt-theme .nt-fiz .nt-fiz-hatarido { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 12px 14px; }
body.nt-theme .nt-fiz .nt-fiz-hatarido > label { display: flex; flex-direction: column; gap: 5px; margin: 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; }
body.nt-theme .nt-fiz .nt-fiz-hatarido select.form-control { min-width: 130px; height: 38px; }
body.nt-theme .nt-fiz .nt-fiz-hatarido .chosen-container { min-width: 130px; }
body.nt-theme .nt-fiz .nt-fiz-chipek { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-left: 8px; font-size: 12.5px; color: var(--nt-muted); }
body.nt-theme .nt-fiz .nt-fiz-chipek a { padding: 5px 10px; border-radius: 999px; border: 1px solid var(--nt-border); background: #fff; color: var(--nt-text-2); font-weight: 600; text-decoration: none; }
body.nt-theme .nt-fiz .nt-fiz-chipek a:hover { border-color: #c7d8fb; color: var(--nt-blue-600); }
body.nt-theme .nt-fiz .nt-fiz-chipek a.active { background: var(--nt-blue-50); border-color: #c7d8fb; color: var(--nt-blue-600); }
body.nt-theme .nt-fiz .nt-fiz-ures { display: flex; gap: 14px; align-items: flex-start; margin-top: 18px; padding: 14px 16px; border-radius: 12px; background: #f6f8fc; color: var(--nt-text-2); font-size: 13.5px; line-height: 1.55; }
body.nt-theme .nt-fiz .nt-fiz-ures > i { font-size: 22px; color: var(--nt-blue-600); margin-top: 2px; }
body.nt-theme .nt-fiz .nt-fiz-sugo { color: var(--nt-muted); font-size: 13px; margin: 0 0 12px; }
body.nt-theme .nt-fiz .nt-fiz-sugo i { color: #d97706; margin-right: 3px; }
body.nt-theme .nt-fiz .nt-fiz-allapot { margin-left: auto; font-size: 12.5px; font-weight: 600; padding: 4px 10px; border-radius: 999px; }
body.nt-theme .nt-fiz .nt-fiz-allapot:empty { display: none; }
body.nt-theme .nt-fiz .nt-fiz-allapot-ok { background: #ecfdf3; color: #15803d; }
body.nt-theme .nt-fiz .nt-fiz-allapot-var { background: #fff7e6; color: #b45309; }
body.nt-theme .nt-fiz .nt-fiz-tabla { margin-bottom: 0; }
body.nt-theme .nt-fiz .nt-fiz-tabla > thead > tr > th { font-size: 11.5px; }
body.nt-theme .nt-fiz .nt-fiz-tabla > tbody > tr > td,
body.nt-theme .nt-fiz .nt-fiz-tabla > tfoot > tr > td { padding: 6px 6px; vertical-align: middle; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-fiz .nt-fiz-tabla .form-control { height: 36px; padding: 6px 10px; font-size: 13.5px; }
body.nt-theme .nt-fiz .nt-fiz-tabla .nt-fiz-szamla { font-variant-numeric: tabular-nums; }
body.nt-theme .nt-fiz .nt-fiz-tabla tr.nt-fiz-modosult > td { background: #fff7e6; }
body.nt-theme .nt-fiz .nt-fiz-tabla tr.nt-fiz-modosult > td:first-child { box-shadow: inset 3px 0 0 #f59e0b; }
body.nt-theme .nt-fiz .nt-fiz-osszeg { display: flex; align-items: center; gap: 6px; }
body.nt-theme .nt-fiz .nt-fiz-osszeg input { text-align: right; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-fiz .nt-fiz-osszeg span { color: var(--nt-muted); font-size: 12.5px; }
body.nt-theme .nt-fiz .nt-fiz-muvelet { text-align: center; }
body.nt-theme .nt-fiz .nt-fiz-uj { height: 34px; padding: 0 14px; border-radius: 9px; font-size: 13px; font-weight: 600; }
body.nt-theme .nt-fiz .nt-fiz-osszesen { text-align: right; padding-right: 36px !important; font-size: 13.5px; color: var(--nt-text-2); white-space: nowrap; }
body.nt-theme .nt-fiz .nt-fiz-ertesito { display: flex; flex-direction: column; gap: 14px; }
body.nt-theme .nt-fiz .nt-fiz-ertesito .checkbox { margin: 0; }
body.nt-theme .nt-fiz .nt-fiz-gombok { display: flex; flex-wrap: wrap; gap: 8px; }
body.nt-theme .nt-fiz .nt-fiz-gombok .btn,
body.nt-theme .nt-fiz .nt-fiz-email .btn { height: 38px; padding: 0 16px; display: inline-flex; align-items: center; gap: 7px; border-radius: 10px; font-size: 13.5px; }
body.nt-theme .nt-fiz .nt-fiz-email { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px; padding-top: 14px; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-fiz .nt-fiz-email > label { display: flex; flex-direction: column; gap: 5px; margin: 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; }
body.nt-theme .nt-fiz .nt-fiz-email select.form-control { min-width: 320px; height: 38px; }
body.nt-theme .nt-fiz .nt-fiz-email .nt-fiz-sugo { margin: 0; }
body.nt-theme #fizetendok_popup { z-index: 1050; background: #fff; border: 1px solid var(--nt-border); border-radius: 10px; padding: 8px 12px; box-shadow: 0 12px 28px -10px rgba(15, 23, 42, .25); font-size: 13px; line-height: 1.9; max-height: 320px; overflow: auto; }

/* =====================================================================
   Egyéb nyilvántartások → Időszak megosztó
   ===================================================================== */
body.nt-theme .nt-im .nt-im-bevezeto { color: var(--nt-muted); font-size: 13.5px; margin: -4px 0 16px; max-width: 760px; }
body.nt-theme .nt-im .nt-im-kartya { margin-bottom: 18px; }
body.nt-theme .nt-im .nt-im-ceg { display: flex; flex-direction: column; gap: 5px; max-width: 520px; margin-bottom: 18px; }
body.nt-theme .nt-im .nt-im-ceg > label,
body.nt-theme .nt-im .nt-im-mezok > label { font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; margin: 0; }
body.nt-theme .nt-im .nt-im-ceg .help-block { margin: 2px 0 0; font-size: 12px; }
body.nt-theme .nt-im .nt-im-mezok { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px 18px; }
body.nt-theme .nt-im .nt-im-mezok > label { display: flex; flex-direction: column; gap: 5px; position: relative; }
body.nt-theme .nt-im .nt-im-mezok small { font-size: 11.5px; font-weight: 400; color: var(--nt-muted); line-height: 1.35; }
body.nt-theme .nt-im .nt-im-mezok .form-control { height: 38px; font-size: 14px; color: var(--nt-text); font-weight: 500; }
body.nt-theme .nt-im .nt-im-osszeg { display: flex; align-items: center; gap: 6px; }
body.nt-theme .nt-im .nt-im-osszeg input { text-align: right; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-im .nt-im-osszeg span { color: var(--nt-muted); font-size: 13px; font-weight: 500; }
body.nt-theme .nt-im .nt-im-hiba { margin-top: 14px; padding: 9px 12px; border-radius: 10px; background: #fef2f2; color: #b91c1c; font-size: 13px; }
body.nt-theme .nt-im .nt-im-szamol { margin-top: 18px; height: 40px; padding: 0 20px; display: inline-flex; align-items: center; gap: 8px; border-radius: 10px; font-size: 14px; }
body.nt-theme .nt-im .nt-im-cim { font-size: 15px; font-weight: 700; color: var(--nt-text); margin-bottom: 14px; }
body.nt-theme .nt-im .nt-im-sav { display: flex; height: 10px; border-radius: 999px; overflow: hidden; background: #eef0f6; margin-bottom: 16px; }
body.nt-theme .nt-im .nt-im-sav1 { background: var(--nt-blue-500); transition: width .3s ease; }
body.nt-theme .nt-im .nt-im-sav2 { background: #f59e0b; transition: width .3s ease; }
body.nt-theme .nt-im .nt-im-pont { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; vertical-align: 1px; }
body.nt-theme .nt-im .nt-im-resz1 .nt-im-pont { background: var(--nt-blue-500); }
body.nt-theme .nt-im .nt-im-resz2 .nt-im-pont { background: #f59e0b; }
body.nt-theme .nt-im .nt-im-tabla td { font-variant-numeric: tabular-nums; }
body.nt-theme .nt-im .nt-im-tabla tbody td.osszeg1,
body.nt-theme .nt-im .nt-im-tabla tbody td.osszeg2 { font-weight: 700; color: var(--nt-text); }
body.nt-theme .nt-im .nt-im-tabla tfoot td { padding: 8px 12px; border-top: 2px solid var(--nt-border); color: var(--nt-text-2); font-weight: 600; }
body.nt-theme .nt-im .nt-im-gombok { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
body.nt-theme .nt-im .nt-im-gombok .btn { height: 38px; padding: 0 16px; display: inline-flex; align-items: center; gap: 7px; border-radius: 10px; font-size: 13.5px; }
body.nt-theme .nt-im .nt-im-megj { font-size: 12px; color: var(--nt-muted); margin-left: 6px; }

/* =====================================================================
   Oldal-bevezető (core/oldal_leirasok.php) – az oldal címe alatt
   ===================================================================== */
body.nt-theme .nt-oldal-leiras { display: flex; gap: 10px; align-items: flex-start; max-width: 860px; margin: 2px 0 16px; padding: 10px 14px; border-radius: 12px; background: #f3f6fd; border: 1px solid #e3eafb; color: var(--nt-text-2); font-size: 13px; line-height: 1.55; }
body.nt-theme .nt-oldal-leiras[hidden] { display: none; }
body.nt-theme .nt-oldal-leiras > i { color: var(--nt-blue-600); font-size: 15px; margin-top: 2px; }
body.nt-theme .card-header .nt-oldal-leiras { margin: 10px 0 0; }

/* =====================================================================
   Egyszerű űrlapok: rács, címke a mező fölött (a JS jelöli: form.nt-urlap)
   ===================================================================== */
/* a keskeny, középre zárt űrlap-kártyák (col-md-6 / offset-3) a rácsos űrlapnál szélesebbek */
@media (min-width: 992px) {
    body.nt-theme .main-panel .col-md-6.col-md-offset-3:has(form.nt-urlap) { width: 66.6667%; margin-left: 16.6667%; }
}
body.nt-theme form.nt-urlap { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px 20px; }
body.nt-theme form.nt-urlap > * { grid-column: 1 / -1; margin: 0; }
body.nt-theme form.nt-urlap > fieldset { grid-column: auto; min-width: 0; }
body.nt-theme form.nt-urlap > fieldset:has(textarea),
body.nt-theme form.nt-urlap > fieldset:has(select[multiple]),
body.nt-theme form.nt-urlap > fieldset:has(.form-static-text),
body.nt-theme form.nt-urlap > fieldset:has(.nt-zarolt) { grid-column: 1 / -1; }
body.nt-theme form.nt-urlap > fieldset:has(.nt-zarolt) .form-group > div[class*="col-sm-"],
body.nt-theme form.nt-urlap > fieldset:has(.form-static-text) .form-group > div[class*="col-sm-"] { max-width: 520px; }
body.nt-theme form.nt-urlap .form-group { margin: 0; }
body.nt-theme form.nt-urlap .form-group > label.control-label {
    float: none; width: auto; display: block;
    text-align: left; padding: 0 0 5px;
    font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; letter-spacing: 0;
}
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] {
    float: none; width: auto; padding: 0; margin: 0; position: relative;
    display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px;
    color: var(--nt-muted); font-size: 13px;
}
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .form-control { flex: 1 1 120px; min-width: 0; color: var(--nt-text); }
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .help-block,
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .chosen-container,
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .checkbox,
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .radio,
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > textarea,
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > p { flex-basis: 100%; margin: 0; }
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .help-block { font-size: 11.5px; }
body.nt-theme form.nt-urlap .form-static-text { color: var(--nt-text); font-size: 14px; padding: 8px 0 0; }
body.nt-theme form.nt-urlap > hr { display: none; }
body.nt-theme form.nt-urlap > h4,
body.nt-theme form.nt-urlap > h5 { margin-top: 6px; padding-top: 16px; border-top: 1px solid var(--nt-border); font-size: 14px; font-weight: 700; color: var(--nt-text); text-transform: none; }
body.nt-theme form.nt-urlap > p { color: var(--nt-muted); font-size: 13px; margin-top: -6px; }
body.nt-theme form.nt-urlap > div:not(.btn-text-align):empty,
body.nt-theme form.nt-urlap > br { display: none; }
body.nt-theme form.nt-urlap > .btn-text-align { text-align: left; margin-top: 4px !important; padding-top: 16px; border-top: 1px solid var(--nt-border); }
body.nt-theme form.nt-urlap > .btn-text-align .btn { height: 40px; padding: 0 22px; border-radius: 10px; font-size: 14px; width: auto; }
/* magyarázó szöveg az űrlapban (jogszabályi tájékoztató, útmutatás) */
body.nt-theme form.nt-urlap > .nt-urlap-szoveg { display: block; grid-column: 1 / -1; padding: 10px 14px; border-left: 3px solid var(--nt-border); background: var(--nt-bg); border-radius: 0 8px 8px 0; font-size: 13px; line-height: 1.5; color: var(--nt-text-2); white-space: normal; }
body.nt-theme form.nt-urlap > .nt-urlap-szoveg .form-group,
body.nt-theme form.nt-urlap > .nt-urlap-szoveg div[class*="col-sm-"] { margin: 0; padding: 0; float: none; width: auto; }
/* feltételesen megjelenő mezőcsoport (a modul JS-e kapcsolja a láthatóságát): teljes szélesség, benne egymás alatt */
body.nt-theme form.nt-urlap .nt-urlap-csoport { grid-column: 1 / -1; }
body.nt-theme form.nt-urlap .nt-urlap-csoport > fieldset:not(.nt-kerdes),
body.nt-theme form.nt-urlap .nt-urlap-csoport > .nt-urlap-szoveg { display: block; margin: 0 0 12px; max-width: 520px; }
body.nt-theme form.nt-urlap .nt-urlap-csoport > .nt-urlap-szoveg { max-width: none; padding: 10px 14px; border-left: 3px solid var(--nt-border); background: var(--nt-bg); border-radius: 0 8px 8px 0; font-size: 13px; line-height: 1.5; color: var(--nt-text-2); }
body.nt-theme form.nt-urlap .nt-urlap-csoport > fieldset.nt-kerdes { margin-top: 0; }
body.nt-theme form.nt-urlap .nt-urlap-csoport { font-size: 13.5px; color: var(--nt-text-2); }
body.nt-theme form.nt-urlap .nt-urlap-csoport > p { margin: 10px 0 6px; font-size: 13.5px; line-height: 1.5; color: var(--nt-text-2); }
body.nt-theme form.nt-urlap .nt-urlap-csoport > h4,
body.nt-theme form.nt-urlap .nt-urlap-csoport > h5 { margin: 16px 0 8px; padding-top: 14px; border-top: 1px solid var(--nt-border); font-size: 14px; font-weight: 700; color: var(--nt-text); text-transform: none; }
body.nt-theme form.nt-urlap .nt-urlap-csoport > .nt-urlap-csoport { margin: 8px 0 0 14px; padding-left: 14px; border-left: 2px solid var(--nt-border); }
/* kérdés-sor (Pmt. kérdőívek): a kérdés balra, az igen/nem választó jobbra, sorok között vékony vonal */
body.nt-theme form.nt-urlap fieldset.nt-kerdes { grid-column: 1 / -1; margin-top: -14px; padding: 9px 0; border-top: 1px solid var(--nt-border); }
body.nt-theme form.nt-urlap fieldset.nt-kerdes-elso { margin-top: 0; }
body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group { display: flex; align-items: center; gap: 16px; }
body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group > label.control-label { flex: 1 1 auto; padding: 0; font-size: 13.5px; font-weight: 400; line-height: 1.45; color: var(--nt-text); }
body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group > label.control-label b { font-weight: 700; }
body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group > div[class*="col-sm-"] { flex: 0 0 150px; }
@media (max-width: 600px) {
    body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group { flex-direction: column; align-items: stretch; gap: 6px; }
    body.nt-theme form.nt-urlap fieldset.nt-kerdes .form-group > div[class*="col-sm-"] { flex-basis: auto; }
}

/* =====================================================================
   Kalkulátor-oldalak (Egyéb nyilvántartások: SZJA előleg …) – közös elemek: .nt-sz
   ===================================================================== */
body.nt-theme .nt-sz-fej { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; }
body.nt-theme .nt-sz-fej .title small { font-size: 14px; font-weight: 500; color: var(--nt-muted); }
body.nt-theme .nt-sz-fej > .btn { margin-left: auto; height: 38px; padding: 0 16px; display: inline-flex; align-items: center; gap: 7px; border-radius: 10px; font-size: 13.5px; }
body.nt-theme .nt-sz .nt-sz-fej + .nt-oldal-leiras { margin-top: 0; }
body.nt-theme .nt-sz .card { margin-bottom: 18px; }
body.nt-theme .nt-sz .nt-sz-cim { font-size: 15px; font-weight: 700; color: var(--nt-text); margin-bottom: 14px; }
body.nt-theme .nt-sz .nt-sz-cim small { display: block; margin-top: 3px; font-size: 12px; font-weight: 400; color: var(--nt-muted); }
body.nt-theme .nt-sz .nt-sz-alap { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px 18px; }
body.nt-theme .nt-sz .nt-sz-alap > label { display: flex; flex-direction: column; gap: 5px; margin: 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; }
body.nt-theme .nt-sz .nt-sz-alap .form-control { height: 38px; color: var(--nt-text); font-size: 14px; }
body.nt-theme .nt-sz .nt-sz-statikus { font-size: 14px; font-weight: 700; color: var(--nt-text); padding-top: 9px; }
body.nt-theme .nt-sz .nt-sz-osszeg { display: flex; align-items: center; gap: 6px; }
body.nt-theme .nt-sz .nt-sz-osszeg input { text-align: right; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-sz .nt-sz-osszeg > span { color: var(--nt-muted); font-size: 12.5px; font-weight: 500; }
body.nt-theme .nt-sz .nt-sz-tabla { margin: 0; }
body.nt-theme .nt-sz .nt-sz-tabla > tbody > tr > td { padding: 4px 10px !important; }
body.nt-theme .nt-sz .nt-sz-tabla td small { color: var(--nt-muted); font-size: 11.5px; }
body.nt-theme .nt-sz .nt-sz-tabla .form-control { height: 34px; font-size: 13.5px; }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-szakasz > td { padding: 16px 10px 6px !important; background: #fff !important; border-top: 0 !important; font-size: 13px; font-weight: 700; color: var(--nt-text); }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-szakasz > td > span { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; margin-right: 6px; border-radius: 50%; background: var(--nt-blue-50); color: var(--nt-blue-600); font-size: 12px; }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-szamolt > td { background: #f6f8fc; }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-szamolt input.form-control { background: #eef2f9; font-weight: 600; color: var(--nt-text); }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-vegeredmeny > td { background: var(--nt-blue-50); }
body.nt-theme .nt-sz .nt-sz-tabla tr.nt-sz-vegeredmeny input.form-control { background: #fff; border-color: #c7d8fb; font-size: 15px; font-weight: 700; color: var(--nt-blue-600); }
body.nt-theme .nt-sz .nt-sz-mentes { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-sz .nt-sz-mentes .btn { height: 40px; padding: 0 22px; display: inline-flex; align-items: center; gap: 8px; border-radius: 10px; font-size: 14px; }
body.nt-theme .nt-sz .nt-sz-alap > label.nt-sz-szeles { grid-column: span 2; }
body.nt-theme .nt-sz .nt-sz-alap > label small { font-size: 11.5px; font-weight: 400; color: var(--nt-muted); line-height: 1.35; }
body.nt-theme .nt-sz .nt-sz-reszletek { margin-top: 14px; }
body.nt-theme .nt-sz .nt-sz-reszletek > summary { cursor: pointer; font-size: 12.5px; font-weight: 600; color: var(--nt-blue-600); margin-bottom: 10px; }
body.nt-theme .nt-sz .nt-sz-reszletek > summary small { font-weight: 400; color: var(--nt-muted); }
body.nt-theme .nt-sz .nt-sz-alcim { margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-sz .nt-sz-megj { font-size: 12px; color: var(--nt-muted); margin: 8px 0 0; }
body.nt-theme .nt-sz .nt-sz-uj { height: 34px; padding: 0 14px; border-radius: 9px; font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }
body.nt-theme .nt-sz .nt-tel-tabla input[readonly] { background: #f6f8fc; text-align: right; font-variant-numeric: tabular-nums; color: var(--nt-text-2); }
body.nt-theme .nt-sz .nt-tel-tabla input[readonly][id$="_nev"] { text-align: left; }
body.nt-theme .nt-sz .nt-tel-tabla tfoot td { font-size: 13px; color: var(--nt-text); vertical-align: top; padding-top: 10px !important; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-sz .nt-tel-tabla tfoot td small { color: var(--nt-muted); font-weight: 400; }
@media (max-width: 767px) { body.nt-theme .nt-sz .nt-sz-alap > label.nt-sz-szeles { grid-column: auto; } }

/* =====================================================================
   Szűrősor listák fölött (.nt-szurok) + Adók nyilvántartása (.nt-any)
   ===================================================================== */
body.nt-theme .nt-szurok { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px 14px; }
body.nt-theme .nt-szurok > label { display: flex; flex-direction: column; gap: 4px; margin: 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; letter-spacing: 0; }
body.nt-theme .nt-szurok .form-control { height: 36px; font-size: 13.5px; color: var(--nt-text); min-width: 120px; }
body.nt-theme .nt-any .nt-any-toolbar { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 12px 20px; margin-bottom: 14px; }
body.nt-theme .nt-any .nt-any-gombok { display: flex; flex-wrap: wrap; gap: 8px; }
body.nt-theme .nt-any .nt-any-gombok .btn { height: 36px; padding: 0 14px; display: inline-flex; align-items: center; gap: 6px; border-radius: 10px; font-size: 13.5px; margin: 0; }
body.nt-theme .nt-any #adonem { min-width: 280px; }
body.nt-theme .nt-any .table > thead > tr:first-child > th { font-size: 11px; color: var(--nt-text-2); border-bottom: 0 !important; padding-bottom: 2px !important; }
body.nt-theme .nt-any .table td { font-variant-numeric: tabular-nums; white-space: nowrap; }
body.nt-theme .nt-any .tablainput { width: 110px; height: 30px; padding: 2px 8px; border: 1px solid var(--nt-border-strong); border-radius: 7px; text-align: right; font-size: 13.5px; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-any .table select { height: 30px; padding: 0 6px; border: 1px solid var(--nt-border-strong); border-radius: 7px; font-size: 13px; background: #fff; }
body.nt-theme .nt-k { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 5px; background: #fff3d6; color: #b45309; font-size: 11px; font-weight: 700; vertical-align: 1px; cursor: help; }
body.nt-theme .nt-jelmagyarazat { margin: 12px 0 0; font-size: 12.5px; color: var(--nt-muted); line-height: 1.5; }
body.nt-theme .nt-jelmagyarazat b { color: var(--nt-text-2); }

/* rácsos űrlap: a mezők kitöltik a cellát (a régi .datepicker / .osszeg szélességkorlát és a
   select sablon felső margója itt nem kell), egységes magasság */
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] { padding-top: 0 !important; }
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .form-control { max-width: none; height: 38px; }
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > textarea.form-control { height: auto; }
body.nt-theme form.nt-urlap .form-group > div[class*="col-sm-"] > .checkbox { padding-top: 8px; }
body.nt-theme form.nt-urlap input.nt-szam { text-align: right; font-variant-numeric: tabular-nums; }

/* üres táblázat: csak egy ikon középen, rámutatva „Nincs találat" (a title-t az aril.js adja) */
body.nt-theme .table > tbody > tr > td.dataTables_empty {
    padding: 16px 12px !important; text-align: center !important; background: #fff !important;
    font-size: 0 !important; line-height: 0; color: transparent;
}
/* saját rajz: nagyító piros lencsével és fehér X-szel (beágyazott SVG) */
body.nt-theme .table > tbody > tr > td.dataTables_empty::before {
    content: ""; display: inline-block; width: 30px; height: 30px; cursor: help;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cline x1='41' y1='41' x2='57' y2='57' stroke='%231f2937' stroke-width='7' stroke-linecap='round'/%3E%3Ccircle cx='27' cy='27' r='20' fill='%23dc2626' stroke='%231f2937' stroke-width='5'/%3E%3Cpath d='M20 20l14 14M34 20L20 34' stroke='%23fff' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.nt-theme .dataTables_wrapper .dataTables_info:empty { display: none; }

/* =====================================================================
   Könyvelői modul → Feladatok (.nt-fel)
   ===================================================================== */
body.nt-theme .nt-fel .nt-fel-fej .btn { margin-left: auto; height: 38px; padding: 0 16px; display: inline-flex; align-items: center; gap: 7px; border-radius: 10px; font-size: 13.5px; }
body.nt-theme .nt-fel .nt-fel-szuro { margin-bottom: 16px; }
body.nt-theme .nt-fel .nt-fel-szuro .card-content { padding-top: 14px; padding-bottom: 14px; }
body.nt-theme .nt-fel .nt-szurok .form-control { min-width: 110px; }
body.nt-theme .nt-fel .nt-fel-nyomtatas { margin-top: 12px; }
body.nt-theme .nt-fel .nt-fel-nyomtatas > summary { cursor: pointer; font-size: 12.5px; font-weight: 600; color: var(--nt-blue-600); margin-bottom: 8px; }
body.nt-theme .nt-fel .nt-fel-nyomtatas .btn { height: 36px; padding: 0 14px; display: inline-flex; align-items: center; gap: 6px; border-radius: 10px; font-size: 13px; }
body.nt-theme .nt-fel .nt-fel-lab { display: flex; align-items: center; gap: 12px; margin-top: 12px; font-size: 12.5px; color: var(--nt-muted); }
body.nt-theme .nt-sz-uj { height: 34px; padding: 0 14px; border-radius: 9px; font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }

/* Feladatok: szűrősáv (állapot-fülek, időszak, enyém, keresés) */
body.nt-theme .nt-fel .nt-fel-szuro { overflow: hidden; }
body.nt-theme .nt-fel .nt-fel-fulek { display: flex; flex-wrap: wrap; gap: 2px; padding: 8px 12px 0; border-bottom: 1px solid var(--nt-border); background: #fafbfd; }
body.nt-theme .nt-fel .nt-fel-ful { border: 0; background: transparent; padding: 10px 14px 11px; font-size: 13.5px; font-weight: 600; color: var(--nt-text-2); border-bottom: 3px solid transparent; margin-bottom: -1px; display: inline-flex; align-items: center; gap: 7px; cursor: pointer; }
body.nt-theme .nt-fel .nt-fel-ful:hover { color: var(--nt-text); }
body.nt-theme .nt-fel .nt-fel-ful.aktiv { color: var(--nt-blue-600); border-bottom-color: var(--nt-blue-500); }
body.nt-theme .nt-fel .nt-fel-db { min-width: 22px; padding: 1px 7px; border-radius: 10px; background: #eceff5; color: var(--nt-text-2); font-size: 11.5px; font-weight: 700; text-align: center; }
body.nt-theme .nt-fel .nt-fel-db:empty { display: none; }
body.nt-theme .nt-fel .nt-fel-ful.aktiv .nt-fel-db { background: var(--nt-blue-50); color: var(--nt-blue-600); }
body.nt-theme .nt-fel .nt-fel-ful-piros .nt-fel-db:not(:empty) { background: var(--nt-red-50); color: var(--nt-red-600); }
body.nt-theme .nt-fel .nt-fel-sor { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
body.nt-theme .nt-fel .nt-fel-idoszak { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
body.nt-theme .nt-fel .nt-fel-cimke { font-size: 12px; font-weight: 600; color: var(--nt-muted); margin-right: 4px; }
body.nt-theme .nt-fel .nt-fel-chip { height: 32px; padding: 0 12px; border: 1px solid var(--nt-border-strong); border-radius: 16px; background: #fff; font-size: 13px; color: var(--nt-text-2); cursor: pointer; }
body.nt-theme .nt-fel .nt-fel-chip:hover { border-color: var(--nt-blue-400); color: var(--nt-text); }
body.nt-theme .nt-fel .nt-fel-chip.aktiv { background: var(--nt-blue-600); border-color: var(--nt-blue-600); color: #fff; font-weight: 600; }
body.nt-theme .nt-fel .nt-fel-egyeni { display: inline-flex; align-items: center; gap: 6px; }
body.nt-theme .nt-fel .nt-fel-egyeni[hidden] { display: none; }
body.nt-theme .nt-fel .nt-fel-egyeni .form-control { height: 32px; width: 150px; font-size: 13px; }
body.nt-theme .nt-fel .nt-fel-enyem { display: inline-flex; align-items: center; gap: 7px; margin: 0; font-size: 13px; font-weight: 600; color: var(--nt-text-2); text-transform: none; cursor: pointer; }
body.nt-theme .nt-fel .nt-fel-kereso { position: relative; flex: 1 1 260px; margin-left: auto; }
body.nt-theme .nt-fel .nt-fel-kereso > i { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--nt-muted); }
body.nt-theme .nt-fel .nt-fel-kereso .form-control { height: 36px; padding-left: 34px; font-size: 13.5px; }
body.nt-theme .nt-fel .nt-fel-kereso-cim { flex: 1 1 260px; }
body.nt-theme .nt-fel .nt-fel-kereso-cim small { font-weight: 400; }

/* Feladatok: lista (hónap-csoportok, lépéssor) */
body.nt-theme .nt-fel .nt-fel-gorgeto { overflow-x: auto; }
body.nt-theme .nt-fel .nt-fel-tabla { margin: 0; min-width: 900px; }
body.nt-theme .nt-fel .nt-fel-tabla th { font-size: 12px; font-weight: 600; color: var(--nt-muted); text-transform: none; white-space: nowrap; }
body.nt-theme .nt-fel .nt-fel-tabla th small { font-weight: 400; margin-left: 4px; }
body.nt-theme .nt-fel .nt-fel-tabla td { vertical-align: middle !important; font-size: 13.5px; }
body.nt-theme .nt-fel .nt-fel-rend { color: inherit; display: inline-flex; align-items: center; gap: 5px; }
body.nt-theme .nt-fel .nt-fel-rend i { color: #b7bfd0; }
body.nt-theme .nt-fel .nt-fel-rend.fel i, body.nt-theme .nt-fel .nt-fel-rend.le i { color: var(--nt-blue-600); }
body.nt-theme .nt-fel tr.nt-fel-honap > td { padding: 16px 10px 6px !important; background: #fff !important; border-top: 0 !important; font-size: 13px; font-weight: 700; color: var(--nt-text); text-transform: capitalize; }
body.nt-theme .nt-fel tr.nt-fel-honap > td span { margin-left: 6px; font-weight: 500; color: var(--nt-muted); text-transform: none; }
body.nt-theme .nt-fel .nt-fel-ceg { max-width: 240px; }
body.nt-theme .nt-fel .nt-fel-nev small { display: block; margin-top: 2px; font-size: 12px; color: var(--nt-text-2); }
body.nt-theme .nt-fel .nt-fel-nev small.nt-fel-kerdes { color: #9a6200; }
body.nt-theme .nt-fel .nt-fel-konyvelo { font-size: 12.5px; color: var(--nt-text-2); white-space: nowrap; }
body.nt-theme .nt-fel .nt-fel-hatarido { white-space: nowrap; }
body.nt-theme .nt-fel .nt-fel-hatarido small { display: block; font-size: 11.5px; }
body.nt-theme .nt-fel tr.nt-fel-lejart > td:first-child { box-shadow: inset 3px 0 0 var(--nt-red-600); }
body.nt-theme .nt-fel tr.nt-fel-lejart .nt-fel-hatarido { color: var(--nt-red-600); font-weight: 600; }
body.nt-theme .nt-fel tr.nt-fel-vegzett > td:not(.nt-fel-lepesek) { opacity: .5; }
body.nt-theme .nt-fel .nt-fel-lepesek { white-space: nowrap; }
body.nt-theme .nt-fel .nt-lepes { position: relative; height: 28px; padding: 0 10px 0 16px; margin-right: 2px; border: 1px solid var(--nt-border-strong); background: #fff; color: var(--nt-muted); font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; gap: 5px; cursor: pointer; clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%, 8px 50%); }
body.nt-theme .nt-fel .nt-lepes:first-of-type { padding-left: 10px; border-radius: 6px 0 0 6px; clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%); }
body.nt-theme .nt-fel .nt-lepes i { font-size: 11px; opacity: .25; }
body.nt-theme .nt-fel .nt-lepes:hover { background: var(--nt-blue-50); color: var(--nt-blue-600); }
body.nt-theme .nt-fel .nt-lepes.kesz { background: var(--nt-green-50); border-color: #bfe8cf; color: var(--nt-green-600); }
body.nt-theme .nt-fel .nt-lepes.kesz i { opacity: 1; }
body.nt-theme .nt-fel .nt-lepes small { font-weight: 500; opacity: .8; }
body.nt-theme .nt-fel .nt-fel-jelzo { text-align: center; width: 60px; }
body.nt-theme .nt-fel .nt-fel-muvelet { white-space: nowrap; width: 70px; }
body.nt-theme .nt-fel .nt-fel-lab .nt-fel-tobb { margin-left: auto; }
body.nt-theme .nt-fel .nt-fel-ures { padding: 28px !important; text-align: center; color: var(--nt-muted); }
body.nt-theme .nt-fel .nt-fel-megj { margin: 0 0 10px; color: var(--nt-muted); font-size: 13px; }

/* Feladatok → Ismétlődő feladatok tervezése (.nt-ft) */
body.nt-theme .nt-fel .nt-fel-fej .btn-fill { margin-left: 0; }
body.nt-theme .nt-fel .nt-fel-fej .btn:first-of-type { margin-left: auto; }
body.nt-theme .nt-ft .nt-ft-sugo { flex: 1 1 420px; font-size: 12.5px; line-height: 1.5; color: var(--nt-text-2); }
body.nt-theme .nt-ft .nt-ft-sav { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; gap: 14px; margin: 0 0 14px; padding: 10px 14px; background: var(--nt-surface); border: 1px solid var(--nt-border); border-radius: var(--nt-radius); box-shadow: var(--nt-shadow-sm); font-size: 13px; }
body.nt-theme .nt-ft .nt-ft-sav .btn { margin-left: auto; height: 38px; padding: 0 18px; display: inline-flex; align-items: center; gap: 7px; border-radius: 10px; font-size: 13.5px; }
body.nt-theme .nt-ft .nt-ft-mind { font-size: 12.5px; font-weight: 600; color: var(--nt-blue-600); }
body.nt-theme .nt-ft .nt-ft-ceg { margin-bottom: 14px; }
body.nt-theme .nt-ft .nt-ft-ceg-fej { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; padding: 12px 16px 4px; }
body.nt-theme .nt-ft .nt-ft-ceg-fej label { margin: 0; font-size: 14px; color: var(--nt-text); text-transform: none; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
body.nt-theme .nt-ft .nt-ft-ceg-fej small { color: var(--nt-muted); font-size: 12px; }
body.nt-theme .nt-ft .nt-ft-tabla { margin: 0; }
body.nt-theme .nt-ft .nt-ft-tabla th { font-size: 11.5px; font-weight: 600; color: var(--nt-muted); text-transform: none; padding: 6px 8px !important; }
body.nt-theme .nt-ft .nt-ft-tabla td { vertical-align: top !important; padding: 5px 8px !important; }
body.nt-theme .nt-ft .nt-ft-tabla .form-control { height: 34px; font-size: 13.5px; }
body.nt-theme .nt-ft .nt-ft-tabla td:nth-child(2) { width: 230px; }
body.nt-theme .nt-ft .nt-ft-tabla td:nth-child(3) { width: 150px; }
body.nt-theme .nt-ft .nt-ft-tabla td:nth-child(4) { width: 160px; }
body.nt-theme .nt-ft .nt-ft-tabla td:nth-child(5) { width: 76px; }
body.nt-theme .nt-ft .nt-ft-tabla .nt-ft-db { text-align: center; padding: 6px 4px; -moz-appearance: textfield; }
body.nt-theme .nt-ft .nt-ft-tabla .nt-ft-db::-webkit-inner-spin-button, body.nt-theme .nt-ft .nt-ft-tabla .nt-ft-db::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
body.nt-theme .nt-ft .nt-ft-tabla .nt-ft-elso { padding-left: 8px; padding-right: 6px; }
body.nt-theme .nt-ft .nt-ft-tabla td small { display: block; margin-top: 3px; font-size: 11.5px; color: var(--nt-muted); }
body.nt-theme .nt-ft .nt-ft-tabla td small.nt-ft-figy { color: #9a6200; }
body.nt-theme .nt-ft .nt-ft-jelcella { width: 34px; padding-top: 12px !important; }
body.nt-theme .nt-ft .nt-ft-elonezet { font-size: 13px; color: var(--nt-text); padding-top: 11px !important; }
body.nt-theme .nt-ft .nt-ft-elonezet small { line-height: 1.45; }
body.nt-theme .nt-ft .nt-ft-meglevo { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 2px 16px 8px; font-size: 12px; }
body.nt-theme .nt-ft .nt-ft-meglevo-cim { color: var(--nt-muted); margin-right: 2px; }
body.nt-theme .nt-ft .nt-ft-meglevo-cim .fa-check-circle { color: var(--nt-green-600); }
body.nt-theme .nt-ft .nt-ft-mchip { padding: 2px 9px; border-radius: 10px; background: var(--nt-green-50); color: #0c7a3c; cursor: help; }
body.nt-theme .nt-ft .nt-ft-mchip b { font-weight: 600; opacity: .75; }
body.nt-theme .nt-ft .nt-ft-mchip.mas { background: var(--nt-amber-50); color: #9a6200; }
body.nt-theme .nt-ft .nt-ft-datumok { display: flex; flex-wrap: wrap; gap: 3px; }
body.nt-theme .nt-ft .nt-ft-d { padding: 1px 6px; border-radius: 6px; background: var(--nt-blue-50); color: var(--nt-blue-600); font-size: 12px; font-weight: 600; white-space: nowrap; }
body.nt-theme .nt-ft .nt-ft-d.van { background: var(--nt-green-50); color: #0c7a3c; font-weight: 500; }
body.nt-theme .nt-ft .nt-ft-d.van i { font-size: 10px; margin-right: 3px; }
body.nt-theme .nt-ft .nt-ft-mindvan { color: #0c7a3c; }
body.nt-theme .nt-ft .nt-ft-megvan { display: inline-block; margin-top: 4px; padding: 1px 8px; border-radius: 10px; background: var(--nt-amber-50); color: #9a6200; font-size: 11.5px; font-weight: 600; }
body.nt-theme .nt-ft .nt-ft-hiba { color: var(--nt-red-600); font-size: 12.5px; }
body.nt-theme .nt-ft .nt-ft-torol { width: 40px; }
body.nt-theme .nt-ft tr.nt-ft-ki td:not(.nt-ft-jelcella) { opacity: .45; }
body.nt-theme .nt-ft .nt-ft-hozzaad { padding: 8px 16px 14px; }
body.nt-theme .nt-ft .nt-ft-hozzaad select { max-width: 380px; height: 34px; font-size: 13px; color: var(--nt-blue-600); font-weight: 600; }
body.nt-theme .nt-ft .nt-ft-nincs > summary { cursor: pointer; margin: 6px 0 12px; font-size: 13px; font-weight: 600; color: var(--nt-blue-600); }
body.nt-theme .nt-ft .nt-ft-ures { color: var(--nt-muted); }
body.nt-theme .nt-ft .nt-ft-eredmeny { display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; margin-bottom: 14px; }
body.nt-theme .nt-ft .nt-ft-eredmeny > i { font-size: 22px; color: var(--nt-green-600); }
body.nt-theme .nt-ft .nt-ft-osszesito { max-width: 720px; }
body.nt-theme .nt-ft .nt-ft-gombok { display: flex; gap: 10px; margin-top: 12px; }
@media (max-width: 900px) {
    body.nt-theme .nt-ft .nt-ft-tabla thead { display: none; }
    body.nt-theme .nt-ft .nt-ft-tabla tr { display: grid; grid-template-columns: 34px 1fr 1fr; gap: 4px 8px; padding: 8px 0; border-top: 1px solid var(--nt-border); }
    body.nt-theme .nt-ft .nt-ft-tabla td { width: auto !important; border: 0 !important; }
    body.nt-theme .nt-ft .nt-ft-tabla td.nt-ft-jelcella { grid-row: span 3; }
    body.nt-theme .nt-ft .nt-ft-tabla td:nth-child(2), body.nt-theme .nt-ft .nt-ft-tabla td.nt-ft-elonezet { grid-column: 2 / 4; }
}

/* Új feladat űrlap: ismétlődés */
body.nt-theme .nt-fel-ism-elonezet { margin-top: 6px; font-size: 12.5px; color: var(--nt-text-2); }

/* fejléc cégválasztója: állandó, stílusos keret (nem csak fókuszkor) */
body.nt-theme .nt-cegvalaszto .chosen-container-single .chosen-single {
    margin-left: 0; padding: 0 30px 0 12px;
    border: 2px solid #dbe5fa; background: #f5f7fc;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
}
body.nt-theme .nt-cegvalaszto .chosen-container-single .chosen-single:hover { background: #eef3fd; border-color: #c7d8fb; }
body.nt-theme .nt-cegvalaszto .chosen-container-active .chosen-single { background: #fff; border-color: var(--nt-blue-500); }
body.nt-theme .nt-cegvalaszto select.nt-cegsav-select { border: 2px solid #dbe5fa; background-color: #f5f7fc; padding-left: 12px; }

/* Feladatok: sűrűbb cellák, hogy a 12 oszlop kiférjen */
body.nt-theme .nt-fel #feladattable > tbody > tr > td,
body.nt-theme .nt-fel #feladattable > thead > tr > th { padding-left: 7px !important; padding-right: 7px !important; }

/* lapozó: « ‹ 1 2 › » – egyforma kis négyzetek */
body.nt-theme .dataTables_wrapper .pagination > li > a,
body.nt-theme .dataTables_wrapper .pagination > li > span { min-width: 32px; height: 32px; padding: 0 8px; display: inline-flex; align-items: center; justify-content: center; line-height: 1; font-size: 13px; }
body.nt-theme .dataTables_wrapper .pagination > li.first > a,
body.nt-theme .dataTables_wrapper .pagination > li.previous > a,
body.nt-theme .dataTables_wrapper .pagination > li.next > a,
body.nt-theme .dataTables_wrapper .pagination > li.last > a { font-size: 17px; font-weight: 600; padding: 0 0 2px; }

/* Hiányok */
body.nt-theme .nt-hiany .nt-hiany-szuro { margin-bottom: 12px; }
body.nt-theme .nt-hiany .nt-hiany-kereso { flex: 1 1 260px; }
body.nt-theme .nt-hiany .nt-fiz-lepes-cim small { font-size: 12.5px; font-weight: 500; color: var(--nt-muted); }
body.nt-theme .nt-hiany #hianytable .checkbox { margin: 0; }
body.nt-theme .nt-hiany #hianytable select.form-control { height: 36px; font-size: 13.5px; }

/* listák: a műveleti ikonok (szerkesztés, törlés …) egy sorban; rövid azonosítók (adószám, dátum) ne törjenek */
body.nt-theme .table > tbody > tr > td:has(> .btn-icon) { white-space: nowrap; width: 1%; }
body.nt-theme .table > tbody > tr > td:has(> .btn-icon) > .btn-icon + .btn-icon { margin-left: 4px; }
body.nt-theme #datatables td:nth-child(2):not(:has(input, select, a)) { white-space: nowrap; }

/* =====================================================================
   Letölthető dokumentumok (core/templates/letoltesek.tpl.php)
   ===================================================================== */
body.nt-theme .nt-letolt .nt-letolt-szuro { height: 38px; margin-bottom: 12px; }
body.nt-theme .nt-letolt .nt-letolt-lista { list-style: none; margin: 0; padding: 0; border: 1px solid var(--nt-border); border-radius: 12px; overflow: hidden; }
body.nt-theme .nt-letolt .nt-letolt-lista > li + li { border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-letolt .nt-letolt-lista a { display: flex; align-items: center; gap: 12px; padding: 10px 14px; color: var(--nt-text); text-decoration: none; transition: background-color .12s ease; }
body.nt-theme .nt-letolt .nt-letolt-lista a:hover { background: #f4f7fe; }
body.nt-theme .nt-letolt .nt-letolt-ikon { flex: 0 0 22px; font-size: 18px; text-align: center; color: #64748b; }
body.nt-theme .nt-letolt .fa-file-pdf-o.nt-letolt-ikon { color: #dc2626; }
body.nt-theme .nt-letolt .fa-file-word-o.nt-letolt-ikon { color: #2563eb; }
body.nt-theme .nt-letolt .fa-file-excel-o.nt-letolt-ikon { color: #16a34a; }
body.nt-theme .nt-letolt .nt-letolt-szam { flex: 0 0 auto; min-width: 46px; padding: 2px 7px; border-radius: 6px; background: #f1f4fa; color: var(--nt-muted); font-size: 11.5px; font-weight: 600; text-align: center; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-letolt .nt-letolt-nev { flex: 1 1 auto; font-size: 13.5px; font-weight: 500; }
body.nt-theme .nt-letolt .nt-letolt-muvelet { flex: 0 0 auto; font-size: 12.5px; font-weight: 600; color: var(--nt-blue-600); white-space: nowrap; opacity: .75; }
body.nt-theme .nt-letolt .nt-letolt-lista a:hover .nt-letolt-muvelet { opacity: 1; }
body.nt-theme .nt-letolt .nt-letolt-ures,
body.nt-theme .nt-letolt .nt-letolt-nincs { color: var(--nt-muted); font-size: 13px; margin: 8px 0 0; }
@media (max-width: 575px) { body.nt-theme .nt-letolt .nt-letolt-muvelet { display: none; } }

/* Cégadatok → Törzsadatok: állapotok idővonala, mentési visszajelzés */
body.nt-theme .nt-torzs-idovonal { list-style: none; margin: 0 0 12px; padding: 0 0 0 14px; border-left: 2px solid var(--nt-border); }
body.nt-theme .nt-torzs-idovonal > li { position: relative; margin: 0 0 4px; }
body.nt-theme .nt-torzs-idovonal > li::before { content: ""; position: absolute; left: -20px; top: 12px; width: 10px; height: 10px; border-radius: 50%; background: #cfd8ea; border: 2px solid #fff; }
body.nt-theme .nt-torzs-idovonal > li.aktualis::before { background: var(--nt-blue-500); }
body.nt-theme .nt-torzs-idovonal > li > a { display: flex; align-items: center; gap: 8px; padding: 6px 10px; border-radius: 9px; color: var(--nt-text-2); font-size: 13.5px; text-decoration: none; }
body.nt-theme .nt-torzs-idovonal > li > a:hover { background: #f4f7fe; }
body.nt-theme .nt-torzs-idovonal > li.nyitva > a { background: var(--nt-blue-50); color: var(--nt-blue-600); }
body.nt-theme .nt-torzs-cimke { margin-left: auto; padding: 1px 7px; border-radius: 999px; background: #e8f0ff; color: var(--nt-blue-600); font-size: 11px; font-weight: 600; }
body.nt-theme .nt-torzs-cimke.jovo { background: #fff3d6; color: #b45309; }
body.nt-theme .nt-torzs-sugo { font-size: 12px; color: var(--nt-muted); line-height: 1.5; margin: 0; }
body.nt-theme .nt-torzs-javitas { margin-top: 4px; }
body.nt-theme .nt-torzs-javitas label { font-size: 12.5px; color: var(--nt-text-2); }
body.nt-theme .nt-torzs-uzenet { display: flex; gap: 8px; align-items: flex-start; margin-bottom: 14px; padding: 10px 12px; border-radius: 10px; font-size: 13px; line-height: 1.5; }
body.nt-theme .nt-torzs-uzenet.ok { background: #ecfdf3; color: #15803d; }
body.nt-theme .nt-torzs-uzenet.info { background: #f3f6fd; color: var(--nt-text-2); }
body.nt-theme .nt-torzs-uzenet.hiba { background: #fef2f2; color: #b91c1c; }

/* =====================================================================
   Cégadatok → Hozzáférések (kapuk) – .nt-hz
   ===================================================================== */
body.nt-theme .nt-hz .nt-sz-fej .title small { font-size: 14px; }
body.nt-theme .nt-hz .nt-hz-uj { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; margin-bottom: 14px; }
body.nt-theme .nt-hz .nt-hz-uj > span { font-size: 12.5px; font-weight: 600; color: var(--nt-muted); margin-right: 2px; }
body.nt-theme .nt-hz .nt-hz-uj .btn { height: 32px; padding: 0 11px; display: inline-flex; align-items: center; gap: 6px; border-radius: 9px; font-size: 12.5px; font-weight: 600; margin: 0; }
body.nt-theme .nt-hz .nt-hz-uj .btn i { color: var(--nt-blue-600); }
body.nt-theme .nt-hz .nt-hz-portal { display: inline-flex; align-items: center; gap: 6px; padding: 3px 9px; border-radius: 999px; background: #f1f4fa; color: var(--nt-text-2); font-size: 12px; font-weight: 600; white-space: nowrap; }
body.nt-theme .nt-hz .nt-hz-portal i { color: var(--nt-blue-600); }
body.nt-theme .nt-hz .nt-hz-ugyfelkapu { background: #eaf2ff; }
body.nt-theme .nt-hz .nt-hz-cegkapu { background: #eef6f0; }
body.nt-theme .nt-hz .nt-hz-extra { font-size: 11.5px; color: var(--nt-muted); margin-top: 2px; }
body.nt-theme .nt-hz .nt-hz-megj { font-size: 12.5px; color: var(--nt-muted); max-width: 280px; }
body.nt-theme .nt-hz .nt-hz-cimikon { color: var(--nt-blue-600); margin-right: 4px; }
body.nt-theme .nt-hz .nt-hz-mezok { margin-bottom: 14px; }
body.nt-theme .nt-hz .nt-hz-mezo { display: flex; flex-direction: column; gap: 5px; margin: 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); }
body.nt-theme .nt-hz .nt-hz-mezo small { font-size: 11.5px; font-weight: 400; color: var(--nt-muted); }
body.nt-theme .nt-hz .nt-hz-mezo .nt-jelszo-torles { margin-left: 6px; }
body.nt-theme .nt-hz .nt-hz-mezo .nt-jelszo-torles label { font-weight: 400; margin: 0; cursor: pointer; }
body.nt-theme .nt-hz .nt-hz-megjegyzes > label { display: block; font-size: 12px; font-weight: 600; color: var(--nt-muted); margin-bottom: 5px; }
body.nt-theme .nt-hz .nt-hz-torles { margin-left: 8px; }

/* =====================================================================
   Modul-kezdőoldal csempékkel (core/templates/csempek.tpl.php)
   ===================================================================== */
body.nt-theme .nt-csempe-oldal .nt-sz-fej .title small { display: block; margin-top: 3px; font-size: 13px; font-weight: 500; color: var(--nt-muted); }
body.nt-theme .nt-csempe-szakasz { margin-bottom: 24px; }
body.nt-theme .nt-csempe-szakasz > h5 { margin: 0 0 4px; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--nt-muted); }
body.nt-theme .nt-csempe-szakasz-leiras { margin: 0 0 10px; font-size: 12.5px; color: var(--nt-muted); }
body.nt-theme .nt-csempek { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin-top: 8px; }
body.nt-theme .nt-csempe { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px solid var(--nt-border); color: var(--nt-text); text-decoration: none !important; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
body.nt-theme .nt-csempe:hover { border-color: #c7d8fb; box-shadow: 0 8px 20px -12px rgba(37, 99, 235, .35); transform: translateY(-1px); }
body.nt-theme .nt-csempe-ikon { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: var(--nt-blue-50); color: var(--nt-blue-600); font-size: 17px; }
body.nt-theme .nt-csempe-szoveg { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.nt-theme .nt-csempe-szoveg b { font-size: 13.5px; font-weight: 700; }
body.nt-theme .nt-csempe-szoveg small { font-size: 12px; color: var(--nt-muted); line-height: 1.4; }
body.nt-theme .nt-csempe-nyil { color: #b6c0d4; font-size: 18px; }
body.nt-theme .nt-csempe:hover .nt-csempe-nyil { color: var(--nt-blue-600); }
body.nt-theme .nt-csempe-megj { margin: 8px 0 0; font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-csempe-megj i { color: var(--nt-blue-600); margin-right: 3px; }
/* Cégadatok → Címek */
body.nt-theme .nt-cm .nt-cm-szekhely { background: #eaf2ff; }
body.nt-theme .nt-cm tr.nt-cm-lezart > td { color: var(--nt-muted); }
body.nt-theme .nt-cm tr.nt-cm-lezart .nt-hz-portal { opacity: .6; }
body.nt-theme .nt-cm .nt-cm-ido { white-space: nowrap; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-cm .nt-cm-ido .nt-torzs-cimke { margin-left: 6px; }

/* Cégadatok → Személyek és szerepkörök (.nt-sm) */
body.nt-theme .nt-sm .nt-sm-szerepek { display: flex; flex-wrap: wrap; gap: 4px; }
body.nt-theme .nt-sm .nt-sm-szerep { display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px; border-radius: 999px; font-size: 11.5px; font-weight: 600; white-space: nowrap; background: #f1f4fa; color: var(--nt-text-2); }
body.nt-theme .nt-sm .nt-sm-szerep.kv { background: #eaf2ff; color: #1d4ed8; }
body.nt-theme .nt-sm .nt-sm-szerep.kt { background: #ecfdf3; color: #15803d; }
body.nt-theme .nt-sm .nt-sm-szerep.sz { background: #f5f3ff; color: #6d28d9; }
body.nt-theme .nt-sm .nt-sm-szerep.tt { background: #fff3d6; color: #b45309; }
body.nt-theme .nt-sm .nt-sm-szerep.ksz { background: #fef2f2; color: #b91c1c; }
body.nt-theme .nt-sm .nt-sm-eler { font-size: 12.5px; color: var(--nt-text-2); }
body.nt-theme .nt-sm .nt-sm-eler i { width: 14px; color: var(--nt-muted); }
body.nt-theme .nt-sm .nt-sm-szerepkor { padding: 12px 0; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-sm .nt-sm-szerepkor:first-of-type { border-top: 0; padding-top: 0; }
body.nt-theme .nt-sm .nt-sm-szerepkor > .checkbox { margin: 0; }
body.nt-theme .nt-sm .nt-sm-szerepkor > .checkbox label { font-size: 14px; color: var(--nt-text); }
body.nt-theme .nt-sm .nt-sm-szerepkor > .checkbox label span { font-size: 12.5px; color: var(--nt-muted); font-weight: 400; }
body.nt-theme .nt-sm .nt-sm-reszlet { margin: 12px 0 2px 28px; }
body.nt-theme .nt-sm .nt-sm-pipa { margin: 22px 0 0; }

body.nt-theme .nt-sm .nt-sm-szerep.ism { background: #fff7e6; color: #b45309; text-decoration: none; }
body.nt-theme .nt-sm .nt-sm-idoszakok { font-size: 12px; color: var(--nt-muted); display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; }
body.nt-theme .nt-sm .nt-sm-idoszakok span { padding: 1px 7px; border-radius: 6px; background: #f4f6fb; color: var(--nt-text-2); }
body.nt-theme .nt-sm .nt-sm-ismetles { font-size: 13px; margin: 8px 0 6px; }
body.nt-theme .nt-sm .nt-sm-ismetles .checkbox { margin: 6px 0 0; }

/* „Új dokumentum" választó a dokumentumlisták fölött (core/templates/uj_dokumentum.tpl.php) */
body.nt-theme .nt-uj-dok .card-content { padding: 16px 18px 14px; }
body.nt-theme .nt-uj-dok-cim { margin: 0 0 10px; font-size: 14px; font-weight: 700; color: var(--nt-text); text-transform: none; }
body.nt-theme .nt-uj-dok-cim i { color: var(--nt-blue-600); margin-right: 4px; }
body.nt-theme .nt-uj-dok-szakasz + .nt-uj-dok-szakasz { margin-top: 12px; }
body.nt-theme .nt-uj-dok-szakasz > h6 { margin: 0 0 6px; font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--nt-muted); }
body.nt-theme .nt-csempek-kompakt { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px; margin-top: 0; }
body.nt-theme .nt-csempek-kompakt .nt-csempe { padding: 9px 12px; gap: 10px; border-radius: 10px; }
body.nt-theme .nt-csempek-kompakt .nt-csempe-ikon { flex-basis: 32px; width: 32px; height: 32px; border-radius: 8px; font-size: 15px; }
body.nt-theme .nt-csempek-kompakt .nt-csempe-szoveg b { font-size: 13px; }
body.nt-theme .nt-csempek-kompakt .nt-csempe-szoveg small { font-size: 11.5px; }
body.nt-theme .nt-csempek-kompakt .nt-csempe-nyil { font-size: 13px; }
body.nt-theme .nt-uj-dok-jel { font-style: normal; font-weight: 600; font-size: 11px; color: var(--nt-muted); white-space: nowrap; }
body.nt-theme .nt-uj-dok-regi { margin-top: 12px; font-size: 12.5px; }
body.nt-theme .nt-uj-dok-regi > summary { cursor: pointer; color: var(--nt-muted); font-weight: 600; }
body.nt-theme .nt-uj-dok-regi > summary:hover { color: var(--nt-text); }
body.nt-theme .nt-uj-dok-regi ul { margin: 8px 0 0; padding: 0; list-style: none; columns: 2 300px; column-gap: 24px; }
body.nt-theme .nt-uj-dok-regi li { padding: 3px 0; break-inside: avoid; }
body.nt-theme .nt-uj-dok-regi li a { color: var(--nt-text-2); }
body.nt-theme .nt-uj-dok-regi li a:hover { color: var(--nt-blue-600); }
body.nt-theme .nt-uj-dok-regi li i { font-size: 10px; color: var(--nt-muted); margin-right: 4px; }

/* Pénzmosás → Kockázati besorolás lista: címkés időszak-szűrő, besorolás-jelvény */
body.nt-theme .nt-kb-szuro { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
body.nt-theme .nt-kb-szuro .btn { margin: 0; }
body.nt-theme .nt-kb-ido { display: inline-flex; align-items: center; gap: 6px; }
body.nt-theme .nt-kb-ido label { margin: 0 2px 0 0; font-size: 12px; font-weight: 600; color: var(--nt-muted); }
body.nt-theme .nt-kb-ido .form-control { width: 120px; }
body.nt-theme .nt-kb-ido > span { color: var(--nt-muted); }
body.nt-theme .nt-kb-megj { margin: 6px 0 0; font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-kb { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 11.5px; font-weight: 600; }
body.nt-theme .nt-kb-0 { background: #ecfdf3; color: #15803d; }
body.nt-theme .nt-kb-1 { background: var(--nt-amber-50); color: #b45309; }
body.nt-theme .nt-kb-2 { background: var(--nt-red-50); color: var(--nt-red-600); }

/* rácsos űrlapban az egyedi blokk (nt-urlap-egyedi): a széles táblázat vízszintesen görgethető, az első oszlop marad */
body.nt-theme form.nt-urlap > table.nt-urlap-egyedi { display: block; overflow-x: auto; max-width: 100%; }
body.nt-theme form.nt-urlap > table.nt-urlap-egyedi th { font-size: 11px; line-height: 1.3; vertical-align: bottom; min-width: 110px; }
body.nt-theme form.nt-urlap > table.nt-urlap-egyedi tr > :first-child { position: sticky; left: 0; z-index: 1; background: #fff; min-width: 170px; box-shadow: 1px 0 0 var(--nt-border); }
body.nt-theme form.nt-urlap > table.nt-urlap-egyedi select.form-control { min-width: 80px; }

/* mindenható-modulok fejlécében: vissza az Admin oldalra */
body.nt-theme .nt-admin-vissza { display: inline-flex; align-items: center; gap: 5px; height: 34px; padding: 0 12px; margin-left: 10px; border-radius: 9px; background: var(--nt-blue-50); color: var(--nt-blue-600) !important; font-size: 13px; font-weight: 600; text-decoration: none !important; vertical-align: middle; }
body.nt-theme .nt-admin-vissza:hover { background: #dde8fd; }
body.nt-theme .nt-admin-vissza i { font-size: 16px; }

/* letöltések: fizikailag hiányzó fájl */
body.nt-theme .nt-letolt-lista li.nt-letolt-hianyzik a { cursor: help; opacity: .75; }
body.nt-theme .nt-letolt-lista li.nt-letolt-hianyzik .nt-letolt-nev { text-decoration: line-through; text-decoration-color: rgba(212, 20, 27, .45); }
body.nt-theme .nt-letolt-lista .nt-letolt-hiany { color: var(--nt-red-600); }

/* =====================================================================
   Admin → Előfizetések – .nt-ef
   ===================================================================== */
body.nt-theme .nt-ef .nt-sz-fej .title small { font-size: 13.5px; }
body.nt-theme .nt-ef-fulek { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 14px; }
body.nt-theme .nt-ef-ful { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border: 1px solid var(--nt-border); border-radius: 9px; background: #fff; color: var(--nt-text-2); font-size: 13px; font-weight: 600; cursor: pointer; }
body.nt-theme .nt-ef-ful:hover { border-color: #c7d8fb; }
body.nt-theme .nt-ef-ful.aktiv { background: var(--nt-blue-50); border-color: #c7d8fb; color: var(--nt-blue-600); }
body.nt-theme .nt-ef-ful-figyelem i { color: var(--nt-red-600); }
body.nt-theme .nt-ef-ful-hamarosan i { color: #b45309; }
body.nt-theme .nt-ef-ful-rendben i { color: var(--nt-green-600); }
body.nt-theme .nt-ef-db { min-width: 22px; padding: 0 6px; border-radius: 999px; background: #eef1f7; color: var(--nt-text-2); font-size: 11.5px; line-height: 19px; text-align: center; }
body.nt-theme .nt-ef-ful.aktiv .nt-ef-db { background: #fff; }
body.nt-theme .nt-ef-kereso { margin-left: auto; width: 240px; height: 34px; }
@media (max-width: 767px) { body.nt-theme .nt-ef-kereso { margin-left: 0; width: 100%; } }
body.nt-theme .nt-ef-tabla td { vertical-align: middle; }
body.nt-theme .nt-ef-al { font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-ef-lezart-jel { color: var(--nt-muted); font-style: italic; }
body.nt-theme .nt-ef tr.nt-ef-lezart > td:first-child b { color: var(--nt-text-2); }
body.nt-theme .nt-ef-ido { white-space: nowrap; font-variant-numeric: tabular-nums; font-size: 13px; }
body.nt-theme .nt-ef-ido .nt-torzs-cimke { margin-left: 6px; }
body.nt-theme .nt-ef-cimke { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 11.5px; font-weight: 600; white-space: nowrap; background: #f1f3f8; color: var(--nt-muted); }
body.nt-theme .nt-ef-cimke.nagy { padding: 4px 12px; font-size: 13px; }
body.nt-theme .nt-ef-cimke.zold { background: var(--nt-green-50); color: #15803d; }
body.nt-theme .nt-ef-cimke.kek { background: var(--nt-blue-50); color: var(--nt-blue-600); }
body.nt-theme .nt-ef-cimke.sarga { background: var(--nt-amber-50); color: #b45309; }
body.nt-theme .nt-ef-cimke.piros { background: var(--nt-red-50); color: var(--nt-red-600); }
body.nt-theme .nt-ef-m-fej { width: 46px; text-align: center; font-size: 11px !important; }
body.nt-theme .nt-ef-m { text-align: center; }
body.nt-theme .nt-ef-pont { display: inline-block; width: 12px; height: 12px; border-radius: 50%; border: 1.5px solid #dfe4ee; vertical-align: middle; }
body.nt-theme .nt-ef-pont.ok { background: var(--nt-green-600); border-color: var(--nt-green-600); }
body.nt-theme .nt-ef-pont.tobblet { background: var(--nt-red-600); border-color: var(--nt-red-600); }
body.nt-theme .nt-ef-pont.hiany { background: #fff; border: 2px dashed var(--nt-amber-500); }
body.nt-theme .nt-ef-pont.szurke { background: #c3cad8; border-color: #c3cad8; }
body.nt-theme .nt-ef-tiltva { color: var(--nt-muted); font-style: italic; }
body.nt-theme .nt-ef-teendo { font-size: 12px; color: #b91c1c; line-height: 1.45; min-width: 200px; }
body.nt-theme .nt-ef-teendo i, body.nt-theme .nt-ef-teendok i { margin-right: 3px; }
body.nt-theme .nt-ef-jelmagyarazat { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 0; font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-ef-jelmagyarazat .nt-ef-pont { margin-right: 4px; }
/* egy iroda */
body.nt-theme .nt-ef-racs { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 0 20px; }
@media (max-width: 991px) { body.nt-theme .nt-ef-racs { grid-template-columns: 1fr; } }
body.nt-theme .nt-ef-allapot-fej { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-bottom: 12px; }
body.nt-theme .nt-ef-allapot-fej .nt-ef-ido { font-size: 15px; font-weight: 600; color: var(--nt-text); }
body.nt-theme .nt-ef-teendok { margin: 0 0 12px; padding: 10px 12px; list-style: none; border-radius: 10px; background: #fef2f2; color: #b91c1c; font-size: 13px; line-height: 1.6; }
body.nt-theme .nt-ef-rendben { margin: 0 0 12px; padding: 10px 12px; border-radius: 10px; background: #ecfdf3; color: #15803d; font-size: 13px; }
body.nt-theme .nt-ef-modultabla { margin-bottom: 14px; }
body.nt-theme .nt-ef-modultabla td, body.nt-theme .nt-ef-modultabla th { padding: 6px 8px !important; }
body.nt-theme .nt-ef-modultabla tr.tobblet > td { background: #fff7f7; }
body.nt-theme .nt-ef-modultabla tr.hiany > td { background: #fffbeb; }
body.nt-theme .nt-ef-igen { color: var(--nt-green-600); }
body.nt-theme .nt-ef-nem { color: #c3cad8; }
body.nt-theme .nt-ef-jel { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 999px; background: #f1f3f8; color: var(--nt-text-2); font-size: 11px; font-weight: 600; }
body.nt-theme .nt-ef-jel.tobblet { background: var(--nt-red-50); color: var(--nt-red-600); }
body.nt-theme .nt-ef-jel.hiany { background: var(--nt-amber-50); color: #b45309; }
body.nt-theme .nt-ef-muveletek { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
body.nt-theme .nt-ef-muveletek form { margin: 0; }
body.nt-theme .nt-ef-muveletek .btn { height: 36px; padding: 0 14px; display: inline-flex; align-items: center; gap: 7px; border-radius: 9px; font-size: 13px; margin: 0; }
body.nt-theme .nt-ef-megj { margin: 10px 0 0; font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-ef-belso { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-ef-belso .checkbox { margin: 0; }
body.nt-theme .nt-ef-belso label span { font-size: 12px; color: var(--nt-muted); font-weight: 400; }
body.nt-theme .nt-ef-kartyacim { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--nt-muted); }
body.nt-theme .nt-ef-userek ul { margin: 0; padding: 0; list-style: none; }
body.nt-theme .nt-ef-userek li { padding: 8px 0; border-top: 1px solid var(--nt-border); font-size: 13px; }
body.nt-theme .nt-ef-userek li:first-child { border-top: 0; padding-top: 0; }
body.nt-theme .nt-ef-userek li small { display: block; color: var(--nt-muted); font-size: 12px; }
body.nt-theme .nt-ef-userek li.tiltva b { color: var(--nt-muted); text-decoration: line-through; }
body.nt-theme .nt-ef-idoszak-fej { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
body.nt-theme .nt-ef-idoszak-fej .nt-ef-kartyacim { margin: 0; }
body.nt-theme .nt-ef-idoszak-fej .btn { height: 36px; padding: 0 14px; display: inline-flex; align-items: center; gap: 7px; border-radius: 9px; font-size: 13px; margin: 0; }
body.nt-theme .nt-ef-idoszakok tr.nt-ef-most > td { background: #f5f9ff; }
body.nt-theme .nt-ef-idoszakok tr.nt-ef-mult > td { color: var(--nt-muted); }
body.nt-theme .nt-ef-idoszakok tr.nt-ef-mult .nt-ef-modulok span { opacity: .65; }
body.nt-theme .nt-ef-tipus { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 11.5px; font-weight: 600; background: #eaf2ff; color: #1d4ed8; }
body.nt-theme .nt-ef-tipus.proba { background: #f5f3ff; color: #6d28d9; }
body.nt-theme .nt-ef-tipus.bonusz { background: #fff3d6; color: #b45309; }
body.nt-theme .nt-ef-modulok { display: flex; flex-wrap: wrap; gap: 4px; }
body.nt-theme .nt-ef-modulok span { padding: 1px 7px; border-radius: 6px; background: #f1f4fa; color: var(--nt-text-2); font-size: 11.5px; font-weight: 600; }
body.nt-theme .nt-ef-megj-cella { font-size: 12.5px; color: var(--nt-muted); max-width: 300px; }
body.nt-theme .nt-ef-gombok { white-space: nowrap; }
/* űrlap */
body.nt-theme .nt-ef-urlap-szakasz { margin-top: 16px; }
body.nt-theme .nt-ef-urlap-szakasz > span, body.nt-theme .nt-ef-urlap-szakasz > label > span { display: block; margin-bottom: 6px; font-size: 12px; font-weight: 600; color: var(--nt-muted); }
body.nt-theme .nt-ef-urlap-szakasz > small { display: block; margin-top: 6px; font-size: 11.5px; color: var(--nt-muted); }
body.nt-theme .nt-ef-modulvalaszto { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 4px 16px; }
body.nt-theme .nt-ef-modulvalaszto .checkbox { margin: 4px 0; }
body.nt-theme .nt-ef-tartam a { font-weight: 600; }
body.nt-theme .nt-ef-csempe-jel { color: var(--nt-red-600); }
body.nt-theme .nt-ef-kapcsolo { display: inline-block; margin: 0; vertical-align: middle; }
body.nt-theme .nt-ef-modulmentes { display: flex; gap: 6px; margin: -6px 0 14px; }
body.nt-theme .nt-ef-modulmentes[hidden] { display: none; }
body.nt-theme .nt-ef-jobb { min-width: 0; }
body.nt-theme .nt-ef-adatok label { display: flex; flex-direction: column; gap: 5px; margin: 0 0 10px; font-size: 12px; font-weight: 600; color: var(--nt-muted); }
body.nt-theme .nt-ef-adatok label small { font-weight: 400; }
body.nt-theme .nt-ef-adatok .nt-ef-megj { margin: 0 0 10px; }
body.nt-theme .nt-ef-userek a.nt-ef-megj { display: inline-block; margin-top: 10px; color: var(--nt-blue-600); }
body.nt-theme .nt-ef-szam { text-align: right; font-variant-numeric: tabular-nums; }
body.nt-theme .nt-ef-tabla td.nt-ef-szam b { font-size: 14px; }
body.nt-theme .nt-ef-rendez { cursor: pointer; user-select: none; white-space: nowrap; }
body.nt-theme .nt-ef-rendez:hover { color: var(--nt-blue-600); }
body.nt-theme .nt-ef-rendez::after { content: " \2195"; opacity: .35; font-size: 11px; }
body.nt-theme .nt-ef-rendez.nov::after { content: " \2191"; opacity: 1; }
body.nt-theme .nt-ef-rendez.csokk::after { content: " \2193"; opacity: 1; }
body.nt-theme .nt-ef-email { font-size: 12.5px; color: var(--nt-text-2); word-break: break-all; }
body.nt-theme .nt-ef-email a { color: var(--nt-blue-600); }
body.nt-theme .nt-ef-utkozes { margin: 3px 0 2px; font-size: 11.5px; color: #b45309; }
body.nt-theme .nt-ef-utkozes a { color: #b45309; text-decoration: underline; }
body.nt-theme .nt-ef-tabla td.nt-ef-kod a { font-weight: 700; color: var(--nt-text-2); }
body.nt-theme .nt-ef-nincs-user { color: var(--nt-red-600); font-weight: 600; }

/* ---- Levélsablonok (Admin → Levélsablonok, iroda → Levelek) ---- */
body.nt-theme .nt-ls-racs { display: grid; grid-template-columns: 240px minmax(0, 1fr) minmax(0, 1fr); gap: 0 20px; align-items: start; }
@media (max-width: 1399px) { body.nt-theme .nt-ls-racs { grid-template-columns: 220px minmax(0, 1fr); } body.nt-theme .nt-ls-elonezet { grid-column: 2; } }
@media (max-width: 991px) { body.nt-theme .nt-ls-racs { grid-template-columns: 1fr; } body.nt-theme .nt-ls-elonezet { grid-column: auto; } }
body.nt-theme .nt-ls-lista { display: flex; flex-direction: column; gap: 8px; margin-bottom: 20px; }
body.nt-theme .nt-ls-elem { display: block; padding: 12px 14px; border: 1px solid var(--nt-border); border-radius: var(--nt-radius); background: var(--nt-surface); color: var(--nt-text); text-decoration: none; transition: border-color .15s var(--nt-ease), box-shadow .15s var(--nt-ease); }
body.nt-theme .nt-ls-elem:hover { border-color: var(--nt-border-strong); color: var(--nt-text); text-decoration: none; }
body.nt-theme .nt-ls-elem.aktiv { border-color: var(--nt-blue-500); box-shadow: 0 0 0 3px var(--nt-ring); }
body.nt-theme .nt-ls-elem b { display: block; font-size: 14px; }
body.nt-theme .nt-ls-elem span { display: block; margin-top: 3px; font-size: 12.5px; color: var(--nt-text-2); line-height: 1.4; }
body.nt-theme .nt-ls-elem small { display: block; margin-top: 6px; font-size: 11.5px; color: var(--nt-muted); }
body.nt-theme .nt-ls label { display: block; font-weight: 600; font-size: 13px; color: var(--nt-text-2); margin-bottom: 12px; }
body.nt-theme .nt-ls label .form-control { margin-top: 5px; font-weight: 400; }
body.nt-theme .nt-ls textarea.form-control { font-size: 13.5px; line-height: 1.55; resize: vertical; min-height: 220px; }
body.nt-theme .nt-ls-valtozok { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: -2px 0 14px; }
body.nt-theme .nt-ls-valtozok > span { width: 100%; font-size: 12px; color: var(--nt-muted); }
body.nt-theme .nt-ls-valtozo { border: 1px solid var(--nt-border); background: var(--nt-blue-50); color: var(--nt-blue-600); border-radius: var(--nt-radius-sm); padding: 2px 8px; font-size: 12px; font-family: ui-monospace, Consolas, monospace; cursor: pointer; }
body.nt-theme .nt-ls-valtozo:hover { border-color: var(--nt-blue-400); }
body.nt-theme .nt-ls-elonezet-fej { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
body.nt-theme .nt-ls-elonezet-fej .nt-ef-kartyacim { margin: 0; }
body.nt-theme .nt-ls-elonezet-fej select { max-width: 60%; }
body.nt-theme .nt-ls-level { border: 1px solid var(--nt-border); border-radius: var(--nt-radius); background: var(--nt-bg); }
body.nt-theme .nt-ls-level-targy { padding: 10px 14px; border-bottom: 1px solid var(--nt-border); font-weight: 600; color: var(--nt-text); }
body.nt-theme .nt-ls-level-szoveg { margin: 0; padding: 14px; border: 0; background: none; font-family: inherit; font-size: 13.5px; line-height: 1.55; color: var(--nt-text); white-space: pre-wrap; word-break: break-word; }
body.nt-theme .nt-ls-iroda-levelek ul { list-style: none; margin: 0 0 10px; padding: 0; }
body.nt-theme .nt-ls-iroda-levelek li { padding: 5px 0; }

/* =====================================================================
   Avatár: monogram (ha nincs választott kép) és a Profilom választója
   ===================================================================== */
body.nt-theme .nt-avatar-mono {
    width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--nt-blue-500), var(--nt-navy-700));
    color: #fff; font-weight: 700; font-size: 14px; letter-spacing: .02em;
}
body.nt-theme .nt-account-head .nt-avatar-mono { width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50%; font-size: 13px; }
body.nt-theme form.nt-urlap > fieldset:has(.nt-avatar-valaszto) { grid-column: 1 / -1; }
body.nt-theme .nt-avatar-valaszto {
    flex-basis: 100%; width: 100%; min-width: 0;
    display: grid; grid-template-columns: repeat(auto-fill, minmax(64px, 1fr)); gap: 10px;
    max-width: 760px;
}
body.nt-theme .nt-avatar-opc {
    position: relative; margin: 0; padding: 6px; cursor: pointer;
    border: 1px solid var(--nt-border); border-radius: var(--nt-radius); background: var(--nt-surface);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s var(--nt-ease);
}
body.nt-theme .nt-avatar-opc input { position: absolute; opacity: 0; pointer-events: none; }
body.nt-theme .nt-avatar-opc img { display: block; width: 100%; aspect-ratio: 1; border-radius: 50%; object-fit: cover; }
body.nt-theme .nt-avatar-opc:hover { border-color: var(--nt-blue-400); transform: translateY(-1px); }
body.nt-theme .nt-avatar-opc:has(input:focus-visible) { box-shadow: var(--nt-ring); }
body.nt-theme .nt-avatar-opc:has(input:checked) { border: 2px solid var(--nt-blue-500); padding: 5px; background: var(--nt-blue-50); box-shadow: var(--nt-ring); }
body.nt-theme .nt-avatar-opc:has(input:checked)::after {
    content: ""; position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; border-radius: 50%;
    background: var(--nt-blue-500) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;
    box-shadow: 0 0 0 2px #fff;
}

/* =====================================================================
   Irodám: adatexport és az iroda törlése (IrodaTorles)
   ===================================================================== */
body.nt-theme .nt-torles-kartya { margin-top: 20px; }
body.nt-theme .nt-torles-sor { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--nt-border); }
body.nt-theme .nt-torles-sor:last-child { border-bottom: 0; }
body.nt-theme .nt-torles-sor h5,
body.nt-theme .nt-torles-veszely h5 { margin: 0 0 4px; font-size: 14px; font-weight: 700; color: var(--nt-text); text-transform: none; }
body.nt-theme .nt-torles-sor p { margin: 0; color: var(--nt-muted); font-size: 13px; }
body.nt-theme .nt-torles-sor .btn { flex: 0 0 auto; white-space: nowrap; }
body.nt-theme .nt-torles-allapot { padding: 12px 14px; margin-bottom: 6px; border-radius: var(--nt-radius-sm); background: var(--nt-amber-50); border: 1px solid #f5d9a0; color: var(--nt-text); font-size: 13.5px; line-height: 1.5; }
body.nt-theme .nt-torles-veszely { margin-top: 16px; padding: 16px 18px; border: 1px solid #f3c2c4; border-radius: var(--nt-radius); background: var(--nt-red-50); color: var(--nt-text); font-size: 13.5px; }
body.nt-theme .nt-torles-veszely h5 { color: var(--nt-red-600); }
body.nt-theme .nt-torles-veszely p,
body.nt-theme .nt-torles-veszely li { margin: 6px 0; font-size: 13.5px; line-height: 1.5; color: var(--nt-text); }
body.nt-theme .nt-torles-veszely li { margin: 2px 0; }
body.nt-theme .nt-torles-veszely ul { margin: 0 0 8px; padding-left: 20px; }
body.nt-theme .nt-torles-veszely .nt-torles-megjegyzes,
body.nt-theme .nt-torles-kartya .nt-torles-megjegyzes { color: var(--nt-text-2); font-size: 12.5px; }
body.nt-theme .nt-torles-veszely form { margin-top: 12px; max-width: 420px; }
body.nt-theme .nt-torles-veszely form > label { display: block; font-size: 12px; font-weight: 600; color: var(--nt-text-2); margin: 0 0 5px; }
body.nt-theme .nt-torles-veszely .form-group { margin: 0 0 12px; }
body.nt-theme .nt-torles-veszely .form-control { background: #fff; }
body.nt-theme .nt-torles-pipa label { display: flex; gap: 8px; align-items: flex-start; font-weight: 500; font-size: 13px; color: var(--nt-text); cursor: pointer; }
body.nt-theme .nt-torles-pipa input { margin-top: 3px; }
@media (max-width: 600px) { body.nt-theme .nt-torles-sor { flex-direction: column; align-items: stretch; } }
body.nt-theme .nt-torles-reszletek { margin: 4px 0 8px; font-size: 12.5px; color: var(--nt-text-2); }
body.nt-theme .nt-torles-reszletek summary { cursor: pointer; }
body.nt-theme .nt-torles-reszletek ul { columns: 2; margin: 6px 0 0; }
body.nt-theme .nt-torles-kartya .card-content.nt-torles-sor { padding: 18px 22px; }

/* =====================================================================
   Státuszsor (verzió + az újdonságok linkje a www.netinas.hu/ujdonsagok oldalra)
   ===================================================================== */
/* státuszsor: az ablak aljához rögzített vékony sáv (layout.tpl.php) */
body.nt-theme .nt-statuszsor {
    position: fixed; left: 260px; right: 0; bottom: 0; z-index: 1020; height: 30px;
    display: flex; align-items: center; justify-content: flex-start; gap: 18px; padding: 0 18px;
    background: rgba(255, 255, 255, .92); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
    border-top: 1px solid var(--nt-border); font-size: 12px; line-height: 1;
}
body.nt-theme .nt-statuszsor a { color: var(--nt-muted); text-decoration: none; white-space: nowrap; }
body.nt-theme .nt-statuszsor a:hover { color: var(--nt-blue-600); }
body.nt-theme .nt-statuszsor .nt-statusz-verzio b { color: var(--nt-text-2); font-weight: 700; }
body.nt-theme .nt-statuszsor .nt-statusz-ujdonsagok { padding-left: 18px; border-left: 1px solid var(--nt-border); display: inline-flex; align-items: center; gap: 6px; color: var(--nt-blue-600); font-weight: 600; }
body.nt-theme .nt-statuszsor .nt-statusz-ujdonsagok.aktiv { color: var(--nt-text); }
body.nt-theme .nt-statuszsor .nt-uj-verzio {
    display: inline-block; padding: 2px 6px; border-radius: 999px;
    background: var(--nt-red-600); color: #fff; font-size: 9.5px; font-weight: 700; letter-spacing: .05em;
}
body.nt-theme .main-panel > .content { padding-bottom: 46px; }   /* a státuszsor ne takarja a tartalom alját */
@media (min-width: 992px) { body.nt-theme.sidebar-mini .nt-statuszsor { left: 80px; } }
@media (max-width: 991px) { body.nt-theme .nt-statuszsor { left: 0; } }
@media (max-width: 480px) { body.nt-theme .nt-statuszsor .nt-statusz-verzio { overflow: hidden; text-overflow: ellipsis; } }
@media print { body.nt-theme .nt-statuszsor { display: none; } }
body.nt-theme .nt-uj-fej {
    position: relative; overflow: hidden; margin: 6px 0 22px; padding: 28px 30px; border-radius: var(--nt-radius-lg);
    color: #fff; background: radial-gradient(120% 140% at 100% 0%, rgba(212,20,27,.35) 0%, transparent 45%),
                radial-gradient(100% 120% at 0% 100%, rgba(47,116,245,.55) 0%, transparent 55%),
                linear-gradient(135deg, var(--nt-navy-800), var(--nt-navy-700));
    box-shadow: var(--nt-shadow);
}
body.nt-theme .nt-uj-fej h2 { margin: 8px 0 8px; font-size: 26px; font-weight: 800; color: #fff; letter-spacing: -.01em; }
body.nt-theme .nt-uj-fej p { max-width: 720px; margin: 0 0 6px; font-size: 15px; line-height: 1.55; color: rgba(255,255,255,.88); }
body.nt-theme .nt-uj-fej small { color: rgba(255,255,255,.6); font-size: 12.5px; }
body.nt-theme .nt-uj-cimke { display: inline-block; padding: 3px 10px; border-radius: 999px; background: rgba(255,255,255,.14); font-size: 12px; font-weight: 600; }
body.nt-theme .nt-uj-racs { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 18px; }
body.nt-theme .nt-uj-szakasz { padding: 18px 20px; border: 1px solid var(--nt-border); border-radius: var(--nt-radius-lg); background: var(--nt-surface); box-shadow: var(--nt-shadow-sm); }
body.nt-theme .nt-uj-szakasz h5 { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; font-size: 15px; font-weight: 700; color: var(--nt-text); text-transform: none; }
body.nt-theme .nt-uj-ikon { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 9px; background: var(--nt-blue-50); color: var(--nt-blue-600); font-size: 15px; }
body.nt-theme .nt-uj-szakasz ul { list-style: none; margin: 0; padding: 0; }
body.nt-theme .nt-uj-szakasz li { padding: 8px 0; border-top: 1px solid var(--nt-border); font-size: 13.5px; line-height: 1.5; }
body.nt-theme .nt-uj-szakasz li:first-child { border-top: 0; padding-top: 0; }
body.nt-theme .nt-uj-szakasz li b { display: block; color: var(--nt-text); font-weight: 650; }
body.nt-theme .nt-uj-szakasz li span { color: var(--nt-text-2); }
body.nt-theme .nt-uj-lab { margin: 22px 0 8px; color: var(--nt-muted); font-size: 13px; text-align: center; }
@media (max-width: 600px) { body.nt-theme .nt-uj-racs { grid-template-columns: 1fr; } body.nt-theme .nt-uj-fej { padding: 22px 18px; } }

/* Irodák és Előfizetések – a honlapról érkezett megrendelések (.nt-mr) */
body.nt-theme .nt-ef .nt-sz-fej .nt-ef-muveletek .btn { height: 36px; }
body.nt-theme .nt-mr-kartya { border: 1px solid #c7d8fb; background: #f8fbff; }
body.nt-theme .nt-mr-kartya .nt-ef-kartyacim { color: var(--nt-blue-600); display: flex; align-items: center; gap: 6px; }
body.nt-theme .nt-mr-lista { margin: 0; padding: 0; list-style: none; }
body.nt-theme .nt-mr-lista li { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto; align-items: center; gap: 6px 16px; padding: 10px 0; border-top: 1px solid var(--nt-border); font-size: 13px; }
body.nt-theme .nt-mr-lista li:first-child { border-top: 0; }
body.nt-theme .nt-mr-lista .nt-ef-al { display: block; }
body.nt-theme .nt-mr-lista .btn { margin: 0; white-space: nowrap; }
@media (max-width: 991px) { body.nt-theme .nt-mr-lista li { grid-template-columns: 1fr; } }
body.nt-theme .nt-mr-javaslat .nt-ef-al { display: inline; }
body.nt-theme .nt-mr-egyezesek { display: grid; gap: 8px; margin-bottom: 14px; }
body.nt-theme .nt-mr-egyezes { display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 10px 12px; border: 1px solid var(--nt-border); border-radius: 10px; font-weight: 400; cursor: pointer; }
body.nt-theme .nt-mr-egyezes:has(input:checked) { border-color: #7aa7f7; background: #f5f9ff; }
body.nt-theme .nt-mr-egyezes input[type=radio] { margin-top: 3px; }
body.nt-theme .nt-mr-egyezes > span { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 13px; }
body.nt-theme .nt-mr-egyezes .nt-ef-al { flex-basis: 100%; }
body.nt-theme .nt-mr-okok { flex-basis: 100%; color: #15803d; font-size: 12.5px; font-weight: 600; }
body.nt-theme .nt-mr-kod { display: inline-block; width: 110px; height: 32px; margin-left: 6px; }
body.nt-theme .nt-mr-nincs { margin: 0 0 12px; }
body.nt-theme .nt-mr-ido { margin-bottom: 4px; }
body.nt-theme .nt-mr-ujranyit { margin: 6px 0 0; }
body.nt-theme .nt-mr-adatok dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 12px; margin: 0 0 12px; font-size: 13px; }
body.nt-theme .nt-mr-adatok dt { color: var(--nt-muted); font-weight: 600; }
body.nt-theme .nt-mr-adatok dd { margin: 0; overflow-wrap: anywhere; }
body.nt-theme .nt-mr-gyanus { color: var(--nt-red-600); }
body.nt-theme .nt-mr-iroda ul { margin: 0; padding: 0; list-style: none; }
body.nt-theme .nt-mr-iroda li { padding: 6px 0; border-top: 1px solid var(--nt-border); font-size: 13px; }
body.nt-theme .nt-mr-iroda li:first-child { border-top: 0; padding-top: 0; }
body.nt-theme .nt-mr-iroda li small { display: block; color: var(--nt-muted); font-size: 12px; }


/* =====================================================================
   Tesztkörnyezet (config.php: TESZT=1): piros, ragadós fejléc felirattal,
   hogy görgetés közben se lehessen összetéveszteni az éles rendszerrel
   ===================================================================== */
body.nt-theme .main-panel > .navbar.nt-teszt-fejlec { position: sticky; top: 0; z-index: 1030; background: rgba(249, 176, 176, .92); border-bottom-color: #e58a8a; }
body.nt-theme .nt-teszt-csik {
    padding: 5px 18px; background: #c62828; color: #fff; font-size: 12.5px; line-height: 1.35;
    text-align: center; letter-spacing: .01em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body.nt-theme .nt-teszt-csik b { letter-spacing: .08em; }
body.nt-theme .nt-teszt-csik a { color: #fff; text-decoration: underline; }
@media (max-width: 991px) { body.nt-theme .main-panel > .navbar.nt-teszt-fejlec { background: #f9b0b0; } }

/* Ügyfélkapcsolat (UgyfelKapcsolat) – állapot-címke, Megbízási szerződés → Ügyfélkapcsolatok, Cégadatok, Cégek, KIR */
body.nt-theme .nt-ugyfel-cimke { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; font-weight: 700; line-height: 18px; white-space: nowrap; background: #eef0f5; color: var(--nt-text-2); }
body.nt-theme .nt-ugyfel-cimke.aktiv { background: var(--nt-green-50); color: #0d7a3d; }
body.nt-theme .nt-ugyfel-cimke.megszunt { background: #f1f2f6; color: var(--nt-muted); }
body.nt-theme .nt-ugyfel-cimke.jovobeli { background: var(--nt-blue-50); color: var(--nt-blue-600); }
body.nt-theme .nt-ugyfel-cimke.nincs { background: var(--nt-amber-50); color: #b86e00; }
body.nt-theme .nt-ugyfel-cimke.nem { background: #f1f2f6; color: var(--nt-text-2); }
body.nt-theme .nt-uk-jeloles { margin-top: 10px; }
body.nt-theme .nt-uk-jeloles .checkbox { margin: 0; }
body.nt-theme .nt-uk-jeloles .nt-torzs-sugo { margin: 4px 0 0; }
body.nt-theme .nt-ugyfel-ido { color: var(--nt-text-2); font-size: 13px; }
body.nt-theme .nt-uk-lapfulek { display: flex; gap: 4px; margin: 4px 0 16px; border-bottom: 1px solid var(--nt-border); }
body.nt-theme .nt-uk-lapfulek a { display: inline-flex; align-items: center; gap: 7px; padding: 9px 14px; margin-bottom: -1px; border-bottom: 2px solid transparent; color: var(--nt-text-2); font-weight: 600; font-size: 14px; }
body.nt-theme .nt-uk-lapfulek a:hover { color: var(--nt-text); text-decoration: none; }
body.nt-theme .nt-uk-lapfulek a.aktiv { color: var(--nt-blue-600); border-bottom-color: var(--nt-blue-600); }
body.nt-theme .nt-uk-al { display: block; color: var(--nt-muted); font-size: 12.5px; font-weight: 400; }
body.nt-theme .nt-uk-tabla td { vertical-align: middle !important; }
body.nt-theme .nt-uk-tabla .nt-uk-ceg a { font-weight: 600; color: var(--nt-text); }
body.nt-theme .nt-uk-tabla .nt-uk-muvelet { text-align: right; white-space: nowrap; width: 1%; }
body.nt-theme .nt-uk-tabla .nt-uk-muvelet form { display: inline; }
body.nt-theme .nt-uk-idoszakok span { display: block; font-size: 13px; }
body.nt-theme .nt-uk-idoszakok small { color: var(--nt-muted); margin-left: 4px; }
body.nt-theme .nt-uk-javaslatok { border: 1px solid #f3d9a4; background: #fffcf4; }
body.nt-theme .nt-uk-javaslat-fej { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
body.nt-theme .nt-uk-javaslat-fej .fa { color: #b86e00; }
body.nt-theme .nt-uk-javaslatok .nt-uk-tabla { background: transparent; }
body.nt-theme .nt-uk-javaslat-egy { display: flex; align-items: center; gap: 10px; }
body.nt-theme .nt-uk-javaslat-egy > div { flex: 1; }
body.nt-theme .nt-uk-cegfej { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
body.nt-theme .nt-uk-cegfej h4 { margin: 0 0 6px; font-weight: 700; }
body.nt-theme .nt-uk-elem { padding: 12px 0; border-top: 1px solid var(--nt-border); }
body.nt-theme .nt-uk-elem:first-of-type { border-top: 0; padding-top: 0; }
body.nt-theme .nt-uk-elem-fej { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
body.nt-theme .nt-uk-elem-fej form { display: inline; }
body.nt-theme .nt-uk-el { color: #0d7a3d; font-weight: 700; }
body.nt-theme .nt-uk-urlap { margin-top: 6px; }
body.nt-theme .nt-uk-urlap summary { cursor: pointer; color: var(--nt-blue-600); font-size: 13px; font-weight: 600; }
body.nt-theme .nt-uk-urlap[open] summary { margin-bottom: 8px; }
body.nt-theme .nt-uk-sor { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; }
body.nt-theme .nt-uk-sor label { display: flex; flex-direction: column; gap: 4px; margin: 0; font-size: 12.5px; font-weight: 600; color: var(--nt-text-2); width: 190px; }
body.nt-theme .nt-uk-sor label.nt-uk-szeles { flex: 1; min-width: 220px; }
body.nt-theme .nt-uk-sor .btn { margin: 0; }
body.nt-theme .nt-uk-visszavon { margin-top: 6px; }
body.nt-theme .nt-uk-uj { margin-top: 14px; }
body.nt-theme .nt-uk-szakaszok { margin: 8px 0 0; padding-left: 18px; font-size: 13px; color: var(--nt-text-2); }
body.nt-theme .nt-uk-kartya .nt-torzs-sugo { margin: 10px 0 0; }
body.nt-theme .nt-uk-fulek-link { margin-left: auto; font-size: 13px; font-weight: 600; }
body.nt-theme .nt-kir-uk { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
body.nt-theme .nt-kir-uk .btn { margin: 0; white-space: nowrap; }
@media (max-width: 767px) { body.nt-theme .nt-uk-javaslat-fej, body.nt-theme .nt-uk-cegfej, body.nt-theme .nt-kir-uk { flex-direction: column; align-items: stretch; } body.nt-theme .nt-uk-sor label { width: 100%; } }
