/* Descarga de caso: tarjeta centrada con el formulario. */
.boll-form-descarga { background: var(--boll-color-bg-alt); }
.boll-form-descarga__inner { display: grid; justify-items: center; }
.boll-form-descarga__card {
	width: min(100%, 760px); padding: clamp(1.5rem, 4vw, 2.75rem); border-radius: calc(var(--boll-radius) + 6px);
	background: linear-gradient(160deg, var(--boll-color-surface-2), var(--boll-color-surface));
	border: 1px solid var(--boll-color-border-strong); box-shadow: var(--boll-shadow);
}
.boll-form-descarga__head { margin-bottom: 1.75rem; }
.boll-form-descarga__head .boll-h2 { font-size: clamp(2rem, 4vw, 2.75rem); }

/* Ventana emergente (dialog nativo) */
.boll-modal {
	width: min(100% - 2rem, 760px); max-height: calc(100dvh - 2rem); padding: 0; border: 0; overflow: auto;
	background: transparent; color: var(--boll-color-text);
}
.boll-modal::backdrop { background: color-mix(in srgb, var(--boll-color-bg) 78%, transparent); backdrop-filter: blur(6px); }
.boll-modal[open] { animation: boll-modal-in .35s var(--boll-ease); }
@keyframes boll-modal-in { from { opacity: 0; transform: translateY(18px) scale(.98); } to { opacity: 1; transform: none; } }
.boll-modal .boll-form-descarga { padding: 0; background: transparent; }
.boll-modal .boll-inner { width: 100%; }
.boll-modal__close {
	position: sticky; top: .75rem; float: right; margin: .75rem .75rem -3.25rem 0; z-index: 2;
	display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; cursor: pointer;
	border: 1px solid var(--boll-color-border-strong); background: var(--boll-color-surface-2); color: var(--boll-color-text);
	transition: background .25s, transform .3s var(--boll-ease);
}
.boll-modal__close svg { width: 1.1rem; height: 1.1rem; }
.boll-modal__close:hover { background: var(--boll-color-primary); transform: rotate(90deg); }
@media (prefers-reduced-motion: reduce) { .boll-modal[open] { animation: none; } }
