/* Core SEO Premium — FAQ and How-to blocks (front end + editor). Inherits the theme's fonts and colours. */

.cseo-faq{ margin:1.5em 0; }
.cseo-faq__item{ border-bottom:1px solid rgba(0,0,0,.12); }
.cseo-faq__item:first-child{ border-top:1px solid rgba(0,0,0,.12); }
.cseo-faq__q{ position:relative; margin:0; padding:.9em 2em .9em 0; font-weight:600; cursor:pointer; list-style:none; }
.cseo-faq__q::-webkit-details-marker{ display:none; }
.cseo-faq__item > .cseo-faq__q::after{ content:"+"; position:absolute; top:50%; right:.25em; font-size:1.3em; font-weight:400; line-height:1; transform:translateY(-50%); }
.cseo-faq__item[open] > .cseo-faq__q::after{ content:"−"; }
.cseo-faq__a{ padding:0 0 1em; }
.cseo-faq__a > :first-child{ margin-top:0; }
.cseo-faq__a > :last-child{ margin-bottom:0; }

.cseo-howto{ margin:1.5em 0; }
.cseo-howto__time{ opacity:.75; font-size:.9em; }
.cseo-howto__steps{ padding-left:1.4em; }
.cseo-howto__step{ margin:0 0 1em; }
.cseo-howto__name{ display:block; margin-bottom:.25em; }
.cseo-howto__text > :first-child{ margin-top:0; }

/* Editor only */
.cseo-blk{ padding:12px 14px; border:1px dashed #c3c4c7; border-radius:8px; }
.cseo-blk__label{ margin-bottom:6px; color:#7c3aed; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.cseo-blk__row{ position:relative; padding:8px 90px 8px 0; border-bottom:1px solid #f0f0f1; }
.cseo-blk .cseo-faq__q{ padding-right:0; }
.cseo-blk__tools{ position:absolute; top:6px; right:0; display:flex; }
.cseo-blk__add{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:10px; }
.cseo-blk__msg{ color:#b32d2e; font-size:12px; }
