/* SPDX-License-Identifier: AGPL-3.0-or-later */ #fluxer-boot-shell { position: relative; height: 100svh; min-height: 100svh; box-sizing: border-box; overflow: hidden; background: var(--background-primary); padding-top: 0; padding-right: env(safe-area-inset-right); padding-left: env(safe-area-inset-left); } html.allow-transparency #fluxer-boot-shell { background: transparent; } html.is-standalone #fluxer-boot-shell { padding-top: env(safe-area-inset-top); } .fluxer-boot-app { --layout-user-area-overlay-height: 0px; position: relative; display: grid; grid-template-columns: var(--layout-guild-list-width) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); height: 100%; min-height: 0; width: 100%; min-width: 0; overflow: hidden; background-color: var(--background-secondary); user-select: none; -webkit-user-select: none; } html.platform-native .fluxer-boot-app { padding-top: var(--native-titlebar-height); } #fluxer-boot-shell[data-rail='0'] .fluxer-boot-app { grid-template-columns: minmax(0, 1fr); } #fluxer-boot-shell[data-user-area='1'] .fluxer-boot-app { --layout-user-area-overlay-height: calc( var(--layout-user-area-height) + var(--user-area-box-inset-block-end) + var(--layout-voice-connection-height) ); } #fluxer-boot-shell[data-bottom-nav='1'] .fluxer-boot-app { --layout-mobile-bottom-nav-reserved-height: var(--mobile-bottom-nav-height); } .fluxer-boot-block { background-color: var(--background-modifier-accent); opacity: var(--skeleton-opacity-default); pointer-events: none; user-select: none; -webkit-user-select: none; flex-shrink: 0; max-width: 100%; } .fluxer-boot-s { opacity: var(--skeleton-opacity-strong); } .fluxer-boot-m { opacity: var(--skeleton-opacity-muted); } .fluxer-boot-r0 { border-radius: 0; } .fluxer-boot-rs { border-radius: var(--radius-sm); } .fluxer-boot-rm { border-radius: var(--radius-md); } .fluxer-boot-rl { border-radius: var(--radius-lg); } .fluxer-boot-rp { border-radius: var(--radius-full); } .fluxer-boot-rc { border-radius: 50%; } .fluxer-boot-tinted { background-color: currentcolor; } .fluxer-boot-rail { grid-column: 1; grid-row: 1; position: relative; z-index: var(--z-index-elevated-1); height: calc( 100% - var(--layout-user-area-reserved-height, 0px) - var(--layout-mobile-bottom-nav-reserved-height, 0px) ); min-height: 0; width: var(--layout-guild-list-width); min-width: 0; background-color: var(--background-secondary); } .fluxer-boot-rail-scroller { height: 100%; width: 100%; min-width: 0; overflow: hidden; clip-path: inset(0); padding-top: var(--spacing-1); padding-bottom: var(--spacing-2); } .fluxer-boot-rail-content { display: flex; flex-direction: column; align-items: center; width: 100%; min-width: 0; padding-bottom: calc( var(--layout-user-area-overlay-height, var(--layout-user-area-reserved-height, 0px)) + var(--spacing-2) ); } .fluxer-boot-rail-section { display: flex; flex-direction: column; align-items: center; width: 100%; gap: var(--guild-list-item-gap); } .fluxer-boot-rail-section-gap { padding-bottom: var(--guild-list-item-gap); } .fluxer-boot-rail-items { display: flex; flex-direction: column; align-items: center; width: 100%; gap: 0; } .fluxer-boot-rail-items-flush { margin-bottom: calc(-1 * var(--guild-list-item-gap)); } .fluxer-boot-slot { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; min-height: var(--guild-list-item-target-size); z-index: 0; } .fluxer-boot-slot-folder { min-height: var(--guild-list-item-target-size); z-index: 1; } .fluxer-boot-slot-outage { min-height: var(--guild-list-item-box-size); } .fluxer-boot-item { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: var(--guild-list-item-box-size); z-index: 0; } .fluxer-boot-slot[data-selected='1'] .fluxer-boot-circle, .fluxer-boot-item[data-selected='1'] .fluxer-boot-circle, .fluxer-boot-folder-guild[data-selected='1'] .fluxer-boot-circle { border-radius: 30%; } .fluxer-boot-indicator { position: absolute; left: var(--guild-list-indicator-inset); display: flex; align-items: center; justify-content: center; height: var(--guild-icon-size); width: var(--guild-list-indicator-track-width); pointer-events: none; container-type: layout size; z-index: 2; } .fluxer-boot-indicator-bar { display: block; width: var(--guild-list-indicator-bar-width); border-radius: 0 var(--radius-full) var(--radius-full) 0; background-color: var(--text-primary); } .fluxer-boot-fluxer-icon { display: flex; align-items: center; justify-content: center; height: var(--guild-icon-size); width: var(--guild-icon-size); flex-shrink: 0; border-radius: var(--radius-full); background-color: var(--guilds-layout-item-bg); color: var(--text-primary); } .fluxer-boot-item[data-selected='1'] .fluxer-boot-fluxer-icon { border-radius: 30%; background-color: var(--brand-primary); color: white; } .fluxer-boot-action-icon { display: flex; align-items: center; justify-content: center; height: var(--guild-icon-size); width: var(--guild-icon-size); flex-shrink: 0; border-radius: var(--radius-full); border: 0.125rem dashed var(--background-modifier-accent); background-color: transparent; color: var(--text-primary); } .fluxer-boot-item[data-selected='1'] .fluxer-boot-action-icon { border-radius: 30%; background-color: var(--brand-primary); color: white; } .fluxer-boot-glyph-lg { height: 1.75rem; width: 1.75rem; color: currentColor; } .fluxer-boot-glyph-sm { height: 1.25rem; width: 1.25rem; color: currentColor; } .fluxer-boot-folder { position: relative; display: flex; align-items: center; justify-content: center; width: var(--guild-list-item-box-size); height: var(--guild-list-item-box-size); } .fluxer-boot-folder-bg { position: absolute; inset: 0; border-radius: var(--folder-radius); } .fluxer-boot-folder-grid { position: absolute; inset: 0.25rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 0.125rem; } .fluxer-boot-folder-mini { border-radius: calc(var(--folder-radius) * 0.38); } .fluxer-boot-folder-slot { display: flex; align-items: center; justify-content: center; width: 100%; } .fluxer-boot-folder-open { position: relative; display: flex; flex-direction: column; align-items: center; width: 100%; } .fluxer-boot-folder-open-bg { position: absolute; top: 0; bottom: calc(var(--guild-list-item-gap) / 2); height: auto; border-radius: calc(var(--guild-list-item-box-size) * 0.32); } .fluxer-boot-folder-head { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; width: 100%; height: var(--guild-list-item-target-size); } .fluxer-boot-folder-head-surface { border-radius: var(--folder-radius); } .fluxer-boot-folder-guilds { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; width: 100%; gap: 0.0625rem; padding-bottom: calc(var(--guild-list-item-gap) / 2); transform: translateY(0rem); } .fluxer-boot-folder-guild { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: var(--guild-list-item-target-size); z-index: 0; } .fluxer-boot-rail-divider-slot { display: grid; grid-template-rows: var(--guild-list-divider-base-gap) var(--guild-list-divider-line-size) var( --guild-list-divider-base-gap ); justify-items: center; width: 100%; flex-shrink: 0; } .fluxer-boot-rail-divider-slot[data-extended='1'] { grid-template-rows: calc(var(--guild-list-divider-base-gap) + var(--guild-list-item-target-half-extra)) var( --guild-list-divider-line-size ) var(--guild-list-divider-base-gap); } .fluxer-boot-rail-divider { grid-row: 2; height: var(--guild-list-divider-line-size); width: 2rem; flex-shrink: 0; border-radius: 0.0625rem; background-color: var(--background-modifier-hover); } .fluxer-boot-content { grid-column: 2; grid-row: 1; display: grid; grid-template-rows: minmax(0, 1fr); min-width: 0; min-height: 0; overflow: hidden; } #fluxer-boot-shell[data-rail='0'] .fluxer-boot-content { grid-column: 1; } .fluxer-boot-frame { --outline-radius: 0px; position: relative; height: 100%; width: 100%; border: var(--outline-frame-border-width, 0.0625rem) solid var(--user-area-divider-color); border-top: none; border-top-left-radius: var(--outline-radius, 0px); background: var(--background-secondary-lighter); overflow: hidden; display: flex; flex-direction: column; } html.platform-native .fluxer-boot-frame { --outline-radius: var(--outline-frame-radius-native); border-top: 0.0625rem solid var(--user-area-divider-color); } .fluxer-boot-nagbars { display: flex; flex-direction: column; width: 100%; } .fluxer-boot-nagbar { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 2.25rem; padding: 0.25rem 0.5rem; background: var(--background-secondary-lighter); box-sizing: border-box; } .fluxer-boot-nagbar[data-dismissible='1'] { padding-right: 2.5rem; } #fluxer-boot-shell[data-mobile='1'] .fluxer-boot-nagbar { min-height: 3rem; padding-top: 0.5rem; padding-bottom: 0.5rem; } #fluxer-boot-shell[data-mobile='1'] .fluxer-boot-nagbar[data-actions='1'] { flex-direction: column; min-height: 4.625rem; gap: 0.5rem; } .fluxer-boot-frame-body { position: relative; flex: 1; min-height: 0; display: flex; flex-direction: column; } .fluxer-boot-sidebar-divider, .fluxer-boot-member-divider { position: absolute; top: 0; bottom: 0; width: 0.0625rem; background: var(--user-area-divider-color); } .fluxer-boot-sidebar-divider { left: var(--layout-sidebar-width); pointer-events: none; z-index: 2; } .fluxer-boot-frame-inner { position: relative; flex: 1; min-height: 0; width: 100%; overflow: hidden; z-index: 1; display: flex; flex-direction: column; } .fluxer-boot-main { display: grid; grid-template-columns: var(--layout-sidebar-width) minmax(0, 1fr); flex: 1; min-width: 0; min-height: 0; overflow: hidden; } #fluxer-boot-shell[data-mobile='1'] .fluxer-boot-main { grid-template-columns: minmax(0, 1fr); } .fluxer-boot-column { display: flex; flex-direction: column; min-width: 0; min-height: 0; overflow: hidden; background-color: var(--background-secondary); } .fluxer-boot-gsb { display: grid; grid-template-rows: auto 1fr; height: calc( 100% - var(--layout-user-area-reserved-height, 0px) - var(--layout-mobile-bottom-nav-reserved-height, 0px) ); min-height: 0; width: var(--layout-sidebar-width); min-width: 0; overflow: hidden; background-color: var(--background-secondary); } .fluxer-boot-dsb { display: grid; grid-template-rows: auto 1fr auto; height: calc(100% - var(--layout-user-area-reserved-height, 0px)); min-height: 0; width: var(--layout-sidebar-width); min-width: 0; overflow: hidden; background-color: var(--background-secondary); } #fluxer-boot-shell[data-mobile='1'] .fluxer-boot-gsb, #fluxer-boot-shell[data-mobile='1'] .fluxer-boot-dsb { width: 100%; } html.platform-native .fluxer-boot-gsb, html.platform-native .fluxer-boot-dsb { border-top-left-radius: clamp(0.5rem, 1.2vw, 0.875rem); background-clip: padding-box; } .fluxer-boot-gsb-frame { position: relative; display: flex; align-items: center; box-sizing: border-box; height: var(--layout-header-height); min-height: var(--layout-header-height); width: 100%; min-width: 0; overflow: hidden; border-bottom: 0.0625rem solid var(--user-area-divider-color); } .fluxer-boot-gsb-frame[data-banner='1'] { align-items: flex-start; height: auto; min-height: var(--layout-header-height); max-height: 30vh; } .fluxer-boot-gsb-banner { position: absolute; inset: 0; } .fluxer-boot-gsb-header { position: relative; z-index: 1; display: flex; align-items: center; gap: var(--spacing-1); height: var(--layout-header-height); min-height: var(--layout-header-height); width: 100%; min-width: 0; overflow: hidden; padding: 0 var(--spacing-4); } .fluxer-boot-gsb-caret { margin-left: auto; } .fluxer-boot-gsb-content { display: flex; flex-direction: column; min-height: 0; min-width: 0; overflow: hidden; } .fluxer-boot-nav { width: 100%; min-width: 0; padding-right: var(--spacing-2); } .fluxer-boot-detached-banner { position: relative; width: 100%; max-height: 30vh; overflow: hidden; border-bottom: 0.0625rem solid var(--user-area-divider-color); background-color: var(--background-secondary); } .fluxer-boot-top-spacer { height: 0.625rem; } .fluxer-boot-members-section { padding-bottom: 0.125rem; } .fluxer-boot-members-sep { height: 0.0625rem; margin: 0.375rem 0.75rem; background: var(--background-modifier-hover); } .fluxer-boot-drop-zone { height: 0.625rem; } .fluxer-boot-groups, .fluxer-boot-group { display: flex; flex-direction: column; min-width: 0; } .fluxer-boot-grow { display: flex; min-width: 0; align-items: center; margin-left: 0.5rem; padding: 0.375rem 0.5rem; } .fluxer-boot-grow-cat { box-sizing: border-box; height: 2rem; margin-top: 0.25rem; gap: 0.25rem; } .fluxer-boot-grow-caret { margin-left: auto; } .fluxer-boot-grow-ch { margin-top: 0.0625rem; gap: 0.375rem; } .fluxer-boot-grow-mem { margin-top: 0; } .fluxer-boot-grow-icon { display: inline-block; } .fluxer-boot-sb-bottom-spacer { flex: 0 0 auto; height: calc(var(--layout-user-area-overlay-height, var(--layout-user-area-reserved-height, 0px)) + var(--spacing-2)); } .fluxer-boot-dsb-header { display: flex; box-sizing: border-box; align-items: center; height: var(--layout-header-height); min-height: var(--layout-header-height); min-width: 0; padding: 0 var(--spacing-2); border-bottom: 0.0625rem solid var(--user-area-divider-color); } .fluxer-boot-dsb-mheader { display: flex; box-sizing: border-box; align-items: center; justify-content: space-between; min-height: var(--dm-sidebar-mobile-header-height); min-width: 0; padding: 0.5rem 0.5rem 0.5rem 1rem; border-bottom: var(--theme-border-width) solid var(--background-header-secondary); } .fluxer-boot-dsb-mactions { display: flex; align-items: center; gap: 0.5rem; } .fluxer-boot-scroll { display: flex; flex-direction: column; min-height: 0; min-width: 0; overflow: hidden; } .fluxer-boot-dsb-content { display: flex; flex-direction: column; gap: 0.0625rem; min-width: 0; padding-left: var(--spacing-2); padding-right: var(--spacing-2); } .fluxer-boot-dsb-mcontent { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; padding-left: var(--spacing-2); padding-right: var(--spacing-2); padding-bottom: var(--mobile-bottom-nav-height); } .fluxer-boot-spacer { height: var(--spacing-2); } .fluxer-boot-drow { display: flex; height: 2.625rem; min-width: 0; align-items: center; padding-left: 0.5rem; padding-right: 0.5rem; } .fluxer-boot-dmrow { display: flex; box-sizing: border-box; min-height: 3.25rem; min-width: 0; align-items: center; padding: 0.375rem 0.5rem; } .fluxer-boot-drow-content { display: flex; width: 100%; min-width: 0; align-items: center; gap: 0.75rem; } .fluxer-boot-chinfo { display: flex; flex: 1 1 0; flex-direction: column; justify-content: center; gap: 0.0625rem; min-width: 0; } .fluxer-boot-chname { display: flex; align-items: center; height: 1.25rem; min-width: 0; } .fluxer-boot-chsub { display: flex; align-items: center; height: 1rem; min-width: 0; margin-top: -0.0625rem; } .fluxer-boot-dsb-sep { height: 0.0625rem; margin: var(--spacing-2) calc(-1 * var(--spacing-2)); background-color: var(--user-area-divider-color); } .fluxer-boot-dsb-section { display: flex; align-items: center; justify-content: space-between; margin-top: 0.5rem; margin-bottom: 0.5rem; padding-left: 0.5rem; padding-right: 0.5rem; } .fluxer-boot-chlist { display: flex; flex-direction: column; gap: 0.0625rem; min-width: 0; } .fluxer-boot-fab { position: fixed; right: 1rem; bottom: calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom, 0px) + 1rem); z-index: 50; } .fluxer-boot-friends { display: flex; height: 100%; min-height: 0; width: 100%; min-width: 0; background-color: var(--background-secondary-lighter); } .fluxer-boot-fr-main { display: grid; grid-template-rows: 3.5rem 1fr; flex: 1; min-width: 0; min-height: 0; } .fluxer-boot-fr-left { display: flex; align-items: center; gap: 1rem; flex: 1; min-width: 0; } .fluxer-boot-fr-title { display: flex; align-items: center; gap: 0.5rem; flex-shrink: 0; } .fluxer-boot-fr-div { height: 1.5rem; width: 0.0625rem; background-color: var(--background-modifier-accent); flex-shrink: 0; } .fluxer-boot-fr-tabs { display: flex; align-items: center; flex: 1; min-width: 0; height: 100%; overflow: hidden; } .fluxer-boot-fr-tabsi { display: flex; align-items: center; gap: 0.5rem; padding: 0.25rem; } .fluxer-boot-fr-body { display: flex; flex-direction: column; gap: 0.75rem; min-height: 0; overflow: hidden; } .fluxer-boot-fr-srch { width: 100%; padding: 0 1rem; padding-top: 0.75rem; } .fluxer-boot-fr-tbody { flex: 1; min-height: 0; overflow: hidden; } .fluxer-boot-fr-list { height: 100%; min-height: 0; padding: 1rem; overflow: hidden; } .fluxer-boot-fr-sect { display: flex; align-items: center; height: 1rem; margin-bottom: 1rem; } .fluxer-boot-fr-rows { margin: 0 -1rem; } .fluxer-boot-fr-row { position: relative; display: flex; align-items: center; justify-content: space-between; padding: var(--friend-row-padding-block) var(--friend-row-padding-inline); max-width: 100%; overflow: hidden; } .fluxer-boot-fr-row::before { content: ''; position: absolute; inset: var(--friend-row-separator-inset); border-radius: var(--friend-row-separator-radius); border-top: var(--skeleton-chrome-border); pointer-events: none; } .fluxer-boot-fr-rinfo { display: flex; align-items: center; gap: var(--friend-row-content-gap); flex: 1 1 0; min-width: 0; overflow: hidden; } .fluxer-boot-fr-rdet { display: flex; flex-direction: column; align-items: stretch; gap: 0.0625rem; flex: 1 1 0; min-width: 0; overflow: hidden; } .fluxer-boot-fr-rname { display: flex; align-items: center; height: var(--friend-row-name-line-height); min-width: 0; overflow: hidden; } .fluxer-boot-fr-rsub { display: flex; align-items: center; height: var(--friend-row-subtext-line-height); margin-top: var(--friend-row-subtext-offset); min-width: 0; overflow: hidden; } .fluxer-boot-fr-ract { display: flex; align-items: center; gap: var(--friend-row-action-gap); flex-shrink: 0; } .fluxer-boot-fr-side { display: flex; flex-direction: column; width: var(--active-now-sidebar-width); min-width: var(--active-now-sidebar-width); height: 100%; border-left: var(--skeleton-chrome-border); background-color: var(--background-secondary-lighter); } @media (max-width: 1100px) { .fluxer-boot-fr-side { display: none; } } .fluxer-boot-fr-shd { display: flex; align-items: center; min-height: 3.625rem; padding: var(--active-now-sidebar-header-padding-block-start) var(--active-now-sidebar-header-padding-inline); padding-bottom: var(--active-now-sidebar-header-padding-block-end); } .fluxer-boot-fr-scn { display: flex; flex: 1; flex-direction: column; gap: var(--active-now-sidebar-content-gap); min-height: 0; padding: 0 var(--active-now-sidebar-content-padding-inline) var(--active-now-sidebar-content-padding-block-end); overflow: hidden; } .fluxer-boot-fr-empty { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; gap: 0.75rem; min-height: 0; padding: 1.5rem; overflow: hidden; } .fluxer-boot-fr-etitle { display: flex; align-items: center; justify-content: center; height: 1.3125rem; } .fluxer-boot-fr-edesc { display: flex; flex-direction: column; align-items: center; gap: 0; width: 100%; } .fluxer-boot-fr-eline { display: flex; align-items: center; justify-content: center; height: 1.05rem; width: 100%; } .fluxer-boot-fr-card { display: flex; flex-direction: column; gap: var(--active-now-card-gap); box-sizing: border-box; width: 100%; padding: var(--active-now-card-padding-block) var(--active-now-card-padding-inline); border: var(--skeleton-chrome-border); border-radius: var(--active-now-card-radius); background-color: var(--background-secondary); box-shadow: var(--active-now-card-shadow); } .fluxer-boot-fr-cg { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; } .fluxer-boot-fr-cst { display: flex; align-items: center; gap: var(--active-now-context-gap); min-height: 1.125rem; } .fluxer-boot-fr-cctx { display: flex; align-items: center; gap: var(--active-now-context-gap); min-width: 0; min-height: 1.21875rem; overflow: hidden; } .fluxer-boot-fr-cp { display: flex; align-items: center; width: fit-content; height: calc(1.375rem + var(--avatar-stack-extra-height)); padding-block: 0.0625rem var(--avatar-stack-extra-height); overflow: visible; } .fluxer-boot-fr-ca { display: flex; align-items: center; justify-content: center; gap: var(--active-now-action-gap); box-sizing: border-box; width: 100%; height: var(--active-now-action-height); min-height: var(--active-now-action-height); padding: var(--active-now-action-padding-block) var(--active-now-action-padding-inline); border: var(--skeleton-chrome-border); border-radius: var(--active-now-action-radius); background-color: var(--form-surface-background); } .fluxer-boot-chat { --textarea-font-size: var(--font-size, 1rem); --textarea-line-height: calc(var(--textarea-font-size) * 1.375); --textarea-content-offset: max(0rem, calc((var(--textarea-button-height) - var(--textarea-line-height)) / 2)); --composer-box-inset-inline: min( var(--footer-box-inset), var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)) ); --composer-box-padding-inline: max( 0rem, calc(var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)) - var(--composer-box-inset-inline)) ); display: grid; grid-template-rows: var(--layout-header-height-mobile) minmax(0, 1fr); height: 100%; min-height: 0; width: 100%; max-width: 100%; min-width: 0; overflow: hidden; background-color: var(--background-secondary-lighter); } @media (min-width: 768px) { .fluxer-boot-chat { grid-template-rows: var(--layout-header-height) minmax(0, 1fr); } } .fluxer-boot-chat-header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, auto); align-items: center; gap: var(--channel-header-gap); height: var(--layout-header-height); min-height: var(--layout-header-height); padding: 0 var(--channel-header-padding-inline); border-bottom: 0.0625rem solid var(--user-area-divider-color); background-color: var(--background-secondary-lighter); box-sizing: border-box; } @media (max-width: 767px) { .fluxer-boot-chat-header { height: var(--layout-header-height-mobile); min-height: var(--layout-header-height-mobile); } } .fluxer-boot-identity { display: flex; align-items: center; min-width: 0; overflow: hidden; } .fluxer-boot-identity-back { display: flex; align-items: center; justify-content: center; height: var(--channel-header-back-button-size); width: var(--channel-header-back-button-size); flex-shrink: 0; margin-right: var(--channel-header-back-button-gap); } @media (min-width: 768px) { .fluxer-boot-identity-back-desktop { display: none; } } .fluxer-boot-identity-name { margin-left: var(--channel-header-name-gap); } .fluxer-boot-identity-name-gdm { margin-left: var(--channel-header-name-gap-group-dm); } .fluxer-boot-identity-caret { margin-left: var(--channel-header-caret-gap); } .fluxer-boot-topic-divider { margin-left: var(--channel-header-topic-divider-gap); margin-right: var(--channel-header-topic-divider-gap); } .fluxer-boot-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: var(--channel-header-actions-gap); min-width: 0; flex-shrink: 0; } .fluxer-boot-header-action { display: flex; align-items: center; justify-content: center; height: var(--channel-header-action-size); width: var(--channel-header-action-size); flex-shrink: 0; } .fluxer-boot-header-search { display: flex; align-items: center; box-sizing: border-box; width: var(--message-search-bar-width); min-width: var(--message-search-bar-width); max-width: var(--message-search-bar-width); height: var(--message-search-bar-height); min-height: var(--message-search-bar-height); padding-left: var(--input-container-padding); padding-right: var(--input-container-padding); border: var(--skeleton-chrome-border); border-radius: var(--radius-xl); background-color: var(--background-textarea); flex-shrink: 0; } .fluxer-boot-header-search-icon { margin-right: var(--message-search-bar-icon-gap); flex-shrink: 0; } .fluxer-boot-chat-body { --member-list-width: var(--layout-member-list-width); position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; height: 100%; min-height: 0; width: 100%; max-width: 100%; min-width: 0; overflow: hidden; contain: layout style; } .fluxer-boot-member-divider { right: var(--member-list-width); z-index: 5; } .fluxer-boot-chat-area { height: 100%; min-height: 0; min-width: 0; overflow: hidden; } .fluxer-boot-chat-column { display: flex; flex-direction: column; font-size: var(--font-size, 1rem); height: 100%; min-height: 0; width: 100%; max-width: 100%; min-width: 0; overflow: hidden; background-color: var(--composer-surface-color); } .fluxer-boot-messages { display: flex; flex: 1 1 0%; flex-direction: column; justify-content: flex-end; min-height: 0; min-width: 0; overflow: hidden; padding-left: var(--chat-mobile-horizontal-padding); padding-right: var(--chat-mobile-horizontal-padding); padding-bottom: calc(var(--messages-bottom-clearance) - var(--message-filler-padding-bottom)); } @media (min-width: 768px) { .fluxer-boot-messages { padding-left: var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)); padding-right: var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)); } } .fluxer-boot-fill { box-sizing: border-box; pointer-events: none; user-select: none; -webkit-user-select: none; width: 100%; display: flex; flex-direction: column; flex-shrink: 0; position: relative; overflow: hidden; contain: strict; padding-top: 1rem; padding-bottom: var(--message-filler-padding-bottom); margin-left: calc(-1 * var(--message-mobile-margin)); margin-right: calc(-1 * var(--message-mobile-margin)); padding-left: var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)); padding-right: var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)); } .fluxer-boot-fill-compact { margin-left: calc(-1 * var(--chat-horizontal-padding, var(--chat-horizontal-padding-default))); margin-right: calc(-1 * var(--chat-horizontal-padding, var(--chat-horizontal-padding-default))); padding-left: var(--message-compact-horizontal-padding); padding-right: var(--message-compact-horizontal-padding); } @media (min-width: 768px) { .fluxer-boot-fill { margin-left: calc(-1 * var(--chat-horizontal-padding, var(--chat-horizontal-padding-default))); margin-right: calc(-1 * var(--chat-horizontal-padding, var(--chat-horizontal-padding-default))); padding-left: var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)); padding-right: calc( var(--chat-horizontal-padding, var(--chat-horizontal-padding-default)) + var(--message-action-bar-offset) ); } .fluxer-boot-fill-compact { padding-left: var(--message-compact-horizontal-padding); padding-right: calc(var(--message-compact-horizontal-padding) + var(--message-action-bar-offset)); } } .fluxer-boot-mgroup { position: relative; z-index: 0; } .fluxer-boot-mrow { display: flex; gap: var(--message-gutter); align-items: flex-start; padding-block: var(--message-spacing-y); } .fluxer-boot-mavatar { margin-top: calc(var(--message-spacing-y) + var(--message-avatar-align-offset)); } .fluxer-boot-mbody { flex: 1; min-width: 0; display: flex; flex-direction: column; } .fluxer-boot-mhead { display: flex; align-items: center; gap: 0.75rem; height: var(--message-line-height); } .fluxer-boot-mlead { display: flex; align-items: center; height: var(--message-line-height); } .fluxer-boot-mcont { display: grid; grid-template-columns: var(--message-avatar-size) var(--message-gutter) minmax(0, 1fr); align-items: center; min-height: calc(var(--message-line-height) + 2 * var(--message-spacing-y)); } .fluxer-boot-mcont-line { grid-column: 3; } .fluxer-boot-mattach { display: block; margin-top: 0.5rem; margin-left: calc(var(--message-avatar-size) + var(--message-gutter)); } .fluxer-boot-cmsgs { display: flex; flex-direction: column; } .fluxer-boot-crow { display: grid; grid-template-columns: var(--message-compact-timestamp-width) var(--message-compact-gap) minmax(0, 1fr); align-items: center; min-height: calc(var(--message-line-height) + 2 * var(--message-spacing-y)); } .fluxer-boot-cts { display: flex; grid-column: 1; align-items: center; justify-content: flex-start; min-width: 0; } .fluxer-boot-cbody { display: flex; grid-column: 3; align-items: center; gap: var(--message-compact-username-gap); min-width: 0; } .fluxer-boot-cauthor { display: flex; align-items: center; flex-shrink: 0; min-width: 0; } .fluxer-boot-cavatar { margin-inline-end: var(--message-compact-gap); flex-shrink: 0; } .fluxer-boot-cuser { min-width: 3rem; max-width: 8rem; } .fluxer-boot-cline { min-width: 0; flex-shrink: 1; } .fluxer-boot-cattach { display: block; box-sizing: border-box; padding-top: 0.5rem; padding-left: calc( var(--message-compact-timestamp-width) + var(--message-compact-gap) + var(--message-compact-text-indent-from-username) ); } .fluxer-boot-composer { position: relative; max-width: 100%; box-sizing: border-box; display: flex; flex-direction: column; flex: 0 1 auto; padding-inline: var(--composer-box-padding-inline); min-width: 0; contain: inline-size; overflow: visible; --composer-action-button-size: 2rem; --composer-divider-color: var(--floating-surface-ring-color); --composer-surface-fill: var(--composer-surface-color, var(--background-secondary-lighter)); border-radius: var(--composer-box-radius, 0px); } .fluxer-boot-composer-mobile { padding: 0; min-height: 0; --textarea-min-height: var(--composer-mobile-box-height); --textarea-padding-y: var(--composer-mobile-padding-y); --composer-box-inset: 0px; --composer-box-inset-inline: 0px; --composer-box-padding-inline: 0px; } .fluxer-boot-composer-row { min-height: var(--textarea-min-height); margin-block-start: 0; margin-block-end: var(--composer-box-inset); margin-inline: var(--composer-box-inset-inline); background-color: var(--background-textarea); --composer-box-radius: var(--footer-box-radius); --composer-box-ring-color: var(--floating-surface-ring-color); } .fluxer-boot-composer-row::after { content: ''; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 0.0625rem var(--composer-box-ring-color); pointer-events: none; } .fluxer-boot-composer-section { width: 100%; max-width: 100%; display: flex; flex-direction: column; min-width: 0; box-sizing: border-box; flex-shrink: 1000; } .fluxer-boot-composer-grid { display: grid; grid-template-columns: minmax(0, auto) minmax(0, 1fr) minmax(0, auto); align-items: start; position: relative; min-height: var(--textarea-min-height); box-sizing: border-box; padding: var(--textarea-padding-y) 0; column-gap: var(--textarea-upload-gap); min-width: 0; width: 100%; max-width: 100%; } .fluxer-boot-composer-upload { grid-column: 1; display: flex; align-items: center; justify-content: center; min-height: var(--textarea-button-height); min-width: 0; flex-shrink: 1; padding-inline: var(--textarea-side-button-padding); } .fluxer-boot-composer-input { grid-column: 2; display: flex; flex-direction: column; min-height: var(--textarea-button-height); min-width: 0; padding-top: var(--textarea-content-offset); } .fluxer-boot-composer-input > * { flex: 0 1 auto; min-height: 0; } .fluxer-boot-composer-line { display: flex; align-items: center; height: var(--textarea-line-height); min-width: 0; } .fluxer-boot-composer-buttons { grid-column: 3; display: flex; align-items: center; gap: var(--composer-action-gap); min-height: var(--textarea-button-height); min-width: 0; flex-shrink: 1; padding-inline: var(--textarea-side-button-padding); } .fluxer-boot-composer-action { display: flex; align-items: center; justify-content: center; height: var(--textarea-button-height); min-width: var(--textarea-button-height); flex-shrink: 0; } .fluxer-boot-composer-divider { width: 0.0625rem; height: 1.5rem; background-color: var(--background-modifier-hover); margin-inline: var(--composer-action-gap); align-self: center; } .fluxer-boot-member-list { display: flex; flex-direction: column; box-sizing: border-box; height: 100%; min-height: 0; width: calc(var(--member-list-width) + var(--outline-frame-border-width, 0.0625rem)); min-width: 0; overflow: hidden; border-right: var(--outline-frame-border-width, 0.0625rem) solid var(--user-area-divider-color); border-bottom: var(--outline-frame-border-width, 0.0625rem) solid var(--user-area-divider-color); border-top-left-radius: var(--outline-radius, 0px); background-color: var(--background-secondary-lighter); } .fluxer-boot-member-list-gdm { width: calc(var(--member-list-width) + 2 * var(--outline-frame-border-width, 0.0625rem)); border-left: var(--outline-frame-border-width, 0.0625rem) solid var(--user-area-divider-color); } .fluxer-boot-member-scroller { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: hidden; padding-top: var(--member-list-scroller-padding-block-start); padding-left: var(--member-list-scroller-padding-inline); padding-right: var(--member-list-scroller-padding-inline); padding-bottom: var(--member-list-scroller-padding-block-end); } .fluxer-boot-mlgroups, .fluxer-boot-mlgroup, .fluxer-boot-mlrows { display: flex; flex-direction: column; } .fluxer-boot-mlhead { display: flex; align-items: flex-start; box-sizing: border-box; height: var(--member-list-group-header-height); min-height: var(--member-list-group-header-height); padding: 0.75rem var(--member-list-item-padding-inline) var(--member-list-item-padding-block); } .fluxer-boot-mlrow { display: flex; align-items: center; box-sizing: border-box; height: var(--member-list-item-height); min-height: var(--member-list-item-height); padding: var(--member-list-item-padding-block) var(--member-list-item-padding-inline); } .fluxer-boot-mlrow-gdm { height: auto; min-height: var(--member-list-item-height-group-dm); } .fluxer-boot-mlrc { display: flex; align-items: center; gap: var(--member-list-item-content-gap); width: 100%; min-width: 0; } .fluxer-boot-mlinfo { display: flex; flex: 1; flex-direction: column; min-width: 0; } .fluxer-boot-mlname, .fluxer-boot-mlstatus { display: flex; align-items: center; min-width: 0; } .fluxer-boot-mlname { height: var(--member-list-item-name-line-height); } .fluxer-boot-mlstatus { height: var(--member-list-item-status-line-height); } .fluxer-boot-mlrows-gdm { gap: var(--member-list-row-gap); } .fluxer-boot-mlgroup-gdm { padding-bottom: var(--member-list-group-spacer-height); } .fluxer-boot-user-area { position: absolute; bottom: 0; left: 0; width: calc(var(--layout-guild-list-width) + var(--layout-sidebar-width) + 0.0625rem); padding: 0 var(--footer-box-inset-inline) var(--user-area-box-inset-block-end); box-sizing: border-box; background-color: var(--background-secondary); pointer-events: none; z-index: var(--z-index-elevated-1); } .fluxer-boot-user-panel { width: 100%; background-color: var(--panel-control-bg); border-radius: var(--footer-box-radius); box-shadow: inset 0 0 0 0.0625rem var(--floating-surface-ring-color); overflow: hidden; } .fluxer-boot-voice-panel { display: block; box-sizing: border-box; width: 100%; border-bottom: 0.0625rem solid var(--floating-surface-ring-color-strong); } .fluxer-boot-user-row { display: flex; align-items: center; gap: var(--spacing-3); width: 100%; min-height: var(--layout-user-area-height); padding-block: var(--user-area-padding-y); padding-inline: var(--user-area-avatar-lead) var(--user-area-padding-x); } .fluxer-boot-user-identity { display: flex; align-items: center; gap: var(--spacing-2); flex: 1; min-width: 0; height: var(--user-area-content-height); padding: 0; } .fluxer-boot-user-text { display: flex; flex-direction: column; flex: 1; min-width: 0; gap: 0.0625rem; } .fluxer-boot-user-name { display: flex; align-items: center; height: 1.125rem; } .fluxer-boot-user-status { display: flex; align-items: center; height: 0.875rem; margin-top: -0.0625rem; } .fluxer-boot-user-controls { display: flex; align-items: center; gap: var(--spacing-1); flex-shrink: 0; padding-left: var(--spacing-3); } .fluxer-boot-bottom-nav { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; display: flex; height: var(--mobile-bottom-nav-height); align-items: center; justify-content: space-around; border-top: 0.0625rem solid var(--background-header-secondary); background-color: var(--background-secondary); } .theme-light .fluxer-boot-bottom-nav { background-color: var(--background-primary); } .fluxer-boot-nav-item { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; padding-top: 0.5rem; padding-bottom: 0.5rem; } .fluxer-boot-nav-label { display: flex; align-items: center; justify-content: center; height: 0.9375rem; } html #fluxer-boot-shell.fluxer-boot-auth { position: fixed; inset: 0; z-index: 0; height: auto; min-height: 0; padding: 0; overflow: hidden; background: radial-gradient(ellipse 54rem 30rem at 50% -8%, rgb(138 98 209 / 0.18), transparent 68%), linear-gradient(145deg, #05040d 0%, #080616 48%, #0d0a1c 100%); } html #fluxer-boot-shell.fluxer-boot-auth[data-mobile='1'] { background: radial-gradient(ellipse 28rem 18rem at 32% 0%, rgb(122 87 191 / 0.16), transparent 74%), radial-gradient(ellipse 22rem 18rem at 88% 92%, rgb(91 65 151 / 0.12), transparent 72%), linear-gradient(145deg, #05040d 0%, #080616 46%, #0d0a1c 100%); } .fluxer-boot-auth-center { box-sizing: border-box; display: grid; place-items: center; min-height: 100svh; width: 100%; padding: clamp(1.5rem, 4vw, 3rem); } .fluxer-boot-auth-cont { display: flex; align-items: center; justify-content: center; width: min(100%, 38rem); max-width: 100%; } .fluxer-boot-auth-card { box-sizing: border-box; display: flex; width: 100%; max-width: 32rem; overflow: hidden; border: 0.0625rem solid rgb(255 255 255 / 0.08); border-radius: 0.5rem; background-color: var(--background-secondary); box-shadow: 0 1.25rem 4rem -1.5rem rgb(0 0 0 / 0.7); } .fluxer-boot-auth-form { box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; width: 100%; min-height: 0; overflow: hidden; padding: clamp(2rem, 4vw, 2.75rem); } .fluxer-boot-auth-mobile { box-sizing: border-box; min-height: 100dvh; padding: calc(2rem + env(safe-area-inset-top, 0px)) 1.5rem calc(2.5rem + env(safe-area-inset-bottom, 0px)); } .fluxer-boot-auth-mmain { box-sizing: border-box; display: flex; flex-direction: column; width: 100%; max-width: 28rem; margin: 0 auto; overflow: hidden; } .fluxer-boot-auth-title { display: flex; align-items: center; justify-content: center; height: 1.875rem; margin-bottom: 1.25rem; flex-shrink: 0; } .fluxer-boot-auth-list { display: flex; flex-direction: column; gap: 0.625rem; min-height: 0; } .fluxer-boot-auth-primary { background-color: var(--brand-primary); } .fluxer-boot-auth-load { display: flex; flex-direction: column; justify-content: center; width: 100%; min-height: 0; overflow: hidden; } .fluxer-boot-auth-load[data-mobile='1'] { justify-content: flex-start; } .fluxer-boot-auth-full { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; min-height: 100svh; width: 100%; padding: 0 1rem; } .fluxer-boot-auth-word { display: grid; place-items: center; width: 100%; max-width: 40rem; height: 7.5rem; } .fluxer-boot-auth-wtext { margin: 0; color: var(--text-primary); font-size: 4.75rem; font-weight: 850; line-height: 1; letter-spacing: 0; white-space: nowrap; text-align: center; } .fluxer-boot-auth-foot { display: flex; justify-content: center; margin-top: 0.5rem; }