Files
echoes-of-the-ash/pwa/src/components/Profile.css
2026-02-23 15:42:21 +01:00

184 lines
3.4 KiB
CSS

/* Profile-specific styles - uses game-container from Game.css */
/* Header styles removed - using game-header from Game.css */
/* Loading and error states */
.game-main .profile-loading,
.game-main .profile-error {
max-width: 600px;
margin: 4rem auto;
text-align: center;
background: var(--game-bg-panel);
padding: 3rem;
border-radius: var(--game-radius-md);
border: 2px solid var(--game-border-color);
box-shadow: var(--game-shadow-card);
}
.game-main .profile-error button {
margin-top: 1rem;
background: #6bb9f0;
border: none;
color: #fff;
padding: 0.75rem 1.5rem;
border-radius: 8px;
cursor: pointer;
font-size: 1rem;
font-weight: 600;
}
.game-main .profile-container {
max-width: 1400px;
margin: 0 auto;
display: grid;
grid-template-columns: 320px 1fr;
gap: 2rem;
padding: 2rem;
}
.profile-info-card {
background: var(--game-bg-panel);
border: 2px solid var(--game-border-color);
border-radius: var(--game-radius-md);
padding: 2rem;
text-align: center;
height: fit-content;
position: sticky;
top: 2rem;
box-shadow: var(--game-shadow-card);
}
.profile-avatar {
width: 120px;
height: 120px;
margin: 0 auto 1.5rem;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
border: 4px solid rgba(255, 255, 255, 0.2);
}
.avatar-icon {
font-size: 3rem;
}
.profile-name {
font-size: 1.8rem;
margin: 0 0 0.5rem 0;
color: var(--game-text-highlight);
}
.profile-username {
font-size: 1rem;
color: var(--game-text-secondary);
margin: 0 0 1rem 0;
}
.profile-level {
display: inline-block;
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
padding: 0.5rem 1.5rem;
border-radius: 20px;
font-weight: 600;
font-size: 1.1rem;
margin-bottom: 1.5rem;
}
.profile-meta {
border-top: 1px solid rgba(255, 255, 255, 0.1);
padding-top: 1.5rem;
margin-top: 1.5rem;
}
.meta-item {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.75rem 0.5rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.meta-item:last-child {
border-bottom: none;
}
.meta-label {
color: rgba(255, 255, 255, 0.6);
font-size: 0.9rem;
padding-right: 1rem;
}
.meta-value {
color: #fff;
font-weight: 600;
padding-left: 1rem;
}
.profile-stats-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.5rem;
}
.stats-section {
background: var(--game-bg-panel);
border: 2px solid var(--game-border-color);
border-radius: var(--game-radius-md);
padding: 1.5rem;
box-shadow: var(--game-shadow-card);
}
.section-title {
font-size: 1.3rem;
margin: 0 0 1rem 0;
color: var(--game-color-primary);
border-bottom: 2px solid var(--game-border-color);
padding-bottom: 0.75rem;
}
.stat-row {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.75rem 0.5rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.stat-row:last-child {
border-bottom: none;
}
.stat-label {
color: var(--game-text-secondary);
font-size: 0.95rem;
padding-right: 1rem;
}
.stat-value {
font-weight: 700;
font-size: 1.1rem;
color: var(--game-text-primary);
padding-left: 1rem;
}
.stat-value.highlight-red {
color: #ff6b6b;
}
.stat-value.highlight-green {
color: #51cf66;
}
.stat-value.highlight-blue {
color: #6bb9f0;
}
.stat-value.highlight-hp {
color: #ff6b9d;
}
.stat-value.highlight-stamina {
color: #ffd93d;
}