html,body{height:100%;overflow:hidden}
.landing-pull-refresh{position:fixed;top:0;left:50%;z-index:1200;display:grid;width:44px;height:44px;place-items:center;border:1px solid color-mix(in srgb,var(--app-text) 12%,transparent);border-radius:50%;background:var(--app-bg);box-shadow:0 8px 24px rgba(8,13,23,.14);opacity:0;transform:translate(-50%,-54px);transition:transform .18s ease,opacity .16s ease;pointer-events:none}
.landing-pull-refresh.is-visible{opacity:1}
.landing-pull-refresh img{display:block;width:27px;height:27px;object-fit:contain;transition:transform .16s ease}
.landing-pull-refresh.is-ready img{transform:rotate(180deg)}
.landing-pull-refresh.is-refreshing img{animation:landing-refresh-spin .65s linear infinite}
@keyframes landing-refresh-spin{to{transform:rotate(360deg)}}
.landing{width:min(100%,560px);height:100svh;margin-inline:auto;padding:max(22px,env(safe-area-inset-top)) 24px max(28px,env(safe-area-inset-bottom));display:flex;flex-direction:column;background:var(--app-bg)}
.landing-art{min-height:0;flex:1;display:grid;place-items:center;padding:18px 0;overflow:hidden}
.landing-art img{display:block;width:112px;height:112px;object-fit:contain}
.landing-content{flex:0 0 auto}
.landing-content h1{margin:0;color:var(--app-text);font-size:clamp(25px,5vw,30px);line-height:1.2;letter-spacing:-.7px;font-weight:900;text-wrap:balance}
.landing-rule{display:block;width:64px;height:3px;margin-top:8px;border-radius:999px;background:var(--app-text)}
.landing-content>p:not(.landing-legal){margin:14px 0 25px;color:color-mix(in srgb,var(--app-text) 72%,transparent);font-size:14px;line-height:20px;font-weight:550}
.landing-actions{display:grid;gap:10px}
.landing-actions .app-button-primary{background:var(--app-text)!important;color:var(--app-bg)!important;border-color:var(--app-text)!important}
.landing-actions .app-button-secondary{background:transparent!important;color:var(--app-text)!important;border:1.5px solid var(--app-text)!important}
.landing-legal{margin:13px 0 0;text-align:center;color:color-mix(in srgb,var(--app-text) 70%,transparent);font-size:9px;line-height:1.45}
.landing-legal a{color:var(--app-text);font-weight:850;text-decoration:none}
@media(max-height:700px){.landing{padding-top:max(14px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}
.landing-art{padding:8px 0}
.landing-art img{width:88px;height:88px}
.landing-content>p:not(.landing-legal){margin:10px 0 16px}
.app-button{min-height:50px}
}
@media(min-width:800px){.landing{width:min(100%,1040px);max-width:1040px;display:grid;grid-template-columns:minmax(320px,1fr) minmax(360px,480px);align-items:center;gap:64px}
.landing-art{height:100%;padding:40px}
.landing-art img{width:150px;height:150px}
.landing-content{padding-right:20px}
.landing-content h1{font-size:40px;line-height:1.1}
.landing-content>p:not(.landing-legal){font-size:16px;line-height:24px}
}

/* Native off-canvas public navigation. */
.landing{position:relative}

.landing-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:flex-start;min-height:42px}

.landing-menu-button{display:grid!important;width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;padding:9px!important;align-content:center!important;gap:5px!important;border:0!important;border-radius:50%!important;background:transparent!important}

.landing-menu-button i{display:block!important;width:24px!important;height:2px!important;margin:auto!important;border-radius:3px!important;background:var(--app-text)!important}

.landing-menu{position:fixed!important;inset:0!important;z-index:1000!important;display:block!important;width:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;pointer-events:none!important}

.landing-menu[hidden]{display:none!important}

.landing-menu.is-open{pointer-events:auto!important}

