diff --git a/index.html b/index.html index a789943..fbcb8fd 100644 --- a/index.html +++ b/index.html @@ -476,6 +476,30 @@ inset 0 2px 7px rgba(var(--overlay-rgb), 0.18), inset 0 -1px 2px rgba(255, 255, 255, 0.03) !important; } + #planner-view #planner-cal-bar { + position: absolute !important; + top: 0; + left: 0; + right: 0; + margin-top: 0 !important; + z-index: 20; + background: rgba(255, 255, 255, 0.5) !important; + border-bottom: 1px solid rgba(var(--line-rgb), 0.08) !important; + backdrop-filter: blur(28px) saturate(180%); + -webkit-backdrop-filter: blur(28px) saturate(180%); + } + .dark #planner-view #planner-cal-bar { + background: rgba(35, 34, 32, 0.5) !important; + border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important; + } + #planner-view #calendar-swipe-zone, + #planner-view #calendar-week-wrap, + #planner-view #calendar-month-wrap { + background: transparent !important; + } + #planner-view #planner-scroll { + padding-top: 10rem !important; + } #planner-picker-search { appearance: none; -webkit-appearance: none; @@ -545,20 +569,33 @@ position: relative; box-sizing: border-box; width: min(calc(100% - 2.4rem), 24.5rem); - height: 3.34rem; + height: 3.72rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: 0.06rem; - padding: 0.22rem; + padding: 0.42rem; border-radius: 1.68rem; - background: rgb(var(--card-rgb)); - border: 1px solid rgb(var(--border-card-rgb)); + background: rgba(255, 255, 255, 0.2); + border: 1px solid rgba(255, 255, 255, 0.32); + backdrop-filter: blur(28px) saturate(180%); + -webkit-backdrop-filter: blur(28px) saturate(180%); box-shadow: - inset 0 1px 8px rgba(var(--overlay-rgb), 0.15), - var(--shadow-shell); + inset 0 1px 0 rgba(255, 255, 255, 0.6), + inset 0 -1px 0 rgba(var(--overlay-rgb), 0.06), + 0 8px 20px rgba(var(--overlay-rgb), 0.16), + 0 22px 52px rgba(var(--overlay-rgb), 0.24); pointer-events: auto; } + .dark #app-bottom-nav .bottom-dock { + background: rgba(255, 255, 255, 0.04); + border: 1px solid rgba(255, 255, 255, 0.12); + box-shadow: + inset 0 1px 0 rgba(255, 255, 255, 0.24), + inset 0 -1px 0 rgba(0, 0, 0, 0.22), + 0 10px 24px rgba(0, 0, 0, 0.36), + 0 26px 60px rgba(0, 0, 0, 0.46); + } #app-bottom-nav .nav-slot { min-width: 0; height: 100%; @@ -602,12 +639,21 @@ background: var(--hover-overlay) !important; } #app-bottom-nav .nav-tab.is-active { - width: 100%; - height: 100%; + width: 2.6rem; + height: 2.6rem; color: rgb(var(--text-primary-rgb)); - background: rgb(var(--app-bg-rgb)) !important; - border-radius: 1.46rem; - box-shadow: none !important; + background: rgba(var(--overlay-rgb), 0.38) !important; + border-radius: 1.05rem; + box-shadow: + inset 0 1px 0 rgba(255, 255, 255, 0.08), + inset 0 -1px 0 rgba(var(--overlay-rgb), 0.18) !important; + } + .dark #app-bottom-nav .nav-tab.is-active { + color: #fff; + background: rgba(0, 0, 0, 0.42) !important; + box-shadow: + inset 0 1px 0 rgba(255, 255, 255, 0.06), + inset 0 -1px 0 rgba(0, 0, 0, 0.4) !important; } #app-bottom-nav .nav-tab:active, #app-bottom-nav .nav-action:active { @@ -625,9 +671,9 @@ } #app-bottom-nav .bottom-dock { width: min(calc(100% - 1.6rem), 22.5rem); - height: 3.12rem; + height: 3.48rem; gap: 0.05rem; - padding: 0.2rem; + padding: 0.38rem; border-radius: 1.56rem; } #app-bottom-nav .nav-tab, @@ -637,9 +683,9 @@ border-radius: 1.28rem; } #app-bottom-nav .nav-tab.is-active { - height: 100%; - width: 100%; - border-radius: 1.36rem; + width: 2.4rem; + height: 2.4rem; + border-radius: 0.96rem; } } diff --git a/js/views/MealPlanner.js b/js/views/MealPlanner.js index 19b4694..7d0627c 100644 --- a/js/views/MealPlanner.js +++ b/js/views/MealPlanner.js @@ -1096,15 +1096,11 @@ export function setupMealPlanner() { }; /* ── calendar scroll shadow ─────────────────── */ - const plannerScroll = document.getElementById('planner-scroll'); const calBar = document.getElementById('planner-cal-bar'); - if (plannerScroll && calBar) { + if (calBar) { const shadow = document.createElement('div'); - shadow.style.cssText = 'position:absolute;left:0;right:0;bottom:-8px;height:8px;background:linear-gradient(to bottom,rgba(var(--overlay-rgb),0.25),transparent);opacity:0;transition:opacity 0.2s;pointer-events:none;'; + shadow.style.cssText = 'position:absolute;left:0;right:0;bottom:-8px;height:8px;background:linear-gradient(to bottom,rgba(var(--overlay-rgb),0.25),transparent);pointer-events:none;'; calBar.appendChild(shadow); - plannerScroll.addEventListener('scroll', () => { - shadow.style.opacity = plannerScroll.scrollTop > 2 ? '1' : '0'; - }); } bindCalendarDayClicks(weekGrid, (date) => {