templates/registration/index.html.twig line 1

Open in your IDE?
  1. {% extends 'baseLogin.html.twig' %}
  2. {% block title %}Créer un compte — Macssolution{% endblock %}
  3. {% block styles %}
  4. <style>
  5.     .lf-card {
  6.         width: 100%;
  7.         max-width: 460px;
  8.         background: #fff;
  9.         border: 1px solid #e2e8f0;
  10.         border-radius: 20px;
  11.         box-shadow: 0 8px 40px rgba(0,0,0,0.08);
  12.         padding: 2.5rem 2.25rem;
  13.     }
  14.     .lf-header {
  15.         text-align: center;
  16.         margin-bottom: 2rem;
  17.     }
  18.     .lf-header__logo {
  19.         width: 60px; height: 60px;
  20.         border-radius: 14px;
  21.         object-fit: cover;
  22.         box-shadow: 0 4px 12px rgba(59,130,246,0.2);
  23.         margin-bottom: 1.25rem;
  24.     }
  25.     .lf-header__title {
  26.         font-size: 1.5rem;
  27.         font-weight: 700;
  28.         color: #1f2937;
  29.         letter-spacing: -0.02em;
  30.         margin-bottom: 0.375rem;
  31.     }
  32.     .lf-header__sub {
  33.         font-size: 0.9rem;
  34.         color: #64748b;
  35.     }
  36.     .lf-group {
  37.         margin-bottom: 1.125rem;
  38.     }
  39.     .lf-label {
  40.         display: block;
  41.         font-size: 0.8125rem;
  42.         font-weight: 600;
  43.         color: #374151;
  44.         margin-bottom: 0.375rem;
  45.     }
  46.     .lf-input-wrap {
  47.         position: relative;
  48.     }
  49.     .lf-input-wrap i {
  50.         position: absolute;
  51.         left: 0.875rem;
  52.         top: 50%;
  53.         transform: translateY(-50%);
  54.         color: #94a3b8;
  55.         font-size: 0.9rem;
  56.         pointer-events: none;
  57.     }
  58.     .lf-input {
  59.         width: 100%;
  60.         height: 46px;
  61.         padding: 0 0.875rem 0 2.5rem;
  62.         border: 1px solid #e2e8f0;
  63.         border-radius: 10px;
  64.         font-size: 0.9375rem;
  65.         color: #1f2937;
  66.         background: #f8fafc;
  67.         font-family: inherit;
  68.         transition: all 0.2s ease;
  69.         outline: none;
  70.     }
  71.     .lf-input:focus {
  72.         border-color: #3b82f6;
  73.         background: #fff;
  74.         box-shadow: 0 0 0 3px rgba(59,130,246,0.12);
  75.     }
  76.     .lf-submit {
  77.         width: 100%;
  78.         height: 48px;
  79.         background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
  80.         color: #fff;
  81.         border: none;
  82.         border-radius: 10px;
  83.         font-size: 0.9375rem;
  84.         font-weight: 700;
  85.         font-family: inherit;
  86.         cursor: pointer;
  87.         display: flex;
  88.         align-items: center;
  89.         justify-content: center;
  90.         gap: 0.5rem;
  91.         transition: all 0.2s ease;
  92.         margin-top: 1.5rem;
  93.     }
  94.     .lf-submit:hover {
  95.         transform: translateY(-1px);
  96.         box-shadow: 0 6px 20px rgba(59,130,246,0.4);
  97.     }
  98.     .lf-bottom {
  99.         text-align: center;
  100.         margin-top: 1.5rem;
  101.         font-size: 0.8125rem;
  102.         color: #94a3b8;
  103.     }
  104.     .lf-error {
  105.         display: flex;
  106.         align-items: flex-start;
  107.         gap: 0.625rem;
  108.         background: #fef2f2;
  109.         border: 1px solid #fecaca;
  110.         color: #dc2626;
  111.         border-radius: 10px;
  112.         padding: 0.75rem 1rem;
  113.         font-size: 0.875rem;
  114.         font-weight: 500;
  115.         margin-bottom: 1.5rem;
  116.     }
  117. </style>
  118. {% endblock %}
  119. {% block body %}
  120. <div class="lf-card">
  121.     <div class="lf-header">
  122.         <img src="{{ asset('assets/images/logo-macssolution.png') }}" alt="Macssolution" class="lf-header__logo">
  123.         <h1 class="lf-header__title">Créer un compte</h1>
  124.         <p class="lf-header__sub">Rejoignez Macssolution dès maintenant</p>
  125.     </div>
  126.     {{ form_start(form) }}
  127.         <!-- Email -->
  128.         <div class="lf-group">
  129.             <label class="lf-label">{{ form_label(form.email) }}</label>
  130.             <div class="lf-input-wrap">
  131.                 {{ form_widget(form.email, {'attr': {'class': 'lf-input', 'placeholder': 'votre@email.com'}}) }}
  132.                 <i class="fas fa-envelope"></i>
  133.             </div>
  134.             {{ form_errors(form.email) }}
  135.         </div>
  136.         <!-- Mot de passe -->
  137.         <div class="lf-group">
  138.             <label class="lf-label">{{ form_label(form.password.first) }}</label>
  139.             <div class="lf-input-wrap">
  140.                 {{ form_widget(form.password.first, {'attr': {'class': 'lf-input', 'placeholder': '••••••••'}}) }}
  141.                 <i class="fas fa-lock"></i>
  142.             </div>
  143.             {{ form_errors(form.password.first) }}
  144.         </div>
  145.         <!-- Confirmer mot de passe -->
  146.         <div class="lf-group">
  147.             <label class="lf-label">{{ form_label(form.password.second) }}</label>
  148.             <div class="lf-input-wrap">
  149.                 {{ form_widget(form.password.second, {'attr': {'class': 'lf-input', 'placeholder': '••••••••'}}) }}
  150.                 <i class="fas fa-lock"></i>
  151.             </div>
  152.             {{ form_errors(form.password.second) }}
  153.         </div>
  154.         <button type="submit" class="lf-submit">
  155.             <i class="fas fa-user-plus"></i>
  156.             Créer mon compte
  157.         </button>
  158.     {{ form_end(form) }}
  159.     <div class="lf-bottom">
  160.         Déjà un compte ?
  161.         <a href="{{ path('app_login') }}" style="color:#3b82f6;font-weight:600;text-decoration:none;">Se connecter</a>
  162.     </div>
  163.     <div class="lf-bottom" style="margin-top:0.5rem;">
  164.         &copy; {{ "now"|date("Y") }} Macssolution — Tous droits réservés
  165.     </div>
  166. </div>
  167. {% endblock %}