/* =====================================================================
   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: 12px 14px !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: 11px 14px !important;
    vertical-align: middle;
    font-size: 14px;
}
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; }
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 .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);
}
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; }
/* 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; }
}
/* 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; }
