/* Páginas estándar del portal (Mis facturas, Mis pedidos y su detalle) con la marca del
   portal del empresario. lectores-portal.js marca el <body> con .lec-portal-estandar. */
.lec-portal-estandar {
	--lec-tinta: #17324d;
	--lec-magenta: #d40a78;
	--lec-suave: #5b6b7c;
	--lec-linea: #dde4ec;
	--lec-papel: #f6f8fb;
	background: var(--lec-papel);
	color: var(--lec-tinta);
}
.lec-portal-estandar .page-content-wrapper > main.container { max-width: 1180px; padding-bottom: 4rem; }
.lec-portal-estandar .page-header-wrapper .my-account-header { display: none; }
.lec-portal-cabecera {
	align-items: end;
	background: radial-gradient(90% 120% at 100% 0%, rgba(46, 90, 135, 0.55) 0%, transparent 60%), linear-gradient(160deg, var(--lec-tinta) 0%, #10273c 100%);
	border-radius: 18px;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: space-between;
	margin: 1.5rem 0;
	padding: clamp(1.1rem, 3vw, 1.9rem);
}
.lec-portal-cabecera p {
	color: #f9a8d4;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin: 0 0 0.3rem;
	text-transform: uppercase;
}
.lec-portal-cabecera h1 {
	color: #fff;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, "Iowan Old Style", "URW Palladio L", P052, Georgia, serif;
	font-size: clamp(1.5rem, 4vw, 2.2rem);
	letter-spacing: -0.02em;
	margin: 0;
}
.lec-portal-cabecera nav { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.lec-portal-cabecera nav a {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	color: #fff;
	font-size: 0.85rem;
	font-weight: 600;
	padding: 0.4rem 0.9rem;
	text-decoration: none;
	white-space: nowrap;
}
.lec-portal-cabecera nav a:hover { border-color: #fff; text-decoration: none; }
.lec-portal-cabecera nav a[aria-current="page"] { background: var(--lec-magenta); border-color: var(--lec-magenta); }
/* Barra lateral estándar del portal */
.lec-portal-estandar .web-sidebar .sidebar-item a,
.lec-portal-estandar .web-sidebar a { color: var(--lec-suave); border-radius: 8px; }
.lec-portal-estandar .web-sidebar a.active,
.lec-portal-estandar .web-sidebar .active a { color: var(--lec-magenta); font-weight: 700; }
/* Filas de la lista como tarjetas */
.lec-portal-estandar .website-list { background: transparent; }
.lec-portal-estandar .page_content .web-list-item,
.lec-portal-estandar .page_content .transaction-list-item {
	background: #fff;
	border: 1px solid var(--lec-linea);
	border-radius: 14px;
	margin-bottom: 0.6rem;
	padding: 0.9rem 1.1rem;
	position: relative;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.lec-portal-estandar .page_content .web-list-item:hover {
	border-color: var(--lec-magenta);
	box-shadow: 0 4px 14px rgba(23, 50, 77, 0.08);
}
.lec-portal-estandar .list-item-name { color: var(--lec-tinta); }
/* El título completo debe poder ocupar las líneas que necesite. */
.lec-portal-estandar .items-preview.ellipsis {
	display: block;
	line-height: 1.35;
	max-width: none;
	overflow: visible;
	white-space: normal;
}
.lec-portal-estandar .item-total { color: var(--lec-tinta); font-size: 1.05rem; }
/* Detalle de un documento */
.lec-portal-estandar .order-container {
	background: #fff;
	border: 1px solid var(--lec-linea);
	border-radius: 14px;
	padding: clamp(1rem, 2vw, 1.5rem);
}
.lec-portal-estandar .btn-primary { background: var(--lec-magenta); border-color: var(--lec-magenta); }
/* Lista vacía con ayuda */
.lec-portal-estandar .empty-apps-state {
	background: #fff;
	border: 1px dashed var(--lec-linea);
	border-radius: 14px;
	color: var(--lec-suave);
	padding: 2.5rem 1rem;
	text-align: center;
}
.lec-portal-estandar .empty-apps-state .lec-portal-ayuda { font-size: 0.9rem; margin: 0.35rem auto 1rem; max-width: 48ch; }
.lec-portal-estandar .empty-apps-state a {
	background: var(--lec-magenta);
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	font-weight: 600;
	padding: 0.45rem 1rem;
	text-decoration: none;
}
@media (max-width: 575px) {
	.lec-portal-cabecera { border-radius: 14px; margin: 1rem 0; }
}

/* Marcapáginas de Club Lectores en la cabecera. */
.lec-portal-cabecera { overflow: hidden; padding-right: clamp(1.25rem, 3vw, 2.25rem); position: relative; }
.lec-portal-cabecera::before {
	background: linear-gradient(90deg, #b5126a 0 12%, var(--lec-magenta) 12% 88%, #b5126a 88%);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.25);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 84%, 0 100%);
	content: "";
	height: 76px;
	position: absolute;
	right: 36px;
	top: 0;
	width: 30px;
}
.lec-portal-cabecera > * { position: relative; z-index: 1; }
.lec-portal-cabecera > :first-child { padding-right: 56px; }
@media (prefers-reduced-motion: no-preference) {
	.lec-portal-cabecera::before { animation: lec-cinta 700ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }
}
@keyframes lec-cinta {
	from { transform: translateY(-100%); }
	70% { transform: translateY(4%); }
	to { transform: translateY(0); }
}
