  /* ---------- Export view ---------- */
  #shipping-optimizer-slot:not(:empty){ margin-bottom:26px; }

  .export-steps{
    list-style:none;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:10px;
    margin:0 0 26px;
    padding:0;
  }
  .export-steps li{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
    padding:10px 12px;
    border:1px solid var(--border);
    border-radius:var(--radius-md);
    color:var(--text-muted);
    background:var(--surface);
    font-size:var(--text-xs);
    font-weight:700;
  }
  .export-steps li span{
    display:grid;
    place-items:center;
    flex:none;
    width:26px;
    height:26px;
    border-radius:50%;
    background:var(--surface-2);
  }
  .export-steps li.active{
    border-color:var(--accent);
    background:var(--accent-bg);
    color:var(--accent-dark);
  }
  .export-steps li.active span{ background:var(--accent); color:var(--surface); }
  .export-steps li.complete{ color:var(--green); }
  .export-steps li.complete span{ background:var(--green); color:var(--surface); }

  .export-form{
    display:flex;
    gap:18px;
    align-items:center;
    margin-bottom:26px;
  }
  .export-form label{ display:block; font-weight:700; font-size:var(--text-sm); margin-bottom:8px; }
  .export-form input{
    width:100%;
    background:var(--surface);
    border:2px solid var(--border-strong);
    padding:12px 14px;
    border-radius:var(--radius-md);
    font-size:var(--text-sm);
    color:var(--text);
  }
  .export-form input:focus{
    outline:none;
    border-color:var(--accent);
    box-shadow:0 0 0 3px var(--accent-bg);
  }
  .export-form input[readonly]{
    background:var(--surface-2);
    color:var(--text-muted);
  }
  .export-form button{
    background:var(--accent);
    color:var(--surface);
    border:none;
    font-weight:700;
    font-size:var(--text-17);
    padding:14px 22px;
    border-radius:var(--radius-md);
    cursor:pointer;
    height:fit-content;
    width:fit-content;
  }
  .export-form button:hover{ background:var(--accent-dark); }
  .export-form button:disabled{
    background:var(--surface-3);
    color:var(--text-muted);
    box-shadow:none;
    opacity:.72;
    cursor:not-allowed;
  }
  .export-save-hint{
    margin:-16px 0 24px;
    color:var(--text-muted);
    font-size:var(--text-xs);
  }
  .export-section-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:4px 0 12px;
  }
  .export-results-heading{ margin:0; font-size:var(--text-md); }

  .export-results{
    display:grid;
    grid-template-columns:minmax(0, 1fr);
    gap:10px;
    align-items:start;
  }
  .cart-checkout{ display:grid; gap:14px; margin:12px 0; padding:16px; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface-2); }
  .cart-checkout strong{ margin-bottom:4px; }
  .cart-checkout-form{
    display:grid;
    grid-template-columns:minmax(140px, 1fr) minmax(100px, 140px);
    gap:12px 14px;
    align-items:end;
    min-width:0;
  }
  .cart-checkout-form > label{ min-width:0; }
  .cart-checkout label{
    display:grid;
    gap:4px;
    font-size:var(--text-2xs);
    font-weight:600;
    color:var(--text-muted);
    text-transform:none;
  }
  .cart-checkout-account-full,
  .cart-checkout-voucher,
  .cart-checkout-form button{ grid-column:1 / -1; }
  .cart-checkout-voucher{ font-weight:500; }
  .cart-checkout-voucher input{ padding:7px 10px; }
  .cart-checkout input,.cart-checkout select{ width:100%; min-width:0; padding:9px 10px; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:var(--surface); }
  .cart-checkout input:focus,.cart-checkout select:focus{ border-color:var(--accent); outline:2px solid var(--accent-bg); }
  .cart-checkout-form button{ width:fit-content; margin-top:4px; padding:10px 16px; border:0; border-radius:var(--radius-sm); background:var(--accent); color:var(--surface); font-weight:700; cursor:pointer; }
  .cart-checkout button:hover:not(:disabled){ background:var(--accent-dark); }
  .cart-checkout button:disabled{ opacity:.6; cursor:not-allowed; }
  .cart-checkout-error{ color:var(--red); }
  .cart-checkout-success{
    display:grid;
    gap:6px;
    padding:14px 16px;
    background:var(--green-bg);
    border:1px solid var(--green);
    border-radius:var(--radius);
    color:var(--text);
  }
  .cart-checkout-success-heading{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--green);
    font-weight:700;
    line-height:1.3;
  }
  .cart-checkout-success-icon{
    flex:0 0 20px;
    width:20px;
    height:20px;
  }
  .cart-checkout-order{
    color:var(--text-muted);
    font-size:.9em;
    text-decoration:none;
  }
  .cart-checkout-total{
    color:var(--text-muted);
    font-size:.9em;
  }
  .cart-checkout-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:fit-content;
    max-width:100%;
    box-sizing:border-box;
    margin-top:10px;
    text-decoration:none;
  }
  .cart-checkout-label-icon{
    width:18px;
    height:18px;
    flex:0 0 18px;
  }
  .cart-checkout-progress{ margin-top:4px; }
  @media (max-width:760px){
    .cart-checkout-form{ grid-template-columns:1fr; }
    .cart-checkout-account-full,
    .cart-checkout-voucher,
    .cart-checkout-form button{ grid-column:1; }
  }
  #export-results.is-loading{
    position:relative;
    min-height:72px;
  }
  #export-results.is-loading > *{
    opacity:.55;
    pointer-events:none;
  }
  #export-results.is-loading::after{
    content:"Prüfe Liste …";
    position:absolute;
    top:12px;
    left:50%;
    transform:translateX(-50%);
    padding:10px 16px 10px 38px;
    border:1px solid var(--border-strong);
    border-radius:999px;
    background:var(--surface);
    color:var(--text-muted);
    font-weight:700;
    box-shadow:0 4px 14px rgba(24,33,29,.12);
    white-space:nowrap;
    z-index:2;
  }
  #export-results.is-loading::before{
    content:"";
    position:absolute;
    z-index:3;
    top:23px;
    left:calc(50% - 55px);
    width:12px;
    height:12px;
    border:2px solid var(--border-strong);
    border-top-color:var(--accent);
    border-radius:50%;
    animation:export-loading-spin .7s linear infinite;
  }
  @keyframes export-loading-spin{ to{ transform:rotate(360deg); } }
  @media (max-width:700px){
    .export-steps{ grid-template-columns:1fr 1fr; }
  }
  .export-col-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    cursor:pointer;
    border-radius:var(--radius);
  }
  .export-col-header:focus-visible{
    outline:3px solid var(--accent-bg);
    outline-offset:4px;
  }
  .export-col-header:hover .export-col-toggle{ color:var(--accent-dark); }
  .export-col-header > div{
    display:flex;
    align-items:baseline;
    gap:14px;
    flex-wrap:wrap;
  }
  .export-col .export-col-header .col-total{ margin-bottom:0; }
  .export-col-toggle{
    flex:none;
    color:var(--text-muted);
    font-size:var(--text-lg);
    line-height:1;
  }
  .export-col-body{ margin-top:14px; }
  .export-col-body[hidden]{ display:none; }
  .export-col h3{
    font-size:var(--text-md);
    text-transform:capitalize;
    margin:0 0 4px;
    color:var(--accent-dark);
  }
  .export-col .col-total{
    font-family:var(--font-mono);
    font-weight:700;
    font-size:var(--text-17);
    margin-bottom:0;
  }
  .export-list{
    list-style:none;
    margin:0 0 14px;
    padding:0;
    max-height:360px;
    overflow-y:auto;
    border:1px solid var(--border);
    border-radius:var(--radius);
  }
  .export-item{
    border-bottom:1px solid var(--border);
    padding:11px 12px;
  }
  .export-item:last-child{ border-bottom:none; }
  .export-item:nth-child(even){ background:var(--surface-2); }
  .export-item.in-cart{
    background:var(--info-bg);
    border-left:5px solid var(--info-border);
  }
  .cart-item-hint{
    margin-top:8px;
    color:var(--info);
    font-size:var(--text-sm);
    font-weight:700;
  }
  .export-item-row{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto 34px;
    align-items:center;
    gap:12px;
    font-size:var(--text-15);
  }
  .export-item-main{
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
  }
  .export-item-title{
    min-width:0;
    overflow-wrap:break-word;
    line-height:1.25;
  }
  .export-item-ean{ font-family:var(--font-mono); font-size:var(--text-2xs); color:var(--text-muted); }
  .el-price{ font-family:var(--font-mono); font-weight:700; white-space:nowrap; }
  .el-price small{ display:block; color:var(--text-muted); font-size:var(--text-2xs); text-align:right; }
  .export-quantity{ color:var(--accent-dark); white-space:nowrap; }
  .export-item-row > .export-change-btn{
    display:grid;
    place-items:center;
    background:transparent;
    border:1px solid transparent;
    color:var(--text-muted);
    min-width:34px;
    min-height:34px;
    font-size:var(--text-md);
    font-weight:700;
    padding:0;
    border-radius:var(--radius-sm);
    cursor:pointer;
    white-space:nowrap;
  }
  .export-item-row > .export-change-btn:hover,
  .export-item-row > .export-change-btn[aria-expanded="true"]{
    border-color:var(--border-strong);
    background:var(--surface-2);
    color:var(--accent-dark);
  }
  .export-item-sale{ margin-top:10px; }
  .export-col-empty{ color:var(--text-muted); font-size:var(--text-sm); padding:10px 0; }
  .export-col-actions{ display:flex; justify-content:flex-end; gap:10px; margin-top:14px; flex-wrap:wrap; }
  .export-col-actions button{ flex:0 1 260px; min-width:190px; }
  .export-col-actions button:disabled{
    background:var(--surface-3);
    color:var(--text-muted);
    border-color:var(--border);
    box-shadow:none;
    opacity:.65;
    cursor:not-allowed;
  }
  .export-actions-hint{ font-size:var(--text-2xs); color:var(--text-muted); margin-top:4px; width:100%; text-align:right; }

  .shipping-optimizer-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
  }
  .shipping-optimizer-bar div{ display:flex; flex-direction:column; gap:3px; }
  .shipping-optimizer-bar span{ color:var(--text-muted); font-size:var(--text-xs); }
  .shipping-optimizer-bar button{ width:auto; white-space:nowrap; }
  .shipping-modal{
    width:min(760px, calc(100vw - 32px));
    max-width:760px;
    max-height:88vh;
    overflow-y:auto;
  }
  .shipping-total-gain{
    background:var(--green-bg); color:var(--green); border-radius:var(--radius-md);
    padding:14px 18px; margin-bottom:14px; font-weight:700;
  }
  .shipping-total-heading{
    padding-bottom:12px;
  }
  .shipping-total-heading span{ font-size:var(--text-md); }
  .shipping-gain-breakdown{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    margin:0;
    border-top:1px solid rgba(47,125,69,.25);
  }
  .shipping-gain-breakdown > div{
    padding:12px 14px 0;
    border-left:1px solid rgba(47,125,69,.25);
  }
  .shipping-gain-breakdown > div:first-child{ padding-left:0; border-left:none; }
  .shipping-gain-breakdown dt{ color:var(--text-muted); font-size:var(--text-xs); font-weight:400; }
  .shipping-gain-breakdown dd{
    margin:4px 0 0;
    font-family:var(--font-mono);
    font-size:var(--text-md);
    color:var(--green);
  }
  .shipping-gain-breakdown dd.negative{ color:var(--red); }
  .shipping-gain-breakdown .total dd{ font-size:var(--text-24); }
  .shipping-proposal{ border:2px solid var(--border); border-radius:var(--radius-md); margin-bottom:14px; overflow:hidden; }
  .shipping-proposal-heading{
    display:flex; justify-content:space-between; align-items:center; gap:16px;
    padding:14px 16px; background:var(--surface-2);
  }
  .shipping-proposal-heading > div:first-child{ display:flex; flex-direction:column; gap:7px; }
  .shipping-proposal-heading span{ color:var(--text-muted); font-size:var(--text-18); line-height:1.4; }
  .shipping-proposal-heading strong{ font-size:var(--text-lg); }
  .shipping-proposal-benefit{ flex:none; text-align:right; }
  .shipping-proposal-benefit span{ display:block; font-size:var(--text-sm); }
  .shipping-gain{ display:block; color:var(--green); font-family:var(--font-mono); font-size:var(--text-24); white-space:nowrap; }
  .shipping-moves{ padding:0 16px; }
  .shipping-move{
    display:grid;
    grid-template-columns:auto minmax(180px, 1fr) auto auto;
    align-items:center;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid var(--border); cursor:pointer;
  }
  .shipping-move:last-child{ border-bottom:none; }
  .shipping-move input{ width:30px; height:30px; min-height:30px; flex:none; }
  .shipping-move-book{ display:flex; flex:1; min-width:0; flex-direction:column; }
  .shipping-move-book strong{ overflow-wrap:anywhere; font-size:var(--text-md); }
  .shipping-move small{ color:var(--text-muted); font-size:var(--text-sm); }
  .shipping-price-comparison{ display:flex; align-items:center; gap:10px; font-family:var(--font-mono); white-space:nowrap; }
  .shipping-price-comparison > span:not(.shipping-price-arrow){ display:flex; flex-direction:column; gap:3px; }
  .shipping-price-comparison small{ font-family:var(--font-body); }
  .shipping-price-comparison b{ font-size:var(--text-md); }
  .shipping-price-arrow{ color:var(--text-muted); font-size:var(--text-24); }
  .shipping-impact{
    min-width:150px;
    padding:8px 10px;
    border:2px solid currentColor;
    border-radius:var(--radius);
    text-align:right;
  }
  .shipping-impact small{ display:block; font-family:var(--font-body); }
  .shipping-impact strong{ display:block; font-family:var(--font-mono); font-size:var(--text-lg); }
  .shipping-impact.positive{ color:var(--green); background:var(--green-bg); }
  .shipping-impact.negative{ color:var(--red); background:var(--red-bg); }
  .shipping-impact.neutral{ color:var(--text-muted); background:var(--surface-2); }
  .shipping-unsolved{ background:var(--amber-bg); color:var(--amber-dark); border:2px solid var(--amber); border-radius:var(--radius-md); padding:18px 20px; }
  .shipping-unsolved p{ margin:8px 0 14px; }
  .shipping-unsolved-sources{ display:flex; flex-wrap:wrap; gap:8px; }
  .shipping-unsolved-sources span{ padding:6px 10px; border:1px solid var(--amber); border-radius:999px; background:var(--amber-bg); font-weight:700; }
  .shipping-empty{ color:var(--text-muted); padding:24px; text-align:center; }
  .shipping-modal .modal-actions{
    margin-top:20px;
    padding-top:16px;
    border-top:2px solid var(--border);
  }

  @media (max-width:760px){
    .shipping-optimizer-bar{ align-items:stretch; flex-direction:column; }
    .shipping-optimizer-bar button{ width:100%; white-space:normal; }
    .shipping-gain-breakdown{ grid-template-columns:1fr; }
    .shipping-gain-breakdown > div,
    .shipping-gain-breakdown > div:first-child{
      padding:10px 0;
      border-left:none;
      border-top:1px solid rgba(47,125,69,.2);
    }
    .shipping-gain-breakdown > div:first-child{ border-top:none; }
    .shipping-proposal-heading{ align-items:flex-start; flex-direction:column; }
    .shipping-proposal-benefit{ text-align:left; }
    .shipping-move{ grid-template-columns:auto 1fr; gap:14px; }
    .shipping-price-comparison,
    .shipping-impact{ grid-column:2; }
    .shipping-impact{ min-width:0; text-align:left; }
  }

  /* Live-Fortschritt + manuelle Liste beim Warenkorb-Aufbau (openCart) */
  .cart-progress{ margin-top:14px; }
  .cart-progress-bar{ height:20px; border:2px solid var(--border-strong); border-radius:var(--radius-md); background:var(--track-bg); overflow:hidden; }
  .cart-progress-bar-fill{ height:100%; background:var(--accent); border-radius:var(--radius-sm); transition:width 0.2s ease; }
  .cart-progress-label{ font-size:var(--text-xs); color:var(--text-muted); margin-top:6px; }
  .cart-manual-list{ list-style:none; margin:10px 0 0; padding:0; display:flex; flex-direction:column; gap:6px; }
  .cart-manual-item{ display:flex; align-items:center; justify-content:space-between; gap:10px;
    background:var(--surface-2); border-radius:var(--radius); padding:8px 10px; font-size:var(--text-xs); }
  .cart-manual-info{ min-width:0; }
  .cart-manual-ean{ font-family:var(--font-mono); font-weight:600; }
  .cart-manual-reason{ color:var(--text-muted); display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .cart-copy-btn{ flex-shrink:0; border:2px solid var(--border-strong); background:var(--surface); border-radius:var(--radius-sm);
    padding:4px 8px; font-size:var(--text-2xs); cursor:pointer; }
  .cart-copy-btn:hover{ background:var(--surface-2); }
  .cart-copy-btn.copied{ background:var(--accent); border-color:var(--accent); color:var(--surface); }
  .cart-confirmation{
    display:flex; flex-direction:column; align-items:flex-start; gap:9px;
    margin-top:12px; padding:12px; border-radius:var(--radius);
    background:var(--amber-bg); color:var(--amber); font-size:var(--text-13);
  }
  .cart-confirmation button{ width:100%; }
  .cart-confirmed{
    margin-top:12px; padding:10px 12px; border-radius:var(--radius);
    background:var(--green-bg); color:var(--green); font-weight:700;
  }
  .btn-danger{
    background:var(--surface);
    color:var(--red);
    border:2px solid var(--red);
    font-weight:700;
    padding:12px 18px;
    border-radius:var(--radius-md);
    cursor:pointer;
  }
  .btn-danger:hover{ background:var(--red-bg); }
