/* 12/10 — Forja: abas Refino/Craft e a página de craft de cristais
   (js/craft-cristais.js). Mesma paleta do refino: pergaminho + azul-marinho. */
.forja-abas { display:flex; gap:8px; margin:0 0 14px; }
.forja-aba { padding:9px 22px; border:2px solid #b49550; border-radius:4px 4px 0 0; background:#ead7ae; color:#243846; font:700 15px Georgia,serif; cursor:pointer; }
.forja-aba[aria-selected="true"] { background:linear-gradient(#1d4562,#0f2d45); color:#ffe1a0; border-color:#c9a24c; box-shadow:0 3px 0 #c9a24c; }
.forja-aba:focus-visible { outline:3px solid #3f85b6; outline-offset:2px; }
.refino-layout[hidden], .craft-page[hidden] { display:none !important; }

.craft-page { display:grid; grid-template-columns:260px minmax(0,1fr) 280px; gap:14px; align-items:start; }
.craft-col { display:flex; flex-direction:column; gap:14px; min-width:0; }
.craft-card { background:#f7e8cc; border:3px double #b49550; border-radius:6px; box-shadow:0 3px 8px #5a3f1430; overflow:hidden; }
.craft-card-titulo { padding:10px 14px; background:linear-gradient(#1d4562,#0f2d45); color:#ffe6b0; font:700 15px Georgia,serif; border-bottom:2px solid #c9a24c; }
.craft-card-main { padding:14px; min-height:420px; }
.craft-card-main .msg-box:empty { display:none; }

/* Famílias */
.craft-familias { display:flex; flex-direction:column; max-height:640px; overflow:auto; padding:6px; gap:4px; }
.craft-fam { display:flex; align-items:center; gap:8px; width:100%; padding:6px 8px; border:1px solid #c9b48a; border-radius:5px; background:#fff6e2; cursor:pointer; text-align:left; font-family:inherit; }
.craft-fam:hover { background:#fdeec9; }
.craft-fam.ativa { background:#16374f; border-color:#c9a24c; }
.craft-fam.ativa b, .craft-fam.ativa small, .craft-fam.ativa em { color:#ffe6b0; }
.craft-fam-img { width:30px; height:30px; object-fit:contain; flex:0 0 30px; }
.craft-fam span { display:flex; flex-direction:column; min-width:0; flex:1; }
.craft-fam b { font:700 12px Georgia,serif; color:#1d3346; }
.craft-fam small { font-size:10px; color:#7a6740; }
.craft-fam em { font:800 11px system-ui,sans-serif; color:#8a5a12; font-style:normal; }

/* Cabeçalho + receitas */
.craft-cab { display:flex; align-items:center; gap:12px; margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid #c9b48a; }
.craft-cab-img { width:56px; height:56px; object-fit:contain; filter:drop-shadow(0 2px 3px #0004); }
.craft-cab h2 { margin:0; font:700 22px Georgia,serif; color:#16374f; }
.craft-cab p { margin:2px 0 0; font-size:12px; color:#5b4a25; }
.craft-receita { border:1px solid #c9b48a; border-radius:7px; background:#fffaee; margin-bottom:10px; padding:10px; }
.craft-destino { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.craft-destino-img { width:46px; height:46px; object-fit:contain; }
.craft-destino b { display:block; font:700 15px Georgia,serif; color:#13314f; }
.craft-destino small { display:block; font-size:12px; color:#2f6b2f; font-weight:700; }
.craft-tem { font-size:11px; color:#7a6740; }
.craft-opcoes { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.craft-opcao { padding:8px 10px; border-radius:6px; background:#f1e3c2; border:1px solid #d8c393; display:flex; flex-direction:column; gap:4px; }
.craft-opcao.mista { background:#e9e1f3; border-color:#c7b5de; }
.craft-opcao h4 { margin:0; font:800 11px system-ui,sans-serif; letter-spacing:1px; text-transform:uppercase; color:#7a5b1d; }
.craft-opcao.mista h4 { color:#5b3c8a; }
.craft-opcao p { margin:0; font-size:13px; color:#2b2b22; display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.craft-opcao small { font-size:11px; color:#6b5a35; }
.craft-mini { width:20px; height:20px; object-fit:contain; vertical-align:middle; }
.craft-barra { height:6px; border-radius:3px; background:#d9c79c; overflow:hidden; }
.craft-barra i { display:block; height:100%; background:linear-gradient(90deg,#c48a1e,#f0c35a); }
.craft-opcao.mista .craft-barra i { background:linear-gradient(90deg,#7a4fb8,#b48ae6); }
.craft-acao { display:flex; gap:6px; align-items:center; margin-top:4px; }
.craft-vezes { width:64px; padding:5px 6px; border:1px solid #b49550 !important; border-radius:4px; background:#fff !important; color:#1d3346 !important; font:700 13px system-ui,sans-serif; }
.craft-vezes:disabled { opacity:.5; }
.craft-btn { padding:7px 16px; border:2px solid #c9a24c; border-radius:5px; background:linear-gradient(#1d4562,#0f2d45); color:#ffe6b0; font:700 13px Georgia,serif; cursor:pointer; }
.craft-btn.sec { background:linear-gradient(#6a4a9a,#43296b); border-color:#b48ae6; }
.craft-btn:disabled { opacity:.45; cursor:not-allowed; }
.craft-btn:not(:disabled):hover { filter:brightness(1.15); }

/* Painel da receita mista */
.craft-mista-painel { margin-top:10px; padding:10px; border:1px dashed #9a7cc6; border-radius:6px; background:#f6f0fb; }
.craft-mista-topo { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px; }
.craft-mista-topo b { font:700 13px Georgia,serif; color:#43296b; }
.craft-mista-topo span { font:800 14px system-ui,sans-serif; color:#a3342a; }
.craft-mista-topo span.ok { color:#2f6b2f; }
.craft-mista-topo .craft-btn { margin-left:auto; padding:5px 10px; font-size:12px; }
.craft-mista-lista { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:5px; max-height:300px; overflow:auto; }
.craft-mista-item { display:flex; align-items:center; gap:6px; padding:5px 6px; border:1px solid #d8cbe9; border-radius:5px; background:#fff; }
.craft-mista-item.usado { border-color:#7a4fb8; background:#efe6fa; }
.craft-mista-item span { flex:1; min-width:0; font-size:12px; color:#2b2b22; display:flex; flex-direction:column; }
.craft-mista-item small { font-size:10px; color:#7a6740; }
.craft-step { display:flex; align-items:center; gap:4px; }
.craft-step button { width:24px; height:24px; border:1px solid #9a7cc6; border-radius:4px; background:#fff; color:#43296b; font:800 14px system-ui,sans-serif; cursor:pointer; }
.craft-step button:disabled { opacity:.35; cursor:default; }
.craft-step b { min-width:20px; text-align:center; font:800 13px system-ui,sans-serif; }

/* Mochila e registo */
.craft-mochila { padding:8px 10px; display:flex; flex-direction:column; gap:8px; max-height:360px; overflow:auto; }
.craft-moch-nivel h5 { margin:0 0 4px; font:700 12px Georgia,serif; color:#16374f; }
.craft-moch-nivel > div { display:flex; flex-wrap:wrap; gap:4px; }
.craft-chip { display:inline-flex; align-items:center; gap:3px; padding:2px 6px 2px 3px; border:1px solid #c9b48a; border-radius:12px; background:#fff6e2; font:800 11px system-ui,sans-serif; color:#5b3c12; }
.craft-log { list-style:none; margin:0; padding:8px 10px; display:flex; flex-direction:column; gap:6px; max-height:300px; overflow:auto; }
.craft-log li { display:flex; gap:6px; align-items:flex-start; font-size:12px; }
.craft-log li span { display:flex; flex-direction:column; }
.craft-log li small { color:#7a6740; font-size:10px; }
.craft-vazio { color:#7a6740; font-style:italic; font-size:12px; text-align:center; padding:10px; }

@media (max-width:1100px) { .craft-page { grid-template-columns:220px minmax(0,1fr); } .craft-col-dir { grid-column:1/-1; } }
@media (max-width:760px) {
  .craft-page { grid-template-columns:1fr; }
  .craft-familias { flex-direction:row; flex-wrap:nowrap; overflow-x:auto; max-height:none; }
  .craft-fam { width:auto; flex:0 0 auto; }
  .craft-opcoes { grid-template-columns:1fr; }
  .forja-aba { flex:1; padding:9px 8px; }
}
