.forge{padding-bottom:110px}
.forge-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,56px);align-items:start}
.forge-stage{position:sticky;top:88px}
.forge-stage canvas{width:100%;height:auto;border-radius:14px;border:1px solid var(--line);background:#000}
.forge-btns{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 10px}
.forge-controls{display:flex;flex-direction:column;gap:22px}
.field{border:0;margin:0;padding:0;min-width:0}
.field legend,.field.txt span{font:400 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;display:block}
.field.txt input{width:100%;height:46px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink);font:400 16px var(--sans);padding:0 14px}
.field.txt input:focus{outline:none;border-color:var(--mint)}
.seg{align-self:flex-start;display:inline-flex;border:1px solid var(--line-2);border-radius:99px;padding:3px;gap:2px;flex-wrap:wrap}
.seg button{background:none;border:0;color:var(--muted);font:400 13px var(--mono);padding:8px 14px;border-radius:99px;cursor:pointer}
.seg button.is-on{background:var(--ink);color:var(--bg)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips button{background:none;border:1px solid var(--line-2);color:#cbc7bf;font:400 12.5px var(--mono);padding:8px 12px;border-radius:99px;cursor:pointer}
.chips button.is-on{border-color:var(--mint);color:var(--ink);background:rgba(141,255,207,.08)}
.tpl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.tpl{position:relative;aspect-ratio:16/10;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:#000 center/cover no-repeat;cursor:pointer;padding:0}
.tpl span{position:absolute;inset:auto 0 0;padding:14px 6px 5px;font:400 10px var(--mono);color:#fff;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.85));letter-spacing:.04em}
.tpl.is-on{border-color:var(--mint);box-shadow:0 0 0 1px var(--mint)}
.tpl.void{background:radial-gradient(circle at 50% 50%,#0b1a2e,#000)}
.upload{display:inline-flex;margin-top:10px;font:400 12.5px var(--mono);color:var(--mint);cursor:pointer}
.upload input{position:absolute;opacity:0;width:1px;height:1px}
.upload:focus-within span{outline:2px solid var(--mint);outline-offset:3px}
.check{display:flex;align-items:center;gap:10px;font:400 13px var(--mono);color:#cbc7bf}
.check input{accent-color:var(--mint);width:16px;height:16px}
@media (max-width:900px){.forge-grid{grid-template-columns:1fr}.forge-stage{position:relative;top:0}.tpl-grid{grid-template-columns:repeat(3,1fr)}}

.glyph-code{font:400 12px var(--mono);color:var(--muted);margin-top:6px;word-break:break-all}
.glyph-code code{color:var(--ink)}
.glyph-code a{margin-left:8px}
