sendou.ink/app/features/user-page/routes/u.$identifier.edit-widgets.module.css
Kalle fef1ffc955
Design refresh + a bunch of stuff (#2864)
Co-authored-by: hfcRed <hfcred@gmx.net>
2026-03-19 17:51:42 +02:00

207 lines
3.2 KiB
CSS

.container {
container-type: inline-size;
width: 100%;
max-width: 80rem;
margin: 0 auto;
padding: var(--s-4);
}
.header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: var(--s-6);
flex-wrap: wrap;
gap: var(--s-4);
}
.header h1 {
font-size: var(--font-xl);
font-weight: var(--weight-bold);
}
.actions {
display: flex;
gap: var(--s-2);
}
.content {
display: flex;
flex-direction: column;
gap: var(--s-6);
}
.grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--s-6);
}
@container (min-width: 768px) {
.grid {
grid-template-columns: 1fr 1fr;
}
}
.available,
.selected {
display: flex;
flex-direction: column;
gap: var(--s-4);
}
.available h2,
.selected h2 {
font-size: var(--font-lg);
font-weight: var(--weight-bold);
}
.searchInput {
height: 40px !important;
}
.searchIcon {
height: 20px;
margin: auto;
margin-right: 10px;
}
.categoryGroup {
display: flex;
flex-direction: column;
gap: var(--s-2);
}
.categoryTitle {
font-size: var(--font-sm);
font-weight: var(--weight-bold);
color: var(--color-text-high);
text-transform: uppercase;
letter-spacing: 0.05em;
margin-top: var(--s-4);
}
.widgetCard {
display: flex;
flex-direction: column;
gap: var(--s-1-5);
padding: var(--s-3);
border: var(--border-style);
border-radius: var(--radius-box);
background-color: var(--color-bg-high);
}
.widgetHeader {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--s-2);
width: 100%;
}
.widgetActions {
display: flex;
gap: var(--s-2);
align-items: center;
}
.widgetName {
font-weight: 500;
font-size: var(--font-sm);
}
.widgetFooter {
display: flex;
align-items: center;
gap: var(--s-2);
}
.widgetSlot {
display: flex;
align-items: center;
gap: var(--s-1);
font-size: var(--font-xs);
color: var(--color-text-high);
flex-shrink: 0;
}
.widgetDescription {
font-size: var(--font-xs);
color: var(--color-text-high);
}
.slotSection {
display: flex;
flex-direction: column;
gap: var(--s-2);
}
.slotHeader {
display: flex;
align-items: center;
justify-content: space-between;
font-size: var(--font-sm);
font-weight: var(--weight-bold);
}
.slotCount {
font-size: var(--font-2xs);
color: var(--color-text-high);
font-weight: var(--weight-bold);
}
.widgetList {
display: flex;
flex-direction: column;
gap: var(--s-2);
min-height: 3rem;
}
.draggableWidget {
display: flex;
flex-direction: column;
gap: var(--s-2);
padding: var(--s-3);
border: var(--border-style);
border-radius: var(--radius-box);
background-color: var(--color-bg-high);
transition: opacity 0.2s;
}
.widgetSettings {
padding: var(--s-3);
margin-top: var(--s-1);
background-color: var(--color-bg-higher);
border-radius: var(--radius-box);
}
.draggableWidget .widgetName {
cursor: grab;
user-select: none;
-webkit-user-select: none;
touch-action: none;
}
.draggableWidget .widgetName:active {
cursor: grabbing;
}
.draggableWidget.isDragging {
opacity: 0.5;
}
.selectedWidgetsList {
display: flex;
flex-direction: column;
gap: var(--s-4);
}
.empty {
padding: var(--s-4);
text-align: center;
color: var(--color-text-high);
font-size: var(--font-sm);
border: var(--border-style);
border-radius: var(--radius-box);
}