/* Invbit MASC Online — estilos del front (área de cliente y shortcodes). */

.imasc-balance-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 1.25rem;
	margin-bottom: 1.5rem;
	background: #f4f7fb;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
}

.imasc-balance-value {
	font-size: 1.5rem;
	font-weight: 700;
	margin-left: .35rem;
}

.imasc-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: flex-end;
	margin-bottom: 1.5rem;
}

.imasc-filters .form-row {
	margin: 0;
}

.imasc-filters label {
	display: block;
	font-size: .85rem;
	font-weight: 600;
	margin-bottom: .25rem;
}

.imasc-table {
	width: 100%;
}

.imasc-status {
	display: inline-block;
	padding: .2rem .6rem;
	border-radius: 999px;
	font-size: .8rem;
	font-weight: 600;
	background: #e2e8f0;
	color: #334155;
}

.imasc-status--iniciada,
.imasc-status--invitacion {
	background: #fef3c7;
	color: #92400e;
}

.imasc-status--aceptada,
.imasc-status--en_proceso,
.imasc-status--vista {
	background: #dbeafe;
	color: #1e40af;
}

.imasc-status--finalizada_acuerdo {
	background: #dcfce7;
	color: #166534;
}

.imasc-status--finalizada_sin_acuerdo {
	background: #fee2e2;
	color: #991b1b;
}

.imasc-status--cancelada {
	background: #e5e7eb;
	color: #6b7280;
}

.imasc-detail-header {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.imasc-cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
}

@media (max-width: 768px) {
	.imasc-cols {
		grid-template-columns: 1fr;
	}

	.imasc-balance-bar {
		flex-direction: column;
		align-items: flex-start;
	}
}

.imasc-card {
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 1.25rem;
	margin-bottom: 1.25rem;
	background: #fff;
}

.imasc-card h3 {
	margin-top: 0;
}

.imasc-data {
	list-style: none;
	margin: 0;
	padding: 0;
}

.imasc-data li {
	padding: .25rem 0;
}

.imasc-docs {
	list-style: none;
	margin: 0;
	padding: 0;
}

.imasc-docs li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: .5rem 0;
	border-bottom: 1px solid #f1f5f9;
}

.imasc-doc-date {
	color: #94a3b8;
	font-size: .85rem;
}

.imasc-timeline {
	list-style: none;
	margin: 0;
	padding: 0;
}

.imasc-timeline li {
	padding: .65rem 0 .65rem 1.25rem;
	border-left: 2px solid #cbd5e1;
	margin-left: .5rem;
}

.imasc-timeline-date {
	display: block;
	font-size: .8rem;
	color: #94a3b8;
}

.imasc-timeline-status {
	font-weight: 600;
}

.imasc-timeline-note {
	display: block;
	color: #475569;
}

/* Formulario */
.imasc-form fieldset {
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 1.25rem;
	margin-bottom: 1.5rem;
}

.imasc-form legend {
	font-weight: 700;
	padding: 0 .5rem;
}

.imasc-form .form-row {
	margin-bottom: 1rem;
}

.imasc-form label {
	display: block;
	font-weight: 600;
	margin-bottom: .3rem;
}

.imasc-form input[type="text"],
.imasc-form input[type="email"],
.imasc-form textarea {
	width: 100%;
}

.imasc-help {
	display: block;
	font-size: .8rem;
	color: #94a3b8;
	margin-top: .25rem;
}

/* Pricing & pasos */
.imasc-pricing {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1rem;
}

.imasc-plan {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1.5rem;
	text-align: center;
	background: #fff;
}

.imasc-plan-price {
	font-size: 1.75rem;
	font-weight: 800;
	margin: .5rem 0;
}

.imasc-plan-credits {
	color: #475569;
	margin-bottom: 1rem;
}

.imasc-steps {
	display: grid;
	gap: 1rem;
}

.imasc-step {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
}

.imasc-step-num {
	flex: 0 0 auto;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: #1e40af;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
}

.imasc-step-body h3 {
	margin: 0 0 .25rem;
}

/* ===== Packs dinámicos (estética portada Caramés) ===== */
.imasc-packs {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	align-items: stretch;
	justify-content: center;
}

.imasc-pack {
	flex: 1 1 calc(33.333% - 16px);
	max-width: calc(33.333% - 16px);
	background: #FCFCFC;
	border: 1px solid #ebe6d7;
	border-radius: 24px;
	padding: 32px;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

.imasc-pack-img {
	margin: 18px 0 0;
}

.imasc-pack-img img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	border-radius: 16px;
	display: block;
	margin: 0;
}

.imasc-pack-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.imasc-pack-name {
	font-family: "Instrument Serif", serif !important;
	font-weight: 400 !important;
	font-size: 34px !important;
	line-height: 1.05 !important;
	color: #1D1D1C !important;
	margin: 0 !important;
	flex: 1 1 auto;
}

.imasc-pack-price {
	display: inline-block;
	white-space: nowrap;
	border: 1px solid #8C8C88;
	border-radius: 2000px;
	padding: 6px 16px;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	color: #1D1D1C;
}

.imasc-pack-price del {
	color: #8C8C88;
	margin-right: 6px;
	font-size: .85em;
}

.imasc-pack-price ins {
	text-decoration: none;
}

.imasc-pack-label {
	font-family: "Inter", sans-serif;
	color: #8C8C88;
	font-size: 14px;
	margin: 0 0 6px;
}

.imasc-pack-ideal {
	font-family: "Inter", sans-serif;
	color: #494946;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0 0 18px;
}

.imasc-pack-feat {
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
}

.imasc-pack-feat li {
	position: relative;
	padding: 0 0 0 20px;
	margin: 6px 0;
	font-family: "Inter", sans-serif;
	font-size: 15px;
	color: #494946;
}

.imasc-pack-feat li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #3D65DF;
}

.imasc-pack-btn {
	margin-top: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	background: #3D65DF !important;
	background-image: none !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 2000px !important;
	padding: 10px 22px 10px 10px !important;
	font-family: "Inter", sans-serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	align-self: flex-start;
}

.imasc-pack-btn:before {
	content: "\2192";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .22);
	font-size: 17px;
	line-height: 1;
}

.imasc-pack-btn:hover {
	background: #2F51BC !important;
}

.imasc-pack-btn.added {
	opacity: .85;
}

.imasc-pack .added_to_cart {
	display: none;
}

@media(max-width:959px) {
	.imasc-pack {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

/* ===== CTA contextual «Iniciar mediación» ===== */
.imasc-iniciar {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	background: #F7F5EE;
	border: 1px solid #ebe6d7;
	border-radius: 20px;
	padding: 24px 28px;
	max-width: 760px;
	margin: 0 auto;
}

.imasc-iniciar-txt {
	font-family: "Inter", sans-serif;
	color: #1D1D1C;
	font-size: 18px;
	margin: 0;
}

.imasc-iniciar .imasc-pack-btn {
	margin: 0;
}

/* ===== Iconos del menú «Mi cuenta» para los endpoints de mediación ===== */
.woocommerce .woocommerce-MyAccount-navigation-link--mediaciones a:before {
	content: "\e85d";
}

.woocommerce .woocommerce-MyAccount-navigation-link--nueva-mediacion a:before {
	content: "\e8fb";
}