.layout {
	display: flex;
	max-width: 1300px;
	margin: 0 auto;
}

/* 桌面端侧边栏样式 */
.sidebar {
	width: 300px;
	flex-shrink: 0;
	position: sticky;            /* 左侧粘性固定 */
	top: 48px;                   /* 距顶部的吸顶距离，可调 */
	height: calc(100vh - 56px);  /* 自适应 */
	max-height: calc(100vh - 110px);
	display: flex;
	flex-direction: column;
	align-items: center;
	z-index: 10;
}
.sidebar-card {
  width: 94%;
  margin: 36px 0 0 0;
  border-radius: 32px;
  background: linear-gradient(120deg, #f4f8fb 80%, #ede9e6 100%);
  box-shadow: 0 8px 32px 0 rgba(79,140,255,0.10), 0 2px 8px rgba(0,0,0,0.08);
  padding: 2.2em 1.5em 1.8em 1.5em;
  display: flex;
  flex-direction: column;
  gap: 2em;
  position: relative;
  overflow: visible;
  border: 1.5px solid #e7ecf5;
}

.today-quote {
  background: linear-gradient(120deg, #63bfa5 0%, #4f8cff 100%);
  color: #fff;
  text-align: center;
  border-radius: 22px;
  padding: 1.1em 0 0.9em 0;
  font-size: 0.8rem;
  box-shadow: 0 2px 8px #4f8cff22;
  margin-bottom: 0.9em;
  letter-spacing: 1.5px;
  position: relative;
}
.today-quote h2 {
  font-size: 1.1em;
  font-weight: 700;
  margin-bottom: 0.6em;
  letter-spacing: 2px;
}
.today-quote::after {
  content: "";
  display: block;
  margin: 12px auto 0 auto;
  width: 40%;
  height: 2px;
  border-radius: 1px;
  background: linear-gradient(90deg, #fff6 0%, #fff0 100%);
}

.profile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5em;
}
.tabs {
  font-weight: bold;
  color: #4f8cff;
  font-size: 1.18em;
  margin-bottom: 0.5em;
  letter-spacing: 0.05em;
}
.avatar {
  width: 86px;
  height: 86px;
  margin: 0.6em auto 0.6em auto;
  border-radius: 50%;
  display: block;
  object-fit: cover;
  box-shadow: 0 3px 24px #4f8cff22;
  border: 4px solid transparent;
  background: linear-gradient(120deg, #63bfa5, #4f8cff) border-box;
  background-clip: padding-box, border-box;
  background-origin: border-box;
  transition: box-shadow 0.2s, border 0.2s;
}
.avatar:hover {
  box-shadow: 0 6px 36px #4f8cff33;
  border-color: #4f8cff;
}

.name {
  font-size: 1.38em;
  color: #2499af;
  font-weight: 700;
  text-align: center;
  margin: 0.2em 0 0.6em 0;
  letter-spacing: 2px;
  font-family: 'Dancing Script', 'Zhi Mang Xing', cursive, sans-serif;
}

.info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.8em;
  font-size: 1.08em;
  color: #29335c;
  width: 100%;
  gap: 6px;
}
.info > div {
  flex: 1 1 0;
  background: #eaf6ff;
  border-radius: 12px;
  margin: 0 2px;
  padding: 0.5em 0 0.2em 0;
  text-align: center;
  font-size: 1.15em;
  box-shadow: 0 1px 6px #4f8cff11;
  transition: background 0.18s;
}
.info > div:hover {
  background: #d2e8ff;
}

.info span {
  display: block;
  font-size: 0.85em;
  color: #7d8595;
  margin-top: 2px;
}
.info a{
	text-decoration: none;
}
.links {
  text-align: center;
  margin-top: 1em;
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}
.links a {
  color: #4f8cff;
  background: #f4f8fb;
  border-radius: 18px;
  padding: 6px 16px;
  font-size: 1.06em;
  text-decoration: none;
  box-shadow: 0 1px 6px #4f8cff11;
  transition: background 0.18s, color 0.18s, box-shadow 0.18s;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.links a:hover {
  background: linear-gradient(90deg, #63bfa5 0%, #4f8cff 100%);
  color: #fff;
  box-shadow: 0 2px 12px #4f8cff22;
}
.links a i {
  margin-right: 4px;
  font-size: 1.2em;
}


/* 主内容区 */
.main-content {
  flex: 1;
  padding: 32px;
  min-width: 0;
}

@media (max-width: 900px) {
  .layout {
	flex-direction: column;
	align-items: center;
  }
  .sidebar {
	width: 98vw;
	position: static;
	height: auto;
	margin: 0 auto;
  }
  .main-content {
	padding: 18px 4vw 0 4vw;
  }
}

@media (max-width: 600px) {
  .sidebar .card {
	border-radius: 18px;
	padding: 1em 0.5em;
  }
  .avatar {
	width: 68px;
	height: 68px;
  }
  .today-quote {
	border-radius: 20px;
	font-size: 1.15em;
  }
}
		