strong { font-weight: 600; }

.d-flex-gap-2 > * + * { margin-left: .5rem; }
.d-flex-gap-3 > * + * { margin-left: 1rem; }

.ec-modal .modal-content { border: 1px solid #e2e8f0; border-radius: 18px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.25); }

/* Modal Header */
.ec-modal .modal-header { background: linear-gradient(135deg, #12197A 0%, #1c2599 60%, rgba(18,25,122,.95) 100%); color: #fff; padding: 15px; border-bottom: none; position: relative; }
.ec-modal .modal-header::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; background: linear-gradient(90deg, #ffc107, #ffd761, #ffc107); }
.ec-modal .modal-header .ec-badge { display:inline-flex; align-items:center; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.2); border-radius: 999px; padding: .35rem .7rem; font-size:.8rem; }
.ec-modal .modal-header .ec-badge i { margin-right:.5rem; }
.ec-modal .modal-header .ec-title { color: #ffffff; margin: .4rem 0 .2rem 0; font-weight: 700; letter-spacing:.2px; }
.ec-modal .modal-header .ec-subtitle { color: #ffffff; margin: 0 0 0 0; opacity:.85; font-size:.8rem; }

/* Modal Body */
.ec-modal .modal-body { padding: .8rem 1.25rem; }
.ec-modal .modal-body .ec-meta { display:flex; flex-wrap:wrap; font-size:13px; }
.ec-modal .modal-body .ec-meta > * { margin-right: 1rem; margin-bottom: 0; }
.ec-modal .modal-body .ec-dot { width:.5rem; height:.5rem; background: #ffc107; border-radius:50%; display:inline-block; margin-right:.35rem; }
.ec-modal .modal-body #ec-content { background: #ffffff; border-radius: 14px; padding: 16px; }
.ec-modal .modal-body #ec-content .ecp-kicker { font-size: .8rem; text-transform: uppercase; letter-spacing: .12em; color: #12197A; font-weight: 700; margin-bottom: .35rem; }
.ec-modal .modal-body #ec-content .ecp-heading { display: flex; align-items: center; margin: 0 0 .75rem 0; font-weight: 800; letter-spacing: .2px; }
.ec-modal .modal-body #ec-content .ecp-dot { width:.6rem; height:.6rem; border-radius:999px; background: linear-gradient(135deg,#ffc107,#ffd761); display:inline-block; margin-right:.5rem; }
.ec-modal .modal-body #ec-content .ecp-lead { color: #64748b; margin: .25rem 0 1rem; line-height: 1.65; }
.ec-modal .modal-body #ec-content .ecp-section { border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; padding: 14px; margin-bottom: 12px; }
.ec-modal .modal-body #ec-content .ecp-section.highlight { border-left: 4px solid #12197A; background: #eef2ff; }
.ec-modal .modal-body #ec-content .ecp-title { font-size: 1.02rem; font-weight: 700; margin: 0 0 .6rem 0; color: #0f172a; }
.ec-modal .modal-body #ec-content p { margin: 0 0 .6rem 0; font-size: 15px !important; line-height: 23px !important; }
.ec-modal .modal-body #ec-content ul, .ec-modal .modal-body #ec-content ol { margin: 0 0 .5rem 1.25rem; }
.ec-modal .modal-body #ec-content li { font-size: 15px !important; line-height: 23px !important; margin: .25rem 0; }
.ec-modal .modal-body #ec-content .ecp-note { border: 1px dashed #e2e8f0; background: #fffdf5; border-radius: 10px; padding: .75rem .9rem; font-size: .95rem; }
.ec-modal .modal-body #ec-content .ecp-toc { border: 1px solid #e2e8f0; border-radius: 10px; padding: .75rem .9rem; background: #eff0f7; margin-bottom: .9rem; }
.ec-modal .modal-body #ec-content .ecp-toc h4 { font-size: .95rem; margin: 0 0 .4rem 0; font-weight: 700; color:#111827; }
.ec-modal .modal-body #ec-content .ecp-toc a { display: block; font-size: .87rem; color: #0f172a; text-decoration: none; margin: 0; }
.ec-modal .modal-body #ec-content .ecp-toc a:hover { text-decoration: underline; }
.ec-modal .modal-body #ec-content .ecp-badge { display:inline-flex; align-items:center; background: rgba(18,25,122,.06); border: 1px solid rgba(18,25,122,.12); color: #12197A; border-radius: 999px; padding: .22rem .55rem; font-size: .78rem; font-weight: 700; }

@media (max-width: 576px) {
    #ec-content { padding: 14px; }
}

/* Modal Footer */
.ec-modal .modal-footer { border-top:none; padding: 1rem 1.25rem 1.25rem; }
.ec-modal .modal-footer .btn-ec-primary { background: #12197A; border: none; color:#fff; font-weight:700; border-radius:12px; padding:.65rem 1rem; }
.ec-modal .modal-footer .btn-ec-primary:hover { filter: brightness(.95); color:#fff; }