/* Portal clientes ARVET. Se carga después del CSS corporativo de /css/ */
*{box-sizing:border-box}
:root{
	--clientes-blue:#174a76;
	--clientes-blue-dark:#103957;
	--clientes-blue-soft:#eaf3fb;
	--clientes-text:#263238;
	--clientes-muted:#667085;
	--clientes-line:#e1e7ef;
	--clientes-bg:#f5f7fb;
	--clientes-white:#fff;
	--clientes-danger:#b42318;
	--cofearfe-orange:#f49a1a;
	--cofearfe-red:#c61b2c;
	--aseban-green:#b0b337;
	--arvet-purple:#7a78bd;
	--asfel-turquoise:#67c0c4;
	--asfel-blue:#0d4a7d;
}
.clientes-body,
body{
	margin:0;
	font-family:Arial,Helvetica,sans-serif;
	background:var(--clientes-bg);
	color:var(--clientes-text);
}
a{color:var(--clientes-blue);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1180px,calc(100% - 36px));margin:0 auto}

/* Index */
.clientes-header{background:#fff;border-bottom:1px solid var(--clientes-line);position:relative;z-index:5}
.clientes-nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.clientes-brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.clientes-brand img{height:44px;width:auto;display:block}
.clientes-brand span{font-size:20px;font-weight:900;color:var(--clientes-blue-dark)}
.clientes-header-text{font-size:13px;font-weight:700;color:var(--clientes-muted)}
.clientes-hero{
	position:relative;
	overflow:hidden;
	background:
		linear-gradient(135deg,rgba(23,74,118,.97),rgba(26,119,171,.88)),
		var(--clientes-blue);
	color:#fff;
	padding:74px 0 64px;
}
.clientes-hero:before,.clientes-hero:after{content:"";position:absolute;border-radius:50%;opacity:.17;pointer-events:none}
.clientes-hero:before{width:340px;height:340px;background:var(--cofearfe-orange);right:-110px;top:-120px}
.clientes-hero:after{width:260px;height:260px;background:var(--arvet-purple);left:-80px;bottom:-120px}
.clientes-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:38px;align-items:center;position:relative;z-index:1}
.clientes-eyebrow{margin:0 0 10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:#bfeaff}
.clientes-hero h1{margin:0 0 18px;font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-1.6px;color:#fff}
.clientes-hero h1 span{color:#fff}
.clientes-lead{font-size:18px;line-height:1.58;color:#e6f4ff;margin:0 0 24px;max-width:760px}
.clientes-entity-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.clientes-entity-pills span{display:inline-flex;align-items:center;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);font-weight:900;color:#fff}
.pill-arvet{box-shadow:inset 0 -4px 0 var(--arvet-purple)}
.pill-aseban{box-shadow:inset 0 -4px 0 var(--aseban-green)}
.pill-cofearfe{box-shadow:inset 0 -4px 0 var(--cofearfe-orange)}
.pill-asfel{box-shadow:inset 0 -4px 0 var(--asfel-turquoise)}
.clientes-login-card{background:#fff;border:1px solid var(--clientes-line);border-radius:18px;box-shadow:0 16px 45px rgba(16,57,87,.10);padding:30px;color:var(--clientes-text)}
.clientes-login-card h2{margin:0 0 7px;color:var(--clientes-blue-dark)}
.clientes-login-card p{margin:0 0 20px;color:var(--clientes-muted)}
.clientes-field{margin-bottom:14px}
.clientes-field label{display:block;font-size:13px;font-weight:900;color:#344054;margin-bottom:7px}
.clientes-field input{width:100%;border:1px solid #ccd6e2;border-radius:12px;padding:12px 13px;font-size:15px;background:#fff}
.clientes-field input:focus{outline:3px solid #d4ecff;border-color:#1a77ab}
.clientes-btn{display:inline-flex;align-items:center;justify-content:center;min-height:43px;border:0;border-radius:12px;padding:11px 16px;background:var(--clientes-blue);color:#fff;font-weight:900;cursor:pointer;text-decoration:none;width:100%;margin-top:5px}
.clientes-btn:hover{background:var(--clientes-blue-dark);text-decoration:none}
.clientes-login-types{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.clientes-login-types span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f1f6fb;color:var(--clientes-blue-dark);font-size:12px;font-weight:700}
.clientes-alert,.alert{background:#fff1f0;border:1px solid #ffd0cc;color:var(--clientes-danger);border-radius:13px;padding:12px 14px;font-weight:800;margin-bottom:16px}
.debug-box{margin-top:14px;background:#111;color:#9cff9c;border-radius:12px;padding:12px;font-size:12px}
.clientes-logos-section{background:#fff;padding:30px 0 8px}
.clientes-logos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.clientes-logo-card{background:#fff;border:1px solid var(--clientes-line);border-radius:18px;box-shadow:0 16px 45px rgba(16,57,87,.06);padding:18px 22px;display:flex;align-items:center;justify-content:center;min-height:138px}
.clientes-logo-card img{max-width:100%;max-height:82px;object-fit:contain;display:block}
.logo-cofearfe{border-top:5px solid var(--cofearfe-red)}
.logo-aseban{border-top:5px solid var(--aseban-green)}
.logo-arvet{border-top:5px solid var(--arvet-purple)}
.logo-asfel{border-top:5px solid var(--asfel-blue)}
.clientes-modules{padding:34px 0 58px}
.clientes-cards,.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.clientes-module,.module,.card,.table-card{background:#fff;border:1px solid var(--clientes-line);border-radius:18px;box-shadow:0 16px 45px rgba(16,57,87,.08)}
.clientes-module,.module{padding:22px}
.clientes-module h3,.module h3{margin:0 0 10px;color:var(--clientes-blue-dark)}
.clientes-module p,.module p{margin:0 0 12px;color:var(--clientes-muted);line-height:1.5}
.accent-arvet,.module-accent-arvet{border-top:4px solid var(--arvet-purple)}
.accent-cofearfe,.module-accent-cofearfe{border-top:4px solid var(--cofearfe-orange)}
.accent-aseban,.module-accent-aseban{border-top:4px solid var(--aseban-green)}
.accent-asfel,.module-accent-asfel{border-top:4px solid var(--asfel-turquoise)}

/* Área privada */
.private-top{background:#fff;border-bottom:1px solid var(--clientes-line);position:sticky;top:0;z-index:5}
.private-nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px}
.brand-badge{display:inline-flex;align-items:center;justify-content:center;min-width:62px;height:42px;background:var(--clientes-blue);color:#fff;border-radius:12px;font-weight:900;letter-spacing:.5px}
.brand strong{display:block;color:var(--clientes-blue-dark);font-size:18px}
.brand span{display:block;color:var(--clientes-muted);font-size:13px;margin-top:3px}
.private-nav nav{display:flex;gap:14px;flex-wrap:wrap}
.private-nav nav a{color:var(--clientes-blue-dark);font-weight:900;padding:9px 10px;border-radius:10px}
.private-nav nav a:hover{background:var(--clientes-blue-soft);text-decoration:none}
.private{padding:30px 0 58px}
.private-head{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.private-head h1{margin:0 0 8px;color:#102a43;font-size:34px;letter-spacing:-.8px}
.private-head p{margin:0;color:var(--clientes-muted)}
.eyebrow{margin:0 0 8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:var(--clientes-blue)}
.panel-cards .module-main{grid-column:span 1}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:43px;border:0;border-radius:12px;padding:11px 16px;background:var(--clientes-blue);color:#fff;font-weight:900;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--clientes-blue-dark);text-decoration:none}
.btn-light{background:#eef3f8;color:var(--clientes-blue-dark)}
.btn-light:hover{background:#dfe8f1;color:var(--clientes-blue-dark)}
.filter-card{padding:18px;margin-bottom:18px}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end}
.field{margin-bottom:14px}
.field label{display:block;font-size:13px;font-weight:900;color:#344054;margin-bottom:7px}
.field input{width:100%;border:1px solid #ccd6e2;border-radius:12px;padding:12px 13px;font-size:15px;background:#fff}
.filter-actions{display:flex;gap:9px;align-items:center;margin-bottom:14px}
.table-card{overflow:hidden}
.table-head{padding:18px 22px;border-bottom:1px solid var(--clientes-line)}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:14px 16px;border-bottom:1px solid #edf1f6;text-align:left;vertical-align:top}
th{background:#f8fafc;color:#334e68;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
td small{display:block;color:#7b8794;margin-top:4px}
.empty{text-align:center;color:var(--clientes-muted);padding:28px}
.link-action{font-weight:900;white-space:nowrap}
.back-link{display:inline-block;font-weight:900;margin-bottom:9px}
.company-head{align-items:center}
.company-logo-box{width:96px;height:96px;border-radius:18px;background:#fff;border:1px solid var(--clientes-line);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 12px 30px rgba(16,57,87,.08);flex:0 0 auto}
.company-logo-box img{max-width:88%;max-height:88%;object-fit:contain}
.ficha-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.data-list{display:grid;grid-template-columns:150px 1fr;gap:10px 16px;margin:0}
.data-list dt{font-weight:900;color:#344054}
.data-list dd{margin:0;color:var(--clientes-text)}
.tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{background:var(--clientes-blue-soft);color:var(--clientes-blue);border-radius:999px;padding:7px 10px;font-weight:900;font-size:13px}
.contact-list{display:grid;gap:10px}
.contact-item{border:1px solid #edf1f6;border-radius:14px;padding:12px;background:#fbfdff}
.contact-item strong{display:block;color:#243b53}
.contact-item span{display:block;color:var(--clientes-muted);margin-top:4px}

@media(max-width:980px){
	.clientes-logos-grid{grid-template-columns:1fr}
	.clientes-logo-card{min-height:110px}
	.clientes-logo-card img{max-height:64px}
}
@media(max-width:900px){
	.clientes-hero-grid,.clientes-cards,.cards,.ficha-grid,.filters{grid-template-columns:1fr}
	.private-nav{align-items:flex-start;flex-direction:column;padding:14px 0}
	.private-head{align-items:flex-start;flex-direction:column}
	.data-list{grid-template-columns:1fr}
	.clientes-hero{padding:46px 0}
}


/* Refuerzo final: evita que estilos externos puedan romper la landing */
.clientes-header,
.clientes-hero,
.clientes-logos-section,
.clientes-modules,
.private-top,
.private {
	width: 100%;
}

.clientes-header img,
.clientes-logos-section img,
.company-logo-box img {
	display: block;
}

.clientes-login-card form {
	margin: 0;
}

.clientes-login-card input,
.filter-card input {
	height: auto;
	box-shadow: none;
}

.clientes-login-card button,
.clientes-btn,
.btn {
	font-family: Arial, Helvetica, sans-serif;
}

.clientes-logos-grid .clientes-logo-card {
	overflow: hidden;
}

.clientes-logos-grid .clientes-logo-card img {
	width: auto;
	height: auto;
}


/* Ajuste index: cabecera con cuatro logos pequeños y logos de página más discretos */
.clientes-nav-logos {
	min-height: 72px;
}

.clientes-brand-text {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.clientes-brand-text span {
	font-size: 21px;
	font-weight: 900;
	color: var(--clientes-blue-dark);
	letter-spacing: -0.2px;
}

.clientes-header-logos {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
	flex-wrap: wrap;
}

.clientes-header-logos img {
	display: block;
	width: auto;
	height: 34px;
	max-width: 150px;
	object-fit: contain;
}

.clientes-header-logos img[alt="ARVET"] {
	height: 31px;
}

.clientes-header-logos img[alt="ASEBAN"] {
	height: 30px;
}

.clientes-header-logos img[alt="COFEARFE"] {
	height: 34px;
	max-width: 170px;
}

.clientes-header-logos img[alt="ASFEL"] {
	height: 30px;
}

.clientes-logos-section-compact {
	padding: 22px 0 6px;
	background: #ffffff;
}

.clientes-logos-compact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 34px;
	flex-wrap: wrap;
	padding: 12px 18px;
	background: #ffffff;
	border: 1px solid var(--clientes-line);
	border-radius: 18px;
	box-shadow: 0 10px 28px rgba(16,57,87,.05);
}

.clientes-logos-compact img {
	display: block;
	width: auto;
	height: 42px;
	max-width: 180px;
	object-fit: contain;
}

.clientes-logos-compact img[alt="ARVET"] {
	height: 38px;
}

.clientes-logos-compact img[alt="ASEBAN"] {
	height: 38px;
}

.clientes-logos-compact img[alt="COFEARFE"] {
	height: 44px;
	max-width: 210px;
}

.clientes-logos-compact img[alt="ASFEL"] {
	height: 38px;
}

/* Por si el HTML anterior siguiera cargado en caché, reducimos también las tarjetas antiguas */
.clientes-logo-card {
	min-height: 86px !important;
	padding: 12px 16px !important;
}

.clientes-logo-card img {
	max-height: 48px !important;
}

@media (max-width: 760px) {
	.clientes-nav-logos {
		align-items: flex-start;
		flex-direction: column;
		padding: 14px 0;
	}

	.clientes-header-logos {
		justify-content: flex-start;
		gap: 12px;
	}

	.clientes-header-logos img {
		height: 26px;
		max-width: 118px;
	}

	.clientes-header-logos img[alt="COFEARFE"] {
		height: 28px;
		max-width: 140px;
	}

	.clientes-logos-compact {
		gap: 18px;
	}

	.clientes-logos-compact img {
		height: 32px;
		max-width: 140px;
	}

	.clientes-logos-compact img[alt="COFEARFE"] {
		height: 34px;
		max-width: 160px;
	}
}


/* Solicitudes de modificación de datos */
.company-actions {
	margin-top: 16px;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.panel-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 12px;
}

.change-form {
	display: grid;
	gap: 12px;
}

.change-form label {
	font-weight: 900;
	color: #344054;
}

.change-form textarea {
	width: 100%;
	min-height: 220px;
	resize: vertical;
	border: 1px solid #ccd6e2;
	border-radius: 12px;
	padding: 12px 13px;
	font-size: 15px;
	font-family: Arial, Helvetica, sans-serif;
	background: #ffffff;
	color: #263238;
}

.change-form textarea:focus {
	outline: 3px solid #d4ecff;
	border-color: #1a77ab;
}

.form-help {
	margin: 0;
	color: #667085;
	font-size: 14px;
	line-height: 1.45;
}

.success-box {
	background: #ecfdf3;
	border: 1px solid #abefc6;
	color: #067647;
	border-radius: 13px;
	padding: 12px 14px;
	font-weight: 800;
	margin-bottom: 16px;
}


/* Corrección visual formulario solicitud de cambio */
.change-form {
	display: block !important;
	width: 100%;
	margin: 0;
}

.change-field {
	display: block !important;
	width: 100%;
	margin: 0 0 14px 0;
}

.change-field label,
.change-form label {
	display: block !important;
	width: 100%;
	margin: 0 0 8px 0;
	font-weight: 900;
	color: #344054;
	line-height: 1.35;
}

.change-field textarea,
.change-form textarea,
textarea.clientes-textarea {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	min-height: 220px !important;
	resize: vertical;
	border: 1px solid #ccd6e2 !important;
	border-radius: 12px !important;
	padding: 13px 14px !important;
	font-size: 15px !important;
	font-family: Arial, Helvetica, sans-serif !important;
	line-height: 1.45 !important;
	background: #ffffff !important;
	color: #263238 !important;
	box-shadow: none !important;
}

.change-field textarea:focus,
.change-form textarea:focus,
textarea.clientes-textarea:focus {
	outline: 3px solid #d4ecff !important;
	border-color: #1a77ab !important;
}

.change-actions {
	margin-top: 14px;
	display: flex;
	justify-content: flex-start;
}

.change-actions .btn {
	min-width: 160px;
}

.form-help {
	margin: 10px 0 0 0 !important;
	color: #667085;
	font-size: 15px;
	line-height: 1.5;
}

@media (max-width: 760px) {
	.change-actions .btn {
		width: 100%;
	}
}


/* Campos desplegables del buscador técnico */
.filter-card select {
	width: 100%;
	border: 1px solid #ccd6e2;
	border-radius: 12px;
	padding: 12px 13px;
	font-size: 15px;
	background: #ffffff;
	color: #263238;
	min-height: 43px;
}

.filter-card select:focus {
	outline: 3px solid #d4ecff;
	border-color: #1a77ab;
}


/* Ficha completa de asociado */
.company-hero {
	background: linear-gradient(135deg, rgba(23,74,118,.98), rgba(26,119,171,.86));
	color: #ffffff;
	border-radius: 22px;
	padding: 28px;
	margin-bottom: 22px;
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: flex-start;
	box-shadow: 0 16px 45px rgba(16,57,87,.12);
}

.company-hero .eyebrow,
.company-hero .back-link {
	color: #d9f0ff;
}

.company-hero h1 {
	margin: 0 0 12px;
	font-size: clamp(28px, 4vw, 44px);
	line-height: 1.05;
	color: #ffffff;
}

.company-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.company-meta span {
	display: inline-flex;
	align-items: center;
	padding: 7px 10px;
	border-radius: 999px;
	background: rgba(255,255,255,.14);
	border: 1px solid rgba(255,255,255,.24);
	font-weight: 800;
	font-size: 13px;
	color: #ffffff;
}

.company-hero-actions {
	display: flex;
	align-items: flex-start;
	flex: 0 0 auto;
}

.ficha-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 18px;
}

.ficha-card,
.ficha-wide-card {
	margin-bottom: 18px;
}

.ficha-wide-card {
	padding: 22px;
}

.section-title-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	margin-bottom: 14px;
}

.section-title-row h3 {
	margin: 0;
}

.counter-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-weight: 900;
	font-size: 13px;
}

.empty-block {
	margin: 0;
	color: #667085;
	background: #f8fafc;
	border: 1px dashed #d9e2ec;
	border-radius: 14px;
	padding: 14px;
}

.sector-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sector-chip {
	border: 1px solid #e1e7ef;
	background: #f8fafc;
	border-radius: 14px;
	padding: 11px 13px;
	display: grid;
	gap: 3px;
}

.sector-chip strong {
	color: #103957;
}

.sector-chip span {
	font-size: 12px;
	color: #667085;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.sector-chip-main {
	border-color: rgba(122,120,189,.35);
	background: rgba(122,120,189,.10);
}

.mini-table-wrap {
	margin-top: 6px;
}

.mini-table {
	font-size: 14px;
}

.mini-table th {
	white-space: nowrap;
}

.mini-table td {
	min-width: 110px;
}

.timeline-list {
	display: grid;
	gap: 12px;
}

.timeline-item {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 14px;
	border: 1px solid #edf1f6;
	background: #fbfdff;
	border-radius: 16px;
	padding: 14px;
}

.timeline-date {
	display: grid;
	align-content: start;
	gap: 4px;
	color: #103957;
	font-weight: 900;
}

.timeline-date small {
	color: #667085;
	font-weight: 700;
}

.timeline-content {
	display: grid;
	gap: 6px;
}

.timeline-content strong {
	color: #263238;
}

.timeline-content span {
	color: #667085;
	font-size: 13px;
}

@media (max-width: 900px) {
	.company-hero {
		flex-direction: column;
	}

	.company-hero-actions,
	.company-hero-actions .btn {
		width: 100%;
	}

	.ficha-dashboard-grid {
		grid-template-columns: 1fr;
	}

	.timeline-item {
		grid-template-columns: 1fr;
	}
}


/* Etiqueta de periodo en ficha */
.section-subtitle {
	margin: 4px 0 0;
	color: #667085;
	font-size: 13px;
	font-weight: 800;
}

.company-hero-actions {
	gap: 10px;
	flex-wrap: wrap;
}

.company-hero-actions .btn-light {
	background: rgba(255,255,255,.92);
	color: #103957;
}

.company-hero-actions .btn-light:hover {
	background: #ffffff;
	color: #103957;
}


/* Botón GIDAP en bloque de subvenciones */
.section-title-row-actions {
	align-items: flex-start;
}

.section-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.btn-small {
	min-height: 34px;
	padding: 8px 12px;
	font-size: 13px;
	border-radius: 10px;
}

@media (max-width: 760px) {
	.section-title-row-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.section-actions {
		justify-content: flex-start;
	}

	.section-actions .btn-small {
		width: 100%;
	}
}


/* Seguridad visual ficha: evita pantalla en blanco por bloques opcionales */
.section-subtitle {
	margin: 4px 0 0;
	color: #667085;
	font-size: 13px;
	font-weight: 800;
}

.company-hero-actions {
	gap: 10px;
	flex-wrap: wrap;
}

.company-hero-actions .btn-light {
	background: rgba(255,255,255,.92);
	color: #103957;
}

.company-hero-actions .btn-light:hover {
	background: #ffffff;
	color: #103957;
}

.section-title-row-actions {
	align-items: flex-start;
}

.section-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.btn-small {
	min-height: 34px;
	padding: 8px 12px;
	font-size: 13px;
	border-radius: 10px;
}

@media (max-width: 760px) {
	.section-title-row-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.section-actions {
		justify-content: flex-start;
	}

	.section-actions .btn-small {
		width: 100%;
	}
}


/* Bloques económicos, países y productos */
.economic-table td,
.economic-table th {
	text-align: right;
}

.economic-table td:first-child,
.economic-table th:first-child {
	text-align: left;
}

.country-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.country-chip {
	border: 1px solid #e1e7ef;
	background: #f8fafc;
	border-radius: 14px;
	padding: 10px 12px;
	display: grid;
	gap: 4px;
	min-width: 130px;
}

.country-chip strong {
	color: #103957;
}

.country-chip span {
	color: #667085;
	font-size: 13px;
	line-height: 1.35;
}

.product-list {
	display: grid;
	gap: 10px;
}

.product-item {
	border: 1px solid #edf1f6;
	background: #fbfdff;
	border-radius: 14px;
	padding: 12px;
	display: grid;
	gap: 6px;
}

.product-item strong {
	color: #103957;
}

.product-item p {
	margin: 0;
	color: #667085;
	line-height: 1.4;
}

.product-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.product-meta span {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-weight: 800;
	font-size: 12px;
	padding: 5px 8px;
}


/* Ficha robusta por subconsultas */
.company-hero {
	background: linear-gradient(135deg, rgba(23,74,118,.98), rgba(26,119,171,.86));
	color: #ffffff;
	border-radius: 22px;
	padding: 28px;
	margin-bottom: 22px;
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: flex-start;
	box-shadow: 0 16px 45px rgba(16,57,87,.12);
}

.company-hero .eyebrow,
.company-hero .back-link {
	color: #d9f0ff;
}

.company-hero h1 {
	margin: 0 0 12px;
	font-size: clamp(28px, 4vw, 44px);
	line-height: 1.05;
	color: #ffffff;
}

.company-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.company-meta span {
	display: inline-flex;
	align-items: center;
	padding: 7px 10px;
	border-radius: 999px;
	background: rgba(255,255,255,.14);
	border: 1px solid rgba(255,255,255,.24);
	font-weight: 800;
	font-size: 13px;
	color: #ffffff;
}

.company-hero-actions {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	flex-wrap: wrap;
}

.company-hero-actions .btn-light {
	background: rgba(255,255,255,.92);
	color: #103957;
}

.ficha-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 18px;
}

.ficha-card,
.ficha-wide-card {
	margin-bottom: 18px;
}

.ficha-wide-card {
	padding: 22px;
}

.section-title-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	margin-bottom: 14px;
}

.section-title-row h3 {
	margin: 0;
}

.section-subtitle {
	margin: 4px 0 0;
	color: #667085;
	font-size: 13px;
	font-weight: 800;
}

.counter-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-weight: 900;
	font-size: 13px;
}

.empty-block {
	margin: 0;
	color: #667085;
	background: #f8fafc;
	border: 1px dashed #d9e2ec;
	border-radius: 14px;
	padding: 14px;
}

.sector-list,
.country-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.sector-chip,
.country-chip {
	border: 1px solid #e1e7ef;
	background: #f8fafc;
	border-radius: 14px;
	padding: 11px 13px;
	display: grid;
	gap: 3px;
}

.sector-chip-main {
	border-color: rgba(122,120,189,.35);
	background: rgba(122,120,189,.10);
}

.product-list {
	display: grid;
	gap: 10px;
}

.product-item {
	border: 1px solid #edf1f6;
	background: #fbfdff;
	border-radius: 14px;
	padding: 12px;
	display: grid;
	gap: 6px;
}

.product-meta span {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-weight: 800;
	font-size: 12px;
	padding: 5px 8px;
}

.section-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.btn-small {
	min-height: 34px;
	padding: 8px 12px;
	font-size: 13px;
	border-radius: 10px;
}

@media (max-width: 900px) {
	.company-hero,
	.section-title-row-actions {
		flex-direction: column;
	}

	.ficha-dashboard-grid {
		grid-template-columns: 1fr;
	}
}


/* Ajuste tabla de subvenciones */
.numeric-cell {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}


/* Ajuste tabla de acciones */
.acciones-table th:nth-child(2),
.acciones-table th:nth-child(3),
.acciones-table td:nth-child(2),
.acciones-table td:nth-child(3) {
	white-space: nowrap;
	width: 120px;
}

.acciones-table td:first-child {
	min-width: 280px;
}


/* Solicitud de cambios fase 2 */
.change-hero {
	background: linear-gradient(135deg, rgba(23,74,118,.98), rgba(26,119,171,.86));
	color: #fff;
	border-radius: 24px;
	padding: 28px;
	margin-bottom: 22px;
	display: flex;
	justify-content: space-between;
	gap: 22px;
	align-items: flex-start;
	box-shadow: 0 16px 45px rgba(16,57,87,.12);
}

.change-hero h1 {
	margin: 0 0 12px;
	font-size: clamp(28px, 4vw, 42px);
	line-height: 1.05;
	color: #fff;
}

.hero-lead {
	margin: 0;
	color: #e6f3ff;
	max-width: 860px;
	line-height: 1.55;
}

.change-steps {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.step-badge,
.change-chip,
.status-pill,
.status-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 13px;
}

.step-badge {
	background: rgba(255,255,255,.14);
	border: 1px solid rgba(255,255,255,.25);
	color: #fff;
}

.step-badge.active {
	background: rgba(255,255,255,.92);
	color: #103957;
}

.change-form {
	display: grid;
	gap: 18px;
}

.change-card {
	padding: 22px;
}

.change-card-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 16px;
}

.change-card-head.compact {
	margin-bottom: 12px;
}

.change-card-head h3,
.change-card-head h4 {
	margin: 0;
}

.change-chip {
	background: #eef3f8;
	color: #103957;
}

.change-grid {
	display: grid;
	gap: 14px;
}

.change-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.field-card {
	border: 1px solid #e8eef5;
	background: #fbfdff;
	border-radius: 16px;
	padding: 14px;
	display: grid;
	gap: 8px;
}

.field-card label {
	font-weight: 800;
	color: #103957;
}

.field-current {
	font-size: 13px;
	color: #667085;
}

.field-card input[type="text"],
.field-card textarea,
.field-card select,
.filter-card select {
	width: 100%;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	padding: 12px 14px;
	font: inherit;
	color: #103957;
	background: #fff;
}

.field-card input[type="text"]:focus,
.field-card textarea:focus,
.field-card select:focus,
.filter-card select:focus {
	outline: none;
	border-color: #1a77ab;
	box-shadow: 0 0 0 4px rgba(26,119,171,.12);
}

.contact-edit-list,
#new-contacts-container {
	display: grid;
	gap: 12px;
}

.contact-edit-card {
	border: 1px solid #e8eef5;
	background: linear-gradient(180deg, #ffffff 0%, #fafdff 100%);
	border-radius: 16px;
	padding: 14px;
}

.contact-edit-head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: center;
	margin-bottom: 12px;
}

.contact-edit-head h4 {
	margin: 0;
	color: #103957;
}

.inline-check,
.confirm-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-weight: 700;
	color: #667085;
	margin-top: 14px;
}

.link-remove {
	border: 0;
	background: transparent;
	color: #b42318;
	font-weight: 800;
	cursor: pointer;
}

.contact-new-panel {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px dashed #dbe4ee;
}

.form-actions-sticky {
	position: sticky;
	bottom: 18px;
	display: flex;
	justify-content: flex-end;
	gap: 12px;
	padding: 16px;
	border-radius: 18px;
	background: rgba(255,255,255,.92);
	backdrop-filter: blur(10px);
	box-shadow: 0 16px 40px rgba(16,57,87,.12);
	z-index: 5;
}

.form-actions-sticky.no-shadow {
	position: static;
	padding: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
	justify-content: flex-start;
	margin-top: 20px;
}

.change-confirm-card {
	padding: 28px;
}

.change-confirm-card h1 {
	margin: 12px 0 10px;
}

.summary-box,
.request-id-box {
	margin-top: 18px;
	padding: 18px;
	border-radius: 16px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
}

.summary-box h3 {
	margin-top: 0;
}

.summary-box ul {
	margin: 0;
	padding-left: 18px;
	display: grid;
	gap: 8px;
}

.status-pill.success,
.status-aplicada { background: #dcfae6; color: #166534; }

.status-pill.warning,
.status-pendiente { background: #fef3c7; color: #92400e; }

.status-pill.error,
.status-desestimada { background: #fee2e2; color: #b42318; }

.status-en-revisión,
.status-en-revision { background: #dbeafe; color: #1d4ed8; }

@media (max-width: 900px) {
	.change-hero,
	.change-card-head,
	.contact-edit-head,
	.form-actions-sticky {
		flex-direction: column;
	}

	.change-grid-2 {
		grid-template-columns: 1fr;
	}

	.form-actions-sticky {
		align-items: stretch;
	}
}


/* Ampliación solicitud: exportación, países y productos */
.change-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.change-grid-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.economic-edit-list {
	display: grid;
	gap: 12px;
}

@media (max-width: 1100px) {
	.change-grid-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.change-grid-3,
	.change-grid-4 {
		grid-template-columns: 1fr;
	}
}


/* Solicitud de cambios compacta v2 */
.container-wide {
	max-width: 1480px;
}

.request-page {
	padding-top: 18px;
}

.change-hero-compact {
	padding: 20px 22px;
	border-radius: 18px;
	margin-bottom: 16px;
}

.change-hero-compact h1 {
	font-size: clamp(24px, 3vw, 34px);
	margin-bottom: 8px;
}

.change-hero-compact .hero-lead {
	font-size: 14px;
	max-width: 900px;
}

.compact-change-form {
	gap: 14px;
}

.request-two-col {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

.request-inline-layout {
	display: grid;
	grid-template-columns: 1.2fr .8fr 1fr;
	gap: 12px;
	align-items: stretch;
}

.compact-card {
	padding: 16px;
	border-radius: 16px;
	margin-bottom: 0;
}

.compact-card .change-card-head {
	margin-bottom: 10px;
}

.compact-card h3 {
	font-size: 18px;
}

.compact-card h4 {
	font-size: 15px;
}

.compact-card .section-subtitle {
	font-size: 12px;
	line-height: 1.35;
}

.compact-fields {
	gap: 10px;
}

.compact-field {
	padding: 10px;
	border-radius: 12px;
	gap: 5px;
}

.compact-field label {
	font-size: 13px;
}

.compact-field .field-current {
	font-size: 12px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.compact-field input[type="text"],
.compact-field textarea,
.editable-table input[type="text"],
.new-inline-row input[type="text"] {
	min-height: 34px;
	padding: 8px 10px;
	border: 1px solid #dbe4ee;
	border-radius: 9px;
	font-size: 13px;
	color: #103957;
	background: #fff;
}

.editable-table-wrap {
	width: 100%;
	overflow: auto;
	border: 1px solid #edf1f6;
	border-radius: 12px;
	background: #fff;
}

.editable-table-wrap.medium-scroll {
	max-height: 360px;
}

.editable-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}

.editable-table th,
.editable-table td {
	padding: 7px 8px;
	border-bottom: 1px solid #edf1f6;
	vertical-align: middle;
}

.editable-table th {
	position: sticky;
	top: 0;
	background: #f8fafc;
	z-index: 1;
	text-align: left;
	color: #103957;
	font-size: 12px;
}

.editable-table td input[type="text"] {
	width: 100%;
}

.editable-table .check-cell {
	width: 70px;
	text-align: center;
}

.numeric-editable-table th:first-child,
.numeric-editable-table td:first-child {
	width: 110px;
}

.new-data-box {
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px dashed #dbe4ee;
}

.new-row-list {
	display: grid;
	gap: 8px;
}

.new-inline-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
	gap: 8px;
	align-items: center;
}

.new-inline-row-3 {
	grid-template-columns: minmax(0, 1.2fr) minmax(120px, .5fr) minmax(0, 1fr) auto;
}

.new-inline-row-4 {
	grid-template-columns: 120px minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) auto;
}

.new-inline-row:first-child .link-remove {
	visibility: hidden;
}

.link-remove {
	border: 0;
	background: transparent;
	color: #b42318;
	font-weight: 800;
	cursor: pointer;
	font-size: 12px;
	padding: 6px 4px;
}

.compact-chip-list {
	max-height: 92px;
	overflow: auto;
}

.compact-actions {
	padding: 12px;
	border-radius: 14px;
}

.confirm-check {
	font-size: 13px;
}

@media (max-width: 1200px) {
	.request-two-col,
	.request-inline-layout {
		grid-template-columns: 1fr;
	}

	.new-inline-row,
	.new-inline-row-3,
	.new-inline-row-4 {
		grid-template-columns: 1fr;
	}

	.new-inline-row:first-child .link-remove {
		display: none;
	}
}


/* Ficha cliente compacta v3 */
.container-wide {
	max-width: 1480px;
}

.ficha-compact-page {
	padding-top: 18px;
}

.ficha-compact-page .company-hero {
	padding: 20px 22px;
	border-radius: 18px;
	margin-bottom: 14px;
}

.ficha-compact-page .company-hero h1 {
	font-size: clamp(24px, 3vw, 34px);
	margin-bottom: 8px;
}

.ficha-compact-page .company-meta span {
	padding: 5px 9px;
	font-size: 12px;
}

.ficha-compact-page .ficha-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 14px;
}

.ficha-compact-page .compact-view-card,
.ficha-compact-page .ficha-wide-card,
.ficha-compact-page .module.ficha-card {
	padding: 16px;
	border-radius: 16px;
	margin-bottom: 14px;
}

.ficha-compact-page .section-title-row {
	margin-bottom: 10px;
}

.ficha-compact-page .section-title-row h3,
.ficha-compact-page .ficha-card h3,
.ficha-compact-page .ficha-wide-card h3 {
	font-size: 18px;
}

.ficha-compact-page .counter-pill {
	min-width: 26px;
	height: 26px;
	font-size: 12px;
}

.ficha-compact-page .data-list {
	display: grid;
	grid-template-columns: 145px minmax(0, 1fr);
	column-gap: 12px;
	row-gap: 7px;
	font-size: 13px;
}

.ficha-compact-page .data-list dt {
	color: #667085;
	font-weight: 800;
}

.ficha-compact-page .data-list dd {
	margin: 0;
	color: #243547;
	min-width: 0;
	overflow-wrap: anywhere;
}

.ficha-compact-page .compact-table-wrap,
.ficha-compact-page .mini-table-wrap,
.ficha-compact-page .table-wrap {
	overflow: auto;
	border: 1px solid #edf1f6;
	border-radius: 12px;
	background: #fff;
}

.ficha-compact-page .compact-table-wrap {
	max-height: 360px;
}

.ficha-compact-page .mini-table,
.ficha-compact-page .compact-table {
	font-size: 13px;
	margin: 0;
}

.ficha-compact-page .mini-table th,
.ficha-compact-page .mini-table td,
.ficha-compact-page .compact-table th,
.ficha-compact-page .compact-table td {
	padding: 8px 9px;
	vertical-align: middle;
}

.ficha-compact-page .mini-table th,
.ficha-compact-page .compact-table th {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #f8fafc;
	font-size: 12px;
	color: #103957;
}

.ficha-compact-page .type-pill {
	display: inline-flex;
	align-items: center;
	max-width: 180px;
	padding: 4px 8px;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-size: 12px;
	font-weight: 800;
	white-space: normal;
	line-height: 1.25;
}

.ficha-compact-page .ficha-card-wide {
	grid-column: 1 / -1;
}

.ficha-compact-page .sector-chip,
.ficha-compact-page .country-chip,
.ficha-compact-page .product-item,
.ficha-compact-page .contact-item {
	padding: 8px 10px;
	border-radius: 12px;
	font-size: 13px;
}

.ficha-compact-page .empty-block {
	padding: 10px 11px;
	font-size: 13px;
}

.ficha-compact-page .timeline-item {
	padding: 10px 12px;
	border-radius: 12px;
	grid-template-columns: 125px 1fr;
}

.ficha-compact-page .timeline-content,
.ficha-compact-page .timeline-date {
	font-size: 13px;
}

/* Sector no editable en solicitud */
.sector-readonly-layout {
	grid-template-columns: 1.4fr .8fr;
}

.readonly-field {
	background: #f8fafc;
}

.readonly-value {
	min-height: 34px;
	display: flex;
	align-items: center;
	padding: 8px 10px;
	border: 1px solid #dbe4ee;
	border-radius: 9px;
	background: #fff;
	font-weight: 800;
	color: #103957;
	font-size: 13px;
}

.readonly-note {
	margin: 0;
	font-size: 12px;
	color: #667085;
	line-height: 1.35;
}

@media (max-width: 1100px) {
	.ficha-compact-page .ficha-dashboard-grid,
	.sector-readonly-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 900px) {
	.ficha-compact-page .data-list {
		grid-template-columns: 1fr;
		row-gap: 4px;
	}

	.ficha-compact-page .data-list dt {
		margin-top: 6px;
	}

	.ficha-compact-page .compact-table-wrap {
		max-height: none;
	}
}


/* Ficha ultra compacta v4 */
:root {
	--compact-gap: 10px;
	--compact-radius: 12px;
}

.container-wide {
	max-width: 1580px;
}

.ficha-ultra-compact-page {
	padding-top: 12px;
}

.ficha-ultra-compact-page .company-hero {
	padding: 14px 16px;
	border-radius: 14px;
	margin-bottom: 10px;
	align-items: center;
}

.ficha-ultra-compact-page .company-hero h1 {
	font-size: clamp(21px, 2.4vw, 28px);
	margin: 0 0 6px;
	line-height: 1.08;
}

.ficha-ultra-compact-page .company-hero .eyebrow,
.ficha-ultra-compact-page .back-link {
	font-size: 12px;
	margin-bottom: 4px;
}

.ficha-ultra-compact-page .company-meta {
	gap: 6px;
}

.ficha-ultra-compact-page .company-meta span {
	padding: 4px 7px;
	font-size: 11px;
}

.ficha-quick-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 10px;
	padding: 8px;
	border: 1px solid #edf1f6;
	border-radius: 12px;
	background: #ffffff;
	position: sticky;
	top: 0;
	z-index: 8;
	box-shadow: 0 8px 22px rgba(16,57,87,.06);
}

.ficha-quick-nav a {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f3f6fa;
	color: #103957;
	text-decoration: none;
	font-weight: 800;
	font-size: 12px;
}

.ficha-quick-nav a:hover {
	background: #e8f2fb;
}

.ficha-ultra-compact-page .ficha-dashboard-grid,
.ficha-ultra-compact-page .ficha-top-grid,
.ficha-ultra-compact-page .ficha-secondary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--compact-gap);
	margin-bottom: var(--compact-gap);
}

.ficha-ultra-compact-page .compact-view-card,
.ficha-ultra-compact-page .ficha-wide-card,
.ficha-ultra-compact-page .module.ficha-card {
	padding: 10px 12px;
	border-radius: var(--compact-radius);
	margin-bottom: var(--compact-gap);
	box-shadow: 0 6px 18px rgba(16,57,87,.05);
}

.ficha-ultra-compact-page .section-title-row {
	margin-bottom: 6px;
	gap: 8px;
	min-height: 24px;
}

.ficha-ultra-compact-page .section-title-row h3,
.ficha-ultra-compact-page .ficha-card h3,
.ficha-ultra-compact-page .ficha-wide-card h3 {
	font-size: 15px;
	line-height: 1.2;
	margin: 0;
}

.ficha-ultra-compact-page .section-subtitle {
	font-size: 11px;
	margin-top: 2px;
}

.ficha-ultra-compact-page .counter-pill {
	min-width: 22px;
	height: 22px;
	padding: 0 7px;
	font-size: 11px;
}

.ficha-ultra-compact-page .data-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 10px;
	row-gap: 4px;
	font-size: 12px;
	margin: 0;
}

.ficha-ultra-compact-page .data-list dt {
	margin: 0;
	color: #667085;
	font-weight: 800;
	font-size: 11px;
	line-height: 1.2;
}

.ficha-ultra-compact-page .data-list dd {
	margin: -1px 0 4px;
	color: #243547;
	min-width: 0;
	overflow-wrap: anywhere;
	line-height: 1.25;
	font-size: 12px;
}

.ficha-ultra-compact-page .sector-list,
.ficha-ultra-compact-page .country-list {
	gap: 5px;
}

.ficha-ultra-compact-page .sector-chip,
.ficha-ultra-compact-page .country-chip,
.ficha-ultra-compact-page .product-item,
.ficha-ultra-compact-page .contact-item {
	padding: 5px 7px;
	border-radius: 9px;
	font-size: 12px;
	line-height: 1.2;
}

.ficha-ultra-compact-page .sector-chip span {
	font-size: 10px;
}

.ficha-ultra-compact-page .table-wrap,
.ficha-ultra-compact-page .compact-table-wrap,
.ficha-ultra-compact-page .mini-table-wrap {
	overflow: auto;
	border: 1px solid #edf1f6;
	border-radius: 10px;
	background: #fff;
}

.ficha-ultra-compact-page .compact-table-wrap {
	max-height: 280px;
}

.ficha-ultra-compact-page .short-scroll {
	max-height: 240px;
}

.ficha-ultra-compact-page .mini-table,
.ficha-ultra-compact-page .compact-table {
	width: 100%;
	font-size: 12px;
	margin: 0;
	border-collapse: collapse;
}

.ficha-ultra-compact-page .mini-table th,
.ficha-ultra-compact-page .mini-table td,
.ficha-ultra-compact-page .compact-table th,
.ficha-ultra-compact-page .compact-table td {
	padding: 5px 7px;
	vertical-align: middle;
	border-bottom: 1px solid #edf1f6;
	line-height: 1.25;
}

.ficha-ultra-compact-page .mini-table th,
.ficha-ultra-compact-page .compact-table th {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #f8fafc;
	font-size: 11px;
	color: #103957;
	text-transform: none;
	white-space: nowrap;
}

.ficha-ultra-compact-page .type-pill {
	display: inline-flex;
	align-items: center;
	max-width: 160px;
	padding: 3px 7px;
	border-radius: 999px;
	background: #eef3f8;
	color: #103957;
	font-size: 11px;
	font-weight: 800;
	white-space: normal;
	line-height: 1.15;
}

.ficha-ultra-compact-page .ficha-card-wide {
	grid-column: 1 / -1;
}

.ficha-ultra-compact-page .contactos-table td:nth-child(2) {
	min-width: 180px;
}

.ficha-ultra-compact-page .contactos-table td:nth-child(4) {
	word-break: break-word;
	min-width: 220px;
}

.ficha-ultra-compact-page .product-compact-table td:first-child,
.ficha-ultra-compact-page .country-compact-table td:first-child {
	min-width: 180px;
}

.ficha-ultra-compact-page .empty-block {
	padding: 7px 9px;
	font-size: 12px;
	border-radius: 9px;
}

.ficha-ultra-compact-page .timeline-list {
	gap: 7px;
}

.ficha-ultra-compact-page .timeline-item {
	padding: 7px 9px;
	border-radius: 10px;
	grid-template-columns: 105px 1fr;
	gap: 8px;
}

.ficha-ultra-compact-page .timeline-content,
.ficha-ultra-compact-page .timeline-date,
.ficha-ultra-compact-page .timeline-content span {
	font-size: 12px;
}

.ficha-ultra-compact-page .btn,
.ficha-ultra-compact-page .btn-small {
	min-height: 30px;
	padding: 6px 10px;
	font-size: 12px;
	border-radius: 9px;
}

.ficha-ultra-compact-page .section-actions {
	gap: 6px;
}

@media (min-width: 1280px) {
	.ficha-ultra-compact-page .ficha-top-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1050px) {
	.ficha-ultra-compact-page .ficha-dashboard-grid,
	.ficha-ultra-compact-page .ficha-top-grid,
	.ficha-ultra-compact-page .ficha-secondary-grid {
		grid-template-columns: 1fr;
	}

	.ficha-ultra-compact-page .data-list {
		grid-template-columns: 140px 1fr;
	}
}

@media (max-width: 700px) {
	.ficha-ultra-compact-page .company-hero {
		align-items: flex-start;
	}

	.ficha-ultra-compact-page .data-list {
		grid-template-columns: 1fr;
	}

	.ficha-quick-nav {
		position: static;
	}
}


/* Navegación rápida ARVET v8 - respaldo externo */
html{scroll-behavior:smooth;}
.ficha-ultra-compact-page [id],
.ficha-compact-page [id]{scroll-margin-top:120px;}
.arvet-quick-nav-v8{
    display:block!important;
    width:min(1160px,100%)!important;
    margin:8px auto 16px!important;
    padding:14px 18px 16px!important;
    border-radius:22px!important;
    background:linear-gradient(135deg,#ffffff 0%,#f3f7fb 100%)!important;
    border:1px solid rgba(16,57,87,.14)!important;
    box-shadow:0 14px 34px rgba(16,57,87,.14)!important;
    text-align:center!important;
}
.arvet-quick-nav-v8-title{
    display:block!important;
    width:100%!important;
    margin:0 0 11px!important;
    color:#667085!important;
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:900!important;
    letter-spacing:.10em!important;
    text-transform:uppercase!important;
    text-align:center!important;
}
.arvet-quick-nav-v8-buttons{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:10px!important;
}
.arvet-quick-nav-v8 .arvet-nav-btn-v8{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:40px!important;
    padding:10px 16px!important;
    border-radius:999px!important;
    background:#ffffff!important;
    border:1px solid #d8e3ee!important;
    color:#103957!important;
    text-decoration:none!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    box-shadow:0 5px 14px rgba(16,57,87,.09)!important;
}
.arvet-nav-dot-v8{
    display:inline-block!important;
    width:10px!important;
    height:10px!important;
    min-width:10px!important;
    border-radius:999px!important;
}
.arvet-nav-blue-v8{background:#1a77ab!important;}
.arvet-nav-green-v8{background:#2e9f6e!important;}
.arvet-nav-purple-v8{background:#7a78bd!important;}
.arvet-nav-orange-v8{background:#f59e0b!important;}
.arvet-nav-cyan-v8{background:#06b6d4!important;}
.arvet-nav-indigo-v8{background:#4f46e5!important;}
.arvet-nav-red-v8{background:#d92d20!important;}


/* Ajuste ficha v9: sin código empresa/provincia en cabecera y servicios sin comentarios */
.ficha-ultra-compact-page .company-meta,
.ficha-compact-page .company-meta {
	margin-top: 8px;
}

.ficha-ultra-compact-page .company-meta span,
.ficha-compact-page .company-meta span {
	font-weight: 900;
}

.servicios-table th,
.servicios-table td {
	white-space: nowrap;
}

.servicios-table td {
	max-width: 260px;
	overflow: hidden;
	text-overflow: ellipsis;
}


/* Fix añadir filas solicitud v10 */
.new-data-box {
	background: #fbfdff;
	border: 1px solid #e8eef5;
	border-radius: 12px;
	padding: 10px;
}

.new-data-box .change-card-head.compact {
	margin-bottom: 8px;
}

.new-row-list {
	display: grid;
	gap: 6px;
}

.new-inline-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
	gap: 6px;
	align-items: center;
}

.new-inline-row-3 {
	grid-template-columns: minmax(0, 1.2fr) minmax(110px, .55fr) minmax(0, 1fr) auto;
}

.new-inline-row-4 {
	grid-template-columns: 105px minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) auto;
}

.new-inline-row input[type="text"] {
	min-height: 32px;
	padding: 7px 9px;
	border: 1px solid #dbe4ee;
	border-radius: 8px;
	font-size: 13px;
}

.js-add-row {
	cursor: pointer;
}

.link-remove {
	border: 0;
	background: transparent;
	color: #b42318;
	font-weight: 800;
	cursor: pointer;
	font-size: 12px;
	padding: 6px 4px;
}

@media (max-width: 1200px) {
	.new-inline-row,
	.new-inline-row-3,
	.new-inline-row-4 {
		grid-template-columns: 1fr;
	}
}


/* Botones añadir directos v11 */
.new-data-box .btn[onclick] {
	cursor: pointer;
}

.new-inline-row .link-remove {
	border: 0;
	background: transparent;
	color: #b42318;
	font-weight: 800;
	cursor: pointer;
	font-size: 12px;
	padding: 6px 4px;
}

.new-inline-row {
	align-items: center;
}


/* Añadir filas sin JavaScript v12 */
.new-data-box .btn[formaction] {
	cursor: pointer;
}

.nojs-add-note {
	font-size: 12px;
	color: #667085;
}

.new-row-list {
	display: grid;
	gap: 6px;
}

.new-inline-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 6px;
	align-items: center;
}

.new-inline-row-3 {
	grid-template-columns: minmax(0, 1.2fr) minmax(110px, .55fr) minmax(0, 1fr);
}

.new-inline-row-4 {
	grid-template-columns: 105px minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
}

.new-inline-row input[type="text"] {
	min-height: 32px;
	padding: 7px 9px;
	border: 1px solid #dbe4ee;
	border-radius: 8px;
	font-size: 13px;
}

@media (max-width: 1200px) {
	.new-inline-row,
	.new-inline-row-3,
	.new-inline-row-4 {
		grid-template-columns: 1fr;
	}
}


/* Mantener foco visual al añadir filas sin JavaScript v13 */
#new-contacts-container,
#new-ventas-container,
#new-paises-container,
#new-productos-container {
	scroll-margin-top: 140px;
}

.new-data-box:target,
#new-contacts-container:target,
#new-ventas-container:target,
#new-paises-container:target,
#new-productos-container:target {
	outline: 2px solid rgba(26,119,171,.28);
	outline-offset: 4px;
	border-radius: 12px;
}

@media (max-width: 900px) {
	#new-contacts-container,
	#new-ventas-container,
	#new-paises-container,
	#new-productos-container {
		scroll-margin-top: 24px;
	}
}


/* Solicitar cambio v40: altas bajo demanda */
.add-empty-note {
	margin: 4px 0 0;
	padding: 9px 12px;
	border: 1px dashed #cfe0ec;
	border-radius: 12px;
	background: #f8fbfe;
	color: #667085;
	font-size: 13px;
	font-weight: 700;
}

.add-grid:empty {
	display: none;
}

.change-card-head .btn-small {
	white-space: nowrap;
}


/* Solicitar cambio v41: no mostrar líneas vacías de alta */
.new-row-list {
	margin-top: 8px;
}

.new-row-list:empty {
	display: none;
	margin: 0;
	padding: 0;
}

.new-inline-row {
	animation: arvetRowIn .14s ease-out;
}

@keyframes arvetRowIn {
	from {
		opacity: 0;
		transform: translateY(-3px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* Solicitar cambio v42: contenedores de alta sin filas iniciales */
.new-row-list:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.new-data-box .new-row-list {
	margin-top: 8px;
}

.new-inline-row {
	animation: arvetNewRow .12s ease-out;
}

@keyframes arvetNewRow {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}








/* Solicitar cambio v45: altas mediante desplegable nativo sin JavaScript */
.add-details {
	margin-top: 8px;
}

.add-details > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	cursor: pointer;
	list-style: none;
	user-select: none;
}

.add-details > summary::-webkit-details-marker {
	display: none;
}

.add-details[open] > summary {
	margin-bottom: 10px;
	background: #eaf5fc;
	border-color: #cfe0ec;
}

.add-details .new-row-list {
	display: grid;
	gap: 8px;
	margin-top: 8px;
}

.add-details .new-inline-row {
	background: #f8fbfe;
	border: 1px solid #e2ebf3;
	border-radius: 12px;
	padding: 8px;
}

.add-details:not([open]) .new-row-list {
	display: none;
}


/* v46: visualización limpia de valores NULL en blanco */


/* v48: fechas cortas y valores económicos en formato moneda */
.money-value {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}


/* v49: total concedido junto al número de subvenciones */
.subvenciones-summary,
.total-subvenciones-box {
	white-space: nowrap;
}


/* v50: contador de subvenciones con total concedido en el mismo formato */
#subvenciones + .section-subtitle + .counter-pill,
.section-actions .counter-pill {
	white-space: nowrap;
}


/* v51: contador claro de expedientes y total concedido */
.counter-pill-subvenciones {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}


/* v52: servicios sin columnas internas y coste en formato moneda */
.servicios-table td {
	vertical-align: middle;
}


/* v57: logo con fallback PNG/JPG */
.company-logo-box {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 74px;
	height: 74px;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #e2ebf3;
	box-shadow: 0 8px 24px rgba(15, 56, 88, 0.08);
	padding: 8px;
	margin-right: 16px;
	flex: 0 0 auto;
}

.company-logo-box img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}

.company-logo-inline-head img {
	max-width: 72px;
	max-height: 52px;
	object-fit: contain;
}


/* v58: logo integrado en la cabecera azul de la ficha */
.company-hero {
	display: flex;
	align-items: center;
	gap: 16px;
}

.company-hero-main {
	min-width: 0;
	flex: 1 1 auto;
}

.company-hero-logo {
	width: 76px;
	height: 76px;
	min-width: 76px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.9);
	box-shadow: 0 10px 26px rgba(0, 33, 63, 0.18);
	padding: 8px;
}

.company-hero-logo img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}

@media (max-width: 760px) {
	.company-hero {
		align-items: flex-start;
		gap: 12px;
	}

	.company-hero-logo {
		width: 58px;
		height: 58px;
		min-width: 58px;
		border-radius: 14px;
	}

	.company-hero-actions {
		margin-left: 0;
	}
}


/* v61: logo únicamente en la cabecera azul */
.company-logo-inline-head {
	display: contents;
}

.company-logo-inline-head img,
.ficha-section-datos .company-logo-box,
.ficha-section-datos .company-logo-inline-head img {
	display: none !important;
}

.company-hero-logo {
	display: flex;
}




/* v63: logo de empresa comprobado por PHP, solo en cabecera */
.company-hero {
	display: flex;
	align-items: center;
	gap: 16px;
}

.company-hero-main {
	min-width: 0;
	flex: 1 1 auto;
}

.company-hero-logo {
	width: 76px;
	height: 76px;
	min-width: 76px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.9);
	box-shadow: 0 10px 26px rgba(0, 33, 63, 0.18);
	padding: 8px;
}

.company-hero-logo img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}

.ficha-section-datos img[alt^="Logo"],
.ficha-section-datos .company-logo-box,
.ficha-section-datos .company-logo-inline-head {
	display: none !important;
}


/* v64: vista marketiniana solo para usuarios empresa */
.ficha-empresa-marketing .company-hero {
	position: relative;
	overflow: hidden;
}

.ficha-empresa-marketing .company-hero::after {
	content: "";
	position: absolute;
	right: -70px;
	top: -70px;
	width: 190px;
	height: 190px;
	border-radius: 999px;
	background: rgba(255,255,255,.10);
	pointer-events: none;
}

.empresa-value-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
	gap: 18px;
	margin: 16px 0 18px;
	padding: 22px;
	border-radius: 24px;
	background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,248,252,.98));
	border: 1px solid rgba(16,57,87,.14);
	box-shadow: 0 16px 38px rgba(16,57,87,.11);
}

.empresa-value-intro h2 {
	margin: 4px 0 8px;
	color: #103957;
	font-size: clamp(22px, 2vw, 30px);
	line-height: 1.12;
}

.empresa-value-intro p {
	margin: 0;
	color: #5f7182;
	font-size: 15px;
	line-height: 1.55;
	max-width: 760px;
}

.empresa-value-kpis {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.empresa-kpi-card {
	border-radius: 18px;
	background: #fff;
	border: 1px solid #e1eaf2;
	padding: 15px;
	box-shadow: 0 10px 24px rgba(16,57,87,.07);
	min-height: 112px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.empresa-kpi-card strong {
	display: block;
	font-size: 32px;
	line-height: 1;
	color: #103957;
	margin-bottom: 8px;
	font-weight: 950;
}

.empresa-kpi-card span {
	display: block;
	color: #586b7c;
	font-size: 13px;
	line-height: 1.25;
	font-weight: 800;
}

.empresa-kpi-blue { border-top: 4px solid #1a77ab; }
.empresa-kpi-cyan { border-top: 4px solid #36a3b5; }
.empresa-kpi-red { border-top: 4px solid #c94444; }
.empresa-kpi-orange { border-top: 4px solid #e09136; }

.ficha-empresa-marketing .section-heading,
.ficha-empresa-marketing .module h3 {
	letter-spacing: -0.01em;
}

.ficha-empresa-marketing .counter-pill {
	font-weight: 950;
}

@media (max-width: 980px) {
	.empresa-value-panel {
		grid-template-columns: 1fr;
	}

	.empresa-value-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.empresa-value-panel {
		padding: 16px;
		border-radius: 20px;
	}

	.empresa-value-kpis {
		grid-template-columns: 1fr;
	}

	.empresa-kpi-card {
		min-height: auto;
	}
}


/* v68: mejoras de visualización para perfil técnico interno */
.panel-grid-tecnico {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.panel-card-primary {
	border-top: 4px solid #1a77ab;
}

.panel-card-warning {
	border-top: 4px solid #e09136;
}

.panel-card-muted {
	border-top: 4px solid #667085;
}

.panel-tools-section .panel-section-head p {
	margin: 4px 0 0;
	color: #667085;
}

.panel-tool-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	padding: 16px 18px 18px;
}

.panel-tool-card {
	display: block;
	background: linear-gradient(135deg,#ffffff 0%,#f6f9fc 100%);
	border: 1px solid #dbe4ee;
	border-radius: 18px;
	padding: 16px;
	text-decoration: none;
	color: #103957;
	box-shadow: 0 10px 24px rgba(16,57,87,.07);
	transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.panel-tool-card:hover,
.panel-tool-card:focus {
	transform: translateY(-2px);
	border-color: rgba(26,119,171,.55);
	box-shadow: 0 14px 32px rgba(16,57,87,.13);
	outline: none;
}

.panel-tool-card strong {
	display: block;
	font-size: 16px;
	margin-bottom: 6px;
}

.panel-tool-card span {
	display: block;
	color: #667085;
	font-size: 13px;
	line-height: 1.35;
}

.tecnico-control-panel {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, .9fr);
	gap: 18px;
	margin: 16px 0 18px;
	padding: 22px;
	border-radius: 24px;
	background: linear-gradient(135deg, #ffffff 0%, #f4f8fc 100%);
	border: 1px solid rgba(16,57,87,.14);
	box-shadow: 0 16px 38px rgba(16,57,87,.10);
}

.tecnico-control-intro h2 {
	margin: 4px 0 8px;
	color: #103957;
	font-size: clamp(22px, 2vw, 30px);
	line-height: 1.12;
}

.tecnico-control-intro p {
	margin: 0;
	color: #5f7182;
	font-size: 15px;
	line-height: 1.55;
	max-width: 760px;
}

.tecnico-kpi-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.tecnico-kpi-card {
	border-radius: 18px;
	background: #fff;
	border: 1px solid #e1eaf2;
	padding: 15px;
	box-shadow: 0 10px 24px rgba(16,57,87,.07);
}

.tecnico-kpi-card span {
	display: block;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .08em;
	margin-bottom: 8px;
}

.tecnico-kpi-card strong {
	display: block;
	font-size: 28px;
	line-height: 1;
	color: #103957;
	font-weight: 950;
}

.tecnico-alert-box,
.tecnico-ok-box {
	grid-column: 1 / -1;
	border-radius: 18px;
	padding: 15px 16px;
}

.tecnico-alert-box {
	background: #fff8ed;
	border: 1px solid #f2d3a7;
	color: #7b4d12;
}

.tecnico-alert-box strong,
.tecnico-ok-box strong {
	display: block;
	margin-bottom: 8px;
}

.tecnico-alert-box ul {
	margin: 0;
	padding-left: 20px;
}

.tecnico-alert-box li {
	margin: 4px 0;
}

.tecnico-ok-box {
	background: #eefaf4;
	border: 1px solid #bfe7d0;
	color: #145a32;
}

.tecnico-ok-box span {
	display: block;
	color: #276749;
}

@media (max-width: 980px) {
	.panel-grid-tecnico,
	.panel-tool-grid,
	.tecnico-control-panel {
		grid-template-columns: 1fr;
	}

	.tecnico-kpi-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.tecnico-kpi-grid {
		grid-template-columns: 1fr;
	}
}


/* v69: botones de acción en solicitudes-cambios */
.request-actions-cell,
.actions-cell.request-actions-cell {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	white-space: nowrap;
}

.request-action-btn,
.request-action-btn:link,
.request-action-btn:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 8px 12px;
	border-radius: 999px;
	border: 1px solid transparent;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 14px rgba(16,57,87,.10);
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
}

.request-action-btn:hover,
.request-action-btn:focus {
	transform: translateY(-1px);
	box-shadow: 0 10px 20px rgba(16,57,87,.16);
	outline: none;
	text-decoration: none;
}

.request-action-detail,
.request-action-detail:link,
.request-action-detail:visited {
	background: #103957;
	color: #ffffff;
	border-color: #103957;
}

.request-action-detail:hover,
.request-action-detail:focus {
	background: #174f78;
	color: #ffffff;
	border-color: #174f78;
}

.request-action-sql,
.request-action-sql:link,
.request-action-sql:visited {
	background: #ffffff;
	color: #1a77ab;
	border-color: #b9d9ea;
}

.request-action-sql:hover,
.request-action-sql:focus {
	background: #eef8fd;
	color: #0f5c87;
	border-color: #7db9d5;
}

@media (max-width: 720px) {
	.request-actions-cell,
	.actions-cell.request-actions-cell {
		flex-direction: column;
		align-items: stretch;
		white-space: normal;
	}

	.request-action-btn {
		width: 100%;
	}
}


/* v70: botones reforzados en solicitudes-cambios */
.actions-cell.request-actions-cell,
td.request-actions-cell {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 8px !important;
	white-space: nowrap !important;
	min-width: 190px !important;
}

.btn-request-action,
.btn-request-action:link,
.btn-request-action:visited {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 34px !important;
	padding: 8px 13px !important;
	border-radius: 999px !important;
	border: 1px solid transparent !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-shadow: 0 7px 16px rgba(16,57,87,.14) !important;
	font-family: inherit !important;
	cursor: pointer !important;
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease !important;
}

.btn-request-action:hover,
.btn-request-action:focus {
	transform: translateY(-1px) !important;
	box-shadow: 0 11px 24px rgba(16,57,87,.20) !important;
	outline: none !important;
	text-decoration: none !important;
}

.btn-request-detail,
.btn-request-detail:link,
.btn-request-detail:visited {
	background: #103957 !important;
	color: #ffffff !important;
	border-color: #103957 !important;
}

.btn-request-detail:hover,
.btn-request-detail:focus {
	background: #174f78 !important;
	color: #ffffff !important;
	border-color: #174f78 !important;
}

.btn-request-sql,
.btn-request-sql:link,
.btn-request-sql:visited {
	background: #ffffff !important;
	color: #1a77ab !important;
	border-color: #b9d9ea !important;
}

.btn-request-sql:hover,
.btn-request-sql:focus {
	background: #eef8fd !important;
	color: #0f5c87 !important;
	border-color: #7db9d5 !important;
}


/* v71: botón Mailchimp en solicitudes */
.btn-request-mailchimp,
.btn-request-mailchimp:link,
.btn-request-mailchimp:visited {
	background: #ffe01b !important;
	color: #241c15 !important;
	border-color: #d9bf16 !important;
}

.btn-request-mailchimp:hover,
.btn-request-mailchimp:focus {
	background: #f2d219 !important;
	color: #241c15 !important;
	border-color: #bfa813 !important;
}
