
:root { --bg:#0f172a; --panel:#111827; --card:#1f2937; --muted:#9ca3af; --primary:#10b981; --primary-dark:#059669; --text:#f9fafb; --border:#374151; }
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
.app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--panel)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px}
.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px}
.card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px}
button{border:1px solid var(--border);background:var(--card);color:var(--text);padding:8px 12px;border-radius:6px;cursor:pointer}
button.primary{background:var(--primary);border-color:var(--primary-dark);color:black;font-weight:600}
button.primary:disabled,button.secondary:disabled{opacity:.5;cursor:not-allowed}
.row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}
input,select,textarea{background:#0b1020;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px}
.preview-wrapper{height:calc(100vh - 220px);background:#0b1020;border:1px dashed var(--border);border-radius:8px}
#previewFrame{width:100%;height:100%;border:0;background:white}
