/* ===== Stockpile bar ===== */
.rs-stockbar { display: flex; flex-wrap: wrap; gap: 7px; padding: 12px 16px; border-bottom: 1px solid var(--lab-edge-soft); background: rgba(0, 0, 0, 0.18); }
.rs-stock { display: inline-flex; flex-direction: column; align-items: center; padding: 5px 12px; border-radius: 10px; border: 1px solid var(--lab-edge-soft); background: rgba(0, 0, 0, 0.22); min-width: 58px; }
.rs-stock-v { font-size: 0.92rem; font-weight: 800; color: var(--lab-gold-bright); font-variant-numeric: tabular-nums; }
.rs-stock-k { font-size: 0.56rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--lab-gold-dim); margin-top: 1px; }

/* ===== Workshops ===== */
.rs-ws-list { display: flex; flex-direction: column; gap: 13px; }
.rs-ws { padding: 16px 18px; border: 1px solid var(--lab-edge-soft); border-radius: 14px; background: linear-gradient(180deg, rgba(40, 24, 47, 0.5), rgba(15, 8, 19, 0.55)); }
.rs-ws.is-idle { opacity: 0.78; }
.rs-ws-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rs-ws-id { display: flex; align-items: center; gap: 10px; }
.rs-ws-name { font-size: 1.16rem; font-weight: 800; color: var(--lab-gold-bright); }
.rs-ws-bonus { font-size: 0.64rem; font-weight: 700; letter-spacing: 0.03em; color: var(--lab-good); border: 1px solid rgba(121, 211, 155, 0.45); border-radius: 999px; padding: 2px 9px; }
.rs-ws-cap { display: flex; flex-direction: column; align-items: flex-end; }
.rs-ws-cap-v { font-size: 1.2rem; font-weight: 800; color: var(--lab-gold-bright); font-variant-numeric: tabular-nums; }
.rs-ws-cap-k { font-size: 0.58rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--lab-gold-dim); }
.rs-ws-meta { font-size: 0.76rem; color: var(--lab-gold-dim); margin-top: 4px; }

