/* Dashboard utente e checkout abbonamento - Seconda Memoria */

.sm-box {
  background: #f7faff;
  border-radius: 10px;
  padding: 18px 18px 10px 18px;
  box-shadow: 0 2px 8px #2196f311;
  margin-bottom: 18px;
}
.sm-title {
  font-size: 1.3em;
  font-weight: bold;
  color: #2196f3;
  margin-bottom: 10px;
}
.sm-btn, .btn, button {
  display: inline-block;
  background: #2196f3;
  color: #fff;
  font-weight: 600;
  border: none;
  border-radius: 8px;
  padding: 8px 22px;
  font-size: 1em;
  cursor: pointer;
  transition: background .2s;
  margin: 2px 0;
}
.sm-btn:hover, .btn:hover, button:hover {
  background: #1976d2;
  color: #fff;
}
.btn-outline-primary {
  background: #fff;
  color: #2196f3;
  border: 2px solid #2196f3;
}
.btn-outline-primary:hover {
  background: #e3f2fd;
  color: #1976d2;
}
.btn-success {
  background: #27ae60;
  color: #fff;
}
.btn-success:hover {
  background: #219150;
}
.btn-warning {
  background: #ffb300;
  color: #fff;
}
.btn-warning:hover {
  background: #e67e22;
}
.form-control, input[type="password"], input[type="text"], input[type="number"] {
  width: 100%;
  padding: 8px 10px;
  border: 1.5px solid #bcdffb;
  border-radius: 7px;
  font-size: 1em;
  margin-bottom: 8px;
  background: #fff;
  color: #222;
  box-sizing: border-box;
  transition: border .2s;
}
.form-control:focus, input:focus {
  border-color: #2196f3;
  outline: none;
}
.sm-backup-box {
  background: #e3f2fd;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 6px;
  font-size: 0.98em;
}
.sm-section-title {
  font-weight: bold;
  margin-bottom: 6px;
  color: #1976d2;
}
.sm-note {
  color: #888;
  font-size: 0.97em;
}
.sm-abbonamento-box {
  background: #fffbe7;
  border-radius: 10px;
  box-shadow: 0 2px 8px #ffb30022;
  padding: 18px 18px 10px 18px;
  margin-bottom: 18px;
}
@media (max-width: 600px) {
  .sm-box, .sm-abbonamento-box {
    padding: 12px 6vw 8px 6vw;
  }
  .sm-title { font-size: 1.1em; }
} 