.csw-dialog:not([open]){display:none}
.csw-dialog{width:min(560px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);margin:auto;padding:2rem;border:1px solid var(--line);border-top:5px solid #135fdb;border-radius:1rem;background:#fff;color:#071b34;box-shadow:0 28px 100px #071b343d;overflow-y:auto;overscroll-behavior:contain}
.csw-dialog::backdrop{background:rgba(7,27,52,.62)}
.csw-dialog[open]{animation:csw-enter .18s ease-out}
.csw-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.csw-logo{object-fit:contain;background:#fff;border-radius:50%}
.csw-close{display:flex;align-items:center;gap:.65rem;min-height:44px;background:transparent;border:1px solid #cbd8e5;border-radius:.5rem;padding:.4rem .75rem;color:#344b63;font-size:.85rem;font-weight:700}
.csw-close span:last-child{font-size:1.5rem;line-height:1}
.csw-close:hover{background:#eef6ff}
.csw-eyebrow{color:#135fdb;font-size:.76rem;font-weight:800;line-height:1.6;margin-bottom:1rem}
.csw-dialog h2{font-size:clamp(2rem,6vw,2.9rem);line-height:1.08;letter-spacing:-.035em;color:#071b34;margin:0 0 1.2rem}
.csw-theme{font-size:.87rem;font-weight:700;border-left:3px solid #135fdb;padding-left:.8rem;color:#344b63}
#csw-body{font-size:.96rem;line-height:1.75;color:#52677d;margin:1.25rem 0 1.5rem}
.csw-actions{display:flex;flex-direction:column;gap:.7rem}
.csw-actions .btn{min-height:48px;white-space:normal}
html[data-theme="dark"] .csw-dialog{background:#112335;color:#eef6ff;border-color:#2a4058;border-top-color:#6aaeff}
html[data-theme="dark"] .csw-dialog h2{color:#eef6ff}
html[data-theme="dark"] .csw-eyebrow{color:#6aaeff}
html[data-theme="dark"] .csw-theme,html[data-theme="dark"] #csw-body,html[data-theme="dark"] .csw-close{color:#b8c8d7}
html[data-theme="dark"] .csw-close:hover{background:#15283d}
html[data-theme="dark"] .csw-actions .btn-brand{background:#135fdb;border-color:#135fdb}
body.csw-open{overflow:hidden}
@keyframes csw-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:575.98px){.csw-dialog{padding:1.3rem}.csw-topline{margin-bottom:1rem}.csw-theme{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.csw-dialog[open]{animation:none}}
