html, body {
  height:   100%;
  margin:   0 !important;
  padding:  0 !important;
}

body {
  background-color:  #c8e6c9 !important;
  background-image:  linear-gradient(140deg, #e8f5e9 0%, #c8e6c9 50%, #a5d6a7 100%) !important;
  background-size:   100% 100% !important;
  background-repeat: no-repeat !important;
}

/* ---- Nascondi navbar ---- */
.navbar {
  display: none !important;
}

/* ---- Centering assoluto — zero scroll ---- */
.row-fluid {
  position:        fixed !important;
  top:             0 !important;
  left:            0 !important;
  right:           0 !important;
  bottom:          0 !important;
  width:           100% !important;
  margin:          0 !important;
  padding:         0 !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
}

/* Override inline style="width:360px; margin-top:40px" */
.row-fluid > .container {
  width:      420px !important;
  max-width:  calc(100vw - 32px) !important;
  margin:     0 !important;
  float:      none !important;
  padding:    0 !important;
}

/* ---- Card ---- */
.form-signin {
  padding:          44px 40px 36px !important;
  background:       #c1edc9 !important;
  background-image: none !important;
  border-radius:    16px !important;
  border:           none !important;
  box-shadow:
    0 32px 80px rgba(0, 0, 0, 0.4),
    0  8px 24px rgba(0, 0, 0, 0.2) !important;
}

/* ---- App name ---- */
.form-signin .form-signin-heading {
  font-family:    -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  color:          #136c3b !important;
  font-size:      44px;
  font-weight:    700;
  letter-spacing: -0.4px;
  margin-bottom:  4px;
  text-align:     center;
}

/* ---- Sottotitolo ---- */
h5 {
  font-family:   -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  color:         #7a9a80 !important;
  font-size:     24px;
  font-weight:   400;
  margin-bottom: 28px;
  text-align:    center;
}

/* ---- Input fields ---- */
.form-signin input[type="text"],
.form-signin input[type="password"] {
  width:            100%;
  font-size:        14px;
  height:           46px;
  margin-bottom:    12px;
  padding:          11px 14px;
  border:           1.5px solid #d4e2d8;
  border-radius:    10px;
  background-color: #f8faf9 !important;
  color:            #1a2e1f !important;
  box-sizing:       border-box;
  box-shadow:       none;
  transition:       border-color 0.2s ease, box-shadow 0.2s ease;
  font-family:      -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}
.form-signin input[type="text"]::placeholder,
.form-signin input[type="password"]::placeholder {
  color: #aabcb0;
}
.form-signin input[type="text"]:focus,
.form-signin input[type="password"]:focus {
  border-color:     #27ae60;
  background-color: #ffffff !important;
  box-shadow:       0 0 0 3px rgba(39,174,96,0.15);
  outline:          none;
  color:            #1a2e1f !important;
}

/* ---- Bottone Login ---- */
.form-signin .btn-large {
  width:               100%;
  height:              48px;
  font-size:           14px;
  font-weight:         600;
  border-radius:       10px;
  margin-top:          10px;
  border:              none;
  letter-spacing:      0.5px;
  background-position: 0 0 !important;
  transition:          box-shadow 0.2s ease, transform 0.2s ease, background-image 0.2s ease;
  font-family:         -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}
.form-signin .btn-large:hover,
.form-signin .btn-large:focus {
  background-position: 0 0 !important;
  filter:              none !important;
}
.form-signin .btn-large.btn-success {
  background-color: transparent;
  background-image: linear-gradient(135deg, #27ae60 0%, #136c3b 100%) !important;
  color:            #ffffff !important;
  text-shadow:      none;
  filter:           none !important;
  box-shadow:       0 4px 16px rgba(19,108,59,0.35);
}
.form-signin .btn-large.btn-success:hover {
  background-image: linear-gradient(135deg, #2ecc71 0%, #1a8a4a 100%) !important;
  box-shadow:       0 6px 22px rgba(19,108,59,0.45);
  transform:        translateY(-1px);
}
.form-signin .btn-large.btn-success:active {
  transform: translateY(0);
}
.form-signin .btn-large.btn-danger {
  background-image: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
  color:            #ffffff !important;
  text-shadow:      none;
  filter:           none !important;
  box-shadow:       0 4px 14px rgba(192,57,43,0.3);
}

/* ---- Google OAuth button ---- */
.form-signin .btn-large:not(.btn-success):not(.btn-danger) {
  border:           1.5px solid #d4e2d8 !important;
  background:       #ffffff !important;
  background-image: none !important;
  color:            #4a6a50 !important;
  box-shadow:       0 2px 8px rgba(0,0,0,0.06) !important;
  margin-top:       8px;
}

/* ---- Separatore "oppure" tra Login e Google ---- */
.login-or-divider {
  display:     flex;
  align-items: center;
  margin:      16px 0 4px;
  gap:         10px;
  color:       #aabcb0;
  font-size:   12px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}
.login-or-divider::before,
.login-or-divider::after {
  content:    '';
  flex:       1;
  height:     1px;
  background: #d4e2d8;
}

h1, h2, h3, h4, h5, h6 {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}



#btn-qrlogin {
  padding: 9px;
  margin-top: 10px;
  margin-left: 10px;
}
