
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#182d29;background:#f3f6f5;font-synthesis:none;--green:#143d35;--lime:#d5ed9b;--muted:#65756f;--line:#dce5df}
*{box-sizing:border-box}body{margin:0;font-size:16px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #8ca94b;outline-offset:3px}button{border:0}a{color:var(--green)}svg{width:21px;height:21px;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;line-height:1.25;margin-bottom:8px}h2{font-size:19px;letter-spacing:-.4px;margin-bottom:6px}h3{font-size:16px}small,.muted{color:var(--muted)}small{font-size:13px}p{line-height:1.65}button.primary,.primary{background:var(--green);color:white}.btn{border-radius:9px;padding:11px 17px;display:inline-flex;gap:9px;align-items:center;justify-content:center;font-size:14px;font-weight:700;min-height:43px;text-decoration:none;white-space:nowrap}.secondary{background:white;border:1px solid var(--line);color:var(--green)}.ghost{background:transparent;color:var(--green)}.btn:hover{filter:brightness(.96)}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--green);color:white;padding:32px 20px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;font-size:26px;font-weight:800;letter-spacing:-1px;margin:0 12px 44px}.brand img{width:36px;height:36px}.brand small{display:block;font-size:12px;font-weight:500;letter-spacing:1.4px;color:#afc6bd;margin-top:3px}.nav-label{color:#9bb5a9;letter-spacing:1.7px;font-size:12px;font-weight:700;padding:0 13px;margin-bottom:14px}.nav{display:flex;flex-direction:column;gap:5px}.nav a{display:flex;align-items:center;gap:12px;color:#c8d9d0;padding:13px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:600}.nav a.active{background:var(--lime);color:var(--green)}.nav a:hover:not(.active){background:#235246}.sidebar-bottom{margin-top:auto;padding-top:25px}.sidebar-bottom .btn{color:#c8d9d0;width:100%;justify-content:flex-start}.user{margin:20px 5px 0;border-top:1px solid #386052;padding-top:20px;display:flex;align-items:center;gap:10px;min-width:0}.avatar{width:36px;height:36px;background:#315c4e;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;flex-shrink:0}.user-name{font-size:14px;font-weight:700;overflow-wrap:anywhere}.user small{color:#abc3b5;font-size:12px}.main{min-width:0}.topbar{min-height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 38px;gap:16px}.breadcrumb{font-size:14px;color:var(--muted)}.breadcrumb b{color:#213d32;margin-left:10px}.sync{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center}.content{padding:32px 38px 40px;max-width:1600px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-head p{color:var(--muted);font-size:14px;margin:0}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:12px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.metric{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0}.metric.featured{background:var(--green);color:white;border-color:var(--green)}.metric-label{font-size:14px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:22px}.featured .metric-label,.featured small{color:#c4d8ca}.metric-value{font-size:clamp(21px,2.1vw,32px);font-weight:800;letter-spacing:-1px;line-height:1.2;margin-bottom:10px;overflow-wrap:anywhere}.metric small{font-size:12px}.metric .iconbox{background:#f2f6ef;color:#466047;padding:8px;border-radius:8px;display:flex}.featured .iconbox{background:#315b44;color:var(--lime)}.grid-two{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:20px;margin-bottom:22px}.panel{border:1px solid var(--line);background:white;border-radius:12px;overflow:hidden}.panel-head{padding:22px 23px;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head p{font-size:13px;color:var(--muted);margin:6px 0 0}.panel-body{padding:0 23px 23px}.badge{padding:5px 9px;border-radius:6px;font-size:12px;font-weight:700;display:inline-block;white-space:nowrap}.badge.in{color:#296249;background:#e9f5ed}.badge.out{color:#385d99;background:#edf2fc}.badge.warn{color:#966218;background:#fff4db}.badge.zero{color:#a34236;background:#ffede9}.badge.neutral{background:#f1f4f2;color:#596961}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{font-size:12px;font-weight:700;letter-spacing:.3px;color:var(--muted);background:#f8faf9;padding:13px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:16px 20px;border-bottom:1px solid #edf1ee}tr:last-child td{border-bottom:0}td b{font-weight:700}td small{display:block;margin-top:4px}.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.product-cell{display:flex;align-items:center;gap:12px;min-width:180px}.product-icon{width:36px;height:36px;background:#eef3ed;color:#6a806a;border-radius:8px;display:grid;place-items:center;flex-shrink:0}.low-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #edf1ee}.low-item:last-child{border:0}.low-item b{font-size:14px}.low-item small{display:block;margin-top:5px}.empty{padding:45px 24px;text-align:center;color:var(--muted);font-size:14px;line-height:1.7}.empty svg{width:32px;height:32px;display:block;margin:0 auto 12px}.empty b{color:#254238;display:block;font-size:17px;margin-bottom:6px}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.filters label{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:6px}.filters .search{flex:1;min-width:200px}.search input{width:100%}input,select,textarea{background:white;border:1px solid #cedad3;border-radius:8px;min-height:43px;padding:10px 12px;font-size:14px;color:#203b31;max-width:100%}input:focus,select:focus,textarea:focus{outline:2px solid #83a963;outline-offset:1px}input[type=number]{font-variant-numeric:tabular-nums}label{font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px}.span2{grid-column:1/-1}.form-grid small{font-weight:400;line-height:1.5}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.transaction-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,1fr);gap:24px;align-items:start}.form-panel{padding:25px}.info-panel{background:#eaf0e5;border:1px solid #dce5d3;border-radius:12px;padding:25px}.info-panel p{font-size:14px;color:#576954}.summary-line{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #cfdac8;font-size:14px}.summary-line:last-child{border:0}.summary-total{font-size:26px;font-weight:800;margin:20px 0 5px}.notice{background:#eff5e2;color:#415725;border:1px solid #d8e5ba;border-radius:9px;padding:12px 16px;font-size:14px;line-height:1.6;margin-bottom:22px}.notice a,.notice button{font-weight:700}.error{background:#fff0ed;border-color:#f1d1c8;color:#9d342b}.chart{display:flex;align-items:end;gap:14px;height:170px;padding-top:18px;border-bottom:1px solid var(--line)}.chart-col{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0}.chart-bar{width:100%;max-width:45px;background:#436f57;border-radius:5px 5px 0 0;min-height:2px}.chart-labels{display:flex;gap:14px;margin-top:12px;font-size:12px;color:var(--muted)}.chart-labels span{flex:1;text-align:center;min-width:0}.chart-caption{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:17px}.chart-caption i{width:9px;height:9px;background:#436f57;border-radius:2px}.rank-row{padding:14px 0;border-bottom:1px solid #edf1ee}.rank-row .row{justify-content:space-between;font-size:14px}.rank-track{height:6px;background:#edf2ea;border-radius:3px;margin-top:10px}.rank-fill{height:100%;background:#aac878;border-radius:3px}.footer-note{font-size:12px;color:var(--muted);margin-top:24px;line-height:1.6}.pagination{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:18px 20px;font-size:13px;color:var(--muted)}.pagination .btn{padding:7px 12px}.auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-art{background:var(--green);padding:50px 60px;display:flex;flex-direction:column;color:white;position:relative;overflow:hidden}.auth-art .brand{margin:0 0 80px}.auth-art h1{font-size:clamp(36px,4vw,58px);max-width:540px;line-height:1.15;margin-bottom:28px}.auth-art h1 span{color:var(--lime)}.auth-art p{color:#bed2c5;max-width:430px}.auth-stats{border-top:1px solid #416151;margin-top:45px;padding-top:28px;display:flex;gap:32px}.auth-stats strong{font-size:25px;display:block;color:var(--lime)}.auth-stats small{color:#bed2c5}.auth-side{padding:48px 36px;display:flex;align-items:center;justify-content:center;background:white}.auth-card{width:100%;max-width:420px}.auth-card h2{font-size:28px}.auth-card>p{color:var(--muted);font-size:14px}.auth-card form label{display:flex;flex-direction:column;gap:8px;font-size:14px;margin-top:19px}.auth-card form .btn{width:100%;margin-top:24px}.auth-card .divider{border-top:1px solid var(--line);margin:24px 0}.auth-card .btn.full{width:100%}.auth-bottom{font-size:12px;margin-top:24px;color:var(--muted);line-height:1.6}.setup-list{padding-left:21px;font-size:14px;line-height:1.9;color:var(--muted)}dialog{width:min(600px,calc(100% - 32px));border:0;border-radius:14px;padding:28px;max-height:90vh;overflow:auto;box-shadow:0 25px 80px #102a2440}dialog::backdrop{background:#0a211c70}dialog h2{font-size:23px;margin-bottom:22px}#toast{position:fixed;right:24px;bottom:24px;background:#143d35;color:#fff;padding:15px 22px;border-radius:10px;z-index:10;box-shadow:0 5px 30px #143d3525;max-width:calc(100% - 48px);display:none;font-size:14px}#toast.visible{display:block}#toast.bad{background:#913b31}.loading{padding:70px;text-align:center}.mobile-brand{display:none}
@media(min-width:1500px){.content{padding-top:40px}.metric{padding:25px}}
@media(max-width:1150px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:28px 14px}.content{padding:28px 24px}.topbar{padding:18px 24px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}.transaction-layout{grid-template-columns:1fr}.metric-value{font-size:28px}}
@media(max-width:720px){.shell{display:block}.sidebar{position:relative;height:auto;padding:17px 16px}.sidebar .brand{font-size:23px;margin:0 0 19px}.brand small{display:none}.nav-label,.sidebar-bottom{display:none}.nav{flex-direction:row;overflow-x:auto;padding-bottom:3px;gap:5px}.nav a{white-space:nowrap;padding:10px 12px;font-size:13px}.nav a svg{width:17px;height:17px}.topbar{min-height:57px;padding:12px 18px}.breadcrumb{font-size:12px}.sync{font-size:12px}.content{padding:24px 16px}.page-head{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px}h1{font-size:26px}.metrics{gap:10px}.metric{padding:16px 13px}.metric-label{font-size:12px;margin-bottom:16px}.metric .iconbox{display:none}.metric-value{font-size:23px}.metric small{font-size:12px}.grid-two{gap:16px}.panel-head{padding:19px 17px}.panel-body{padding:0 17px 20px}.panel-head .btn{padding:7px 9px;font-size:12px}td,th{padding:13px 15px}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.filters{gap:10px}.filters label{flex:1;min-width:125px}.filters .search{flex-basis:100%}.auth-layout{display:block}.auth-art{padding:25px}.auth-art .brand{margin:0 0 28px}.auth-art h1{font-size:32px;margin-bottom:0}.auth-art p,.auth-stats{display:none}.auth-side{padding:32px 23px}.form-panel,.info-panel{padding:20px}.mobile-brand{display:inline-flex}.pagination{flex-wrap:wrap}.footer-note{margin-top:20px}}
@media(prefers-reduced-motion:no-preference){.btn,.nav a{transition:background .15s,filter .15s}.content{animation:enter .2s ease-out}@keyframes enter{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}}

