/* Seite Nachbestellen (Konzept C, 03.11.2026): Master-Detail – links Bestellliste nach Dringlichkeit, rechts Prognose-Graph */
.szen{gap:8px}.szen input{width:110px;accent-color:var(--brand)}.szen .num{font:600 12px var(--mono);min-width:34px}
.nb-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 16px}
.nb-kpi .k{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:0;transition:box-shadow .15s}
.nb-kpi .k:hover{box-shadow:0 6px 20px rgba(53,9,18,.08)}
.nb-kpi .k.on{border-color:var(--brand-ink);box-shadow:inset 0 0 0 1px var(--brand-ink)}
.nb-kpi .k .lbl{font-size:12px;font-weight:600;color:var(--ink-3);display:flex;gap:8px;align-items:center}
.nb-kpi .k .lbl i{width:8px;height:8px;border-radius:50%;flex:none}
.nb-kpi .k .val{font-size:28px;font-weight:800;letter-spacing:-.03em;line-height:1.05}
.nb-kpi .k .val small{font-size:13px;font-weight:500;color:var(--ink-3);letter-spacing:0;margin-left:4px}
.nb-kpi .k .foot{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nb-kpi .k.jetzt .val{color:var(--bad)}.nb-kpi .k.bald .val{color:var(--gold-ink)}.nb-kpi .k.pause .val{font-size:20px;padding-top:4px}
.nb-lay{display:grid;grid-template-columns:400px minmax(0,1fr);gap:16px;align-items:start}
.nb-list{padding:0;overflow:hidden;position:sticky;top:64px;max-height:calc(100vh - 80px);display:flex;flex-direction:column}
.nb-list .lh{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}
.nb-list .lh input{flex:1;min-width:0}
.nb-list .ls{overflow-y:auto;flex:1}
.nb-list .grp{position:sticky;top:0;z-index:1;background:var(--surface-2);font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:6px 12px;display:flex;justify-content:space-between}
.nb-list .grp.jetzt{color:var(--bad)}.nb-list .grp.bald{color:var(--gold-ink)}
.nb-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto 26px;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);cursor:pointer;border-left:3px solid transparent}
.nb-row:hover{background:#FBF8F3}
.nb-row.on{background:var(--brand-soft);border-left-color:var(--brand-ink)}
/* QC 12.11.2026: keine farbige Kante je Dringlichkeit mehr (Stil-Regel: Farbe nur in kleinen Badges). Die Dringlichkeit steht rechts in der Zeile (.r .w.k / .w.b). */
.nb-row .nm{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nb-row .nm small{font-weight:500;color:var(--ink-3)}
.nb-row .m{font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nb-row .m b{color:var(--ink-2);font-weight:600}
.nb-row .r{text-align:right;white-space:nowrap}
.nb-row .r .w{font-weight:800;font-size:13px;letter-spacing:-.01em}
.nb-row .r .w.k{color:var(--bad)}.nb-row .r .w.b{color:var(--gold-ink)}
.nb-row .r .l{display:block;font:500 10.5px var(--mono);color:var(--ink-4);margin-top:2px}
.nb-row .pimg{width:36px;height:36px}
.nb-detail{display:flex;flex-direction:column;gap:16px;min-width:0}
.nb-head{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nb-head .pimg{width:56px;height:56px;border-radius:12px}
.nb-head h2{margin:0;font-size:20px;letter-spacing:-.02em}
.nb-head h2 small{font-weight:500;color:var(--ink-3);font-size:14px}
.nb-head .sku{display:block;margin-top:2px}
/* Varianten als Bildkarten links: Bild oben, Name darunter, gewählte Karte markiert (03.11.2026) */
.nb-head .vcards{display:flex;gap:8px;flex-wrap:wrap}
.nb-head .vcard{display:flex;flex-direction:column;align-items:center;gap:6px;width:92px;padding:8px 6px 7px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);cursor:pointer;font:600 12px var(--sans);color:var(--ink-2);transition:.12s;line-height:1.15;text-align:center}
.nb-head .vcard .pimg{width:68px;height:68px;border-radius:10px;object-fit:cover}
.nb-head .vcard:hover:not(:disabled){border-color:var(--ink-3);background:#fff}
.nb-head .vcard.on{border-color:var(--brand-ink);background:#fff;color:var(--brand-ink);box-shadow:0 0 0 2px rgba(59,2,17,.12)}
.nb-head .vcard:disabled{cursor:default}
.nb-ans{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}
.nb-ans .a{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;min-width:0}
.nb-ans .a .lbl{font-size:11.5px;font-weight:600;color:var(--ink-3);margin-bottom:4px;line-height:1.3}
.nb-ans .a .v{font-size:20px;font-weight:800;letter-spacing:-.02em;line-height:1.1;white-space:nowrap}
.nb-ans .a .v.k{color:var(--bad)}.nb-ans .a .v.b{color:var(--gold-ink)}.nb-ans .a .v.g{color:var(--good)}
.nb-ans .a .s{font-size:11.5px;color:var(--ink-3);margin-top:3px;line-height:1.35}
.nb-chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px 10px;position:relative}
.nb-chart svg{width:100%;height:auto;display:block;font-family:var(--sans)}
.nb-chart .leg{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);margin-top:6px}
.nb-chart .leg span{display:inline-flex;align-items:center;gap:6px}
.nb-chart .leg i{width:16px;height:0;border-top:2px solid var(--brand)}
.nb-chart .leg i.dash{border-top-style:dashed;border-color:var(--ink-3)}.nb-chart .leg i.gold{border-color:var(--gold)}.nb-chart .leg i.bad{border-color:var(--bad)}.nb-chart .leg i.good{border-color:var(--good)}.nb-chart .leg i.hist{border-color:var(--ink)}
.nb-chart .leg i.pause{height:10px;border:0;background:repeating-linear-gradient(135deg,#E8E3DA 0 3px,transparent 3px 6px)}
.nb-tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;font-size:12px;line-height:1.4;padding:7px 10px;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.2);display:none;white-space:nowrap;z-index:5}
.nb-tip b{color:#C59A3D}
.nb-sats{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;font-size:13px;color:var(--ink-2);line-height:1.55}
.nb-sats p{margin:0 0 6px}.nb-sats p:last-child{margin:0}
.nb-sats .warnbox{background:var(--warn-soft);border:1px solid #E9DDBC;border-radius:10px;padding:10px 12px;margin:0 0 10px;color:var(--gold-ink)}
.nb-sats .warnbox b{color:var(--ink)}
.nb-act{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.nb-act .hint{flex:1;min-width:200px}
.nb-chart.mini{padding:0;border:0;background:transparent}
.empty-d{color:var(--ink-3);padding:40px;text-align:center}
@media (max-width:1100px){.nb-lay{grid-template-columns:1fr}.nb-list{position:static;max-height:360px}}
@media (max-width:640px){.nb-head .vcard{width:80px}.nb-head .vcard .pimg{width:56px;height:56px}}
/* Saisonkarte (03.11.2026): Balken je Monat, Vorjahr hell / laufendes Jahr dunkel, Faktor darüber bei saisonalen Artikeln */
.nb-saison{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px 10px}
.nb-saison .sh{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;margin-bottom:6px}
.nb-saison .sh .tag{font:600 11px var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-3)}
.nb-saison .sh .tag.s{background:var(--brand-soft,#F3E8EC);color:var(--brand)}
.nb-saison svg.sg{display:block;width:100%;height:auto}
.nb-saison .sl{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);margin-top:4px;align-items:center}
.nb-saison .sl span{display:inline-flex;align-items:center;gap:6px}
.nb-saison .sl i{width:10px;height:10px;border-radius:2px;display:inline-block}
.nb-saison .sl .hint{margin-left:auto}

/* Warenkorb (03.11.2026): Plus/Haken je Zeile, Leiste unten, Bestellfenster */
.nb-row .add{width:24px;height:24px;border-radius:50%;border:1px solid var(--line-2);background:var(--surface);color:var(--ink-3);font:700 14px var(--sans);line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.nb-row .add:hover{border-color:var(--brand-ink);color:var(--brand-ink)}
.nb-row .add.on{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff}
.nb-row.im .m .cart{color:var(--brand);font-weight:700}
.nb-act .inb{font-size:13px;font-weight:600;color:var(--ink-2)}
body.has-bar{padding-bottom:84px}
.nb-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;width:min(960px,calc(100% - 32px));background:var(--ink);color:#fff;border-radius:14px;padding:12px 16px 12px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 14px 40px rgba(0,0,0,.3);z-index:60;cursor:pointer}
.nb-bar[hidden]{display:none}
.nb-bar .bi{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:13px;flex:1;min-width:0}
.nb-bar .bi b{font-size:14px;letter-spacing:-.01em;color:#C59A3D}
.nb-bar .bi span{white-space:nowrap}.nb-bar .bi .lf{color:rgba(255,255,255,.7)}
.nb-bar .ba{display:flex;gap:8px;flex:none}
.nb-bar .btn{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}.nb-bar .btn.pri{background:#C59A3D;border-color:#C59A3D;color:#3B0211}
@media (max-width:640px){.nb-bar{flex-direction:column;align-items:stretch}.nb-bar .ba .btn{flex:1}}

/* Absatz-Aufschlag je Monat (03.11.2026): 12 Prozentfelder unter der Saisongrafik */
.nb-saison .auf{display:grid;grid-template-columns:150px repeat(12,minmax(0,1fr));gap:4px;align-items:end;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}
.nb-saison .auf .al{display:flex;flex-direction:column;gap:1px;font-size:12px;padding-bottom:3px}
.nb-saison .auf .al small{font-size:10.5px;color:var(--ink-3)}
.nb-saison .auf label{display:flex;flex-direction:column;align-items:center;gap:2px}
.nb-saison .auf label small{font-size:10px;color:var(--ink-3);white-space:nowrap}
.nb-saison .auf .inp{width:100%;max-width:56px;padding:3px 4px;text-align:center;font:500 12px var(--mono)}
.nb-saison .auf .inp:not(:placeholder-shown){border-color:#3D7A5A;color:#3D7A5A;font-weight:700}
.nb-saison .auf.ro .inp{background:var(--surface-2);color:var(--ink-3)}
@media(max-width:900px){.nb-saison .auf{grid-template-columns:repeat(6,minmax(0,1fr))}.nb-saison .auf .al{grid-column:1/-1}}
