/* Contenedor */
.awr-form-wrap { max-width: 560px; margin: 0 auto; font-family: inherit; }

/* Secciones */
.awr-section { margin-bottom: 2rem; }
.awr-section__title { font-size: 1rem; font-weight: 600; margin-bottom: .75rem; color: #1a1a1a; }

/* Importes */
.awr-amounts, .awr-cadences { display: flex; flex-wrap: wrap; gap: .5rem; }

.awr-amount-option input,
.awr-cadence-option input { position: absolute; opacity: 0; width: 0; height: 0; }

.awr-amount-option span,
.awr-cadence-option span {
	display: inline-block; padding: .5rem 1.25rem;
	border: 2px solid #d1d5db; border-radius: 6px;
	cursor: pointer; font-weight: 500; transition: all .15s;
	user-select: none;
}

.awr-amount-option input:checked ~ span,
.awr-cadence-option input:checked ~ span {
	border-color: #2563eb; background: #2563eb; color: #fff;
}

.awr-amount-option span:hover,
.awr-cadence-option span:hover { border-color: #93c5fd; }

/* Selects */
.awr-select {
	width: 100%; max-width: 260px; padding: .5rem .75rem;
	border: 2px solid #d1d5db; border-radius: 6px;
	font-size: 1rem; background: #fff;
}
.awr-select:focus { outline: none; border-color: #2563eb; }
.awr-hint { font-size: .8rem; color: #6b7280; margin-top: .35rem; }

/* Botón principal */
.awr-btn { padding: .65rem 1.5rem; border-radius: 6px; font-size: 1rem; font-weight: 600; cursor: pointer; border: none; transition: background .15s; }
.awr-btn--primary { background: #2563eb; color: #fff; }
.awr-btn--primary:hover:not(:disabled) { background: #1d4ed8; }
.awr-btn--primary:disabled { background: #93c5fd; cursor: not-allowed; }
.awr-btn--secondary { background: #f3f4f6; color: #374151; border: 1px solid #d1d5db; }
.awr-btn--secondary:hover { background: #e5e7eb; }

/* Error */
.awr-error { color: #dc2626; font-size: .9rem; margin-top: .5rem; }

/* Modal overlay */
.awr-modal-overlay {
	position: fixed; inset: 0; background: rgba(0,0,0,.45);
	display: flex; align-items: center; justify-content: center;
	z-index: 99999;
}
.awr-modal {
	background: #fff; border-radius: 10px; padding: 2rem;
	max-width: 420px; width: 90%; box-shadow: 0 20px 60px rgba(0,0,0,.2);
}
.awr-modal__title { font-size: 1.2rem; font-weight: 700; margin-bottom: 1rem; }
.awr-modal__summary ul { list-style: none; padding: 0; margin: 0 0 1rem; }
.awr-modal__summary li { padding: .35rem 0; border-bottom: 1px solid #f3f4f6; font-size: .95rem; }
.awr-modal__question { font-size: 1rem; margin-bottom: 1.5rem; color: #374151; }
.awr-modal__actions { display: flex; gap: .75rem; justify-content: flex-end; }
.awr-modal--wide { max-width: 620px; }
.awr-modal__body { margin-bottom: 1.5rem; }

/* Avisos de estado */
.awr-notice {
	padding: .85rem 1.1rem; border-radius: 6px;
	margin-bottom: 1.5rem; font-size: .95rem;
}
.awr-notice--active	   { background: #dcfce7; border: 1px solid #86efac; color: #166534; }
.awr-notice--cancelled { background: #fef9c3; border: 1px solid #fde047; color: #854d0e; }
.awr-notice--error	   { background: #fee2e2; border: 1px solid #fca5a5; color: #991b1b; }

/* Botón peligro */
.awr-btn--danger { background: #dc2626; color: #fff; border: none; }
.awr-btn--danger:hover:not(:disabled) { background: #b91c1c; }
.awr-btn--danger:disabled { background: #fca5a5; cursor: not-allowed; }

/* Espacio entre botones de acción */
.awr-submit-wrap { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }

/* Tooltip */
.awr-tooltip {
	position: relative; display: inline-flex; align-items: center;
	margin-left: .3rem; cursor: help; vertical-align: middle;
}
.awr-tooltip__icon { color: #9ca3af; transition: color .15s; }
.awr-tooltip:hover .awr-tooltip__icon { color: #6b7280; }
.awr-tooltip::after {
	content: attr(aria-label);
	position: absolute; bottom: calc(100% + 6px); left: 50%;
	transform: translateX(-50%); white-space: normal; width: max-content; max-width: 240px;
	padding: .45rem .65rem; border-radius: 6px;
	background: #1f2937; color: #fff; font-size: .78rem; font-weight: 400; line-height: 1.4;
	pointer-events: none; opacity: 0; transition: opacity .15s;
	z-index: 10;
}
.awr-tooltip:hover::after { opacity: 1; }
