/* Buttons */
.ctaf-btn{ width:100%; min-height:24px; display:flex; align-items:center; justify-content:center; padding:1rem 1.25rem; border-radius:var(--rad,16px); background:var(--bg,#10b981); color:var(--fg,#fff); font-weight:700; text-decoration:none; box-shadow:0 8px 22px rgba(0,0,0,.08); }
.ctaf-text{ display:block; }
.ctaf-stack > .ctaf-wrap + .ctaf-wrap{ margin-top:12px; }

/* Titles and policy */
.ctaf-title{ font-weight:700; text-align:center; color:#111827; }
.ctaf-policy{ font-size:.875rem; color:#6b7280; text-align:center; }

/* Group layouts */
.ctaf-group{ display:grid; gap:12px; justify-items:center; width:100%; }
.ctaf-group.width-full .ctaf-stack{ width:100%; }
.ctaf-group.width-center .ctaf-stack{ width:min(720px,100%); }

/* Fill-screen */
.ctaf-stack.ctaf-fill{ min-height:100vh; display:flex; flex-direction:column; gap:14px; }
.ctaf-stack.ctaf-fill > .ctaf-wrap{ flex:1; display:flex; }
.ctaf-stack.ctaf-fill > .ctaf-wrap > .ctaf-btn{ flex:1; display:flex; align-items:center; }

/* Modal */
.ctaf-modal{ position:fixed; inset:0; background:rgba(17,24,39,.35); display:flex; align-items:center; justify-content:center; padding:24px; z-index:9999; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.ctaf-center{ background:rgba(255,255,255,.95); border-radius:16px; padding:20px; width:min(92vw,760px); box-shadow:0 20px 60px rgba(0,0,0,.25); }
.ctaf-in-modal .ctaf-title{ text-align:center; }

/* Editor buttons */
.editor-styles-wrapper .ctaf-add{ margin:10px auto 0; }
.editor-styles-wrapper .ctaf-remove{ margin-top:6px; }