.Profile { overflow: hidden auto; .intro { background-color: var(--tutu-color-surface-d); color: var(--tutu-color-on-surface); padding: 16px 12px; display: flex; flex-flow: column nowrap; gap: 16px; contain: layout style; } .banner { width: 100%; margin-top: calc(-1 * var(--scaffold-topbar-height)); >img { object-fit: cover; width: 100%; height: 100%; } } .description { & a { color: inherit; font-style: italic; } word-break: break-all; & * { user-select: text; } } .acct-grp { display: flex; flex-flow: row wrap; gap: 16px; align-items: center; &> :nth-child(2) { flex-grow: 1; } &> :last-child { flex-grow: 1; text-align: right; } >.name-grp { display: flex; flex-flow: column nowrap; & * { user-select: text; } .display-name { display: block; } .username { user-select: all; } } } .acct-mark { font-size: 1.2em; vertical-align: sub; margin-right: 0.25em; } table.acct-fields { word-break: break-all; & td>a { display: inline-flex; align-items: center; color: inherit; min-height: 44px; } & a>.invisible { display: none; } & svg { vertical-align: middle; } & * { user-select: text; } } .toot-list-toolbar { position: sticky; top: var(--scaffold-topbar-height); z-index: calc(var(--tutu-zidx-nav, 1) - 1); background: var(--tutu-color-surface); border-bottom: 1px solid var(--tutu-color-surface-d); contain: content; /* TODO: box-shadow is needed here (same as app bar, e6). There is no good way to detect if the sticky is "sticked" - so let's leave it for future. For now we use a trick to make it looks better. */ box-shadow: 0px -2px 4px 0px var(--tutu-color-shadow); } } @supports (container-type: inline-size) { @container StackedPage (inline-size >=960px) { .Profile { display: grid; grid-template-columns: auto 560px; grid-template-rows: min-content 1fr; height: 100cqh; >.topbar { grid-column: 1 / 3; grid-row: 1 /2; .MuiToolbar-root { padding-right: calc(560px + 24px); } } >.details { height: 100%; display: flex; flex-flow: column nowrap; >.intro { flex-grow: 1; } } >.recent-toots { overflow-y: auto; margin-top: calc(-1 * var(--scaffold-topbar-height)); z-index: calc(var(--tutu-zidx-nav, 1) + 1); >.toot-list-toolbar { top: 0; } } } } } .Profile__page-title { flex-grow: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }