/* ACREW Management UI v5 — a látványterv alkalmazásra fordított rendszere */
:root{
    --v5-navy:#0b1928;
    --v5-navy-2:#10263b;
    --v5-blue:#1377b9;
    --v5-blue-soft:#e9f3fa;
    --v5-bg:#eef2f5;
    --v5-panel:#ffffff;
    --v5-line:#d7e0e7;
    --v5-text:#172331;
    --v5-muted:#697786;
    --v5-green:#12a95a;
    --v5-orange:#ff8a10;
    --v5-red:#f04444;
    --v5-purple:#7148d4;
    --v5-radius:6px;
    --accent:#ff5a1f;
    --bg:var(--v5-bg);
    --surface:var(--v5-panel);
    --ink:var(--v5-text);
    --muted:var(--v5-muted);
    --line:var(--v5-line);
    --chrome:var(--v5-navy);
    --chrome-2:var(--v5-navy-2);
}

html{background:var(--v5-bg)}
body,body.dashboard-page{background:var(--v5-bg);color:var(--v5-text);font-size:14px}
body.dashboard-page:before,body.dashboard-page:after{display:none!important}
h1,h2,h3{font-family:Slussen,Arial,sans-serif;letter-spacing:0;text-transform:none}
.section-kicker,.hero-kicker{color:var(--v5-blue);font-size:10px;font-weight:700;letter-spacing:.08em}

