Files
fluxer/fluxer_app/src/features/user/components/modals/UserProfileMobileSheet.module.css
T

366 lines
5.7 KiB
CSS

/* SPDX-License-Identifier: AGPL-3.0-or-later */
.container {
position: relative;
display: flex;
height: 100%;
min-height: 0;
width: 100%;
flex-direction: column;
overflow: hidden;
background-color: var(--background-primary);
}
.loadingScreen {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
min-height: 0;
}
.bannerContainer {
position: relative;
height: 11.5rem;
width: 100%;
overflow: hidden;
border-top-left-radius: 1.5rem;
border-top-right-radius: 1.5rem;
}
.bannerImage {
height: 100%;
width: 100%;
background-position: center;
background-size: cover;
background-repeat: no-repeat;
}
.bannerColor {
height: 100%;
width: 100%;
}
.notchContainer {
position: absolute;
inset-inline: 0;
top: 0;
z-index: 30;
display: flex;
width: 100%;
justify-content: center;
padding-top: 0.75rem;
padding-bottom: 0.75rem;
user-select: none;
-webkit-user-select: none;
touch-action: manipulation;
}
.notch {
height: 0.25rem;
width: 2.5rem;
border-radius: 624.9375rem;
}
.profileContent {
position: relative;
background-color: var(--background-primary);
}
.avatarContainer {
position: absolute;
left: 1rem;
z-index: 20;
top: -2.5rem;
}
.avatarBorder {
border: 0.25rem solid var(--background-primary);
background-color: var(--background-primary);
width: fit-content;
}
.contentPadding {
padding-left: 1rem;
padding-right: 1rem;
padding-top: 3rem;
}
.actionsContainer {
position: absolute;
top: 1rem;
right: 1rem;
z-index: 10;
display: flex;
gap: 0.5rem;
}
.actionButton {
display: flex;
height: 2.5rem;
width: 2.5rem;
align-items: center;
justify-content: center;
border-radius: 624.9375rem;
background-color: var(--background-tertiary);
color: var(--text-primary);
cursor: pointer;
}
.usernameContainer {
margin-top: 0.75rem;
}
.usernameRow {
display: flex;
align-items: center;
flex-wrap: wrap;
min-width: 0;
}
.username {
font-weight: 700;
font-size: 1.5rem;
line-height: 2rem;
color: var(--text-primary);
word-break: break-word;
overflow-wrap: break-word;
}
.discriminator {
font-weight: 500;
font-size: 1.5rem;
line-height: 2rem;
color: var(--text-tertiary);
}
.fullTag {
font-weight: 500;
color: var(--text-tertiary);
}
.tagBadgeRow {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0.375rem;
min-width: 0;
}
.badgesWrapper {
display: flex;
align-items: center;
flex-shrink: 0;
}
.customStatusRow {
margin-top: 0.25rem;
}
.customStatusText {
font-size: 0.875rem;
color: var(--text-secondary);
}
.customStatusRow:hover .customStatusText,
.customStatusRow:active .customStatusText {
--emoji-show-animated: 1;
}
.editProfileButton {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
gap: 0.5rem;
border-radius: 0.75rem;
background-color: var(--brand-primary);
padding-left: 1rem;
padding-right: 1rem;
padding-top: 0.75rem;
padding-bottom: 0.75rem;
cursor: pointer;
}
.editProfileIcon {
height: 1.25rem;
width: 1.25rem;
color: white;
}
.editProfileText {
font-weight: 500;
color: white;
}
.actionButtonsContainer {
margin-top: 1rem;
display: flex;
gap: 0.75rem;
}
.actionCard {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 0.25rem;
border-radius: 0.75rem;
background-color: var(--background-secondary-alt);
padding: 0.75rem;
cursor: pointer;
}
.actionIconContainer {
display: flex;
height: 3rem;
width: 3rem;
align-items: center;
justify-content: center;
border-radius: 624.9375rem;
background-color: var(--brand-primary);
}
.actionIconContainerSecondary {
display: flex;
height: 3rem;
width: 3rem;
align-items: center;
justify-content: center;
border-radius: 624.9375rem;
background-color: var(--background-tertiary);
}
.actionIcon {
height: 1.5rem;
width: 1.5rem;
color: white;
}
.actionIconSecondary {
height: 1.5rem;
width: 1.5rem;
color: var(--text-primary);
}
.actionLabel {
font-weight: 500;
color: var(--text-secondary);
font-size: 0.75rem;
}
.infoCard {
margin-top: 1rem;
border-radius: 0.75rem;
background-color: var(--background-secondary-alt);
padding: 1rem;
}
.bioSection {
margin-bottom: 0.75rem;
}
.bioHeader {
margin-bottom: 0.5rem;
font-weight: 600;
font-size: 0.875rem;
color: var(--text-primary);
}
.noteButton {
margin-top: 1rem;
display: flex;
width: 100%;
align-items: center;
justify-content: space-between;
border-radius: 0.75rem;
background-color: var(--background-secondary-alt);
padding: 1rem;
text-align: left;
cursor: pointer;
}
.noteTitle {
font-weight: 600;
font-size: 0.875rem;
color: var(--text-primary);
}
.noteSubtitle {
color: var(--text-tertiary);
font-size: 0.75rem;
}
.noteText {
margin-top: 0.25rem;
font-size: 0.875rem;
color: var(--text-secondary);
}
.noteIconContainer {
display: flex;
height: 2rem;
width: 2rem;
align-items: center;
justify-content: center;
border-radius: 624.9375rem;
background-color: var(--background-tertiary);
}
.noteIcon {
height: 1rem;
width: 1rem;
color: var(--text-primary);
}
.icon {
height: 1.25rem;
width: 1.25rem;
}
.rolesSection {
margin-top: 0.75rem;
}
.mutualButtonsGroup {
margin-top: 1rem;
overflow: hidden;
border-radius: 0.75rem;
background-color: var(--background-secondary-alt);
}
.mutualButton {
display: flex;
width: 100%;
align-items: center;
gap: 0.75rem;
padding: 1rem;
text-align: left;
cursor: pointer;
appearance: none;
-webkit-tap-highlight-color: transparent;
}
.mutualButton:active {
background-color: var(--background-modifier-hover);
}
.mutualButtonLabel {
flex: 1;
font-weight: 500;
font-size: 1rem;
color: var(--text-primary);
}
.mutualDivider {
margin-left: 1rem;
margin-right: 1rem;
height: 0.0625rem;
background-color: var(--background-header-secondary);
opacity: 0.3;
}
.sheetContainer {
background-color: transparent;
}