.production-panel{grid-column:1/-1;border:1px solid var(--border-color,#ddd);border-radius:10px;padding:20px;margin:12px 0}
.production-panel h3{margin:0 0 8px}.production-panel p{font-size:.9rem;margin:10px 0}
.production-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.production-grid label{display:flex;flex-direction:column;gap:5px}.production-grid input,.production-grid select{width:100%;padding:10px;border:1px solid #ccc;border-radius:5px}
.production-drop{display:flex;flex-direction:column;gap:12px;align-items:center;border:2px dashed #aab1bd;border-radius:8px;padding:24px;margin:18px 0;cursor:pointer}
.production-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.production-panel button:disabled{opacity:.5;cursor:default}
#production-parts{display:flex;flex-wrap:wrap;gap:10px;max-height:200px;overflow:auto;margin:10px 0}#production-parts label{min-width:170px}
#production-preview{max-width:100%;max-height:380px;background:white;border:1px solid #ddd;margin-top:12px}
#production-panel input[type=checkbox]{width:auto;margin-right:6px}#imagePreview{min-height:60px}
.production-favourites{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 14px;padding-bottom:14px;border-bottom:1px dashed #555}
.production-favourite{background:var(--bg-tertiary,#28282c);color:inherit;border:1px solid transparent;border-radius:9px;padding:6px 11px;font:inherit;font-size:.85rem;cursor:pointer}
.production-favourite.active{border-color:var(--primary,#ff2d55);background:rgba(255,45,85,.15)}
#production-search,#production-material{display:block;width:100%;margin:9px 0;padding:10px;background:var(--bg-input,#151518);color:inherit;border:1px solid #444;border-radius:7px}
.production-simple-settings{margin-top:18px}.production-grid select{background:var(--bg-input,#151518);color:inherit;border-color:#444}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#upload-new[hidden],#upload-price[hidden]{display:none!important}
#upload-status:not(:empty){padding:14px 16px;border:1px solid var(--border-color,#555);border-radius:8px;line-height:1.6}
#upload-status.upload-error{border:2px solid #ee4455;background:#3a1017;color:#fff;font-weight:600}
