/* Staff Card Styles */
.staff-card {
background: var(--color-surface-2);
border: 1px solid var(--border-color-base);
border-radius: 12px;
padding: 20px;
margin: 10px 0;
box-shadow: var(--box-shadow-card);
transition: transform 0.3s ease, box-shadow 0.3s ease;
position: relative;
overflow: hidden;
color: var(--color-base);
font-family: var(--font-family-citizen-base);
max-width: 400px;
}
/* Add subtle accent using progressive color */
.staff-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: var(--color-progressive);
border-radius: 12px 12px 0 0;
}
.staff-card:hover {
transform: translateY(-2px);
box-shadow: var(--box-shadow-dialog);
border-color: var(--color-progressive);
}
.staff-card-header {
display: flex;
align-items: center;
margin-bottom: 15px;
gap: 15px;
}
.staff-card-avatar {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--color-surface-3);
display: flex;
align-items: center;
justify-content: center;
font-size: 24px;
font-weight: bold;
color: var(--color-emphasized);
border: 2px solid var(--color-progressive);
flex-shrink: 0;
overflow: hidden;
}
.staff-card-avatar img {
width: 100%;
height: 100%;
object-fit: cover;
/* border-radius: 50%; */
}
.staff-card-info h3 {
margin: 0 0 5px 0;
font-size: 18px;
font-weight: 600;
color: var(--color-emphasized);
}
.staff-card-handle {
font-size: 0.9em;
color: var(--color-base);
margin-bottom: 3px;
}
.staff-card-ign {
font-size: 0.85em;
background: var(--color-surface-3);
color: var(--color-emphasized);
padding: 2px 8px;
border-radius: 12px;
display: inline-block;
font-family: 'Minecraft';
border: 1px solid var(--border-color-base);
}
.staff-card-pronouns {
font-style: italic;
color: var(--color-subtle);
font-size: 0.9em;
}
.staff-card-roles {
margin: 15px 0;
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.staff-card-role {
background: var(--color-progressive);
color: white;
padding: 4px 12px;
border-radius: 12px;
font-size: 12px;
font-weight: 500;
white-space: nowrap;
}
.staff-card-bio {
margin-top: 12px;
font-size: 14px;
line-height: 1.5;
color: var(--color-base);
}
.staff-card-footer {
margin-top: 15px;
padding-top: 15px;
border-top: 1px solid var(--border-color-base);
font-size: 13px;
}
.staff-card-meta {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
}
.staff-card-status {
padding: 3px 8px;
border-radius: 12px;
font-size: 12px;
font-weight: 500;
border: 1px solid var(--border-color-base);
text-transform: uppercase;
letter-spacing: 0.5px;
}
.staff-card-status.active {
background: var(--color-success);
color: white;
border-color: var(--color-success);
}
.staff-card-status.inactive {
background: var(--color-surface-4);
color: var(--color-subtle);
}
.staff-card-status.vacation {
background: var(--color-warning);
color: var(--color-base);
border-color: var(--color-warning);
}
.staff-card-status.retired {
background: var(--color-surface-4);
color: var(--color-subtle);
}
.staff-card-details {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 8px;
}
.staff-card-details > span {
color: var(--color-subtle);
}
.staff-card-details strong {
color: var(--color-emphasized);
}
.staff-card-social {
display: inline-flex;
align-items: center;
gap: 4px;
}
.staff-card-social a {
display: inline-flex;
align-items: center;
text-decoration: none;
color: var(--color-progressive);
transition: opacity 0.2s ease;
}
.staff-card-social a:hover {
opacity: 0.8;
}
.staff-card-twitch-icon {
width: 16px;
height: 16px;
}
/* Dark mode enhancements */
.skin-theme-clientpref-night .staff-card,
.skin-theme-clientpref-auto .staff-card {
background: var(--color-surface-1);
border-color: var(--border-color-base);
}
.skin-theme-clientpref-night .staff-card:hover,
.skin-theme-clientpref-auto .staff-card:hover {
box-shadow: var(--box-shadow-dialog);
}
/* Social media icons section */
.staff-card-social-icons {
display: flex;
gap: 12px;
margin-top: 12px;
justify-content: center;
flex-wrap: wrap;
}
.social-icon-wrapper {
display: inline-block;
transition: transform 0.2s ease, opacity 0.2s ease;
}
.social-icon-wrapper:hover {
transform: translateY(-2px);
opacity: 0.8;
}
.social-icon-wrapper a {
display: inline-block;
padding: 8px;
background: var(--color-surface-3);
border-radius: 8px;
border: 1px solid var(--border-color-base);
transition: all 0.2s ease;
}
.social-icon-wrapper a:hover {
background: var(--color-progressive);
border-color: var(--color-progressive);
}
/* Individual platform styling (optional) */
.social-icon-wrapper a[href*="discord.com"]:hover {
background: #5865F2;
border-color: #5865F2;
}
.social-icon-wrapper a[href*="twitch.tv"]:hover {
background: #9146FF;
border-color: #9146FF;
}
.social-icon-wrapper a[href*="github.com"]:hover {
background: #333;
border-color: #333;
}
.social-icon-wrapper a[href*="youtube.com"] {
color: #fff;
}
.social-icon-wrapper a[href*="youtube.com"]:hover {
background: #FF0000;
border-color: #FF0000;
}
.social-icon-wrapper a.external::after {
display: none !important;
content: none !important;
mask: none !important;
}
/* Also remove any mask-related properties from the link itself */
.social-icon-wrapper a.external {
mask: none !important;
mask-image: none !important;
-webkit-mask-image: none !important;
}
/* Responsive design */
@media (max-width: 480px) {
.staff-card {
margin: 10px 0;
padding: 15px;
}
.staff-card-header {
flex-direction: column;
text-align: center;
gap: 10px;
}
.staff-card-footer {
flex-direction: column;
gap: 8px;
}
.staff-card-meta {
justify-content: center;
}
}