.picking-card .card-title{min-width:0}.picking-card .card-title h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.picking-controls{flex-wrap:wrap}.picking-controls>.picking-delete{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;color:#be123c;border:1px solid #fecdd3;background:#fff;padding:8px 12px;margin-left:auto}.picking-controls>.picking-delete:hover{background:#fff1f2}
.picking-heading,.picking-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
#pickingRoot button{cursor:pointer}#pickingRoot button:disabled{cursor:not-allowed;opacity:.55}#pickingRoot button:focus-visible{outline:3px solid #0284c7;outline-offset:3px}
.picking-heading{justify-content:flex-start;margin-bottom:24px}.picking-heading h2{font:700 26px 'Space Grotesk',sans-serif;margin:0}.picking-heading p{color:#64748b;font-size:13px;margin:6px 0 0}
.picking-heading>button,.picking-controls>button,.picking-message button{display:flex;align-items:center;justify-content:center;gap:6px;border:1.5px solid #0f172a;background:#fff;padding:10px 14px;min-height:44px;font-size:13px}
.picking-controls{position:sticky;top:84px;z-index:10;background:#f8fafc;padding:12px 0;margin-bottom:16px;border-bottom:1.5px solid #0f172a}.picking-controls>button.active{background:#0f172a;color:#fff}
.picking-group{margin-bottom:20px;border:1.5px solid #0f172a;background:#fff;box-shadow:2px 2px 0 #0f172a}.picking-group>summary{cursor:pointer;padding:16px;background:#eff4ff;font-weight:700;border-bottom:1px solid #cbd5e1}.picking-group>summary>span{display:inline-flex;align-items:center;gap:8px}.picking-group>summary small{float:right;color:#64748b;font-weight:400}.picking-group>summary i,.picking-section-label i{display:inline-block;width:10px;height:10px;background:var(--section-color)}
.picking-group-body{padding:18px;min-width:0}.picking-group-body.is-visual{display:grid;grid-template-columns:minmax(0,3fr) minmax(200px,2fr);align-items:start;gap:18px}
.picking-section{border-left:3px solid var(--section-color);padding:8px 12px;margin-bottom:12px}.picking-section-label{display:flex;align-items:center;gap:8px;background:transparent;border:0;padding:6px 0;font-weight:600;text-align:left}.picking-section-label.is-selected{color:#006398}
.picking-parts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.picking-part{display:inline-flex;align-items:center;gap:5px;min-width:38px;min-height:36px;padding:6px 9px;background:#f8fafc;border:1px solid #94a3b8;font:13px 'JetBrains Mono',monospace}.picking-part b{color:#006398;font-size:11px}.picking-part i{color:#f59e0b;font-size:8px}.picking-part.is-selected{border-color:#0284c7;background:#cce5ff;box-shadow:1px 1px 0 #0284c7}
.picking-note{font-size:12px;color:#64748b;white-space:pre-wrap;overflow-wrap:anywhere}.picking-subgroup>h4{margin:0;padding:14px 18px 0;font:600 14px 'JetBrains Mono',monospace}.picking-subgroup+.picking-subgroup{border-top:1px solid #cbd5e1}
.picking-image{isolation:isolate;position:relative;width:100%;min-width:0;overflow:hidden;background:#e2e8f0}.picking-base{display:block;width:100%;height:100%;filter:grayscale(100%) brightness(.5);object-fit:contain}.picking-marks{position:absolute;inset:0}.picking-mark{position:absolute;display:block;border:0;padding:2px;background:var(--mark-background);border-radius:0;min-width:0;min-height:0;text-align:left}.picking-crop{display:block;width:100%;height:100%;background-repeat:no-repeat}.picking-mark.is-dimmed{opacity:.3}.picking-mark.is-selected{outline:2px solid #fff;outline-offset:2px}.picking-mark-label{position:absolute;top:2px;left:2px;color:white;background:var(--mark-color);font:10px 'JetBrains Mono',monospace;padding:1px 3px}.picking-quantity{position:absolute;right:-5px;top:-7px;padding:2px 3px;background:#2196f3;color:#fff;border:1px solid white;font:10px 'JetBrains Mono',monospace;white-space:nowrap}.picking-quantity.overused{background:#ff4757}.picking-notification{position:absolute;right:0;top:0;width:7px;height:7px;background:#f59e0b;border:1px solid #fff}.picking-unused-cross{position:absolute;inset:2px;background:linear-gradient(to top right,transparent calc(50% - 1px),#e5e7eb 50%,transparent calc(50% + 1px)),linear-gradient(to bottom right,transparent calc(50% - 1px),#e5e7eb 50%,transparent calc(50% + 1px))}
.picking-image-error{display:none}.image-error .picking-marks,.image-error .picking-base{display:none}.image-error .picking-image-error{display:block;padding:20px;color:#64748b}.picking-message{padding:32px;border:1px solid #cbd5e1;background:#fff;color:#64748b}.picking-message button{display:inline-flex;margin:8px 8px 0 0}
#btnToggleAssemble,#btnPicking{flex:1 1 0;min-width:0;padding-left:0;padding-right:0}#btnPicking{white-space:nowrap}#btnPicking:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1024px){.picking-group-body.is-visual{grid-template-columns:minmax(0,1fr)}.picking-controls{top:72px}}
@media(max-width:639px){.picking-heading{align-items:flex-start}.picking-heading h2{font-size:20px}.picking-heading>button{white-space:nowrap;padding:8px}.picking-controls{gap:8px;top:calc(112px + env(safe-area-inset-top))}.picking-controls .segmented{width:auto;flex:1}.picking-controls>button{padding:8px}.picking-group-body{padding:12px}.picking-part{min-height:44px;min-width:44px}.picking-section{padding-left:8px}}
.picking-guide-card{display:flex;flex-direction:column;text-align:left;background:#fff;border:1.5px solid #cbd5e1;padding:8px;border-radius:3px;transition:all .18s;cursor:pointer;position:relative}
.picking-guide-card:hover,.picking-guide-card:focus-visible{border-color:#0f172a;box-shadow:0 4px 12px rgba(15,23,42,.12);transform:translateY(-2px);outline:none}
.picking-guide-card.is-selected{border-color:#0284c7;background:#f0f9ff;box-shadow:0 0 0 2px #0284c7}
.picking-guide-thumb{position:relative;aspect-ratio:4/5;background:#f8fafc;border-radius:2px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.picking-guide-thumb img{width:100%;height:100%;object-fit:contain}
.picking-guide-name{font-size:12px;font-weight:600;color:#0f172a;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.picking-guide-badge{position:absolute;bottom:4px;left:4px;font:10px 'JetBrains Mono',monospace;background:rgba(15,23,42,.85);color:#fff;padding:1px 5px;border-radius:2px}
.picking-guide-tag{position:absolute;top:4px;right:4px;font:10px 'Noto Sans SC',sans-serif;background:#0284c7;color:#fff;padding:1px 5px;border-radius:2px;font-weight:500}

/* 黑白开关控件 */
.bw-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none;min-height:40px}
.bw-switch-input{position:absolute;opacity:0;width:0;height:0;min-height:0!important;margin:0;padding:0;pointer-events:none}
.bw-switch-track{position:relative;display:inline-block;width:42px;height:24px;background-color:#e2e8f0;border:1px solid #cbd5e1;border-radius:9999px;transition:background-color .2s ease,border-color .2s ease;flex-shrink:0;box-sizing:border-box;vertical-align:middle}
.bw-switch-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;background-color:#ffffff;border-radius:9999px;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s cubic-bezier(0.4,0,0.2,1)}
.bw-switch-input:checked~.bw-switch-track{background-color:#0f172a;border-color:#0f172a}
.bw-switch-input:checked~.bw-switch-track .bw-switch-thumb{transform:translateX(18px)}
.bw-switch:hover .bw-switch-input:not(:checked):not(:disabled)~.bw-switch-track{border-color:#94a3b8;background-color:#cbd5e1}
.bw-switch:hover .bw-switch-input:checked:not(:disabled)~.bw-switch-track{background-color:#1e293b;border-color:#1e293b}
.bw-switch-input:focus-visible~.bw-switch-track{outline:2px solid #0f172a;outline-offset:2px}
.bw-switch-input:disabled~.bw-switch-track,.bw-switch-input:disabled~span{opacity:.45;cursor:not-allowed}
.bw-switch:has(.bw-switch-input:disabled){cursor:not-allowed}

/* 统一表单标签字体 */
.modal-card label.add-picking-field-label,
.modal-card .add-picking-field-label,
.add-picking-field-label {
    font-family: 'Noto Sans SC', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    line-height: 1.5;
    white-space: nowrap;
    margin: 0;
}