.rs-recipe { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) minmax(220px, 1fr); align-items: center; gap: 12px; padding: 11px 0; border-top: 1px solid var(--lab-edge-soft); margin-top: 11px; }
.rs-recipe:first-of-type { margin-top: 13px; }
.rs-recipe.is-locked { opacity: 0.5; }
.rs-recipe-id { display: flex; flex-direction: column; min-width: 0; }
.rs-recipe-name { font-size: 0.92rem; font-weight: 700; color: var(--lab-gold-bright); }
.rs-recipe-tier { font-size: 0.66rem; letter-spacing: 0.04em; text-transform: uppercase; color: var(--lab-gold-dim); margin-top: 2px; }
.rs-recipe-io { font-size: 0.78rem; color: var(--lab-gold); display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.rs-io-in { color: var(--lab-gold-dim); }
.rs-io-arrow { color: var(--lab-gold-deep); }
.rs-io-out { color: var(--lab-good); }
.rs-recipe-ctrl { display: flex; align-items: center; gap: 9px; }
.rs-recipe-pct { font-size: 0.82rem; font-weight: 700; color: var(--lab-gold-bright); min-width: 36px; text-align: right; font-variant-numeric: tabular-nums; }
.rs-recipe-runs { font-size: 0.66rem; color: var(--lab-gold-dim); min-width: 56px; }

.rs-slider { flex: 1 1 auto; min-width: 90px; accent-color: var(--lab-gold); height: 4px; cursor: pointer; }
.rs-slider:disabled { cursor: not-allowed; opacity: 0.6; }

.rs-ws-total { display: flex; align-items: center; gap: 10px; margin-top: 13px; padding-top: 12px; border-top: 1px solid var(--lab-edge); }
.rs-ws-total-lbl { font-size: 0.62rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--lab-gold-dim); }
.rs-ws-total-track { flex: 1 1 auto; height: 8px; border-radius: 999px; background: rgba(0, 0, 0, 0.35); border: 1px solid var(--lab-edge-soft); overflow: hidden; }
.rs-ws-total-fill { display: block; height: 100%; transition: width 0.12s ease; background: var(--lab-warn); }
.rs-ws-total.is-ok .rs-ws-total-fill { background: linear-gradient(90deg, #4f9e6f, var(--lab-good)); }
.rs-ws-total.is-warn .rs-ws-total-fill { background: linear-gradient(90deg, #b88a36, var(--lab-warn)); }
.rs-ws-total.is-bad .rs-ws-total-fill { background: linear-gradient(90deg, #a04848, var(--lab-bad)); }
.rs-ws-total-v { font-size: 0.84rem; font-weight: 800; color: var(--lab-gold-bright); min-width: 42px; text-align: right; font-variant-numeric: tabular-nums; }
.rs-ws-total.is-bad .rs-ws-total-v { color: var(--lab-bad); }
.rs-ws-quick { display: flex; gap: 8px; margin-top: 10px; }

.rs-save-foot { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 16px; }
.rs-save-status { font-size: 0.8rem; color: var(--lab-gold-dim); }
.rs-save-status.ok { color: var(--lab-good); }
.rs-save-status.err { color: var(--lab-bad); }

/* ===== Blacksmith fuel ===== */
.rs-fuel-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.rs-fuel-stat { display: flex; flex-direction: column; align-items: center; padding: 11px 8px; border: 1px solid var(--lab-edge-soft); border-radius: 10px; background: rgba(0, 0, 0, 0.22); }
.rs-fuel-stat-v { font-size: 1.3rem; font-weight: 800; color: var(--lab-gold-bright); font-variant-numeric: tabular-nums; }
.rs-fuel-stat-k { font-size: 0.6rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--lab-gold-dim); margin-top: 3px; }
.rs-fuel-alloc { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px 16px; margin-top: 14px; padding: 13px 15px; border: 1px solid var(--lab-edge-soft); border-radius: 11px; background: rgba(0, 0, 0, 0.2); }
.rs-fuel-alloc-lbl { font-size: 0.86rem; font-weight: 600; color: var(--lab-gold); grid-column: 1 / -1; }
.rs-fuel-alloc-lbl small { display: block; font-size: 0.72rem; color: var(--lab-gold-dim); font-weight: 400; margin-top: 3px; }
.rs-fuel-range { width: 100%; }
.rs-fuel-num { width: 90px; }
.rs-fuel-input { width: 100%; padding: 7px 9px; background: #2a1830; border: 1px solid var(--lab-edge-soft); border-radius: 8px; color: var(--lab-gold-bright); font-family: inherit; font-size: 1rem; text-align: center; }
.rs-fuel-input:focus { outline: none; border-color: var(--lab-gold); }
.rs-fuel-preview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 12px; padding: 12px; border: 1px dashed var(--lab-edge-soft); border-radius: 10px; }
.rs-fuel-cell { display: flex; flex-direction: column; align-items: center; text-align: center; }
.rs-fuel-cell-k { font-size: 0.66rem; letter-spacing: 0.05em; text-transform: uppercase; color: var(--lab-gold-dim); }
.rs-fuel-cell-v { font-size: 1.15rem; font-weight: 800; color: var(--lab-gold-bright); margin-top: 3px; font-variant-numeric: tabular-nums; }
.rs-fuel-cell-v.good { color: var(--lab-good); }
.rs-fuel-cell-v.warn { color: var(--lab-warn); }
.rs-fuel-formula { text-align: center; font-size: 0.76rem; color: var(--lab-gold-dim); font-style: italic; margin-top: 10px; }

@media (max-width: 820px) {
  .rs-recipe { grid-template-columns: 1fr; gap: 7px; }
  .rs-fuel-stats, .rs-fuel-preview { grid-template-columns: 1fr; }
}
