/* industry.css — Milestone 3: modal das indústrias, loja de fábricas e convite (reusa a moldura .modal-box). */
.ind-box { width: 340px; max-width: calc(100vw - 32px); }
#ind-body { display: flex; flex-direction: column; gap: 10px; align-items: center; text-align: center; }

.ind-recipe { display: flex; align-items: center; justify-content: center; gap: 6px; flex-wrap: wrap; }
.ind-chip {
  display: inline-flex; align-items: baseline; gap: 3px;
  padding: 5px 8px; font-size: 18px; line-height: 1;
  background: var(--parch-2, #ead2a0); border: 2px solid var(--parch-line, #c9a66b); color: var(--ink, #4a2e1a);
}
.ind-chip small { font-size: var(--fs-xs); color: var(--ink-soft, #7a5636); margin-left: 2px; }
.ind-chip.ind-missing { border-color: var(--berry, #a3352c); }
.ind-chip.ind-missing small { color: var(--berry, #a3352c); font-weight: bold; }
.ind-chip.ind-out { background: var(--parch-hi, #fff3d0); border-color: var(--gold, #9a6a0c); }
.ind-plus, .ind-arrow { font-size: 14px; color: var(--ink-soft, #7a5636); }
.ind-meta { font-size: var(--fs-sm); color: var(--ink-soft, #7a5636); }

.ind-bar { width: 100%; height: 10px; background: #3a2a1e; border: 2px solid var(--px-out, #2b1d14); }
.ind-bar i { display: block; height: 100%; background: var(--leaf, #3e7a2c); transition: width .3s linear; }

.ind-actions { display: flex; gap: 8px; width: 100%; }
.ind-actions .shop-item-btn { flex: 1; padding: 8px 6px; font-size: var(--fs-sm); }
.ind-actions .ind-collect { background: var(--leaf, #3e7a2c); }
.ind-actions .shop-item-btn:disabled { opacity: .5; cursor: not-allowed; }

.ind-shop-card { flex-direction: column; align-items: stretch; gap: 4px; text-align: left; }
.ind-shop-card .ind-shop-title { font-size: var(--fs-sm); font-weight: bold; }
.ind-shop-card .shop-item-btn { margin-top: 4px; padding: 6px; font-size: var(--fs-sm); }
.ind-shop-card .shop-item-btn:disabled { opacity: .55; cursor: not-allowed; }
.ind-locked { opacity: .75; }

/* Convite por WhatsApp (painel de vizinhos) */
.btn-invite-whatsapp {
  width: 100%; padding: 7px; font-size: var(--fs-sm); display: flex; align-items: center; justify-content: center; gap: 6px;
  background: #1f8a4c !important; border-color: #25d366 !important; color: #fff !important; box-sizing: border-box;
}

/* Fábrica com receitas */
.ind-status { display: flex; flex-direction: column; gap: 6px; flex: 0 0 auto; padding: 8px 10px; background: var(--parch-2); border: 2px solid var(--parch-line); }
.ind-slots { display: flex; gap: 6px; flex-wrap: wrap; }
.ind-slot { width: 36px; height: 36px; display: grid; place-items: center; font-size: 22px; background: var(--parch-hi); border: 2px solid var(--parch-line); }
.ind-slot.is-free { border-style: dashed; background: transparent; }
.ind-slot.is-run { border-color: var(--leaf); box-shadow: inset 0 -4px 0 #9bd35a; }
.ind-slot.is-ready { border-color: var(--gold); background: #f6e39a; animation: chipNudge 1.6s ease-in-out infinite; }
.ind-sheet .ind-bar { width: 100%; height: 10px; background: #3a2a1e; border: 2px solid var(--px-out); }
.ind-ins { display: flex; flex-wrap: wrap; gap: 4px; margin: 2px 0; }
.ind-ins .ind-chip { display: inline-flex; align-items: center; gap: 3px; padding: 1px 5px; font-size: var(--fs-sm); background: var(--parch-2); border: 2px solid var(--parch-line); }
.ind-ins .ind-chip b { font-weight: normal; color: var(--ink); font-size: var(--fs-xs); }
.ind-ins .ind-missing { border-color: var(--berry); }
.ind-ins .ind-missing b { color: var(--berry-t); }
.hud-missions { position: relative; }
.hud-badge { position: absolute; top: -8px; right: -8px; min-width: 20px; padding: 0 4px; background: var(--berry); color: #fff7e0; border: 2px solid var(--px-out); font-size: 12px; font-weight: normal; line-height: 1.4; font-family: var(--pixel-font); }
.hud-missions.has-claim { animation: chipNudge 2s ease-in-out infinite; }
.mis-bar { height: 8px; background: var(--parch-2); border: 2px solid var(--px-out); margin-top: 3px; }
.mis-bar i { display: block; height: 100%; background: var(--leaf); }
.mis-reward { color: var(--gold-t) !important; }
.mis-sep { margin: 8px 0 0; font-size: 16px; color: var(--wood-3); border-bottom: 2px dashed var(--parch-line); padding-bottom: 2px; }
#ind-body.sheet-list { align-items: stretch; text-align: left; }
.ind-sheet .item-row { width: auto; }