.landing-menu-backdrop{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:rgba(8,13,23,.62)!important;opacity:0!important;transition:opacity .22s ease!important}

.landing-menu-panel{position:absolute!important;inset:0 auto 0 0!important;width:min(88vw,370px)!important;padding:max(18px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))!important;background:var(--app-bg)!important;box-shadow:18px 0 50px rgba(8,13,23,.22)!important;transform:translateX(-104%)!important;transition:transform .22s ease!important;display:flex!important;flex-direction:column!important}

.landing-menu.is-open .landing-menu-backdrop{opacity:1!important}

.landing-menu.is-open .landing-menu-panel{transform:translateX(0)!important}

.landing-menu-panel>header{display:flex!important;align-items:center!important;justify-content:flex-end!important;margin-bottom:24px!important}

.landing-menu-close{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--app-surface)!important;color:var(--app-text)!important;font-size:27px!important;line-height:1!important}

.landing-menu-links{display:grid!important;gap:6px!important}

.landing-menu-links>a,.landing-menu-links>button{display:flex!important;width:100%!important;min-height:54px!important;align-items:center!important;padding:0 14px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:var(--app-text)!important;font:inherit!important;font-size:14px!important;font-weight:800!important;text-align:left!important;text-decoration:none!important;cursor:pointer!important}

.landing-menu-links>a:hover,.landing-menu-links>button:hover,.landing-menu-links>a:focus-visible,.landing-menu-links>button:focus-visible{background:color-mix(in srgb,var(--app-text) 7%,transparent)!important}

.landing-menu-links b{font:inherit!important}

.landing-store-links{display:grid!important;gap:9px!important;margin-top:auto!important;padding-top:22px!important;border-top:1px solid color-mix(in srgb,var(--app-text) 12%,transparent)!important}

.landing-store-button{display:block!important;width:100%!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-decoration:none!important}

.landing-store-button.is-unavailable{opacity:.62!important;cursor:not-allowed!important;pointer-events:none!important}

.landing-store-button img{display:block!important;width:auto!important;height:54px!important;max-width:100%!important;object-fit:contain!important;object-position:left center!important}

/* Landing menu cleanup and responsive store badges — 20260922-5 */
.landing-menu-links{gap:0!important}
.landing-menu-links>a,.landing-menu-links>button{min-height:52px!important;padding:0 14px!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--app-text) 12%,transparent)!important}
.landing-install-help{margin:8px 14px 14px!important;padding:12px 14px!important;border-radius:12px!important;background:color-mix(in srgb,var(--app-text) 7%,var(--app-bg))!important;color:var(--app-text)!important;font-size:13px!important;font-weight:600!important;line-height:1.45!important}
.landing-install-help[hidden]{display:none!important}
.landing-store-links{gap:10px!important;align-items:start!important}
.landing-store-title{margin:0 0 4px!important;color:var(--app-text)!important;font-size:15px!important;font-weight:800!important;line-height:1.3!important}
.landing-store-button,.landing-store-button.is-unavailable{width:216px!important;height:64px!important;opacity:1!important}
.landing-store-button img{width:216px!important;height:64px!important;max-width:none!important;object-fit:fill!important;object-position:center!important}
@media(max-width:420px){.landing-menu-panel{width:min(88vw,370px)!important;padding-left:16px!important;padding-right:16px!important}.landing-store-button,.landing-store-button.is-unavailable,.landing-store-button img{width:200px!important;height:59px!important}}
@media(min-width:800px){.landing-menu-panel{width:400px!important}.landing{min-height:100dvh!important}}

