/* ==================================
   IMPORT FONTS & RESET DI BASE
   ================================== */
   @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

   * {
       margin: 0;
       padding: 0;
       box-sizing: border-box;
   }
   
   body {
       font-family: 'Poppins', sans-serif;
       background-color: #f0f2f5;
       color: #333;
   }
   
   /* ==================================
      LOGIN PAGE STYLES
      ================================== */
   .login-container {
       display: flex;
       align-items: center;
       justify-content: center;
       height: 100vh; /* Occupa l'intera finestra */
   }
   
   .login-card {
       background: #fff;
       padding: 2rem;
       border-radius: 8px;
       box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
       width: 350px;
       text-align: center;
   }
   
   /* Form e gruppi */
   .login-card form {
       margin-top: 1rem;
   }
   
   /* Se vuoi form più uniformi, puoi usare display block oppure flex */
   .login-card .form-group {
       margin-bottom: 1.2rem; 
       text-align: left;
   }
   
   .login-card .form-group label {
       display: block;
       margin-bottom: 0.5rem;
       font-weight: bold;
   }
   
   .login-card .form-group input {
       width: 100%;
       padding: 0.75rem;
       border: 1px solid #ccc;
       border-radius: 4px;
       box-sizing: border-box;
       font-size: 0.95rem;
   }
   
   /* Bottone login */
   .login-card button {
       width: 100%;
       padding: 0.75rem;
       border: none;
       border-radius: 4px;
       background-color: #007bff;
       color: #fff;
       font-size: 1rem;
       cursor: pointer;
       margin-top: 1rem;
       font-weight: bold;
   }
   
   .login-card button:hover {
       background-color: #0056b3;
   }
   
   /* Messaggi di errore */
   .error {
       color: #d9534f;
       text-align: center;
       margin-bottom: 1rem;
   }
   
   /* ==================================
      ADMIN DASHBOARD STYLES
      ================================== */
   
   /* BODY SPECIFICO ADMIN */
   body.admin-page {
       min-height: 100vh;
       background-color: #f0f2f5;
   }
   
   /* NAVBAR */
   .admin-navbar {
       background-color: #007bff;
       color: #fff;
       padding: 15px 20px;
       display: flex;
       align-items: center;
       justify-content: space-between;
   }
   
   .admin-navbar h1 {
       margin: 0;
       font-size: 1.6rem;
   }
   
   .admin-navbar nav a {
       color: #fff;
       text-decoration: none;
       margin-left: 15px;
       font-weight: bold;
   }
   .admin-navbar nav a:hover {
       text-decoration: underline;
   }
   
   /* CONTENITORE PRINCIPALE */
   .admin-main {
       width: 90%;
       max-width: 1200px;
       margin: 20px auto;
   }
   
   /* SEZIONI/CARD */
   .admin-section {
       background: #fff;
       margin-bottom: 30px;
       padding: 20px;
       border-radius: 8px;
       box-shadow: 0 2px 8px rgba(0,0,0,0.1);
   }
   .admin-section h2 {
       margin-bottom: 10px;
       font-size: 1.3rem;
       border-left: 4px solid #007bff;
       padding-left: 8px;
   }
   .section-desc {
       font-size: 0.9rem;
       color: #555;
       margin-bottom: 20px;
   }
   
   /* TABELLE */
   .admin-table {
       width: 100%;
       border-collapse: collapse;
       background-color: #fff;
       margin-top: 10px;
       box-shadow: 0 1px 5px rgba(0,0,0,0.05);
   }
   
   .admin-table th, .admin-table td {
       padding: 10px;
       border: 1px solid #ddd;
       vertical-align: middle;
       font-size: 0.95rem;
   }
   
   .admin-table th {
       background-color: #f8f9fa;
       text-align: left;
       font-weight: bold;
   }
   
   /* STILI FORM (Admin) */
   .admin-section form {
       display: flex;
       flex-wrap: wrap;
       align-items: center;
       gap: 0.5rem;
       margin-bottom: 1rem;
   }
   
   .admin-section label {
       font-weight: bold;
   }
   
   .admin-section input[type="text"],
   .admin-section select {
       padding: 0.5rem 0.75rem;
       border: 1px solid #ccc;
       border-radius: 4px;
       font-size: 0.95rem;
       min-width: 200px;
       max-width: 350px;
       box-sizing: border-box;
   }
   
   /* BOTTONI */
   .admin-section button {
       background-color: #007bff;
       border: none;
       border-radius: 4px;
       color: #fff;
       padding: 0.5rem 0.9rem;
       cursor: pointer;
       font-weight: bold;
       font-size: 0.95rem;
   }
   
   .admin-section button:hover {
       background-color: #0056b3;
   }
   
   .admin-section button[type="submit"] {
       margin-right: 0.5rem;
   }
   
   /* LINK & AZIONI */
   .btn-add {
       display: inline-block;
       margin-top: 15px;
       background-color: #28a745;
       color: #fff;
       padding: 8px 14px;
       border-radius: 5px;
       text-decoration: none;
       font-weight: bold;
       font-size: 0.9rem;
   }
   .btn-add:hover {
       background-color: #218838;
   }
   
   .action-link {
       margin-right: 8px;
       color: #007bff;
       text-decoration: none;
       font-weight: bold;
       font-size: 0.9rem;
   }
   .action-link:hover {
       text-decoration: underline;
   }
   
   /* MODALI (se eventualmente utilizzati) */
   .modal-overlay {
       position: fixed;
       top: 0; 
       left: 0; 
       right: 0; 
       bottom: 0;
       width: 100%;
       height: 100%;
       background: rgba(0,0,0,0.5);
       display: none; 
       justify-content: center;
       align-items: center;
       z-index: 9999;
       overflow: auto;
   }
   
   .modal {
       background: #fff;
       padding: 20px;
       width: 400px;
       border-radius: 8px;
       position: relative;
       box-shadow: 0 2px 8px rgba(0,0,0,0.2);
   }
   .modal h2 {
       margin-bottom: 1rem;
       font-size: 1.1rem;
   }
   .modal-close {
       position: absolute;
       top: 10px; 
       right: 10px;
       background: none;
       border: none;
       font-size: 1.2rem;
       cursor: pointer;
   }
   .btn-submit {
       background-color: #007bff;
       color: #fff;
       padding: 8px 14px;
       border: none;
       border-radius: 4px;
       cursor: pointer;
       font-weight: bold;
   }
   .btn-submit:hover {
       background-color: #0056b3;
   }

  

   