/* Számlaellenőrzés */
.invoice-import{padding:24px;margin-bottom:22px}.invoice-import p{color:var(--muted);max-width:850px}
.file-input{position:absolute;opacity:0;width:1px;height:1px}
.invoice-import label:focus-within{outline:3px solid #4b8d71;outline-offset:3px}
.invoice-line{padding:18px 24px;border-top:1px solid #dce4df}
.invoice-line-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.invoice-line-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.invoice-line-grid label{min-width:0}.invoice-line-grid input{width:100%;min-width:0}
.invoice-lines{margin:22px 0}.invoice-confirm{display:flex;align-items:flex-start;gap:12px;margin-top:22px}
.invoice-confirm input{width:20px;height:20px;flex-shrink:0}
#invoice-error{color:#a62626;margin-top:16px}
.invoice-import pre{white-space:pre-wrap;max-height:300px;overflow:auto;font:14px/1.6 inherit}
@media(max-width:1000px){.invoice-line-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.invoice-line-grid{grid-template-columns:1fr}.invoice-line{padding:16px}.invoice-import{padding:18px}}

.product-matches{display:grid;gap:8px;max-height:320px;overflow:auto}.product-matches button{text-align:left;white-space:normal;justify-content:flex-start}.product-matches small{display:block;margin-top:4px}.order-lines input{min-width:80px;max-width:140px}

.order-builder{margin-bottom:24px;min-width:0}.order-builder form{display:grid;gap:20px}.order-builder label,#cancel-sale-form label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:14px;line-height:1.5}.order-builder input,#cancel-sale-form textarea{width:100%;min-width:0}.order-builder .product-matches button{line-height:1.55;min-width:0;overflow-wrap:anywhere}.order-builder .product-matches span{min-width:0}.order-builder .product-matches b,.order-builder .product-matches small,.order-product b,.order-product span,.order-product small{display:block;white-space:normal;line-height:1.55;overflow-wrap:anywhere}.order-product{min-width:240px;max-width:480px}.order-builder .panel-head{gap:16px;flex-wrap:wrap}.order-builder .btn{white-space:normal;line-height:1.5}.order-builder [aria-pressed=true]{border-color:var(--green);background:#edf3e7}#sale-error,#cancel-error{color:#913b31}.table-wrap td small{display:block;line-height:1.5;white-space:normal}#cancel-sale-form textarea{padding:12px;border:1px solid var(--line);border-radius:8px}
