.user-center-page {
  width: min(100%, var(--content-max-width));
  margin: 10px auto 18px;
  padding: 0 12px;
}

.user-center-shell {
  background: #fffdf7;
  border: 2px solid #d9a12d;
  box-shadow: 0 6px 18px rgba(123, 43, 0, 0.1);
}

.user-center-heading {
  padding: 12px 16px;
  background: linear-gradient(90deg, #b60009, #d12816 58%, #a96900);
  color: #ffd45a;
  border-bottom: 2px solid #e6bd58;
}

.user-center-heading span {
  display: block;
  margin-bottom: 4px;
  color: #fff4c8;
  font-size: 13px;
}

.user-center-heading h1 {
  margin: 0;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: 0;
}

.user-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid #efd7a6;
}

.user-summary-item {
  min-height: 66px;
  padding: 13px 14px;
  border-right: 1px solid #efd7a6;
  background: #fffaf0;
}

.user-summary-item:last-child {
  border-right: 0;
}

.user-summary-item span {
  display: block;
  margin-bottom: 5px;
  color: #7c5a22;
  font-size: 14px;
}

.user-summary-item strong {
  color: #3a1f00;
  font-size: 18px;
}

.user-menu {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  border-bottom: 1px solid #efd7a6;
}

.user-menu button {
  min-height: 40px;
  border: 1px solid #d9a12d;
  background: linear-gradient(180deg, #ffffff, #fff3d4);
  color: #8b1600;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.user-menu button:hover,
.user-menu button:focus-visible {
  border-color: #b60009;
  background: linear-gradient(180deg, #ffd45a, #f4bc37);
}

.user-materials {
  padding: 14px;
}

.user-materials h2 {
  margin: 0 0 10px;
  padding: 8px 12px;
  background: #b60009;
  color: #ffd45a;
  font-size: 19px;
  line-height: 1.2;
}

.user-material-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.user-empty-box {
  min-height: 94px;
  padding: 14px;
  border: 1px solid #e8c773;
  background: #ffffff;
}

.user-empty-box h3 {
  margin: 0 0 10px;
  color: #7a0600;
  font-size: 17px;
}

.user-empty-box p {
  margin: 0;
  color: #8a744f;
}

@media (max-width: 760px) {
  .user-center-page {
    margin: 8px auto 14px;
    padding: 0 8px;
  }

  .user-center-heading {
    padding: 10px 12px;
  }

  .user-center-heading h1 {
    font-size: 21px;
  }

  .user-summary,
  .user-menu,
  .user-material-grid {
    grid-template-columns: 1fr;
  }

  .user-summary-item {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid #efd7a6;
  }

  .user-summary-item:last-child {
    border-bottom: 0;
  }

  .user-menu {
    gap: 8px;
    padding: 10px;
  }

  .user-materials {
    padding: 10px;
  }
}
