.tool-shell{width:min(calc(100% - 3rem),1180px);margin:0 auto;padding:clamp(4rem,8vw,7rem) 0}.tool-intro{max-width:760px;margin-bottom:3rem}.tool-intro h1{font-size:clamp(3.5rem,7vw,6rem);line-height:.95;margin:0}.tool-intro>p:last-child{color:var(--muted);font-size:1.08rem;max-width:670px}.asciifier{display:grid;grid-template-columns:300px minmax(0,1fr);border:1px solid var(--rule);min-height:700px;background:var(--surface)}.ascii-controls{padding:1.2rem;border-right:1px solid var(--rule);background:#14120f}.drop-zone{min-height:180px;border:1px dashed #514a3f;display:grid;place-items:center;align-content:center;text-align:center;padding:1rem;cursor:pointer}.drop-zone:hover,.drop-zone.dragover{border-color:var(--copper);background:#1b1813}.drop-glyph{font:2rem var(--mono);color:var(--copper)}.drop-zone p{margin:.5rem 0 1rem;font-size:.88rem}.drop-zone p span{color:var(--muted)}button,select,input{font:inherit}.ghost-btn,.export-btns button{min-height:40px;border:1px solid #4a443b;background:transparent;color:var(--ink);padding:.5rem .75rem;cursor:pointer}.ghost-btn:hover,.export-btns button:hover:not(:disabled){border-color:var(--copper);color:var(--copper)}button:disabled{opacity:.38;cursor:not-allowed}.cam-row{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.live-badge{color:#df7769;font:600 .62rem var(--mono);text-transform:uppercase;letter-spacing:.1em}#cam-video{width:100%;margin-bottom:1rem;background:#000}.control{display:grid;gap:.45rem;margin:1.15rem 0}.control label,.control:not(label){font-size:.78rem}.control label{display:flex;justify-content:space-between;color:var(--muted)}.control output{color:var(--ink);font-family:var(--mono)}.control select{width:100%;min-height:42px;background:#1b1814;color:var(--ink);border:1px solid #4a443b;padding:.45rem}.control input[type="range"]{width:100%;accent-color:var(--copper)}.control input[type="color"]{width:100%;height:38px;padding:2px;background:none;border:1px solid #4a443b}.control.check{grid-template-columns:auto 1fr;align-items:center;justify-content:start}.control.check input{accent-color:var(--copper)}.full{width:100%}.ascii-stage{min-width:0;display:flex;flex-direction:column}.ascii-toolbar{min-height:58px;border-bottom:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem}.stats{color:var(--muted);font:500 .67rem var(--mono);white-space:nowrap}.export-btns{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.export-btns button{font-size:.7rem;min-height:36px}.ascii-screen{flex:1;min-height:640px;overflow:auto;background:#0c0b0a;position:relative}.placeholder{position:absolute;inset:0;display:flex;gap:1rem;align-items:center;justify-content:center;color:var(--faint);padding:2rem;text-align:center}.placeholder>span{color:var(--copper);font:2rem var(--mono)}#ascii-out{min-width:max-content;margin:0;padding:1.25rem;font:10px/1 monospace;letter-spacing:0;white-space:pre;background:#0c0b0a}#ascii-out:focus-visible{outline-offset:-4px}
@media(max-width:800px){.asciifier{grid-template-columns:1fr}.ascii-controls{border-right:0;border-bottom:1px solid var(--rule)}.ascii-stage{min-height:570px}.ascii-screen{min-height:510px}.ascii-toolbar{align-items:flex-start;flex-direction:column}.export-btns{justify-content:flex-start}.drop-zone{min-height:145px}}@media(max-width:560px){.tool-shell{width:calc(100% - 2rem)}.export-btns button{flex:1}.export-btns{width:100%}}
