/* CompanyOS Cockpit · feature-specific presentation. */
@layer features {
  .pimStock { display:grid; gap:var(--space-4); min-width:0; }
  .pimStockSection { min-width:0; }
  .pimStockSection + .pimStockSection { border-top:1px solid var(--line); padding-top:var(--space-4); }
  .pimStockSection h4 { margin:0 0 var(--space-3); font-size:var(--type-card); }
  .pimStockSection p { margin:var(--space-2) 0; overflow-wrap:anywhere; }
  .pimStockMetrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(110px,1fr)); gap:var(--space-2); margin:0; }
  .pimStockMetric { border:1px solid var(--line); border-top:3px solid var(--fg); border-radius:var(--r); padding:var(--space-3); background:var(--panel-2); min-width:0; }
  .pimStockMetric dt { font-size:13px; color:var(--fg); }
  .pimStockMetric dd { margin:var(--space-2) 0 0; font-size:20px; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
  .pimStockReserved { border-top-color:var(--warn); background:var(--warn-soft); }
  .pimStockAvailable { border-top-color:var(--approve); background:var(--approve-soft); }
  .pimStockExternal { border-top-color:var(--info); background:var(--info-soft); }
  .pimStockHint { color:var(--muted); font-size:13px; }
  .pimStockNotice { color:var(--warn); font-size:14px; }
  .pimStockPolicy { display:flex; flex-wrap:wrap; gap:var(--space-4); font-size:13px; }
  .pimStockLocations, .pimStockIncoming { padding-left:var(--space-5); margin:var(--space-2) 0; overflow-wrap:anywhere; }
  .pimStockReceipt { display:grid; gap:var(--space-1); font-size:13px; }
  .pimStockSuppliers { display:grid; gap:var(--space-3); padding:0; margin:var(--space-3) 0 0; list-style:none; }
  .pimStockSuppliers > li { border:1px solid var(--line); border-left:3px solid var(--info); border-radius:var(--r); background:var(--info-soft); padding:var(--space-3); min-width:0; }
  .pimStockSupplierHead { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:var(--space-2); overflow-wrap:anywhere; }
  .pimStockSupplierQty { color:var(--info); font-weight:600; font-variant-numeric:tabular-nums; }
  .pimStockEvidence { margin-top:var(--space-2); color:var(--muted); font-size:12px; overflow-wrap:anywhere; }
  .pimStockEvidence summary { cursor:pointer; min-height:44px; display:flex; align-items:center; text-decoration:underline; }
  .pimSupplierFacts { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:var(--space-2) var(--space-3); margin:var(--space-3) 0; font-size:13px; }
  .pimSupplierFacts:empty { display:none; }
  .pimSupplierFacts dt { color:var(--muted); overflow-wrap:anywhere; }
  .pimSupplierFacts dd { margin:0; min-width:0; overflow-wrap:anywhere; }
  .pimSupplierSku { display:inline-block; font-family:var(--font-mono); margin-right:var(--space-2); overflow-wrap:anywhere; max-width:100%; }
  .pimSupplierPrice { display:block; font-variant-numeric:tabular-nums; }
  .pimSupplierPrices dd { font-weight:600; }
  .pimSupplierPrices, .pimSupplierTerms { border-top:1px solid var(--line); margin-top:var(--space-3); padding-top:var(--space-2); }
  .pimSupplierTerms > b { font-size:13px; }
  .pimSupplierLinks a { display:inline-flex; align-items:center; min-height:44px; }
  @media (max-width:480px) { .pimSupplierFacts { grid-template-columns:minmax(0,1fr); gap:var(--space-1); } .pimSupplierFacts dd + dt { margin-top:var(--space-2); } }


  header { padding:16px 22px; border-bottom:1px solid var(--line); display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
  header h1 { font-size:16px; margin:0; font-weight:600; }
  header h1 span { color:var(--muted); font-weight:400; }
  main { padding:0; }
  .tgBtn { background:none; border:1px solid var(--line); border-radius:6px; color:var(--muted); font-size:11px; padding:2px 7px; cursor:pointer; width:auto; }
  .tgBtn:hover { color:var(--fg); border-color:var(--fg); }
  .imgStrip { display:flex; gap:8px; flex-wrap:wrap; }
  .imgStrip img { width:72px; height:72px; object-fit:contain; border:1px solid var(--line); border-radius:7px; background:var(--panel2, var(--bg)); cursor:pointer; }
  .imgStrip img.prim { border-color:var(--accent); }
  .imgPlus { width:72px; height:72px; border:1px dashed var(--line); border-radius:7px; background:none; color:var(--muted); font-size:24px; cursor:pointer; }
  .imgPlus:hover { color:var(--fg); border-color:var(--fg); }
  #imgModalWrap { position:fixed; inset:0; background:var(--scrim); z-index:var(--z-dialog); display:none; overflow:auto; }
  #imgModal { width:min(760px,94vw); margin:7vh auto 6vh; background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:18px 20px; box-shadow:var(--shadow-modal); }
  .imageModalTitle { margin:0; font-size:var(--type-card); }
  .list { border-right:1px solid var(--line); overflow:auto; }
  .rowOpen { position:absolute; inset:0; z-index:0; width:100%; height:100%; min-height:0; padding:0; border:0; border-radius:0; background:transparent; }
  .rowOpen:hover { background:transparent; filter:none; }
  .rowOpen:focus-visible { outline:2px solid var(--accent); outline-offset:-3px; }
  .k-simple { color:var(--muted); }
  .k-variant_parent { color:var(--accent); border-color:var(--accent); }
  .k-variant_child { color:var(--slate); border-color:var(--slate); }
  .dot { width:8px; height:8px; border-radius:50%; display:inline-block; flex:none; }
  .dot.on { background:var(--green); }
  .dot.off { background:var(--line); }
  #palWrap { position:fixed; inset:0; background:var(--scrim); z-index:var(--z-dialog); display:none; }
  #pal { width:min(560px,90vw); margin:12vh auto 0; background:var(--panel); border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-modal); overflow:hidden; }
  #palQ { width:100%; box-sizing:border-box; background:transparent; border:0; border-bottom:1px solid var(--line); color:var(--fg); font-size:15px; padding:14px 16px; outline:none; }
  #palList { max-height:46vh; overflow:auto; padding:6px; }
  .palRow.sel, .palRow:hover { background:var(--accent-soft); }
  .palRow .palK { color:var(--muted); font-size:11px; margin-left:auto; }
  .cchildren { margin-left:18px; border-left:1px solid var(--line); padding-left:6px; }
  .axcard { background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:14px 16px; margin-bottom:12px; }
  .axcard h3 { margin:0 0 10px; display:flex; align-items:center; gap:8px; }
  .vchip { display:inline-flex; align-items:center; gap:6px; background:var(--panel2); border:1px solid var(--line); border-radius:6px; padding:3px 9px 3px 7px; margin:0 6px 6px 0; font-size:12px; cursor:pointer; user-select:none; }
  .vchip.on { border-color:var(--accent); background:var(--accent-soft); }
  .vwrap { display:inline-flex; align-items:stretch; margin:0 6px 6px 0; }
  .vwrap .vchip { margin:0; border-top-right-radius:0; border-bottom-right-radius:0; }
  .relbtn { background:transparent; color:var(--muted); border:1px solid var(--line); border-left:0; border-radius:0 6px 6px 0; padding:0 8px; font-size:12px; font-weight:400; cursor:pointer; }
  .relbtn:hover { color:var(--accent); border-color:var(--accent); }
  .mergebar { margin-top:10px; padding:10px 12px; background:var(--panel2); border:1px solid var(--accent); border-radius:8px; display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
  .kpigrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; margin-bottom:22px; }
  .chan { background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:13px 16px; margin-bottom:10px; display:flex; align-items:center; gap:14px; }
  .chan .nm { font-weight:600; min-width:130px; flex:none; overflow-wrap:anywhere; }
  .chan .rl { color:var(--muted); font-size:13px; flex:1; }
  .st { font-size:10px; padding:2px 9px; border-radius:20px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; flex:none; }
  .st-read_only { color:var(--accent); border:1px solid var(--accent); }
  .st-connected { color:var(--green); border:1px solid var(--green); }
  .st-stub { color:var(--amber); border:1px solid var(--amber); }
  .st-planned { color:var(--muted); border:1px solid var(--line); }
  .st-unknown,.st-unavailable { color:var(--amber); border:1px solid var(--amber); }
  .st-live { color:var(--green); border:1px solid var(--green); }
  .st-sandbox,.st-manual { color:var(--accent); border:1px solid var(--accent); }
  .scaffold { padding:44px 26px; color:var(--muted); max-width:640px; }
  .scaffold h2 { color:var(--fg); margin:0 0 6px; }
  .scaffold .big { font-size:34px; margin-bottom:10px; }
  .teamwrap { padding:20px 24px; overflow:auto; height:100%; max-width:1000px; }
  .teamhead { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
  .teamMsg { min-height:18px; font-size:13px; color:var(--green); margin-bottom:8px; }
  .teamMsg.err { color:var(--red); }
  .usercards { display:flex; flex-direction:column; gap:12px; margin:6px 0 10px; }
  .usercard { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:14px 16px 12px; transition:border-color .15s; }
  .usercard:hover { border-color:var(--slate); }
  .uc-top { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
  .uc-name { font-weight:600; font-size:14.5px; }
  .uc-status { margin-left:auto; display:flex; align-items:center; gap:6px; font-size:12px; color:var(--muted); white-space:nowrap; }
  .uc-dot { width:7px; height:7px; border-radius:50%; display:inline-block; }
  .uc-areas { display:flex; flex-wrap:wrap; gap:6px; margin-top:11px; }
  .uc-actions { display:flex; align-items:center; gap:8px; margin-top:13px; padding-top:12px; border-top:1px solid var(--line); }
  .uc-actions .spacer { flex:1; }
  .teamtbl { width:100%; border-collapse:collapse; font-size:13px; }
  .teamtbl th { text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--muted); font-weight:600; padding:6px 10px; border-bottom:1px solid var(--line); }
  .teamtbl td { padding:9px 10px; border-bottom:1px solid var(--line); vertical-align:middle; }
  .teamtbl .tperms { max-width:320px; }
  .tchip { display:inline-block; background:var(--panel2); border:1px solid var(--line); border-radius:6px; padding:2px 7px; margin:0 5px 4px 0; font-size:11px; color:var(--fg); }
  .tchip-all { border-color:var(--accent); color:var(--accent); }
  .tchip-none { color:var(--muted); }
  .tchip-self { border-color:var(--accent); color:var(--accent); }
  .trole { font-size:11px; padding:2px 8px; border-radius:20px; border:1px solid var(--line); }
  .trole-admin { border-color:var(--accent); color:var(--accent); }
  .tactive { color:var(--green); font-size:12px; }
  .tinactive { color:var(--red); font-size:12px; }
  .tbtn { padding:6px 12px; font-size:12px; border-radius:8px; }
  .tbtn-kit { border-color:var(--accent); color:var(--accent); }
  .tbtn-kit:hover { background:var(--accent-soft); }
  .tbtn-danger:hover { border-color:var(--red); color:var(--red); }
  .tbtn-good:hover { border-color:var(--green); color:var(--green); }
  .teamModalWrap { position:fixed; inset:0; background:var(--scrim); z-index:var(--z-dialog); display:flex; align-items:flex-start; justify-content:center; overflow:auto; padding:9vh 16px 16px; backdrop-filter:blur(4px); }
  .teamModalWrap[hidden] { display:none; }
  .teamModalWrap .teamform { margin-top:0; width:min(520px,94vw); box-shadow:var(--shadow-modal); }
  .teamform { margin-top:18px; background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:16px 18px; max-width:520px; }
  .teamform h3 { margin:0 0 12px; font-size:var(--type-card); }
  .krow { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:8px 0; border-top:1px solid var(--line); }
  .tfrow { display:flex; align-items:center; gap:12px; margin-bottom:10px; }
  .tfrow > label { flex:none; width:120px; font-size:12px; color:var(--muted); }
  .tfrow.tfareas { align-items:flex-start; flex-wrap:wrap; }
  .tareas { display:flex; flex-wrap:wrap; gap:6px 14px; flex:1; }
  .tareabox { display:flex; align-items:center; gap:5px; font-size:12px; color:var(--fg); }
  .tfhint { flex-basis:100%; font-size:11px; color:var(--muted); margin-top:2px; margin-left:132px; }
  .tfbtns { display:flex; gap:8px; margin-top:6px; }
  .os { font-size:10px; padding:2px 9px; border-radius:20px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; border:1px solid var(--line); color:var(--muted); flex:none; }
  .os-placed { color:var(--fg); border-color:var(--fg); }
  .os-paid, .os-reserved { color:var(--accent); border-color:var(--accent); }
  .os-shipped, .os-invoiced, .os-closed { color:var(--green); border-color:var(--green); }
  .os-on_hold { color:var(--amber); border-color:var(--amber); }
  .os-cancelled { color:var(--red); border-color:var(--red); }
  .orderLineHead, .orderLineItem { display:grid; grid-template-columns:52px minmax(140px,1fr) 54px 94px 104px; gap:10px; align-items:center; }
  .orderLineHead { padding:0 10px 7px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.04em; }
  .orderLineItem { min-height:68px; padding:8px 10px; border-top:1px solid var(--line); }
  .orderLineThumb, .orderLineThumbPh { width:52px; height:52px; border:1px solid var(--line); border-radius:8px; background:var(--panel2); object-fit:contain; }
  .orderLineThumbPh { display:grid; place-items:center; color:var(--muted); font-size:18px; }
  .orderLineIdentity { min-width:0; }
  .orderLineIdentity strong { display:block; overflow-wrap:anywhere; font-size:13px; line-height:1.35; }
  .orderLineIdentity span { display:block; margin-top:3px; color:var(--muted); font-family:ui-monospace,monospace; font-size:11px; overflow-wrap:anywhere; }
  .orderLineNumber { text-align:right; font-variant-numeric:tabular-nums; }
  @media (max-width:600px) {
    .orderLineHead { display:none; }
    .orderLineItem { grid-template-columns:48px minmax(0,1fr) auto; gap:7px 9px; }
    .orderLineThumb, .orderLineThumbPh { width:48px; height:48px; grid-row:1 / span 2; }
    .orderLineItem > .orderLineNumber:nth-child(4) { grid-column:2; text-align:left; color:var(--muted); font-size:11px; }
    .orderLineItem > .orderLineNumber:nth-child(5) { grid-column:3; }
  }
  .doc { background:#f4f1ea; color:#1a1a1a; border-radius:6px; padding:18px 20px; margin:10px 0; max-width:420px; font-size:12.5px; line-height:1.5; box-shadow:0 4px 16px #0006; }
  .doc h4 { margin:0 0 2px; font-size:14px; color:#111; }
  .doc .muted { color:#666; font-size:11px; }
  .doc table { width:100%; border-collapse:collapse; margin-top:8px; }
  .doc th, .doc td { text-align:left; padding:3px 4px; border-bottom:1px solid #ddd; font-size:12px; }
  .doc th { color:#666; font-weight:600; text-transform:uppercase; font-size:10px; letter-spacing:.04em; }
  .stepbox { background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:14px 16px; margin-top:14px; }
  .stepbox h4 { margin:0 0 8px; font-size:var(--type-card); line-height:var(--leading-heading); color:var(--fg); }
  .shipMonitor { padding:14px 16px 18px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--panel) 38%,transparent); }
  .shipMonitorHead { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; }
  .shipMonitorHead h3 { margin:0 0 3px; font-size:var(--type-card); }
  .shipMonitorHead p { margin:0; max-width:72ch; color:var(--muted); font-size:12px; line-height:1.55; }
  .shipMetrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(105px,1fr)); gap:8px; margin:12px 0; }
  .shipMetric { min-width:0; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:var(--panel); }
  .shipMetric b { display:block; font-size:17px; font-variant-numeric:tabular-nums; }
  .shipMetric span { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.04em; }
  .shipmentCard { margin-top:9px; padding:11px 12px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
  .shipmentCard[data-attention="true"] { border-color:color-mix(in srgb,var(--amber) 58%,var(--line)); }
  .shipmentCardHead { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
  .shipmentCardHead code { color:var(--fg); font:600 12px/1.4 var(--font-mono); }
  .shipmentCardMeta { margin:5px 0 8px; color:var(--muted); font-size:11px; line-height:1.5; }
  .shipmentStages { display:grid; grid-template-columns:repeat(auto-fit,minmax(122px,1fr)); gap:6px; }
  .shipmentStage { min-width:0; padding:7px 8px; border:1px solid var(--line); border-radius:7px; background:var(--panel2); }
  .shipmentStage b { display:block; margin-bottom:2px; color:var(--muted); font-size:9.5px; text-transform:uppercase; letter-spacing:.04em; }
  .shipmentStage span { display:block; overflow-wrap:anywhere; font-size:11px; }
  .shipmentStage[data-tone="ok"] span { color:var(--green); }
  .shipmentStage[data-tone="warn"] span { color:var(--amber); }
  .shipmentStage[data-tone="bad"] span { color:var(--red); }
  .shipmentReasons { margin-top:8px; color:var(--amber); font:10.5px/1.5 var(--font-mono); overflow-wrap:anywhere; }
  .shipmentLabelActions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:10px; }
  .shipmentLabelActions a { color:var(--accent); font-size:11.5px; }
  /* Firmendaten — Formularregeln nach Design-System §7.6/§9/§10: Controls mindestens
     --control-min hoch, Body-Typo (auf kleinen Viewports automatisch 16px), Label über das
     kanonische .fieldLabel, Hilfe persistent unter dem Feld, Pflicht als Sternchen statt Wort. */
  .cpBlock { margin-bottom:14px; padding:16px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .cpBlock h3 { display:flex; align-items:center; gap:9px; margin:0 0 3px; font-size:var(--type-card); line-height:var(--leading-heading); }
  .cpGap { color:var(--warn); border-color:currentColor; }
  .cpHint { margin:0 0 14px; color:var(--muted); font-size:var(--type-secondary); line-height:var(--leading-body); max-width:74ch; }
  .cpLegend { margin:0 0 16px; color:var(--muted); font-size:var(--type-label); }
  /* Subgrid haelt Label-, Eingabe- und Hilfezeile ueber die ganze Zeile buendig, auch wenn ein
     Label umbricht. Genau dieser Umbruch hat vorher ein Feld aus der Reihe fallen lassen. */
  .cpGrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:6px 14px; align-items:start; }
  .cpField { display:grid; grid-template-rows:subgrid; grid-row:span 3; gap:4px; min-width:0; }
  .cpReq { margin-left:2px; color:var(--warn); font-weight:600; }
  .cpNote { color:var(--muted); font-size:var(--type-label); line-height:var(--leading-body); }
  .cpInput { width:100%; min-height:var(--control-min); padding:0 11px; border:1px solid var(--line);
    border-radius:9px; background:var(--surface); color:var(--fg); font-size:var(--type-body); font-family:inherit; }
  textarea.cpInput { padding:11px; line-height:var(--leading-body); resize:vertical; }
  .cpInput:focus { border-color:var(--accent); outline:none; box-shadow:0 0 0 3px var(--accent-soft); }
  /* Save Bar je Block (Design-System 7.4): erscheint NUR bei echtem Dirty-State, benennt die Zahl
     geaenderter Felder, bietet Verwerfen und Speichern. Ohne Aenderung bleibt der Block ruhig —
     das ist der Unterschied zwischen einer Maske und einer Knopfwand. */
  .cpActions { display:none; align-items:center; gap:12px; margin-top:14px; padding-top:13px; border-top:1px solid var(--line); flex-wrap:wrap; }
  .cpBlock[data-dirty="true"] .cpActions { display:flex; }
  .cpDirty { color:var(--warn); font-size:var(--type-secondary); }
  .cpStatus { font-size:var(--type-secondary); color:var(--muted); }
  .cpStatus[data-tone="ok"] { color:var(--approve); }
  .cpStatus[data-tone="bad"] { color:var(--danger); }
  @media (max-width:600px) { .cpGrid { grid-template-columns:minmax(0,1fr); } }
  @supports not (grid-template-rows:subgrid) { .cpField { display:flex; flex-direction:column; } }
  .wizLabelPrint { margin-top:16px; }
  .wizLabelHint { margin-top:6px; color:var(--muted); font-size:11px; }
  .wizLabelHint a { color:var(--accent); }
  .legacyShipment { display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:8px 0; border-bottom:1px solid var(--line); font-size:11.5px; }
  .legacyShipment:last-child { border-bottom:0; }
  @media (max-width:600px) { .shipmentStages { grid-template-columns:repeat(2,minmax(0,1fr)); } }
  #shipWizWrap { position:fixed; inset:0; z-index:var(--z-dialog); display:none; background:var(--scrim); backdrop-filter:blur(9px) saturate(1.15); -webkit-backdrop-filter:blur(9px) saturate(1.15); }
  #shipWiz { position:absolute; inset:0; display:flex; flex-direction:column; overflow:hidden;
    background:radial-gradient(1300px 760px at 50% -14%,var(--accent-soft),transparent 56%),var(--bg);
    animation:wizRise .3s cubic-bezier(.2,.85,.25,1) both; }
  @keyframes wizRise { from{opacity:.25;transform:scale(.986) translateY(10px)} to{opacity:1;transform:none} }
  .wizHead { flex:none; display:flex; align-items:center; gap:18px; padding:22px 34px 16px; }
  .wizHead h3 { margin:0; font-size:21px; font-weight:650; letter-spacing:-.015em; }
  .wizHead .wizSub { font-size:12.5px; color:var(--muted); margin-top:3px; }
  .wizX { padding:8px 15px; font-size:12.5px; border-radius:8px; }
  .wizSteps { display:flex; align-items:flex-start; gap:0; padding:2px 34px 22px; }
  .wizStep { position:relative; flex:1; display:flex; flex-direction:column; align-items:center; gap:9px; font-size:12.5px; color:var(--muted); text-align:center; padding:0 6px; }
  .wizStep:not(:last-child)::after { content:""; position:absolute; top:16px; left:calc(50% + 22px); right:calc(-50% + 22px); height:2px; background:var(--line); z-index:0; border-radius:2px; }
  .wizStep.done:not(:last-child)::after { background:var(--green); }
  .wizDot { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; font-size:13.5px; font-weight:650; background:var(--panel2); border:2px solid var(--line); color:var(--muted); position:relative; z-index:1; transition:.22s; }
  .wizStep.cur { color:var(--fg); font-weight:600; }
  .wizStep.done { color:var(--green); }
  .wizStep.done .wizDot { border-color:var(--green); color:var(--green); background:var(--green-soft); }
  #shipWizBody { flex:1; overflow:hidden; border-top:1px solid var(--line); display:flex; }
  .wizMain { flex:1; min-width:0; overflow:hidden; }
  .wizAside .asecT { font-size:10.5px; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); margin:0 0 9px; font-weight:600; }
  .wizAside .aseBlock { margin-bottom:26px; }
  .wizAside .aseAddr { font-size:14.5px; line-height:1.65; }
  .wizAside .aseFlow { font-size:12.5px; color:var(--muted); line-height:1.85; }
  @media (max-width:1040px){ .wizAside { display:none; } }
  .wizViewport { overflow:hidden; height:100%; }
  .wizTrack { display:flex; height:100%; transition:transform .36s cubic-bezier(.2,.85,.25,1); }
  .wizPanel { flex:0 0 100%; min-width:0; height:100%; overflow-y:auto; box-sizing:border-box; padding:36px max(28px,calc((100% - 1000px)/2)) 60px; }
  .wizPanel h3 { font-size:24px; font-weight:650; letter-spacing:-.015em; margin:0 0 6px; }
  .wizardStepTitle { margin:0 0 4px; font-size:var(--type-card); }
  .wizFoot { display:flex; gap:12px; align-items:center; margin-top:30px; border-top:1px solid var(--line); padding-top:20px; }
  .pickCard { display:flex; gap:16px; align-items:center; padding:14px 16px; margin:10px 0; background:var(--panel); border:1px solid var(--line); border-radius:12px; transition:border-color .2s, box-shadow .2s, background .2s; }
  .pickCard.flash { animation:pickFlash .5s ease; }
  @keyframes pickFlash { 0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 55%,transparent)} 100%{box-shadow:none} }
  .pickCard.flashErr { animation:pickFlashErr .5s ease; }
  @keyframes pickFlashErr { 0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 60%,transparent)} 100%{box-shadow:none} }
  .pickImg { flex:none; width:74px; height:74px; border-radius:10px; border:1px solid var(--line); background:var(--panel2); object-fit:contain; }
  .pickImgPh { flex:none; width:74px; height:74px; border-radius:10px; border:1px dashed var(--line); background:var(--panel2); display:grid; place-items:center; color:var(--muted); font-size:24px; }
  .pickInfo { flex:1; min-width:0; }
  .pickName { font-size:15.5px; font-weight:600; letter-spacing:-.01em; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .pickIds { font-size:12px; color:var(--muted); font-family:ui-monospace,Menlo,monospace; margin-top:2px; }
  .pickChips { display:flex; gap:6px; flex-wrap:wrap; margin-top:7px; }
  .pickCtl { flex:none; display:flex; align-items:center; gap:10px; }
  .pickQty { font-size:15px; font-weight:650; color:var(--muted); min-width:44px; text-align:right; font-variant-numeric:tabular-nums; }
  .pickQty b { color:var(--fg); }
  .btnConfirm { padding:10px 18px; font-size:13.5px; border-radius:9px; background:var(--panel2); color:var(--fg); border:1px solid var(--line); font-weight:600; }
  .btnConfirm:hover { border-color:var(--accent); }
  .btnPlus { padding:10px 14px; font-size:15px; border-radius:9px; background:var(--panel2); color:var(--fg); border:1px solid var(--line); font-weight:700; }
  .btnPlus:hover { border-color:var(--accent); }
  .scanIcon { flex:none; width:34px; height:26px; border-radius:4px; background:repeating-linear-gradient(90deg, var(--fg) 0 2px, transparent 2px 5px, var(--fg) 5px 6px, transparent 6px 10px, var(--fg) 10px 13px, transparent 13px 16px); opacity:.75; }
  .scanMsg2 { font-size:12px; flex:none; }
  .tc-green { color:var(--green); }
  .tc-amber { color:var(--amber); }
  .tc-red { color:var(--red); }
  .tc-muted { color:var(--muted); }
  .tc-accent { color:var(--accent); }
  .ff-mono { font-family:ui-monospace,Menlo,monospace; }
  .num { font-variant-numeric:tabular-nums; }
  .viewSub { font-size:12.5px; color:var(--muted); margin-bottom:4px; }
  .oflow { display:inline-flex; gap:3px; align-items:center; }
  .oflow .fdot { width:8px; height:8px; border-radius:50%; background:var(--panel2); border:1px solid var(--line); }
  .oflow .fdot.on { background:var(--green); border-color:var(--green); }
  .oflow .fdot.cur { background:var(--accent); border-color:var(--accent); box-shadow:0 0 8px color-mix(in srgb,var(--accent) 50%,transparent); }
  .oflow .fdot.err { background:var(--red); border-color:var(--red); }
  .oflow .fdot.hold { background:var(--amber); border-color:var(--amber); }
  .oflowBig { display:flex; gap:16px; align-items:center; margin-top:9px; flex-wrap:wrap; }
  .oflowBig .st { display:flex; align-items:center; gap:6px; font-size:11.5px; color:var(--muted); }
  .oflowBig .fdot { width:10px; height:10px; }
  .oflowBig .st.on { color:var(--fg); }
  .oflowBig .st.cur { color:var(--accent); font-weight:600; }
  .oflowBig .st.hold { color:var(--amber); font-weight:600; }
  .oflowBig .st.err { color:var(--red); }
  .dispoBtn { flex:1; max-width:250px; padding:12px 14px; background:var(--panel2); border:1px solid var(--line); border-radius:10px; color:var(--fg); font-weight:600; font-size:13px; text-align:left; line-height:1.5; cursor:pointer; transition:border-color .15s, box-shadow .15s; }
  .retReceiveLine { margin:10px 0; padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
  .retReceiveLineHead { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
  .retReceiveLineHead b,.retReceiveLineHead span { overflow-wrap:anywhere; }
  .retReceiveChoices { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0; }
  .retReceiveChoices .dispoBtn { min-width:min(190px,100%); max-width:230px; padding:9px 11px; }
  .retSerialGrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:7px; margin-top:8px; }
  .retSerialInput,.retLineReason { width:100%; background:var(--panel2); border:1px solid var(--line); color:var(--fg); border-radius:8px; padding:9px 11px; font-size:13px; }
  .retSerialInput { font-family:ui-monospace,Menlo,monospace; }
  .retLineReason { display:none; border-color:var(--amber); margin-bottom:4px; }
  .retReceiveBlock { margin-top:8px; padding:9px 11px; border:1px solid color-mix(in srgb,var(--red) 45%,var(--line)); border-radius:8px; color:var(--red); font-size:12px; line-height:1.45; }
  .attGrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr)); gap:12px; margin-bottom:24px; }
  .attCard { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:14px 16px; min-height:90px; }
  .attRow { display:flex; gap:8px; align-items:baseline; padding:5px 0; font-size:13px; border-bottom:1px solid var(--line); }
  .attRow:last-child { border-bottom:0; }
  .ftile:hover { border-color:var(--muted); }
  .eanPanel { margin:10px 0 4px; padding:14px 16px; background:var(--amber-soft); border:1px solid color-mix(in srgb,var(--amber) 50%,var(--line)); border-radius:12px; }
  .eanPanel .eanCand { display:block; width:100%; text-align:left; margin-top:8px; padding:10px 14px; font-size:13px; border-radius:9px; }
  .eanPanel .eanCand:hover { border-color:var(--amber); color:var(--fg); }
  #saveBarMsg { font-weight:600; white-space:nowrap; }
  #saveBarErr { color:var(--red); font-size:12px; max-width:340px; overflow:hidden; text-overflow:ellipsis; }
  #detNameInput { width:100%; font-size:18px; font-weight:600; background:transparent; border:1px solid transparent; border-radius:6px; padding:2px 6px; margin-left:-6px; color:var(--fg); font-family:inherit; }
  #detNameInput:hover { border-color:var(--line); }
  #detNameInput:focus { border-color:var(--accent); background:var(--panel2); outline:none; }
  .uiIcon { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex:none; }
  .topMark { width:30px; height:30px; flex:none; }
  .topBrandTitle { font-family:"Cabinet Grotesk",sans-serif; font-weight:800; font-size:19px; letter-spacing:-.01em; line-height:1; }
  /* Eine Zeile mit Ellipsis: Der zweizeilige Umbruch ragte 5 px unter die 60-px-Topbar und
     schnitt das letzte Wort sichtbar ab (15.08. am gerenderten Kasten nachgemessen). */
  .topBrandSub { color:var(--accent); font-size:9px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; margin-top:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:180px; }
  .topCrumb { color:var(--muted2); font-size:13px; white-space:nowrap; }
  .topCrumb b { color:var(--muted); font-weight:600; }
  .topSpacer { flex:1; min-width:8px; }
  .kbd { display:inline-flex; align-items:center; min-height:22px; padding:1px 6px; border:1px solid var(--line); border-radius:5px; background:var(--surface); color:var(--muted2); font-size:11px; }
  .topStatusDot { width:7px; height:7px; border-radius:50%; background:var(--slate); }
  .topIconBtn { width:44px; height:44px; min-height:44px; padding:0; display:grid; place-items:center; background:var(--panel); color:var(--muted); border:1px solid var(--line); border-radius:9px; }
  .topIconBtn:hover { color:var(--fg); border-color:var(--accent); }
  #userArea { flex:none; }
  .topUser { display:flex; align-items:center; gap:8px; }
  .topAvatar { width:44px; height:44px; border-radius:50%; display:grid; place-items:center; background:var(--panel2); border:1px solid var(--line); font-size:12px; font-weight:600; }
  .userMenu { position:relative; }
  .userMenu summary { list-style:none; cursor:pointer; }
  .userMenu summary::-webkit-details-marker { display:none; }
  .userPopover { position:absolute; right:0; top:50px; width:220px; z-index:var(--z-dialog); padding:10px; border:1px solid var(--line); border-radius:12px; background:var(--panel); box-shadow:var(--shadow-popover); }
  .userPopover .who { padding:7px 8px 11px; border-bottom:1px solid var(--line); margin-bottom:8px; }
  .userPopover .who b { display:block; }
  .userPopover .who span { color:var(--muted); font-size:12px; }
  .workTitleWrap { min-width:0; position:relative; }
  .workSubtitle { margin:0; color:var(--muted); font-size:12.5px; line-height:1.5; }
  .uiDetails { border-top:1px solid var(--line); }
  .uiDetails > summary { min-height:44px; display:flex; align-items:center; gap:8px; color:var(--muted); cursor:pointer; list-style:none; }
  .uiDetails > summary::-webkit-details-marker { display:none; }
  .uiDetails > summary::before { content:"›"; font-size:17px; transition:transform var(--motion-fast) var(--ease-standard); }
  .uiDetails[open] > summary::before { transform:rotate(90deg); }
  .uiTechnicalEvidence { color:var(--muted); font-family:var(--font-mono); font-size:11px; overflow-wrap:anywhere; }
  .scopeTag { display:inline-flex; align-items:center; min-height:28px; padding:3px 9px; border:1px solid var(--slate); border-radius:999px; color:var(--slate); font-size:10px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }
  .scopeTag.new { border-color:var(--accent); color:var(--accent); background:var(--accent-soft); }
  .scopeTag.planned { border-color:var(--amber); color:var(--amber); background:var(--amber-soft); }
  .cards { gap:10px; flex-wrap:wrap; margin-left:auto; display:none; }
  .embeddedViewTitle,.embeddedViewSub { display:none; }
  .viewTitle { margin:0 0 4px; letter-spacing:-.015em; font-family:"Cabinet Grotesk",sans-serif; font-size:23px; font-weight:800; }
  .k-variant_parent,.st-read_only,.os-paid,.os-reserved { color:var(--slate); border-color:var(--slate); }
  .k-variant_child,.st-connected,.os-shipped,.os-invoiced,.os-closed { color:var(--green); border-color:var(--green); }
  .scanBox { display:flex; align-items:center; gap:14px; padding:13px 18px; margin:14px 0 6px; border:1px solid var(--line); border-radius:12px; transition:border-color .2s, box-shadow .2s; min-height:64px; background:var(--accent-soft); border-color:var(--accent); }
  .scanBox:focus-within { border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
  .scanBox:focus-within .scanIcon { opacity:1; background:repeating-linear-gradient(90deg,var(--accent) 0 2px,transparent 2px 5px,var(--accent) 5px 6px,transparent 6px 10px,var(--accent) 10px 13px,transparent 13px 16px); }
  .goodsInWorkspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,360px); height:100%; overflow:hidden; }
  .goodsInMain { min-width:0; overflow-y:auto; padding:26px 30px 60px; }
  .goodsInWorkspace .wizAside { display:block; width:auto; min-width:0; }
  .methodBindingIdentity { min-width:280px; }
  .pickCard.done { border-color:var(--green); background:var(--green-soft); }
  .pickCard.done .btnConfirm { border:0; background:var(--green-deep); color:var(--on-strong); box-shadow:none; }
  .wizAside { flex:none; width:340px; border-left:1px solid var(--line); overflow-y:auto; padding:30px 24px; background:var(--surface); }
  .wizStep.cur .wizDot { border-color:var(--accent); color:var(--fg); background:var(--accent-soft); box-shadow:0 0 0 4px var(--accent-soft); }
  .dispoBtn.on { border-color:var(--accent); background:var(--accent-soft); box-shadow:0 0 0 3px var(--accent-soft); }
  .attCard.warn { border-color:color-mix(in srgb,var(--amber) 55%,var(--line)); }
  .ftile { display:inline-block; margin:0 6px 6px 0; border:1px solid var(--line); font-size:12px; cursor:pointer; transition:border-color .15s, background .15s; min-height:var(--control-min); padding:8px 11px; background:var(--panel); border-radius:999px; }
  .ftile.on { border-color:var(--accent); background:var(--accent-soft); }
  .ftile.isDisabled { cursor:not-allowed; border-style:dashed; color:var(--muted2); }
  .ftile.isDisabled:hover { border-color:var(--line); }
  .ftile.actionTile { padding:0; }
  .ftileAction,.ftileDelete { min-height:var(--control-min); padding:8px 11px; border:0; border-radius:999px; background:transparent; color:inherit; font:inherit; font-weight:500; }
  .ftileAction:hover:not(:disabled),.ftileDelete:hover:not(:disabled) { filter:none; background:var(--accent-soft); }
  .ftileDelete { width:var(--control-min); padding:0; color:var(--muted); }
  .savedTile { display:inline-flex; align-items:center; padding-left:4px; }
  #saveBarSave { background:var(--fg); color:var(--bg); }
  #palWrap,#imgModalWrap,.teamModalWrap,#shipWizWrap { background:var(--scrim); backdrop-filter:blur(4px); }
  #pal,#imgModal,.teamform,#shipWiz { background:var(--panel); border-color:var(--line); }
  .palRow { display:flex; gap:10px; align-items:center; width:100%; padding:8px 10px; border:0; border-radius:8px; background:transparent; color:inherit; text-align:left; cursor:pointer; font-size:13px; min-height:44px; }
  .palRow.sel,.palRow:hover { background:var(--accent-soft); }
  .loginBrand { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
  .loginMark { width:42px; height:42px; }
  .loginTitle { font-family:"Cabinet Grotesk",sans-serif; font-size:23px; font-weight:800; line-height:1; }
  .loginSub { color:var(--accent); font-size:10px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; margin-top:4px; }
  .mockPage { height:100%; overflow:auto; padding:16px 24px 32px; }
  .mockNotice { max-width:980px; margin-bottom:16px; padding:12px 14px; border:1px solid var(--accent); border-radius:12px; background:var(--accent-soft); color:var(--muted); font-size:12.5px; }
  .mockNotice b { color:var(--fg); }
  .operationalNotice { max-width:980px; margin-bottom:14px; border:1px solid var(--line); border-radius:var(--r); background:color-mix(in srgb,var(--panel) 72%,transparent); overflow:hidden; }
  .operationalNotice > summary { min-height:44px; padding:8px 12px; display:flex; align-items:center; gap:8px; color:var(--muted); cursor:pointer; list-style:none; font-size:11.5px; font-weight:600; }
  .operationalNotice > summary::-webkit-details-marker { display:none; }
  .operationalNotice > summary::before { content:"i"; width:20px; height:20px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; font-family:var(--font-mono); font-size:10px; }
  .operationalNotice > summary::after { content:"›"; margin-left:auto; font-size:18px; transition:transform var(--motion-fast) var(--ease-standard); }
  .operationalNotice[open] > summary::after { transform:rotate(90deg); }
  .operationalNoticeBody { padding:0 12px 12px 40px; color:var(--muted); font-size:12px; line-height:1.55; }
  .conceptCard { min-width:0; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--panel); }
  .conceptCard h3 { margin:0 0 5px; font-size:var(--type-card); }
  .conceptCard p { margin:0; color:var(--muted); font-size:12.5px; line-height:1.6; }
  .conceptEyebrow { color:var(--accent); font-size:10px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; overflow-wrap:anywhere; }
  .conceptTitle { margin:8px 0 4px; font-family:"Cabinet Grotesk",sans-serif; font-size:23px; font-weight:800; }
  .conceptSub { max-width:720px; color:var(--muted); font-size:13px; margin-bottom:18px; }
  .conceptList { border:1px solid var(--line); border-radius:14px; background:var(--panel); overflow:hidden; }
  .conceptHead,.conceptRow { display:flex; align-items:center; gap:12px; min-height:50px; padding:8px 14px; border-bottom:1px solid var(--line); }
  .conceptHead { min-height:46px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
  .conceptRow:last-child { border-bottom:0; }
  .conceptRow .grow { flex:1; min-width:0; }
  .conceptRow .grow b { display:block; }
  .conceptRow .grow span { color:var(--muted); font-size:12px; }
  .methodRow { align-items:flex-start; padding:8px 4px; border-bottom:1px solid var(--line); }
  .methodPrimary { min-width:230px; }
  .methodBindings { flex:1; }
  .methodState { flex:none; }
  .conceptMono { min-width:120px; font-family:ui-monospace,Menlo,monospace; font-size:12px; color:var(--muted); }

  /* EINKAUF — Bestellung als Artikelliste, nicht als Kachelraster.
     Inhaber am 13.09.2026 vor der alten Ansicht: der Punkt ist, dass du da interne IDs
     anzeigst. Deshalb steht hier keine einzige Kennung: Menge, Lieferanten-Nr., Artikel-Nr.,
     EAN, Artikelname — die Angaben, mit denen Majid beim Lieferanten bestellt. */
  .einkaufListe { display:flex; flex-direction:column; gap:22px; }
  /* Eine Liste JE LIEFERANT. Inhaber am 13.09.2026: gemischt macht ja garkein sinn —
     und der Name steht damit einmal ueber der Liste statt in jeder Zeile. */
  .einkaufLieferant { display:flex; flex-direction:column; gap:10px; }
  .einkaufLieferant > h3 { margin:0; font-family:"Cabinet Grotesk",sans-serif; font-size:17px; font-weight:800; }
  /* EIN Rahmen fuer alle Einkaufsbloecke. Vorher war Bedarf eine Liste, die Bestellungen
     waren Karten und die Wareneingaenge wieder eine Liste — drei Anmutungen auf einer Seite.
     Inhaber am 13.09.2026: das sollte eher ein einheitlicher look sein. */
  .einkaufBestellung, .einkaufBlock { border:1px solid var(--line); border-radius:14px; background:var(--panel); overflow:hidden; }
  .einkaufMeta { color:var(--muted); font-size:12px; margin:0 0 10px; }
  .einkaufLeer { padding:16px 14px; }
  .einkaufLeer b { display:block; }
  .einkaufLeer span { color:var(--muted); font-size:12px; }
  .einkaufNr { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:11px;
               text-transform:uppercase; letter-spacing:.05em; }
  .einkaufNr input { width:132px; padding:5px 8px; border:1px solid var(--line); border-radius:8px;
                     background:var(--surface,transparent); color:var(--fg); font:inherit; font-size:12px;
                     font-variant-numeric:tabular-nums; text-transform:none; letter-spacing:0; }
  .einkaufMenge { width:62px; padding:4px 6px; border:1px solid var(--line); border-radius:7px;
                  background:var(--surface,transparent); color:var(--fg); font:inherit; font-weight:700;
                  font-variant-numeric:tabular-nums; text-align:right; }
  .einkaufTabelle th.hk, .einkaufTabelle td.hk { width:26px; padding-right:0; }
  .einkaufWe { white-space:nowrap; }
  .einkaufWe .einkaufMenge { width:56px; margin-right:6px; }
  .einkaufFertig { color:var(--muted); font-size:11.5px; }
  /* Die Rechnungsmaske sitzt IN der Bestellkarte, nicht in einem Dialog: sie gehoert zu
     dieser Bestellung, und man will die Positionen dabei sehen. */
  .einkaufMaske { border-bottom:1px solid var(--line); background:var(--surface,transparent); }
  .einkaufMaskeKopf { display:flex; gap:18px; flex-wrap:wrap; padding:11px 14px; }
  .einkaufMaskeKopf label { display:flex; align-items:center; gap:7px; color:var(--muted);
                            font-size:11px; text-transform:uppercase; letter-spacing:.05em; }
  .einkaufMaskeKopf input { padding:5px 8px; border:1px solid var(--line); border-radius:8px;
                            background:var(--panel); color:var(--fg); font:inherit; font-size:12px;
                            text-transform:none; letter-spacing:0; }
  .einkaufMaskeFuss { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:10px 14px; }
  .einkaufMaskeFuss span { flex:1; min-width:220px; color:var(--muted); font-size:11.5px; }
  .einkaufKopf { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:11px 14px; border-bottom:1px solid var(--line); }
  .einkaufKopf b { display:block; font-size:15px; }
  .einkaufKopf span { color:var(--muted); font-size:12px; }
  .einkaufKopfRechts { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
  .einkaufVermerke { display:flex; gap:14px; flex-wrap:wrap; padding:7px 14px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; }
  .einkaufTabelle { width:100%; border-collapse:collapse; font-size:13px; }
  .einkaufTabelle th { text-align:left; padding:7px 14px; border-bottom:1px solid var(--line); color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.07em; font-weight:600; white-space:nowrap; }
  .einkaufTabelle td { padding:7px 14px; border-bottom:1px solid var(--line); vertical-align:top; }
  .einkaufTabelle tr:last-child td { border-bottom:0; }
  .einkaufTabelle .r { text-align:right; }
  .einkaufTabelle .n { font-variant-numeric:tabular-nums; font-weight:700; white-space:nowrap; }
  .einkaufTabelle .mono { font-family:ui-monospace,Menlo,monospace; font-size:12px; white-space:nowrap; color:var(--muted); }
  .einkaufTabelle .mono.stark { color:var(--fg); font-weight:600; }
  .einkaufTabelle small { color:var(--muted); }
  .approveAction { background:var(--green-deep); color:var(--on-strong); }
  .impactBox { margin-top:12px; padding:12px; border:1px solid var(--accent); border-radius:10px; background:var(--accent-soft); color:var(--muted); font-size:12px; }
  .impactBox b { display:block; color:var(--fg); margin-bottom:3px; }
  .conceptTileGrid { display:grid; grid-template-columns:repeat(4,minmax(130px,1fr)); gap:10px; }
  .conceptTile { aspect-ratio:1.2; padding:12px; border:1px solid var(--line); border-radius:12px; background:var(--surface); display:flex; flex-direction:column; justify-content:space-between; }
  .conceptTile.add { border-style:dashed; align-items:center; justify-content:center; color:var(--muted); text-align:center; }
  .mockAction { margin-top:14px; }
  .posTilePage { max-width:1240px; }
  .posTileStatus { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:14px; padding:14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .posTileStatus h3 { margin:2px 0 4px; font:800 18px/1.25 var(--font-display); }
  .posTileStatus p { max-width:760px; margin:0; color:var(--muted); font-size:12.5px; line-height:1.55; }
  .posTileStatusActions,.posTileToolbar,.posTileItemActions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
  .posTileStatusActions { justify-content:flex-end; }
  .posTileCanvas,.posTileEditor { min-width:0; padding:16px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .posTileEditor { position:sticky; top:0; }
  .posTileToolbar { justify-content:space-between; margin-bottom:12px; }
  .posTileTabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px; }
  .posTileTab { min-height:44px; background:transparent; color:var(--muted); border-color:var(--line); }
  .posTileTab[aria-selected="true"] { color:var(--fg); border-color:var(--accent); background:var(--accent-soft); }
  .posTileDraftGrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
  .posTileDraft { position:relative; min-height:132px; padding:12px; border:1px solid var(--line); border-radius:12px; background:var(--surface); color:var(--fg); text-align:left; }
  .posTileDraft[aria-selected="true"] { border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
  .posTileDraft strong,.posTileDraft span { display:block; overflow-wrap:anywhere; }
  .posTileDraft .tileKind { color:var(--accent); font:600 10px/1.2 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; }
  .posTileDraft strong { margin-top:18px; font-size:13px; }
  .posTileDraft .tileRef { margin-top:4px; color:var(--muted); font:11px/1.4 var(--font-mono); }
  .posTileDraftAdd { border-style:dashed; display:grid; place-items:center; color:var(--muted); text-align:center; }
  .posTileEditor h3 { margin:3px 0 12px; font:800 18px/1.25 var(--font-display); }
  .posTileForm { display:grid; gap:12px; }
  .posTileField { display:grid; gap:5px; color:var(--muted); font-size:11px; }
  .posTileField > span { color:var(--fg); font-weight:600; }
  .posTileHelp { color:var(--muted); font-size:11px; line-height:1.5; }
  .posTileError { min-height:18px; color:var(--danger); font-size:12px; }
  .posTileDirty { color:var(--warn); }
  .posTileItemActions { margin-top:2px; }
  .posTileItemActions .danger { margin-left:auto; color:var(--danger); border-color:var(--danger); }
  .posTileEmpty { min-height:180px; display:grid; place-items:center; padding:24px; border:1px dashed var(--line); border-radius:12px; color:var(--muted); text-align:center; }
  .posTileEmpty b { color:var(--fg); }
  .agentWork { max-width:1180px; }
  .agentSessionList { display:grid; gap:14px; }
  .agentSession { min-width:0; padding:16px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--surface); }
  .agentSessionHead { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }
  .agentSessionHead h3 { margin:3px 0 4px; font:800 18px/1.25 var(--font-display); }
  .agentSessionHead p { margin:0; color:var(--muted); font-size:12.5px; }
  .agentSessionCount { flex:none; color:var(--muted); font:11px/1.4 var(--font-mono); }
  .jobGrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .job { min-width:0; padding:16px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .jobEmptyInner { max-width:620px; }
  .jobEmptyInner h3 { margin:10px 0 6px; font:800 21px/1.2 var(--font-display); }
  .jobEmptyInner p { margin:0 auto 14px; color:var(--muted); }
  .jobStates { display:flex; flex-wrap:wrap; gap:7px; margin:14px 0 18px; }
  .jobState { display:inline-flex; align-items:center; gap:6px; min-height:30px; padding:4px 9px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font:11px/1.2 var(--font-mono); }
  .jobState::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--info); }
  .jobState[data-agent-state="approval_required"],.jobState[data-agent-state="needs_review"],.jobState[data-agent-state="uncertain"],.jobState[data-agent-state="waiting"] { color:var(--warn); border-color:var(--warn); background:var(--warn-soft); }
  .jobState[data-agent-state="blocked"],.jobState[data-agent-state="failed"],.jobState[data-agent-state="cancelled"] { color:var(--danger); border-color:var(--danger); background:var(--danger-soft); }
  .jobState[data-agent-state="completed"] { color:var(--approve); border-color:var(--approve); background:var(--approve-soft); }
  .jobContract { margin-top:16px; padding-top:14px; border-top:1px solid var(--line); text-align:left; }
  .jobContract dl { margin:9px 0 0; display:grid; grid-template-columns:150px 1fr; gap:6px 12px; color:var(--muted); font-size:12px; }
  .jobContract dt { color:var(--fg); font-weight:600; }
  .jobContract dd { margin:0; }
  .agentPageState { grid-column:1/-1; }
  .agentPageActions { display:flex; justify-content:center; margin-top:12px; }
  .agentJobDetail { margin-top:14px; padding-top:12px; border-top:1px solid var(--line); }
  .agentJobDetail > summary { min-height:44px; display:flex; align-items:center; cursor:pointer; color:var(--accent); font-size:12px; font-weight:650; }
  .agentJobDetail > summary:focus-visible { outline:2px solid var(--accent); outline-offset:3px; border-radius:6px; }
  .agentJobDetailBody { padding-top:6px; }
  .agentDetailSummary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
  .agentDetailMetric { min-width:0; padding:10px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
  .agentDetailMetric b,.agentDetailMetric span { display:block; overflow-wrap:anywhere; }
  .agentDetailMetric b { color:var(--muted2); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
  .agentDetailMetric span { margin-top:4px; font-size:12px; }
  .agentDetailSection { margin-top:12px; }
  .agentDetailSection h4 { margin:0 0 7px; font:750 var(--type-card)/1.35 var(--font-display); }
  .agentDetailList { display:grid; gap:7px; }
  .agentDetailRow { min-width:0; padding:10px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
  .agentDetailRowHead { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
  .agentDetailRow b,.agentDetailRow span { overflow-wrap:anywhere; }
  .agentDetailRow p { margin:5px 0 0; color:var(--muted); font-size:11.5px; line-height:1.5; }
  .agentEvidenceValue { margin-top:8px; padding-top:8px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
  .agentEvidenceValue .agentResultData { margin-top:0; }
  @media(max-width:760px){ .jobGrid,.agentDetailSummary { grid-template-columns:1fr; } .agentSessionHead { align-items:stretch; flex-direction:column; } }
  .gateList { display:flex; flex-direction:column; gap:12px; max-width:1050px; }
  .gate { padding:17px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .gate.isBlocked { border-color:color-mix(in srgb,var(--danger) 58%,var(--line)); }
  .gateTop { display:flex; align-items:flex-start; gap:12px; }
  .gateTop .grow { min-width:0; flex:1; }
  .gateTop h3 { margin:2px 0 4px; font:800 18px/1.25 var(--font-display); }
  .gateTop p { margin:0; color:var(--muted); }
  .effectGrid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:14px 0; }
  .checkBox,.blockBox { padding:11px 12px; border-radius:var(--r); font-size:12px; }
  .checkBox { border:1px solid var(--warn); background:var(--warn-soft); color:var(--warn); }
  .blockBox { margin-top:10px; border:1px solid var(--danger); background:var(--danger-soft); color:var(--danger-text); }
  .techEvidence { margin-top:12px; border-top:1px solid var(--line); padding-top:10px; }
  .techEvidence summary { min-height:var(--control-min); display:flex; align-items:center; cursor:pointer; color:var(--muted); font-size:12px; }
  .techEvidence dl { margin:4px 0 0; display:grid; grid-template-columns:150px 1fr; gap:6px 12px; font:11px/1.5 var(--font-mono); overflow-wrap:anywhere; }
  .techEvidence dt { color:var(--muted2); }
  .techEvidence dd { margin:0; }
  .gateActions { display:flex; justify-content:flex-end; gap:8px; margin-top:12px; }
  .articleBatchPanel { max-width:1050px; margin-bottom:24px; }
  .articleBatchHeading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
  .articleBatchHeading h2 { margin:0; }
  .articleBatchHeading p { margin:4px 0 16px; color:var(--muted); }
  .articleBatchSearch { display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px; margin-bottom:16px; }
  .articleBatchSearch label { display:flex; flex-direction:column; gap:6px; }
  .articleBatchSearch input { min-height:var(--control-min); }
  .articleBatchSearch .articleBatchMine { flex-direction:row; align-items:center; min-height:var(--control-min); }
  .articleBatchList { display:grid; gap:8px; }
  .articleBatchRow { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; padding:12px; text-align:left; background:var(--panel); color:var(--text); border:1px solid var(--line); }
  .articleBatchRow.selected { border-color:var(--brass); background:var(--brass-soft); }
  .articleBatchRow small { display:block; color:var(--muted); margin-top:4px; }
  .articleBatchDetail { margin-top:20px; }
  .articleBatchDetail section { margin-top:16px; }
  .articleBatchTableWrap { overflow:auto; border:1px solid var(--line); border-radius:var(--r); }
  .articleBatchTable { width:100%; border-collapse:collapse; table-layout:fixed; }
  .articleBatchTable th,.articleBatchTable td { vertical-align:top; text-align:left; padding:10px; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
  .articleBatchTable th { background:var(--panel-2); }
  .articleBatchTable pre { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; font:12px/1.5 var(--font-mono); }
  .articleBatchResults { margin-top:16px; }
  .articleBatchResults>summary { min-height:var(--control-min); display:flex; align-items:center; cursor:pointer; }
  .articleBatchApprove { background:var(--approve); color:var(--on-accent); border-color:var(--approve); }
  @media(max-width:760px){
    .articleBatchHeading,.articleBatchRow { flex-direction:column; align-items:stretch; }
    .articleBatchSearch { display:grid; grid-template-columns:1fr; }
    .articleBatchTable { font-size:12px; }
    .articleBatchTable th,.articleBatchTable td { padding:8px 4px; }
    .articleBatchDetail .gateTop { flex-direction:column; }
    .articleBatchDetail .gateActions { padding-right:64px; }
  }
  #uiDialogWrap { position:fixed; inset:0; z-index:var(--z-dialog); display:grid; place-items:center; padding:16px; background:var(--scrim); backdrop-filter:blur(2px); }
  #uiDialogWrap[hidden] { display:none; }
  #uiDialog { width:min(520px,100%); padding:18px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); box-shadow:var(--shadow-modal); }
  #uiDialog h2 { margin:0 0 6px; font:800 21px/1.2 var(--font-display); }
  #uiDialogText { margin:0; color:var(--muted); white-space:pre-line; }
  #uiDialogField { margin-top:14px; }
  #uiDialogInput { width:100%; }
  .uiDialogActions { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
  #uiDialogConfirm.danger { background:var(--danger); color:var(--material-paper); }
  .loadingState { min-height:120px; display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted); font-size:13px; }
  .loadingState::before { content:""; width:18px; height:18px; border:2px solid var(--line); border-top-color:var(--accent); border-radius:50%; animation:uiSpin .8s linear infinite; }
  .readStateMeta { margin-top:7px; color:var(--muted2); font-size:11px; }
  @keyframes uiSpin { to { transform:rotate(360deg); } }
  .assistantPanel { position:fixed; top:60px; right:0; bottom:0; width:min(var(--agent),94vw); z-index:35; display:flex; flex-direction:column; background:var(--surface); border-left:1px solid var(--line); box-shadow:var(--shadow-sheet); }
  .assistantPanel[hidden] { display:none; }
  .assistantHead { min-height:64px; padding:10px 14px; display:flex; align-items:center; gap:9px; border-bottom:1px solid var(--line); }
  .assistantHead h2 { margin:0; font-family:"Cabinet Grotesk",sans-serif; font-size:18px; }
  .assistantBody { flex:1; overflow:auto; padding:14px; }
  .assistantMsg { margin-top:12px; padding:11px 12px; border:1px solid var(--line); border-radius:11px; color:var(--muted); font-size:13px; }
  .assistantMsg.user { margin-left:28px; color:var(--fg); background:var(--panel); }
  .assistantMsg.system { border-style:dashed; }
  .assistantIntent { margin-top:10px; padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
  .assistantIntent b { display:block; margin-bottom:5px; }
  .assistantRuntime { display:grid; gap:8px; margin-bottom:12px; }
  .assistantRuntimeRow { display:flex; align-items:flex-start; gap:8px; padding:9px 10px; border:1px solid var(--line); border-radius:9px; font-size:12px; }
  .assistantRuntimeRow span:last-child { color:var(--muted); }
  .agentResultTable { width:100%; margin-top:9px; border-collapse:collapse; font-size:12px; }
  .agentResultTable th,.agentResultTable td { padding:7px 8px; border:1px solid var(--line); text-align:left; vertical-align:top; overflow-wrap:anywhere; }
  .agentResultTable th { color:var(--muted); background:var(--surface); }
  .agentResultData { margin-top:9px; display:grid; grid-template-columns:minmax(110px,.45fr) minmax(0,1fr); gap:5px 10px; font-size:12px; }
  .agentResultData dt { color:var(--muted); }
  .agentResultData dd { margin:0; overflow-wrap:anywhere; }
  .agentJobActions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
  .assistantForm { display:flex; gap:8px; padding:12px 14px; border-top:1px solid var(--line); }
  .ceeMask { position:fixed; z-index:var(--z-drawer); background:var(--scrim-soft); pointer-events:auto;
    transition:left 420ms cubic-bezier(.32,.72,0,1),top 420ms cubic-bezier(.32,.72,0,1),width 420ms cubic-bezier(.32,.72,0,1),height 420ms cubic-bezier(.32,.72,0,1),opacity 200ms ease; }
  .ceeSpotlight { position:fixed; z-index:62; pointer-events:none; border:2px solid var(--accent); border-radius:12px;
    box-shadow:0 0 0 5px var(--accent-soft),0 0 32px color-mix(in srgb,var(--accent) 20%,transparent),var(--shadow-popover);
    transition:left 420ms cubic-bezier(.32,.72,0,1),top 420ms cubic-bezier(.32,.72,0,1),width 420ms cubic-bezier(.32,.72,0,1),height 420ms cubic-bezier(.32,.72,0,1),opacity 200ms ease; }
  .ceeSpotlight::after { content:"FOKUS"; position:absolute; right:7px; top:-24px; padding:2px 7px; border:1px solid var(--accent);
    border-radius:999px; background:var(--surface); color:var(--accent); font-size:8px; font-weight:600; letter-spacing:.13em; }
  .ceePresence { position:fixed; left:0; top:0; z-index:64; display:flex; align-items:flex-start; gap:11px; width:430px; pointer-events:none;
    will-change:transform; transition:transform 560ms cubic-bezier(.32,.72,0,1),opacity 200ms ease; }
  .ceePresence[hidden],.ceeBadge[hidden],.ceeBubble[hidden],.ceeMask[hidden],.ceeSpotlight[hidden],.ceeHelperBubble[hidden] { display:none!important; }
  .ceePresence.reverse { flex-direction:row-reverse; }
  .ceePresence.homed { align-items:flex-end; }
  .ceeAvatarBtn { width:72px; height:96px; padding:0; border:0; border-radius:26px; background:transparent; color:inherit;
    display:grid; place-items:center; pointer-events:auto; flex:none; cursor:pointer; }
  .ceeAvatarBtn:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
  .ceeAvatarCore { width:72px; height:96px; display:grid; place-items:center; overflow:visible; position:relative; flex:none;
    transition:transform 160ms cubic-bezier(.2,0,0,1); }
  .ceeAvatarCore::after { content:""; position:absolute; z-index:0; left:15%; right:15%; bottom:-4px; height:9px; border-radius:50%;
    background:color-mix(in srgb,var(--bg) 38%,transparent); filter:blur(6px); transform:scaleX(.9); pointer-events:none; }
  .ceeAvatarCore img { position:relative; z-index:1; display:block; width:100%; height:100%; object-fit:contain;
    filter:drop-shadow(0 9px 11px color-mix(in srgb,var(--bg) 28%,transparent)) drop-shadow(0 0 4px var(--accent-soft)); }
  .ceeAvatarBtn:hover .ceeAvatarCore,.ceeAvatarBtn:focus-visible .ceeAvatarCore { transform:translateY(-3px); }
  .ceePresence .ceeAvatarCore { animation:ceeHover 3.6s ease-in-out infinite; }
  @keyframes ceeHover { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-3px)} }
  .ceeBubble { width:350px; max-height:min(520px,calc(100vh - 32px)); overflow:auto; border:1px solid var(--line); border-radius:15px;
    background:var(--surface); color:var(--fg); box-shadow:var(--shadow-popover); pointer-events:auto; }
  .ceeBubbleHead { padding:13px 14px 11px; border-bottom:1px solid var(--line); background:var(--panel); }
  .ceeStepMeta { display:flex; align-items:center; gap:8px; color:var(--accent); font-size:9px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
  .ceeStepMeta span:last-child { margin-left:auto; color:var(--muted); font-family:ui-monospace,"SF Mono",monospace; letter-spacing:0; }
  .ceeProgress { height:4px; margin-top:9px; border-radius:999px; background:color-mix(in srgb,var(--fg) 10%,transparent); overflow:hidden; }
  .ceeProgress span { display:block; width:0; height:100%; border-radius:inherit; background:var(--accent); transition:width var(--motion-standard) var(--ease-standard); }
  .ceeBubbleBody { padding:15px 15px 12px; }
  .ceeBubbleBody h1 { margin:0 0 8px; font-family:"Cabinet Grotesk",sans-serif; font-weight:800; font-size:20px; line-height:1.15; letter-spacing:-.01em; }
  .ceeBubbleBody p { margin:0; color:var(--muted); font-size:12.5px; line-height:1.58; }
  .ceeBubbleBody .conceptState { font-size:var(--type-label); }
  .ceeTruth { margin-top:11px; white-space:pre-line; padding:9px 10px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--muted); font-size:var(--type-body); line-height:var(--leading-body); }
  .ceeTruth.warn { border-color:var(--amber); color:var(--amber); }
  .ceeDelegations { margin:0 0 14px; padding:13px 14px 12px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
  .ceeDelegations > h3 { margin:3px 0 5px; font-family:"Cabinet Grotesk",sans-serif; font-weight:800; font-size:var(--type-card); letter-spacing:-.01em; }
  .ceeDelegations > p { margin:0 0 10px; color:var(--muted); font-size:11px; line-height:1.55; max-width:74ch; }
  .ceeDelegationRow { padding:10px 11px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
  .ceeDelegationRow + .ceeDelegationRow { margin-top:8px; }
  .ceeDelegationRow header { display:flex; gap:9px; align-items:baseline; justify-content:space-between; flex-wrap:wrap; }
  .ceeDelegationRow header b { font-size:12px; line-height:1.45; }
  .ceeDelegationRow header b.unpinned { color:var(--amber); font-weight:600; }
  .ceeDelegationState { flex:none; padding:2px 8px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:9.5px; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
  .ceeDelegationState[data-state="expired"] { border-color:var(--amber); color:var(--amber); }
  .ceeDelegationFacts { margin:7px 0 0; display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:5px 14px; font-size:10px; color:var(--muted); }
  .ceeDelegationFacts div { display:flex; gap:5px; min-width:0; }
  .ceeDelegationFacts dt { flex:none; opacity:.72; }
  .ceeDelegationFacts dd { margin:0; min-width:0; overflow-wrap:anywhere; }
  .ceeActions { padding:10px 12px 12px; display:flex; gap:7px; flex-wrap:wrap; }
  .ceeBtn { min-height:44px; padding:0 12px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--fg); font-size:11px; font-weight:600; cursor:pointer; }
  .ceeBtn:hover { border-color:var(--accent); }
  .ceeBtn:disabled { cursor:not-allowed; opacity:.36; }
  .ceeBtn.try { border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
  .ceeBtn.text { border-color:transparent; background:transparent; color:var(--muted); }
  .ceeHint { padding:0 15px 13px; color:var(--muted); font-size:9.5px; }
  .ceeHint kbd { padding:1px 5px; border:1px solid var(--line); border-radius:4px; background:var(--panel); }
  .ceeHelper { position:fixed; z-index:var(--z-assistant); right:24px; bottom:24px; display:flex; flex-direction:column; align-items:flex-end; gap:10px; isolation:isolate; }
  .ceeHelper[hidden] { display:none; }
  .ceeHelper::before { content:""; position:absolute; z-index:-2; inset:-16px -16px 68px -16px; border-radius:32px; background:radial-gradient(circle at 76% 88%,var(--scrim-soft),transparent 70%); opacity:0; pointer-events:none; transition:opacity var(--motion-standard) var(--ease-standard); }
  .ceeHelper.bubbleOpen::before { opacity:1; backdrop-filter:blur(7px); }
  .ceeHelperBubble { position:relative; width:min(480px,calc(100vw - 48px)); max-height:min(650px,calc(100vh - 132px)); overflow:auto; padding:14px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line)); border-radius:20px 20px 6px 20px; background:color-mix(in srgb,var(--surface) 92%,transparent); color:var(--fg); box-shadow:var(--shadow-popover); backdrop-filter:blur(16px) saturate(1.08); transition:width var(--motion-standard) var(--ease-standard),max-height var(--motion-standard) var(--ease-standard); }
  .ceeHelperBubble::after { content:""; position:absolute; right:22px; bottom:-12px; width:22px; height:22px; border-right:1px solid color-mix(in srgb,var(--accent) 26%,var(--line)); border-bottom:1px solid color-mix(in srgb,var(--accent) 26%,var(--line)); background:color-mix(in srgb,var(--surface) 92%,transparent); transform:rotate(45deg); border-radius:0 0 5px 0; }
  .ceeHelperBubble.expanded { width:min(620px,calc(100vw - 48px)); max-height:min(760px,calc(100vh - 118px)); }
  .ceeHelperBubble h2 { margin:0; font-family:"Cabinet Grotesk",sans-serif; font-weight:800; font-size:16px; line-height:1.2; }
  .ceeHelperBubble p { margin:7px 0 10px; color:var(--muted); font-size:11px; }
  .ceeHelperHead { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:10px; border-bottom:1px solid var(--line); }
  .ceeHelperHeadCopy { min-width:0; }
  .ceeHelperHeadCopy p { margin:4px 0 0; line-height:1.45; }
  .ceeUtilityActions { display:flex; flex:none; gap:4px; margin:-4px -4px 0 0; }
  .ceeIconButton { width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--muted); cursor:pointer; transition:background 180ms ease,border-color 180ms ease,color 180ms ease; }
  .ceeIconButton:hover { border-color:var(--line); background:var(--panel); color:var(--fg); }
  .ceeIconButton:focus-visible,.ceeModeButton:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
  .ceeIcon { width:19px; height:19px; display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .ceeStatusBar { display:flex; align-items:center; gap:6px; margin-top:10px; overflow-x:auto; scrollbar-width:none; }
  .ceeStatusBar::-webkit-scrollbar { display:none; }
  .ceeStatusChip { min-height:28px; padding:3px 9px; display:inline-flex; align-items:center; gap:6px; flex:none; border:1px solid var(--line); border-radius:999px; background:transparent; color:var(--muted); font:inherit; font-size:10px; font-weight:400; white-space:nowrap; }
  .ceeStatusChip .ceeStatusDot { width:7px; height:7px; border-radius:50%; background:var(--muted2); }
  .ceeStatusChip[data-state="ready"] { border-color:color-mix(in srgb,var(--approve) 48%,var(--line)); color:var(--approve); }
  .ceeStatusChip[data-state="ready"] .ceeStatusDot { background:var(--approve); }
  .ceeStatusChip[data-state="attention"] { border-color:color-mix(in srgb,var(--warn) 54%,var(--line)); color:var(--warn); }
  .ceeStatusChip[data-state="attention"] .ceeStatusDot { background:var(--warn); }
  .ceeModeNav { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:10px; padding:5px; border:1px solid var(--line); border-radius:13px; background:color-mix(in srgb,var(--panel) 76%,transparent); }
  .ceeModeButton { position:relative; min-width:0; height:46px; padding:0; display:grid; place-items:center; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--muted); cursor:pointer; transition:background 180ms ease,border-color 180ms ease,color 180ms ease,box-shadow 180ms ease; }
  .ceeModeButton:hover { border-color:var(--line); color:var(--fg); }
  .ceeModeButton[aria-pressed="true"] { border-color:color-mix(in srgb,var(--accent) 72%,var(--line)); background:var(--accent-soft); color:var(--fg); box-shadow:var(--shadow-popover); }
  .ceeModeStatus { position:absolute; top:7px; right:9px; width:6px; height:6px; border-radius:50%; background:var(--muted); opacity:.55; }
  .ceeModeStatus[data-state="ready"] { background:var(--green); opacity:1; box-shadow:0 0 5px color-mix(in srgb,var(--green) 62%,transparent); }
  .ceeModeStatus[data-state="live"] { width:8px; height:8px; background:var(--recording); opacity:1; animation:ceeMicPulse 1.15s ease-in-out infinite; }
  .ceeModePanel { margin-top:10px; padding:10px; border:1px solid var(--line); border-radius:12px; background:color-mix(in srgb,var(--panel) 62%,transparent); }
  .ceeModeIntro { min-height:32px; margin-bottom:7px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .ceeModeIntro h3 { margin:0; font-family:"Cabinet Grotesk",sans-serif; font-size:var(--type-card); line-height:1.3; }
  .ceeModePanel > :last-child { margin-bottom:0; }
  .ceeModePanel .ceeVoicePanel { margin-top:0; }
  .ceeModePanel .ceeSignalRow { border-top:0; padding:2px 0; }
  .ceeDialogComposer { display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:7px; }
  .ceeDialogEvidence { display:none; }
  .ceeHelperBubble.expanded .ceeDialogEvidence { display:block; }
  .ceeExpandedContent { display:none; margin-top:10px; padding-top:4px; border-top:1px solid var(--line); }
  .ceeHelperBubble.expanded .ceeExpandedContent { display:block; }
  .ceeExpandedActions { display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }
  .ceeHelperActions { display:flex; gap:7px; flex-wrap:wrap; }
  .ceeHelperBtnWrap { position:relative; }
  .ceeBadge { position:absolute; top:-2px; right:-2px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--amber); color:var(--on-accent); font-size:10px; font-weight:700; display:grid; place-items:center; z-index:2; }
  .ceeSignalRow { display:flex; align-items:center; gap:8px; padding:7px 0; border-top:1px solid var(--line); font-size:11px; }
  .ceeSignalRow:first-of-type { border-top:0; }
  .ceeSignalRow .grow { flex:1; min-width:0; }
  /* Die grüne LED bedeutet ausschließlich „Cee verfügbar“ — niemals Aufnahme. */
  .ceeLed { position:absolute; left:6px; bottom:8px; width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 6px color-mix(in srgb,var(--green) 80%,transparent); z-index:2; }
  .ceeMicBadge { position:fixed; top:14px; left:50%; transform:translateX(-50%); z-index:80;
    display:none; align-items:center; gap:7px;
    padding:5px 6px 5px 11px; border-radius:999px; border:1px solid var(--recording); background:var(--recording); color:var(--on-strong);
    font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap;
    box-shadow:0 4px 18px color-mix(in srgb,var(--recording) 50%,transparent); }
  .ceeMicBadge[data-cee-mic="live"] { display:inline-flex; }
  .ceeMicBadge i { width:7px; height:7px; border-radius:50%; background:var(--on-strong); animation:ceeMicPulse 1.15s ease-in-out infinite; }
  @keyframes ceeMicPulse { 0%,100% { opacity:1; } 50% { opacity:.25; } }
  .ceeVoicePanel { margin-top:10px; padding:9px 10px; border:1px solid var(--line); border-radius:9px; background:var(--panel); }
  .ceeVoicePanel[data-cee-mic="live"] { border-color:var(--recording); }
  .ceeVoiceState { display:flex; align-items:center; gap:6px; font-size:10.5px; font-weight:600; }
  .ceeVoiceState u { width:8px; height:8px; border-radius:50%; background:var(--muted); text-decoration:none; flex:none; }
  .ceeVoicePanel[data-cee-mic="live"] .ceeVoiceState { color:var(--recording); }
  .ceeVoicePanel[data-cee-mic="live"] .ceeVoiceState u { background:var(--recording); animation:ceeMicPulse 1.15s ease-in-out infinite; }
  .ceeVoiceLog { margin:7px 0 0; max-height:96px; overflow:auto; font-size:10px; color:var(--muted); line-height:1.5; }
  @media (prefers-reduced-motion:reduce) {
    .ceeMask,.ceeSpotlight,.ceePresence,.ceeProgress span,.ceeAvatarCore,.ceeIconButton,.ceeModeButton,.ceeModeStatus { transition:none!important; animation:none!important; }
  }
  @media (max-width:760px) {
    .ceePresence,.ceePresence.reverse { left:10px!important; right:10px!important; top:auto!important;
      bottom:calc(10px + env(safe-area-inset-bottom)); width:auto; max-height:42vh; align-items:flex-end;
      flex-direction:row; gap:8px; transform:none!important; transition:none; }
    .ceePresence .ceeAvatarCore,.ceePresence .ceeAvatarBtn { width:54px; height:73px; }
    .ceeBubble { width:calc(100vw - 82px); max-height:42vh; }
    .ceeBubbleHead { padding:10px 11px 8px; } .ceeBubbleBody { padding:11px; }
    .ceeBubbleBody h1 { font-size:17px; } .ceeBubbleBody p { font-size:11.5px; }
    .ceeActions { padding:8px 9px 9px; } .ceeBtn { padding:0 9px; font-size:10px; } .ceeBtn.text { order:5; } .ceeHint { display:none; }
    .ceeSpotlight::after { font-size:7px; top:-21px; }
    .ceeHelper { right:14px; bottom:calc(14px + env(safe-area-inset-bottom)); }
    .ceeHelper.bubbleOpen { left:0; right:0; bottom:0; align-items:stretch; gap:0; }
    .ceeHelper.bubbleOpen::before { position:fixed; inset:0; width:auto; height:auto; border-radius:0; background:var(--scrim-soft); backdrop-filter:blur(6px); }
    .ceeHelper.bubbleOpen .ceeHelperBtnWrap { display:none; }
    .ceeHelperBubble,.ceeHelperBubble.expanded { width:100%; max-height:min(82dvh,760px); border-radius:20px 20px 0 0; border-left:0; border-right:0; border-bottom:0; padding:14px 14px calc(14px + env(safe-area-inset-bottom)); }
    .ceeHelperBubble::after { display:none; }
    .ceeModeNav { gap:6px; }
  }
  .agentOrgPage { min-height:100%; padding:16px 24px 32px; }
  .agentOrgIntro { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
  .agentOrgIntroCopy { max-width:760px; }
  .agentOrgIntroCopy p { margin:4px 0 0; color:var(--muted); }
  .agentOrgIntroActions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
  .agentOrgCreateButton { min-height:44px; display:inline-flex; align-items:center; gap:8px; padding:9px 14px; }
  .agentOrgCreateButton .uiIcon { width:17px; height:17px; }
  .agentOrgReadOnly { display:inline-flex; align-items:center; gap:7px; min-height:32px; padding:4px 10px; border:1px solid var(--slate); border-radius:999px; color:var(--slate); font-size:11px; font-weight:600; white-space:nowrap; }
  .agentOrgReadOnly .uiIcon { width:15px; height:15px; }
  .agentOrgAdoption { max-width:760px; margin:14px 0; padding:16px 18px; border:1px solid var(--slate); border-radius:var(--r-lg); background:color-mix(in srgb,var(--slate) 7%,var(--panel)); }
  .agentOrgAdoption h2 { margin:0; font:800 18px/1.25 var(--font-display); }
  .agentOrgAdoption p { margin:6px 0 0; color:var(--muted); font-size:12.5px; line-height:1.55; }
  .agentOrgAdoptionMeta { margin-top:9px; color:var(--muted2); font:11px/1.5 var(--font-mono); overflow-wrap:anywhere; }
  .agentOrgAdoptionActions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
  .agentOrgTruthBar { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin:0 0 14px; padding:10px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); color:var(--muted); font-size:12px; }
  .agentOrgTruthBar strong { color:var(--fg); }
  .agentOrgTruthItem { display:inline-flex; align-items:center; gap:6px; }
  .agentOrgTruthItem .uiIcon { width:15px; height:15px; color:var(--slate); }
  .agentOrgAttention { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:8px; margin-bottom:14px; }
  .agentOrgAttentionItem { min-height:58px; width:100%; display:flex; align-items:flex-start; gap:10px; padding:10px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); color:var(--fg); text-align:left; }
  .agentOrgAttentionItem[data-severity="warning"] { border-color:color-mix(in srgb,var(--warn) 58%,var(--line)); background:var(--warn-soft); }
  .agentOrgAttentionItem[data-severity="critical"] { border-color:color-mix(in srgb,var(--danger) 62%,var(--line)); background:var(--danger-soft); }
  .agentOrgAttentionIcon { width:22px; height:22px; display:grid; place-items:center; flex:none; color:var(--slate); }
  .agentOrgAttentionItem[data-severity="warning"] .agentOrgAttentionIcon { color:var(--warn); }
  .agentOrgAttentionItem[data-severity="critical"] .agentOrgAttentionIcon { color:var(--danger); }
  .agentOrgAttentionIcon .uiIcon { width:19px; height:19px; }
  .agentOrgAttentionText { min-width:0; }
  .agentOrgAttentionText b,.agentOrgAttentionText span { display:block; }
  .agentOrgAttentionText span { margin-top:2px; color:var(--muted); font-size:12px; line-height:1.35; }
  .agentOrgSummary { display:grid; grid-template-columns:repeat(auto-fit,minmax(104px,1fr)); gap:8px; margin-bottom:14px; }
  .agentOrgMetric { min-width:0; padding:10px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); }
  .agentOrgMetric b { display:block; font:800 21px/1 var(--font-display); font-variant-numeric:tabular-nums; }
  .agentOrgMetric span { display:block; margin-top:5px; color:var(--muted); font-size:11px; line-height:1.25; }
  .agentOrgMetric[data-tone="warning"] { border-color:color-mix(in srgb,var(--warn) 55%,var(--line)); }
  .agentOrgControls { display:grid; grid-template-columns:minmax(220px,1fr) minmax(0,2fr); gap:12px; align-items:end; margin-bottom:14px; }
  .agentOrgSearch label { display:block; margin-bottom:5px; }
  .agentOrgSearchBox { position:relative; }
  .agentOrgSearchBox .uiIcon { position:absolute; left:12px; top:13px; width:18px; height:18px; color:var(--muted2); pointer-events:none; }
  .agentOrgSearchClear { position:absolute; right:0; top:0; width:44px; min-height:44px; padding:0; display:grid; place-items:center; border:0; background:transparent; color:var(--muted); }
  .agentOrgSearchClear .uiIcon { position:static; width:16px; height:16px; }
  .agentOrgLayers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; padding:4px; border:1px solid var(--line); border-radius:11px; background:var(--surface); }
  .agentOrgLayer { min-height:44px; padding:6px 9px; border:1px solid transparent; border-radius:8px; background:transparent; color:var(--muted); font-weight:400; line-height:1.2; }
  .agentOrgLayer:hover { border-color:var(--line); color:var(--fg); filter:none; }
  .agentOrgLayer[aria-selected="true"] { border-color:var(--accent); background:var(--accent-soft); color:var(--fg); font-weight:600; }
  .agentOrgResultMeta { min-height:24px; margin:0 0 8px; color:var(--muted); font-size:12px; }
  .agentOrgPanel { min-width:0; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); overflow:hidden; }
  .agentOrgPanelHead { min-height:58px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); }
  .agentOrgPanelHead h2 { margin:0; font:800 17px/1.2 var(--font-display); }
  .agentOrgPanelHead p { margin:2px 0 0; color:var(--muted); font-size:11px; }
  .agentOrgLegend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px 10px; color:var(--muted); font-size:10px; }
  .agentOrgLegend span { display:inline-flex; align-items:center; gap:5px; }
  .agentOrgLegend i { width:18px; height:0; border-top:2px solid var(--slate); }
	.agentOrgLegend i.observed { border-top-style:dashed; border-top-color:var(--info); }
  .agentOrgMapActions { display:flex; align-items:center; gap:5px; flex-wrap:wrap; justify-content:flex-end; }
	.agentOrgMapActions button { min-width:var(--control-min); min-height:var(--control-min); }
	  .agentOrgMapScroll { position:relative; min-height:520px; overflow:hidden; background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 58%),color-mix(in srgb,var(--surface) 72%,var(--panel)); touch-action:none; }
  .agentOrgMap { display:block; width:100%; min-width:760px; min-height:520px; cursor:grab; user-select:none; }
  .agentOrgMap:active { cursor:grabbing; }
  .agentOrgViewport { transform-box:fill-box; transform-origin:0 0; }
  .agentOrgMapGrid { stroke:var(--line); stroke-width:1; opacity:.34; }
  .agentOrgMapGridFill { pointer-events:none; opacity:.58; }
	  .agentOrgMinimap { position:absolute; right:12px; bottom:12px; width:132px; height:92px; padding:5px; border:1px solid color-mix(in srgb,var(--line) 82%,transparent); border-radius:12px; background:color-mix(in srgb,var(--panel) 90%,transparent); box-shadow:var(--shadow-soft); pointer-events:none; }
	  .agentOrgMinimap svg { display:block; width:100%; height:100%; }
	  .agentOrgMinimap rect { fill:color-mix(in srgb,var(--surface) 88%,transparent); stroke:var(--line); stroke-width:4; }
	  .agentOrgMinimapNode { fill:var(--slate); }
	  .agentOrgMinimapNode--template { fill:transparent; stroke:var(--slate); stroke-width:4; stroke-dasharray:5 4; }
	  .agentOrgMinimapNode--agent { fill:var(--accent); }
	  .agentOrgMinimapNode--seat { fill:var(--brass); }
	  .agentOrgMapHelp { min-height:34px; display:flex; flex-wrap:wrap; align-items:center; gap:5px 14px; padding:7px 12px; border-top:1px solid var(--line); color:var(--muted2); font-size:10px; }
  .agentOrgMapColumn { fill:var(--muted2); font:600 11px var(--font-ui); letter-spacing:.08em; text-transform:uppercase; }
  .agentOrgEdgeLine { fill:none; stroke:var(--slate); stroke-width:1.8; opacity:.78; }
	.agentOrgEdge[data-truth="observed"] .agentOrgEdgeLine { stroke:var(--info); stroke-dasharray:7 5; }
  .agentOrgEdge[data-truth="catalog"] .agentOrgEdgeLine { stroke-dasharray:3 6; opacity:.55; }
  .agentOrgEdgeHit { fill:none; stroke:transparent; stroke-width:18; pointer-events:stroke; cursor:pointer; }
	.agentOrgMap[data-semantic-zoom="overview"] .agentOrgEdgeHit { stroke-width:44; vector-effect:non-scaling-stroke; }
	.agentOrgEdgeBadge { transition:opacity var(--motion-fast) var(--ease-standard); transform-box:view-box; transform-origin:0 0; }
	.agentOrgMap[data-semantic-zoom="overview"] .agentOrgEdgeBadge { opacity:0; pointer-events:none; }
	.agentOrgMap[data-semantic-zoom="overview"] .agentOrgEdge:hover .agentOrgEdgeBadge,.agentOrgMap[data-semantic-zoom="overview"] .agentOrgEdge:focus .agentOrgEdgeBadge,.agentOrgMap[data-semantic-zoom="overview"] .agentOrgEdge.selected .agentOrgEdgeBadge { opacity:1; }
  .agentOrgEdgeLabelBg { fill:var(--surface); stroke:var(--line); stroke-width:1; }
  .agentOrgEdgeLabel { fill:var(--text-2); font:600 10px var(--font-ui); pointer-events:none; }
  .agentOrgEdge:focus { outline:none; }
  .agentOrgEdge:focus .agentOrgEdgeLine,.agentOrgEdge:hover .agentOrgEdgeLine,.agentOrgEdge.selected .agentOrgEdgeLine { stroke:var(--brass); stroke-width:3; opacity:1; }
  .agentOrgNode { cursor:grab; outline:none; }
  .agentOrgNode:active { cursor:grabbing; }
	.agentOrgNodeDetail,.agentOrgNodeOverview { transition:opacity var(--motion-fast) var(--ease-standard); }
	.agentOrgMap[data-semantic-zoom="detail"] .agentOrgNodeOverview { opacity:0; pointer-events:none; }
	.agentOrgMap[data-semantic-zoom="overview"] .agentOrgNodeDetail { opacity:0; pointer-events:none; }
	.agentOrgNodeOverview { pointer-events:none; }
	.agentOrgNodeOverviewHit { fill:transparent; stroke:transparent; pointer-events:all; }
	.agentOrgNodeOverviewHalo { fill:none; stroke:var(--info); stroke-width:2; opacity:0; vector-effect:non-scaling-stroke; }
	.agentOrgNodeOverviewCore { fill:var(--slate); stroke:var(--surface); stroke-width:1.5; vector-effect:non-scaling-stroke; }
	.agentOrgNodeOverviewStateMark { pointer-events:none; }
	.agentOrgNodeOverviewStateRing,.agentOrgNodeOverviewStateDoubleRing,.agentOrgNodeOverviewStateSlash { fill:none; stroke:currentColor; stroke-width:1.75; opacity:0; vector-effect:non-scaling-stroke; }
	.agentOrgNode--tone-warning .agentOrgNodeOverviewStateMark { color:var(--warn); }
	.agentOrgNode--tone-danger .agentOrgNodeOverviewStateMark { color:var(--danger); }
	.agentOrgNode[data-agent-org-state="proposed"] .agentOrgNodeOverviewStateRing,.agentOrgNode[data-agent-org-state="prototype"] .agentOrgNodeOverviewStateRing,.agentOrgNode[data-agent-org-state="shadow"] .agentOrgNodeOverviewStateRing { opacity:1; stroke-dasharray:4 3; }
	.agentOrgNode[data-agent-org-state="assessment"] .agentOrgNodeOverviewStateRing { opacity:1; stroke-linecap:round; stroke-dasharray:1 3; }
	.agentOrgNode[data-agent-org-state="restricted"] .agentOrgNodeOverviewStateRing,.agentOrgNode[data-agent-org-state="restricted"] .agentOrgNodeOverviewStateDoubleRing,.agentOrgNode[data-agent-org-state="quiescing"] .agentOrgNodeOverviewStateRing,.agentOrgNode[data-agent-org-state="quiescing"] .agentOrgNodeOverviewStateDoubleRing { opacity:1; }
	.agentOrgNode[data-agent-org-state="suspended"] .agentOrgNodeOverviewStateRing,.agentOrgNode[data-agent-org-state="suspended"] .agentOrgNodeOverviewStateSlash { opacity:1; }
	.agentOrgNode--tone-positive .agentOrgNodeOverviewCore { fill:var(--approve); }
	.agentOrgNode--tone-warning .agentOrgNodeOverviewCore { fill:var(--warn); }
	.agentOrgNode--tone-danger .agentOrgNodeOverviewCore { fill:var(--danger); }
	.agentOrgNode--tone-info .agentOrgNodeOverviewCore { fill:var(--info); }
	.agentOrgNode--template .agentOrgNodeOverviewCore { fill:var(--surface); stroke:var(--slate); stroke-width:2.25; stroke-dasharray:4 3; }
	.agentOrgNode--template.agentOrgNode--tone-warning .agentOrgNodeOverviewCore { stroke:var(--warn); }
	.agentOrgNode--running .agentOrgNodeOverviewHalo { opacity:.78; filter:drop-shadow(0 0 7px color-mix(in srgb,var(--info) 72%,transparent)); }
	.agentOrgNode--running .agentOrgNodeOverviewCore { filter:drop-shadow(0 0 5px color-mix(in srgb,var(--info) 72%,transparent)); }
	.agentOrgNodeOverviewSelection { fill:none; stroke:var(--brass); stroke-width:2; opacity:0; vector-effect:non-scaling-stroke; }
	.agentOrgNode.selected .agentOrgNodeOverviewSelection { opacity:1; }
	.agentOrgNodeOverviewLeader { fill:none; stroke:color-mix(in srgb,var(--slate) 72%,transparent); stroke-width:1; vector-effect:non-scaling-stroke; pointer-events:none; transition:opacity var(--motion-fast) var(--ease-standard); }
	.agentOrgNodeOverviewCopy { pointer-events:none; transition:opacity var(--motion-fast) var(--ease-standard); }
	.agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewCopy,.agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewLeader { opacity:0; }
	.agentOrgNode:hover .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewCopy,.agentOrgNode:focus .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewCopy,.agentOrgNode.selected .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewCopy,.agentOrgNode:hover .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewLeader,.agentOrgNode:focus .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewLeader,.agentOrgNode.selected .agentOrgNodeOverview[data-agent-org-overview-deferred] .agentOrgNodeOverviewLeader { opacity:1; }
	.agentOrgNodeOverviewLabel { fill:var(--text); font:600 12px var(--font-ui); paint-order:stroke; stroke:var(--surface); stroke-width:4px; stroke-linejoin:round; pointer-events:none; }
	.agentOrgNode:hover .agentOrgNodeOverviewCore,.agentOrgNode:focus .agentOrgNodeOverviewCore,.agentOrgNode.selected .agentOrgNodeOverviewCore { stroke:var(--brass); stroke-width:2.5; }
	.agentOrgNode:hover .agentOrgNodeOverviewLabel,.agentOrgNode:focus .agentOrgNodeOverviewLabel,.agentOrgNode.selected .agentOrgNodeOverviewLabel { fill:var(--brass); }
  .agentOrgNodeBox { fill:var(--panel); stroke:var(--line); stroke-width:1.5; transition:stroke var(--motion-fast) var(--ease-standard),fill var(--motion-fast) var(--ease-standard); }
  .agentOrgNode:hover .agentOrgNodeBox,.agentOrgNode:focus .agentOrgNodeBox,.agentOrgNode.selected .agentOrgNodeBox { fill:var(--accent-soft); stroke:var(--accent); stroke-width:2.5; }
	.agentOrgNode--template { cursor:pointer; }
  .agentOrgNode--template .agentOrgNodeBox { fill:color-mix(in srgb,var(--panel) 72%,transparent); stroke:var(--slate); stroke-dasharray:7 5; }
  .agentOrgNode--template:hover,.agentOrgNode--template:focus { opacity:1; }
  .agentOrgNode--template:hover .agentOrgNodeBox,.agentOrgNode--template:focus .agentOrgNodeBox { fill:var(--accent-soft); stroke:var(--accent); stroke-dasharray:none; }
  .agentOrgNode--system .agentOrgNodeBox { fill:color-mix(in srgb,var(--slate) 7%,var(--panel)); stroke:color-mix(in srgb,var(--slate) 60%,var(--line)); }
  .agentOrgNode--seat .agentOrgNodeBox { stroke:color-mix(in srgb,var(--brass) 62%,var(--line)); }
  .agentOrgNode--root .agentOrgNodeBox { fill:color-mix(in srgb,var(--brass) 10%,var(--panel)); stroke-width:2; }
  .agentOrgNode--mission .agentOrgNodeBox { fill:color-mix(in srgb,var(--slate) 5%,var(--panel)); }
  .agentOrgNode--running .agentOrgNodeBox { stroke:var(--info); filter:drop-shadow(0 0 8px color-mix(in srgb,var(--info) 50%,transparent)); }
  .agentOrgNodeType { fill:var(--muted2); font:600 9px var(--font-ui); letter-spacing:.08em; text-transform:uppercase; pointer-events:none; }
  .agentOrgNodeLabel { fill:var(--text); font:600 12px var(--font-ui); pointer-events:none; }
	.agentOrgNodeState { fill:var(--text-2); font:400 12px var(--font-ui); pointer-events:none; }
	@media (prefers-reduced-motion:reduce) {
		.agentOrgNodeDetail,.agentOrgNodeOverview,.agentOrgEdgeBadge,.agentOrgNodeOverviewLeader,.agentOrgNodeOverviewCopy,.agentOrgNodeBox { transition:none; }
	}
  .agentOrgEmptyMap { min-height:460px; padding:48px 24px; display:grid; place-items:center; text-align:center; color:var(--muted); }
  .agentOrgListPanel { display:flex; flex-direction:column; min-height:0; }
  .agentOrgNodeList { max-height:235px; overflow:auto; border-bottom:1px solid var(--line); }
  .agentOrgListRow { width:100%; min-height:54px; padding:8px 12px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; color:var(--fg); text-align:left; }
  .agentOrgListRow:last-child { border-bottom:0; }
  .agentOrgListRow:hover,.agentOrgListRow.selected { background:var(--accent-soft); filter:none; }
  .agentOrgListRow--template { border-left:3px dashed var(--slate); opacity:.78; }
  .agentOrgListRow--template:hover,.agentOrgListRow--template:focus { opacity:1; }
  .agentOrgListRow--system { background:color-mix(in srgb,var(--slate) 5%,transparent); }
  .agentOrgListMain { min-width:0; }
  .agentOrgListMain b,.agentOrgListMain span { display:block; }
  .agentOrgListMain b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .agentOrgListMain span { margin-top:2px; color:var(--muted); font-size:11px; }
  .agentOrgStatus { display:inline-flex; align-items:center; gap:5px; min-height:26px; max-width:160px; padding:2px 7px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; white-space:nowrap; }
  .agentOrgStatusMark { width:11px; height:11px; flex:none; }
  .agentOrgStatus[data-tone="positive"] { color:var(--approve); border-color:color-mix(in srgb,var(--approve) 55%,var(--line)); background:var(--approve-soft); }
  .agentOrgStatus[data-tone="warning"] { color:var(--warn); border-color:color-mix(in srgb,var(--warn) 55%,var(--line)); background:var(--warn-soft); }
  .agentOrgStatus[data-tone="danger"] { color:var(--danger); border-color:color-mix(in srgb,var(--danger) 55%,var(--line)); background:var(--danger-soft); }
  .agentOrgStatus[data-tone="info"] { color:var(--info); border-color:color-mix(in srgb,var(--info) 55%,var(--line)); background:var(--info-soft); }
  .agentOrgRelationTableWrap { min-height:220px; overflow:auto; flex:1; }
  .agentOrgRelationTable { width:100%; border-collapse:collapse; font-size:12px; }
  .agentOrgRelationTable caption { padding:10px 12px 6px; color:var(--muted); text-align:left; font-size:11px; }
  .agentOrgRelationTable th { position:sticky; top:0; z-index:1; padding:0; border-bottom:1px solid var(--line); background:var(--surface); text-align:left; }
  .agentOrgRelationTable td { padding:9px; border-bottom:1px solid var(--line); vertical-align:top; }
  .agentOrgRelationTable tbody tr { cursor:pointer; }
  .agentOrgRelationTable tbody tr:hover,.agentOrgRelationTable tbody tr.selected { background:var(--accent-soft); }
  .agentOrgRelationTable tbody tr:focus { outline:2px solid var(--accent); outline-offset:-3px; }
  .agentOrgRelationSentence { color:var(--fg); line-height:1.4; }
  .agentOrgRelationMeta { display:block; margin-top:3px; color:var(--muted); font-size:10px; }
  .agentOrgEmptyInline { min-height:88px; padding:18px 12px; display:grid; place-items:center; color:var(--muted); text-align:center; }
  .agentOrgListAlternative { margin-top:10px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--surface); overflow:hidden; }
  .agentOrgListToggle { width:100%; min-height:46px; padding:8px 13px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:0; border-radius:0; background:transparent; color:var(--muted); cursor:pointer; font-weight:600; text-align:left; }
  .agentOrgListToggle::after { content:"+"; font-size:18px; font-weight:400; }
  .agentOrgListToggle[aria-expanded="true"]::after { content:"−"; }
  .agentOrgListAlternative .agentOrgListPanel { border:0; border-top:1px solid var(--line); border-radius:0; }
  .agentOrgMobileTimeline { display:none; margin-top:12px; }
  .agentOrgTimeline { position:relative; margin:0; padding:4px 0 4px 28px; list-style:none; }
  .agentOrgTimeline::before { content:""; position:absolute; left:10px; top:10px; bottom:10px; width:1px; background:var(--line); }
  .agentOrgTimelineItem { position:relative; margin:0 0 10px; }
  .agentOrgTimelineItem::before { content:""; position:absolute; left:-22px; top:17px; width:9px; height:9px; border-radius:50%; border:2px solid var(--panel); background:var(--slate); box-shadow:0 0 0 1px var(--line); }
  .agentOrgTimelineItem[data-tone="warning"]::before { background:var(--warn); }
  .agentOrgTimelineItem[data-tone="danger"]::before { background:var(--danger); }
  .agentOrgTimelineButton { width:100%; min-height:64px; padding:10px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); color:var(--fg); text-align:left; }
  .agentOrgTimelineButton:hover { border-color:var(--accent); filter:none; }
  .agentOrgTimelineButton b,.agentOrgTimelineButton span { display:block; }
  .agentOrgTimelineButton span { margin-top:3px; color:var(--muted); font-size:12px; }
  .agentOrgEmptyState { min-height:300px; padding:40px 24px; display:grid; place-items:center; text-align:center; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); }
  .agentOrgEmptyState .uiIcon { width:34px; height:34px; margin-bottom:12px; color:var(--slate); }
  .agentOrgEmptyState h2 { margin:0; font:800 20px/1.2 var(--font-display); }
  .agentOrgEmptyState p { max-width:580px; margin:7px auto 0; color:var(--muted); }
  .agentOrgDrafts { margin:0 0 14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); overflow:hidden; }
  .agentOrgDraftsHead { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; border-bottom:1px solid var(--line); }
  .agentOrgDraftsHead h2 { margin:0; font:800 16px/1.2 var(--font-display); }
  .agentOrgDraftsHead p { margin:3px 0 0; color:var(--muted); font-size:11px; }
  .agentOrgDraftGrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:8px; padding:10px; }
  .agentOrgDraftCard { min-width:0; padding:12px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
  .agentOrgDraftCardTop { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
  .agentOrgDraftCard h3 { margin:0; font:700 var(--type-card)/1.3 var(--font-ui); overflow-wrap:anywhere; }
  .agentOrgDraftCard p { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgDraftMeta { margin-top:10px; color:var(--muted2); font:10.5px/1.45 var(--font-mono); overflow-wrap:anywhere; }
  .agentOrgDraftActions { display:flex; align-items:center; gap:8px; margin-top:12px; flex-wrap:wrap; }
  .agentOrgDraftActions small { color:var(--muted); font-size:11px; line-height:1.35; }
  .agentOrgShadowResults { margin:0 0 14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); overflow:hidden; }
  .agentOrgShadowGrid { display:grid; gap:8px; padding:10px; }
  .agentOrgShadowResult { padding:14px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
  .agentOrgShadowResultHead { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
  .agentOrgShadowResult h3 { margin:0; font:700 var(--type-card)/1.3 var(--font-ui); }
  .agentOrgShadowResult > p { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
  .agentOrgShadowResultBody { display:grid; gap:8px; margin-top:12px; }
  .agentOrgShadowResultBlock { padding:10px 11px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--muted); font-size:12px; line-height:1.5; }
  .agentOrgShadowResultBlock b { color:var(--fg); }
  .agentOrgShadowResultList { margin:6px 0 0; padding-left:18px; }
  .agentOrgShadowResultMeta { margin-top:10px; color:var(--muted2); font:10.5px/1.5 var(--font-mono); overflow-wrap:anywhere; }
  .agentOrgPromotionConsent { display:grid; grid-template-columns:22px minmax(0,1fr); gap:10px; align-items:start; padding:12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgPromotionConsent b { color:var(--fg); }
  .agentOrgCreateOverlay { position:fixed; inset:0; z-index:var(--z-dialog); display:grid; place-items:center; padding:24px; background:var(--scrim); backdrop-filter:blur(4px); }
  .agentOrgCreateDialog { width:min(760px,100%); max-height:min(780px,calc(100vh - 48px)); display:flex; flex-direction:column; border:1px solid var(--line); border-radius:16px; background:var(--bg); box-shadow:var(--shadow-modal); overflow:hidden; }
	  .agentOrgJobDialog { width:min(680px,100%); }
	  .agentOrgJobBoundary,.agentOrgJobUnavailable { display:grid; gap:3px; padding:11px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); }
	  .agentOrgJobBoundary b,.agentOrgJobUnavailable b { color:var(--fg); }
	  .agentOrgJobBoundary span,.agentOrgJobUnavailable span { color:var(--muted); font-size:12px; line-height:1.5; }
	  .agentOrgJobUnavailable { margin-top:14px; border-color:color-mix(in srgb,var(--warn) 52%,var(--line)); background:var(--warn-soft); }
	  .agentOrgJobTimeline { position:relative; display:grid; gap:0; margin:16px 0 0; padding:0; list-style:none; }
	  .agentOrgJobTimeline::before { content:""; position:absolute; left:7px; top:9px; bottom:9px; width:1px; background:var(--line); }
	  .agentOrgJobTimeline li { position:relative; display:grid; grid-template-columns:16px minmax(0,1fr); gap:10px; padding:0 0 16px; }
	  .agentOrgJobTimeline li:last-child { padding-bottom:0; }
	  .agentOrgJobTimelineMark { position:relative; z-index:1; width:15px; height:15px; margin-top:2px; border:3px solid var(--panel); border-radius:50%; background:var(--slate); box-shadow:0 0 0 1px var(--line); }
	  .agentOrgJobTimeline li[data-tone="info"] .agentOrgJobTimelineMark { background:var(--info); }
	  .agentOrgJobTimeline li[data-tone="positive"] .agentOrgJobTimelineMark { background:var(--approve); }
	  .agentOrgJobTimeline li[data-tone="warning"] .agentOrgJobTimelineMark { background:var(--warn); }
	  .agentOrgJobTimeline li[data-tone="danger"] .agentOrgJobTimelineMark { background:var(--danger); }
	  .agentOrgJobTimeline time,.agentOrgJobTimeline b,.agentOrgJobTimeline p { display:block; }
	  .agentOrgJobTimeline time { color:var(--muted2); font:10px/1.4 var(--font-mono); }
	  .agentOrgJobTimeline b { margin-top:2px; font-size:13px; }
	  .agentOrgJobTimeline p { margin:3px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
	  .agentOrgJobActions { margin-bottom:10px; }
  .agentOrgCreateHead { min-height:76px; display:flex; align-items:flex-start; gap:12px; padding:16px 18px; border-bottom:1px solid var(--line); background:var(--panel); }
  .agentOrgCreateHeadCopy { min-width:0; flex:1; }
  .agentOrgCreateHead h2 { margin:0; font:800 21px/1.2 var(--font-display); }
  .agentOrgCreateHead p { margin:4px 0 0; color:var(--muted); font-size:12px; }
  .agentOrgCreateClose { width:44px; min-width:44px; min-height:44px; padding:0; display:grid; place-items:center; }
  .agentOrgCreateClose .uiIcon { width:18px; height:18px; }
  .agentOrgCreateProgress { display:grid; grid-template-columns:repeat(4,1fr); gap:4px; padding:10px 18px; border-bottom:1px solid var(--line); background:var(--surface); }
  .agentOrgCreateProgress span { min-height:30px; display:flex; align-items:center; justify-content:center; gap:6px; color:var(--muted); font-size:11px; text-align:center; }
  .agentOrgCreateProgress span::before { content:attr(data-step); width:20px; height:20px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; font:600 10px var(--font-mono); }
  .agentOrgCreateProgress span.active { color:var(--fg); font-weight:600; }
  .agentOrgCreateProgress span.active::before { border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
  .agentOrgCreateBody { padding:18px; overflow:auto; }
  .agentOrgCreateBody > h3 { margin:0; font:800 18px/1.25 var(--font-display); }
  .agentOrgCreateBody > p { margin:5px 0 16px; color:var(--muted); font-size:12.5px; line-height:1.5; }
  .agentOrgTemplateGrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .agentOrgTemplateCard { min-height:168px; padding:14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); color:var(--fg); text-align:left; cursor:pointer; }
  .agentOrgTemplateCard:hover { border-color:var(--slate); filter:none; }
  .agentOrgTemplateCard[aria-pressed="true"] { border-color:var(--accent); background:var(--accent-soft); box-shadow:inset 0 0 0 1px var(--accent); }
  .agentOrgTemplateEyebrow { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
  .agentOrgTemplateCard h4 { margin:12px 0 5px; font:800 16px/1.25 var(--font-display); }
  .agentOrgTemplateCard p { margin:0; color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgTemplateFacts { display:flex; flex-wrap:wrap; gap:5px; margin-top:12px; }
  .agentOrgTemplateFacts span { min-height:25px; display:inline-flex; align-items:center; padding:2px 7px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; }
  .agentOrgCreateFields { display:grid; gap:14px; }
  .agentOrgCreateField label { display:block; margin-bottom:6px; color:var(--fg); font-size:12px; font-weight:600; }
  .agentOrgCreateField small { display:block; margin-top:5px; color:var(--muted); font-size:11px; line-height:1.4; }
  .agentOrgCreateError { min-height:18px; margin-top:6px; color:var(--danger); font-size:12px; }
	.agentOrgLifecycleActions { display:grid; justify-items:start; gap:6px; margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
	.agentOrgLifecycleActions p { margin:0; max-width:48ch; color:var(--muted); font-size:11px; line-height:1.45; }
	.agentOrgDangerButton { min-height:44px; padding:8px 13px; border:1px solid color-mix(in srgb,var(--danger) 66%,var(--line)); border-radius:var(--r); background:var(--danger-soft); color:var(--danger); font:600 12px/1.25 var(--font-ui); cursor:pointer; }
	.agentOrgDangerButton:hover:not(:disabled) { border-color:var(--danger); background:color-mix(in srgb,var(--danger) 15%,var(--panel)); color:var(--danger); filter:none; }
	.agentOrgDangerButton:focus-visible { outline:2px solid var(--danger); outline-offset:2px; }
	.agentOrgDangerButton:disabled { cursor:not-allowed; opacity:.5; }
	.agentOrgLifecycleNotice { display:grid; gap:4px; margin-top:14px; padding:11px 12px; border:1px solid color-mix(in srgb,var(--warn) 58%,var(--line)); border-radius:var(--r); background:var(--warn-soft); }
	.agentOrgLifecycleNotice b { color:var(--fg); font-size:12px; }
	.agentOrgLifecycleNotice span { color:var(--muted); font-size:11px; line-height:1.45; }
	.agentOrgRetirementDialog { width:min(640px,100%); }
	.agentOrgRetirementEffect { padding:13px 14px; border:1px solid color-mix(in srgb,var(--danger) 50%,var(--line)); border-radius:var(--r); background:var(--danger-soft); }
	.agentOrgRetirementEffect h3 { margin:0; color:var(--fg); font:800 15px/1.3 var(--font-display); }
	.agentOrgRetirementEffect ol { display:grid; gap:7px; margin:10px 0 0; padding-left:20px; color:var(--muted); font-size:12px; line-height:1.5; }
	.agentOrgRetirementEffect b { color:var(--fg); }
	.agentOrgRetirementEffect p { margin:11px 0 0; padding-top:10px; border-top:1px solid color-mix(in srgb,var(--danger) 38%,var(--line)); color:var(--muted); font-size:11px; line-height:1.5; }
	.agentOrgRetirementDialog .agentOrgCreateField { margin-top:16px; }
	.agentOrgRetirementDialog textarea { width:100%; min-height:112px; resize:vertical; }
  .agentOrgCreateReview { display:grid; gap:10px; }
  .agentOrgCreateReviewRow { display:grid; grid-template-columns:minmax(130px,.38fr) minmax(0,1fr); gap:12px; padding:11px 12px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); }
  .agentOrgCreateReviewRow dt { color:var(--muted); }
  .agentOrgCreateReviewRow dd { margin:0; overflow-wrap:anywhere; }
  .agentOrgCreateBoundary { margin-top:14px; padding:12px; border:1px solid color-mix(in srgb,var(--approve) 48%,var(--line)); border-radius:var(--r); background:var(--approve-soft); color:var(--muted); font-size:12px; line-height:1.5; }
  .agentOrgCreateBoundary b { color:var(--fg); }
  .agentOrgCreateFoot { min-height:68px; display:flex; align-items:center; gap:8px; padding:12px 18px; border-top:1px solid var(--line); background:var(--panel); }
  .agentOrgDrawerDim { padding:0; min-height:0; border:0; border-radius:0; }
  .agentOrgInspector { overflow:auto; }
  .agentOrgInspectorPlaceholder { min-height:100%; display:grid; place-items:center; padding:28px; color:var(--muted); text-align:center; }
  .agentOrgInspectorPlaceholder .uiIcon { width:30px; height:30px; margin-bottom:10px; color:var(--slate); }
  .agentOrgInspectorPlaceholder b { display:block; color:var(--fg); }
  .agentOrgInspectorPlaceholder p { max-width:260px; margin:5px auto 0; font-size:12px; }
  .agentOrgInspectorInner { min-height:100%; padding-bottom:24px; }
  .agentOrgInspectorHead { position:sticky; top:0; z-index:2; min-height:76px; padding:12px 16px; display:flex; align-items:flex-start; gap:10px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--bg) 96%,transparent); }
  .agentOrgInspectorBack { width:44px; min-width:44px; padding:0; display:grid; place-items:center; }
  .agentOrgInspectorBack .uiIcon { width:18px; height:18px; }
  .agentOrgInspectorTitle { min-width:0; flex:1; }
  .agentOrgInspectorTitle h2 { margin:1px 0 2px; font:800 20px/1.1 var(--font-display); overflow-wrap:anywhere; }
  .agentOrgInspectorTitle p { margin:0; color:var(--muted); font-size:12px; }
  .agentOrgInspectorBody { padding:14px 16px; }
  .agentOrgRuntimeLimits { margin-top:12px; padding-top:12px; border-top:1px solid var(--line); }
  .agentOrgRuntimeLimits h3 { margin:0 0 8px; font:700 12px/1.35 var(--font-ui); }
  .agentOrgTemplateLead { border-style:dashed; border-color:var(--slate); }
  .agentOrgInspectorSection { margin-bottom:10px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); overflow:hidden; }
  .agentOrgInspectorSection summary { min-height:44px; padding:10px 12px; display:flex; align-items:center; justify-content:space-between; gap:10px; cursor:pointer; color:var(--fg); font-weight:600; list-style:none; }
  .agentOrgInspectorSection summary::-webkit-details-marker { display:none; }
  .agentOrgInspectorSection summary::after { content:"+"; color:var(--muted); font-size:18px; font-weight:400; }
  .agentOrgInspectorSection[open] summary::after { content:"−"; }
  .agentOrgInspectorSectionBody { padding:0 12px 12px; border-top:1px solid var(--line); }
  .agentOrgInspectorDl { display:grid; grid-template-columns:minmax(118px,.45fr) minmax(0,1fr); gap:7px 12px; margin:12px 0 0; }
  .agentOrgInspectorDl dt { color:var(--muted); }
  .agentOrgInspectorDl dd { margin:0; min-width:0; overflow-wrap:anywhere; }
  .agentOrgChips { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
  .agentOrgChip { display:inline-flex; align-items:center; min-height:28px; padding:3px 8px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:11px; overflow-wrap:anywhere; }
  .agentOrgInspectorNote { margin:10px 0 0; padding:9px 10px; border-left:2px solid var(--slate); background:var(--info-soft); color:var(--muted); font-size:12px; }
  .agentOrgHero { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin:2px 0 18px; }
  .agentOrgHeroCopy { min-width:0; max-width:760px; }
  .agentOrgHeroEyebrow { margin-bottom:6px; color:var(--accent); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
  .agentOrgHero h1 { margin:0; font:800 clamp(26px,3vw,36px)/1.08 var(--font-display); letter-spacing:-.025em; }
  .agentOrgHero p { max-width:700px; margin:8px 0 0; color:var(--muted); line-height:1.55; }
  .agentOrgPeoplePanel,.agentOrgGuidePanel { min-width:0; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); overflow:hidden; }
  .agentOrgPeopleHead { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:14px 16px; border-bottom:1px solid var(--line); }
  .agentOrgPeopleHead h2,.agentOrgGuidePanel h2 { margin:0; font:800 18px/1.25 var(--font-display); }
  .agentOrgPeopleHead p,.agentOrgGuidePanel > p { margin:4px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgOrgTree { padding:20px 16px 18px; background:radial-gradient(circle at 50% 0,var(--accent-soft),transparent 38%); }
  .agentOrgRoot { width:min(280px,100%); margin:0 auto; position:relative; }
  .agentOrgRoot::after { content:""; position:absolute; left:50%; bottom:-28px; height:28px; border-left:1px solid var(--line); }
  .agentOrgHumanCard,.agentOrgEmployeeCard { min-height:118px; padding:14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--surface); color:var(--fg); text-align:left; }
  .agentOrgHumanCard { width:100%; }
  .agentOrgEmployeeCard { width:100%; cursor:pointer; }
  .agentOrgEmployeeCard:hover,.agentOrgEmployeeCard:focus-visible { border-color:var(--accent); background:var(--accent-soft); filter:none; }
  .agentOrgCardTop { display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .agentOrgCardType { display:inline-flex; align-items:center; gap:6px; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
  .agentOrgCardType .uiIcon { width:16px; height:16px; color:var(--accent); }
  .agentOrgHumanCard h3,.agentOrgEmployeeCard h3 { margin:12px 0 4px; font:800 17px/1.2 var(--font-display); }
  .agentOrgHumanCard p,.agentOrgEmployeeCard p { margin:0; color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgReports { position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:12px; padding-top:46px; }
  .agentOrgReports::before { content:""; position:absolute; top:28px; left:12%; right:12%; border-top:1px solid var(--line); }
  .agentOrgReportSlot { position:relative; }
  .agentOrgReportSlot::before { content:""; position:absolute; left:50%; top:-18px; height:18px; border-left:1px solid var(--line); }
  .agentOrgEmployeeFacts { display:flex; flex-wrap:wrap; gap:5px; margin-top:12px; }
  .agentOrgEmployeeFacts span { min-height:25px; display:inline-flex; align-items:center; padding:2px 7px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; }
  .agentOrgMissionTeams { display:grid; gap:12px; padding:16px; background:radial-gradient(circle at 50% 0,var(--accent-soft),transparent 34%); }
  .agentOrgMissionTeam { padding:14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--surface); }
  .agentOrgMissionAccountable { min-width:0; display:flex; align-items:center; gap:7px; color:var(--muted); font-size:11px; }
  .agentOrgMissionAccountable .uiIcon { width:16px; height:16px; color:var(--accent); }
  .agentOrgMissionLabel { margin:10px 0 12px; padding-bottom:12px; border-bottom:1px solid var(--line); }
  .agentOrgMissionLabel h3 { margin:0; font:800 17px/1.25 var(--font-display); }
  .agentOrgMissionLabel p { margin:4px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
  .agentOrgMissionEmployees { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr)); gap:10px; }
  .agentOrgMissionAccountable > * { min-width:0; overflow-wrap:anywhere; }
  .agentOrgHumanRoster { margin-top:16px; padding-top:14px; border-top:1px solid var(--line); }
  .agentOrgHumanRoster b { display:block; margin-bottom:7px; font-size:11px; }
  .agentOrgHumanRoster span { display:inline-flex; margin:0 5px 5px 0; padding:4px 7px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; }
  .agentOrgGuidePanel { padding:16px; align-self:start; }
  .agentOrgGuideSteps { display:grid; gap:10px; margin-top:16px; }
  .agentOrgGuideStep { display:grid; grid-template-columns:30px minmax(0,1fr); gap:10px; align-items:start; }
  .agentOrgGuideStep > span { width:30px; height:30px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; background:var(--surface); color:var(--accent); font:700 11px var(--font-mono); }
  .agentOrgGuideStep b { display:block; font-size:12px; }
  .agentOrgGuideStep small { display:block; margin-top:2px; color:var(--muted); line-height:1.4; }
  .agentOrgAdvanced { margin-top:14px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--panel); overflow:hidden; }
  .agentOrgAdvanced > summary { min-height:54px; padding:11px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; list-style:none; font-weight:700; }
  .agentOrgAdvanced > summary::-webkit-details-marker { display:none; }
  .agentOrgAdvanced > summary::after { content:"Technische Details anzeigen"; color:var(--muted); font-size:11px; font-weight:400; }
  .agentOrgAdvanced[open] > summary::after { content:"Technische Details schließen"; }
  .agentOrgAdvancedBody { padding:0 12px 12px; border-top:1px solid var(--line); }
  .agentOrgEvidence { margin:10px 0 14px; }
  .agentOrgEvidence > summary { min-height:44px; display:flex; align-items:center; color:var(--muted); cursor:pointer; }
  .agentOrgTeamAlternative { margin-top:14px; }
  .agentOrgProfileLead { margin-bottom:10px; padding:14px; border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-radius:var(--r); background:var(--accent-soft); }
  .agentOrgProfileLead p { margin:5px 0 0; color:var(--muted); line-height:1.5; }
  .agentOrgProfileActions { display:flex; gap:8px; flex-wrap:wrap; margin:12px 0 2px; }
  .agentOrgTrainingUnavailable { margin-top:10px; padding:10px 11px; border:1px solid var(--warn); border-radius:var(--r); background:var(--warn-soft); color:var(--muted); font-size:12px; line-height:1.45; }
  @container agent-organization (max-width:720px) {
    .agentOrgHero { display:block; }
    .agentOrgHero .agentOrgIntroActions { justify-content:flex-start; margin-top:14px; }
    .agentOrgControls,.agentOrgPeopleLayout { grid-template-columns:minmax(0,1fr); }
    .agentOrgPanelHead { align-items:flex-start; flex-wrap:wrap; }
  }
  @container agent-organization (max-width:520px) {
    .agentOrgLayers { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .agentOrgSummary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  }
  @media (max-width:1120px) { .posTileEditor { position:static; } }
  @media (max-width:1060px) {
    .conceptTileGrid { grid-template-columns:repeat(3,minmax(120px,1fr)); }
    .ceeHelper { right:8px; bottom:calc(4px + env(safe-area-inset-bottom)); }
    .ceeHelper .ceeAvatarBtn,.ceeHelper .ceeAvatarCore { width:48px; height:65px; }
  }
  @media (max-width:760px) { .conceptTileGrid { grid-template-columns:repeat(2,minmax(110px,1fr)); }
    .cchildren { margin-left:8px; padding-left:4px; }
    .cnode > .crow { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; }
    .cnode > .crow > .tg { grid-column:1; grid-row:1 / span 2; }
    .cnode > .crow > .cn,.cnode > .crow > .cnt,.cnode > .crow > .ext { grid-column:2; width:100%; }
    .chan { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:7px 10px; }
    .chan .nm { min-width:0; }
    .chan .rl { grid-column:1 / -1; }
    .conceptHead { display:none; }
    .einkaufBestellung { overflow-x:auto; }
    .einkaufTabelle { min-width:560px; }
    .conceptRow { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:7px 10px; padding:12px; }
    .conceptRow > .conceptMono:first-child,.conceptRow > .grow { grid-column:1 / -1; min-width:0; }
    .conceptRow > :not(.conceptMono):not(.grow) { min-width:0; max-width:100%; justify-self:start; overflow-wrap:anywhere; }
    .conceptRow > .num:last-child { justify-self:end; }
    .conceptState { white-space:normal; overflow-wrap:anywhere; }
    .crow { flex-wrap:wrap; align-items:flex-start; }
    .crow > span { max-width:100%; overflow-wrap:anywhere; }
    .methodPrimary,.methodBindings,.methodState { flex:1 1 100%; min-width:0; }
    .methodBindingIdentity { flex:1 1 100%; }
    .gateTop { flex-direction:column; }
    .gateTop .grow { width:100%; }
    .gateActions { justify-content:flex-start; flex-wrap:wrap; }
    .uc-actions { align-items:stretch; flex-wrap:wrap; }
    .uc-actions .spacer { display:none; }
    .uc-actions .tbtn { flex:1 1 auto; }
    .krow { align-items:stretch; flex-direction:column; }
    .krow .tbtn { width:100%; }
    .agentOrgDraftCardTop,.agentOrgShadowResultHead { flex-wrap:wrap; }
    .agentOrgStatus { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
    .goodsInWorkspace { display:block; height:100%; overflow:auto; }
    .goodsInMain { overflow:visible; padding:18px 16px 36px; }
    .goodsInWorkspace .wizAside { display:block; width:100%; overflow:visible; padding:22px 16px 34px; border-top:1px solid var(--line); border-left:0; }
    .scanBox { gap:10px; padding:10px 12px; }
    .scanIcon { width:26px; }
    .scanMsg2 { flex:1 1 100%; }
    .jobContract dl,.techEvidence dl { grid-template-columns:1fr; gap:2px; }
    .posTileStatus { display:block; } .posTileStatusActions { justify-content:flex-start; margin-top:12px; } .posTileEditor { position:static; }
    .posTileDraftGrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .agentOrgPage { padding:12px 12px 24px; }
    .agentOrgIntro { display:block; } .agentOrgIntroActions { justify-content:flex-start; margin-top:10px; } .agentOrgReadOnly { margin-top:0; white-space:normal; }
    .agentOrgSummary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .agentOrgControls { grid-template-columns:1fr; }
    .agentOrgLayers { grid-template-columns:1fr 1fr; }
    .agentOrgLayer { text-align:left; }
    .agentOrgMapPanel { display:none; }
    .agentOrgListToggle { display:none; }
    .agentOrgListBody[hidden] { display:block !important; }
    .agentOrgListPanel { min-height:440px; }
    .agentOrgNodeList { max-height:none; }
	    .agentOrgRelationTableWrap { min-height:0; overflow:visible; }
	    .agentOrgRelationTable { min-width:0; }
	    .agentOrgRelationTable thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
	    .agentOrgRelationTable tbody { display:grid; gap:8px; padding:8px; }
	    .agentOrgRelationTable tbody tr { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; padding:10px; border:1px solid var(--line); border-radius:var(--r); background:var(--panel); }
	    .agentOrgRelationTable tbody td { min-width:0; padding:0; border:0; overflow-wrap:anywhere; }
	    .agentOrgRelationTable tbody td::before { display:block; margin-bottom:3px; color:var(--muted2); font-size:9px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
	    .agentOrgRelationTable tbody td:nth-child(1)::before { content:"Von"; }
	    .agentOrgRelationTable tbody td:nth-child(2)::before { content:"Beziehung"; }
	    .agentOrgRelationTable tbody td:nth-child(3)::before { content:"Zu"; }
	    .agentOrgRelationTable tbody td:nth-child(4)::before { content:"Wahrheit"; }
    .agentOrgMobileTimeline { display:block; }
    .agentOrgInspectorHead { padding-left:12px; padding-right:12px; }
    .agentOrgInspectorBody { padding-left:12px; padding-right:12px; }
    .agentOrgInspectorDl { grid-template-columns:1fr; gap:2px; }
    .agentOrgCreateOverlay { padding:0; place-items:stretch; }
    .agentOrgCreateDialog { width:100%; max-height:100dvh; min-height:100dvh; border:0; border-radius:0; }
    .agentOrgCreateHead,.agentOrgCreateBody,.agentOrgCreateFoot { padding-left:14px; padding-right:14px; }
    .agentOrgCreateFoot { padding-bottom:calc(14px + env(safe-area-inset-bottom,0px)); }
    .agentOrgCreateProgress { padding-left:10px; padding-right:10px; }
    .agentOrgTemplateGrid { grid-template-columns:1fr; }
    .agentOrgCreateReviewRow { grid-template-columns:1fr; gap:4px; }
    .agentOrgHero { display:block; }
    .agentOrgHero .agentOrgIntroActions { margin-top:14px; }
    .agentOrgReports { grid-template-columns:1fr; padding-top:36px; }
    .agentOrgReports::before { left:50%; right:auto; top:18px; height:18px; border-top:0; border-left:1px solid var(--line); }
    .agentOrgReportSlot::before { display:none; }
    .agentOrgAdvanced > summary { align-items:flex-start; flex-direction:column; }
  }
}

/* ── Versand-Kategorien (Inhaber 15.08.): fünf klickbare Kacheln statt Textwand ─────────────── */
.shipCats { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; padding:12px 16px 4px; }
.shipCats .shipCat { cursor:pointer; text-align:left; color:var(--fg); font:inherit; }
.shipCats .shipCat.sel { border-color:var(--accent); box-shadow:inset 0 0 0 1px var(--accent); }
.shipCats .shipCat:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.shipCats .shipCatHint { font-size:10.5px; color:var(--muted); margin-top:4px; }
@media (max-width: 1100px) { .shipCats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.rowStatic { cursor:default; }
.rowWaiting { cursor:default; opacity:.65; }
.shipSep { margin-top:8px; }
.shipSepGap { margin-top:14px; }
.shipDocGap { margin-top:10px; }
/* Versandart-Spalte im Drawer-Kopf: Select und Chips gestapelt MIT Abstand (15.08. nachgemessen:
   ohne Container klebten die Chips mit 0 px am Select). */
.smCol { display:flex; flex-direction:column; align-items:flex-end; gap:6px; min-width:0; }
.smCol .smChips { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.smColLabel { font-size:11px; color:var(--muted); margin-bottom:3px; }
/* Versand-Positionszeilen: gleiche Bildsprache wie Auftrags-/PIM-Detail (orderLineThumb),
   Zustand als benannte Klasse statt Inline-Farbe; Textstufen-Tokens wegen 12-px-Schrift. */
.shipLineItems { display:flex; flex-direction:column; }
.shipLineItem { display:grid; grid-template-columns:52px minmax(0,1fr) auto; gap:4px 10px; align-items:center; padding:7px 0; border-top:1px solid var(--line); font-size:13px; }
.shipLineItem:first-child { border-top:0; padding-top:2px; }
.shipLineMeta { display:flex; flex-direction:column; align-items:flex-end; gap:3px; justify-self:end; text-align:right; min-width:0; }
.shipLineQty { white-space:nowrap; }
.shipLineState { font-size:12px; }
.shipLineState.ok { color:var(--approve-text); }
.shipLineState.part, .shipLineState.legacy { color:var(--amber); }
.shipLineState.none { color:var(--danger-text); }
.shipLineState.unknown { color:var(--muted); }
.badgeSerial { color:var(--accent); border-color:var(--accent); }
/* Adresse + Zahlstatus nebeneinander, sobald der Drawer die Breite hergibt; Umbruchgrenze folgt
   der Inspectorbreite (detail-board), nicht der Monitorbreite. */
.shipListToggle { margin:10px 16px; }
/* Artikel-Fenster (Versandprozess): großes Bild + Identität aus der geladenen Zeile; der
   PIM-Sprung öffnet einen NEUEN Tab (#pim-artikel=<id>), der Versandprozess bleibt unberührt. */
/* +1 über --z-dialog: das Fenster öffnet auch AUS dem Versand-Wizard (selbst z-dialog) und
   muss über ihm liegen — 16.08. gemessen: bei Gleichstand gewann der Wizard per DOM-Ordnung. */
#artInfoWrap { position:fixed; inset:0; background:var(--scrim); z-index:calc(var(--z-dialog) + 1); display:none; overflow:auto; }
#artInfo { width:min(560px,94vw); margin:7vh auto 6vh; background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:18px 20px; box-shadow:var(--shadow-modal); }
.artInfoHead { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
.artPeek { padding:0; border:0; background:none; cursor:zoom-in; display:block; flex:none; min-height:0; }
.artPeek:focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:8px; }
.artPeekText { padding:0; border:0; background:none; font:inherit; color:inherit; text-align:left; cursor:pointer; min-width:0; display:block; }
.artPeekText:hover strong, .pickName .artPeekText:hover { text-decoration:underline; }
.artInfoImg, .artInfoImgPh { width:100%; height:300px; object-fit:contain; background:var(--panel2); border:1px solid var(--line); border-radius:10px; }
.artInfoImgPh { display:grid; place-items:center; color:var(--muted); font-size:40px; border-style:dashed; }
.artInfoKv { margin-top:12px; }
.artInfoPimLink { margin-top:14px; color:var(--accent); font-weight:600; text-decoration:none; border:1px solid var(--accent); border-radius:9px; padding:9px 14px; min-height:var(--control-min); display:inline-flex; flex-direction:column; justify-content:center; }
.artInfoPimLink:hover { background:var(--accent-soft); }
.artInfoPimHint { display:block; font-size:11px; color:var(--muted); font-weight:400; margin-top:2px; }
/* Einheitsdaten am Scan-Schritt: Maske aus den produktiven stock_unit-Deklarationen; Erfassung
   optional, gesendet erst nach dem Versand-Abschluss (ReplaceFrame macht die Nummer zur Einheit). */
.suWizToggle { margin-left:auto; font-size:12px; padding:4px 10px; }
.suWizBox { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:8px 10px; padding:8px 10px; margin:2px 0 6px; border:1px dashed var(--line); border-radius:9px; background:var(--panel2); }
.suWizBox[hidden] { display:none; }  /* Altfall, im Browser gemessen: ohne diese Zeile 39 px hoch,
   obwohl die Fläche die Box für verborgen hält. display:grid schlägt das hidden-Attribut. */
.suWizField { font-size:11px; color:var(--muted); display:flex; flex-direction:column; gap:3px; min-width:0; }
.suWizField input:not([type=checkbox]) { min-height:var(--control-min); background:var(--panel); border:1px solid var(--line); color:var(--fg); border-radius:7px; padding:0 10px; font-size:13px; width:100%; }
.suWizCheck { flex-direction:row; align-items:center; gap:8px; min-height:var(--control-min); color:var(--fg); font-size:13px; }
.suWizHint { grid-column:1 / -1; font-size:11px; color:var(--muted); }
.suWizDoneLog { margin-top:10px; font-size:12px; color:var(--approve-text); }
.suWizDoneWarn { color:var(--amber); }
/* Derselbe Einheitenwähler im Packtisch und im klassischen Versandassistenten. */
#artInfo.shippingUnitDialog { width:min(960px,94vw); }
.shippingUnitSlot { display:grid; gap:10px; margin-block:12px; padding:14px; border:1px solid var(--line); border-radius:10px; min-width:0; }
.shippingUnitSlot[hidden], .shippingUnitPicked[hidden], .shippingUnitMatches[hidden], .shippingUnitCapture[hidden], .shippingUnitMore[hidden], .shippingUnitSearch[hidden] { display:none; }
.shippingUnitSlotTitle { margin:0; font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.shippingUnitSearch { display:grid; gap:6px; }
.shippingUnitSearch label { font-size:12px; color:var(--muted); }
.shippingUnitSearchControls { display:flex; flex-wrap:wrap; gap:8px; }
.shippingUnitSearchControls input { flex:1 1 280px; min-width:0; min-height:var(--control-min); padding:8px 10px; border:1px solid var(--line); border-radius:7px; background:var(--panel2); color:var(--fg); font:inherit; }
.shippingUnitSlot button { min-height:var(--control-min); }
.shippingUnitStatus { margin:0; font-size:12px; color:var(--muted); overflow-wrap:anywhere; }
.shippingUnitStatus[data-tone="error"], .shippingUnitAvailability[data-available="false"] { color:var(--red); }
.shippingUnitStatus[data-tone="warning"] { color:var(--amber); }
.shippingUnitStatus[data-tone="selected"] { color:var(--approve-text); }
.shippingUnitMatches { display:grid; gap:8px; }
.shippingUnitCandidate, .shippingUnitPicked { display:grid; gap:8px; padding:12px; border:1px solid var(--line); border-radius:8px; background:var(--panel2); min-width:0; }
.shippingUnitPicked[data-ready="true"] { border-color:var(--approve); }
.shippingUnitCandidateHead { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.shippingUnitAvailability { font-size:12px; color:var(--muted); overflow-wrap:anywhere; }
.shippingUnitFields { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr)); gap:10px 16px; margin:0; }
.shippingUnitFields > div { min-width:0; }
.shippingUnitFields dt { font-size:11px; color:var(--muted); margin-bottom:3px; }
.shippingUnitFields dd { margin:0; color:var(--fg); font-family:var(--font-mono,ui-monospace,monospace); font-size:13px; overflow-wrap:anywhere; user-select:text; }
.shippingUnitMissing { font-family:var(--font-ui); color:var(--muted); }
.shippingUnitMatchHint { margin:0; font-size:12px; color:var(--accent); overflow-wrap:anywhere; }
.shippingUnitCandidate details { min-width:0; }
.shippingUnitCandidate summary, .shippingUnitPicked summary { cursor:pointer; color:var(--muted); font-size:12px; padding-block:6px; }
.shippingUnitCapture { display:grid; gap:8px; padding:12px; border:1px solid var(--line); border-radius:8px; }
.shippingUnitCapture label { display:grid; gap:5px; font-size:12px; }
.shippingUnitCapture input { min-width:0; min-height:var(--control-min); padding:8px 10px; border:1px solid var(--line); border-radius:7px; background:var(--panel2); color:var(--fg); font:inherit; }
.shippingUnitActions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.shippingUnitFoot { display:flex; flex-wrap:wrap; align-items:center; gap:10px; position:sticky; bottom:0; padding-block:12px; background:var(--panel); border-top:1px solid var(--line); }
.shippingUnitFoot > :last-child { margin-left:auto; }
.shipDetailCols { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; align-items:start; }
.shipDetailCols > .card { min-width:0; }
@container detail-board (max-width:640px) {
  .shipDetailCols { grid-template-columns:minmax(0,1fr); }
}
@container detail-board (max-width:520px) {
  .shipLineItem { grid-template-columns:48px minmax(0,1fr); }
  .shipLineMeta { grid-column:2; align-items:flex-start; text-align:left; justify-self:start; }
}
/* U3-Rückmeldung an den Verkaufskanal auf dem Erfolgsschirm des Pack-Assistenten: Erfolg ruhig,
   Ablehnung und unklarer Ausgang als benannter Prüfhinweis (nie als Erfolg gelesen). */
.cwDoneLog { margin-top:6px; font-size:12px; color:var(--approve-text); }
.cwDoneLog.cwDoneWarn { color:var(--amber); }
/* Ein-Klick-Packtisch (V2): Bestätigen-Zeilen + Wirkungsvorschau am Verpacken-Knopf (§2.2);
   der Umschalter hält den klassischen Assistenten als gleichwertigen Rückweg offen. */
.pbPanel { display:flex; flex-direction:column; gap:10px; }
.pbLines { display:flex; flex-direction:column; }
.pbLine { display:grid; grid-template-columns:52px minmax(0,1fr) auto; gap:4px 10px; align-items:center; padding:7px 0; border-top:1px solid var(--line); }
.pbLine:first-child { border-top:0; }
.pbQty { font-size:11px; color:var(--muted); display:flex; flex-direction:column; gap:3px; }
.pbQty input { width:90px; min-height:var(--control-min); background:var(--panel2); border:1px solid var(--line); color:var(--fg); border-radius:7px; padding:0 10px; font-size:15px; text-align:right; }
.pbWeight { font-size:12px; color:var(--muted); display:flex; flex-direction:column; gap:4px; max-width:320px; }
.pbWeight[hidden] { display:none; }  /* display:flex schlaegt sonst das hidden-Attribut (zweiter Fall) */
.pbWeight input { min-height:var(--control-min); background:var(--panel2); border:1px solid var(--line); color:var(--fg); border-radius:7px; padding:0 10px; font-size:16px; }
.pbEffect { display:flex; flex-direction:column; gap:2px; font-size:12px; color:var(--muted); border:1px dashed var(--line); border-radius:9px; padding:9px 12px; }
.pbEffect b { color:var(--fg); }
.pbStateLine { font-size:12px; color:var(--amber); }
.pbSwitch { align-self:flex-start; font-size:12px; padding:5px 10px; margin-top:4px; }
.pbScanRows { display:flex; flex-direction:column; }
.pbScanRows .scanRow { display:flex; gap:8px; align-items:center; padding:5px 0; flex-wrap:wrap; }
.pbScanRows .scanInp { width:220px; min-height:var(--control-min); background:var(--panel2); border:1px solid var(--line); color:var(--fg); border-radius:7px; padding:0 10px; font-size:14px; font-family:ui-monospace,monospace; }
.pbScanSku { font-size:12px; color:var(--muted); min-width:180px; font-family:ui-monospace,monospace; }
.pbRight { margin-left:auto; }
[data-ret-shipping] .formGrid { margin-top:10px; }

/* ── Legacy-Daten (Inhaber, 03.09.): Altsystem-Datensätze vor dem Schnitt der Umstellung.
   Standard ausgeblendet; per Schalter sichtbar, dann an jeder Zeile markiert — neutral,
   nicht grün (Grün gehört dem Ja), nicht amber (Amber ist der Provenienz-Chip). */
.badgeLegacy { margin-left:5px; color:var(--muted); border-color:var(--muted); background:color-mix(in srgb,var(--muted) 10%,transparent); }
.legacyBar { display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; padding:6px 16px; font-size:12px; color:var(--muted); border-bottom:1px solid var(--line); }
.legacyToggle { display:inline-flex; align-items:center; gap:8px; min-height:var(--control-min); cursor:pointer; color:var(--fg); white-space:nowrap; }
.legacyToggle input { width:18px; height:18px; margin:0; accent-color:var(--accent); }
.legacyBarHint { flex:1 1 auto; min-width:0; }
.legacyNote { margin:10px 0; padding:9px 11px; border:1px solid var(--line); border-left:3px solid var(--muted); border-radius:7px; color:var(--muted); font-size:12px; line-height:1.45; }
.shipLineState.legacyData { color:var(--muted); }
/* Abschnitts-Kopfzeilen der Versandliste bleiben auch unter 1060px sichtbar (die Seitenleisten-
   Regel .nav-sep{display:none} gilt der Navigation, nicht der Liste — „nie versandbereit" muss lesbar sein). */
@media (max-width:1060px) { .shipSep, .shipSepGap { display:block; } }

/* Direktdruck am Packtisch (Inhaber 03.09.): Der Druck wird ausgelöst, nicht bestätigt — die Zeile
   sagt deshalb „gesendet", nie „gedruckt", und hält den Nachdruck in Reichweite. */
.pbPrintNote { margin-top:6px; font-size:12px; color:var(--muted); }

/* Artikel bestätigen am Packtisch (Inhaber 07.09.): unbestätigt ist der Ausgangszustand, jede
   Position wird gescannt oder mit + bestätigt. Grün gehört dem Ja — hier: dem vollständigen Ja. */
.pbScan { display:flex; flex-direction:column; gap:4px; margin-bottom:12px; }
.pbScan input { min-height:var(--control-min); }
.pbScanHint { font-size:11px; color:var(--muted); }
.pbConfirm { display:flex; align-items:center; gap:8px; }
.pbConfirm button { min-width:var(--control-min); min-height:var(--control-min); font-size:18px; line-height:1; }
.pbCount { font-size:13px; color:var(--muted); min-width:52px; text-align:center; }
.pbLine.pbDone .pbCount b { color:var(--approve-text); }
.pbLine.pbOpen .pbCount b { color:var(--amber); }
.pbConfirmState { margin-top:10px; font-size:12px; color:var(--muted); }
.pbPartial { display:flex; align-items:center; gap:8px; margin-top:8px; font-size:12px; min-height:var(--control-min); }
/* Ohne diese Zeile schlägt display:flex das [hidden]-Attribut, und der Haken steht sichtbar da,
   obwohl die Fläche ihn für verborgen hält (im Browser gefunden, kein Test hätte das gezeigt). */
.pbPartial[hidden] { display:none; }
.pbPartial input { width:18px; height:18px; accent-color:var(--accent); }
.pbPrintWarn { color:var(--amber); }

/* Vorprüfung am Packtisch (Inhaber 08.09.): Ergebnis VOR dem Klick, nie erfundenes Grün.
   Grün gehört dem Ja — hier: dem geprüften Ja. */
.pbPreflight { margin-top:6px; font-size:12px; color:var(--muted); }
.pbPreflight[hidden] { display:none; }
/* „wird gerade neu geprüft" — gedämpft, aber OHNE Höhenänderung: Der Befund bleibt stehen, damit
   nichts darunter springt (Inhaber-Befund 11.09.). Kein Wechsel von Rahmen, Polsterung oder Text. */
.pbPreflightPruefend { opacity:.62; }
.pbPreflightOk { color:var(--approve-text); }
.pbPreflightBlocked { color:var(--amber); }
.pbTiming { margin-top:6px; font-size:11px; color:var(--muted); }
.pbTimingSlow { color:var(--amber); }

/* Folgeauftrag nach dem Etikett (Inhaber 08.09.: „Rest darf im Hintergrund laufen"): je Stufe der
   echte Stand. Grün gehört dem Ja — hier: der wirklich erledigten Stufe. */
.fuBox { margin-top:8px; display:flex; flex-direction:column; gap:3px; }
.fuLine { font-size:12px; color:var(--muted); }
.fuLine.fu-done { color:var(--approve-text); }
.fuLine.fu-failed { color:var(--amber); }

/* Sammeln & Kurzweg (Inhaber 08.09.): Einstieg ist die Artikelliste, Ausstieg der Scan.
   Beim Drucken bleibt nur die Sammelliste übrig — ein Blatt statt fünfzehn Auftragszetteln. */
.shipScan { display:flex; flex-direction:column; gap:4px; padding:8px 16px 0; font-size:12px; color:var(--muted); }
.shipScan input { min-height:var(--control-min); }
.shipScanTreffer { margin:8px 16px 0; font-size:12px; color:var(--muted); display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.shipScanTreffer[hidden] { display:none; }
.shipScanLeer { color:var(--amber); }
.shipScanHit { min-height:var(--control-min); }
.sammelWrap { margin:10px 16px 0; border:1px solid var(--line); border-radius:8px; }
.sammelWrap > summary { padding:8px 12px; cursor:pointer; font-size:13px; min-height:var(--control-min); display:flex; align-items:center; }
.sammelBox { padding:0 12px 12px; }
.sammelKopf { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-bottom:8px; font-size:13px; }
.sammelHint { flex:1 1 auto; min-width:0; font-size:12px; color:var(--muted); }
.sammelTab { width:100%; border-collapse:collapse; font-size:13px; }
.sammelTab th { text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.03em; color:var(--muted); border-bottom:1px solid var(--line); padding:4px 6px; }
.sammelTab td { padding:6px; border-bottom:1px solid var(--line); vertical-align:top; }
.sammelTab .num { text-align:right; font-variant-numeric:tabular-nums; }
.sammelTab tr.sammelMehr td { background:color-mix(in srgb,var(--accent) 7%,transparent); }
.sammelSku { display:block; font-size:11px; color:var(--muted); }
.sammelFuss { margin-top:8px; font-size:12px; color:var(--muted); }
.sammelLeer { height:auto; color:var(--muted); }
/* Automatik: die Welle steht sichtbar in der Liste, nicht im Kopf des Packers. */
.shipScanAlle { min-height:var(--control-min); }
.shipScanEinzeln { flex-basis:100%; font-size:11px; color:var(--muted); }
.sammelLauf { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:8px 16px 0; padding:8px 10px; border:1px solid var(--accent); border-radius:8px; font-size:12px; background:color-mix(in srgb,var(--accent) 7%,transparent); }
.sammelLauf > span { flex:1 1 auto; min-width:0; }
.sammelLaufEnde { border-color:var(--line); background:transparent; color:var(--muted); }
.pbWelle { flex:1 1 auto; min-width:0; font-size:12px; color:var(--muted); }
/* Legacy-Grund in der Zeile: der Auftrag verschwindet nicht wortlos, er sagt warum. */
.legacyGrund { color:var(--amber); }
/* EAN: Majid sucht die Ware im Lager danach — sie muss lesbar sein, nicht nur vorhanden. */
.artEan { font-family:var(--font-mono); letter-spacing:.02em; }
.artEanFehlt { color:var(--amber); }
/* „+N später": derselbe Artikel liegt außerhalb dieser Welle — sichtbar, aber nicht laut. */
.sammelAusserhalb { display:block; font-size:11px; color:var(--muted); }
/* „wartet auf Bestand": kommt NICHT in der nächsten Welle — das ist eine Bestellfrage, keine Wellenfrage. */
.sammelWartet { display:block; font-size:11px; color:var(--amber); }
/* Welcher Packtisch aufgeht: ein gespeicherter Modus, den man nicht sieht, ist eine Falle. */
.pbModus { margin-top:6px; font-size:11px; color:var(--muted); display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
/* Band über der Versandliste: der klassische Assistent ist sichtbar, solange er läuft. */
.pbBand { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:8px 16px 0; padding:8px 10px; border:1px solid var(--amber); border-radius:8px; font-size:12px; color:var(--amber); }
.zettelKnopf { min-height:var(--control-min); }
/* Auftragsweise Listen (Mehrpositionen, Wartekorb): jede Position mit Kennung und Lagerhinweis. */
.spedLink { flex:none; min-height:var(--control-min); display:inline-flex; align-items:center; padding:0 12px; border:1px solid var(--info); border-radius:8px; color:var(--info); text-decoration:none; font-size:12px; }
.pbTrk { display:flex; flex-direction:column; gap:4px; margin-top:10px; font-size:12px; color:var(--muted); }
.pbTrk input { height:var(--control-min); border:1px solid var(--amber); border-radius:8px; background:var(--bg); color:var(--fg); padding:0 10px; font-size:13.5px; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.pbTrkFehler { margin-top:6px; padding:8px 10px; border:1px solid var(--amber); border-radius:8px; font-size:12px; color:var(--amber); white-space:pre-line; }
.spedBlock { margin-top:12px; padding:10px 12px; border:1px solid var(--info); border-radius:10px; }
.spedKopfzeile { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:8px; font-size:13px; }
.spedKopfzeile b { flex:1 1 200px; }
.spedZeile { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:3px 0; font-size:12.5px; }
.spedLabel { flex:0 0 150px; color:var(--muted); }
.spedWert { flex:1 1 200px; min-width:0; white-space:pre-line; user-select:all; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.spedEingabe { flex:1 1 200px; min-width:0; height:var(--control-min); border:1px solid var(--line); border-radius:8px; background:var(--bg); color:var(--fg); padding:0 10px; font-size:12.5px; }
.spedKopf { flex:none; min-height:var(--control-min); padding:0 12px; font-size:12px; }
.spedKopf.kopiertOk { border-color:var(--green); color:var(--green); }
.spedFehlt { margin-top:8px; font-size:11.5px; color:var(--amber); }
.spedHinweis { margin-top:6px; font-size:11px; color:var(--muted); }
.uiSchleier { position:absolute; inset:0; z-index:var(--z-drawer); display:flex; align-items:center; justify-content:center;
  background:color-mix(in srgb, var(--bg) 72%, transparent); }
/* Ohne diese Zeile wirkt `hidden` NICHT: Das Attribut versteckt über die Standardregel `display:none`
   des Browsers, und die verliert gegen jede eigene `display`-Regel. Der Schleier lag deshalb ab dem
   Laden über jeder Ansicht (Befund BE 11.09. am Gate). Derselbe Bau wie bei `#uiDialogWrap[hidden]`. */
.uiSchleier[hidden] { display:none; }
.uiSchleierKarte { position:relative; display:flex; flex-direction:column; align-items:center; gap:10px;
  min-width:260px; max-width:min(420px, 86%); padding:22px 26px; border:1px solid var(--line); border-radius:14px;
  background:var(--panel); box-shadow:var(--shadow-modal); text-align:center; }
.uiSchleierZu { position:absolute; top:6px; right:8px; width:28px; height:28px; border:none; border-radius:8px;
  background:transparent; color:var(--muted); font-size:15px; line-height:1; cursor:pointer; }
.uiSchleierZu:hover { background:var(--line); color:var(--fg); }
.uiSchleierDreh { width:26px; height:26px; border:3px solid var(--line); border-top-color:var(--info);
  border-radius:50%; animation:uiSpin .8s linear infinite; }
.uiSchleierTitel { font-size:15px; font-weight:600; }
.uiSchleierZeile { font-size:12.5px; color:var(--muted); }
.uiSchleierAktion { min-height:var(--control-min); }
@media (prefers-reduced-motion: reduce) { .uiSchleierDreh { animation-duration:2.4s; } }
.rundeBand { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:10px 16px 0; padding:9px 12px; border:1px solid var(--line); border-radius:10px; font-size:12px; }
.rundeBand span { flex:1 1 260px; min-width:0; color:var(--muted); }
.rundeBand b { color:var(--fg); }
.rundeBand.rundeFertig { border-color:var(--green); }
/* Volle Breite, damit der Satz nicht mit dem Knopf um eine Zeile ringt: Er ist der Teil des
   Bandes, der eine doppelte Runde verhindert, und darf nicht als Rest hinter dem Knopf enden. */
.rundeBand .rundeNurHier { flex:1 1 100%; color:var(--muted); }  /* `.rundeBand span` ist spezifischer als eine Klasse allein — ohne den Vorfahren im Selektor bliebe flex:1 1 260px stehen. */
.rundeWeg { display:flex; flex-direction:column; gap:2px; margin-top:8px; padding-top:8px; border-top:1px solid var(--line); }
.rundeWegZeile { font-size:12px; color:var(--muted); }
.rundeWegZeile s { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.sammelPos { display:flex; flex-direction:column; gap:2px; margin-top:4px; }
.sammelPosZeile { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px; font-size:12px; }
.sammelPosLager { font-size:11px; color:var(--muted); }
.sammelPosFehlt .sammelPosLager { color:var(--amber); }
.zeilenKnoepfe { display:flex; gap:6px; flex:none; }
.zeilenKnoepfe .zettelKnopf { padding:0 10px; font-size:12px; }
/* Was nicht mitgeht, steht am Packtisch — vorher fehlte die Zeile ganz (Befund 10.09.). */
.pbRestOffen { margin-top:10px; padding:9px 12px; border:1px solid var(--info); border-radius:10px; font-size:12px; }
.pbRestOffen b { color:var(--fg); }
.pbRest { display:flex; flex-direction:column; gap:3px; margin-top:10px; padding:9px 12px; border:1px solid var(--amber); border-radius:10px; font-size:12px; }
.pbRest b { color:var(--amber); }
.pbRest span { color:var(--muted); }
.pbRest .pbRestHint { margin-top:4px; }
/* Ticket am Auftrag (ab rc.47 heisst der Rueckruf so): Formular, Liste am Auftrag und Zeilen in den Körben. */
.tkForm { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; margin-top:10px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.tkFeld { display:flex; flex-direction:column; gap:4px; flex:1 1 160px; min-width:0; }
.tkFeld.tkBreit { flex:2 1 240px; }
.tkFeld span { font-size:11px; color:var(--muted); }
.tkFeld input { height:var(--control-min); border:1px solid var(--line); border-radius:8px; background:var(--bg); color:var(--fg); padding:0 10px; font-size:13px; }
.tkHaken { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--muted); min-height:var(--control-min); }
.tkListe { display:flex; flex-direction:column; gap:8px; margin-top:10px; }
.tkEintrag { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; padding:8px 12px; border:1px solid var(--line); border-radius:10px; }
.tkEintrag.tkFertig { opacity:.62; }
.tkKopf { display:flex; flex-wrap:wrap; align-items:center; gap:8px; flex:1 1 240px; min-width:0; font-size:13px; }
.tkFuss { flex:1 1 100%; font-size:11px; color:var(--muted); }
.tkKontakt { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.tkHalt { color:var(--amber); }
.tkChip { font-size:10px; text-transform:uppercase; letter-spacing:.05em; border:1px solid var(--line); border-radius:999px; padding:1px 7px; color:var(--muted); }
.tkChip.tkHalt { border-color:var(--amber); color:var(--amber); }
.tkHinweis { margin-top:8px; font-size:11px; color:var(--muted); }
.zettelZeile { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:8px; }
.zettelHint { flex:1 1 260px; min-width:0; font-size:11px; color:var(--muted); }
/* Druckansicht in der Seite — der zweite Weg, wenn ein Blocker das eigene Fenster verhindert.
   `.doc`-Präfix nach der Gate-Regel: hier stehen Papierfarben, keine Themenfarben — ein Blatt,
   das gedruckt wird, ist kein Bildschirm und folgt nicht dem dunklen Thema. */
.docBlatt { position:fixed; inset:0; z-index:90; overflow:auto; padding:24px; background:var(--bg); }
.docBlatt .druckKopfzeile { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:16px; }
.docBlatt .druckHinweis { flex:1 1 320px; min-width:0; font-size:12px; color:var(--amber); }
.docBlatt .druckBlatt { max-width:760px; }
.docSammelliste h2 { font-size:17px; margin:0 0 2px; }
.docSammelliste .druckSub { margin:0 0 14px; font-size:12px; color:var(--muted); }
@media print {
  body.druckModus > *:not(.docBlatt) { display:none; }
  .docBlatt { position:static; padding:0; overflow:visible; background:#fff; color:#000; }
  .docBlatt .druckKopfzeile { display:none; }
  .docBlatt .druckBlatt { max-width:none; }
  .docSammelliste .sammelTab th { color:#333; border-bottom-color:#999; }
  .docSammelliste .sammelTab td { border-bottom-color:#ddd; }
  .docSammelliste .sammelTab tr.sammelMehr td { background:#f2f2f2; font-weight:700; }
  .docSammelliste .sammelSku { color:#555; }
}

/* Auftragszettel in der Seite (nur wenn der Browser das Druckfenster blockiert). Farben roh, weil
   das Blatt auf Papier landet und dort nicht dem Bildschirm-Thema folgt — Selektor beginnt mit .doc. */
.docZettel .dzKopf { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; border-bottom:2px solid currentColor; padding-bottom:6px; }
.docZettel .dzNr { font-size:34px; font-weight:700; line-height:1.1; letter-spacing:.02em; }
.docZettel .dzMeta { text-align:right; font-size:12px; line-height:1.5; }
.docZettel .dzMono { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; }
.docZettel .dzStreifen { border:2px dashed currentColor; padding:10px 12px; margin:12px 0; }
.docZettel .dzAn { font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.docZettel .dzAdr { font-size:24px; line-height:1.25; font-weight:700; margin-top:4px; }
.docZettel .dzSchere { font-size:10px; margin-top:6px; }
.docZettel .dzRueckruf { border:2px solid currentColor; padding:8px 10px; margin-top:12px; }
.docZettel .dzRueckruf h3 { font-size:12px; margin:0 0 4px; text-transform:uppercase; letter-spacing:.06em; }
.docZettel .dzTab { width:100%; border-collapse:collapse; margin-top:12px; }
.docZettel .dzTab th { text-align:left; font-size:10px; text-transform:uppercase; letter-spacing:.05em; padding:4px 6px; border-bottom:1px solid #999; }
.docZettel .dzTab td { padding:6px; border-bottom:1px solid #ddd; vertical-align:top; }
.docZettel .dzTab th.dzNum, .docZettel .dzTab td.dzNum { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.docZettel .dzFelder { margin-top:14px; border-top:2px solid currentColor; padding-top:4px; }
.docZettel .dzReihe { display:flex; gap:14px; margin-top:14px; }
.docZettel .dzFeld { flex:1; }
.docZettel .dzFeld.dzB2 { flex:2; }
.docZettel .dzFeld.dzB3 { flex:3; }
.docZettel .dzFeld span { font-size:10px; text-transform:uppercase; letter-spacing:.05em; }
.docZettel .dzFeld .dzLinie { border-bottom:1px solid currentColor; height:22px; }
.docZettel .dzFuss { margin-top:16px; font-size:10px; }
@media print {
  .docZettel { color:#000; background:#fff; }
  .docZettel .dzMeta, .docZettel .dzAn, .docZettel .dzSchere, .docZettel .dzFeld span, .docZettel .dzTab th { color:#555; }
  .docZettel .dzFuss { color:#666; }
}

/* Existing interval services: compact start/status control in the header. */
.shopwareIntervals { flex:none; }
.shopwareIntervals[hidden],#topConnectorStatus[hidden] { display:none; }
.topbar:has(.shopwareIntervals:not([hidden])) #topConnectorStatus { display:none; }
.shopwareIntervals > summary { display:flex; cursor:pointer; min-height:44px; max-width:180px; list-style:none; }
.shopwareIntervals > summary::-webkit-details-marker { display:none; }
.shopwareIntervalsLabel { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.shopwareIntervals > summary[data-status="attention"] .topStatusDot { background:var(--amber); }
.shopwareIntervalsPopover { position:fixed; z-index:45; top:64px; right:12px; width:min(390px,calc(100vw - 24px)); max-height:calc(100dvh - 80px); overflow:auto; padding:16px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--fg); box-shadow:var(--shadow); font-size:13px; line-height:1.5; }
.shopwareIntervalsHeading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.shopwareIntervalsPopover p { margin:12px 0; }
.shopwareIntervalsPopover button { white-space:normal; }
.shopwareIntervalsPopover ul { list-style:none; margin:14px 0; padding:0; display:grid; gap:12px; }
.shopwareIntervalsPopover li { display:grid; gap:4px; padding-top:12px; border-top:1px solid var(--line); }
.shopwareIntervalsPopover small,.shopwareIntervalsObserved { color:var(--muted); }
.shopwareIntervalsPopover li[data-state="succeeded"] > span { color:var(--green); }
.shopwareIntervalsPopover li[data-state="attention"] > span { color:var(--amber); }
.shopwareIntervalsPopover li[data-state="failed"] > span { color:var(--red); }
@media (max-width:760px) {
  .topbar:has(.shopwareIntervals:not([hidden])) { gap:6px; padding-left:8px; padding-right:8px; }
  .topbar:has(.shopwareIntervals:not([hidden])) .topBrand { width:30px; }
  .topbar:has(.shopwareIntervals:not([hidden])) .topSpacer { min-width:0; }
  .topbar:has(.shopwareIntervals:not([hidden])) .topSearch { flex:none; }
  .topbar:has(.shopwareIntervals:not([hidden])) .topSearch .kbd { display:none; }
  .shopwareIntervals > summary { max-width:88px; padding:0 8px; }
}

@layer features {
/* Storno uses the existing inspector and gate, with explicit evidence per step. */
.cancellationPanel { overflow-wrap:anywhere; scroll-margin-top:180px; }
.cancellationPanel p { margin:12px 0; }
.cancellationSteps { display:grid; gap:12px; padding:0; list-style:none; }
.cancellationSteps li { display:grid; gap:4px; border-left:2px solid var(--line); padding-left:12px; }
.cancellationSteps li[data-confirmed="true"] { border-color:var(--green); }
.cancellationSteps li[data-confirmed="true"] span { color:var(--green); }
.cancellationSteps li[data-state="uncertain"] span,.cancellationSteps li[data-state="rejected"] span,.cancellationSteps li[data-state="clarification_required"] span { color:var(--red); }
.cancellationRefund { border-top:1px solid var(--line); margin-top:16px; padding-top:4px; }
.cancellationActions { display:flex; flex-wrap:wrap; gap:8px; }
.cancellationActions button { white-space:normal; }
@media (max-width:760px) {
  /* Keep this action row clear of the existing 48px assistant avatar and its badge. */
  .cancellationActions { padding-right:calc(var(--space-6) + var(--space-6)); }
}
.cancellationReview { overflow-wrap:anywhere; }
.cancellationReview > span { font-size:var(--type-body); line-height:var(--leading-body); }
#odetail:has([data-cancellation-progress]) .detHead h2 { white-space:normal; overflow-wrap:anywhere; }
@container detail-board (max-width:520px) {
  #odetail:has([data-cancellation-progress]) .detHead { grid-template-columns:auto minmax(0,1fr); grid-template-areas:"back main" "meta meta"; }
}

/* Article publication reuses the channel card and the existing proof/approval interaction. */
.pimPublication { margin-top:var(--space-4); padding-top:var(--space-4); border-top:1px solid var(--line); overflow-wrap:anywhere; }
.pimPublication h4 { font-size:var(--type-card); margin-block:var(--space-2); }
.pimPublication p { line-height:var(--leading-body); }
.pimPublicationActions { display:flex; flex-wrap:wrap; gap:var(--space-2); margin-block:var(--space-3); }
.pimPublicationActions button { min-height:44px; white-space:normal; }
.pimPublicationPreview { border:1px solid var(--line); border-radius:var(--r); padding:var(--space-3); margin-block:var(--space-3); }
.pimPublicationPreview dl { margin-block:var(--space-3); }
.pimPublicationPreview dt { font-weight:600; margin-top:var(--space-2); }
.pimPublicationPreview dd { margin:0; white-space:pre-wrap; }
.pimPublicationPreview pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:var(--type-secondary); }
.pimPublicationError { color:var(--danger-text); }

  /* ── Artikel anlegen: eigener Wizard (Ebene 4). Bewusst vom Versand-Wizard ABGELEITET, nicht
     kopiert: dieselben Primitiven (.wizHead/.wizSteps/.wizPanel/.wizFoot/.wizGo) tragen den
     Rahmen, nur die Formularfläche ist neu. Ein zweiter Dialog-Look wäre ein zweiter Kanon. */
  #neuArtWrap { position:fixed; inset:0; z-index:var(--z-dialog); display:none; background:var(--scrim); backdrop-filter:blur(9px) saturate(1.15); -webkit-backdrop-filter:blur(9px) saturate(1.15); }
  #neuArt { position:absolute; inset:0; display:flex; flex-direction:column; overflow:hidden;
    background:radial-gradient(1300px 760px at 50% -14%,var(--accent-soft),transparent 56%),var(--bg);
    animation:wizRise .3s cubic-bezier(.2,.85,.25,1) both; }
  .naHeadCopy { min-width:0; }
  .naHeadX { margin-left:auto; }
  #neuArtBody { flex:1; overflow:hidden; border-top:1px solid var(--line); display:flex; }
  /* .wizPanel h3 ist (0,1,1) und schlaegt eine nackte Klasse — deshalb hier dieselbe Tiefe
     statt !important. Spezifitaet gewinnt man mit Spezifitaet, nicht mit Gewalt. */
  .wizPanel h3.naSub { margin:28px 0 6px; font-size:15px; }
  .naGrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:12px; }
  .naField { min-width:0; }
  .naField label { display:block; margin-bottom:6px; color:var(--fg); font-size:12px; font-weight:600; }
  .naField small { display:block; margin-top:5px; color:var(--muted); font-size:11px; line-height:1.45; }
  .naInp { width:100%; min-height:var(--control-min); box-sizing:border-box; padding:9px 11px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--fg); font-size:14px; }
  .naInp:focus-visible { outline:2px solid var(--accent); outline-offset:-1px; }
  .naSwitchRow { margin-top:18px; }
  .naSwitchRow small { display:block; margin-top:6px; color:var(--muted); font-size:11px; line-height:1.45; }
  .naSwitch { display:inline-flex; align-items:center; gap:11px; min-height:var(--control-min); padding:0; border:0; background:transparent; color:var(--fg); font-size:13.5px; font-weight:600; cursor:pointer; }
  .naSwitchTrack { flex:none; width:44px; height:26px; border-radius:13px; background:var(--panel2); border:1px solid var(--line); display:flex; align-items:center; padding:2px; transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard); }
  .naSwitchKnob { width:20px; height:20px; border-radius:50%; background:var(--muted); transition:transform var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard); }
  .naSwitch[aria-checked="true"] .naSwitchTrack { background:var(--green-soft); border-color:var(--green); }
  .naSwitch[aria-checked="true"] .naSwitchKnob { transform:translateX(18px); background:var(--green); }
  .naSwitch:focus-visible { outline:2px solid var(--accent); outline-offset:3px; border-radius:9px; }
  .naChecks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 16px; margin-top:10px; }
  .naCheck { display:flex; align-items:center; gap:9px; min-height:var(--control-min); min-width:0; cursor:pointer; font-size:13.5px; }
  .naCheck input { flex:none; width:18px; height:18px; margin:0; accent-color:var(--accent); }
  .naCheck span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .naPruef { margin:14px 0 0; display:grid; gap:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
  .naPruefRow { display:grid; grid-template-columns:220px 1fr; gap:12px; padding:10px 14px; border-bottom:1px solid var(--line); font-size:13px; }
  .naPruefRow:last-child { border-bottom:0; }
  .naPruefRow dt { margin:0; color:var(--muted); font-size:12px; }
  .naPruefRow dd { margin:0; min-width:0; overflow-wrap:anywhere; }
  .naOkBox { padding:12px 14px; border:1px solid var(--green); border-radius:10px; background:var(--green-soft); color:var(--fg); font-size:13.5px; }
  .naFehlt { margin-top:10px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
  .naFehltRow { display:flex; align-items:center; gap:12px; padding:10px 14px; border-bottom:1px solid var(--line); }
  .naFehltRow:last-child { border-bottom:0; }
  .naFehltRow span { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; font-size:13.5px; }
  .naFehltRow small { color:var(--muted); font-size:11.5px; }
  .naSpacer { flex:1; }
  .btnNeuArt { flex:none; }
  @media (max-width:760px) {
    .naGrid, .naChecks { grid-template-columns:1fr; }
    .naPruefRow { grid-template-columns:1fr; gap:2px; }
    .wizPanel h3.naSub { margin-top:22px; }
  }
}
