|
|
@@ -0,0 +1,233 @@
|
|
|
+/* 个人中心水墨风格样式 */
|
|
|
+
|
|
|
+/* 水墨色彩系统 */
|
|
|
+:root {
|
|
|
+ --profile-ink-light: #f5f3f0;
|
|
|
+ --profile-ink-medium: #d4c4a8;
|
|
|
+ --profile-ink-dark: #8b7355;
|
|
|
+ --profile-ink-deep: #3a2f26;
|
|
|
+
|
|
|
+ --profile-accent-red: #a85c5c;
|
|
|
+ --profile-accent-blue: #4a6b7c;
|
|
|
+ --profile-accent-green: #5c7c5c;
|
|
|
+ --profile-accent-orange: #b8860b;
|
|
|
+
|
|
|
+ --profile-text-primary: #2f1f0f;
|
|
|
+ --profile-text-secondary: #5d4e3b;
|
|
|
+ --profile-text-light: #8b7355;
|
|
|
+}
|
|
|
+
|
|
|
+/* 全局水墨样式 */
|
|
|
+.profile-ink-container {
|
|
|
+ background-color: var(--profile-ink-light);
|
|
|
+ min-height: 100vh;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-card {
|
|
|
+ background-color: rgba(255, 255, 255, 0.9);
|
|
|
+ border: 1px solid var(--profile-ink-medium);
|
|
|
+ border-radius: 1rem;
|
|
|
+ backdrop-filter: blur(10px);
|
|
|
+ transition: all 0.3s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-card:hover {
|
|
|
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
|
|
|
+ transform: translateY(-2px);
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨按钮样式 */
|
|
|
+.profile-ink-button {
|
|
|
+ font-family: 'Noto Serif SC', serif;
|
|
|
+ border-radius: 2rem;
|
|
|
+ transition: all 0.3s ease;
|
|
|
+ cursor: pointer;
|
|
|
+ border: none;
|
|
|
+ outline: none;
|
|
|
+ padding: 0.75rem 1.5rem;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-button-primary {
|
|
|
+ background-color: var(--profile-ink-dark);
|
|
|
+ color: white;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-button-primary:hover {
|
|
|
+ background-color: var(--profile-ink-deep);
|
|
|
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-button-secondary {
|
|
|
+ background-color: transparent;
|
|
|
+ color: var(--profile-text-primary);
|
|
|
+ border: 1px solid var(--profile-ink-medium);
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-button-secondary:hover {
|
|
|
+ background-color: var(--profile-ink-medium);
|
|
|
+ color: white;
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨头像样式 */
|
|
|
+.profile-ink-avatar {
|
|
|
+ background-color: var(--profile-ink-dark);
|
|
|
+ color: white;
|
|
|
+ border: 4px solid var(--profile-ink-light);
|
|
|
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
|
+ transition: all 0.3s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-avatar:hover {
|
|
|
+ transform: scale(1.05);
|
|
|
+ box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨背景装饰 */
|
|
|
+.profile-ink-background {
|
|
|
+ background: linear-gradient(135deg, var(--profile-ink-light) 0%, var(--profile-ink-medium) 100%);
|
|
|
+ position: relative;
|
|
|
+ overflow: hidden;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-background::before {
|
|
|
+ content: '';
|
|
|
+ position: absolute;
|
|
|
+ top: 0;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23000' fill-opacity='0.05'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7z'/%3E%3Cpath d='M59 43c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7z'/%3E%3Cpath d='M52 36c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3z'/%3E%3Cpath d='M82 67c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3z'/%3E%3C/g%3E%3C/svg%3E");
|
|
|
+ pointer-events: none;
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨列表项样式 */
|
|
|
+.profile-ink-list-item {
|
|
|
+ transition: all 0.3s ease;
|
|
|
+ border-bottom: 1px solid var(--profile-ink-medium);
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-list-item:last-child {
|
|
|
+ border-bottom: none;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-list-item:hover {
|
|
|
+ background-color: rgba(255, 255, 255, 0.5);
|
|
|
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-list-item:active {
|
|
|
+ transform: scale(0.98);
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨图标容器 */
|
|
|
+.profile-ink-icon-container {
|
|
|
+ border-radius: 50%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ transition: all 0.3s ease;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-icon-container:hover {
|
|
|
+ transform: scale(1.1) rotate(5deg);
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨文字样式 */
|
|
|
+.profile-ink-title {
|
|
|
+ font-family: 'Noto Serif SC', serif;
|
|
|
+ font-weight: 600;
|
|
|
+ letter-spacing: 0.05em;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-subtitle {
|
|
|
+ font-family: 'PingFang SC', sans-serif;
|
|
|
+ font-weight: 400;
|
|
|
+ opacity: 0.8;
|
|
|
+}
|
|
|
+
|
|
|
+/* 响应式字体大小 */
|
|
|
+@media (max-width: 375px) {
|
|
|
+ .profile-ink-title {
|
|
|
+ font-size: 1.125rem;
|
|
|
+ }
|
|
|
+
|
|
|
+ .profile-ink-subtitle {
|
|
|
+ font-size: 0.875rem;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+@media (min-width: 376px) {
|
|
|
+ .profile-ink-title {
|
|
|
+ font-size: 1.25rem;
|
|
|
+ }
|
|
|
+
|
|
|
+ .profile-ink-subtitle {
|
|
|
+ font-size: 0.875rem;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/* 动效类 */
|
|
|
+.profile-ink-fade-in {
|
|
|
+ animation: fadeIn 0.5s ease-in-out;
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-slide-up {
|
|
|
+ animation: slideUp 0.4s ease-out;
|
|
|
+}
|
|
|
+
|
|
|
+@keyframes fadeIn {
|
|
|
+ from {
|
|
|
+ opacity: 0;
|
|
|
+ }
|
|
|
+ to {
|
|
|
+ opacity: 1;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+@keyframes slideUp {
|
|
|
+ from {
|
|
|
+ opacity: 0;
|
|
|
+ transform: translateY(20px);
|
|
|
+ }
|
|
|
+ to {
|
|
|
+ opacity: 1;
|
|
|
+ transform: translateY(0);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/* 老年用户优化 */
|
|
|
+.elderly-friendly {
|
|
|
+ font-size: 1.125rem;
|
|
|
+ line-height: 1.8;
|
|
|
+}
|
|
|
+
|
|
|
+.elderly-friendly .profile-ink-card {
|
|
|
+ padding: 1.5rem;
|
|
|
+}
|
|
|
+
|
|
|
+.elderly-friendly .profile-ink-button {
|
|
|
+ padding: 1rem 2rem;
|
|
|
+ font-size: 1.125rem;
|
|
|
+}
|
|
|
+
|
|
|
+/* 触摸优化 */
|
|
|
+.touch-optimized {
|
|
|
+ min-height: 44px;
|
|
|
+ min-width: 44px;
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨分隔线 */
|
|
|
+.profile-ink-divider {
|
|
|
+ height: 1px;
|
|
|
+ background: linear-gradient(90deg, transparent, var(--profile-ink-medium), transparent);
|
|
|
+ margin: 0.5rem 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 水墨阴影效果 */
|
|
|
+.profile-ink-shadow {
|
|
|
+ box-shadow: 0 2px 8px rgba(139, 115, 85, 0.1);
|
|
|
+}
|
|
|
+
|
|
|
+.profile-ink-shadow-hover:hover {
|
|
|
+ box-shadow: 0 4px 16px rgba(139, 115, 85, 0.2);
|
|
|
+}
|