/* Egységes alkalmazáskeret */
body.dashboard-page .app-topbar,.app-topbar{
    position:sticky;top:0;z-index:1200;width:100%;height:64px;margin:0;padding:0 18px;
    border:0;border-radius:0;background:linear-gradient(90deg,#091624,#101d2c);box-shadow:none;color:#fff;
}
.app-brand.header-logo{width:54px;min-width:54px;height:54px}
.app-brand.header-logo img{width:46px;height:46px;filter:none}
.app-motto.header-motto{display:block;margin-left:12px;color:#fff;font-size:15px;font-weight:700;letter-spacing:.015em;text-transform:uppercase}
.global-search{width:min(430px,35vw);margin-left:auto;margin-right:auto}
.global-search input{height:38px;border:1px solid #314255;border-radius:5px;background:#132438;color:#fff}
.global-search input::placeholder{color:#9aabba}.global-search input:focus{border-color:#4c93c5;background:#172b40;box-shadow:0 0 0 2px rgba(54,142,201,.18)}
.global-search kbd{top:8px;border-color:#405266;border-radius:4px;background:#203247;color:#b9c5d0}
.topbar-profile{color:#fff}.topbar-profile small{color:#b2bfca}.topbar-profile i{width:38px;height:38px;border-radius:50%;background:#f4f7f9;color:var(--v5-navy)}

body.dashboard-page .app-shell,.app-shell{
    position:relative;z-index:1;display:grid;grid-template-columns:184px minmax(0,1fr);gap:0;
    width:100%;height:auto;min-height:calc(100vh - 64px);padding:0;background:var(--v5-bg);
}
body.dashboard-page .app-sidebar,.app-sidebar{
    position:sticky;top:64px;z-index:900;align-self:start;width:184px;height:calc(100vh - 64px);min-height:0;
    padding:12px 9px 10px;border:0;border-radius:0;background:linear-gradient(180deg,#0b1d2e,#071522);box-shadow:none;
    overflow-x:hidden;overflow-y:auto;color:#d6e0e8;
}
.sidebar-heading{padding:0 8px 9px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.04em}
.app-sidebar nav{gap:3px}.app-sidebar nav a,.sidebar-admin>a{min-height:38px;margin:0;padding:7px 9px;border-radius:5px;color:#d3dde6;font-size:12px}
.app-sidebar nav a:hover,.sidebar-admin>a:hover{background:#16324b;color:#fff}
.app-sidebar nav a[aria-current="page"],.sidebar-admin>a[aria-current="page"]{background:linear-gradient(90deg,#1376b8,#17669b);color:#fff;box-shadow:none}
.app-sidebar a:before{display:none}.app-sidebar svg{width:18px;height:18px;stroke:#55b5e6}.app-sidebar a[aria-current="page"] svg{stroke:#fff}
.app-sidebar a b{min-width:18px;height:18px;background:var(--v5-red)}
.sidebar-create{min-height:40px!important;margin:10px 0!important;padding:8px 10px!important;border:1px solid #28506d!important;border-radius:5px!important;background:#10283b!important;color:#fff!important;font-size:12px!important}
.sidebar-create span{color:#57c5ef}.sidebar-admin{padding-top:9px;border-color:#284057}.sidebar-admin form{margin-top:7px}.sidebar-admin button{height:35px;border-color:#385269;border-radius:5px;color:#bdc9d3}

body.dashboard-page .app-content-area,.app-content-area{min-width:0;min-height:calc(100vh - 64px);overflow:visible;border:0;border-radius:0;background:var(--v5-bg);box-shadow:none}
body.dashboard-page .content,body.dashboard-page .wide-content,body.dashboard-page .dashboard-main,
.content,.wide-content,.dashboard-main{width:100%;margin:0;padding:14px 16px 22px}
.app-footer{padding:12px 16px;border-top:1px solid var(--v5-line);background:#f6f8fa;color:#8a97a4;font-size:10px}

/* Oldalfejlécek */
body.dashboard-page:not(.portfolio-page) .page-heading,
body.dashboard-page:not(.portfolio-page) .module-header,
body.projects-page .projects-heading{
    min-height:0;margin:0 0 10px;padding:3px 2px 8px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:transparent;color:var(--v5-text);
}
body.dashboard-page:not(.portfolio-page) .page-heading h1,
body.dashboard-page:not(.portfolio-page) .module-header h1,
body.projects-page .projects-heading h1{margin:2px 0 3px;color:var(--v5-text);font-size:27px;line-height:1.05;text-transform:none}
body.dashboard-page:not(.portfolio-page) .page-heading p,
body.dashboard-page:not(.portfolio-page) .module-header p,
body.projects-page .projects-heading p{color:var(--v5-muted);font-size:13px}
.button,.small-button,.secondary-button{min-height:36px;padding:8px 14px;border-radius:5px;font-size:12px;font-weight:700}
.button,.small-button{background:var(--v5-blue)}.button:hover,.small-button:hover{background:#0c659f;transform:none}.secondary-button{background:#fff}

/* Dashboard */
body.portfolio-page{overflow:auto}
body.portfolio-page .app-content-area{height:auto;overflow:visible}
body.portfolio-page .portfolio-dashboard{width:100%;height:auto;padding:14px 16px 20px}
body.portfolio-page .portfolio-hero{
    min-height:0;margin:0 0 10px;padding:3px 2px 10px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:transparent;color:var(--v5-text);
}
body.portfolio-page .portfolio-hero:after{display:none}
body.portfolio-page .portfolio-hero h1{margin:2px 0 3px;color:var(--v5-text);font-size:27px;line-height:1.05;text-transform:none}
body.portfolio-page .portfolio-hero p{color:var(--v5-muted);font-size:13px}
body.portfolio-page .portfolio-hero .secondary-button{border-color:#c8d3dc;background:#fff;color:var(--v5-text)}
body.portfolio-page .portfolio-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 10px}
body.portfolio-page .metric-card{position:relative;min-height:96px;padding:14px;border:0;border-radius:var(--v5-radius);box-shadow:0 2px 5px rgba(18,38,55,.08);color:#fff}
body.portfolio-page .metric-card:before{display:none}
body.portfolio-page .metric-card:nth-child(1){background:linear-gradient(135deg,#10ad58,#0c9149)}
body.portfolio-page .metric-card:nth-child(2){background:linear-gradient(135deg,#197fca,#1067a8)}
body.portfolio-page .metric-card:nth-child(3){background:linear-gradient(135deg,#ff9715,#f47d00)}
body.portfolio-page .metric-card:nth-child(4),body.dashboard-page .portfolio-metrics .action-metric{background:linear-gradient(135deg,#7450d5,#5937b6);border:0;color:#fff}
body.portfolio-page .metric-card small,body.portfolio-page .metric-card em{color:rgba(255,255,255,.84)}
body.portfolio-page .metric-card strong{font-family:Slussen,Arial,sans-serif;font-size:27px;color:#fff}
body.portfolio-page .metric-icon{width:34px;height:34px;background:rgba(255,255,255,.16)!important;color:#fff!important}
body.portfolio-page .action-metric b{color:#fff!important}
body.portfolio-page .portfolio-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.7fr);gap:10px;align-items:start}
.workspace-card,.surface-card,.dashboard-card,.panel{border:1px solid var(--v5-line);border-radius:var(--v5-radius);background:#fff;box-shadow:none}
.workspace-card-header,.dashboard-card-header{padding:10px 12px;border-top:0;border-bottom:1px solid var(--v5-line);background:#f7f9fb;color:var(--v5-text)}
.workspace-card-header h2,.dashboard-card-header h2{font-size:13px;font-weight:700;text-transform:uppercase}.workspace-card-header p{color:var(--v5-muted)}
.workspace-card-header>a,.dashboard-card-header>a{color:var(--v5-blue)}
.portfolio-project{grid-template-columns:36px minmax(0,1fr) minmax(135px,.38fr) 18px;gap:10px;padding:10px 12px}
.project-monogram{width:34px;height:34px;border-radius:5px;background:var(--v5-navy);color:#53c8ef;font-family:Slussen;font-size:17px}
.project-card-title strong{font-size:13px}.project-card-title span{background:#e9eef2}.project-card-main p{font-size:11px}.project-card-meta strong{font-size:11px}
.progress-track{height:5px;background:#e3e9ed}.progress-track span{background:var(--v5-green)}
.focus-list li{padding:10px 0}.focus-add{margin:8px 12px 12px;padding:8px}

/* Projektek */
body.projects-page .projects-index{padding:14px 16px 22px}
.project-status-strip{gap:8px;margin:0 0 10px!important;border:0;background:transparent}
.project-status-strip a{padding:10px 12px;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.project-status-strip strong{font-family:Slussen;font-size:20px}.project-status-strip span{font-size:10px}
.project-toolbar,.filters-bar,.service-filters{margin:0 0 10px!important;padding:10px 12px;border:1px solid var(--v5-line);border-top:1px solid var(--v5-line);border-radius:5px;background:#f8fafb}
.project-toolbar{grid-template-columns:minmax(240px,1fr) 220px auto auto}
.project-toolbar input,.project-toolbar select,.filters-bar input,.filters-bar select,.service-filters input,.service-filters select{height:38px;border-color:#cbd6df;border-radius:4px}
.project-toolbar button,.filters-bar button,.service-filters button{height:38px;border-radius:4px;background:var(--v5-navy)}
.project-portfolio-list{gap:6px;margin:0!important}
.project-portfolio-row{grid-template-columns:40px minmax(190px,.85fr) minmax(300px,1.2fr) minmax(160px,.55fr) 24px;gap:12px;padding:12px;border:1px solid var(--v5-line);border-left:3px solid var(--v5-blue);border-radius:5px;background:#fff}
.project-portfolio-row:hover{border-left-color:var(--v5-orange);box-shadow:0 3px 8px rgba(22,42,58,.08);transform:none}
.project-row-actions{pointer-events:none}
.project-row-mark{width:36px;height:36px;border-radius:5px;background:var(--v5-navy);color:#4cc8ef;font-family:Slussen;font-size:17px}
.project-row-identity h2{font-size:16px}.project-code{color:var(--v5-blue)}

/* Táblázatok és listák */
.data-table-wrap,.user-table-wrap,.service-table-wrap{border-color:var(--v5-line);border-radius:5px;background:#fff}
.data-table,.user-table,.service-table{background:#fff}
.data-table th,.user-table th,.service-table th{padding:9px 10px;background:var(--v5-navy);color:#fff;font-size:9px;letter-spacing:.05em}
.data-table td,.user-table td,.service-table td{padding:10px;border-color:#e4e9ed;background:#fff;font-size:12px}
.data-table tbody tr:hover,.user-table tbody tr:hover,.service-table tbody tr:hover{background:#f3f8fb}
.service-table{min-width:960px}.service-name-cell strong{font-size:13px}.category-badge{background:#eaf2f7;color:#436579}.status-pill,.status-badge,.role-badge{border-radius:3px;font-size:9px}

/* Csapatlista és részletes adatlap */
body.workers-index-page .panel,body.services-page .panel{padding:0;border:0;background:transparent}
body.workers-index-page .workers-list,body.services-page .service-filters,body.services-page .service-table-wrap{margin-left:0;margin-right:0}
.workers-list{gap:6px}.worker-list-row{grid-template-columns:auto minmax(190px,1fr) minmax(190px,.8fr) auto 18px;gap:12px;padding:11px 12px;border:1px solid var(--v5-line);border-radius:5px;background:#fff}
.worker-list-row:hover{border-color:#9fbfd4;box-shadow:none;transform:none}.worker-photo.small{width:44px;height:44px;border-radius:5px;background:var(--v5-navy)}.worker-list-main h2{font-size:14px}.worker-list-sub,.worker-list-contact span{font-size:11px}
body.worker-detail-page .panel{padding:0;border:0;background:transparent}
body.worker-detail-page .detail-actions{margin:0 0 8px;padding:0;background:transparent}
body.worker-detail-page .worker-card.detail-card{margin:0;border-color:var(--v5-line);border-radius:5px;background:#fff}
body.worker-detail-page .worker-top.detail-top{padding:16px 18px;background:linear-gradient(90deg,var(--v5-navy),#153551)}
body.worker-detail-page .worker-photo.large{width:92px;height:92px;border-radius:6px}
body.worker-detail-page .worker-main h1{font-family:Slussen;font-size:27px}
body.worker-detail-page .data-section{padding:14px 18px;border-color:var(--v5-line)}
body.worker-detail-page .worker-documents-section{padding:0}
.worker-documents-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid var(--v5-line)}
.worker-documents-heading h3{margin:0 0 3px!important}.worker-documents-heading p{margin:0;color:var(--v5-muted);font-size:13px}.worker-documents-heading>span{padding:5px 8px;border-radius:4px;background:#edf2f6;color:var(--v5-muted);font-size:12px;white-space:nowrap}
.worker-document-upload{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(190px,1fr) minmax(240px,1.2fr) minmax(170px,.8fr) auto;align-items:end;gap:10px;padding:14px 18px;border-bottom:1px solid var(--v5-line);background:#f6f8fa}
.worker-document-upload label{display:block;color:#525b65;font-size:12px}.worker-document-upload label small{color:#89919a;font-size:10px}.worker-document-upload input,.worker-document-upload select{width:100%;min-height:40px;margin-top:5px;padding:8px 10px;border:1px solid #cbd6df;border-radius:4px;background:#fff;color:var(--v5-ink)}.worker-document-upload input[type=file]{padding:7px}.worker-document-upload button{min-height:40px;padding:0 17px;border:0;border-radius:4px;background:var(--v5-blue);color:#fff;cursor:pointer}
.worker-documents-empty{padding:22px 18px;color:var(--v5-muted);text-align:center}
.worker-document-list{background:#fff}.worker-document-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 18px;border-bottom:1px solid var(--v5-line)}.worker-document-row:last-child{border-bottom:0}
.worker-document-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:5px;background:#111820;color:#ff5b24;font-size:10px;font-weight:700;letter-spacing:.04em}
.worker-document-main{min-width:0}.worker-document-main strong,.worker-document-main span,.worker-document-main small{display:block}.worker-document-main strong{font-size:14px}.worker-document-main span{margin-top:2px;color:#59636e;font-size:12px;overflow-wrap:anywhere}.worker-document-main small{margin-top:3px;color:#8a929b;font-size:11px}.worker-document-main p{margin:5px 0 0;color:#626b75;font-size:12px}
.worker-document-actions{display:flex;align-items:center;gap:8px}.worker-document-actions form{margin:0}.worker-document-actions .secondary-button,.worker-document-actions .danger-link{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:6px 11px;border-radius:4px;font-size:12px;text-decoration:none}.worker-document-actions .danger-link{border:1px solid #e0b8b8;background:#fff;color:#a93f3f;cursor:pointer}
body.worker-detail-page .data-grid,body.worker-detail-page .data-grid.compact{border-color:var(--v5-line)}
body.worker-detail-page .data-row{min-height:58px;padding:9px 11px;border-color:var(--v5-line)}

/* Projekt részletező */
.project-context-bar{margin:0;border:0;border-radius:0;background:var(--v5-navy)}
.project-context-inner{width:100%;padding:8px 16px 0}.project-context-inner nav{margin-top:5px}.project-context-inner nav a{padding:8px 11px;color:#b7c5d0;font-size:11px}.project-context-inner nav a.active{border-color:#54bde5}
body.project-detail-page main{padding:14px 16px 22px!important}.detail-grid{gap:10px}.detail-summary{padding:12px}.definition-grid{gap:7px}.definition-item{padding:10px;border-color:var(--v5-line);border-radius:4px;background:#f7f9fa}.quick-links{gap:6px;padding:10px}.quick-links a{padding:10px 7px;border-radius:4px;background:#f7f9fa}.project-workflow-card{margin:10px 0}
body.dashboard-page.project-detail-page .page-heading .secondary-button{border:1px solid #b9c6d0;background:#fff;color:var(--v5-text)}
body.dashboard-page.project-detail-page .page-heading .secondary-button:hover{border-color:var(--v5-blue);background:#eef5f9;color:var(--v5-navy)}
body.dashboard-page.project-subpage .page-heading .project-back-button{border:1px solid #b9c6d0;background:#fff;color:var(--v5-text)}
body.dashboard-page.project-subpage .page-heading .project-back-button:hover{border-color:var(--v5-blue);background:#eef5f9;color:var(--v5-navy)}

/* Űrlapok, fiók, felhasználók */
.form-card{margin:0!important;padding:16px;border-color:var(--v5-line);border-radius:5px;background:#fff}
.form-section{margin-bottom:10px;padding:14px;border:1px solid var(--v5-line);border-radius:5px;background:#f8fafb}
.form-section h2{margin-bottom:12px;font-size:16px;text-transform:none}
.management-form-grid,.form-grid{gap:12px}.management-form input,.management-form select,.management-form textarea,.worker-form input,.worker-form select,.worker-form textarea,.account-form input{margin-top:5px;padding:9px 10px;border-color:#cbd6df;border-radius:4px;background:#fff}.management-form input,.management-form select,.worker-form input,.worker-form select,.account-form input{min-height:40px}

/* Munkavállalói űrlap: egyetlen adatlap, belső kártyák nélkül */
body.worker-form-page .panel{padding:0;border:0;background:transparent;box-shadow:none}
body.worker-form-page .module-header{margin:0 0 12px;padding:0}
body.worker-form-page .worker-form{gap:0;overflow:hidden;border:1px solid var(--v5-line);border-radius:5px;background:#fff}
body.worker-form-page .form-section{margin:0;padding:17px 18px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:#fff}
body.worker-form-page .form-section:last-of-type{border-bottom:0}
body.worker-form-page .form-actions{margin:0;padding:14px 18px;border-top:1px solid var(--v5-line);background:#f4f7f9}

/* Felhasználói űrlap: egyetlen adatlap, belső kártyák nélkül */
body.user-form-page .panel{padding:0;border:0;background:transparent;box-shadow:none}
body.user-form-page .module-header{margin:0 0 12px;padding:0}
body.user-form-page .worker-form{gap:0;overflow:hidden;border:1px solid var(--v5-line);border-radius:5px;background:#fff}
body.user-form-page .form-section{margin:0;padding:17px 18px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:#fff}
body.user-form-page .form-section:last-of-type{border-bottom:0}
body.user-form-page .form-actions{margin:0;padding:14px 18px;border-top:1px solid var(--v5-line);background:#f4f7f9}

/* Projektűrlap: egyetlen adatlap, belső kártyák nélkül */
body.project-form-page .form-card{padding:0;overflow:hidden;background:#fff}
body.project-form-page .management-form{gap:0}
body.project-form-page .form-section{margin:0;padding:17px 18px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:#fff}
body.project-form-page .form-section:last-of-type{border-bottom:0}
body.project-form-page .form-actions{margin:0;padding:14px 18px;border-top:1px solid var(--v5-line);background:#f4f7f9}

/* Project phase form: one continuous sheet without nested cards */
body.dashboard-page .project-phase-form.form-card{padding:0;overflow:hidden;background:#fff}
body.dashboard-page .project-phase-form.management-form{gap:0}
body.dashboard-page .project-phase-form .form-section{margin:0;padding:17px 18px;border:0;border-bottom:1px solid var(--v5-line);border-radius:0;background:#fff}
body.dashboard-page .project-phase-form .form-section:last-of-type{border-bottom:0}
body.dashboard-page .project-phase-form .form-actions{margin:0;padding:14px 18px;border-top:1px solid var(--v5-line);background:#f4f7f9}
.form-actions{margin-top:12px}.form-actions button{min-height:38px;border-radius:4px;background:var(--v5-blue)}
.settings-grid{gap:10px}.account-identity{padding:10px;border-radius:5px}.account-form button{min-height:38px;border-radius:4px;background:var(--v5-blue)}
.totp-qr-card{display:flex;align-items:center;flex-direction:column;margin:14px 0;padding:20px;border:1px solid var(--v5-line);border-radius:5px;background:#fff;text-align:center}
.totp-qr{width:248px;min-height:248px;display:grid;place-items:center;padding:12px;border:1px solid #dce2e7;border-radius:5px;background:#fff}
.totp-qr img,.totp-qr canvas{display:block;width:224px!important;height:224px!important;max-width:100%}
.totp-qr-card p{margin:12px 0 0;color:var(--v5-ink);font-weight:700}.totp-qr-card>span{margin-top:3px;color:var(--v5-muted);font-size:12px}

/* Árajánlat modul */
.quotes-page .quote-index-panel,.quote-form-page .quote-form-panel{padding:0;border:0;background:transparent}
.quote-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:10px;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-stats>div{display:flex;align-items:baseline;gap:8px;padding:13px 16px;border-right:1px solid var(--v5-line)}.quote-stats>div:last-child{border-right:0}.quote-stats strong{font-size:23px}.quote-stats span{color:var(--v5-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.quote-filters{display:grid;grid-template-columns:1.3fr 1fr .65fr auto;align-items:end;gap:10px;margin-bottom:10px;padding:13px;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-filters label{color:var(--v5-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.quote-filters input,.quote-filters select{width:100%;height:40px;margin-top:5px;padding:8px 10px;border:1px solid #cbd6df;border-radius:4px;background:#fff}.quote-filters button{height:40px;padding:0 18px;border:0;border-radius:4px;background:#111820;color:#fff}
.quote-list{overflow:hidden;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-list-row{display:grid;grid-template-columns:150px minmax(230px,1.2fr) 180px 180px 100px 24px;align-items:center;gap:14px;min-height:82px;padding:12px 15px;border-bottom:1px solid var(--v5-line);color:var(--v5-ink);text-decoration:none}.quote-list-row:last-child{border-bottom:0}.quote-list-row:hover{background:#f7fafc}.quote-list-number span,.quote-list-number small,.quote-list-project span,.quote-list-project small,.quote-list-date span,.quote-list-date small,.quote-list-value span,.quote-list-value small{display:block}.quote-list-number span{color:var(--brand-orange);font-weight:700}.quote-list-number small,.quote-list-project small,.quote-list-date span,.quote-list-date small,.quote-list-value span,.quote-list-value small{color:var(--v5-muted);font-size:11px}.quote-list-project strong{display:block}.quote-list-project span{margin-top:2px;font-size:12px}.quote-list-date strong,.quote-list-value strong{display:block;margin:2px 0;font-size:14px}.quote-list-row>b{color:var(--brand-orange);font-size:20px}
.quote-editor{overflow:hidden;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-editor-section{border-bottom:1px solid var(--v5-line)}.quote-header-fields{padding-bottom:17px}.quote-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:15px 18px}.quote-section-title h2{margin:0;font-size:17px}.quote-section-title p{margin:3px 0 0;color:var(--v5-muted);font-size:12px}.quote-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:0 18px}.quote-form-grid .span-2{grid-column:span 2}.quote-form-grid label,.quote-item-edit-row label,.quote-closing label{color:#525b65;font-size:12px}.quote-form-grid input,.quote-form-grid select,.quote-form-grid textarea,.quote-item-edit-row input,.quote-closing textarea{width:100%;min-height:40px;margin-top:5px;padding:8px 10px;border:1px solid #cbd6df;border-radius:4px;background:#fff}.quote-project-field{grid-column:span 2}.quote-project-field>a{display:inline-block;margin-top:5px;color:var(--v5-blue);font-size:11px;text-decoration:none}
.quote-catalog-picker{display:flex;gap:8px}.quote-catalog-picker select{width:min(500px,42vw);height:40px;padding:7px 9px;border:1px solid #cbd6df;border-radius:4px;background:#fff}.quote-catalog-picker button{height:40px;padding:0 14px;border:0;border-radius:4px;background:var(--brand-orange);color:#fff;white-space:nowrap}
.quote-item-editor{border-top:1px solid var(--v5-line)}.quote-item-edit-row{display:grid;grid-template-columns:22px minmax(270px,1.4fr) minmax(90px,.45fr) 90px 130px 92px 76px 130px 34px;align-items:end;gap:8px;padding:13px 14px;border-bottom:1px solid var(--v5-line);background:#fff}.quote-item-edit-row:nth-child(even){background:#fbfcfd}.quote-item-drag{align-self:center;color:#a9afb6}.quote-item-identity{display:grid;grid-template-columns:90px 1fr;gap:7px}.quote-item-identity .item-description{grid-column:1/-1}.quote-item-edit-row label{position:relative}.quote-item-edit-row label small{position:absolute;right:8px;bottom:11px;color:#8c939b}.quote-item-line-total{align-self:center;text-align:right}.quote-item-line-total span,.quote-item-line-total strong{display:block}.quote-item-line-total span{color:var(--v5-muted);font-size:10px;text-transform:uppercase}.quote-item-line-total strong{margin-top:4px;font-size:13px}.quote-item-remove{align-self:center;width:32px;height:32px;border:1px solid #e2bcbc;border-radius:4px;background:#fff;color:#b33e3e;font-size:19px}.quote-empty-items{padding:28px;color:var(--v5-muted);text-align:center;background:#fafbfc}.quote-empty-items[hidden]{display:none}
.quote-closing{display:grid;grid-template-columns:1fr 400px;gap:18px;padding:16px 18px}.quote-live-totals>div,.quote-totals>div{display:flex;justify-content:space-between;gap:24px;padding:7px 0;border-bottom:1px solid var(--v5-line)}.quote-live-totals span,.quote-totals span{color:var(--v5-muted)}.quote-live-totals .grand-total,.quote-totals .grand-total{margin-top:4px;padding:11px 12px;border:0;background:#111820;color:#fff}.quote-live-totals .grand-total span,.quote-totals .grand-total span{color:#c8d0d7}.quote-editor>.form-actions{margin:0;padding:14px 18px;background:#f4f7f9}
.quote-summary-note{align-self:center;max-width:520px}.quote-summary-note strong{font-size:14px}.quote-summary-note p{margin:5px 0 0;color:var(--v5-muted);font-size:12px}
.quote-detail-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.quote-detail-actions>div{display:flex;gap:8px}.quote-document{overflow:hidden;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-document-header{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;background:#0b1118;color:#fff}.quote-document-header img{width:260px}.quote-document-header>div{text-align:right}.quote-document-header span,.quote-document-header strong,.quote-document-header small{display:block}.quote-document-header span{color:var(--brand-orange);font-size:12px;letter-spacing:.15em}.quote-document-header strong{font-size:24px}.quote-document-header small{color:#9ca5af}.quote-document-parties{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--v5-line)}.quote-document-parties>div{padding:18px 26px;border-right:1px solid var(--v5-line)}.quote-document-parties>div:last-child{border-right:0}.quote-document-parties small,.quote-document-parties strong,.quote-document-parties span{display:block}.quote-document-parties small,.quote-document-meta small,.quote-terms small{color:var(--v5-muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.quote-document-parties strong{margin:5px 0}.quote-document-parties span{color:#68717b;font-size:12px}.quote-document-meta{display:grid;grid-template-columns:2fr repeat(3,1fr);border-bottom:1px solid var(--v5-line)}.quote-document-meta>div{padding:13px 18px;border-right:1px solid var(--v5-line)}.quote-document-meta>div:last-child{border-right:0}.quote-document-meta small,.quote-document-meta strong{display:block}.quote-document-meta strong{margin-top:4px;font-size:13px}.quote-document-table-wrap{overflow-x:auto}.quote-document-table{width:100%;border-collapse:collapse}.quote-document-table th{padding:10px;background:#eef2f5;color:#59626c;font-size:10px;text-align:left;text-transform:uppercase}.quote-document-table td{padding:12px 10px;border-bottom:1px solid var(--v5-line);font-size:12px;vertical-align:top}.quote-document-table td>strong,.quote-document-table td>small{display:block}.quote-document-table td>small{margin-top:2px;color:var(--brand-orange)}.quote-document-table td>p{margin:4px 0 0;color:#707985;font-size:11px}.quote-document-bottom{display:grid;grid-template-columns:1fr 390px;gap:28px;padding:20px 26px}.quote-terms>div{margin-bottom:14px}.quote-terms strong{display:block;margin-top:4px}.quote-terms p{margin:4px 0;color:#5d6670}.quote-document-footer{display:flex;justify-content:space-between;padding:14px 26px;background:#0b1118;color:#fff;font-size:12px}.quote-document-footer strong{color:var(--brand-orange)}.quote-status-bar{display:flex;align-items:end;justify-content:flex-end;gap:9px;margin-top:10px;padding:12px;border:1px solid var(--v5-line);border-radius:5px;background:#fff}.quote-status-bar label{color:var(--v5-muted);font-size:11px}.quote-status-bar select{display:block;min-width:180px;height:38px;margin-top:4px;border:1px solid #cbd6df;border-radius:4px}.quote-status-bar button{height:38px;border:0;border-radius:4px;background:var(--v5-blue);color:#fff}
.status-pill.kikuldve{background:#e7f0f7;color:#315f82}.status-pill.elfogadva{background:#e7f5ed;color:#26704e}.status-pill.elutasitva{background:#faeaea;color:#9a3939}.status-pill.lejart{background:#ececef;color:#626771}

@media(max-width:1150px){.quote-list-row{grid-template-columns:135px minmax(220px,1fr) 150px 150px 90px 20px}.quote-item-edit-row{grid-template-columns:20px minmax(240px,1.4fr) 90px 80px 115px 85px 70px 115px 32px}.quote-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.quote-stats{grid-template-columns:repeat(2,1fr)}.quote-stats>div:nth-child(2){border-right:0}.quote-stats>div:nth-child(-n+2){border-bottom:1px solid var(--v5-line)}.quote-filters{grid-template-columns:1fr 1fr}.quote-filters button{grid-column:1/-1}.quote-list-row{grid-template-columns:120px minmax(220px,1fr) 145px 90px 20px}.quote-list-date{display:none}.quote-item-editor{overflow-x:auto}.quote-item-edit-row{min-width:1000px}.quote-closing,.quote-document-bottom{grid-template-columns:1fr}.quote-document-meta{grid-template-columns:1fr 1fr}.quote-document-meta>div:nth-child(2){border-right:0}.quote-document-parties{grid-template-columns:1fr}.quote-document-parties>div{border-right:0;border-bottom:1px solid var(--v5-line)}.quote-document-parties>div:last-child{border-bottom:0}}
@media(max-width:600px){.quote-stats{grid-template-columns:1fr 1fr}.quote-filters,.quote-form-grid{grid-template-columns:1fr}.quote-project-field,.quote-form-grid .span-2{grid-column:auto}.quote-list-row{grid-template-columns:1fr auto 18px;gap:8px}.quote-list-number{grid-column:1}.quote-list-project{grid-column:1}.quote-list-value{grid-column:2;grid-row:1/3;text-align:right}.quote-list-row>.status-pill{grid-column:1}.quote-list-row>b{grid-column:3;grid-row:1/4}.quote-catalog-picker{align-items:stretch;flex-direction:column;width:100%}.quote-catalog-picker select{width:100%}.quote-section-title{align-items:stretch;flex-direction:column}.quote-item-editor{overflow:visible}.quote-item-edit-row{min-width:0;grid-template-columns:1fr 1fr;padding:14px}.quote-item-drag{display:none}.quote-item-identity{grid-column:1/-1}.quote-item-edit-row>label{grid-column:auto}.quote-item-line-total{grid-column:1;text-align:left}.quote-item-remove{grid-column:2;justify-self:end}.quote-closing{padding:14px}.quote-detail-actions{align-items:stretch;flex-direction:column;gap:8px}.quote-detail-actions>div>*{flex:1}.quote-document-header{align-items:flex-start;flex-direction:column;gap:14px}.quote-document-header img{width:210px}.quote-document-header>div{text-align:left}.quote-document-meta{grid-template-columns:1fr}.quote-document-meta>div{border-right:0;border-bottom:1px solid var(--v5-line)}.quote-document-bottom{padding:16px}.quote-status-bar{align-items:stretch;flex-direction:column}.quote-status-bar select{width:100%}}

@media print{body.quote-detail-page{background:#fff}.quote-detail-page .app-topbar,.quote-detail-page .app-sidebar,.quote-detail-page .sidebar-backdrop,.quote-detail-page .project-context-bar,.quote-detail-page .app-footer,.quote-detail-page .no-print{display:none!important}.quote-detail-page .app-shell,.quote-detail-page .app-content-area{display:block!important}.quote-detail-page main.content{width:100%!important;padding:0!important}.quote-document{border:0}.quote-document-header,.quote-document-footer,.quote-live-totals .grand-total,.quote-totals .grand-total{print-color-adjust:exact;-webkit-print-color-adjust:exact}.quote-document-table{font-size:10px}.quote-document-table th,.quote-document-table td{padding:7px}}
.manual-totp-key{margin-top:12px;padding:12px 14px;border:1px solid var(--v5-line);border-radius:5px;background:#f6f8fa}.manual-totp-key summary{cursor:pointer;color:var(--v5-blue);font-weight:700}.manual-totp-key p{margin:12px 0 8px;color:var(--v5-muted);font-size:13px}.manual-totp-key .secret-box{padding:12px;background:#fff}.manual-totp-key .secret-box code{font-size:15px}
.panel{padding:16px}.empty-state,.empty-panel{padding:30px 20px;border-radius:5px;background:#fff}

/* Belépés: szerkesztett arculati felület, külön munkaterülettel. */
body.login-page{min-height:100vh;min-height:100svh;padding:36px 24px;gap:22px;background:#303236;color:#f4f5f6}
body.login-page::before,body.login-page::after{content:none}
.login-layout{display:grid;grid-template-columns:1.15fr 1fr;width:min(920px,100%);margin:auto 0 0;border:1px solid #303438;background:#141719}
.login-brand-scene{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:38px;min-width:0;padding:34px;background:#0c0e10;border-right:1px solid #303438}
.login-logo{display:block;width:190px;max-width:100%;height:auto}
.login-brand-caption{font-size:10px;color:var(--brand-orange);letter-spacing:.2em}
.login-brand-message h2{margin:18px 0;font-size:clamp(30px,3.4vw,44px);line-height:1.12;letter-spacing:-.045em;font-weight:700}
.login-brand-message h2 em{font-style:normal;color:var(--brand-orange)}
.login-brand-message p{margin:0;color:#a3a8ae;font-size:12px;line-height:1.6}
.login-brand-baseline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid #303438;color:#9ba1a8;font-size:9px;letter-spacing:.09em}
.login-brand-baseline>span:last-child{font-size:28px;color:var(--brand-orange);line-height:1}
.login-panel{align-self:center;min-width:0;padding:38px;border:0;border-radius:0;background:transparent;color:#f5f6f7;box-shadow:none}
.login-heading{text-align:left;margin-bottom:28px}
.login-eyebrow{margin-bottom:7px;font-size:10px;letter-spacing:.12em}
.login-heading h1{font-size:30px;line-height:1.2;letter-spacing:-.04em;text-transform:none;color:#fff}
.login-heading p{margin:7px 0 0;font-size:13px;line-height:1.5;color:#aab0b7}
.login-form label{margin:14px 0 6px;font-size:12px;color:#c6cbd1}
.login-form input{height:46px;padding:0 12px 0 38px;border:1px solid #454b52;border-radius:3px;background:#101214;color:#fff;font-size:16px;box-shadow:none;color-scheme:dark}
.login-form input:hover{border-color:#707780}
.login-form input:focus{border-color:var(--brand-orange);box-shadow:none}
.login-page .input-wrap svg{left:12px;width:17px;height:17px;stroke:var(--brand-orange);stroke-width:1.4}
.login-form button{display:flex;align-items:center;justify-content:space-between;height:46px;padding:0 16px;margin-top:24px;border:1px solid var(--brand-orange);border-radius:3px;background:var(--brand-orange);color:#101214;font-size:14px;font-weight:700;box-shadow:none}
.login-form button:hover{background:#ff6a36;border-color:#ff6a36}
.login-form button:focus-visible,.login-back-link:focus-visible{outline:1px solid #f4f5f6;outline-offset:3px}
.login-form .code-input{padding:0 12px;font-size:22px}
.login-back-link{margin-top:16px;color:#aab0b7;font-size:12px}
.login-page .trusted-device-option{color:#bcc2c9!important}.login-page .trusted-device-option small{color:#aab0b7}
.login-page .error{padding:10px 12px;border:1px solid #a45e53;border-radius:0;background:transparent;color:#ffc0b5;font-size:13px;box-shadow:none}
.app-footer.login-footer{width:min(920px,100%);margin:0 0 auto;padding:0;color:#a9afb7;font-size:10px}
@media(max-width:680px){body.login-page{padding:24px 16px;gap:18px}.login-layout{grid-template-columns:1fr;width:min(400px,100%)}.login-brand-scene{padding:24px;gap:0;border-right:0;border-bottom:1px solid #303438}.login-brand-scene .login-logo{width:170px}.login-brand-message,.login-brand-baseline{display:none}.login-panel{padding:28px 24px}.login-heading{margin-bottom:22px}.login-heading h1{font-size:28px}}

/* Reszponzív */
@media(max-width:1100px){
    .app-motto.header-motto{font-size:12px}.global-search{width:min(340px,32vw)}
    body.portfolio-page .portfolio-metrics{grid-template-columns:repeat(2,1fr)}
    .project-portfolio-row{grid-template-columns:38px minmax(180px,.9fr) minmax(270px,1.1fr) minmax(140px,.5fr) 24px}.project-row-facts{grid-template-columns:1fr 1fr}.project-row-facts>div:last-child{display:none}.project-row-actions a{display:none}
}
@media(max-width:900px){
    body.dashboard-page .app-shell,.app-shell{display:block;min-height:calc(100vh - 60px)}
    body.dashboard-page .app-topbar,.app-topbar{height:60px;padding:0 10px}
    .sidebar-toggle{display:grid}.app-motto.header-motto,.global-search{display:none}.app-brand.header-logo{margin-right:auto}
    body.dashboard-page .app-sidebar,.app-sidebar{position:fixed;top:60px;left:0;width:min(250px,calc(100vw - 24px));height:calc(100vh - 60px);transform:translateX(-102%);box-shadow:12px 0 30px rgba(2,13,23,.28)}
    body.dashboard-page.sidebar-open .app-sidebar{transform:translateX(0)}
    body.dashboard-page.sidebar-open .sidebar-backdrop{position:fixed;inset:60px 0 0;z-index:850;display:block;background:rgba(4,14,23,.5)}
    body.dashboard-page .content,body.dashboard-page .wide-content,body.dashboard-page .dashboard-main,.content,.wide-content,.dashboard-main{padding:12px}
    body.portfolio-page .portfolio-dashboard{padding:12px}
    body.portfolio-page .portfolio-grid{grid-template-columns:1fr}.project-status-strip{grid-template-columns:repeat(2,1fr)}
    .project-toolbar,.service-filters{grid-template-columns:1fr 180px auto}.project-portfolio-row{grid-template-columns:38px minmax(0,1fr) 20px}.project-row-facts,.project-row-progress{grid-column:2/4}.project-row-actions{grid-column:3;grid-row:1}
    .detail-grid,.settings-grid{grid-template-columns:1fr}.definition-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
    .topbar-profile>span{display:none}.topbar-profile i{width:36px;height:36px}
    body.portfolio-page .portfolio-metrics{grid-template-columns:1fr 1fr;gap:7px}body.portfolio-page .metric-card{min-height:82px;padding:11px}.metric-icon{display:none}
    body.portfolio-page .portfolio-hero,body.dashboard-page:not(.portfolio-page) .page-heading,body.dashboard-page:not(.portfolio-page) .module-header,body.projects-page .projects-heading{align-items:flex-start;flex-direction:column}
    .project-toolbar,.service-filters,.filters-bar{display:grid;grid-template-columns:1fr}.project-toolbar button,.service-filters button,.filters-bar button{width:100%}
    .project-status-strip{grid-template-columns:1fr 1fr}.project-portfolio-row{padding:10px}.project-row-facts{grid-template-columns:1fr}.project-row-facts>div:last-child{display:none}
    .worker-list-row{grid-template-columns:44px minmax(0,1fr);gap:9px}.worker-list-contact{grid-column:2}.worker-list-row .status-badge{grid-column:1}.row-arrow{grid-column:2}
    .management-form-grid,.form-grid,.definition-grid,.data-grid,.settings-grid{grid-template-columns:1fr}.management-form-grid .span-2,.form-grid .span-2{grid-column:auto}
    body.worker-detail-page .worker-top.detail-top{align-items:flex-start;flex-direction:column}.project-context-inner{padding-inline:10px}
}

/* Geometriai paritás: minden modul ugyanazt a keretet kapja, mint az Áttekintés */
body.dashboard-page:not(.portfolio-page) .app-shell{
    display:grid;grid-template-columns:184px minmax(0,1fr);gap:0;height:auto;min-height:calc(100vh - 64px);padding:0;
}
body.dashboard-page:not(.portfolio-page) .app-sidebar{
    position:sticky;top:64px;left:auto;width:184px;height:calc(100vh - 64px);transform:none;
}
body.dashboard-page:not(.portfolio-page) .app-content-area{min-height:calc(100vh - 64px)}
body.dashboard-page:not(.portfolio-page) .content,
body.dashboard-page:not(.portfolio-page) .wide-content,
body.dashboard-page:not(.portfolio-page) .dashboard-main,
body.dashboard-page.projects-page .projects-index,
body.dashboard-page.services-page .content,
body.dashboard-page.workers-index-page .content,
body.dashboard-page.worker-detail-page .content,
body.dashboard-page.project-detail-page main{
    width:100%;margin:0;padding:14px 16px 22px!important;
}
body.dashboard-page:not(.portfolio-page) .project-context-bar{margin:0}

@media(max-width:900px){
    body.dashboard-page:not(.portfolio-page) .app-shell{display:block;min-height:calc(100vh - 60px)}
    body.dashboard-page:not(.portfolio-page) .app-sidebar{
        position:fixed;top:60px;left:0;width:min(250px,calc(100vw - 24px));height:calc(100vh - 60px);transform:translateX(-102%);
    }
    body.dashboard-page:not(.portfolio-page).sidebar-open .app-sidebar{transform:translateX(0)}
    body.dashboard-page:not(.portfolio-page) .content,
    body.dashboard-page:not(.portfolio-page) .wide-content,
    body.dashboard-page:not(.portfolio-page) .dashboard-main,
    body.dashboard-page.projects-page .projects-index,
    body.dashboard-page.services-page .content,
    body.dashboard-page.workers-index-page .content,
    body.dashboard-page.worker-detail-page .content,
    body.dashboard-page.project-detail-page main{padding:12px!important}
    body.worker-form-page .form-section{padding:14px}
    body.worker-form-page .form-actions{padding:12px 14px}
    body.user-form-page .form-section{padding:14px}
    body.user-form-page .form-actions{padding:12px 14px}
    body.project-form-page .form-section{padding:14px}
    body.project-form-page .form-actions{padding:12px 14px}
    .worker-document-upload{grid-template-columns:1fr 1fr}.worker-document-file,.worker-document-notes{grid-column:span 1}.worker-document-upload button{grid-column:1/-1}
}
@media(max-width:600px){.worker-documents-heading{padding:15px}.worker-document-upload{grid-template-columns:1fr;padding:13px 15px}.worker-document-file,.worker-document-notes,.worker-document-upload button{grid-column:auto}.worker-document-row{grid-template-columns:40px minmax(0,1fr);padding:13px 15px}.worker-document-icon{width:40px;height:40px}.worker-document-actions{grid-column:2;align-items:flex-start;flex-wrap:wrap}}
