{% extends 'common/base-login.html.twig' %}
{% block form %}
<style>
html, body {
height: 100%;
margin: 0;
background:
linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)),
url('{{ asset("assets/images/backgrounds/background_login.png") }}') center/cover;
}
.login-bg {
inset: 0;
background:
linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)),
url('{{ asset("assets/images/backgrounds/background_login.png") }}') center/cover no-repeat;
}
.split-screen {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1.2fr 1fr 0.8fr;
min-height: 100vh;
}
.left-side {
display: flex;
align-items: center;
padding: 4rem 3rem;
color: #fafffd;
}
.center-side {
display: flex;
justify-content: center;
align-items: center;
padding: 2rem;
}
.container-login {
width: 100%;
max-width: 950px;
margin-top: -150px;
}
/* LOGO PRINCIPAL MÁS GRANDE */
.main-logo {
max-width: 510px; /* 50% más grande */
display: block;
margin: 0 auto;
padding: 20px;
}
.apps-grid {
width: 100%;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 2rem;
}
/* columnas dinámicas según nº de módulos activos */
.apps-grid.apps-1-cols {
grid-template-columns: 1fr;
}
.apps-grid.apps-2-cols {
grid-template-columns: repeat(2, 1fr);
}
.apps-grid.apps-3-cols {
grid-template-columns: repeat(3, 1fr);
}
.app-card {
background: rgba(0,0,0,0);
/*backdrop-filter: blur(6px);*/
padding: 3rem 2rem;
text-align: center;
border-radius: 12px;
/*box-shadow: 0 8px 30px rgba(0,0,0,0.25);*/
color: #fafffd;
transition: transform .25s, box-shadow .25s;
min-height: 330px;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.app-card:nth-child(1) { /* Venues */ }
.app-card:nth-child(2) { /* Catering */ }
.app-card:nth-child(3) { /* AV */ }
/* SOMBRAS COLOREADAS EN HOVER */
.app-card:nth-child(1):hover { /* Venues */
box-shadow: 0 0 22px rgba(189,191,9,0.85);
background: rgba(189,191,9,0.05);
}
.app-card:nth-child(2):hover { /* Catering */
box-shadow: 0 0 22px rgba(255,146,28,0.85);
background: rgba(255,146,28,0.05);
}
.app-card:nth-child(3):hover { /* AV */
box-shadow: 0 0 22px rgba(0,191,139,0.85);
background: rgba(0,191,139,0.05);
}
.app-logo {
max-width: 170px;
margin: 0 auto 1rem auto;
}
.app-description {
font-size: 1.3rem;
color: #ded9e2;
margin-bottom: 1.5rem;
}
.btn-app {
border-radius: .75rem;
padding: .6rem 1.4rem;
}
.right-side {
display: flex;
align-items: center;
padding: 4rem 3rem;
color: #fafffd;
}
.feature {
display: flex;
gap: .85rem;
align-items: flex-start;
margin-bottom: .9rem;
}
.feature-dot {
width: .65rem;
height: .65rem;
border-radius: 50%;
background: #fafffd;
margin-top: .45rem;
}
@media (max-width: 1400px) {
.apps-grid { grid-template-columns: 1fr; max-width: 450px; margin: 0 auto; }
}
@media (max-width: 1200px) {
.split-screen { grid-template-columns: 1fr 1fr; }
.right-side { display: none; }
}
@media (max-width: 768px) {
.split-screen { grid-template-columns: 1fr; }
.left-side { display: none; }
.center-side { padding-top: 2rem; }
}
</style>
{% set activeModules = 0 %}
{% if configuration.mvenues %}{% set activeModules = activeModules + 1 %}{% endif %}
{% if configuration.mcatering %}{% set activeModules = activeModules + 1 %}{% endif %}
{% if configuration.mav %}{% set activeModules = activeModules + 1 %}{% endif %}
<div class="login-bg"></div>
<div class="split-screen">
<!-- IZQUIERDA -->
<section class="left-side">
<div>
<h1>Plataforma MANTE</h1>
<h3>
Accede a cualquier aplicación desde un único punto:
gestión de venues, catering y audiovisuales para eventos.
</h3>
</div>
</section>
<!-- CENTRO -->
<section class="center-side">
<div class="container-login">
<!-- LOGO PRINCIPAL -->
<img src="{{ asset('assets/images/platform/Logo_Mante.png') }}"
class="main-logo"
alt="MANTE">
{# Mensajes de envío de correo y cambios satisfactorios #}
{% for label, messages in app.flashes %}
{% for message in messages %}
<div style="text-align: center; padding: 10px; margin-bottom: 15px; border-radius: 4px; color: black; background-color: {{ label == 'danger' ? '#dc3545' : '#ffffff' }};">
<strong>{{ message }}</strong>
</div>
{% endfor %}
{% endfor %}
<div class="apps-grid apps-{{ activeModules }}-cols">
{% if configuration.mvenues %}
<!-- Venues -->
<div class="app-card">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="42" height="42" viewBox="0 0 24 24" style="display: block; margin: 0 auto 1rem auto; color:#bdbf09;">
<path fill="currentColor" d="M12 2l-10 6h20l-10-6zM4 9h16v2h-16v-2zM5 12h2v8h-2v-8zM9 12h2v8h-2v-8zM13 12h2v8h-2v-8zM17 12h2v8h-2v-8zM2 21h20v2h-20v-2z"></path>
</svg>
<img src="{{ asset('/uploads/branding/venues/logo_ManteVenues.png') }}"
class="app-logo" alt="ManteVenues">
<p class="app-description">
Espacios, salas, reservas y presupuestos.
</p>
<a href="{{ path('app_login_branded', {'type': 'venues'}) }}" class="btn bg-btn-limerick btn-app">
Entrar
</a>
</div>
{% endif %}
{% if configuration.mcatering %}
<!-- Catering -->
<div class="app-card">
<i class="icon-cup2" style="font-size:42px; color:#FF921C; margin-bottom:1rem;"></i>
<img src="{{ asset('/uploads/branding/catering/logo_ManteCatering.png') }}"
class="app-logo" alt="ManteCatering">
<p class="app-description">
Menús, productos y coordinación de servicios.
</p>
<a href="{{ path('app_login_branded', {'type': 'catering'}) }}" class="btn bg-btn-orange_cat btn-app">
Entrar
</a>
</div>
{% endif %}
{% if configuration.mav %}
<!-- AV -->
<div class="app-card">
<i class="icon-video-camera" style="font-size:42px; color:#00bf8b; margin-bottom:1rem;"></i>
<img src="{{ asset('/uploads/branding/av/logo_ManteAv.png') }}"
class="app-logo" alt="ManteAV">
<p class="app-description">
Equipamiento técnico e inventario de audiovisuales.
</p>
<a href="{{ path('app_login_branded', {'type': 'av'}) }}" class="btn bg-btn-green_av btn-app">
Entrar
</a>
</div>
{% endif %}
</div>
</div>
</section>
<!-- DERECHA -->
<aside class="right-side">
<div>
<div class="feature">
<h5><strong>Todo centralizado</strong><br>Acceso unificado a todas las áreas.</h5>
</div>
<div class="feature">
<h5><strong>Profesional</strong><br>Diseño coherente en todo el ecosistema MANTE.</h5>
</div>
<div class="feature">
<h5><strong>Eficiente</strong><br>Optimiza tu trabajo en cada módulo especializado.</h5>
</div>
</div>
</aside>
</div>
{% endblock %}
{% block javascripts %}{% endblock %}