:root{--profession-gold:#f2ce61;--profession-cyan:#5be0df;--profession-bg:#07151a;--profession-panel:#0d2228}
html.profession-open,body.profession-open{overflow:hidden!important}
#profession-system{position:fixed;z-index:490000;inset:0;display:grid;place-items:center;padding:10px;background:#02090de8;backdrop-filter:blur(7px)}
#profession-system.hidden{display:none!important}
.profession-window{display:grid;grid-template-rows:auto auto minmax(0,1fr);width:min(1500px,calc(100vw - 20px));height:min(920px,calc(100dvh - 20px));overflow:hidden;border:1px solid #9c8137;border-radius:16px;background:radial-gradient(circle at 50% -20%,#174750 0,transparent 42%),linear-gradient(150deg,#10272e,#07151a 64%);box-shadow:0 30px 100px #000f,inset 0 0 0 1px #ffe47712;color:#e9f5f2;font-family:Arial,sans-serif}
.profession-header{display:grid;grid-template-columns:minmax(0,1fr) auto 46px;align-items:center;gap:15px;min-height:82px;padding:12px 16px;border-bottom:1px solid #37545a;background:linear-gradient(90deg,#17323a,#0c1c22)}
.profession-brand{display:flex;align-items:center;gap:13px;min-width:0}.profession-brand>i{display:grid;place-items:center;width:48px;height:48px;flex:none;border:1px solid #dfbd54;border-radius:13px;background:radial-gradient(circle,#7e661d,#2a260e);box-shadow:0 0 18px #e0b63144;color:#fff0a4;font-style:normal;font-size:24px}.profession-brand span{min-width:0}.profession-brand small,.profession-brand p{display:block;margin:0;color:#83aaa9;font-size:8px;font-weight:900;letter-spacing:.13em}.profession-brand h2{margin:4px 0;color:#ffeb93;font-family:Georgia,serif;font-size:24px;line-height:1}.profession-brand p{margin-top:5px;letter-spacing:.02em;font-weight:700}
.profession-header>aside{display:flex;gap:8px}.profession-header>aside span{display:grid;min-width:112px;padding:8px 11px;border:1px solid #365b62;border-radius:9px;background:#07171c}.profession-header>aside small{color:#76979a;font-size:7px;font-weight:900;letter-spacing:.12em}.profession-header>aside b{margin-top:3px;color:#fff;font-size:11px}.profession-close{width:42px;height:42px;border:1px solid #9d7720;border-radius:10px;background:#4b3608;color:#ffe781;font-size:22px;font-weight:900;cursor:pointer}
.profession-tabs{display:flex;gap:6px;padding:8px 14px;border-bottom:1px solid #28454b;background:#071319}.profession-tabs button{min-height:36px;padding:0 18px;border:1px solid #2f5057;border-radius:8px;background:#0e242a;color:#8eaaa9;font-size:9px;font-weight:950;letter-spacing:.08em;cursor:pointer}.profession-tabs button.active{border-color:#e1bd4b;background:linear-gradient(#705511,#453508);color:#fff0a2;box-shadow:inset 0 0 0 1px #fff19f22}
.profession-body{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:#b49332 #071318}.profession-body>*{padding:12px}.profession-loading,.profession-empty{display:grid;place-items:center;gap:10px;min-height:220px;color:#8fa8a7;text-align:center;font-size:10px;font-weight:900;letter-spacing:.08em}.profession-loading i{width:28px;height:28px;border:3px solid #36535a;border-top-color:#f0cc59;border-radius:50%;animation:profession-spin .7s linear infinite}.profession-loading.inline{min-height:120px}.profession-empty.large button{margin-top:10px;padding:10px 18px;border:1px solid #d4b148;border-radius:7px;background:#58430b;color:#fff0a0;font-weight:900}
.profession-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.profession-choice{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px;border:1px solid color-mix(in srgb,var(--profession-color) 45%,#334b50);border-radius:11px;background:linear-gradient(145deg,color-mix(in srgb,var(--profession-color) 10%,#102229),#09171c);box-shadow:inset 3px 0 0 color-mix(in srgb,var(--profession-color) 70%,transparent)}.profession-choice.active{box-shadow:inset 3px 0 0 var(--profession-color),0 0 15px color-mix(in srgb,var(--profession-color) 22%,transparent)}.profession-choice>i{display:grid;place-items:center;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--profession-color) 60%,#263b40);border-radius:50%;background:#071318;color:var(--profession-color);font-style:normal;font-size:19px}.profession-choice span{min-width:0}.profession-choice small{color:var(--profession-color);font-size:6px;font-weight:950;letter-spacing:.1em}.profession-choice h3{margin:3px 0;color:#f3faf8;font-size:12px}.profession-choice p{display:-webkit-box;overflow:hidden;margin:0;color:#8fa6a6;font-size:7px;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical}.profession-choice em{display:block;margin-top:5px;color:#c6d6d2;font-size:7px;font-style:normal;font-weight:800}.profession-choice button{min-width:70px;min-height:31px;border:1px solid var(--profession-color);border-radius:7px;background:#0c2328;color:var(--profession-color);font-size:7px;font-weight:950}.profession-choice button:disabled{opacity:.65}
.profession-tools{position:sticky;z-index:4;top:-12px;display:grid;grid-template-columns:minmax(240px,1fr) 180px 130px auto;gap:8px;margin:11px 0 9px;padding:10px;border:1px solid #29464c;border-radius:10px;background:#09191eee;backdrop-filter:blur(6px)}.profession-tools label{display:flex;align-items:center;gap:8px;min-width:0;padding:0 10px;border:1px solid #35575d;border-radius:7px;background:#061216}.profession-tools input,.profession-tools select,.profession-ranking-view select{width:100%;height:36px;min-width:0;border:1px solid #35575d;border-radius:7px;background:#061216;color:#e8f3ef;font-size:9px}.profession-tools input{border:0;background:transparent;outline:0}.profession-tools button{min-height:36px;border:1px solid #e0bb48;border-radius:7px;background:#5b440a;color:#fff0a0;font-size:7px;font-weight:950}
.profession-coverage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:9px}.profession-coverage span{display:grid;padding:9px 11px;border:1px solid #29464c;border-radius:8px;background:#0b1d22}.profession-coverage small{color:#789697;font-size:6px;font-weight:900;letter-spacing:.1em}.profession-coverage b{margin-top:3px;color:#eaf7f3;font-size:13px}.profession-coverage b.zero{color:#69dda6}
.profession-recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px}
#profession-system .profession-recipe{display:flex;flex-direction:column;min-width:0;min-height:0;height:auto;padding:0;gap:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--profession-color) 44%,#30484d);border-radius:12px;background:linear-gradient(145deg,#10242a,#09161b);box-shadow:inset 3px 0 0 var(--profession-color),0 9px 24px #0004;color:#e9f5f2;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
#profession-system .profession-recipe.ready:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--profession-color) 72%,#49646a);box-shadow:inset 3px 0 0 var(--profession-color),0 13px 30px #0006,0 0 18px color-mix(in srgb,var(--profession-color) 14%,transparent)}
#profession-system .profession-recipe.locked{filter:saturate(.65);opacity:.8}
#profession-system .profession-recipe>header{display:grid;grid-template-columns:30px minmax(0,1fr) 62px;align-items:center;gap:10px;min-height:76px;padding:11px 12px;border-bottom:1px solid #294248;background:linear-gradient(90deg,color-mix(in srgb,var(--profession-color) 7%,transparent),transparent 48%)}
#profession-system .profession-recipe-copy{display:block;min-width:0}
#profession-system .profession-recipe h3{overflow:hidden;margin:3px 0;color:#f3f7ef;font-size:13px;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}
#profession-system .profession-recipe header p{display:-webkit-box;overflow:hidden;margin:0;color:#91a9a8;font-size:8px;line-height:1.38;-webkit-line-clamp:2;-webkit-box-orient:vertical}
#profession-system .profession-recipe header>span>small{color:var(--profession-color);font-size:6px;font-weight:900;letter-spacing:.06em}
#profession-system .profession-recipe header>strong{display:grid;min-width:56px;padding:7px 8px;border:1px solid #3a555a;border-radius:8px;background:#061419;color:#ffdf71;font-size:15px;line-height:1;text-align:center}
#profession-system .profession-recipe header>strong small{margin-top:4px;color:#789294;font-size:5px;letter-spacing:.08em}
.profession-rank{display:grid;place-items:center;width:28px;height:28px;border:1px solid currentColor;border-radius:7px;background:#071419;color:#dbe5e2;font-size:12px;font-weight:950}.rank-E{color:#80d89b}.rank-D{color:#71c9ef}.rank-C{color:#a69aff}.rank-B{color:#e28cff}.rank-A{color:#ffb65c}.rank-S{color:#ffe06a}
.profession-item-art{position:relative;display:grid;place-items:center;width:48px;height:48px;overflow:hidden;border:1px solid #496069;border-radius:9px;background:radial-gradient(circle,#23434a,#071216 72%)}.profession-item-art img{max-width:88%;max-height:88%;object-fit:contain;image-rendering:pixelated}.profession-item-art.missing:after{content:"?";color:#70898a;font-size:18px;font-weight:900}.profession-item-art.output{border-color:var(--profession-color);box-shadow:0 0 10px color-mix(in srgb,var(--profession-color) 30%,transparent)}
#profession-system .profession-craft-flow{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(178px,.72fr);align-items:stretch;gap:8px;padding:10px 12px;background:#08171b99}
#profession-system .profession-material-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(142px,1fr));align-items:stretch;gap:7px;min-width:0}
#profession-system .profession-material-list>span,#profession-system .profession-output{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:7px 8px;border:1px solid #2e4a50;border-radius:9px;background:#061419}
#profession-system .profession-material-list>span.missing{border-color:#78454a;background:#211317}
#profession-system .profession-craft-flow .profession-item-art{width:36px;height:36px;flex:none}
#profession-system .profession-craft-flow em{display:block;min-width:0;font-style:normal}
#profession-system .profession-craft-flow b,#profession-system .profession-craft-flow small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#profession-system .profession-craft-flow b{color:#dce9e5;font-size:8px}
#profession-system .profession-craft-flow small{margin-top:3px;color:#7e9999;font-size:6px}
#profession-system .profession-flow-arrow{display:grid;place-items:center;color:#e8c650;font-style:normal;font-size:18px}
#profession-system .profession-output{border-color:color-mix(in srgb,var(--profession-color) 68%,#385157);background:linear-gradient(135deg,color-mix(in srgb,var(--profession-color) 12%,#07161a),#07161a)}
#profession-system .profession-output b{color:#ffe384}
#profession-system .profession-crafted-mark{display:grid;place-items:center;width:36px;height:36px;overflow:hidden;border:1px solid var(--profession-color);border-radius:9px;background:radial-gradient(circle,color-mix(in srgb,var(--profession-color) 25%,#173137),#061216 72%);box-shadow:0 0 12px color-mix(in srgb,var(--profession-color) 24%,transparent);font-style:normal}
#profession-system .profession-crafted-mark>span{font-size:16px;line-height:1}
#profession-system .profession-crafted-mark>small{margin:1px 0 0;color:var(--profession-color);font-size:4px;font-weight:950;letter-spacing:.06em}
#profession-system .profession-recipe>footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:9px 12px;border-top:1px solid #243e43;background:#071419}
#profession-system .profession-recipe footer span{display:grid}
#profession-system .profession-recipe footer b{color:#72dcae;font-size:8px}
#profession-system .profession-recipe footer small{color:#789293;font-size:6px}
#profession-system .profession-recipe footer button{min-height:32px;padding:0 12px;border:1px solid var(--profession-color);border-radius:7px;background:#133137;color:#eaf7f3;font-size:7px;font-weight:950;cursor:pointer}
#profession-system .profession-recipe footer button.max{border-color:#b99532;color:#ffe47d}
#profession-system .profession-recipe footer button:disabled{cursor:not-allowed;opacity:.35}
.profession-progress-view{display:grid;gap:12px}.profession-rank-road{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.profession-rank-road article,.profession-rank-table{padding:12px;border:1px solid #2e4b51;border-radius:11px;background:#0a1b20}.profession-rank-road header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px}.profession-rank-road header>i{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#061318;color:var(--profession-color);font-style:normal}.profession-rank-road h3{margin:2px 0;font-size:12px}.profession-rank-road small{color:var(--profession-color);font-size:7px;font-weight:900}.profession-rank-road header>b{color:#ffe17b}.profession-progress-bar{height:8px;margin-top:9px;overflow:hidden;border-radius:99px;background:#031014}.profession-progress-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--profession-color),#ffe16b)}.profession-rank-road p{color:#849f9e;font-size:7px}.profession-rank-road dl{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:0}.profession-rank-road dl div{display:grid;padding:7px;border-radius:6px;background:#061419}.profession-rank-road dt{color:#6d898a;font-size:5px;font-weight:900}.profession-rank-road dd{margin:2px 0 0;color:#e9f4f0;font-size:10px;font-weight:900}.profession-rank-table>header h3{margin:0;color:#ffe681}.profession-rank-table>header p{margin:4px 0 10px;color:#829c9b;font-size:8px}.profession-rank-table>article{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:10px;padding:8px;border-top:1px solid #243d42}.profession-rank-table>article>b{font-size:17px}.profession-rank-table span{display:grid}.profession-rank-table strong{font-size:9px}.profession-rank-table small{margin-top:2px;color:#789494;font-size:7px}
.profession-utility-view{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);gap:11px}.profession-system-links,.profession-output-bag{overflow:hidden;border:1px solid #2f4c52;border-radius:11px;background:#091a1f}.profession-system-links>header,.profession-output-bag>header{padding:12px;border-bottom:1px solid #294349}.profession-system-links h3,.profession-output-bag h3{margin:3px 0;color:#ffdf73;font-size:14px}.profession-system-links header small,.profession-output-bag header small{color:#68d5c3;font-size:7px;font-weight:900;letter-spacing:.12em}.profession-system-links header p{margin:5px 0 0;color:#839d9c;font-size:8px}.profession-system-links>article{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 11px;border-top:1px solid #20383d}.profession-system-links>article>i{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#102c31;color:#f0ce60;font-style:normal}.profession-system-links article span{display:grid}.profession-system-links article b{font-size:9px}.profession-system-links article small{margin-top:2px;color:#7f9999;font-size:6px}.profession-system-links article>strong{display:grid;color:#ffe47a;font-size:12px;text-align:right}.profession-system-links article>strong small{font-size:5px}.profession-output-bag>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px}.profession-output-bag article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;border:1px solid #29454a;border-radius:9px;background:#07161a}.profession-output-bag article>span{min-width:0}.profession-output-bag article small,.profession-output-bag article b,.profession-output-bag article p{display:block;overflow:hidden;text-overflow:ellipsis}.profession-output-bag article small{color:#6bd2bf;font-size:6px}.profession-output-bag article b{margin-top:2px;white-space:nowrap;font-size:9px}.profession-output-bag article p{margin:3px 0;color:#779293;font-size:6px;line-height:1.35}.profession-output-bag article>strong{color:#ffe077}.profession-output-bag article>button,.profession-output-bag article>em{grid-column:2/4;min-height:27px;border:1px solid #4ebc99;border-radius:6px;background:#153b32;color:#dffff4;font-size:7px;font-weight:950}.profession-output-bag article>em{display:grid;place-items:center;border-color:#354c50;background:#0c1c20;color:#809798;font-style:normal}
.profession-ranking-view>header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px;border:1px solid #2c4a50;border-radius:10px;background:#0a1c21}.profession-ranking-view h3{margin:3px 0;color:#ffe47d}.profession-ranking-view header small{color:#69d6c4;font-size:7px;font-weight:900}.profession-ranking-view header p{margin:4px 0 0;color:#7e9999;font-size:8px}.profession-ranking-view select{width:180px;padding:0 8px}.profession-ranking-view>div{display:grid;gap:6px;margin-top:9px}.profession-ranking-view article{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;border:1px solid #29464c;border-radius:9px;background:#091a1f}.profession-ranking-view article.self{border-color:#ddba4a;background:#2b270f}.profession-ranking-view article>i{color:#ffe47c;font-style:normal;font-size:15px;font-weight:950}.profession-ranking-view article span,.profession-ranking-view article>strong{display:grid}.profession-ranking-view article b{font-size:10px}.profession-ranking-view article small{margin-top:2px;color:#789393;font-size:7px}.profession-ranking-view article>strong{text-align:right;color:#eaf5f1}
.profession-toast{position:absolute;z-index:4;left:50%;bottom:16px;max-width:min(520px,calc(100% - 30px));padding:11px 16px;transform:translate(-50%,20px);border:1px solid #57ca9f;border-radius:8px;background:#0d3027ee;box-shadow:0 12px 36px #000b;color:#dcfff1;font-size:9px;font-weight:900;opacity:0;pointer-events:none;transition:.2s}.profession-toast.show{transform:translate(-50%,0);opacity:1}.profession-toast.error{border-color:#dd6c6c;background:#3a1719ee;color:#ffdede}
.profession-toolbar-button.profession-active,.trainer-feature-shortcuts button.profession-active{border-color:#e2c04d!important;box-shadow:0 0 12px #e2c04d44!important}.trainer-card-socket.profession-locked{border-color:#9b792d!important;background:#251f0e!important}.trainer-card-socket.profession-locked>button>i{color:#ffe16d!important}
@keyframes profession-spin{to{transform:rotate(360deg)}}
@media(max-width:1050px){.profession-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.profession-recipe-grid{grid-template-columns:1fr}.profession-utility-view{grid-template-columns:1fr}.profession-tools{grid-template-columns:minmax(180px,1fr) 150px 110px}.profession-test-kit{grid-column:1/-1}.profession-output-bag>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){#profession-system{padding:0}.profession-window{width:100vw;height:100dvh;border:0;border-radius:0}.profession-header{grid-template-columns:minmax(0,1fr) 40px;min-height:62px;padding:8px 10px}.profession-brand>i{width:37px;height:37px;font-size:18px}.profession-brand h2{font-size:16px}.profession-brand p{display:none}.profession-header>aside{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr}.profession-header>aside span{min-width:0;padding:5px 8px}.profession-close{grid-column:2;grid-row:1;width:38px;height:38px}.profession-tabs{gap:3px;padding:5px;overflow-x:auto}.profession-tabs button{flex:1 0 auto;min-height:32px;padding:0 10px;font-size:7px}.profession-body>*{padding:7px}.profession-choices{grid-template-columns:1fr}.profession-choice{grid-template-columns:35px minmax(0,1fr) 65px;padding:8px}.profession-choice>i{width:33px;height:33px}.profession-choice p{display:none}.profession-tools{top:-7px;grid-template-columns:1fr 1fr;margin:7px 0;padding:7px}.profession-tools label{grid-column:1/-1}.profession-tools .profession-test-kit{grid-column:1/-1}.profession-coverage{grid-template-columns:1fr 1fr}.profession-recipe>header{grid-template-columns:24px 45px minmax(0,1fr)}.profession-recipe header>strong{grid-column:3}.profession-item-art{width:42px;height:42px}.profession-ingredients>span{min-width:130px}.profession-recipe>footer{grid-template-columns:1fr 1fr}.profession-recipe>footer span{grid-column:1/-1}.profession-rank-road{grid-template-columns:1fr}.profession-output-bag>div{grid-template-columns:1fr}.profession-ranking-view>header{align-items:stretch;flex-direction:column}.profession-ranking-view select{width:100%}}
@media(max-width:680px){#profession-system .profession-recipe>header{grid-template-columns:24px minmax(0,1fr) 52px;gap:8px;padding:9px}#profession-system .profession-recipe h3{font-size:11px}#profession-system .profession-recipe header>strong{grid-column:3;padding-inline:5px}#profession-system .profession-craft-flow{grid-template-columns:1fr;padding:8px 9px}#profession-system .profession-flow-arrow{height:16px;transform:rotate(90deg)}#profession-system .profession-output{min-height:52px}#profession-system .profession-recipe>footer{padding:8px 9px}}
@media(max-width:430px){#profession-system .profession-material-list{grid-template-columns:1fr}#profession-system .profession-recipe>footer button{grid-column:1/-1;width:100%}}
@media(max-height:500px) and (min-width:681px){.profession-window{height:calc(100dvh - 8px)}.profession-header{min-height:58px;padding-block:7px}.profession-brand>i{width:38px;height:38px}.profession-brand h2{font-size:18px}.profession-brand p{display:none}.profession-tabs{padding-block:5px}.profession-tabs button{min-height:30px}.profession-body>*{padding:8px}}
@media(prefers-reduced-motion:reduce){.profession-loading i{animation:none}.profession-toast{transition:none}}

/* Legibilidade dos cards de profissao.
   Mantem a composicao compacta, mas evita textos abaixo de 8px. */
#profession-system .profession-coverage small {
  font-size: 8px;
  line-height: 1.25;
}

#profession-system .profession-coverage b {
  font-size: 15px;
}

#profession-system .profession-recipe h3 {
  font-size: 15px;
  line-height: 1.25;
}

#profession-system .profession-recipe header p {
  font-size: 10px;
  line-height: 1.4;
}

#profession-system .profession-recipe header > span > small {
  font-size: 8px;
  line-height: 1.25;
}

#profession-system .profession-recipe header > strong small {
  font-size: 7px;
  line-height: 1.2;
}

#profession-system .profession-craft-flow b {
  font-size: 10px;
  line-height: 1.3;
}

#profession-system .profession-craft-flow small {
  font-size: 8px;
  line-height: 1.3;
}

#profession-system .profession-crafted-mark > small {
  font-size: 6px;
  line-height: 1;
}

#profession-system .profession-recipe footer b {
  font-size: 10px;
  line-height: 1.3;
}

#profession-system .profession-recipe footer small {
  font-size: 8px;
  line-height: 1.3;
}

#profession-system .profession-recipe footer button {
  font-size: 9px;
  line-height: 1.2;
}

@media(max-width: 680px) {
  #profession-system .profession-recipe h3 {
    font-size: 13px;
  }

  #profession-system .profession-recipe header p,
  #profession-system .profession-craft-flow b,
  #profession-system .profession-recipe footer b {
    font-size: 9px;
  }
}


/* Quantidade autoritativa por fabricacao (1 a 50). */
#profession-system .profession-recipe>footer {
  grid-template-columns:minmax(0,1fr) auto auto auto;
}
#profession-system .profession-craft-quantity {
  display:grid;
  gap:3px;
  min-width:126px;
}
#profession-system .profession-craft-quantity>small {
  color:#8da5a5;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
}
#profession-system .profession-craft-quantity>span {
  display:grid;
  grid-template-columns:30px 54px 30px;
  overflow:hidden;
  border:1px solid #42646a;
  border-radius:7px;
  background:#061419;
}
#profession-system .profession-craft-quantity button {
  min-width:0;
  min-height:32px;
  padding:0;
  border:0;
  border-radius:0;
  background:#153138;
  color:#dff7ef;
  font-size:15px;
}
#profession-system .profession-craft-quantity input {
  width:100%;
  min-width:0;
  border:0;
  border-inline:1px solid #42646a;
  background:#081b20;
  color:#ffe681;
  font-size:12px;
  font-weight:950;
  text-align:center;
  outline:0;
  appearance:textfield;
}
#profession-system .profession-craft-quantity input::-webkit-inner-spin-button,
#profession-system .profession-craft-quantity input::-webkit-outer-spin-button {
  margin:0;
  appearance:none;
}
#profession-system .profession-craft-quantity input:focus {
  box-shadow:inset 0 0 0 2px #e2bd4c;
}
@media(max-width:680px) {
  #profession-system .profession-recipe>footer {
    grid-template-columns:1fr 1fr;
  }
  #profession-system .profession-recipe>footer>span,
  #profession-system .profession-craft-quantity {
    grid-column:1/-1;
  }
  #profession-system .profession-craft-quantity>span {
    grid-template-columns:38px minmax(64px,1fr) 38px;
  }
}
@media(max-width:430px) {
  #profession-system .profession-recipe>footer button.max,
  #profession-system .profession-recipe>footer button[data-profession-craft] {
    grid-column:auto;
    width:100%;
  }
}

