:root{--pink:#ff2e88;--gold:#ffc23d;--teal:#1fe3c2;--cream:#e8dcc0;--dim:#7a7268;--bg:#0d0b0a;--panel:#1c1814;--line:#34302a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;background:var(--bg);color:var(--cream);font-family:ui-monospace,Menlo,Consolas,monospace}a{color:var(--teal)}.app{max-width:1100px;margin:0 auto;padding:16px 14px 64px}h1.title{font-size:13px;letter-spacing:.2em;opacity:.55;font-weight:600;margin:0 0 14px}.cap,h1.title{text-transform:uppercase}.cap{font-size:10px;letter-spacing:.14em;opacity:.4;margin-right:2px}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--cream);border-radius:999px;padding:7px 12px;font-size:12px;letter-spacing:.03em}button:disabled{opacity:.4;cursor:not-allowed}button.on{background:var(--pink);border-color:var(--pink);color:#fff}button.ghost.on{background:var(--teal);border-color:var(--teal);color:#08110f}button.act{background:#0d0b0a;border:1px solid var(--teal);color:var(--teal)}button.danger{border-color:#5a2030;color:var(--pink)}.wall-frame{position:relative;width:100%;border:2px solid #2a2622;border-radius:6px;overflow:hidden;background:#000;box-shadow:0 0 0 6px #100d0b,0 16px 44px rgba(0,0,0,.6)}.bar{gap:8px;margin:14px 0}.bar,.grp{display:flex;flex-wrap:wrap;align-items:center}.grp{gap:6px}.spacer{flex:1 1}.field{margin-bottom:12px}.field label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.45;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;background:#0d0b0a;border:1px solid var(--line);color:var(--cream);border-radius:6px;padding:8px 10px;font:inherit;font-size:13px}.field textarea{min-height:64px;resize:vertical}.field textarea.code{min-height:220px;font-size:12px;line-height:1.55}.swatches{display:flex;gap:6px}.swatches button{width:24px;height:24px;padding:0;border-radius:6px;border:2px solid #0d0b0a}.swatches button.sel{outline:2px solid var(--cream);outline-offset:1px}.hint{font-size:11px;opacity:.5;margin-top:10px;line-height:1.6}.err{color:var(--pink);font-size:12px;margin:8px 0;min-height:1em}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px}.two{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:720px){.two{grid-template-columns:1fr}}