:root{
  --bg:#111317; --panel:#1a1d23; --panel2:#22262e; --line:#2e333d; --text:#eceef2; --muted:#9aa1ad;
  --accent:#f5a524; --accent-ink:#1b1300; --ok:#3fb950; --warn:#f0b429; --bad:#f85149; --info:#58a6ff;
  --r:12px; --nav-h:64px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text)}
body{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 16px);-webkit-tap-highlight-color:transparent}
a{color:var(--accent);text-decoration:none}
h1{font-size:1.45rem;margin:0 0 4px}
h2{font-size:1.05rem;margin:22px 0 10px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
#app{max-width:980px;margin:0 auto;padding:16px 14px}
.top{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-bottom:12px}
.sub{color:var(--muted);font-size:.92rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:10px}
.list{display:flex;flex-direction:column;gap:8px}
.row{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:12px;color:var(--text)}
.row .grow{flex:1;min-width:0}
.row .t{font-weight:600;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.row .s{color:var(--muted);font-size:.86rem;margin-top:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.stat b{display:block;font-size:1.6rem}
.stat span{color:var(--muted);font-size:.85rem}
button,.btn{font:inherit;border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:10px 14px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:42px}
button.primary,.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}
button.danger{color:var(--bad)}
button.small{padding:6px 10px;min-height:34px;font-size:.9rem}
button:disabled{opacity:.5}
.btns{display:flex;gap:8px;flex-wrap:wrap}
input,select,textarea{font:inherit;width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-height:42px}
textarea{min-height:80px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}
label{display:block;font-size:.85rem;color:var(--muted);margin:10px 0 4px}
.form2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.form2 .full{grid-column:1/-1}
.toolbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.toolbar input{flex:1;min-width:160px}
.toolbar select{width:auto}
.badge{display:inline-block;font-size:.75rem;padding:3px 8px;border-radius:99px;background:var(--panel2);border:1px solid var(--line);white-space:nowrap}
.st-anfrage{color:var(--info);border-color:#58a6ff55}
.st-bestaetigt{color:var(--ok);border-color:#3fb95055}
.st-gepackt{color:var(--accent);border-color:#f5a52455}
.st-unterwegs{color:#d2a8ff;border-color:#d2a8ff55}
.st-abgeschlossen{color:var(--muted)}
.st-storniert{color:var(--bad);border-color:#f8514955;text-decoration:line-through}
.warn{color:var(--warn)} .bad{color:var(--bad)} .ok{color:var(--ok)} .muted{color:var(--muted)}
.qty{display:flex;align-items:center;gap:4px}
.qty button{width:40px;height:40px;padding:0;justify-content:center;font-size:1.2rem}
.qty output{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}
.cat{font-size:.8rem;color:var(--muted);margin:14px 2px 6px;text-transform:uppercase;letter-spacing:.05em}
.done{opacity:.55}
.tabs{display:flex;gap:6px;margin:10px 0 12px;overflow-x:auto}
.tabs button{flex:none}
.tabs button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.empty{color:var(--muted);text-align:center;padding:30px 10px}
.login{max-width:360px;margin:12vh auto 0}
.logo{font-weight:800;font-size:1.6rem;letter-spacing:.02em}
.logo em{color:var(--accent);font-style:normal}
#nav{position:fixed;left:0;right:0;bottom:0;display:flex;background:#0c0e11ee;backdrop-filter:blur(8px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10}
#nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:var(--nav-h);color:var(--muted);font-size:.75rem;gap:2px}
#nav a span{font-size:1.25rem}
#nav a.on{color:var(--accent)}
#toast{position:fixed;left:50%;bottom:calc(var(--nav-h) + 20px);transform:translateX(-50%);background:var(--panel2);border:1px solid var(--line);padding:10px 16px;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:30;max-width:90vw}
#toast.show{opacity:1} #toast.err{border-color:var(--bad);color:#ffb4ae}
dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:0;width:min(560px,94vw);max-height:90vh}
dialog::backdrop{background:#000a}
dialog form{padding:18px;overflow:auto;max-height:90vh}
dialog h3{margin:0 0 6px}
.dlg-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}
.pick{max-height:45vh;overflow:auto;display:flex;flex-direction:column;gap:6px;margin-top:10px}
.pick .row{padding:10px;cursor:pointer}
table.print{display:none}
@media (min-width:800px){ #app{padding:24px} }
@media (max-width:520px){ .form2{grid-template-columns:1fr} }
@media print{
  body{background:#fff;color:#000;padding:0}
  #nav,#toast,.noprint,button{display:none!important}
  .card,.row{background:#fff;border-color:#ccc;color:#000}
  .screen-only{display:none!important}
  table.print{display:table;width:100%;border-collapse:collapse;font-size:11pt}
  table.print th,table.print td{border:1px solid #999;padding:5px 6px;text-align:left}
  table.print .box{width:22px}
  .sub,.muted{color:#444}
}

/* ===== v0.2 ===== */
#nav a{font-size:.7rem}
.typ{white-space:nowrap;display:inline-block;font-size:.68rem;padding:2px 6px;border-radius:6px;background:var(--panel2);border:1px solid var(--line);color:var(--muted);margin-left:4px;vertical-align:middle;text-transform:uppercase;letter-spacing:.03em}
.typ.set{color:#d2a8ff} .typ.leistung{color:var(--info)} .typ.verkauf{color:var(--ok)}
.indent{margin-left:22px;border-style:dashed}
.indent .t::before{content:"↳ ";color:var(--muted)}
.row.textpos{background:transparent;border-style:dashed}
.row.titelpos{background:transparent;border:0;padding:8px 2px 0}
.row.titelpos .t{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}
.summen{display:grid;grid-template-columns:1fr auto;gap:4px 16px;font-variant-numeric:tabular-nums}
.summen .gross{font-weight:700;font-size:1.1rem;border-top:1px solid var(--line);padding-top:6px}
.chip{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;padding:2px 8px;border-radius:99px;background:var(--panel2);border:1px solid var(--line);margin:2px 4px 0 0}
.chip.warn{color:var(--warn);border-color:#f0b42955} .chip.bad{color:var(--bad);border-color:#f8514955} .chip.ok{color:var(--ok);border-color:#3fb95055} .chip.info{color:var(--info);border-color:#58a6ff55}
.kal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:.72rem}
.kal .kopf{color:var(--muted);text-align:center;padding:4px 0}
.kal .tag{background:var(--panel);border:1px solid var(--line);border-radius:6px;min-height:72px;padding:3px;overflow:hidden}
.kal .tag.anders{opacity:.4} .kal .tag.heute{border-color:var(--accent)}
.kal .nr{font-weight:600;margin-bottom:2px}
.kal .ev{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:4px;padding:1px 4px;margin-top:2px;color:#111;font-weight:600;cursor:pointer}
.ev.anfrage,.ev.angebot{background:#58a6ff} .ev.bestaetigt{background:#3fb950} .ev.gepackt{background:#f5a524} .ev.unterwegs{background:#d2a8ff} .ev.abgeschlossen{background:#6e7681} .ev.storniert{background:#f85149;text-decoration:line-through}
.st-angebot{color:#79c0ff;border-color:#58a6ff55}
.bars{display:flex;align-items:flex-end;gap:4px;height:140px;margin:8px 0}
.bars div{flex:1;background:var(--accent);border-radius:4px 4px 0 0;min-height:2px;position:relative}
.bars span{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font-size:.7rem;color:var(--muted)}
.tbl{width:100%;border-collapse:collapse;font-size:.9rem}
.tbl td,.tbl th{padding:6px 4px;border-bottom:1px solid var(--line);text-align:left}
.tbl .r{text-align:right;font-variant-numeric:tabular-nums}
canvas.sig{width:100%;height:200px;background:#fff;border-radius:10px;touch-action:none;display:block}
.scanlog{font-size:.9rem;max-height:30vh;overflow:auto;margin-top:8px}
.scanlog div{padding:4px 0;border-bottom:1px solid var(--line)}
video.cam{width:100%;border-radius:10px;background:#000;margin-top:8px;max-height:40vh;object-fit:cover}
.check{display:flex;align-items:center;gap:8px;color:var(--text);font-size:.95rem;margin:10px 0 0}
.check input{width:auto;min-height:0}
.hinweis{font-size:.85rem;color:var(--muted);background:var(--panel2);border-radius:10px;padding:10px 12px;margin:10px 0}

/* Beleg (Brief) */
.papier{background:#fff;color:#111;border-radius:6px;padding:28px 30px;max-width:820px;margin:0 auto;font-size:13px;line-height:1.45;font-family:Arial,Helvetica,sans-serif;box-shadow:0 2px 20px #0006}
.papier .kopf{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.papier .logo img{max-height:70px;max-width:220px}
.papier .logo .wort{font-weight:800;font-size:20px}
.papier .absender{font-size:9px;color:#555;border-bottom:1px solid #999;display:inline-block;margin:28px 0 6px}
.papier .anschrift{min-height:90px}
.papier .meta{text-align:right;font-size:12px}
.papier .meta td{padding:1px 0 1px 12px}
.papier h2{color:#111;text-transform:none;letter-spacing:0;font-size:18px;margin:22px 0 4px}
.papier table.pos{width:100%;border-collapse:collapse;margin:14px 0}
.papier table.pos th{border-bottom:2px solid #111;text-align:left;padding:5px 4px;font-size:11px}
.papier table.pos td{padding:5px 4px;border-bottom:1px solid #ddd;vertical-align:top}
.papier .r{text-align:right;white-space:nowrap}
.papier tr.titel td{font-weight:700;padding-top:12px;border-bottom:1px solid #999}
.papier tr.zw td{font-style:italic;color:#444;border-bottom:1px solid #999}
.papier tr.unter td{color:#555;font-size:11.5px;border-bottom:1px dotted #e5e5e5;padding-top:1px;padding-bottom:1px}
.papier .klein{font-size:11px;color:#555}
.papier .summe{margin-left:auto;width:min(320px,100%);border-collapse:collapse}
.papier .summe td{padding:3px 4px}
.papier .summe .g td{border-top:2px solid #111;font-weight:700;font-size:14px}
.papier .fuss{margin-top:30px;border-top:1px solid #999;padding-top:8px;font-size:9.5px;color:#555;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.papier .stempel{display:inline-block;border:3px solid #c00;color:#c00;font-weight:800;padding:2px 10px;transform:rotate(-6deg);font-size:18px;margin-left:10px}
.papier .sig img{height:70px;border-bottom:1px solid #999}
.etiketten{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.etikett{background:#fff;color:#111;border-radius:6px;padding:8px 10px;font-family:Arial,sans-serif;break-inside:avoid}
.etikett .n{font-weight:700;font-size:12px;line-height:1.2;max-height:2.4em;overflow:hidden}
.etikett .c{font-size:11px;display:flex;justify-content:space-between;margin-top:2px}
.etikett svg{width:100%;height:46px;display:block;margin-top:4px}
@media print{
  .papier{box-shadow:none;padding:0;max-width:none;font-size:11pt}
  .etiketten{grid-template-columns:repeat(3,1fr);gap:4mm}
  .etikett{border:1px solid #ccc}
  @page{margin:15mm 15mm 12mm 18mm}
}

/* ===== v0.4: feste Menüleiste links ===== */
:root{--rail:76px}
body{padding-bottom:24px!important;padding-left:calc(var(--rail) + env(safe-area-inset-left))}
#nav{position:fixed;top:0;bottom:0;left:0;right:auto;width:calc(var(--rail) + env(safe-area-inset-left));flex-direction:column;justify-content:flex-start;gap:2px;
  padding:calc(8px + env(safe-area-inset-top)) 6px calc(8px + env(safe-area-inset-bottom)) calc(6px + env(safe-area-inset-left));border-top:0;border-right:1px solid var(--line);overflow-y:auto;background:#0c0e11}
#nav a{flex:none;height:auto;min-height:56px;padding:6px 2px;border-radius:10px;font-size:.66rem;gap:3px;text-align:center}
#nav a svg{width:23px;height:23px}
#nav a b{font-weight:500}
#nav a.on{background:#f5a52418;color:var(--accent)}
#nav a:hover{color:var(--text)}
.navlogo{font-weight:800;text-align:center;padding:8px 0 12px;letter-spacing:.04em;font-size:1rem}
.navlogo em{color:var(--accent);font-style:normal}
#toast{bottom:24px;left:calc(50% + var(--rail) / 2)}
.row.casepos{border-color:#f5a52455;background:#1f1d1a}
.typ.info{color:var(--info)}
@media (min-width:1000px){
  :root{--rail:210px}
  #nav{padding-left:12px;padding-right:12px}
  #nav a{flex-direction:row;justify-content:flex-start;min-height:44px;font-size:.95rem;gap:12px;padding:8px 12px;text-align:left}
  #nav a svg{width:21px;height:21px}
  .navlogo{text-align:left;padding:10px 12px 18px;font-size:1.2rem}
  #app{max-width:1100px}
}
@media (max-width:380px){ :root{--rail:64px} #nav a{font-size:.6rem} }
@media print{ body{padding-left:0!important} }
.blatt-kopf{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}
.papier table.pos td.box{width:20px;text-align:center;font-size:15px}
.papier .hinweis-p{color:#a35b00;font-size:11px}
.papier tr.case td{background:#f4f4f4;font-weight:700}
body.aus{padding-left:0!important}
.etikett.qr{display:flex;gap:8px;align-items:center}
.etikett .qrbox{width:78px;flex:none}
.etikett .qrbox svg{width:78px;height:78px;margin:0}
.row{flex-wrap:wrap}
.row>.grow{flex:1 1 170px;min-width:0}
.row .qty{margin-left:auto}
.row .t{-webkit-line-clamp:3}
@media (max-width:600px){
  #app{padding:12px 10px}
  .grid{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}
  .stat{padding:10px} .stat b{font-size:1.3rem}
  .qty button{width:38px;height:38px}
  h1{font-size:1.3rem}
  .btns{gap:6px} button,.btn{padding:9px 12px}
}
@media (max-width:600px){ .papier{padding:16px 12px;font-size:12px;overflow-x:auto} .papier table.pos th,.papier table.pos td{padding:4px 3px} }
/* ===== Mobil-Feinschliff ===== */
#app{padding-top:calc(16px + env(safe-area-inset-top));padding-right:calc(14px + env(safe-area-inset-right))}
.tabs{position:sticky;top:0;z-index:6;background:var(--bg);padding:8px 0;margin:6px 0 8px;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.pick .row{flex-wrap:nowrap}
.pick .row>.grow{flex:1 1 auto}
dialog form{padding-bottom:0}
.dlg-btns{position:sticky;bottom:0;background:var(--panel);padding:12px 0 calc(14px + env(safe-area-inset-bottom));margin-top:12px;border-top:1px solid var(--line);z-index:2}
.nur-mobil{display:none}
.infokarte summary{cursor:pointer;list-style:none;font-weight:600;color:var(--text)}
.infokarte summary::-webkit-details-marker{display:none}
.infokarte summary::after{content:" ▾";color:var(--muted)}
.infokarte[open] summary{margin-bottom:6px}
@media (max-width:600px){
  .mehr-akt{display:none}
  .nur-mobil{display:inline-flex}
  .card.bad{padding:10px 12px;font-size:.9rem}
  button.small,.btn.small{min-height:38px}
  .aktionen select{flex:1;min-width:120px}
  dialog{width:96vw;max-height:92vh;border-radius:14px}
  dialog form{padding:14px 14px 0}
  .kal .ev{font-size:.62rem;padding:1px 2px}
  .kal .tag{min-height:58px}
}

/* ===== Etiketten ===== */
.etk{position:relative;background:#fff;color:#000;overflow:hidden;box-shadow:0 2px 10px #0006;flex:none;box-sizing:border-box}
.etk-el{position:absolute;overflow:hidden;box-sizing:border-box}
.etk-text{width:100%;height:100%;display:flex;flex-direction:column;white-space:pre-wrap;line-height:1.15;overflow:hidden;overflow-wrap:anywhere}
.etk-qr,.etk-bc{width:100%;height:100%}
.etk-qr svg,.etk-bc svg{width:100%;height:100%;display:block}
.etk.raster{background-image:linear-gradient(#00000012 1px,transparent 1px),linear-gradient(90deg,#00000012 1px,transparent 1px);background-size:1mm 1mm}
.etk-ed{outline:1px dashed #0a84ff66;cursor:move;touch-action:none}
.etk-sel{outline:2px solid #0a84ff;overflow:visible;z-index:5}
.etk-sel>.etk-text,.etk-sel>.etk-qr{overflow:hidden}
.etk-griff{position:absolute;right:-1.6mm;bottom:-1.6mm;width:3.2mm;height:3.2mm;min-width:12px;min-height:12px;background:#0a84ff;border:1px solid #fff;border-radius:50%;cursor:nwse-resize;touch-action:none}
.etk-editor{display:grid;grid-template-columns:1fr 340px;gap:14px;align-items:start}
.etk-buehne{background:#2a2e36;border-radius:12px;padding:12px;overflow:auto;min-height:180px;display:flex;align-items:flex-start}
#flaeche{position:relative;flex:none;touch-action:none}
.etk-werkzeug{margin-bottom:8px}
.etk-chips{display:flex;flex-wrap:wrap;gap:2px;margin:6px 0}
.etk-chips .chip{cursor:pointer;font:inherit;font-size:.75rem;color:var(--text);min-height:0}
.etk-vorschau{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;background:#2a2e36;border-radius:12px;padding:12px;overflow:auto}
.druckbereich{display:none}
.druckseite{position:relative;overflow:hidden;break-after:page;page-break-after:always}
.druckseite:last-child{break-after:auto;page-break-after:auto}
.druckseite.a4{width:210mm;height:297mm}
@media (max-width:900px){ .etk-editor{grid-template-columns:1fr} }
/* v0.6 Lagerverwaltung */
#nav{overflow-y:auto;scrollbar-width:none}
.daumen{border-radius:8px;object-fit:cover;background:#fff1;flex:none}
.artikel-kopf{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;margin:10px 0}
.artikel-bild{width:150px;flex:none;text-align:center}
.artikel-bild img,.kein-bild{width:150px;height:150px;border-radius:12px;object-fit:cover;background:var(--card);border:1px solid var(--line);display:block}
.kein-bild{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.85rem}
.artikel-bild .btn{display:inline-flex;cursor:pointer}
.fortschritt{height:6px;border-radius:3px;background:var(--line);overflow:hidden;margin:4px 0 10px}
.fortschritt div{height:100%;background:var(--accent);transition:width .2s}
.row.inv.passt{border-left:3px solid var(--ok)}
.row.inv.abw{border-left:3px solid var(--warn)}
.row.inv output{cursor:pointer;text-decoration:underline dotted}
.papier .doktitel{margin:18px 0 4px;font-size:1.25rem}
@media (max-width:520px){ .artikel-bild{width:100%;display:flex;gap:10px;align-items:center;text-align:left}.artikel-bild img,.kein-bild{width:96px;height:96px} .artikel-kopf .grid{min-width:100%} }
.papier tr.gesamt td{border-top:2px solid #111;font-weight:700;font-size:14px}
.papier .pos{font-size:12px}
@media (max-width:700px){ .papier{overflow-x:auto} .papier table.pos{min-width:560px} }
.row.inv output{text-decoration:none}
.anleitung{padding-left:20px;margin:0}.anleitung li{margin:0 0 10px;line-height:1.45}
/* v0.7 Partnernetz */
#nav a{position:relative}
.badge-n{position:absolute;top:4px;right:10px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#fff;font:700 11px/18px system-ui;font-style:normal;text-align:center}
@media (min-width:1000px){ .badge-n{position:static;margin-left:auto} }
.chat{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto;padding:4px 2px 10px}
.msg{max-width:82%;align-self:flex-start;background:var(--panel2);border:1px solid var(--line);border-radius:14px 14px 14px 4px;padding:8px 12px}
.msg.mein{align-self:flex-end;background:#f5a52422;border-color:#f5a52455;border-radius:14px 14px 4px 14px}
.msg.sys{align-self:center;max-width:94%;background:transparent;border-style:dashed;font-size:.9rem}
.mtext{white-space:normal;word-break:break-word}
.mmeta{font-size:.72rem;color:var(--muted);margin-top:3px}
.chatform{display:flex;gap:8px;position:sticky;bottom:0;background:var(--bg);padding:8px 0}
.chatform textarea{flex:1;min-height:44px;max-height:140px;resize:vertical}
.info-card{border-color:#58a6ff55;background:#58a6ff12}
.login .logo em{color:var(--accent);font-style:normal}
#nav[hidden]{display:none!important}
/* v0.8 Master */
#leiste{position:sticky;top:0;z-index:9}
.leiste{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 14px;font-size:.9rem;border-bottom:1px solid var(--line)}
.leiste.support{background:#f5a524;color:#1b1300}.leiste.support .small{background:#1b1300;color:#f5a524;border-color:#1b1300}
.leiste.info{background:#58a6ff22}.leiste.warn{background:#f0b42933}
.leiste .small{margin-left:auto}
.kpi{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0 16px}
.kpi .stat b{font-size:1.5rem}
.kpi .stat.akzent b{color:var(--accent)}
.balken{height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:6px}.balken div{height:100%;background:var(--accent)}
.hinweis-zeile{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.hinweis-zeile:last-child{border:0}
.punkt{width:9px;height:9px;border-radius:50%;flex:none}.punkt.warn{background:var(--warn)}.punkt.bad{background:var(--bad)}.punkt.info{background:var(--info)}.punkt.ok{background:var(--ok)}
.mfilter{display:flex;gap:6px;flex-wrap:wrap}
.tbl-wrap{overflow-x:auto}
.master-tbl td,.master-tbl th{white-space:nowrap}
.master-tbl tr[data-f]{cursor:pointer}.master-tbl tr[data-f]:hover td{background:#ffffff08}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}@media (max-width:900px){.grid2{grid-template-columns:1fr}}
[hidden]{display:none!important}
@media (max-width:700px){.master-tbl th:nth-child(n+3):not(:nth-child(8)),.master-tbl td:nth-child(n+3):not(:nth-child(8)){display:none}}
/* v0.9 Ladeplan */
.masse3{display:flex;align-items:center;gap:6px}.masse3 input{flex:1;min-width:0}.masse3 span{color:var(--muted)}
.fzwahl{display:flex;flex-wrap:wrap;gap:8px}
.chipwahl{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;cursor:pointer;margin:0;color:var(--text);font-size:.92rem}
.chipwahl.on{border-color:var(--accent);background:#f5a52418}.chipwahl input{width:auto;margin:0}
.ladebuehne{background:#0b0d10;border:1px solid var(--line);border-radius:14px;padding:8px;margin-top:12px}
.ladebuehne canvas{display:block;margin:0 auto;cursor:grab;max-width:100%}
.ladeknoepfe{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:6px}
.schritt{display:flex;align-items:center;gap:8px;margin:8px 4px}.schritt input{flex:1}
.nr{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:8px;color:#fff;font-weight:700;font-size:.85rem;flex:none}
#lliste .row.on{border-color:var(--accent);background:#f5a52414}
.druckbilder{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}.druckbilder figure{margin:0}.druckbilder canvas{width:100%;height:auto;border:1px solid #ccc;border-radius:6px}.druckbilder figcaption{font-size:11px;color:#555;text-align:center}
.ladeseite{break-inside:avoid-page;margin-bottom:18px}.ladeseite+.ladeseite{break-before:page}
@media (max-width:520px){.druckbilder{grid-template-columns:1fr}}

.ladeopt select{flex:1 1 140px;min-width:0;max-width:100%}
select{max-width:100%}
.fzbalken{height:8px;border-radius:4px;background:var(--panel2);overflow:hidden;margin-top:8px}.fzbalken div{height:100%;background:var(--ok)}.fzbalken div.warn{background:var(--warn)}.fzbalken div.bad{background:var(--bad)}
.fzrow{align-items:flex-start;gap:10px;cursor:pointer}.fzrow input{margin-top:4px;width:20px;height:20px}.fzrow.on{border-color:var(--accent)}
.fzempf{margin:10px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.fzempf.bad{border-color:var(--bad)}
.kpi.kpi3{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi.kpi3 .stat{padding:10px}.kpi.kpi3 .stat b{font-size:1.15rem}.kpi.kpi3 .stat span{font-size:.75rem}
/* v0.9.3 Inhaltszettel & Artikelfoto im Dialog */
.adlg-bild{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.adlg-bild img,.adlg-bild .kein-bild{width:64px;height:64px;border-radius:10px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--panel2);border:1px solid var(--line)}.adlg-bild .btn{cursor:pointer}
.inhaltszettel.fmt-A5{max-width:560px}.inhaltszettel.fmt-A6{max-width:400px;padding:16px;font-size:11px}
.iz-kopf{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:8px}
.iz-kopf .logo img{max-height:56px;max-width:180px}.fmt-A6 .iz-kopf .logo img{max-height:34px;max-width:120px}
.iz-ve{display:flex;gap:12px;align-items:center;margin:10px 0 8px}.iz-ve .grow{flex:1;min-width:0}
.iz-name{font-size:26px;font-weight:800;line-height:1.1;margin:2px 0 4px;overflow-wrap:break-word}@media (max-width:520px){.iz-name{font-size:21px}}.fmt-A6 .iz-name{font-size:19px}
.iz-qr{width:96px;flex:none}.iz-qr svg{width:100%;height:auto;display:block}.fmt-A6 .iz-qr{width:66px}
.iz-tab td{vertical-align:middle}.iz-art{display:flex;align-items:center;gap:8px}.iz-art img{width:38px;height:38px;object-fit:cover;border-radius:4px;flex:none}.fmt-A6 .iz-art img{width:26px;height:26px}
.iz-leer td{height:26px}
.iz-fuss{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;border-top:1px solid #999;padding-top:6px}
.iz-eigen{margin-top:8px;text-align:center;color:#555}
@media print{.inhaltszettel,.inhaltszettel.fmt-A5,.inhaltszettel.fmt-A6{max-width:none;padding:0}.iz-tab tr{break-inside:avoid}.iz-art img{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.iz-tab th.r,.iz-tab td.r,.iz-tab th.box,.iz-tab td.box{width:1%;white-space:nowrap;padding-right:10px}
.iz-opt{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.iz-opt select{width:auto}.iz-opt .check{display:inline-flex;gap:6px;align-items:center;margin:0;width:auto}.iz-opt .check input{width:18px;height:18px;margin:0}
