mirror of
https://github.com/Cleanuparr/Cleanuparr.git
synced 2026-05-08 23:03:13 -04:00
84 lines
2.0 KiB
SCSS
84 lines
2.0 KiB
SCSS
// =============================================================================
|
|
// Shared Data Page Toolbar
|
|
// Used by data-browsing pages (events, logs) for filter/action bars.
|
|
// Usage: @use 'data-toolbar' as *;
|
|
// =============================================================================
|
|
|
|
// Pins a page header bar to the top of the shell scroll container
|
|
@mixin sticky-page-header {
|
|
position: sticky;
|
|
top: calc(-1 * var(--content-padding, var(--space-6)));
|
|
z-index: var(--z-sticky);
|
|
background: var(--surface-overlay);
|
|
backdrop-filter: blur(20px) saturate(1.4);
|
|
-webkit-backdrop-filter: blur(20px) saturate(1.4);
|
|
padding-top: var(--content-padding, var(--space-6));
|
|
padding-bottom: var(--space-3);
|
|
padding-left: var(--content-padding, var(--space-6));
|
|
padding-right: var(--content-padding, var(--space-6));
|
|
margin-top: calc(-1 * var(--content-padding, var(--space-6)));
|
|
margin-left: calc(-1 * var(--content-padding, var(--space-6)));
|
|
margin-right: calc(-1 * var(--content-padding, var(--space-6)));
|
|
box-shadow: 0 10px 18px -14px rgba(0, 0, 0, 0.35);
|
|
}
|
|
|
|
@mixin data-toolbar {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: var(--space-4);
|
|
margin-bottom: var(--space-4);
|
|
flex-wrap: wrap;
|
|
|
|
&__filters {
|
|
display: flex;
|
|
align-items: flex-end;
|
|
gap: var(--space-3);
|
|
flex: 1;
|
|
min-width: 0;
|
|
flex-wrap: wrap;
|
|
|
|
app-select {
|
|
width: 180px;
|
|
flex-shrink: 0;
|
|
}
|
|
}
|
|
|
|
&__actions {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--space-2);
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
@media (max-width: 1024px) {
|
|
&__filters {
|
|
app-select {
|
|
width: 150px;
|
|
flex-shrink: 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
flex-direction: column;
|
|
align-items: stretch;
|
|
|
|
&__filters {
|
|
app-select {
|
|
width: 100%;
|
|
flex-shrink: 1;
|
|
}
|
|
|
|
app-input {
|
|
width: 100%;
|
|
min-width: 0;
|
|
}
|
|
}
|
|
|
|
&__actions {
|
|
justify-content: flex-end;
|
|
}
|
|
}
|
|
}
|