.workspace{overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.workspace .panel{min-width:0;padding:var(--space)}
.columns>.panel+.panel{border-left:1px solid var(--line);background:var(--paper)}
.workspace label{display:block;margin-bottom:10px;font-weight:650}
.workspace textarea,.workspace input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit}
.workspace textarea{min-height:260px;resize:vertical;font: .9rem/1.6 ui-monospace,monospace}
.workspace input[type=number]{max-width:130px}
.workspace textarea:focus-visible,.workspace input:focus-visible,.workspace button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}
.workspace button,.pricing button{font:inherit;font-weight:650;border:1px solid var(--accent);border-radius:var(--radius);padding:10px 14px;background:var(--accent);color:var(--accent-contrast);cursor:pointer}
.workspace button.secondary{background:var(--surface);color:var(--ink)}
.workspace button:disabled,.pricing button:disabled{opacity:.55;cursor:default}
.hint{color:var(--muted);font-size:.85rem}
#status{margin:0;padding:14px var(--space);border-top:1px solid var(--line)}
#issues{margin:0;padding:0 var(--space) 18px calc(var(--space) + 20px);max-height:220px;overflow:auto;color:var(--ink)}
.mapping{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:var(--space)}
.mapping-row{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:6px 10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}
.mapping-row label{margin:0;font-size:.82rem}
.mapping-row input{min-width:0;padding:8px}
.explain,.faq{padding:24px 0;border-bottom:1px solid var(--line)}
.faq details{padding:14px 0;border-bottom:1px solid var(--line)}
.faq summary{font-weight:650;cursor:pointer}
.pricing{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:32px 0}
.pricing p{max-width:650px}
@media(max-width:700px){.columns,.mapping{grid-template-columns:1fr}.columns>.panel+.panel{border-left:0;border-top:1px solid var(--line)}.workspace .panel{padding:18px}.pricing{display:block}}
