:root{--bg:#f3f6fa;--panel:#fff;--ink:#15233a;--muted:#667085;--line:#dce3ec;--brand:#005f73;--brand2:#0a9396;--accent:#ee9b00;--danger:#b42318;--success:#027a48;--shadow:0 12px 35px rgba(25,42,70,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink)}button,input,select,textarea{font:inherit}.topbar{background:linear-gradient(120deg,#082f49,#0f766e);color:#fff;padding:24px 4vw;display:flex;justify-content:space-between;gap:24px;align-items:center}.brand-lockup{display:flex;align-items:center;gap:16px}.brand-mark{width:52px;height:52px;border:1px solid rgba(255,255,255,.35);border-radius:14px;display:grid;place-items:center;font-weight:900;font-size:21px;background:rgba(255,255,255,.1)}.topbar h1{margin:2px 0 4px;font-size:clamp(24px,3vw,38px)}.topbar p{margin:0;color:#dbeafe}.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:800;color:#99f6e4}.header-actions,.inline-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.tabs{padding:0 4vw;background:#fff;border-bottom:1px solid var(--line);display:flex;gap:4px;overflow:auto}.tab{border:0;background:transparent;padding:15px 16px;font-weight:800;color:#5b677a;cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}.tab.active{color:var(--brand);border-bottom-color:var(--brand2)}.count{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e8f3f4;color:var(--brand);font-size:11px;margin-left:4px}.tab-page{display:none}.tab-page.active{display:block}.layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(360px,.8fr);gap:24px;padding:24px 4vw 50px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.form-panel{padding:26px}.preview-panel{padding:20px}.preview-sticky{position:sticky;top:20px}.database-page{padding:24px 4vw 50px}.page-panel{padding:26px;min-height:520px}.page-panel.narrow{max-width:1050px;margin:auto}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.page-head h2{margin:0 0 5px}.page-head p{margin:0;color:var(--muted)}
h2{font-size:18px;margin:30px 0 14px}.form-panel h2:first-of-type{margin-top:0}.block-title{margin-top:28px}.block-title h2{margin:0}.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.grid{display:grid;gap:14px}.grid-1{grid-template-columns:1fr}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-3{grid-column:span 3}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#475467}input,select,textarea{width:100%;border:1px solid #cfd8e3;border-radius:9px;padding:10px 11px;color:#182230;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--brand2);box-shadow:0 0 0 3px rgba(10,147,150,.12)}textarea{resize:vertical}.inline-actions select{min-width:230px}.search{max-width:440px}
.btn{border:0;border-radius:9px;padding:11px 15px;font-weight:800;cursor:pointer}.btn-primary{background:var(--brand);color:#fff}.btn-secondary{background:#e8f3f4;color:#075c62}.btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.25)}.btn-small{padding:8px 11px;font-size:12px}.btn-danger{background:#fff0ee;color:var(--danger)}.status{font-size:12px;color:var(--muted)}.pill{font-size:11px;background:#e7f7f4;color:#087068;border-radius:999px;padding:6px 9px;font-weight:800}.badge{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;background:#eef2f6;color:#475467}.badge.accepted{background:#ecfdf3;color:#027a48}.badge.sent{background:#eff8ff;color:#175cd3}.badge.rejected{background:#fef3f2;color:#b42318}
.item-card{border:1px solid var(--line);background:#fbfcfe;border-radius:13px;padding:16px;margin-bottom:12px}.item-head{display:flex;justify-content:space-between;margin-bottom:12px}.remove-item{background:none;border:0;color:var(--danger);font-weight:700;cursor:pointer}.quote-preview{border:1px solid var(--line);border-radius:12px;padding:20px;min-height:460px;background:#fff}.preview-logo{font-size:21px;font-weight:900;color:var(--brand);letter-spacing:.04em}.preview-meta{font-size:12px;color:var(--muted);margin:5px 0 20px}.preview-client{background:#f6f9fc;border-radius:10px;padding:12px;margin-bottom:16px}.preview-table{width:100%;border-collapse:collapse;font-size:12px}.preview-table th,.preview-table td{border-bottom:1px solid #e5e9ef;padding:9px 5px;text-align:left}.preview-table th{text-transform:uppercase;font-size:10px;color:#667085}.preview-table td.num,.preview-table th.num{text-align:right}.totals{margin-top:14px;margin-left:auto;width:min(100%,320px)}.totals-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px}.totals-row.grand{border-top:2px solid var(--brand);margin-top:6px;padding-top:10px;font-size:17px;font-weight:900}.preview-text{font-size:12px;line-height:1.55;color:#344054;white-space:pre-wrap}.preview-footer{border-top:1px solid var(--line);margin-top:18px;padding-top:12px;font-size:10px;color:var(--muted)}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.data-list{display:grid;gap:10px}.data-row{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(120px,.6fr)) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}.data-row strong{display:block}.data-row small{color:var(--muted)}.row-actions{display:flex;gap:7px;justify-content:flex-end}.empty{border:1px dashed #cfd8e3;border-radius:14px;padding:40px;text-align:center;color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.catalog-card{border:1px solid var(--line);border-radius:13px;padding:15px;background:#fbfcfe}.catalog-card .grid{margin-bottom:10px}.catalog-actions{display:flex;justify-content:flex-end;gap:8px}
@media(max-width:1200px){.layout{grid-template-columns:1fr}.preview-sticky{position:static}.grid-4{grid-template-columns:repeat(2,1fr)}.data-row{grid-template-columns:1fr 1fr}.row-actions{justify-content:flex-start}.catalog-grid{grid-template-columns:1fr}}@media(max-width:700px){.topbar,.page-head{align-items:flex-start;flex-direction:column}.brand-lockup{align-items:flex-start}.grid-2,.grid-4,.export-actions,.data-row{grid-template-columns:1fr}.span-3{grid-column:auto}.layout,.database-page{padding:14px}.form-panel,.page-panel{padding:18px}.inline-actions{width:100%}.inline-actions select{min-width:0}.tabs{padding:0 10px}}

.client-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(360px,1.15fr);gap:22px;align-items:start}.client-history{border:1px solid #d8e2e4;border-radius:14px;background:#f8fbfb;padding:18px;position:sticky;top:18px;min-height:280px}.history-section{margin-top:18px}.history-card{background:#fff;border:1px solid #d8e2e4;border-radius:10px;padding:12px;margin:8px 0}.history-card strong{display:block}.history-meta{font-size:.88rem;color:#5f6f76;margin-top:4px}.empty-state{text-align:center;padding:42px 18px;color:#66767d}.item-card .item-instrument{font-weight:600}.document-note{font-size:8.5pt;color:#52626a}@media(max-width:900px){.client-layout{grid-template-columns:1fr}.client-history{position:static}}
.request-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.request-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.request-service{display:inline-block;margin:12px 0 8px;color:var(--brand);font-weight:900}.request-details{font-weight:700;color:#25384b;white-space:pre-wrap}.request-message{margin-top:10px;padding:10px 12px;background:#f5f8fa;border-radius:9px;color:#536273;white-space:pre-wrap}.request-actions{display:flex;flex-direction:column;gap:9px;min-width:180px}.request-actions select{padding:8px}.premium-render-host{position:fixed;left:-100000px;top:0;width:794px;background:white;z-index:-1}.pq-page{width:794px;min-height:1123px;background:#fff;color:#173049;font-family:Arial,Helvetica,sans-serif;padding:42px 48px 35px;position:relative;overflow:hidden}.pq-accent{position:absolute;left:0;top:0;width:14px;height:100%;background:linear-gradient(#087f83,#0b5e75 55%,#d7a246)}.pq-page header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d8e4e6;padding-bottom:18px}.pq-brand{display:flex;align-items:center;gap:14px}.pq-mark{width:48px;height:48px;border-radius:12px;background:#0b6f74;display:flex;gap:4px;align-items:flex-end;justify-content:center;padding:11px}.pq-mark span{display:block;width:6px;background:#fff;border-radius:3px 3px 0 0}.pq-mark span:nth-child(1){height:17px}.pq-mark span:nth-child(2){height:28px;background:#d7a246}.pq-mark span:nth-child(3){height:22px}.pq-name{font-size:25px;font-weight:900;letter-spacing:.2px;color:#102c44}.pq-sub{font-size:8px;letter-spacing:1.6px;color:#6b7f8f;margin-top:4px}.pq-doc{text-align:right;font-size:10px;letter-spacing:1.1px;color:#758695}.pq-doc b{display:block;font-size:15px;letter-spacing:0;color:#102c44;margin-top:5px}.pq-hero{margin:24px 0 0;background:linear-gradient(120deg,#eef7f6,#f8fbfb);border-radius:15px;padding:25px 27px;display:grid;grid-template-columns:1fr 130px;gap:25px;align-items:center}.pq-kicker,.pq-section-label{font-size:9px;font-weight:900;letter-spacing:1.5px;color:#0b6f74}.pq-hero h1{font-size:29px;line-height:1.08;margin:7px 0 11px;color:#102c44}.pq-hero p{margin:0;font-size:11px;line-height:1.55;color:#536a7d}.pq-badge{width:112px;height:112px;border-radius:50%;background:#0b6f74;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border:7px solid #d6eeeb;box-shadow:0 0 0 2px #0b6f74}.pq-badge span{font-size:10px}.pq-badge b{font-size:25px;line-height:1.15}.pq-badge small{font-size:7px;color:#d9f2ee;margin-top:5px}.pq-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:16px 0;border:1px solid #d8e4e6;border-radius:11px;overflow:hidden}.pq-meta>div{padding:12px;border-right:1px solid #d8e4e6}.pq-meta>div:last-child{border:0}.pq-meta span,.pq-conditions span{font-size:8px;text-transform:uppercase;letter-spacing:.8px;color:#7a8c99;display:block;margin-bottom:5px}.pq-meta b,.pq-conditions b{font-size:10px;color:#183349}.pq-client{padding:15px 0 4px}.pq-client-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;margin-top:8px;background:#f7f9fa;border-radius:10px;padding:16px}.pq-client h2{font-size:16px;margin:0 0 7px}.pq-client p{font-size:9.5px;line-height:1.55;margin:0;color:#566b7c}.pq-table-wrap{margin-top:18px}.pq-table-wrap table{width:100%;border-collapse:collapse;margin-top:8px;table-layout:fixed}.pq-table-wrap th{background:#0b6f74;color:white;text-align:left;padding:10px 9px;font-size:8px;text-transform:uppercase;letter-spacing:.45px}.pq-table-wrap th:first-child{width:35px}.pq-table-wrap th:nth-child(3){width:52px}.pq-table-wrap th:nth-child(4),.pq-table-wrap th:nth-child(5){width:105px}.pq-table-wrap td{padding:11px 9px;border-bottom:1px solid #dce5e8;font-size:9px;vertical-align:top}.pq-table-wrap tbody tr:nth-child(even){background:#f9fbfb}.pq-table-wrap .idx{font-weight:900;color:#0b6f74}.pq-table-wrap .model{color:#506879;margin-top:3px}.pq-table-wrap .service{color:#0b6f74;font-weight:800;margin-top:5px}.pq-table-wrap .detail{font-size:8px;color:#768693;margin-top:4px}.pq-table-wrap .num{text-align:right}.pq-table-wrap .strong{font-weight:900;color:#102c44}.pq-summary{display:grid;grid-template-columns:1fr 285px;gap:16px;margin-top:18px}.pq-conditions{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#f6f9fa;border-radius:10px;padding:14px}.pq-totals{background:#102c44;color:white;border-radius:11px;padding:13px 15px}.pq-totals>div{display:flex;justify-content:space-between;font-size:9px;padding:5px 0;color:#d8e5ec}.pq-totals .gross{border-top:1px solid #4c6173;margin-top:5px;padding-top:10px;color:#fff}.pq-totals .gross b{font-size:14px;color:#efc36e}.pq-notes{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:21px}.pq-notes>div{border-top:3px solid #0b6f74;padding-top:9px}.pq-notes h3{font-size:9px;letter-spacing:1px;color:#0b6f74;margin:0 0 7px}.pq-notes p{font-size:8.5px;line-height:1.55;color:#5d7080;margin:0}.pq-page footer{position:absolute;left:48px;right:48px;bottom:25px;border-top:1px solid #d8e4e6;padding-top:12px;display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#6c7f8c}.pq-sign{text-align:right}.pq-sign span{display:block;color:#102c44;font-weight:900;font-size:9px}.pq-sign small{display:block;margin-top:3px}@media(max-width:700px){.request-card{grid-template-columns:1fr}.request-actions{min-width:0}}


/* v11.1 stable application shell */
#appView{min-height:100vh}
.topbar{position:sticky;top:0;z-index:60;padding:16px 3vw;background:linear-gradient(120deg,#082f49,#0f766e);box-shadow:0 5px 18px rgba(8,47,73,.16)}
.topbar .brand-lockup{display:flex}.topbar h1{font-size:24px;margin:0 0 3px}.topbar p{font-size:13px}.topbar .brand-mark{width:46px;height:46px}.header-actions{margin-left:auto}
.mobile-nav-btn{display:none!important}
.tabs{position:sticky;top:78px;z-index:55;padding:0 3vw;background:#fff;border-bottom:1px solid var(--line);display:flex;flex-direction:row;gap:3px;overflow-x:auto;overflow-y:hidden;box-shadow:0 3px 12px rgba(25,42,70,.05)}
.tabs:before,.nav-section-label,.nav-footer{display:none!important}
.tab{width:auto;flex:0 0 auto;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:13px 14px;display:flex;align-items:center;gap:8px;text-align:left;color:#526172;font-size:13px;font-weight:800;white-space:nowrap;cursor:pointer}
.tab:before{content:attr(data-icon);width:23px;height:23px;border-radius:6px;display:grid;place-items:center;background:#edf4f5;color:#0b6f74;font-size:12px;flex:0 0 23px}
.tab:hover{background:#f4f8f9;color:#0b6f74}.tab.active{color:#0b6f74;border-bottom-color:#0a9396;background:#f7fbfb}.tab.active:before{background:#dff4f2}
main{margin-left:0}.nav-backdrop{display:none!important}
.layout,.database-page{padding:22px 3vw 54px;max-width:1900px;margin:0 auto}.layout{grid-template-columns:minmax(520px,1fr) minmax(420px,720px);align-items:start}
.page-head,.form-panel>.section-title-row:first-child{position:static;margin:0 0 22px;padding:0;border:0;background:transparent;backdrop-filter:none}
.preview-panel{overflow:hidden}.preview-sticky{position:sticky;top:145px}
#preview{width:100%;overflow:hidden;background:#e9eef2;border:1px solid #d5dee5;border-radius:12px;padding:14px;min-height:420px}
.live-doc-canvas{position:relative;width:100%;overflow:hidden}.live-doc-page{width:794px;transform-origin:top left}.live-doc-page .pq-page{box-shadow:0 8px 28px rgba(25,42,70,.18)}
.preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.preview-toolbar small{color:var(--muted)}
.unsaved-indicator{color:#b54708!important;font-weight:800}
@media(max-width:1250px){.layout{grid-template-columns:1fr}.preview-sticky{position:static}.preview-panel{order:-1}.preview-panel .export-actions{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.topbar{position:static;align-items:flex-start;flex-direction:column;gap:12px}.header-actions{margin-left:0;width:100%}.tabs{top:0}.layout,.database-page{padding:14px}.preview-panel .export-actions{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.topbar p{display:none}.topbar .header-actions{gap:7px}.topbar .btn{padding:9px 10px}.tabs{padding:0 8px}.tab{padding:11px 10px}.tab:before{display:none}.preview-panel .export-actions{grid-template-columns:1fr}}
/* v11.2: the preview is the actual html2canvas render used by PDF generation. */
#preview{display:flex;align-items:flex-start;justify-content:center;max-height:calc(100vh - 255px);overflow:auto}
.live-preview-canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 8px 28px rgba(25,42,70,.18)}
.live-preview-render-host{pointer-events:none}

/* v11.3 */
.template-editor{display:grid;gap:16px;margin-top:16px}.email-template-card{border:1px solid var(--line);border-radius:14px;background:#f9fbfc;padding:16px}.email-template-card textarea{font-family:inherit}.modal-card .grid{margin-bottom:8px}


/* v11.4 jogosultság- és importközpont */
.role-card{background:#fff;border:1px solid #d8e2e4;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 6px 20px rgba(16,44,68,.05)}
.role-head{border-bottom:1px solid #e4ecee;padding-bottom:14px;margin-bottom:12px}.permission-group{padding:10px 0}.permission-group h4{margin:0 0 8px;color:#102c44}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.permission-item{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;padding:9px 11px;background:#f5f9fa;border-radius:9px;font-weight:500!important}.permission-item input{width:18px;height:18px;margin:0}.import-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.import-card,.import-help{border:1px solid #d8e2e4;border-radius:14px;padding:18px;background:#fff}.import-preview{margin:18px 0}.table-scroll{overflow:auto;border:1px solid #d8e2e4;border-radius:12px}.import-table{width:100%;border-collapse:collapse;font-size:.86rem;white-space:nowrap}.import-table th{background:#102c44;color:#fff;text-align:left;padding:9px}.import-table td{padding:8px 9px;border-bottom:1px solid #e4ecee}.import-table tr:nth-child(even){background:#f8fbfb}@media(max-width:900px){.permission-grid{grid-template-columns:1fr 1fr}.import-grid{grid-template-columns:1fr}}@media(max-width:580px){.permission-grid{grid-template-columns:1fr}}

.registry-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.9fr);gap:22px}.registry-layout .client-history{position:sticky;top:20px;align-self:start}.registry-layout small{display:block;color:#6b7c8f;margin-top:4px}@media(max-width:1000px){.registry-layout{grid-template-columns:1fr}.registry-layout .client-history{position:static}}

/* v13 megrendelés modul */
.order-modal-card{width:min(1180px,96vw)}.order-item-editor{display:grid;gap:14px;max-height:55vh;overflow:auto;padding-right:6px}.order-item-card{border:1px solid #d8e5ef;border-radius:14px;padding:14px;background:#fbfdff}.order-item-title,.order-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.order-detail-head h3{font-size:1.65rem;margin:4px 0}.eyebrow{font-size:.72rem;letter-spacing:.14em;color:#1769aa;font-weight:800}.order-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.order-meta-grid>div{padding:12px;background:#f2f7fc;border-radius:10px}.order-meta-grid span{display:block;font-size:.75rem;color:#64778a;margin-bottom:4px}.order-ordered{background:#e9f2fb;color:#155b91}.order-received{background:#fff5db;color:#8a5a00}.order-preparation{background:#f1eaff;color:#6540a4}.order-calibration{background:#e4f1ff;color:#075f9f}.order-quality{background:#e8f8f0;color:#176c47}.order-ready{background:#def6e8;color:#0e6c3b}.order-delivered{background:#e7edf2;color:#425466}.order-cancelled{background:#fdeaea;color:#9b2424}@media(max-width:800px){.order-meta-grid{grid-template-columns:1fr}.order-modal-card .grid-4{grid-template-columns:1fr}}

/* v14.0 – LightingLab premium usability system */
:root{
 --bg:#f4f7fb;--panel:#fff;--ink:#10233d;--muted:#66758a;--line:#d9e3ef;
 --brand:#075ea8;--brand2:#2d8cff;--brand-dark:#073b6f;--brand-soft:#eaf3ff;
 --accent:#f2a43a;--danger:#b42318;--success:#087443;--warning:#a15c00;
 --shadow:0 14px 36px rgba(15,55,95,.09);--shadow-soft:0 6px 20px rgba(15,55,95,.07)
}
body{background:linear-gradient(180deg,#f8fbff 0,#f3f6fa 320px);min-height:100vh}
.topbar{background:linear-gradient(115deg,#073b6f 0%,#075ea8 58%,#126fbd 100%);border-bottom:1px solid rgba(255,255,255,.12)}
.topbar .eyebrow{color:#b9ddff}.brand-mark{background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.08));box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.tabs{border-bottom:1px solid #d6e2ef;box-shadow:0 5px 18px rgba(17,60,102,.07)}
.tab:before{background:#eaf3ff;color:#075ea8}.tab:hover{background:#f0f6fd;color:#075ea8}.tab.active{color:#075ea8;border-bottom-color:#2d8cff;background:#f6faff}.tab.active:before{background:#dcecff;color:#075ea8}
.panel{border-color:#d9e3ef;box-shadow:var(--shadow);overflow:visible}.page-panel,.form-panel,.preview-panel{background:rgba(255,255,255,.98)}
.page-head{padding-bottom:17px!important;border-bottom:1px solid #e5ecf4!important}.page-head h2{font-size:1.4rem;color:#0d3157}.page-head p{line-height:1.5}
.btn{transition:transform .15s ease,box-shadow .15s ease,background .15s ease;border-radius:10px}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,#075ea8,#1978c8);box-shadow:0 7px 16px rgba(7,94,168,.2)}.btn-primary:hover{box-shadow:0 9px 22px rgba(7,94,168,.28)}.btn-secondary{background:#e9f3ff;color:#075495;border:1px solid #cfe4f8}.btn-ghost:not(.topbar .btn-ghost){background:#f7f9fc;color:#38516c;border:1px solid #dbe4ee}.btn-danger{border:1px solid #ffd4cf}
input,select,textarea{border-color:#cbd8e6;background:#fff;transition:border .15s,box-shadow .15s,background .15s}input:hover,select:hover,textarea:hover{border-color:#aebfd1}input:focus,select:focus,textarea:focus{border-color:#2d8cff;box-shadow:0 0 0 3px rgba(45,140,255,.14)}label{color:#43566e}.status{padding:6px 10px;border-radius:999px;background:#f2f5f9}.unsaved-indicator{background:#fff4e5;color:#9a5b00!important}
.form-panel>h2,.form-panel>.block-title{border-top:1px solid #e5ebf2;padding-top:22px}.form-panel>.section-title-row:first-child{border-top:0;padding-top:0}.form-panel h2{color:#123b65;letter-spacing:-.01em}
.item-card{background:linear-gradient(180deg,#fff,#f9fbfe);border-color:#d8e4ef;box-shadow:var(--shadow-soft)}.item-head{padding-bottom:10px;border-bottom:1px solid #e8eef5}
.metric-card{border-color:#d7e3ef!important;border-radius:16px!important;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,#075ea8,#2d8cff)}.metric-card span{color:#64758a;font-weight:700;font-size:.82rem}.metric-card strong{color:#0d3157}
.data-row{border-color:#dce5ef;box-shadow:0 3px 12px rgba(16,54,92,.04);transition:box-shadow .16s,transform .16s,border .16s}.data-row:hover{border-color:#b8d1e8;box-shadow:0 8px 22px rgba(16,54,92,.08);transform:translateY(-1px)}
.pill{background:#eaf3ff;color:#075a9f}.history-card{border-color:#dce6f0;box-shadow:0 3px 12px rgba(18,61,100,.04)}.client-history{background:#f7faff;border-color:#d7e4f0}.timeline-item{border-left-color:#2d8cff;background:#f3f8ff}
.registry-layout{align-items:start}.order-detail-head{padding-bottom:14px;border-bottom:1px solid #e1eaf3}.order-meta-grid>div{background:linear-gradient(180deg,#f4f8fd,#edf4fb);border:1px solid #dce8f3}.order-item-card{background:#fbfdff;border-color:#d7e5f2;box-shadow:0 4px 16px rgba(17,55,92,.05)}
.order-progress{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:4px;margin:16px 0 20px}.order-progress-step{position:relative;text-align:center;padding:28px 5px 7px;font-size:.7rem;color:#77879a;font-weight:800}.order-progress-step:before{content:"";position:absolute;top:9px;left:50%;width:13px;height:13px;border-radius:50%;background:#d8e1ea;border:3px solid #fff;box-shadow:0 0 0 1px #c9d6e3;z-index:2}.order-progress-step:after{content:"";position:absolute;top:15px;left:-52%;width:104%;height:3px;background:#dce5ed}.order-progress-step:first-child:after{display:none}.order-progress-step.done:before,.order-progress-step.current:before{background:#2d8cff;box-shadow:0 0 0 2px #b9d9fa}.order-progress-step.done:after,.order-progress-step.current:after{background:#69aef2}.order-progress-step.current{color:#075ea8}
.quote-section-nav{display:flex;gap:6px;overflow-x:auto;padding:9px 10px;margin:-5px 0 20px;background:#f1f6fc;border:1px solid #dae6f1;border-radius:12px;position:sticky;top:144px;z-index:25}.quote-section-nav button{border:0;background:transparent;color:#52667c;padding:8px 10px;border-radius:8px;font-weight:800;font-size:.75rem;white-space:nowrap;cursor:pointer}.quote-section-nav button:hover,.quote-section-nav button.active{background:#fff;color:#075ea8;box-shadow:0 2px 8px rgba(20,62,101,.08)}
.toast-stack{position:fixed;right:20px;bottom:20px;z-index:2500;display:grid;gap:10px;width:min(390px,calc(100vw - 30px))}.toast{background:#102b47;color:#fff;border-radius:13px;padding:14px 16px;box-shadow:0 16px 38px rgba(10,36,62,.28);display:flex;gap:11px;align-items:flex-start;animation:toastIn .22s ease}.toast.success{background:#075f3d}.toast.error{background:#8f241c}.toast.warning{background:#8c5700}.toast .toast-icon{font-weight:900}.toast p{margin:0;font-size:.9rem;line-height:1.4}.toast small{display:block;opacity:.78;margin-top:3px}@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.global-loading{position:fixed;inset:0;background:rgba(7,29,52,.25);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:2400}.loading-card{background:#fff;border-radius:14px;padding:16px 20px;box-shadow:var(--shadow);display:flex;align-items:center;gap:12px}.spinner{width:21px;height:21px;border:3px solid #d8e7f5;border-top-color:#075ea8;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.empty-state,.empty{background:linear-gradient(180deg,#fbfdff,#f4f8fc);border-color:#cbdbe9}.empty-state strong{color:#174a78}
.pq-accent{background:linear-gradient(#075ea8,#0b4c85 65%,#2d8cff)}.pq-mark,.pq-badge,.pq-table-wrap th{background:#075ea8}.pq-name,.pq-doc b,.pq-hero h1,.pq-table-wrap .strong,.pq-sign span{color:#0b355d}.pq-kicker,.pq-section-label,.pq-table-wrap .idx,.pq-table-wrap .service,.pq-notes h3{color:#075ea8}.pq-hero{background:linear-gradient(120deg,#edf5ff,#f8fbff)}.pq-notes>div{border-top-color:#2d8cff}.pq-totals{background:#0b355d}
@media(max-width:1000px){.quote-section-nav{top:0;position:relative}.order-progress{grid-template-columns:repeat(4,1fr)}.order-progress-step:after{display:none}}
@media(max-width:700px){.toast-stack{right:15px;bottom:15px}.order-progress{grid-template-columns:repeat(2,1fr)}.order-progress-step{padding-top:23px}.page-head{padding-bottom:12px!important}.header-actions #currentUser{width:100%;font-size:.8rem}}
.notification-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 8px}.notification-rule-grid fieldset{border:1px solid #d7e3f0;border-radius:14px;padding:14px;background:#f8fbff}.notification-rule-grid legend{font-weight:800;color:#164a8a;padding:0 6px}.notification-rule-grid label{display:flex;align-items:center;gap:8px;margin:8px 0;font-weight:600}.notification-rule-grid input[type=checkbox]{width:18px;height:18px;accent-color:#1769aa}@media(max-width:800px){.notification-rule-grid{grid-template-columns:1fr}}

/* v15.0 – productivity and resilience */
.global-search-wrap{position:relative;min-width:min(420px,34vw);display:flex;align-items:center}.global-search-wrap input{height:42px;padding:9px 62px 9px 14px;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff}.global-search-wrap input::placeholder{color:#dbeafe}.global-search-wrap input:focus{background:#fff;color:#17324d;border-color:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.16)}.global-search-wrap kbd{position:absolute;right:10px;font-size:.68rem;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);padding:3px 6px;border-radius:5px;color:#fff;pointer-events:none}.global-search-wrap:focus-within kbd{color:#42617d;background:#edf3f9;border-color:#d5e0ea}.global-search-results{position:absolute;top:49px;left:0;right:0;z-index:3000;background:#fff;color:#152b43;border:1px solid #d7e2ee;border-radius:14px;box-shadow:0 20px 50px rgba(8,37,65,.24);max-height:440px;overflow:auto;padding:7px}.search-result{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:9px;cursor:pointer}.search-result:hover,.search-result.active{background:#eaf3ff}.search-result-icon{width:34px;height:34px;border-radius:9px;background:#eaf3ff;color:#075ea8;display:grid;place-items:center;font-size:.75rem;font-weight:900}.search-result strong{display:block}.search-result small{display:block;color:#6a7c90;margin-top:2px}.search-result-type{font-size:.68rem;color:#728297;text-transform:uppercase;font-weight:800}.search-empty{padding:24px;text-align:center;color:#66758a}.shortcut-card{width:min(660px,100%)}.shortcut-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.shortcut-grid>div{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px;border:1px solid #dce6f0;border-radius:10px;background:#f8fbff}.shortcut-grid kbd{background:#0d3157;color:#fff;padding:5px 8px;border-radius:6px;font-weight:800}.draft-restored{background:#eaf3ff!important;color:#075ea8!important}.api-offline-banner{position:fixed;left:50%;top:10px;transform:translateX(-50%);z-index:4000;background:#8f241c;color:#fff;border-radius:999px;padding:8px 15px;font-size:.8rem;font-weight:800;box-shadow:0 8px 20px rgba(80,20,15,.25)}
@media(max-width:1050px){.global-search-wrap{order:10;width:100%;min-width:0}.header-actions{width:100%}.global-search-wrap input{width:100%}}@media(max-width:600px){.shortcut-grid{grid-template-columns:1fr}.global-search-wrap kbd{display:none}.global-search-wrap input{padding-right:12px}}


/* v16.0 – configurable workflow */
.workflow-admin-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:20px;align-items:start}.workflow-admin-card,.workflow-template-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #d7e4f1;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(10,55,95,.06)}.workflow-admin-card.span-2{grid-column:1/-1}.workflow-row{display:grid;grid-template-columns:70px 1.1fr 1.2fr 1fr 70px auto auto auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #e6edf5}.workflow-row:last-child{border-bottom:0}.workflow-phase-card{border:1px solid #d8e5f1;border-radius:13px;margin:9px 0;background:#fff;overflow:hidden}.workflow-phase-card summary{list-style:none;display:grid;grid-template-columns:14px 1fr auto;gap:9px;align-items:center;padding:13px;cursor:pointer;background:#f7faff}.workflow-phase-card summary::-webkit-details-marker{display:none}.workflow-phase-card[open] summary{border-bottom:1px solid #e2ebf4;background:#edf5ff}.workflow-phase-card>.grid,.workflow-phase-card>.inline-actions{padding:14px}.phase-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 3px rgba(23,105,170,.1)}.workflow-checks{display:grid;gap:6px;align-content:start}.workflow-checks label,.check{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700}.workflow-checks input,.check input{width:17px;height:17px;accent-color:#1769aa}.workflow-rule-row{display:grid;grid-template-columns:1.2fr 130px 1fr 1fr 1fr 1fr 70px auto auto auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #e5edf5}.workflow-rule-row:last-child{border-bottom:0}.workflow-template-card{margin-top:20px}.order-item-card .oi-phase,.order-item-card .oi-location{border-color:#9fc2e4;background:#f6fbff}.phase-assignment-bar{display:flex;gap:8px;align-items:center;padding:9px 11px;background:#edf6ff;border:1px solid #cfe3f6;border-radius:10px;margin:8px 0}.phase-assignment-bar .phase-dot{flex:0 0 auto}@media(max-width:1200px){.workflow-admin-grid{grid-template-columns:1fr}.workflow-admin-card.span-2{grid-column:auto}.workflow-row,.workflow-rule-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;background:#fff;border:1px solid #e0e9f2;border-radius:12px;margin:8px 0}.workflow-row .btn,.workflow-rule-row .btn{width:100%}}@media(max-width:650px){.workflow-row,.workflow-rule-row{grid-template-columns:1fr}.workflow-phase-card>.grid{grid-template-columns:1fr}}

/* v16.0.2 – valódi, stabil oldalsó navigáció */
@media (min-width:1101px){
 #appView{display:grid;grid-template-columns:280px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:100vh}
 .topbar{grid-column:1/-1;grid-row:1;position:sticky;top:0;z-index:90}
 .tabs{grid-column:1;grid-row:2;position:sticky;top:78px;align-self:start;height:calc(100vh - 78px);padding:18px 12px;background:#f7faff;border-right:1px solid #d6e2ef;border-bottom:0;display:flex;flex-direction:column;gap:4px;overflow-y:auto;overflow-x:hidden;box-shadow:4px 0 18px rgba(17,60,102,.06)}
 .tabs:before{content:'NAVIGÁCIÓ';display:block!important;padding:2px 12px 12px;color:#7890a8;font-size:11px;font-weight:900;letter-spacing:.13em}
 .nav-section-label{display:block!important;padding:16px 12px 7px;color:#7890a8;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
 .nav-footer{display:flex!important;flex-direction:column;margin-top:auto;padding:16px 12px 4px;border-top:1px solid #dbe6f1;color:#41627f}
 .nav-footer small{color:#7e93a7;margin-top:3px}
 .tab{width:100%;flex:0 0 auto;border:0;border-radius:10px;padding:11px 12px;text-align:left;color:#435a70;font-size:13px;white-space:normal}
 .tab:before{content:attr(data-icon);display:inline-grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:#eaf2fb;color:#075ea8;font-size:11px;font-weight:900}
 .tab:hover{background:#eaf3fc;color:#064f8f}
 .tab.active{background:#075ea8;color:#fff;box-shadow:0 7px 18px rgba(7,94,168,.2)}
 .tab.active:before{background:rgba(255,255,255,.18);color:#fff}
 main{grid-column:2;grid-row:2;min-width:0;margin-left:0}
 .mobile-nav-btn,.nav-backdrop{display:none!important}
}
@media (max-width:1100px){
 .mobile-nav-btn{display:inline-flex!important}
 .tabs{position:fixed!important;left:0;top:0;bottom:0;width:min(320px,86vw);height:100vh;padding:86px 14px 20px;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;transform:translateX(-105%);transition:transform .22s ease;z-index:120;border-right:1px solid #d6e2ef;box-shadow:12px 0 35px rgba(8,47,73,.18)}
 .tabs.open{transform:translateX(0)}
 .nav-section-label{display:block!important;padding:15px 11px 6px;color:#7890a8;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
 .nav-footer{display:flex!important;flex-direction:column;margin-top:auto;padding:15px 11px}
 .tab{width:100%;border:0;border-radius:10px;padding:12px;white-space:normal}
 .tab.active{background:#075ea8;color:#fff}
 .nav-backdrop:not(.hidden){display:block!important;position:fixed;inset:0;background:rgba(7,25,43,.48);z-index:110}
}
/* v16.0.3 – stabil, képernyőbarát navigáció */
.app-shell{display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;min-height:100vh}
.side-nav{width:250px!important;max-width:250px!important;height:calc(100vh - 72px)!important;position:sticky!important;top:72px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:12px 10px 18px!important;background:#fff!important;border-right:1px solid #d9e4ee!important}
.side-nav .tab{width:100%!important;min-height:40px!important;padding:9px 11px!important;margin:2px 0!important;text-align:left!important;white-space:normal!important;line-height:1.2!important;border-radius:9px!important}
.side-nav .nav-section-label{margin:14px 9px 5px!important;font-size:11px!important;letter-spacing:.08em!important;color:#63778a!important}
.app-shell>main,main{min-width:0!important;overflow-x:hidden!important}
@media(max-width:1100px){.app-shell{grid-template-columns:1fr!important}.side-nav{position:fixed!important;top:0!important;left:0!important;height:100vh!important;z-index:1200!important;transform:translateX(-105%);box-shadow:0 18px 50px rgba(10,52,91,.25)}body.nav-open .side-nav{transform:translateX(0)} }
