\
/* Base tokens */
.lp-faq{--gap:1rem;--radius:14px;--border:1px solid #e5e7eb;--bg:#fff;--muted:#6b7280;}

/* Search */
.lp-faq__search{margin-bottom:var(--gap);} 
.lp-faq__search input[type="search"]{width:100%;padding:.9rem 1.1rem;border:var(--border);border-radius:var(--radius);}

/* Filters */
.lp-faq__filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.25rem;}
.lp-faq__filter{background:#f5f7fb;border:1px solid #cdd6e6;border-radius:999px;padding:.45rem 1rem;font-size:.9rem;cursor:pointer;transition:all .2s ease;color:#243046}
.lp-faq__filter:hover{background:#e9eef8;border-color:#bfcbe2;color:#1f2a3b}
.lp-faq__filter.is-active{background:#004f9f;border-color:#004085;color:#fff;font-weight:600;box-shadow:0 0 0 2px rgba(0,79,159,.08) inset}

/* List + items */
.lp-faq__list{display:grid;gap:.75rem}
.lp-faq__item{border:var(--border);border-radius:var(--radius);background:var(--bg);} /* removed inner padding */
.lp-faq__item[open]{box-shadow:0 2px 12px rgba(0,0,0,.04)}

/* Question row */
.lp-faq__q{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.75rem;cursor:pointer;padding:1rem 1.25rem;font-weight:600;border-radius:.5rem;}
.lp-faq__q::-webkit-details-marker{display:none}
.lp-faq__icon{transition:transform .2s ease}
.lp-faq__item[open] .lp-faq__icon{transform:rotate(180deg)}

/* Answer container with minimalist animation */
.lp-faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s ease;}
.lp-faq__item[open] .lp-faq__a{grid-template-rows:1fr;}
.lp-faq__a-inner{min-height:0;overflow:hidden;padding:1rem 1.25rem;border-top:1px solid rgba(0,0,0,.06);color:#111827}

/* Empty state */
.lp-faq__empty{color:var(--muted)}

/* Highlight */
mark{padding:0 .15em;border-radius:.25em}


/* Base buttons/icon buttons */
.lp-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;cursor:pointer}
.lp-btn--primary{background:#0b5fad;color:#fff;border-color:#0b5fad}
.lp-btn--ghost{background:#fff;color:#374151}
.lp-iconbtn{width:36px;height:36px;border-radius:999px;padding:0;border:none;display:inline-flex;align-items:center;justify-content:center;background:#0b5fad;color:#fff;box-shadow:0 4px 10px rgba(0,0,0,.15);cursor:pointer}
.lp-iconbtn--delete{background:#b91c1c}
.lp-iconbtn img{width:16px;height:16px;display:block;pointer-events:none}

/* Accent + toolbar */
.lp-faq{ --lp-accent:#0b5fad; }
.lp-faq__toolbar{ display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; width:100%; margin-bottom:1rem; }
.lp-faq__toolbar .lp-faq__search{ flex:1 1 520px; height:44px; min-width:260px; }
.lp-faq__toolbar .lp-btn{ margin-left:auto; height:44px; }

/* Question header blue, answer white */
.lp-faq__item .lp-faq__q{ background:var(--lp-accent); color:#fff; border-radius:14px; padding:14px 16px; position:relative; padding-right:96px; }
.lp-actions{ position:absolute; top:10px; right:12px; display:flex; gap:.4rem; z-index:3; }
.lp-faq__item[open] .lp-faq__q{ box-shadow:0 6px 24px rgba(0,0,0,.15); }
.lp-faq__a{ background:#fff; border-radius:12px; padding:14px 16px; margin:8px 4px 14px 4px; }

/* Filters (basic) */
.lp-faq__filters button{ height:30px; padding:0 .6rem; border-radius:999px; border:1px solid #e5e7eb; background:#fff; cursor:pointer; }
.lp-faq__filters button.is-active{ background:var(--lp-accent); color:#fff; border-color:transparent; }

/* Modal styles */
.lp-modal{position:fixed;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.35);z-index:9999}
.lp-modal__dialog{background:#fff;border-radius:14px;max-width:720px;width:95vw;max-height:92vh;display:flex;flex-direction:column;overflow:hidden}
.lp-modal__title{margin:0;padding:14px 16px 0 16px;font-size:20px}
.lp-modal__body{padding:12px 16px;overflow:auto}
.lp-modal__actions{display:flex;gap:.5rem;justify-content:flex-end;padding:10px 16px 16px}
.lp-modal__close{position:absolute;right:12px;top:12px;width:32px;height:32px;border-radius:999px;background:#0b5fad;color:#fff;border:none;cursor:pointer}
.lp-field{display:flex;flex-direction:column;gap:.4rem;margin:0 0 .75rem}
.lp-field input.lp-inp,.lp-field textarea.lp-txa,.lp-field select.lp-sel{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:.6rem .7rem}
.lp-field textarea.lp-txa{min-height:140px;resize:vertical}
