UI max width details

This commit is contained in:
2026-03-14 15:58:10 +01:00
parent d3da54ce55
commit 00366d7000

View File

@@ -1,167 +1,171 @@
@layer components { @layer components {
/* Detail page layout — aside panel, card sections, sticky titlebar integration. */ /* Detail page layout — aside panel, card sections, sticky titlebar integration. */
.app-details-container aside { .app-details-container aside {
padding-top: var(--app-spacing); padding-top: var(--app-spacing);
} }
.app-details-aside-actions { .app-details-container > section {
display: grid; max-width: 84ch;
gap: calc(var(--app-spacing) * 0.5); }
}
.app-details-aside-actions form { .app-details-aside-actions {
margin: 0; display: grid;
} gap: calc(var(--app-spacing) * 0.5);
}
.app-details-aside-actions a[role="button"], .app-details-aside-actions form {
.app-details-aside-actions button { margin: 0;
width: 100%; }
}
.user-avatar-block, .app-details-aside-actions a[role="button"],
.entity-avatar-block { .app-details-aside-actions button {
--avatar-size: 96px; width: 100%;
--avatar-ratio: 1 / 1; }
display: grid;
gap: calc(var(--app-spacing) * 0.75);
margin-bottom: calc(var(--app-spacing) * 1.25);
width: var(--avatar-size);
aspect-ratio: var(--avatar-ratio);
}
.user-avatar-image, .user-avatar-block,
.user-avatar-placeholder, .entity-avatar-block {
.entity-avatar-image, --avatar-size: 96px;
.entity-avatar-placeholder { --avatar-ratio: 1 / 1;
width: 100%; display: grid;
height: 100%; gap: calc(var(--app-spacing) * 0.75);
border: 1px solid var(--app-muted-border-color); margin-bottom: calc(var(--app-spacing) * 1.25);
background: var(--app-card-background-color); width: var(--avatar-size);
display: inline-flex; aspect-ratio: var(--avatar-ratio);
align-items: center; }
justify-content: center;
font-weight: 600;
color: var(--app-muted-color);
}
.user-avatar-placeholder, .user-avatar-image,
.entity-avatar-placeholder { .user-avatar-placeholder,
font-size: 1.5rem; .entity-avatar-image,
} .entity-avatar-placeholder {
width: 100%;
height: 100%;
border: 1px solid var(--app-muted-border-color);
background: var(--app-card-background-color);
display: inline-flex;
align-items: center;
justify-content: center;
font-weight: 600;
color: var(--app-muted-color);
}
.user-avatar-image { .user-avatar-placeholder,
object-fit: cover; .entity-avatar-placeholder {
} font-size: 1.5rem;
}
.entity-avatar-image { .user-avatar-image {
object-fit: contain; object-fit: cover;
padding: 3px; }
}
.avatar-round .user-avatar-image, .entity-avatar-image {
.avatar-round .user-avatar-placeholder, object-fit: contain;
.avatar-round .entity-avatar-image, padding: 3px;
.avatar-round .entity-avatar-placeholder { }
border-radius: 999px;
aspect-ratio: 1;
}
.avatar-square .user-avatar-image, .avatar-round .user-avatar-image,
.avatar-square .user-avatar-placeholder, .avatar-round .user-avatar-placeholder,
.avatar-square .entity-avatar-image, .avatar-round .entity-avatar-image,
.avatar-square .entity-avatar-placeholder { .avatar-round .entity-avatar-placeholder {
border-radius: var(--app-border-radius); border-radius: 999px;
} aspect-ratio: 1;
}
.avatar-ratio-1-1 { .avatar-square .user-avatar-image,
--avatar-ratio: 1 / 1; .avatar-square .user-avatar-placeholder,
} .avatar-square .entity-avatar-image,
.avatar-square .entity-avatar-placeholder {
border-radius: var(--app-border-radius);
}
.avatar-ratio-3-2 { .avatar-ratio-1-1 {
--avatar-ratio: 3 / 2; --avatar-ratio: 1 / 1;
} }
.avatar-ratio-4-3 { .avatar-ratio-3-2 {
--avatar-ratio: 4 / 3; --avatar-ratio: 3 / 2;
} }
.avatar-ratio-16-9 { .avatar-ratio-4-3 {
--avatar-ratio: 16 / 9; --avatar-ratio: 4 / 3;
} }
.avatar-borderless .user-avatar-image, .avatar-ratio-16-9 {
.avatar-borderless .user-avatar-placeholder, --avatar-ratio: 16 / 9;
.avatar-borderless .entity-avatar-image, }
.avatar-borderless .entity-avatar-placeholder {
border: none;
}
.avatar-size-auto { .avatar-borderless .user-avatar-image,
width: auto; .avatar-borderless .user-avatar-placeholder,
aspect-ratio: auto; .avatar-borderless .entity-avatar-image,
} .avatar-borderless .entity-avatar-placeholder {
border: none;
}
.avatar-size-auto .user-avatar-image, .avatar-size-auto {
.avatar-size-auto .user-avatar-placeholder, width: auto;
.avatar-size-auto .entity-avatar-image, aspect-ratio: auto;
.avatar-size-auto .entity-avatar-placeholder { }
width: auto;
height: auto;
max-width: 100%;
max-height: 100%;
}
.app-details-container > section > * { .avatar-size-auto .user-avatar-image,
padding-inline: calc(var(--app-spacing) * 2); .avatar-size-auto .user-avatar-placeholder,
} .avatar-size-auto .entity-avatar-image,
.avatar-size-auto .entity-avatar-placeholder {
width: auto;
height: auto;
max-width: 100%;
max-height: 100%;
}
.app-details-container .app-breadcrumb { .app-details-container > section > * {
padding-top: calc(var(--app-spacing) * 2); padding-inline: calc(var(--app-spacing) * 2);
position: sticky; }
top: 16px;
z-index: 10;
background: var(--app-background-color);
}
.app-details-container .app-details-titlebar { .app-details-container .app-breadcrumb {
position: sticky; padding-top: calc(var(--app-spacing) * 2);
top: 64px; position: sticky;
z-index: 10; top: 16px;
background: var(--app-background-color); z-index: 10;
} background: var(--app-background-color);
}
.app-details-container:not(:has(.app-breadcrumb)) .app-details-titlebar { .app-details-container .app-details-titlebar {
position: sticky;
top: 64px;
z-index: 10;
background: var(--app-background-color);
}
.app-details-container:not(:has(.app-breadcrumb)) .app-details-titlebar {
top: 37px; top: 37px;
padding-block-start: var(--app-spacing); padding-block-start: var(--app-spacing);
}
@media (max-width: 768px) {
.app-details-container > section > * {
padding-inline: calc(var(--app-spacing) * 0);
} }
}
@media (min-width: 968px) { @media (max-width: 768px) {
/* .app-details-container > section { .app-details-container > section > * {
padding-inline: calc(var(--app-spacing) * 0);
}
}
@media (min-width: 968px) {
/* .app-details-container > section {
padding: calc(var(--app-spacing) * 2) calc(var(--app-spacing) * 2) padding: calc(var(--app-spacing) * 2) calc(var(--app-spacing) * 2)
calc(var(--app-spacing) * 2) calc(var(--app-spacing) * 0); calc(var(--app-spacing) * 2) calc(var(--app-spacing) * 0);
} */ } */
.app-details-container:has(aside) { .app-details-container:has(aside) {
display: grid; display: grid;
grid-template-columns: minmax(0, 2fr) minmax(0, 300px); grid-template-columns: minmax(0, 2fr) minmax(0, 300px);
min-height: 82vh; min-height: 82vh;
} }
.app-details-container.is-aside-collapsed { .app-details-container.is-aside-collapsed {
grid-template-columns: minmax(0, 1fr); grid-template-columns: minmax(0, 1fr);
} }
.app-details-container.is-aside-collapsed aside { .app-details-container.is-aside-collapsed aside {
display: none; display: none;
} }
.app-details-container aside { .app-details-container aside {
border-left: 1px solid var(--app-border); border-left: 1px solid var(--app-border);
padding: calc(var(--app-spacing) * 2); padding: calc(var(--app-spacing) * 2);
border-top: none; border-top: none;
min-height: 100vh; min-height: 100vh;
}
} }
} }
}