/* Progressão encadeada e custos autoritativos da Oficina. */
#profession-system .profession-economy-notice {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid rgba(238,190,64,.48);
  border-radius:10px;
  background:linear-gradient(110deg,rgba(73,54,10,.76),rgba(8,29,34,.94) 58%);
  box-shadow:inset 0 0 22px rgba(241,190,49,.08);
}
#profession-system .profession-economy-notice>i {
  display:grid;
  place-items:center;
  flex:0 0 38px;
  height:38px;
  border:1px solid #e5be51;
  border-radius:9px;
  color:#ffe680;
  font-size:22px;
  font-style:normal;
  font-weight:950;
}
#profession-system .profession-economy-notice span {min-width:0}
#profession-system .profession-economy-notice small {display:block;color:#6ff0cf;font-size:8px;font-weight:950;letter-spacing:.13em}
#profession-system .profession-economy-notice b {display:block;margin-top:2px;color:#fff4c3;font-size:12px}
#profession-system .profession-economy-notice p {margin:3px 0 0;color:#a9c3c0;font-size:9px;line-height:1.45}
#profession-system .profession-economy-strip {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-block:1px solid rgba(70,111,116,.38);
  background:rgba(3,18,22,.46);
  font-size:9px;
  letter-spacing:.06em;
}
#profession-system .profession-economy-strip b {color:#6fe9cc}
#profession-system .profession-economy-strip strong {color:#ffd866}
#profession-system .profession-upgrade-material {
  border-color:rgba(216,170,58,.72)!important;
  background:linear-gradient(100deg,rgba(81,58,10,.46),rgba(10,31,35,.82))!important;
}
#profession-system .profession-upgrade-material.ready {box-shadow:inset 3px 0 #e9c652}
#profession-system .profession-upgrade-material.missing {border-color:rgba(232,91,83,.78)!important;box-shadow:inset 3px 0 #e85b53}
#profession-system .profession-upgrade-material em b {color:#ffe587!important}
#profession-system .profession-upgrade-art {border-color:#d9b744!important}
#profession-system .profession-craft-rewards b {color:#ffe17c!important}
@media(max-width:680px) {
  #profession-system .profession-economy-notice {align-items:flex-start}
  #profession-system .profession-economy-strip {font-size:8px}
}

.trainer-card-socket .trainer-card-unlock {
  display:flex;
  width:calc(100% - 12px);
  min-height:38px;
  margin:0 6px 6px;
  padding:6px 9px;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  border:1px solid #dbb83e!important;
  border-radius:8px;
  background:linear-gradient(135deg,#8d680e,#5e480f)!important;
  color:#fff3ad!important;
  cursor:pointer;
}
.trainer-card-socket .trainer-card-unlock b {font-size:9px;letter-spacing:.05em}
.trainer-card-socket .trainer-card-unlock small {color:#f4d96f;font-size:7px;text-align:right}
.trainer-card-socket .trainer-card-unlock:disabled {border-color:#655b3c!important;background:#29271e!important;color:#8f8b78!important;cursor:not-allowed}
.trainer-card-socket .trainer-card-unlock:disabled small {color:#7e7968}

#profession-system .profession-production span {flex:1}
#profession-system .profession-production button {
  flex:0 0 auto;padding:9px 13px;border:1px solid #f0c758;border-radius:8px;
  background:linear-gradient(180deg,#d6a92c,#8b6810);color:#07171a;font-size:10px;font-weight:950;
}
#profession-system .profession-production button:disabled {opacity:.45;filter:grayscale(.45)}