/* Approved horizontal app-store badge row — 20260922-6 */
.landing-store-links{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:8px!important;row-gap:10px!important;align-items:center!important}
.landing-store-title{grid-column:1/-1!important;width:100%!important;margin:0!important;text-align:center!important}
.landing-store-button,.landing-store-button.is-unavailable{display:block!important;width:100%!important;height:50px!important;box-sizing:border-box!important;border:2px solid color-mix(in srgb,var(--app-text) 58%,transparent)!important;border-radius:5px!important;overflow:hidden!important;opacity:1!important}
.landing-store-button img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;border-radius:3px!important;object-fit:fill!important}
@media(max-width:420px){.landing-store-button,.landing-store-button.is-unavailable{width:100%!important;height:46px!important}.landing-store-button img{width:100%!important;height:100%!important}}

/* System and saved MZ App theme support — 20260922-7 */
:root[data-theme='dark']{--app-bg:#000000!important;--app-surface:#111111!important;--app-text:#FFFFFF!important;--app-primary:#FFFFFF!important}
:root[data-theme='light']{--app-bg:#FBF8F4!important;--app-surface:#FFFFFF!important;--app-text:#171E28!important;--app-primary:#171E28!important}
html,body{background:var(--app-bg)!important;color:var(--app-text)!important}
:root[data-theme='dark'] .landing-menu-panel{background:#191919!important}
:root[data-theme='dark'] .landing-menu-close{background:#151515!important;color:#FFFFFF!important}
:root[data-theme='dark'] .app-button-primary{background:#FFFFFF!important;color:#000000!important}
:root[data-theme='dark'] .app-button-secondary{border-color:#FFFFFF!important;color:#FFFFFF!important;background:#191919!important}

/* Clean official store-badge presentation — 20260922-9 */
.landing-store-links{margin-top:28px!important;padding-top:20px!important;align-content:start!important;border-top:1px solid color-mix(in srgb,var(--app-text) 12%,transparent)!important}
.landing-store-title{margin:0 0 2px!important;text-align:center!important}
.landing-store-button,.landing-store-button.is-unavailable{height:46px!important;border:0!important;border-radius:6px!important;box-shadow:0 2px 7px rgba(0,0,0,.14)!important;background:#000!important}
.landing-store-button img{border:0!important;border-radius:6px!important;box-shadow:none!important}
@media(max-width:420px){.landing-store-links{margin-top:24px!important;padding-top:18px!important;column-gap:7px!important}.landing-store-button,.landing-store-button.is-unavailable{height:43px!important}}

/* Final landing theme, logo, refresh and spacing correction — 20260922-10 */
.landing{background:#FBF8F4!important}
:root[data-theme='dark'] .landing{background:#191919!important}
.landing-art{position:relative!important}
.landing-art .landing-logo-light,.landing-art .landing-logo-dark{width:112px!important;height:112px!important;object-fit:contain!important}
.landing-art .landing-logo-dark{display:none!important}
:root[data-theme='dark'] .landing-art .landing-logo-light{display:none!important}
:root[data-theme='dark'] .landing-art .landing-logo-dark{display:block!important}
.landing-pull-refresh span{display:block!important;width:20px!important;height:20px!important;border:3px solid color-mix(in srgb,var(--app-text) 24%,transparent)!important;border-top-color:var(--app-text)!important;border-radius:50%!important;transition:transform .16s ease!important}
.landing-pull-refresh.is-ready span{transform:rotate(180deg)!important}
.landing-pull-refresh.is-refreshing span{animation:landing-refresh-spin .65s linear infinite!important}
.landing-store-links{margin-top:clamp(42px,7vh,64px)!important;padding-top:18px!important}
.landing-menu-panel{overflow-y:auto!important}


/* Download badges v11 */
.landing-store-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 10px !important;
    margin-top: clamp(42px, 7vh, 64px) !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}
.landing-store-title {
    grid-column: 1 !important;
    width: 100% !important;
    margin: 0 0 4px !important;
    text-align: center !important;
}
.landing-store-button,
.landing-store-button.is-unavailable {
    display: block !important;
    width: 200px !important;
    height: 60px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 3px 10px rgba(0,0,0,.16) !important;
}
.landing-store-button img {
    display: block !important;
    width: 200px !important;
    height: 60px !important;
    object-fit: fill !important;
    border-radius: 8px !important;
}
.landing-menu-links > a,
.landing-menu-links > button {
    -webkit-tap-highlight-color: transparent !important;
}
@media (hover: none) {
    .landing-menu-links > a:hover,
    .landing-menu-links > button:hover,
    .landing-menu-links > a:active,
    .landing-menu-links > button:active,
    .landing-menu-links > a:focus:not(:focus-visible),
    .landing-menu-links > button:focus:not(:focus-visible) {
        background: transparent !important;
    }
}
@media (max-width: 360px) {
    .landing-store-button,
    .landing-store-button.is-unavailable,
    .landing-store-button img {
        width: 190px !important;
        height: 57px !important;
    }
}

/* Center logo v11 */
.landing-art img { width: 128px !important; height: 128px !important; }

/* Full viewport native surfaces v12 */
html, body { min-height: 100%; background: #FBF8F4 !important; }
:root[data-theme='dark'], :root[data-theme='dark'] body { background: #191919 !important; }

/* Landing login button surface v13 */
.landing-actions .app-button-secondary {
    background: var(--app-bg) !important;
    color: var(--app-text) !important;
    border-color: var(--app-text) !important;
}

/* Menu native surface v14 */
.landing-menu-panel { background: #FBF8F4 !important; }
:root[data-theme='dark'] .landing-menu-panel { background: #191919 !important; }

/* Compact left download group v15 */
.landing-store-links {
    justify-items: start !important;
    align-content: start !important;
    gap: 8px !important;
}
.landing-store-title {
    width: 150px !important;
    text-align: center !important;
    margin: 0 0 3px !important;
}
.landing-store-button,
.landing-store-button.is-unavailable,
.landing-store-button img {
    width: 150px !important;
    height: 45px !important;
}
@media (max-width: 360px) {
    .landing-store-title { width: 145px !important; }
    .landing-store-button,
    .landing-store-button.is-unavailable,
    .landing-store-button img {
        width: 145px !important;
        height: 44px !important;
    }
}

/* Approved half-screen menu v16 */
@media (max-width: 600px) {
    .landing-menu-panel {
        width: 50vw !important;
        max-width: 50vw !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}
.landing-menu-backdrop {
    background: rgba(8, 13, 23, .92) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    backdrop-filter: blur(10px) !important;
}
.landing-store-links {
    width: 100% !important;
    max-width: 228px !important;
    margin: clamp(76px, 11vh, 120px) auto 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 110px) minmax(0, 110px) !important;
    justify-content: center !important;
    justify-items: stretch !important;
    align-content: start !important;
    gap: 8px !important;
    border: 0 !important;
}
.landing-store-title {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 0 4px !important;
    text-align: center !important;
}
.landing-store-button,
.landing-store-button.is-unavailable {
    width: 100% !important;
    max-width: 110px !important;
    height: 30px !important;
    border: 1.5px solid #FFFFFF !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    overflow: hidden !important;
}
.landing-store-button img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 6px !important;
    object-fit: fill !important;
}

/* Explicit landing Login surfaces v18 */
:root:not([data-theme='dark']) .landing-actions .app-button-secondary {
    background: #FBF8F4 !important;
    background-color: #FBF8F4 !important;
}
:root[data-theme='dark'] .landing-actions .app-button-secondary {
    background: #191919 !important;
    background-color: #191919 !important;
}


/* Desktop landing alignment v19 */
@media (min-width: 800px) {
    .landing {
        width: min(100%, 560px) !important;
        max-width: 560px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
    }
    .landing-art {
        height: auto !important;
        padding: 18px 0 !important;
    }
    .landing-content {
        padding-right: 0 !important;
    }
}


/* Match the menu panel to the app card surface v21 */
.landing-menu-panel { background: var(--app-surface) !important; }
