.editor-shell{max-width:1260px;margin:auto;padding:2rem}.editor-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin:1rem 0 2rem}.editor-heading h1{font-size:clamp(2.5rem,4vw,4rem);margin:0}.editor-heading p{margin-bottom:.5rem}.editor-heading .eyebrow{margin-bottom:.7rem}.workspace{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1fr);border:2px solid var(--ink);box-shadow:8px 8px 0 #ed5824}.controls{padding:1.8rem;border-right:2px solid var(--ink);background:#fffdf7}.controls label{display:block;font-weight:700;margin:.9rem 0 .4rem}.controls label:first-child{margin-top:0}select,textarea{width:100%;padding:.75rem;background:white;border:1px solid #7f8b90;border-radius:0;color:var(--ink);font:inherit;line-height:1.4}textarea{resize:vertical;min-height:4.5rem}button,select{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.field-hint{font-size:.875rem;color:#53616a;line-height:1.5}.controls span.field-hint{display:block;text-align:right}.editor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.3rem}.editor-actions .button{margin:0;font:inherit;font-weight:700;padding:.9rem 1rem}.button:disabled{opacity:.5;cursor:wait}.reset{border:0;background:none;text-decoration:underline;color:var(--ink);padding:.4rem 0;font:inherit;font-size:.9rem}#feedback{font-size:.9rem;margin:1rem 0;min-height:1.5rem}.preview-panel{padding:1.5rem;background:#e5e7df}.preview-label{display:flex;justify-content:space-between;gap:1rem;font-family:ui-monospace,monospace;font-size:.8rem;margin-bottom:1rem}canvas{display:block;width:100%;height:auto;box-shadow:0 8px 25px #092a3b22;background:#fff8e7}.preview-text{font-size:1rem;margin:1rem 0 .5rem;overflow-wrap:anywhere}.editor-bottom{max-width:760px;padding:3rem 0}.editor-bottom h2{font-size:2rem}.editor-bottom p{font-size:1rem}.noscript{padding:1rem;border:2px solid var(--orange)}@media(max-width:760px){.editor-shell{padding:1.2rem}.editor-heading{display:block}.editor-heading>p{margin-top:1rem}.workspace{grid-template-columns:1fr;box-shadow:5px 5px 0 #ed5824}.controls{border-right:0;border-bottom:2px solid var(--ink);padding:1.2rem}.preview-panel{padding:1rem}.preview-label{font-size:.75rem}.editor-bottom{padding:2.5rem 0}header{flex-wrap:wrap}.editor-heading h1{font-size:2.8rem}}