:root{--text:#584f5f;--text-h:#140f1b;--bg:#f5f0ea;--border:#140f1b1a;--accent:#c64cff;--accent-border:#c64cff47;--shadow:#140f1b14 0 20px 40px -12px, #140f1b0f 0 8px 20px -12px;color:var(--text);background:radial-gradient(circle at top left, #c64cff33, transparent 36%), radial-gradient(circle at bottom right, #ff7c4d33, transparent 32%), var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100svh}button,input{font:inherit}h1{color:var(--text-h);letter-spacing:-.04em;margin:0;font-size:clamp(2.4rem,5vw,4.5rem);line-height:1}p{margin:0}.app-shell{box-sizing:border-box;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:24px;min-height:100svh;padding:32px;display:grid}.panel,.preview{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);background:#ffffffb8;border-radius:24px}.panel{flex-direction:column;justify-content:center;gap:18px;padding:32px;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin:0;font-size:.78rem;font-weight:700}.lede{max-width:42ch}.composer{gap:12px;max-width:34rem;display:grid}.composer label{color:var(--text-h);font-weight:600}.composer input{box-sizing:border-box;border:1px solid var(--border);width:100%;font:inherit;color:var(--text-h);background:var(--bg);border-radius:14px;padding:14px 16px}.composer input:focus-visible,.composer button:focus-visible{outline:3px solid var(--accent-border);outline-offset:2px}.composer button{background:linear-gradient(135deg, var(--accent), #ff7c4d);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;justify-self:start;padding:14px 20px;font-weight:700}.composer button:disabled{opacity:.65;cursor:wait}.status{color:var(--text);min-height:1.5em}.preview{place-items:center;padding:20px;display:grid}.preview img{border:1px solid var(--border);background:#fff;border-radius:18px;width:100%;height:auto;display:block}.placeholder{border:1px dashed var(--border);text-align:center;box-sizing:border-box;width:100%;min-height:100%;color:var(--text);border-radius:18px;place-items:center;padding:24px;display:grid}@media (width<=900px){.app-shell{grid-template-columns:1fr;padding:16px}.panel,.preview{padding:20px}.composer button{justify-self:stretch;width:100%}}
