commit c195821520bceb72d1cae1fbe760e27016c4b337
parent eaf21000d361c56981cfb5ca1157774d86479c64
Author: triesap <137732411+triesap@users.noreply.github.com>
Date: Fri, 14 Feb 2025 06:29:04 +0000
apps-lib: edit farms add view, add window safari listener, edit components, css, stores
Diffstat:
12 files changed, 143 insertions(+), 32 deletions(-)
diff --git a/apps-lib/src/lib/components/button/button-layout-pair.svelte b/apps-lib/src/lib/components/button/button-layout-pair.svelte
@@ -33,7 +33,7 @@
label: basis.continue.label,
callback: basis.continue.callback,
}}
- ></ButtonLayout>
+ />
{#if basis.back}
<div class={`flex flex-col justify-center items-center el-re`}>
{#if basis.back.visible}
diff --git a/apps-lib/src/lib/components/layout/layout-bottom-button.svelte b/apps-lib/src/lib/components/layout/layout-bottom-button.svelte
@@ -2,11 +2,21 @@
import { app_lo } from "$lib/store/app";
import type { Snippet } from "svelte";
- let { children }: { children: Snippet } = $props();
+ let {
+ basis,
+ children,
+ }: {
+ basis?: {
+ hidden: boolean;
+ };
+ children: Snippet;
+ } = $props();
</script>
-<div
- class={`z-10 absolute bottom-0 h-lo_bottom_button_${$app_lo} flex flex-row w-full px-4 justify-center items-center`}
->
- {@render children()}
-</div>
+{#if !basis?.hidden}
+ <div
+ class={`z-10 absolute bottom-0 h-lo_bottom_button_${$app_lo} flex flex-col w-full px-4 gap-1 justify-start items-center`}
+ >
+ {@render children()}
+ </div>
+{/if}
diff --git a/apps-lib/src/lib/components/lib/css.svelte b/apps-lib/src/lib/components/lib/css.svelte
@@ -1 +1 @@
-<div class="hidden -bottom-lo_bottom_button_ios0 -bottom-lo_bottom_button_ios1 -bottom-lo_bottom_button_web_desktop -bottom-lo_bottom_button_web_mobile -bottom-nav_page_header_ios0 -bottom-nav_page_header_ios1 -bottom-nav_page_header_web_desktop -bottom-nav_page_header_web_mobile -bottom-nav_page_toolbar_ios0 -bottom-nav_page_toolbar_ios1 -bottom-nav_page_toolbar_web_desktop -bottom-nav_page_toolbar_web_mobile -bottom-nav_tabs_ios0 -bottom-nav_tabs_ios1 -bottom-nav_tabs_web_desktop -bottom-nav_tabs_web_mobile -left-lo_ios0 -left-lo_ios1 -left-lo_textdesc_ios0 -left-lo_textdesc_ios1 -left-lo_textdesc_web_desktop -left-lo_textdesc_web_mobile -left-lo_web_desktop -left-lo_web_mobile -right-lo_ios0 -right-lo_ios1 -right-lo_textdesc_ios0 -right-lo_textdesc_ios1 -right-lo_textdesc_web_desktop -right-lo_textdesc_web_mobile -right-lo_web_desktop -right-lo_web_mobile -top-lo_bottom_button_ios0 -top-lo_bottom_button_ios1 -top-lo_bottom_button_web_desktop -top-lo_bottom_button_web_mobile -top-nav_page_header_ios0 -top-nav_page_header_ios1 -top-nav_page_header_web_desktop -top-nav_page_header_web_mobile -top-nav_page_toolbar_ios0 -top-nav_page_toolbar_ios1 -top-nav_page_toolbar_web_desktop -top-nav_page_toolbar_web_mobile -top-nav_tabs_ios0 -top-nav_tabs_ios1 -top-nav_tabs_web_desktop -top-nav_tabs_web_mobile -translate-x-w_lo_ios0 -translate-x-w_lo_ios1 -translate-x-w_lo_textdesc_ios0 -translate-x-w_lo_textdesc_ios1 -translate-x-w_lo_textdesc_web_desktop -translate-x-w_lo_textdesc_web_mobile -translate-x-w_lo_web_desktop -translate-x-w_lo_web_mobile -translate-y-h_lo_bottom_button_ios0 -translate-y-h_lo_bottom_button_ios1 -translate-y-h_lo_bottom_button_web_desktop -translate-y-h_lo_bottom_button_web_mobile -translate-y-h_nav_page_header_ios0 -translate-y-h_nav_page_header_ios1 -translate-y-h_nav_page_header_web_desktop -translate-y-h_nav_page_header_web_mobile -translate-y-h_nav_page_toolbar_ios0 -translate-y-h_nav_page_toolbar_ios1 -translate-y-h_nav_page_toolbar_web_desktop -translate-y-h_nav_page_toolbar_web_mobile -translate-y-h_nav_tabs_ios0 -translate-y-h_nav_tabs_ios1 -translate-y-h_nav_tabs_web_desktop -translate-y-h_nav_tabs_web_mobile active:bg-layer-0-glyph active:bg-layer-0-glyph-hl active:bg-layer-0-glyph-hl_a active:bg-layer-0-glyph-label active:bg-layer-0-glyph-shade active:bg-layer-0-glyph_a active:bg-layer-0-glyph_pl active:bg-layer-0-surface active:bg-layer-0-surface-blur active:bg-layer-0-surface-edge active:bg-layer-0-surface_a active:bg-layer-0-surface_w active:bg-layer-1-glyph active:bg-layer-1-glyph-hl active:bg-layer-1-glyph-hl_a active:bg-layer-1-glyph-label active:bg-layer-1-glyph-shade active:bg-layer-1-glyph_a active:bg-layer-1-glyph_d active:bg-layer-1-glyph_pl active:bg-layer-1-surface active:bg-layer-1-surface-edge active:bg-layer-1-surface-err active:bg-layer-1-surface-focus active:bg-layer-1-surface_a active:bg-layer-2-glyph active:bg-layer-2-glyph-hl active:bg-layer-2-glyph-hl_a active:bg-layer-2-glyph-shade active:bg-layer-2-glyph_a active:bg-layer-2-glyph_d active:bg-layer-2-glyph_pl active:bg-layer-2-surface active:bg-layer-2-surface-edge active:bg-layer-2-surface_a active:bg-radroots-accent-focus active:border-layer-0-glyph active:border-layer-0-glyph-hl active:border-layer-0-glyph-hl_a active:border-layer-0-glyph-label active:border-layer-0-glyph-shade active:border-layer-0-glyph_a active:border-layer-0-glyph_pl active:border-layer-0-surface active:border-layer-0-surface-blur active:border-layer-0-surface-edge active:border-layer-0-surface_a active:border-layer-0-surface_w active:border-layer-1-glyph active:border-layer-1-glyph-hl active:border-layer-1-glyph-hl_a active:border-layer-1-glyph-label active:border-layer-1-glyph-shade active:border-layer-1-glyph_a active:border-layer-1-glyph_d active:border-layer-1-glyph_pl active:border-layer-1-surface active:border-layer-1-surface-edge active:border-layer-1-surface-err active:border-layer-1-surface-focus active:border-layer-1-surface_a active:border-layer-2-glyph active:border-layer-2-glyph-hl active:border-layer-2-glyph-hl_a active:border-layer-2-glyph-shade active:border-layer-2-glyph_a active:border-layer-2-glyph_d active:border-layer-2-glyph_pl active:border-layer-2-surface active:border-layer-2-surface-edge active:border-layer-2-surface_a active:border-radroots-accent-focus active:text-layer-0-glyph active:text-layer-0-glyph-hl active:text-layer-0-glyph-hl_a active:text-layer-0-glyph-label active:text-layer-0-glyph-shade active:text-layer-0-glyph_a active:text-layer-0-glyph_pl active:text-layer-0-surface active:text-layer-0-surface-blur active:text-layer-0-surface-edge active:text-layer-0-surface_a active:text-layer-0-surface_w active:text-layer-1-glyph active:text-layer-1-glyph-hl active:text-layer-1-glyph-hl_a active:text-layer-1-glyph-label active:text-layer-1-glyph-shade active:text-layer-1-glyph_a active:text-layer-1-glyph_d active:text-layer-1-glyph_pl active:text-layer-1-surface active:text-layer-1-surface-edge active:text-layer-1-surface-err active:text-layer-1-surface-focus active:text-layer-1-surface_a active:text-layer-2-glyph active:text-layer-2-glyph-hl active:text-layer-2-glyph-hl_a active:text-layer-2-glyph-shade active:text-layer-2-glyph_a active:text-layer-2-glyph_d active:text-layer-2-glyph_pl active:text-layer-2-surface active:text-layer-2-surface-edge active:text-layer-2-surface_a active:text-radroots-accent-focus bg-layer-0-glyph bg-layer-0-glyph-hl bg-layer-0-glyph-hl_a bg-layer-0-glyph-label bg-layer-0-glyph-shade bg-layer-0-glyph_a bg-layer-0-glyph_pl bg-layer-0-surface bg-layer-0-surface-blur bg-layer-0-surface-edge bg-layer-0-surface_a bg-layer-0-surface_w bg-layer-1-glyph bg-layer-1-glyph-hl bg-layer-1-glyph-hl_a bg-layer-1-glyph-label bg-layer-1-glyph-shade bg-layer-1-glyph_a bg-layer-1-glyph_d bg-layer-1-glyph_pl bg-layer-1-surface bg-layer-1-surface-edge bg-layer-1-surface-err bg-layer-1-surface-focus bg-layer-1-surface_a bg-layer-2-glyph bg-layer-2-glyph-hl bg-layer-2-glyph-hl_a bg-layer-2-glyph-shade bg-layer-2-glyph_a bg-layer-2-glyph_d bg-layer-2-glyph_pl bg-layer-2-surface bg-layer-2-surface-edge bg-layer-2-surface_a bg-radroots-accent-focus border-layer-0-glyph border-layer-0-glyph-hl border-layer-0-glyph-hl_a border-layer-0-glyph-label border-layer-0-glyph-shade border-layer-0-glyph_a border-layer-0-glyph_pl border-layer-0-surface border-layer-0-surface-blur border-layer-0-surface-edge border-layer-0-surface_a border-layer-0-surface_w border-layer-1-glyph border-layer-1-glyph-hl border-layer-1-glyph-hl_a border-layer-1-glyph-label border-layer-1-glyph-shade border-layer-1-glyph_a border-layer-1-glyph_d border-layer-1-glyph_pl border-layer-1-surface border-layer-1-surface-edge border-layer-1-surface-err border-layer-1-surface-focus border-layer-1-surface_a border-layer-2-glyph border-layer-2-glyph-hl border-layer-2-glyph-hl_a border-layer-2-glyph-shade border-layer-2-glyph_a border-layer-2-glyph_d border-layer-2-glyph_pl border-layer-2-surface border-layer-2-surface-edge border-layer-2-surface_a border-radroots-accent-focus bottom-lo_bottom_button_ios0 bottom-lo_bottom_button_ios1 bottom-lo_bottom_button_web_desktop bottom-lo_bottom_button_web_mobile bottom-nav_page_header_ios0 bottom-nav_page_header_ios1 bottom-nav_page_header_web_desktop bottom-nav_page_header_web_mobile bottom-nav_page_toolbar_ios0 bottom-nav_page_toolbar_ios1 bottom-nav_page_toolbar_web_desktop bottom-nav_page_toolbar_web_mobile bottom-nav_tabs_ios0 bottom-nav_tabs_ios1 bottom-nav_tabs_web_desktop bottom-nav_tabs_web_mobile focus:bg-layer-0-glyph focus:bg-layer-0-glyph-hl focus:bg-layer-0-glyph-hl_a focus:bg-layer-0-glyph-label focus:bg-layer-0-glyph-shade focus:bg-layer-0-glyph_a focus:bg-layer-0-glyph_pl focus:bg-layer-0-surface focus:bg-layer-0-surface-blur focus:bg-layer-0-surface-edge focus:bg-layer-0-surface_a focus:bg-layer-0-surface_w focus:bg-layer-1-glyph focus:bg-layer-1-glyph-hl focus:bg-layer-1-glyph-hl_a focus:bg-layer-1-glyph-label focus:bg-layer-1-glyph-shade focus:bg-layer-1-glyph_a focus:bg-layer-1-glyph_d focus:bg-layer-1-glyph_pl focus:bg-layer-1-surface focus:bg-layer-1-surface-edge focus:bg-layer-1-surface-err focus:bg-layer-1-surface-focus focus:bg-layer-1-surface_a focus:bg-layer-2-glyph focus:bg-layer-2-glyph-hl focus:bg-layer-2-glyph-hl_a focus:bg-layer-2-glyph-shade focus:bg-layer-2-glyph_a focus:bg-layer-2-glyph_d focus:bg-layer-2-glyph_pl focus:bg-layer-2-surface focus:bg-layer-2-surface-edge focus:bg-layer-2-surface_a focus:bg-radroots-accent-focus focus:border-layer-0-glyph focus:border-layer-0-glyph-hl focus:border-layer-0-glyph-hl_a focus:border-layer-0-glyph-label focus:border-layer-0-glyph-shade focus:border-layer-0-glyph_a focus:border-layer-0-glyph_pl focus:border-layer-0-surface focus:border-layer-0-surface-blur focus:border-layer-0-surface-edge focus:border-layer-0-surface_a focus:border-layer-0-surface_w focus:border-layer-1-glyph focus:border-layer-1-glyph-hl focus:border-layer-1-glyph-hl_a focus:border-layer-1-glyph-label focus:border-layer-1-glyph-shade focus:border-layer-1-glyph_a focus:border-layer-1-glyph_d focus:border-layer-1-glyph_pl focus:border-layer-1-surface focus:border-layer-1-surface-edge focus:border-layer-1-surface-err focus:border-layer-1-surface-focus focus:border-layer-1-surface_a focus:border-layer-2-glyph focus:border-layer-2-glyph-hl focus:border-layer-2-glyph-hl_a focus:border-layer-2-glyph-shade focus:border-layer-2-glyph_a focus:border-layer-2-glyph_d focus:border-layer-2-glyph_pl focus:border-layer-2-surface focus:border-layer-2-surface-edge focus:border-layer-2-surface_a focus:border-radroots-accent-focus focus:text-layer-0-glyph focus:text-layer-0-glyph-hl focus:text-layer-0-glyph-hl_a focus:text-layer-0-glyph-label focus:text-layer-0-glyph-shade focus:text-layer-0-glyph_a focus:text-layer-0-glyph_pl focus:text-layer-0-surface focus:text-layer-0-surface-blur focus:text-layer-0-surface-edge focus:text-layer-0-surface_a focus:text-layer-0-surface_w focus:text-layer-1-glyph focus:text-layer-1-glyph-hl focus:text-layer-1-glyph-hl_a focus:text-layer-1-glyph-label focus:text-layer-1-glyph-shade focus:text-layer-1-glyph_a focus:text-layer-1-glyph_d focus:text-layer-1-glyph_pl focus:text-layer-1-surface focus:text-layer-1-surface-edge focus:text-layer-1-surface-err focus:text-layer-1-surface-focus focus:text-layer-1-surface_a focus:text-layer-2-glyph focus:text-layer-2-glyph-hl focus:text-layer-2-glyph-hl_a focus:text-layer-2-glyph-shade focus:text-layer-2-glyph_a focus:text-layer-2-glyph_d focus:text-layer-2-glyph_pl focus:text-layer-2-surface focus:text-layer-2-surface-edge focus:text-layer-2-surface_a focus:text-radroots-accent-focus group-active:bg-layer-0-glyph group-active:bg-layer-0-glyph-hl group-active:bg-layer-0-glyph-hl_a group-active:bg-layer-0-glyph-label group-active:bg-layer-0-glyph-shade group-active:bg-layer-0-glyph_a group-active:bg-layer-0-glyph_pl group-active:bg-layer-0-surface group-active:bg-layer-0-surface-blur group-active:bg-layer-0-surface-edge group-active:bg-layer-0-surface_a group-active:bg-layer-0-surface_w group-active:bg-layer-1-glyph group-active:bg-layer-1-glyph-hl group-active:bg-layer-1-glyph-hl_a group-active:bg-layer-1-glyph-label group-active:bg-layer-1-glyph-shade group-active:bg-layer-1-glyph_a group-active:bg-layer-1-glyph_d group-active:bg-layer-1-glyph_pl group-active:bg-layer-1-surface group-active:bg-layer-1-surface-edge group-active:bg-layer-1-surface-err group-active:bg-layer-1-surface-focus group-active:bg-layer-1-surface_a group-active:bg-layer-2-glyph group-active:bg-layer-2-glyph-hl group-active:bg-layer-2-glyph-hl_a group-active:bg-layer-2-glyph-shade group-active:bg-layer-2-glyph_a group-active:bg-layer-2-glyph_d group-active:bg-layer-2-glyph_pl group-active:bg-layer-2-surface group-active:bg-layer-2-surface-edge group-active:bg-layer-2-surface_a group-active:bg-radroots-accent-focus group-active:border-layer-0-glyph group-active:border-layer-0-glyph-hl group-active:border-layer-0-glyph-hl_a group-active:border-layer-0-glyph-label group-active:border-layer-0-glyph-shade group-active:border-layer-0-glyph_a group-active:border-layer-0-glyph_pl group-active:border-layer-0-surface group-active:border-layer-0-surface-blur group-active:border-layer-0-surface-edge group-active:border-layer-0-surface_a group-active:border-layer-0-surface_w group-active:border-layer-1-glyph group-active:border-layer-1-glyph-hl group-active:border-layer-1-glyph-hl_a group-active:border-layer-1-glyph-label group-active:border-layer-1-glyph-shade group-active:border-layer-1-glyph_a group-active:border-layer-1-glyph_d group-active:border-layer-1-glyph_pl group-active:border-layer-1-surface group-active:border-layer-1-surface-edge group-active:border-layer-1-surface-err group-active:border-layer-1-surface-focus group-active:border-layer-1-surface_a group-active:border-layer-2-glyph group-active:border-layer-2-glyph-hl group-active:border-layer-2-glyph-hl_a group-active:border-layer-2-glyph-shade group-active:border-layer-2-glyph_a group-active:border-layer-2-glyph_d group-active:border-layer-2-glyph_pl group-active:border-layer-2-surface group-active:border-layer-2-surface-edge group-active:border-layer-2-surface_a group-active:border-radroots-accent-focus group-active:text-layer-0-glyph group-active:text-layer-0-glyph-hl group-active:text-layer-0-glyph-hl_a group-active:text-layer-0-glyph-label group-active:text-layer-0-glyph-shade group-active:text-layer-0-glyph_a group-active:text-layer-0-glyph_pl group-active:text-layer-0-surface group-active:text-layer-0-surface-blur group-active:text-layer-0-surface-edge group-active:text-layer-0-surface_a group-active:text-layer-0-surface_w group-active:text-layer-1-glyph group-active:text-layer-1-glyph-hl group-active:text-layer-1-glyph-hl_a group-active:text-layer-1-glyph-label group-active:text-layer-1-glyph-shade group-active:text-layer-1-glyph_a group-active:text-layer-1-glyph_d group-active:text-layer-1-glyph_pl group-active:text-layer-1-surface group-active:text-layer-1-surface-edge group-active:text-layer-1-surface-err group-active:text-layer-1-surface-focus group-active:text-layer-1-surface_a group-active:text-layer-2-glyph group-active:text-layer-2-glyph-hl group-active:text-layer-2-glyph-hl_a group-active:text-layer-2-glyph-shade group-active:text-layer-2-glyph_a group-active:text-layer-2-glyph_d group-active:text-layer-2-glyph_pl group-active:text-layer-2-surface group-active:text-layer-2-surface-edge group-active:text-layer-2-surface_a group-active:text-radroots-accent-focus group-focus:bg-layer-0-glyph group-focus:bg-layer-0-glyph-hl group-focus:bg-layer-0-glyph-hl_a group-focus:bg-layer-0-glyph-label group-focus:bg-layer-0-glyph-shade group-focus:bg-layer-0-glyph_a group-focus:bg-layer-0-glyph_pl group-focus:bg-layer-0-surface group-focus:bg-layer-0-surface-blur group-focus:bg-layer-0-surface-edge group-focus:bg-layer-0-surface_a group-focus:bg-layer-0-surface_w group-focus:bg-layer-1-glyph group-focus:bg-layer-1-glyph-hl group-focus:bg-layer-1-glyph-hl_a group-focus:bg-layer-1-glyph-label group-focus:bg-layer-1-glyph-shade group-focus:bg-layer-1-glyph_a group-focus:bg-layer-1-glyph_d group-focus:bg-layer-1-glyph_pl group-focus:bg-layer-1-surface group-focus:bg-layer-1-surface-edge group-focus:bg-layer-1-surface-err group-focus:bg-layer-1-surface-focus group-focus:bg-layer-1-surface_a group-focus:bg-layer-2-glyph group-focus:bg-layer-2-glyph-hl group-focus:bg-layer-2-glyph-hl_a group-focus:bg-layer-2-glyph-shade group-focus:bg-layer-2-glyph_a group-focus:bg-layer-2-glyph_d group-focus:bg-layer-2-glyph_pl group-focus:bg-layer-2-surface group-focus:bg-layer-2-surface-edge group-focus:bg-layer-2-surface_a group-focus:bg-radroots-accent-focus group-focus:border-layer-0-glyph group-focus:border-layer-0-glyph-hl group-focus:border-layer-0-glyph-hl_a group-focus:border-layer-0-glyph-label group-focus:border-layer-0-glyph-shade group-focus:border-layer-0-glyph_a group-focus:border-layer-0-glyph_pl group-focus:border-layer-0-surface group-focus:border-layer-0-surface-blur group-focus:border-layer-0-surface-edge group-focus:border-layer-0-surface_a group-focus:border-layer-0-surface_w group-focus:border-layer-1-glyph group-focus:border-layer-1-glyph-hl group-focus:border-layer-1-glyph-hl_a group-focus:border-layer-1-glyph-label group-focus:border-layer-1-glyph-shade group-focus:border-layer-1-glyph_a group-focus:border-layer-1-glyph_d group-focus:border-layer-1-glyph_pl group-focus:border-layer-1-surface group-focus:border-layer-1-surface-edge group-focus:border-layer-1-surface-err group-focus:border-layer-1-surface-focus group-focus:border-layer-1-surface_a group-focus:border-layer-2-glyph group-focus:border-layer-2-glyph-hl group-focus:border-layer-2-glyph-hl_a group-focus:border-layer-2-glyph-shade group-focus:border-layer-2-glyph_a group-focus:border-layer-2-glyph_d group-focus:border-layer-2-glyph_pl group-focus:border-layer-2-surface group-focus:border-layer-2-surface-edge group-focus:border-layer-2-surface_a group-focus:border-radroots-accent-focus group-focus:text-layer-0-glyph group-focus:text-layer-0-glyph-hl group-focus:text-layer-0-glyph-hl_a group-focus:text-layer-0-glyph-label group-focus:text-layer-0-glyph-shade group-focus:text-layer-0-glyph_a group-focus:text-layer-0-glyph_pl group-focus:text-layer-0-surface group-focus:text-layer-0-surface-blur group-focus:text-layer-0-surface-edge group-focus:text-layer-0-surface_a group-focus:text-layer-0-surface_w group-focus:text-layer-1-glyph group-focus:text-layer-1-glyph-hl group-focus:text-layer-1-glyph-hl_a group-focus:text-layer-1-glyph-label group-focus:text-layer-1-glyph-shade group-focus:text-layer-1-glyph_a group-focus:text-layer-1-glyph_d group-focus:text-layer-1-glyph_pl group-focus:text-layer-1-surface group-focus:text-layer-1-surface-edge group-focus:text-layer-1-surface-err group-focus:text-layer-1-surface-focus group-focus:text-layer-1-surface_a group-focus:text-layer-2-glyph group-focus:text-layer-2-glyph-hl group-focus:text-layer-2-glyph-hl_a group-focus:text-layer-2-glyph-shade group-focus:text-layer-2-glyph_a group-focus:text-layer-2-glyph_d group-focus:text-layer-2-glyph_pl group-focus:text-layer-2-surface group-focus:text-layer-2-surface-edge group-focus:text-layer-2-surface_a group-focus:text-radroots-accent-focus h-[12px] h-[16px] h-[17px] h-[18px] h-[20px] h-[22px] h-[24px] h-[28px] h-[36px] h-lo_bottom_button_ios0 h-lo_bottom_button_ios1 h-lo_bottom_button_web_desktop h-lo_bottom_button_web_mobile h-nav_page_header_ios0 h-nav_page_header_ios1 h-nav_page_header_web_desktop h-nav_page_header_web_mobile h-nav_page_toolbar_ios0 h-nav_page_toolbar_ios1 h-nav_page_toolbar_web_desktop h-nav_page_toolbar_web_mobile h-nav_tabs_ios0 h-nav_tabs_ios1 h-nav_tabs_web_desktop h-nav_tabs_web_mobile left-lo_ios0 left-lo_ios1 left-lo_textdesc_ios0 left-lo_textdesc_ios1 left-lo_textdesc_web_desktop left-lo_textdesc_web_mobile left-lo_web_desktop left-lo_web_mobile max-h-lo_bottom_button_ios0 max-h-lo_bottom_button_ios1 max-h-lo_bottom_button_web_desktop max-h-lo_bottom_button_web_mobile max-h-nav_page_header_ios0 max-h-nav_page_header_ios1 max-h-nav_page_header_web_desktop max-h-nav_page_header_web_mobile max-h-nav_page_toolbar_ios0 max-h-nav_page_toolbar_ios1 max-h-nav_page_toolbar_web_desktop max-h-nav_page_toolbar_web_mobile max-h-nav_tabs_ios0 max-h-nav_tabs_ios1 max-h-nav_tabs_web_desktop max-h-nav_tabs_web_mobile max-w-lo_ios0 max-w-lo_ios1 max-w-lo_textdesc_ios0 max-w-lo_textdesc_ios1 max-w-lo_textdesc_web_desktop max-w-lo_textdesc_web_mobile max-w-lo_web_desktop max-w-lo_web_mobile min-h-lo_bottom_button_ios0 min-h-lo_bottom_button_ios1 min-h-lo_bottom_button_web_desktop min-h-lo_bottom_button_web_mobile min-h-nav_page_header_ios0 min-h-nav_page_header_ios1 min-h-nav_page_header_web_desktop min-h-nav_page_header_web_mobile min-h-nav_page_toolbar_ios0 min-h-nav_page_toolbar_ios1 min-h-nav_page_toolbar_web_desktop min-h-nav_page_toolbar_web_mobile min-h-nav_tabs_ios0 min-h-nav_tabs_ios1 min-h-nav_tabs_web_desktop min-h-nav_tabs_web_mobile min-w-lo_ios0 min-w-lo_ios1 min-w-lo_textdesc_ios0 min-w-lo_textdesc_ios1 min-w-lo_textdesc_web_desktop min-w-lo_textdesc_web_mobile min-w-lo_web_desktop min-w-lo_web_mobile pb-h_lo_bottom_button_ios0 pb-h_lo_bottom_button_ios1 pb-h_lo_bottom_button_web_desktop pb-h_lo_bottom_button_web_mobile pb-h_nav_page_header_ios0 pb-h_nav_page_header_ios1 pb-h_nav_page_header_web_desktop pb-h_nav_page_header_web_mobile pb-h_nav_page_toolbar_ios0 pb-h_nav_page_toolbar_ios1 pb-h_nav_page_toolbar_web_desktop pb-h_nav_page_toolbar_web_mobile pb-h_nav_tabs_ios0 pb-h_nav_tabs_ios1 pb-h_nav_tabs_web_desktop pb-h_nav_tabs_web_mobile pl-w_lo_ios0 pl-w_lo_ios1 pl-w_lo_textdesc_ios0 pl-w_lo_textdesc_ios1 pl-w_lo_textdesc_web_desktop pl-w_lo_textdesc_web_mobile pl-w_lo_web_desktop pl-w_lo_web_mobile pr-w_lo_ios0 pr-w_lo_ios1 pr-w_lo_textdesc_ios0 pr-w_lo_textdesc_ios1 pr-w_lo_textdesc_web_desktop pr-w_lo_textdesc_web_mobile pr-w_lo_web_desktop pr-w_lo_web_mobile pt-h_lo_bottom_button_ios0 pt-h_lo_bottom_button_ios1 pt-h_lo_bottom_button_web_desktop pt-h_lo_bottom_button_web_mobile pt-h_nav_page_header_ios0 pt-h_nav_page_header_ios1 pt-h_nav_page_header_web_desktop pt-h_nav_page_header_web_mobile pt-h_nav_page_toolbar_ios0 pt-h_nav_page_toolbar_ios1 pt-h_nav_page_toolbar_web_desktop pt-h_nav_page_toolbar_web_mobile pt-h_nav_tabs_ios0 pt-h_nav_tabs_ios1 pt-h_nav_tabs_web_desktop pt-h_nav_tabs_web_mobile right-lo_ios0 right-lo_ios1 right-lo_textdesc_ios0 right-lo_textdesc_ios1 right-lo_textdesc_web_desktop right-lo_textdesc_web_mobile right-lo_web_desktop right-lo_web_mobile text-[12px] text-[15px] text-[16px] text-[18px] text-[19px] text-[20px] text-[21px] text-[23px] text-[24px] text-[26px] text-[27px] text-[28px] text-[30px] text-[36px] text-[40px] text-layer-0-glyph text-layer-0-glyph-hl text-layer-0-glyph-hl_a text-layer-0-glyph-label text-layer-0-glyph-shade text-layer-0-glyph_a text-layer-0-glyph_pl text-layer-0-surface text-layer-0-surface-blur text-layer-0-surface-edge text-layer-0-surface_a text-layer-0-surface_w text-layer-1-glyph text-layer-1-glyph-hl text-layer-1-glyph-hl_a text-layer-1-glyph-label text-layer-1-glyph-shade text-layer-1-glyph_a text-layer-1-glyph_d text-layer-1-glyph_pl text-layer-1-surface text-layer-1-surface-edge text-layer-1-surface-err text-layer-1-surface-focus text-layer-1-surface_a text-layer-2-glyph text-layer-2-glyph-hl text-layer-2-glyph-hl_a text-layer-2-glyph-shade text-layer-2-glyph_a text-layer-2-glyph_d text-layer-2-glyph_pl text-layer-2-surface text-layer-2-surface-edge text-layer-2-surface_a text-radroots-accent-focus top-lo_bottom_button_ios0 top-lo_bottom_button_ios1 top-lo_bottom_button_web_desktop top-lo_bottom_button_web_mobile top-nav_page_header_ios0 top-nav_page_header_ios1 top-nav_page_header_web_desktop top-nav_page_header_web_mobile top-nav_page_toolbar_ios0 top-nav_page_toolbar_ios1 top-nav_page_toolbar_web_desktop top-nav_page_toolbar_web_mobile top-nav_tabs_ios0 top-nav_tabs_ios1 top-nav_tabs_web_desktop top-nav_tabs_web_mobile translate-x-w_lo_ios0 translate-x-w_lo_ios1 translate-x-w_lo_textdesc_ios0 translate-x-w_lo_textdesc_ios1 translate-x-w_lo_textdesc_web_desktop translate-x-w_lo_textdesc_web_mobile translate-x-w_lo_web_desktop translate-x-w_lo_web_mobile translate-y-h_lo_bottom_button_ios0 translate-y-h_lo_bottom_button_ios1 translate-y-h_lo_bottom_button_web_desktop translate-y-h_lo_bottom_button_web_mobile translate-y-h_nav_page_header_ios0 translate-y-h_nav_page_header_ios1 translate-y-h_nav_page_header_web_desktop translate-y-h_nav_page_header_web_mobile translate-y-h_nav_page_toolbar_ios0 translate-y-h_nav_page_toolbar_ios1 translate-y-h_nav_page_toolbar_web_desktop translate-y-h_nav_page_toolbar_web_mobile translate-y-h_nav_tabs_ios0 translate-y-h_nav_tabs_ios1 translate-y-h_nav_tabs_web_desktop translate-y-h_nav_tabs_web_mobile w-[12px] w-[16px] w-[17px] w-[18px] w-[20px] w-[22px] w-[24px] w-[28px] w-[36px] w-lo_ios0 w-lo_ios1 w-lo_textdesc_ios0 w-lo_textdesc_ios1 w-lo_textdesc_web_desktop w-lo_textdesc_web_mobile w-lo_web_desktop w-lo_web_mobile"></div>
-\ No newline at end of file
+<div class="hidden -bottom-lo_bottom_button_ios0 -bottom-lo_bottom_button_ios1 -bottom-lo_bottom_button_web0 -bottom-lo_bottom_button_web_desktop -bottom-lo_bottom_button_web_ios0 -bottom-lo_bottom_button_web_ios1 -bottom-lo_bottom_button_web_mobile -bottom-lo_view_main_ios0 -bottom-lo_view_main_ios1 -bottom-lo_view_main_web0 -bottom-lo_view_main_web_desktop -bottom-lo_view_main_web_ios0 -bottom-lo_view_main_web_ios1 -bottom-lo_view_main_web_mobile -bottom-nav_page_header_ios0 -bottom-nav_page_header_ios1 -bottom-nav_page_header_web0 -bottom-nav_page_header_web_desktop -bottom-nav_page_header_web_ios0 -bottom-nav_page_header_web_ios1 -bottom-nav_page_header_web_mobile -bottom-nav_page_toolbar_ios0 -bottom-nav_page_toolbar_ios1 -bottom-nav_page_toolbar_web0 -bottom-nav_page_toolbar_web_desktop -bottom-nav_page_toolbar_web_ios0 -bottom-nav_page_toolbar_web_ios1 -bottom-nav_page_toolbar_web_mobile -bottom-nav_tabs_ios0 -bottom-nav_tabs_ios1 -bottom-nav_tabs_web0 -bottom-nav_tabs_web_desktop -bottom-nav_tabs_web_ios0 -bottom-nav_tabs_web_ios1 -bottom-nav_tabs_web_mobile -left-lo_ios0 -left-lo_ios1 -left-lo_textdesc_ios0 -left-lo_textdesc_ios1 -left-lo_textdesc_web0 -left-lo_textdesc_web_desktop -left-lo_textdesc_web_ios0 -left-lo_textdesc_web_ios1 -left-lo_textdesc_web_mobile -left-lo_web0 -left-lo_web_desktop -left-lo_web_ios0 -left-lo_web_ios1 -left-lo_web_mobile -right-lo_ios0 -right-lo_ios1 -right-lo_textdesc_ios0 -right-lo_textdesc_ios1 -right-lo_textdesc_web0 -right-lo_textdesc_web_desktop -right-lo_textdesc_web_ios0 -right-lo_textdesc_web_ios1 -right-lo_textdesc_web_mobile -right-lo_web0 -right-lo_web_desktop -right-lo_web_ios0 -right-lo_web_ios1 -right-lo_web_mobile -top-lo_bottom_button_ios0 -top-lo_bottom_button_ios1 -top-lo_bottom_button_web0 -top-lo_bottom_button_web_desktop -top-lo_bottom_button_web_ios0 -top-lo_bottom_button_web_ios1 -top-lo_bottom_button_web_mobile -top-lo_view_main_ios0 -top-lo_view_main_ios1 -top-lo_view_main_web0 -top-lo_view_main_web_desktop -top-lo_view_main_web_ios0 -top-lo_view_main_web_ios1 -top-lo_view_main_web_mobile -top-nav_page_header_ios0 -top-nav_page_header_ios1 -top-nav_page_header_web0 -top-nav_page_header_web_desktop -top-nav_page_header_web_ios0 -top-nav_page_header_web_ios1 -top-nav_page_header_web_mobile -top-nav_page_toolbar_ios0 -top-nav_page_toolbar_ios1 -top-nav_page_toolbar_web0 -top-nav_page_toolbar_web_desktop -top-nav_page_toolbar_web_ios0 -top-nav_page_toolbar_web_ios1 -top-nav_page_toolbar_web_mobile -top-nav_tabs_ios0 -top-nav_tabs_ios1 -top-nav_tabs_web0 -top-nav_tabs_web_desktop -top-nav_tabs_web_ios0 -top-nav_tabs_web_ios1 -top-nav_tabs_web_mobile -translate-x-w_lo_ios0 -translate-x-w_lo_ios1 -translate-x-w_lo_textdesc_ios0 -translate-x-w_lo_textdesc_ios1 -translate-x-w_lo_textdesc_web0 -translate-x-w_lo_textdesc_web_desktop -translate-x-w_lo_textdesc_web_ios0 -translate-x-w_lo_textdesc_web_ios1 -translate-x-w_lo_textdesc_web_mobile -translate-x-w_lo_web0 -translate-x-w_lo_web_desktop -translate-x-w_lo_web_ios0 -translate-x-w_lo_web_ios1 -translate-x-w_lo_web_mobile -translate-y-h_lo_bottom_button_ios0 -translate-y-h_lo_bottom_button_ios1 -translate-y-h_lo_bottom_button_web0 -translate-y-h_lo_bottom_button_web_desktop -translate-y-h_lo_bottom_button_web_ios0 -translate-y-h_lo_bottom_button_web_ios1 -translate-y-h_lo_bottom_button_web_mobile -translate-y-h_lo_view_main_ios0 -translate-y-h_lo_view_main_ios1 -translate-y-h_lo_view_main_web0 -translate-y-h_lo_view_main_web_desktop -translate-y-h_lo_view_main_web_ios0 -translate-y-h_lo_view_main_web_ios1 -translate-y-h_lo_view_main_web_mobile -translate-y-h_nav_page_header_ios0 -translate-y-h_nav_page_header_ios1 -translate-y-h_nav_page_header_web0 -translate-y-h_nav_page_header_web_desktop -translate-y-h_nav_page_header_web_ios0 -translate-y-h_nav_page_header_web_ios1 -translate-y-h_nav_page_header_web_mobile -translate-y-h_nav_page_toolbar_ios0 -translate-y-h_nav_page_toolbar_ios1 -translate-y-h_nav_page_toolbar_web0 -translate-y-h_nav_page_toolbar_web_desktop -translate-y-h_nav_page_toolbar_web_ios0 -translate-y-h_nav_page_toolbar_web_ios1 -translate-y-h_nav_page_toolbar_web_mobile -translate-y-h_nav_tabs_ios0 -translate-y-h_nav_tabs_ios1 -translate-y-h_nav_tabs_web0 -translate-y-h_nav_tabs_web_desktop -translate-y-h_nav_tabs_web_ios0 -translate-y-h_nav_tabs_web_ios1 -translate-y-h_nav_tabs_web_mobile active:bg-layer-0-glyph active:bg-layer-0-glyph-hl active:bg-layer-0-glyph-hl_a active:bg-layer-0-glyph-label active:bg-layer-0-glyph-shade active:bg-layer-0-glyph_a active:bg-layer-0-glyph_pl active:bg-layer-0-surface active:bg-layer-0-surface-blur active:bg-layer-0-surface-edge active:bg-layer-0-surface_a active:bg-layer-0-surface_w active:bg-layer-1-glyph active:bg-layer-1-glyph-hl active:bg-layer-1-glyph-hl_a active:bg-layer-1-glyph-label active:bg-layer-1-glyph-shade active:bg-layer-1-glyph_a active:bg-layer-1-glyph_d active:bg-layer-1-glyph_pl active:bg-layer-1-surface active:bg-layer-1-surface-edge active:bg-layer-1-surface-err active:bg-layer-1-surface-focus active:bg-layer-1-surface_a active:bg-layer-2-glyph active:bg-layer-2-glyph-hl active:bg-layer-2-glyph-hl_a active:bg-layer-2-glyph-shade active:bg-layer-2-glyph_a active:bg-layer-2-glyph_d active:bg-layer-2-glyph_pl active:bg-layer-2-surface active:bg-layer-2-surface-edge active:bg-layer-2-surface_a active:bg-radroots-accent-focus active:border-layer-0-glyph active:border-layer-0-glyph-hl active:border-layer-0-glyph-hl_a active:border-layer-0-glyph-label active:border-layer-0-glyph-shade active:border-layer-0-glyph_a active:border-layer-0-glyph_pl active:border-layer-0-surface active:border-layer-0-surface-blur active:border-layer-0-surface-edge active:border-layer-0-surface_a active:border-layer-0-surface_w active:border-layer-1-glyph active:border-layer-1-glyph-hl active:border-layer-1-glyph-hl_a active:border-layer-1-glyph-label active:border-layer-1-glyph-shade active:border-layer-1-glyph_a active:border-layer-1-glyph_d active:border-layer-1-glyph_pl active:border-layer-1-surface active:border-layer-1-surface-edge active:border-layer-1-surface-err active:border-layer-1-surface-focus active:border-layer-1-surface_a active:border-layer-2-glyph active:border-layer-2-glyph-hl active:border-layer-2-glyph-hl_a active:border-layer-2-glyph-shade active:border-layer-2-glyph_a active:border-layer-2-glyph_d active:border-layer-2-glyph_pl active:border-layer-2-surface active:border-layer-2-surface-edge active:border-layer-2-surface_a active:border-radroots-accent-focus active:text-layer-0-glyph active:text-layer-0-glyph-hl active:text-layer-0-glyph-hl_a active:text-layer-0-glyph-label active:text-layer-0-glyph-shade active:text-layer-0-glyph_a active:text-layer-0-glyph_pl active:text-layer-0-surface active:text-layer-0-surface-blur active:text-layer-0-surface-edge active:text-layer-0-surface_a active:text-layer-0-surface_w active:text-layer-1-glyph active:text-layer-1-glyph-hl active:text-layer-1-glyph-hl_a active:text-layer-1-glyph-label active:text-layer-1-glyph-shade active:text-layer-1-glyph_a active:text-layer-1-glyph_d active:text-layer-1-glyph_pl active:text-layer-1-surface active:text-layer-1-surface-edge active:text-layer-1-surface-err active:text-layer-1-surface-focus active:text-layer-1-surface_a active:text-layer-2-glyph active:text-layer-2-glyph-hl active:text-layer-2-glyph-hl_a active:text-layer-2-glyph-shade active:text-layer-2-glyph_a active:text-layer-2-glyph_d active:text-layer-2-glyph_pl active:text-layer-2-surface active:text-layer-2-surface-edge active:text-layer-2-surface_a active:text-radroots-accent-focus bg-layer-0-glyph bg-layer-0-glyph-hl bg-layer-0-glyph-hl_a bg-layer-0-glyph-label bg-layer-0-glyph-shade bg-layer-0-glyph_a bg-layer-0-glyph_pl bg-layer-0-surface bg-layer-0-surface-blur bg-layer-0-surface-edge bg-layer-0-surface_a bg-layer-0-surface_w bg-layer-1-glyph bg-layer-1-glyph-hl bg-layer-1-glyph-hl_a bg-layer-1-glyph-label bg-layer-1-glyph-shade bg-layer-1-glyph_a bg-layer-1-glyph_d bg-layer-1-glyph_pl bg-layer-1-surface bg-layer-1-surface-edge bg-layer-1-surface-err bg-layer-1-surface-focus bg-layer-1-surface_a bg-layer-2-glyph bg-layer-2-glyph-hl bg-layer-2-glyph-hl_a bg-layer-2-glyph-shade bg-layer-2-glyph_a bg-layer-2-glyph_d bg-layer-2-glyph_pl bg-layer-2-surface bg-layer-2-surface-edge bg-layer-2-surface_a bg-radroots-accent-focus border-layer-0-glyph border-layer-0-glyph-hl border-layer-0-glyph-hl_a border-layer-0-glyph-label border-layer-0-glyph-shade border-layer-0-glyph_a border-layer-0-glyph_pl border-layer-0-surface border-layer-0-surface-blur border-layer-0-surface-edge border-layer-0-surface_a border-layer-0-surface_w border-layer-1-glyph border-layer-1-glyph-hl border-layer-1-glyph-hl_a border-layer-1-glyph-label border-layer-1-glyph-shade border-layer-1-glyph_a border-layer-1-glyph_d border-layer-1-glyph_pl border-layer-1-surface border-layer-1-surface-edge border-layer-1-surface-err border-layer-1-surface-focus border-layer-1-surface_a border-layer-2-glyph border-layer-2-glyph-hl border-layer-2-glyph-hl_a border-layer-2-glyph-shade border-layer-2-glyph_a border-layer-2-glyph_d border-layer-2-glyph_pl border-layer-2-surface border-layer-2-surface-edge border-layer-2-surface_a border-radroots-accent-focus bottom-lo_bottom_button_ios0 bottom-lo_bottom_button_ios1 bottom-lo_bottom_button_web0 bottom-lo_bottom_button_web_desktop bottom-lo_bottom_button_web_ios0 bottom-lo_bottom_button_web_ios1 bottom-lo_bottom_button_web_mobile bottom-lo_view_main_ios0 bottom-lo_view_main_ios1 bottom-lo_view_main_web0 bottom-lo_view_main_web_desktop bottom-lo_view_main_web_ios0 bottom-lo_view_main_web_ios1 bottom-lo_view_main_web_mobile bottom-nav_page_header_ios0 bottom-nav_page_header_ios1 bottom-nav_page_header_web0 bottom-nav_page_header_web_desktop bottom-nav_page_header_web_ios0 bottom-nav_page_header_web_ios1 bottom-nav_page_header_web_mobile bottom-nav_page_toolbar_ios0 bottom-nav_page_toolbar_ios1 bottom-nav_page_toolbar_web0 bottom-nav_page_toolbar_web_desktop bottom-nav_page_toolbar_web_ios0 bottom-nav_page_toolbar_web_ios1 bottom-nav_page_toolbar_web_mobile bottom-nav_tabs_ios0 bottom-nav_tabs_ios1 bottom-nav_tabs_web0 bottom-nav_tabs_web_desktop bottom-nav_tabs_web_ios0 bottom-nav_tabs_web_ios1 bottom-nav_tabs_web_mobile focus:bg-layer-0-glyph focus:bg-layer-0-glyph-hl focus:bg-layer-0-glyph-hl_a focus:bg-layer-0-glyph-label focus:bg-layer-0-glyph-shade focus:bg-layer-0-glyph_a focus:bg-layer-0-glyph_pl focus:bg-layer-0-surface focus:bg-layer-0-surface-blur focus:bg-layer-0-surface-edge focus:bg-layer-0-surface_a focus:bg-layer-0-surface_w focus:bg-layer-1-glyph focus:bg-layer-1-glyph-hl focus:bg-layer-1-glyph-hl_a focus:bg-layer-1-glyph-label focus:bg-layer-1-glyph-shade focus:bg-layer-1-glyph_a focus:bg-layer-1-glyph_d focus:bg-layer-1-glyph_pl focus:bg-layer-1-surface focus:bg-layer-1-surface-edge focus:bg-layer-1-surface-err focus:bg-layer-1-surface-focus focus:bg-layer-1-surface_a focus:bg-layer-2-glyph focus:bg-layer-2-glyph-hl focus:bg-layer-2-glyph-hl_a focus:bg-layer-2-glyph-shade focus:bg-layer-2-glyph_a focus:bg-layer-2-glyph_d focus:bg-layer-2-glyph_pl focus:bg-layer-2-surface focus:bg-layer-2-surface-edge focus:bg-layer-2-surface_a focus:bg-radroots-accent-focus focus:border-layer-0-glyph focus:border-layer-0-glyph-hl focus:border-layer-0-glyph-hl_a focus:border-layer-0-glyph-label focus:border-layer-0-glyph-shade focus:border-layer-0-glyph_a focus:border-layer-0-glyph_pl focus:border-layer-0-surface focus:border-layer-0-surface-blur focus:border-layer-0-surface-edge focus:border-layer-0-surface_a focus:border-layer-0-surface_w focus:border-layer-1-glyph focus:border-layer-1-glyph-hl focus:border-layer-1-glyph-hl_a focus:border-layer-1-glyph-label focus:border-layer-1-glyph-shade focus:border-layer-1-glyph_a focus:border-layer-1-glyph_d focus:border-layer-1-glyph_pl focus:border-layer-1-surface focus:border-layer-1-surface-edge focus:border-layer-1-surface-err focus:border-layer-1-surface-focus focus:border-layer-1-surface_a focus:border-layer-2-glyph focus:border-layer-2-glyph-hl focus:border-layer-2-glyph-hl_a focus:border-layer-2-glyph-shade focus:border-layer-2-glyph_a focus:border-layer-2-glyph_d focus:border-layer-2-glyph_pl focus:border-layer-2-surface focus:border-layer-2-surface-edge focus:border-layer-2-surface_a focus:border-radroots-accent-focus focus:text-layer-0-glyph focus:text-layer-0-glyph-hl focus:text-layer-0-glyph-hl_a focus:text-layer-0-glyph-label focus:text-layer-0-glyph-shade focus:text-layer-0-glyph_a focus:text-layer-0-glyph_pl focus:text-layer-0-surface focus:text-layer-0-surface-blur focus:text-layer-0-surface-edge focus:text-layer-0-surface_a focus:text-layer-0-surface_w focus:text-layer-1-glyph focus:text-layer-1-glyph-hl focus:text-layer-1-glyph-hl_a focus:text-layer-1-glyph-label focus:text-layer-1-glyph-shade focus:text-layer-1-glyph_a focus:text-layer-1-glyph_d focus:text-layer-1-glyph_pl focus:text-layer-1-surface focus:text-layer-1-surface-edge focus:text-layer-1-surface-err focus:text-layer-1-surface-focus focus:text-layer-1-surface_a focus:text-layer-2-glyph focus:text-layer-2-glyph-hl focus:text-layer-2-glyph-hl_a focus:text-layer-2-glyph-shade focus:text-layer-2-glyph_a focus:text-layer-2-glyph_d focus:text-layer-2-glyph_pl focus:text-layer-2-surface focus:text-layer-2-surface-edge focus:text-layer-2-surface_a focus:text-radroots-accent-focus group-active:bg-layer-0-glyph group-active:bg-layer-0-glyph-hl group-active:bg-layer-0-glyph-hl_a group-active:bg-layer-0-glyph-label group-active:bg-layer-0-glyph-shade group-active:bg-layer-0-glyph_a group-active:bg-layer-0-glyph_pl group-active:bg-layer-0-surface group-active:bg-layer-0-surface-blur group-active:bg-layer-0-surface-edge group-active:bg-layer-0-surface_a group-active:bg-layer-0-surface_w group-active:bg-layer-1-glyph group-active:bg-layer-1-glyph-hl group-active:bg-layer-1-glyph-hl_a group-active:bg-layer-1-glyph-label group-active:bg-layer-1-glyph-shade group-active:bg-layer-1-glyph_a group-active:bg-layer-1-glyph_d group-active:bg-layer-1-glyph_pl group-active:bg-layer-1-surface group-active:bg-layer-1-surface-edge group-active:bg-layer-1-surface-err group-active:bg-layer-1-surface-focus group-active:bg-layer-1-surface_a group-active:bg-layer-2-glyph group-active:bg-layer-2-glyph-hl group-active:bg-layer-2-glyph-hl_a group-active:bg-layer-2-glyph-shade group-active:bg-layer-2-glyph_a group-active:bg-layer-2-glyph_d group-active:bg-layer-2-glyph_pl group-active:bg-layer-2-surface group-active:bg-layer-2-surface-edge group-active:bg-layer-2-surface_a group-active:bg-radroots-accent-focus group-active:border-layer-0-glyph group-active:border-layer-0-glyph-hl group-active:border-layer-0-glyph-hl_a group-active:border-layer-0-glyph-label group-active:border-layer-0-glyph-shade group-active:border-layer-0-glyph_a group-active:border-layer-0-glyph_pl group-active:border-layer-0-surface group-active:border-layer-0-surface-blur group-active:border-layer-0-surface-edge group-active:border-layer-0-surface_a group-active:border-layer-0-surface_w group-active:border-layer-1-glyph group-active:border-layer-1-glyph-hl group-active:border-layer-1-glyph-hl_a group-active:border-layer-1-glyph-label group-active:border-layer-1-glyph-shade group-active:border-layer-1-glyph_a group-active:border-layer-1-glyph_d group-active:border-layer-1-glyph_pl group-active:border-layer-1-surface group-active:border-layer-1-surface-edge group-active:border-layer-1-surface-err group-active:border-layer-1-surface-focus group-active:border-layer-1-surface_a group-active:border-layer-2-glyph group-active:border-layer-2-glyph-hl group-active:border-layer-2-glyph-hl_a group-active:border-layer-2-glyph-shade group-active:border-layer-2-glyph_a group-active:border-layer-2-glyph_d group-active:border-layer-2-glyph_pl group-active:border-layer-2-surface group-active:border-layer-2-surface-edge group-active:border-layer-2-surface_a group-active:border-radroots-accent-focus group-active:text-layer-0-glyph group-active:text-layer-0-glyph-hl group-active:text-layer-0-glyph-hl_a group-active:text-layer-0-glyph-label group-active:text-layer-0-glyph-shade group-active:text-layer-0-glyph_a group-active:text-layer-0-glyph_pl group-active:text-layer-0-surface group-active:text-layer-0-surface-blur group-active:text-layer-0-surface-edge group-active:text-layer-0-surface_a group-active:text-layer-0-surface_w group-active:text-layer-1-glyph group-active:text-layer-1-glyph-hl group-active:text-layer-1-glyph-hl_a group-active:text-layer-1-glyph-label group-active:text-layer-1-glyph-shade group-active:text-layer-1-glyph_a group-active:text-layer-1-glyph_d group-active:text-layer-1-glyph_pl group-active:text-layer-1-surface group-active:text-layer-1-surface-edge group-active:text-layer-1-surface-err group-active:text-layer-1-surface-focus group-active:text-layer-1-surface_a group-active:text-layer-2-glyph group-active:text-layer-2-glyph-hl group-active:text-layer-2-glyph-hl_a group-active:text-layer-2-glyph-shade group-active:text-layer-2-glyph_a group-active:text-layer-2-glyph_d group-active:text-layer-2-glyph_pl group-active:text-layer-2-surface group-active:text-layer-2-surface-edge group-active:text-layer-2-surface_a group-active:text-radroots-accent-focus group-focus:bg-layer-0-glyph group-focus:bg-layer-0-glyph-hl group-focus:bg-layer-0-glyph-hl_a group-focus:bg-layer-0-glyph-label group-focus:bg-layer-0-glyph-shade group-focus:bg-layer-0-glyph_a group-focus:bg-layer-0-glyph_pl group-focus:bg-layer-0-surface group-focus:bg-layer-0-surface-blur group-focus:bg-layer-0-surface-edge group-focus:bg-layer-0-surface_a group-focus:bg-layer-0-surface_w group-focus:bg-layer-1-glyph group-focus:bg-layer-1-glyph-hl group-focus:bg-layer-1-glyph-hl_a group-focus:bg-layer-1-glyph-label group-focus:bg-layer-1-glyph-shade group-focus:bg-layer-1-glyph_a group-focus:bg-layer-1-glyph_d group-focus:bg-layer-1-glyph_pl group-focus:bg-layer-1-surface group-focus:bg-layer-1-surface-edge group-focus:bg-layer-1-surface-err group-focus:bg-layer-1-surface-focus group-focus:bg-layer-1-surface_a group-focus:bg-layer-2-glyph group-focus:bg-layer-2-glyph-hl group-focus:bg-layer-2-glyph-hl_a group-focus:bg-layer-2-glyph-shade group-focus:bg-layer-2-glyph_a group-focus:bg-layer-2-glyph_d group-focus:bg-layer-2-glyph_pl group-focus:bg-layer-2-surface group-focus:bg-layer-2-surface-edge group-focus:bg-layer-2-surface_a group-focus:bg-radroots-accent-focus group-focus:border-layer-0-glyph group-focus:border-layer-0-glyph-hl group-focus:border-layer-0-glyph-hl_a group-focus:border-layer-0-glyph-label group-focus:border-layer-0-glyph-shade group-focus:border-layer-0-glyph_a group-focus:border-layer-0-glyph_pl group-focus:border-layer-0-surface group-focus:border-layer-0-surface-blur group-focus:border-layer-0-surface-edge group-focus:border-layer-0-surface_a group-focus:border-layer-0-surface_w group-focus:border-layer-1-glyph group-focus:border-layer-1-glyph-hl group-focus:border-layer-1-glyph-hl_a group-focus:border-layer-1-glyph-label group-focus:border-layer-1-glyph-shade group-focus:border-layer-1-glyph_a group-focus:border-layer-1-glyph_d group-focus:border-layer-1-glyph_pl group-focus:border-layer-1-surface group-focus:border-layer-1-surface-edge group-focus:border-layer-1-surface-err group-focus:border-layer-1-surface-focus group-focus:border-layer-1-surface_a group-focus:border-layer-2-glyph group-focus:border-layer-2-glyph-hl group-focus:border-layer-2-glyph-hl_a group-focus:border-layer-2-glyph-shade group-focus:border-layer-2-glyph_a group-focus:border-layer-2-glyph_d group-focus:border-layer-2-glyph_pl group-focus:border-layer-2-surface group-focus:border-layer-2-surface-edge group-focus:border-layer-2-surface_a group-focus:border-radroots-accent-focus group-focus:text-layer-0-glyph group-focus:text-layer-0-glyph-hl group-focus:text-layer-0-glyph-hl_a group-focus:text-layer-0-glyph-label group-focus:text-layer-0-glyph-shade group-focus:text-layer-0-glyph_a group-focus:text-layer-0-glyph_pl group-focus:text-layer-0-surface group-focus:text-layer-0-surface-blur group-focus:text-layer-0-surface-edge group-focus:text-layer-0-surface_a group-focus:text-layer-0-surface_w group-focus:text-layer-1-glyph group-focus:text-layer-1-glyph-hl group-focus:text-layer-1-glyph-hl_a group-focus:text-layer-1-glyph-label group-focus:text-layer-1-glyph-shade group-focus:text-layer-1-glyph_a group-focus:text-layer-1-glyph_d group-focus:text-layer-1-glyph_pl group-focus:text-layer-1-surface group-focus:text-layer-1-surface-edge group-focus:text-layer-1-surface-err group-focus:text-layer-1-surface-focus group-focus:text-layer-1-surface_a group-focus:text-layer-2-glyph group-focus:text-layer-2-glyph-hl group-focus:text-layer-2-glyph-hl_a group-focus:text-layer-2-glyph-shade group-focus:text-layer-2-glyph_a group-focus:text-layer-2-glyph_d group-focus:text-layer-2-glyph_pl group-focus:text-layer-2-surface group-focus:text-layer-2-surface-edge group-focus:text-layer-2-surface_a group-focus:text-radroots-accent-focus h-[12px] h-[16px] h-[17px] h-[18px] h-[20px] h-[22px] h-[24px] h-[28px] h-[36px] h-lo_bottom_button_ios0 h-lo_bottom_button_ios1 h-lo_bottom_button_web0 h-lo_bottom_button_web_desktop h-lo_bottom_button_web_ios0 h-lo_bottom_button_web_ios1 h-lo_bottom_button_web_mobile h-lo_view_main_ios0 h-lo_view_main_ios1 h-lo_view_main_web0 h-lo_view_main_web_desktop h-lo_view_main_web_ios0 h-lo_view_main_web_ios1 h-lo_view_main_web_mobile h-nav_page_header_ios0 h-nav_page_header_ios1 h-nav_page_header_web0 h-nav_page_header_web_desktop h-nav_page_header_web_ios0 h-nav_page_header_web_ios1 h-nav_page_header_web_mobile h-nav_page_toolbar_ios0 h-nav_page_toolbar_ios1 h-nav_page_toolbar_web0 h-nav_page_toolbar_web_desktop h-nav_page_toolbar_web_ios0 h-nav_page_toolbar_web_ios1 h-nav_page_toolbar_web_mobile h-nav_tabs_ios0 h-nav_tabs_ios1 h-nav_tabs_web0 h-nav_tabs_web_desktop h-nav_tabs_web_ios0 h-nav_tabs_web_ios1 h-nav_tabs_web_mobile left-lo_ios0 left-lo_ios1 left-lo_textdesc_ios0 left-lo_textdesc_ios1 left-lo_textdesc_web0 left-lo_textdesc_web_desktop left-lo_textdesc_web_ios0 left-lo_textdesc_web_ios1 left-lo_textdesc_web_mobile left-lo_web0 left-lo_web_desktop left-lo_web_ios0 left-lo_web_ios1 left-lo_web_mobile max-h-lo_bottom_button_ios0 max-h-lo_bottom_button_ios1 max-h-lo_bottom_button_web0 max-h-lo_bottom_button_web_desktop max-h-lo_bottom_button_web_ios0 max-h-lo_bottom_button_web_ios1 max-h-lo_bottom_button_web_mobile max-h-lo_view_main_ios0 max-h-lo_view_main_ios1 max-h-lo_view_main_web0 max-h-lo_view_main_web_desktop max-h-lo_view_main_web_ios0 max-h-lo_view_main_web_ios1 max-h-lo_view_main_web_mobile max-h-nav_page_header_ios0 max-h-nav_page_header_ios1 max-h-nav_page_header_web0 max-h-nav_page_header_web_desktop max-h-nav_page_header_web_ios0 max-h-nav_page_header_web_ios1 max-h-nav_page_header_web_mobile max-h-nav_page_toolbar_ios0 max-h-nav_page_toolbar_ios1 max-h-nav_page_toolbar_web0 max-h-nav_page_toolbar_web_desktop max-h-nav_page_toolbar_web_ios0 max-h-nav_page_toolbar_web_ios1 max-h-nav_page_toolbar_web_mobile max-h-nav_tabs_ios0 max-h-nav_tabs_ios1 max-h-nav_tabs_web0 max-h-nav_tabs_web_desktop max-h-nav_tabs_web_ios0 max-h-nav_tabs_web_ios1 max-h-nav_tabs_web_mobile max-w-lo_ios0 max-w-lo_ios1 max-w-lo_textdesc_ios0 max-w-lo_textdesc_ios1 max-w-lo_textdesc_web0 max-w-lo_textdesc_web_desktop max-w-lo_textdesc_web_ios0 max-w-lo_textdesc_web_ios1 max-w-lo_textdesc_web_mobile max-w-lo_web0 max-w-lo_web_desktop max-w-lo_web_ios0 max-w-lo_web_ios1 max-w-lo_web_mobile min-h-lo_bottom_button_ios0 min-h-lo_bottom_button_ios1 min-h-lo_bottom_button_web0 min-h-lo_bottom_button_web_desktop min-h-lo_bottom_button_web_ios0 min-h-lo_bottom_button_web_ios1 min-h-lo_bottom_button_web_mobile min-h-lo_view_main_ios0 min-h-lo_view_main_ios1 min-h-lo_view_main_web0 min-h-lo_view_main_web_desktop min-h-lo_view_main_web_ios0 min-h-lo_view_main_web_ios1 min-h-lo_view_main_web_mobile min-h-nav_page_header_ios0 min-h-nav_page_header_ios1 min-h-nav_page_header_web0 min-h-nav_page_header_web_desktop min-h-nav_page_header_web_ios0 min-h-nav_page_header_web_ios1 min-h-nav_page_header_web_mobile min-h-nav_page_toolbar_ios0 min-h-nav_page_toolbar_ios1 min-h-nav_page_toolbar_web0 min-h-nav_page_toolbar_web_desktop min-h-nav_page_toolbar_web_ios0 min-h-nav_page_toolbar_web_ios1 min-h-nav_page_toolbar_web_mobile min-h-nav_tabs_ios0 min-h-nav_tabs_ios1 min-h-nav_tabs_web0 min-h-nav_tabs_web_desktop min-h-nav_tabs_web_ios0 min-h-nav_tabs_web_ios1 min-h-nav_tabs_web_mobile min-w-lo_ios0 min-w-lo_ios1 min-w-lo_textdesc_ios0 min-w-lo_textdesc_ios1 min-w-lo_textdesc_web0 min-w-lo_textdesc_web_desktop min-w-lo_textdesc_web_ios0 min-w-lo_textdesc_web_ios1 min-w-lo_textdesc_web_mobile min-w-lo_web0 min-w-lo_web_desktop min-w-lo_web_ios0 min-w-lo_web_ios1 min-w-lo_web_mobile pb-h_lo_bottom_button_ios0 pb-h_lo_bottom_button_ios1 pb-h_lo_bottom_button_web0 pb-h_lo_bottom_button_web_desktop pb-h_lo_bottom_button_web_ios0 pb-h_lo_bottom_button_web_ios1 pb-h_lo_bottom_button_web_mobile pb-h_lo_view_main_ios0 pb-h_lo_view_main_ios1 pb-h_lo_view_main_web0 pb-h_lo_view_main_web_desktop pb-h_lo_view_main_web_ios0 pb-h_lo_view_main_web_ios1 pb-h_lo_view_main_web_mobile pb-h_nav_page_header_ios0 pb-h_nav_page_header_ios1 pb-h_nav_page_header_web0 pb-h_nav_page_header_web_desktop pb-h_nav_page_header_web_ios0 pb-h_nav_page_header_web_ios1 pb-h_nav_page_header_web_mobile pb-h_nav_page_toolbar_ios0 pb-h_nav_page_toolbar_ios1 pb-h_nav_page_toolbar_web0 pb-h_nav_page_toolbar_web_desktop pb-h_nav_page_toolbar_web_ios0 pb-h_nav_page_toolbar_web_ios1 pb-h_nav_page_toolbar_web_mobile pb-h_nav_tabs_ios0 pb-h_nav_tabs_ios1 pb-h_nav_tabs_web0 pb-h_nav_tabs_web_desktop pb-h_nav_tabs_web_ios0 pb-h_nav_tabs_web_ios1 pb-h_nav_tabs_web_mobile pl-w_lo_ios0 pl-w_lo_ios1 pl-w_lo_textdesc_ios0 pl-w_lo_textdesc_ios1 pl-w_lo_textdesc_web0 pl-w_lo_textdesc_web_desktop pl-w_lo_textdesc_web_ios0 pl-w_lo_textdesc_web_ios1 pl-w_lo_textdesc_web_mobile pl-w_lo_web0 pl-w_lo_web_desktop pl-w_lo_web_ios0 pl-w_lo_web_ios1 pl-w_lo_web_mobile pr-w_lo_ios0 pr-w_lo_ios1 pr-w_lo_textdesc_ios0 pr-w_lo_textdesc_ios1 pr-w_lo_textdesc_web0 pr-w_lo_textdesc_web_desktop pr-w_lo_textdesc_web_ios0 pr-w_lo_textdesc_web_ios1 pr-w_lo_textdesc_web_mobile pr-w_lo_web0 pr-w_lo_web_desktop pr-w_lo_web_ios0 pr-w_lo_web_ios1 pr-w_lo_web_mobile pt-h_lo_bottom_button_ios0 pt-h_lo_bottom_button_ios1 pt-h_lo_bottom_button_web0 pt-h_lo_bottom_button_web_desktop pt-h_lo_bottom_button_web_ios0 pt-h_lo_bottom_button_web_ios1 pt-h_lo_bottom_button_web_mobile pt-h_lo_view_main_ios0 pt-h_lo_view_main_ios1 pt-h_lo_view_main_web0 pt-h_lo_view_main_web_desktop pt-h_lo_view_main_web_ios0 pt-h_lo_view_main_web_ios1 pt-h_lo_view_main_web_mobile pt-h_nav_page_header_ios0 pt-h_nav_page_header_ios1 pt-h_nav_page_header_web0 pt-h_nav_page_header_web_desktop pt-h_nav_page_header_web_ios0 pt-h_nav_page_header_web_ios1 pt-h_nav_page_header_web_mobile pt-h_nav_page_toolbar_ios0 pt-h_nav_page_toolbar_ios1 pt-h_nav_page_toolbar_web0 pt-h_nav_page_toolbar_web_desktop pt-h_nav_page_toolbar_web_ios0 pt-h_nav_page_toolbar_web_ios1 pt-h_nav_page_toolbar_web_mobile pt-h_nav_tabs_ios0 pt-h_nav_tabs_ios1 pt-h_nav_tabs_web0 pt-h_nav_tabs_web_desktop pt-h_nav_tabs_web_ios0 pt-h_nav_tabs_web_ios1 pt-h_nav_tabs_web_mobile right-lo_ios0 right-lo_ios1 right-lo_textdesc_ios0 right-lo_textdesc_ios1 right-lo_textdesc_web0 right-lo_textdesc_web_desktop right-lo_textdesc_web_ios0 right-lo_textdesc_web_ios1 right-lo_textdesc_web_mobile right-lo_web0 right-lo_web_desktop right-lo_web_ios0 right-lo_web_ios1 right-lo_web_mobile text-[12px] text-[15px] text-[16px] text-[18px] text-[19px] text-[20px] text-[21px] text-[23px] text-[24px] text-[26px] text-[27px] text-[28px] text-[30px] text-[36px] text-[40px] text-layer-0-glyph text-layer-0-glyph-hl text-layer-0-glyph-hl_a text-layer-0-glyph-label text-layer-0-glyph-shade text-layer-0-glyph_a text-layer-0-glyph_pl text-layer-0-surface text-layer-0-surface-blur text-layer-0-surface-edge text-layer-0-surface_a text-layer-0-surface_w text-layer-1-glyph text-layer-1-glyph-hl text-layer-1-glyph-hl_a text-layer-1-glyph-label text-layer-1-glyph-shade text-layer-1-glyph_a text-layer-1-glyph_d text-layer-1-glyph_pl text-layer-1-surface text-layer-1-surface-edge text-layer-1-surface-err text-layer-1-surface-focus text-layer-1-surface_a text-layer-2-glyph text-layer-2-glyph-hl text-layer-2-glyph-hl_a text-layer-2-glyph-shade text-layer-2-glyph_a text-layer-2-glyph_d text-layer-2-glyph_pl text-layer-2-surface text-layer-2-surface-edge text-layer-2-surface_a text-radroots-accent-focus top-lo_bottom_button_ios0 top-lo_bottom_button_ios1 top-lo_bottom_button_web0 top-lo_bottom_button_web_desktop top-lo_bottom_button_web_ios0 top-lo_bottom_button_web_ios1 top-lo_bottom_button_web_mobile top-lo_view_main_ios0 top-lo_view_main_ios1 top-lo_view_main_web0 top-lo_view_main_web_desktop top-lo_view_main_web_ios0 top-lo_view_main_web_ios1 top-lo_view_main_web_mobile top-nav_page_header_ios0 top-nav_page_header_ios1 top-nav_page_header_web0 top-nav_page_header_web_desktop top-nav_page_header_web_ios0 top-nav_page_header_web_ios1 top-nav_page_header_web_mobile top-nav_page_toolbar_ios0 top-nav_page_toolbar_ios1 top-nav_page_toolbar_web0 top-nav_page_toolbar_web_desktop top-nav_page_toolbar_web_ios0 top-nav_page_toolbar_web_ios1 top-nav_page_toolbar_web_mobile top-nav_tabs_ios0 top-nav_tabs_ios1 top-nav_tabs_web0 top-nav_tabs_web_desktop top-nav_tabs_web_ios0 top-nav_tabs_web_ios1 top-nav_tabs_web_mobile translate-x-w_lo_ios0 translate-x-w_lo_ios1 translate-x-w_lo_textdesc_ios0 translate-x-w_lo_textdesc_ios1 translate-x-w_lo_textdesc_web0 translate-x-w_lo_textdesc_web_desktop translate-x-w_lo_textdesc_web_ios0 translate-x-w_lo_textdesc_web_ios1 translate-x-w_lo_textdesc_web_mobile translate-x-w_lo_web0 translate-x-w_lo_web_desktop translate-x-w_lo_web_ios0 translate-x-w_lo_web_ios1 translate-x-w_lo_web_mobile translate-y-h_lo_bottom_button_ios0 translate-y-h_lo_bottom_button_ios1 translate-y-h_lo_bottom_button_web0 translate-y-h_lo_bottom_button_web_desktop translate-y-h_lo_bottom_button_web_ios0 translate-y-h_lo_bottom_button_web_ios1 translate-y-h_lo_bottom_button_web_mobile translate-y-h_lo_view_main_ios0 translate-y-h_lo_view_main_ios1 translate-y-h_lo_view_main_web0 translate-y-h_lo_view_main_web_desktop translate-y-h_lo_view_main_web_ios0 translate-y-h_lo_view_main_web_ios1 translate-y-h_lo_view_main_web_mobile translate-y-h_nav_page_header_ios0 translate-y-h_nav_page_header_ios1 translate-y-h_nav_page_header_web0 translate-y-h_nav_page_header_web_desktop translate-y-h_nav_page_header_web_ios0 translate-y-h_nav_page_header_web_ios1 translate-y-h_nav_page_header_web_mobile translate-y-h_nav_page_toolbar_ios0 translate-y-h_nav_page_toolbar_ios1 translate-y-h_nav_page_toolbar_web0 translate-y-h_nav_page_toolbar_web_desktop translate-y-h_nav_page_toolbar_web_ios0 translate-y-h_nav_page_toolbar_web_ios1 translate-y-h_nav_page_toolbar_web_mobile translate-y-h_nav_tabs_ios0 translate-y-h_nav_tabs_ios1 translate-y-h_nav_tabs_web0 translate-y-h_nav_tabs_web_desktop translate-y-h_nav_tabs_web_ios0 translate-y-h_nav_tabs_web_ios1 translate-y-h_nav_tabs_web_mobile w-[12px] w-[16px] w-[17px] w-[18px] w-[20px] w-[22px] w-[24px] w-[28px] w-[36px] w-lo_ios0 w-lo_ios1 w-lo_textdesc_ios0 w-lo_textdesc_ios1 w-lo_textdesc_web0 w-lo_textdesc_web_desktop w-lo_textdesc_web_ios0 w-lo_textdesc_web_ios1 w-lo_textdesc_web_mobile w-lo_web0 w-lo_web_desktop w-lo_web_ios0 w-lo_web_ios1 w-lo_web_mobile"></div>
+\ No newline at end of file
diff --git a/apps-lib/src/lib/components/lib/toast.svelte b/apps-lib/src/lib/components/lib/toast.svelte
@@ -2,7 +2,7 @@
import { app_lo } from "$root";
import {
fmt_cl,
- get_layout,
+ get_layout_default,
parse_layer,
toast_layout_map,
toast_style_map,
@@ -15,7 +15,7 @@
const styles: IToastKind[] = $derived(
basis?.styles ? basis.styles : [`simple`],
);
- const layout = $derived(get_layout($app_lo));
+ const layout = $derived(get_layout_default($app_lo));
const layer = $derived(basis.layer ? parse_layer(basis.layer) : 1);
</script>
diff --git a/apps-lib/src/lib/components/window/window-safari-listener.svelte b/apps-lib/src/lib/components/window/window-safari-listener.svelte
@@ -0,0 +1,38 @@
+<script lang="ts">
+ import { browser } from "$app/environment";
+ import { lo_browser_safarinav } from "$lib/store/layout";
+ import { handle_err } from "$root";
+ import { onDestroy, onMount } from "svelte";
+
+ const HEIGHT_THRESHOLD = 60;
+ let h_prev = $state(0);
+
+ onMount(async () => {
+ try {
+ handle_resize();
+ if (browser) window.addEventListener(`resize`, handle_resize);
+ } catch (e) {
+ handle_err(e, `on_mount`);
+ }
+ });
+
+ onDestroy(async () => {
+ try {
+ if (browser) window.removeEventListener(`resize`, handle_resize);
+ } catch (e) {
+ handle_err(e, `on_destroy`);
+ }
+ });
+
+ const handle_resize = (): void => {
+ if (!browser) return;
+ const { innerHeight: h_curr } = window;
+ if (h_prev !== undefined) {
+ const h_del = Math.abs(h_curr - h_prev);
+ if (h_del > HEIGHT_THRESHOLD) {
+ lo_browser_safarinav.set(h_curr < h_prev);
+ }
+ }
+ h_prev = h_curr;
+ };
+</script>
diff --git a/apps-lib/src/lib/features/farm/farms-add-casli-detail.svelte b/apps-lib/src/lib/features/farm/farms-add-casli-detail.svelte
@@ -21,7 +21,7 @@
<CarouselItem>
<div
- class={`flex flex-col h-[100vh] w-full px-6 gap-4 justify-start items-center`}
+ class={`flex flex-col h-[100vh] w-full px-6 pt-2 gap-4 justify-start items-center`}
>
<FormLineLedger
basis={{
diff --git a/apps-lib/src/lib/features/farm/farms-add-casli-map.svelte b/apps-lib/src/lib/features/farm/farms-add-casli-map.svelte
@@ -4,6 +4,7 @@
Map,
MapMarkerArea,
WrapBorder,
+ app_lo,
handle_err,
} from "$root";
import {
@@ -52,7 +53,7 @@
<div
class={`flex flex-col h-[100vh] w-full px-6 gap-4 justify-start items-center`}
>
- <WrapBorder basis={{ classes: `h-[24rem] m_1:h-[80%]` }}>
+ <WrapBorder basis={{ classes: `h-lo_view_main_${$app_lo}` }}>
<Map bind:map>
{#if map_geop}
<MapMarkerArea
@@ -73,10 +74,14 @@
<div
class={`flex flex-row w-full gap-2 justify-center items-center`}
>
- <p class={`font-sans font-[500] text-layer-0-glyph`}>
+ <p
+ class={`font-sans font-[500] text-layer-0-glyph tracking-tightest`}
+ >
{farm_geop_lat}
</p>
- <p class={`font-sans font-[500] text-layer-0-glyph`}>
+ <p
+ class={`font-sans font-[500] text-layer-0-glyph tracking-tightest`}
+ >
{farm_geop_lng}
</p>
</div>
diff --git a/apps-lib/src/lib/index.ts b/apps-lib/src/lib/index.ts
@@ -82,6 +82,7 @@ export { default as ImageUploadAddPhoto } from "./components/upload/image-upload
export { default as ImageUploadButtonsAspect } from "./components/upload/image-upload-buttons-aspect.svelte"
export { default as ImageUploadSimple } from "./components/upload/image-upload-simple.svelte"
export { default as WindowResizeListener } from "./components/window/window-resize-listener.svelte"
+export { default as WindowSafariListener } from "./components/window/window-safari-listener.svelte"
export { default as FarmsAddCasliDetail } from "./features/farm/farms-add-casli-detail.svelte"
export { default as FarmsAddCasliMap } from "./features/farm/farms-add-casli-map.svelte"
export { default as FarmsDisplayLiEl } from "./features/farm/farms-display-li-el.svelte"
@@ -92,6 +93,7 @@ export * from "./locale/i18n.js"
export * from "./store/app.js"
export * from "./store/client.js"
export * from "./store/component.js"
+export * from "./store/layout.js"
export * from "./store/ndk.js"
export * from "./util/carousel.js"
export * from "./util/casl.js"
diff --git a/apps-lib/src/lib/store/app.ts b/apps-lib/src/lib/store/app.ts
@@ -1,8 +1,9 @@
import type { ColorMode, ThemeKey } from "@radroots/theme";
-import type { AppConfigType, AppLayoutKey, IToast } from "@radroots/util";
+import type { AppConfigType, AppLayoutKey, BrowserPlatformInfo, IToast } from "@radroots/util";
import { writable } from "svelte/store";
export const app_lo = writable<AppLayoutKey>();
+export const app_platform = writable<BrowserPlatformInfo | undefined>(undefined);
export const app_cfg_type = writable<AppConfigType>(`personal`);
export const app_init = writable<boolean>(false);
export const app_tilt = writable<boolean>(false);
diff --git a/apps-lib/src/lib/store/layout.ts b/apps-lib/src/lib/store/layout.ts
@@ -0,0 +1,3 @@
+import { writable } from "svelte/store";
+
+export const lo_browser_safarinav = writable<boolean>(false);
diff --git a/apps-lib/src/lib/view/farms-add.svelte b/apps-lib/src/lib/view/farms-add.svelte
@@ -1,5 +1,8 @@
<script lang="ts">
+ import LayoutBottomButton from "$lib/components/layout/layout-bottom-button.svelte";
+ import Fade from "$lib/components/lib/fade.svelte";
import {
+ app_platform,
ButtonLayoutPair,
Carousel,
casl_dec,
@@ -8,6 +11,7 @@
casl_init,
FarmsAddCasliDetail,
FarmsAddCasliMap,
+ Glyph,
handle_err,
LayoutView,
liblocale,
@@ -78,9 +82,15 @@
parse_geocode_address(map_geoc),
);
+ const handle_continue_0 = async (): Promise<void> => {
+ await casl_inc();
+ };
+
const handle_continue_1 = async (): Promise<void> => {
- if (!map_geop) return; //@todo
- if (!farm_geolocation_address) return; //@todo
+ if (!map_geop)
+ return void basis.lc_gui_alert(`No farm location provided.`); //@todo
+ if (!farm_geolocation_address)
+ return void basis.lc_gui_alert(`No farm address provided.`); //@todo
const vp_obj_submit = vs_view_farms_add_submission.safeParse({
farm_name: val_farmname,
@@ -94,7 +104,7 @@
if (!vp_obj_submit.success) {
return void basis.lc_gui_alert(
`Please correct the following errors: ${vp_obj_submit.error}`,
- );
+ ); //@todo
}
loading = true;
await basis.lc_submit({ data_s: vp_obj_submit.data });
@@ -103,15 +113,18 @@
const handle_continue = async (): Promise<void> => {
switch ($casl_i) {
+ case 0:
+ return await handle_continue_0();
case 1:
- return handle_continue_1();
- default:
- return await casl_inc();
+ return await handle_continue_1();
}
};
const handle_back = async (): Promise<void> => {
- await casl_dec();
+ switch ($casl_i) {
+ default:
+ return await casl_dec();
+ }
};
</script>
@@ -123,7 +136,43 @@
callback_route: basis.callback_route,
},
}}
- />
+ >
+ {#snippet header_option()}
+ {#if $casl_i > 0}
+ <Fade>
+ <button
+ class={`flex flex-row pr-3 justify-center items-center`}
+ onclick={async () => {
+ await handle_back();
+ }}
+ >
+ <p
+ class={`font-sans font-[600] text-lg text-layer-0-glyph`}
+ >
+ {`${$lls(`common.back`)}`}
+ </p>
+ </button>
+ </Fade>
+ {/if}
+ <button
+ class={`flex flex-row justify-center items-center`}
+ onclick={async () => {
+ await handle_continue();
+ }}
+ >
+ <p class={`font-sans font-[600] text-lg text-layer-0-glyph-hl`}>
+ {`${$lls(`common.details`)}`}
+ </p>
+ <Glyph
+ basis={{
+ classes: `text-layer-0-glyph-hl`,
+ dim: `md`,
+ key: `caret-right`,
+ }}
+ />
+ </button>
+ {/snippet}
+ </PageToolbar>
<Carousel>
<FarmsAddCasliMap
bind:map_geop
@@ -144,9 +193,9 @@
{farm_geop_lng}
/>
</Carousel>
- <div
- class="absolute bottom-4 left-0 flex flex-row w-full gap-1 justify-center items-center"
- >
+</LayoutView>
+{#if $app_platform?.browser !== `safari`}
+ <LayoutBottomButton>
<ButtonLayoutPair
basis={{
continue: {
@@ -161,5 +210,10 @@
},
}}
/>
- </div>
-</LayoutView>
+ </LayoutBottomButton>
+{/if}
+<!--<div
+ class={`absolute bottom-lo_bottom_button_${$app_lo} left-0 flex flex-row w-full gap-1 justify-center items-center`}
+ >
+
+ </div>-->
diff --git a/apps-lib/src/lib/view/farms-products-add.svelte b/apps-lib/src/lib/view/farms-products-add.svelte
@@ -1,6 +1,5 @@
<script lang="ts">
import {
- app_lo,
ButtonHorizontalPairSlide,
ButtonRound,
Carousel,
@@ -385,7 +384,7 @@
};
</script>
-<LayoutView basis={{ classes: `pb-h_lo_bottom_button_${$app_lo}` }}>
+<LayoutView basis={{ classes: `` }}>
<PageToolbar
basis={{
header: {
@@ -441,7 +440,6 @@
}}
/>
</div>
-
<Carousel>
<CarouselItem basis={{ classes: `gap-4` }}>
<FormEntrySelectInput