:root{--cbap-bg:#071024;--cbap-panel:#0b1429;--cbap-line:#26314a;--cbap-text:#f7f9ff;--cbap-muted:#8e9ab6;--cbap-blue:#3768f2}
.cbap-open{border:0;border-radius:8px;background:var(--cbap-blue);color:#fff;padding:.8rem 1.2rem;font-weight:700;cursor:pointer}
.cbap-overlay{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.cbap-overlay.is-open{display:flex}
.cbap-backdrop{position:absolute;inset:0;background:rgba(2,7,20,.74);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.cbap-modal{position:relative;display:grid;grid-template-columns:1fr 1fr;width:min(820px,100%);background:var(--cbap-bg);border:1px solid var(--cbap-line);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.45);overflow:hidden;color:var(--cbap-text);font-family:inherit}
.cbap-main,.cbap-secondary{padding:34px}
.cbap-main{border-right:1px solid var(--cbap-line)}
.cbap-eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:#74819f}
.cbap-feature{display:flex;min-height:360px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;border:1px solid #1d2b49;border-radius:20px;background:linear-gradient(180deg,#10254e 0%,#0a142a 100%);color:inherit;text-decoration:none}
.cbap-feature:hover{transform:translateY(-2px);box-shadow:0 18px 35px rgba(0,0,0,.2)}
.cbap-feature-icon{display:grid;place-items:center;width:96px;height:96px;border-radius:20px;background:linear-gradient(135deg,#4488ff,#39d6e4);margin-bottom:24px}
.cbap-feature-icon svg{width:48px;height:48px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cbap-feature h2{margin:0 0 12px;font-size:34px;line-height:1.1;color:#fff}
.cbap-feature p{margin:0;max-width:280px;color:#aab5cf;line-height:1.55}
.cbap-primary-btn{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;margin-top:28px;padding:15px 20px;border-radius:12px;background:#3968ef;color:#fff;font-weight:800}
.cbap-secondary{display:flex;flex-direction:column}
.cbap-list{display:grid;gap:14px}
.cbap-item{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid #2a3247;border-radius:14px;background:#171d2f;color:#fff;text-decoration:none;transition:.2s ease}
.cbap-item:hover{transform:translateX(3px);border-color:#3a4a70;background:#1b243a}
.cbap-item-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;border:1px solid currentColor;background:rgba(255,255,255,.04);flex:0 0 auto}
.cbap-item-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cbap-item span:last-child{display:flex;flex-direction:column;min-width:0}.cbap-item strong{font-size:16px}.cbap-item small{margin-top:3px;color:var(--cbap-muted);font-size:13px}
.cbap-blue{color:#63a3ff}.cbap-green{color:#27d6a1}.cbap-purple{color:#b67cff}.cbap-pink{color:#ff62ad}.cbap-item strong{color:#fff}
.cbap-help{margin-top:auto;padding-top:24px;color:#9bb4ff;text-decoration:none;font-size:14px}
.cbap-close{position:absolute;top:14px;right:16px;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid #2a3654;background:#101a31;color:#fff;font-size:26px;line-height:1;cursor:pointer}
body.cbap-lock{overflow:hidden}
@media (max-width:760px){.cbap-overlay{padding:12px;align-items:flex-start;overflow:auto}.cbap-modal{grid-template-columns:1fr;margin:18px 0}.cbap-main{border-right:0;border-bottom:1px solid var(--cbap-line)}.cbap-main,.cbap-secondary{padding:24px}.cbap-feature{min-height:auto;padding:28px 22px}.cbap-feature h2{font-size:28px}.cbap-feature-icon{width:78px;height:78px}.cbap-help{margin-top:20px}}
@media (prefers-reduced-motion:no-preference){.cbap-feature,.cbap-item{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}}

/* Affichage intégré directement dans une page WordPress */
.cbap-modal.cbap-inline{position:relative;width:100%;max-width:980px;margin:24px auto;overflow:hidden;box-sizing:border-box}
.cbap-inline .cbap-secondary{justify-content:flex-start}
@media (max-width:760px){.cbap-modal.cbap-inline{margin:16px auto}}
