border-bottom-right-radius: 0;
}
+ /* Dynamic search results panel: fill remaining space, but never below 250px */
+ .search {
+ flex: 1 1 auto; /* allow search area to grow */
+ min-height: 0; /* allow inner flex children to compute height */
+ display: flex;
+ flex-direction: column;
+ }
+
.list-group {
border-top-left-radius: 0;
border-top-right-radius: 0;
overflow-y: auto;
- min-height: 250px;
- /* backdrop-filter: blur(8px) saturate(150%);
- background-color: rgba(219, 219, 219, 0.45);
- border: 1px solid #ececec77; */
+ min-height: 250px; /* minimum requirement */
+ flex: 1 1 auto; /* take all remaining vertical space */
+ max-height: none; /* remove hard cap */
}
.input-group {
<Sidenav />
</div>
-<div class="d-flex flex-row justify-content-between h-100">
+<div class="layout-read d-flex flex-row justify-content-between">
<!-- shown on large Screen -->
{#if $alwaysShowSidenav}
<div class="sidenav p-3">
opacity: 0.7;
}
+ .layout-read {
+ height: 100%;
+ overflow: hidden;
+ }
+
.sidenav {
width: 380px;
min-width: 380px;
+ overflow-y: auto; /* independent scroll */
+ max-height: 100vh; /* constrain to viewport */
+ padding-right: 0.5rem;
+ box-sizing: border-box;
+ }
+
+ #sidenav {
+ overflow-y: auto;
}
.files {
#scrollArea {
padding-right: 1rem;
+ overflow-y: auto;
+ max-height: 100vh; /* scroll area uses remaining viewport height */
}
@media (min-width: 1300px) and (max-width: 1450px) {
.logContent {
flex-direction: column !important;
}
+
+ #scrollArea {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important;
+ }
}
@media (min-width: 769px) {