/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-vaibe7lx4k] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: #1a222d;
    color: #ffffff;
    font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
}

.marketing-page[b-vaibe7lx4k] { background: var(--rk-background); color: var(--rk-text); }
.marketing-page .site-nav[b-vaibe7lx4k] { background: rgb(14 22 38 / 96%); border-bottom-color: var(--rk-line); }
.marketing-page .nav-brand[b-vaibe7lx4k], .marketing-page .nav-links a[b-vaibe7lx4k], .marketing-page .footer-h[b-vaibe7lx4k] { letter-spacing: 0; }
.marketing-page .nav-links a[b-vaibe7lx4k] { color: var(--rk-text-muted); }
.marketing-page .nav-links a:hover[b-vaibe7lx4k], .marketing-page .nav-links a.is-active[b-vaibe7lx4k] { color: var(--rk-text); }
.marketing-page .nav-links a[b-vaibe7lx4k]::after { background: var(--rk-selection); }
.marketing-page .nav-cta[b-vaibe7lx4k]  .mud-button-root { background: var(--rk-primary); color: var(--rk-primary-text); border-radius: var(--rk-radius-control); font-size: 13px; letter-spacing: 0; text-transform: none; }
.marketing-page .nav-mobile-menu[b-vaibe7lx4k] { background: var(--rk-surface); border-radius: var(--rk-radius-card); }
.marketing-page .nav-mobile-menu a[b-vaibe7lx4k] { color: var(--rk-text-muted); }
.marketing-page .nav-mobile-menu a:hover[b-vaibe7lx4k] { color: var(--rk-text); }
.marketing-page .nav-toggle[b-vaibe7lx4k] { border-radius: var(--rk-radius-control); }
.marketing-page .nav-brand:focus-visible[b-vaibe7lx4k], .marketing-page .nav-links a:focus-visible[b-vaibe7lx4k], .marketing-page .nav-toggle:focus-visible[b-vaibe7lx4k], .marketing-page .nav-mobile-menu a:focus-visible[b-vaibe7lx4k], .marketing-page .footer-col a:focus-visible[b-vaibe7lx4k], .marketing-page .footer-legal a:focus-visible[b-vaibe7lx4k] { outline: 2px solid var(--rk-focus); outline-offset: 2px; }
.skip-link:has(+ .marketing-page)[b-vaibe7lx4k] { background: var(--rk-primary); color: var(--rk-primary-text); border-color: var(--rk-focus); border-radius: var(--rk-radius-control); }
.marketing-page .site-footer[b-vaibe7lx4k] { margin-top: 0; background: var(--rk-background); border-top-color: var(--rk-line); }
.marketing-page .footer-tag[b-vaibe7lx4k], .marketing-page .footer-h[b-vaibe7lx4k], .marketing-page .footer-bottom[b-vaibe7lx4k] { color: var(--rk-text-muted); }
.marketing-page .footer-col a[b-vaibe7lx4k] { color: var(--rk-link); font-size: 13px; }
.marketing-page .footer-h[b-vaibe7lx4k], .marketing-page .footer-bottom[b-vaibe7lx4k] { font-size: 13px; }
.marketing-page .footer-legal[b-vaibe7lx4k] { border-top-color: var(--rk-line); }
.marketing-page .footer-legal a[b-vaibe7lx4k] { color: var(--rk-link); font-size: 13px; }

.skip-link[b-vaibe7lx4k] {
    position: fixed;
    top: 10px;
    left: 12px;
    z-index: 10000;
    padding: 10px 14px;
    color: #ffffff;
    background: #287d4e;
    border: 2px solid #72d99a;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    translate: 0 -160%;
    transition: translate 0.15s ease;
}

.skip-link:focus[b-vaibe7lx4k] {
    translate: 0 0;
    outline: none;
}

[b-vaibe7lx4k] main {
    flex: 1;
}

/* ---------- Top nav ---------- */

.site-nav[b-vaibe7lx4k] {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(30, 39, 52, 0.85);
    backdrop-filter: saturate(140%) blur(10px);
    -webkit-backdrop-filter: saturate(140%) blur(10px);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

.nav-inner[b-vaibe7lx4k] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 14px 28px;
    display: flex;
    align-items: center;
    gap: 32px;
}

.nav-brand[b-vaibe7lx4k] {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: -0.01em;
}

.nav-brand img[b-vaibe7lx4k] {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.nav-links[b-vaibe7lx4k] {
    display: flex;
    gap: 28px;
    margin-left: auto;
}

.nav-links a[b-vaibe7lx4k] {
    position: relative;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    color: #c2c5cc;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    padding: 6px 0;
    transition: color 0.15s ease;
}

.nav-links a:hover[b-vaibe7lx4k] {
    color: #fff;
}

.nav-links a[b-vaibe7lx4k]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: #72d99a;
    border-radius: 2px;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.22s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.nav-links a.is-active[b-vaibe7lx4k] {
    color: #fff;
}

.nav-links a.is-active[b-vaibe7lx4k]::after {
    transform: scaleX(1);
}

.nav-cta[b-vaibe7lx4k] {
    margin-left: 8px;
}

.brand-picture[b-vaibe7lx4k] {
    display: inline-flex;
    flex: 0 0 auto;
}

.nav-cta[b-vaibe7lx4k]  .mud-button-root {
    min-height: 44px;
}

/* ---------- Mobile menu (native <details> disclosure — works without JS) ---------- */

.nav-mobile[b-vaibe7lx4k] {
    display: none;
    position: relative;
    margin-left: 4px;
}

.nav-toggle[b-vaibe7lx4k] {
    list-style: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.04);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.nav-toggle[b-vaibe7lx4k]::-webkit-details-marker { display: none; }
.nav-toggle[b-vaibe7lx4k]::marker { content: ""; }
.nav-toggle:hover[b-vaibe7lx4k] { background: rgba(255,255,255,0.08); }
.nav-toggle:focus-visible[b-vaibe7lx4k] { outline: 3px solid rgba(114, 217, 154, 0.65); outline-offset: 2px; }

.nav-toggle-icon[b-vaibe7lx4k],
.nav-toggle-icon[b-vaibe7lx4k]::before,
.nav-toggle-icon[b-vaibe7lx4k]::after {
    display: block;
    width: 18px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform 0.2s ease, opacity 0.2s ease, background 0.2s ease;
}

.nav-toggle-icon[b-vaibe7lx4k] { position: relative; }

.nav-toggle-icon[b-vaibe7lx4k]::before,
.nav-toggle-icon[b-vaibe7lx4k]::after {
    content: "";
    position: absolute;
    left: 0;
}

.nav-toggle-icon[b-vaibe7lx4k]::before { top: -6px; }
.nav-toggle-icon[b-vaibe7lx4k]::after { top: 6px; }

.nav-mobile[open] .nav-toggle-icon[b-vaibe7lx4k] { background: transparent; }
.nav-mobile[open] .nav-toggle-icon[b-vaibe7lx4k]::before { transform: translateY(6px) rotate(45deg); }
.nav-mobile[open] .nav-toggle-icon[b-vaibe7lx4k]::after { transform: translateY(-6px) rotate(-45deg); }

.nav-mobile-menu[b-vaibe7lx4k] {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    min-width: 210px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px;
    background: rgba(30, 39, 52, 0.98);
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 12px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.45);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 200;
}

.nav-mobile:not([open]) .nav-mobile-menu[b-vaibe7lx4k] {
    display: none;
}

.nav-mobile-menu a[b-vaibe7lx4k] {
    color: #c2c5cc;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    padding: 11px 12px;
    border-radius: 8px;
    transition: background 0.15s ease, color 0.15s ease;
}

.nav-mobile-menu a:hover[b-vaibe7lx4k] { background: rgba(255,255,255,0.06); color: #fff; }

.nav-mobile-menu a:focus-visible[b-vaibe7lx4k] {
    color: #fff;
    background: rgba(255,255,255,0.08);
    outline: 3px solid rgba(114, 217, 154, 0.65);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .nav-toggle-icon[b-vaibe7lx4k],
    .nav-toggle-icon[b-vaibe7lx4k]::before,
    .nav-toggle-icon[b-vaibe7lx4k]::after { transition: none; }
}

@media (max-width: 820px) {
    .nav-links[b-vaibe7lx4k] { display: none; }
    .nav-inner[b-vaibe7lx4k] { gap: 16px; padding: 12px 18px; }
    .nav-cta[b-vaibe7lx4k] { margin-left: auto; }
    .nav-mobile[b-vaibe7lx4k] { display: block; }
}

@media (max-width: 420px) {
    .nav-cta[b-vaibe7lx4k] { display: none; }
    .nav-mobile[b-vaibe7lx4k] { margin-left: auto; }
}

/* ---------- Footer ---------- */

.site-footer[b-vaibe7lx4k] {
    margin-top: 80px;
    border-top: 1px solid rgba(255,255,255,0.06);
    background: #161d27;
}

.footer-inner[b-vaibe7lx4k] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 56px 28px 32px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 48px;
}

.footer-brand[b-vaibe7lx4k] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.footer-brand img[b-vaibe7lx4k] {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.footer-title[b-vaibe7lx4k] {
    font-weight: 700;
    font-size: 18px;
    color: #fff;
}

.footer-tag[b-vaibe7lx4k] {
    color: #8b95a3;
    font-size: 13px;
    max-width: 260px;
    margin-top: 4px;
    line-height: 1.5;
}

.footer-cols[b-vaibe7lx4k] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.footer-col[b-vaibe7lx4k] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-h[b-vaibe7lx4k] {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #8b95a3;
    margin-bottom: 6px;
}

.footer-col a[b-vaibe7lx4k] {
    color: #c2c5cc;
    text-decoration: none;
    font-size: 14px;
    padding: 3px 0;
}

.footer-col a:hover[b-vaibe7lx4k] {
    color: #fff;
}

.footer-bottom[b-vaibe7lx4k] {
    /* The same width as the legal row above it, so the two dividers line up. */
    max-width: 1144px;
    margin: 0 auto;
    padding: 18px 0 32px;
    display: flex;
    justify-content: space-between;
    color: #8b95a3;
    font-size: 12px;
    border-top: 1px solid rgba(255,255,255,0.04);
}

.footer-legal[b-vaibe7lx4k] { display: flex; flex-wrap: wrap; gap: 2px 24px; max-width: 1144px; margin: 0 auto; padding: 16px 0; border-top: 1px solid #405066; }
.footer-legal a[b-vaibe7lx4k] { display: inline-flex; align-items: center; min-height: 28px; max-width: 100%; color: #b7c1cf; font-size: 11px; line-height: 1.6; text-decoration: none; }
.footer-legal a:hover[b-vaibe7lx4k] { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.footer-legal a:focus-visible[b-vaibe7lx4k] { outline: 2px solid #dfc58d; outline-offset: 3px; }
.marketing-page .footer-inner[b-vaibe7lx4k] { padding-top: 40px; padding-bottom: 24px; }
.marketing-page .footer-col[b-vaibe7lx4k] { gap: 6px; }

@media (max-width: 760px) {
    .footer-inner[b-vaibe7lx4k] { grid-template-columns: 1fr; gap: 32px; padding: 40px 18px 24px; }
    .footer-cols[b-vaibe7lx4k] { grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .footer-bottom[b-vaibe7lx4k] { flex-direction: column; gap: 6px; margin: 0 18px; padding: 16px 0 28px; }
    .footer-legal[b-vaibe7lx4k] { margin: 0 18px; gap: 0 24px; }
    .footer-legal a[b-vaibe7lx4k] { min-height: 44px; }
}
@media (min-width: 761px) and (max-width: 1199px) {
    .footer-legal[b-vaibe7lx4k], .footer-bottom[b-vaibe7lx4k] { margin: 0 28px; }
}

/* ---------- Error UI ---------- */

#blazor-error-ui[b-vaibe7lx4k] {
    color-scheme: light only;
    color: #242424;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-vaibe7lx4k] {
    width: 36px;
    height: 36px;
    padding: 0;
    color: #2d2d2d;
    background: transparent;
    border: 0;
    font: inherit;
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.25rem;
}

#blazor-error-ui a[b-vaibe7lx4k] { color: #145a35; }

#blazor-error-ui .dismiss:focus-visible[b-vaibe7lx4k] {
    outline: 2px solid #287d4e;
    outline-offset: 1px;
}

@media (prefers-reduced-motion: reduce) {
    .skip-link[b-vaibe7lx4k] { transition: none; }
}

/* Last on purpose, so it wins over the marketing header's translucent background and its blur. */
@media (prefers-reduced-transparency: reduce) {
    .marketing-page .site-nav[b-vaibe7lx4k] { background: var(--rk-background); backdrop-filter: none; -webkit-backdrop-filter: none; }
    .marketing-page .nav-mobile-menu[b-vaibe7lx4k] { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-e52cmxbh2n],
.components-reconnect-repeated-attempt-visible[b-e52cmxbh2n],
.components-reconnect-failed-visible[b-e52cmxbh2n],
.components-pause-visible[b-e52cmxbh2n],
.components-resume-failed-visible[b-e52cmxbh2n],
.components-rejoining-animation[b-e52cmxbh2n] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-retrying[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-failed[b-e52cmxbh2n],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-e52cmxbh2n] {
    display: block;
}


/* Explicit dark-site styling; keep selectors flat — the CSS-isolation
   bundler mishandles native nesting, which silently dropped the old
   background rule and left UA-black text on a dark fallback. */
#components-reconnect-modal[b-e52cmxbh2n] {
    /* !important: MudBlazor.min.css targets this id with an !important
       palette background; the scoped attribute selector plus !important
       outranks it deterministically. */
    background-color: #202b39 !important;
    color: #e2e8f0;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 1px solid rgba(101, 185, 255, 0.22);
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-e52cmxbh2n 0.5s both;
}

#components-reconnect-modal[open][b-e52cmxbh2n] {
    animation: components-reconnect-modal-slideUp-b-e52cmxbh2n 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-e52cmxbh2n 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

#components-reconnect-modal[b-e52cmxbh2n]::backdrop {
    background-color: rgba(4, 9, 16, 0.55);
    animation: components-reconnect-modal-fadeInOpacity-b-e52cmxbh2n 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-e52cmxbh2n {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-e52cmxbh2n {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-e52cmxbh2n {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-e52cmxbh2n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-e52cmxbh2n] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-e52cmxbh2n] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-e52cmxbh2n] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-e52cmxbh2n] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-e52cmxbh2n] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-e52cmxbh2n] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-e52cmxbh2n 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-e52cmxbh2n] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-e52cmxbh2n {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/AppPrivacy.razor.rz.scp.css */
.privacy-page[b-t5dke6v7qb] {
    padding: 84px 28px;
}

.privacy-card[b-t5dke6v7qb] {
    max-width: 820px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.privacy-kicker[b-t5dke6v7qb] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.privacy-card h1[b-t5dke6v7qb] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.privacy-lede[b-t5dke6v7qb],
.privacy-section p[b-t5dke6v7qb],
.privacy-updated[b-t5dke6v7qb] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.privacy-lede[b-t5dke6v7qb] {
    margin-bottom: 34px;
}

.privacy-warning[b-t5dke6v7qb] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.privacy-section[b-t5dke6v7qb] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.privacy-section h2[b-t5dke6v7qb] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.2;
}

.privacy-section p[b-t5dke6v7qb] {
    margin: 0 0 12px;
}

.privacy-section p:last-child[b-t5dke6v7qb] {
    margin-bottom: 0;
}

.privacy-section ul[b-t5dke6v7qb] {
    margin: 10px 0 14px;
    padding-left: 22px;
    color: #c2c5cc;
    line-height: 1.62;
}

.privacy-section li + li[b-t5dke6v7qb] {
    margin-top: 8px;
}

.privacy-section a[b-t5dke6v7qb] {
    color: #8ddb8c;
}

.privacy-updated[b-t5dke6v7qb] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

@media (max-width: 640px) {
    .privacy-page[b-t5dke6v7qb] {
        padding: 56px 18px;
    }

    .privacy-card[b-t5dke6v7qb] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .privacy-card h1[b-t5dke6v7qb] {
        font-size: 34px;
    }
}
/* /Components/Pages/AppTerms.razor.rz.scp.css */
.legal-page[b-zgka5opmm5] {
    padding: 84px 28px;
}

.legal-card[b-zgka5opmm5] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-zgka5opmm5] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-zgka5opmm5] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-zgka5opmm5],
.legal-section p[b-zgka5opmm5],
.legal-section li[b-zgka5opmm5],
.legal-updated[b-zgka5opmm5] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-zgka5opmm5] {
    margin-bottom: 28px;
}

.legal-warning[b-zgka5opmm5] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-zgka5opmm5] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-zgka5opmm5] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-zgka5opmm5] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-zgka5opmm5] {
    margin-bottom: 0;
}

.legal-section ul[b-zgka5opmm5] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-zgka5opmm5] {
    margin-top: 8px;
}

.legal-section a[b-zgka5opmm5],
.legal-card a[b-zgka5opmm5] {
    color: #8ddb8c;
}

.legal-card code[b-zgka5opmm5] {
    color: #d9e1e8;
    overflow-wrap: anywhere;
}

.legal-updated[b-zgka5opmm5] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

@media (max-width: 640px) {
    .legal-page[b-zgka5opmm5] {
        padding: 56px 18px;
    }

    .legal-card[b-zgka5opmm5] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-zgka5opmm5] {
        font-size: 34px;
    }
}
/* /Components/Pages/Beta.razor.rz.scp.css */
.beta-page[b-p9d687fgpu] {
    min-height: 70vh;
    display: grid;
    place-items: center;
    padding: 96px 20px;
    background:
        radial-gradient(circle at 25% 15%, rgba(66, 211, 146, .10), transparent 36%),
        var(--rk-bg, #111a24);
}

.beta-card[b-p9d687fgpu] {
    width: min(620px, 100%);
    padding: clamp(28px, 6vw, 52px);
    border: 1px solid rgba(114, 217, 154, .22);
    border-radius: 24px;
    background: rgba(22, 32, 43, .96);
    box-shadow: 0 24px 72px rgba(0, 0, 0, .24);
}

.beta-kicker[b-p9d687fgpu] {
    color: #72d99a;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.beta-card h1[b-p9d687fgpu] {
    margin: 10px 0 16px;
    color: #f4f7fa;
    font-size: clamp(36px, 7vw, 54px);
    line-height: 1.02;
    letter-spacing: -.04em;
}

.beta-lede[b-p9d687fgpu],
.beta-footnote[b-p9d687fgpu],
.beta-meta[b-p9d687fgpu] {
    color: #aeb9c6;
    line-height: 1.65;
}

.beta-download-form[b-p9d687fgpu] {
    display: grid;
    gap: 10px;
    margin: 28px 0 18px;
}

.beta-download-form label[b-p9d687fgpu] {
    color: #dfe6ed;
    font-weight: 700;
}

.beta-download-form input[b-p9d687fgpu] {
    min-height: 48px;
    padding: 0 14px;
    color: #f4f7fa;
    border: 1px solid #3c4b5b;
    border-radius: 10px;
    background: #101923;
}

.beta-consent[b-p9d687fgpu] {
    display: grid;
    gap: 12px;
    margin: 12px 0 0;
    padding: 18px;
    border: 1px solid rgba(114, 217, 154, .2);
    border-radius: 12px;
}

.beta-consent legend[b-p9d687fgpu] {
    padding: 0 6px;
    color: #dfe6ed;
    font-weight: 800;
}

.beta-check[b-p9d687fgpu] {
    display: grid;
    grid-template-columns: 20px 1fr;
    gap: 10px;
    align-items: start;
    color: #c8d2dc;
    font-weight: 500 !important;
    line-height: 1.5;
}

.beta-check input[b-p9d687fgpu] {
    width: 18px;
    min-height: 18px;
    margin-top: 3px;
    padding: 0;
    accent-color: #72d99a;
}

.beta-consent-note[b-p9d687fgpu] {
    margin: 2px 0 0;
    color: #98a6b5;
    font-size: 13px;
    line-height: 1.55;
}

.beta-license-request[b-p9d687fgpu] {
    display: grid;
    gap: 10px;
    margin-top: 10px;
    padding: 18px;
    border: 1px solid rgba(101, 185, 255, .28);
    border-radius: 12px;
    background: rgba(101, 185, 255, .06);
}

.beta-license-request .beta-button[b-p9d687fgpu] {
    justify-self: start;
}

.beta-license-status[b-p9d687fgpu] {
    margin: 2px 0 0;
    color: #b9d9f5;
    font-size: 14px;
    line-height: 1.5;
}

.beta-download-form input:focus-visible[b-p9d687fgpu],
.beta-button:focus-visible[b-p9d687fgpu],
.beta-card a:focus-visible[b-p9d687fgpu] {
    outline: 3px solid #72d99a;
    outline-offset: 3px;
}

.beta-download-actions[b-p9d687fgpu] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.beta-button[b-p9d687fgpu] {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 10px;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
    text-decoration: none;
}

.beta-button-primary[b-p9d687fgpu] {
    color: #08140e;
    background: #72d99a;
}

.beta-button-secondary[b-p9d687fgpu] {
    color: #eaf0f5;
    border-color: #465667;
    background: transparent;
}

.beta-meta[b-p9d687fgpu] {
    font-size: 14px;
}

.beta-card a[b-p9d687fgpu] {
    color: #88e3ad;
}

.beta-footnote[b-p9d687fgpu] {
    margin: 28px 0 0;
    font-size: 14px;
}

@media (max-width: 520px) {
    .beta-page[b-p9d687fgpu] {
        padding: 54px 14px;
    }

    .beta-download-actions[b-p9d687fgpu],
    .beta-license-request .beta-button[b-p9d687fgpu],
    .beta-button[b-p9d687fgpu] {
        width: 100%;
    }
}
/* /Components/Pages/Cookies.razor.rz.scp.css */
.legal-page[b-qnjssba1lh] {
    padding: 84px 28px;
}

.legal-card[b-qnjssba1lh] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-qnjssba1lh] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-qnjssba1lh] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-qnjssba1lh],
.legal-section p[b-qnjssba1lh],
.legal-section li[b-qnjssba1lh],
.legal-updated[b-qnjssba1lh] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-qnjssba1lh] {
    margin-bottom: 28px;
}

.legal-warning[b-qnjssba1lh] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-qnjssba1lh] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-qnjssba1lh] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-qnjssba1lh] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-qnjssba1lh] {
    margin-bottom: 0;
}

.legal-section ul[b-qnjssba1lh] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-qnjssba1lh] {
    margin-top: 8px;
}

.legal-section a[b-qnjssba1lh],
.legal-card a[b-qnjssba1lh] {
    color: #8ddb8c;
}

.legal-card code[b-qnjssba1lh] {
    color: #d9e1e8;
    overflow-wrap: anywhere;
}

.legal-updated[b-qnjssba1lh] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

.legal-section h3[b-qnjssba1lh] {
    margin: 16px 0 6px;
    color: #e8edf2;
    font-size: 16px;
    line-height: 1.35;
}

.legal-table-wrap[b-qnjssba1lh] {
    overflow-x: auto;
    margin-top: 12px;
}

.legal-table[b-qnjssba1lh] {
    width: 100%;
    border-collapse: collapse;
    color: #c2c5cc;
    font-size: 14px;
    line-height: 1.5;
}

.legal-table th[b-qnjssba1lh],
.legal-table td[b-qnjssba1lh] {
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,0.1);
    text-align: left;
    vertical-align: top;
}

.legal-table th[b-qnjssba1lh] {
    color: #fff;
    background: rgba(255,255,255,0.04);
}

@media (max-width: 640px) {
    .legal-page[b-qnjssba1lh] {
        padding: 56px 18px;
    }

    .legal-card[b-qnjssba1lh] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-qnjssba1lh] {
        font-size: 34px;
    }
}
/* /Components/Pages/Disclaimer.razor.rz.scp.css */
.legal-page[b-jdzp959l1z] {
    padding: 84px 28px;
}

.legal-card[b-jdzp959l1z] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-jdzp959l1z] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-jdzp959l1z] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-jdzp959l1z],
.legal-section p[b-jdzp959l1z],
.legal-section li[b-jdzp959l1z],
.legal-updated[b-jdzp959l1z] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-jdzp959l1z] {
    margin-bottom: 28px;
}

.legal-warning[b-jdzp959l1z] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-jdzp959l1z] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-jdzp959l1z] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-jdzp959l1z] {
    margin: 0;
}

.legal-section a[b-jdzp959l1z],
.legal-card a[b-jdzp959l1z] {
    color: #8ddb8c;
}

.legal-updated[b-jdzp959l1z] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

@media (max-width: 640px) {
    .legal-page[b-jdzp959l1z] {
        padding: 56px 18px;
    }

    .legal-card[b-jdzp959l1z] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-jdzp959l1z] {
        font-size: 34px;
    }
}
/* /Components/Pages/Explore.razor.rz.scp.css */
/* The same story as the main page's One calm loop, on the app's tokens (wwwroot/rk-tokens.css). */
.explore[b-mde3zw2yli] { padding: 40px 28px 96px; background: var(--rk-background); color: var(--rk-text); font-family: Inter, "Segoe UI", sans-serif; letter-spacing: 0; font-variant-ligatures: no-contextual; }
.explore *[b-mde3zw2yli], .explore *[b-mde3zw2yli]::before, .explore *[b-mde3zw2yli]::after { box-sizing: border-box; letter-spacing: 0; }
.explore-inner[b-mde3zw2yli] { max-width: 1120px; margin: 0 auto; }
.back-link[b-mde3zw2yli], .explore-return[b-mde3zw2yli] { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--rk-link); font-size: 14px; font-weight: 600; text-decoration: none; }
.back-link:hover[b-mde3zw2yli], .explore-return:hover[b-mde3zw2yli], .explore-jump a:hover[b-mde3zw2yli] { text-decoration: underline; text-underline-offset: 4px; }
.explore[b-mde3zw2yli]  .mud-icon-root { width: 18px; height: 18px; }
.explore-head[b-mde3zw2yli] { max-width: 760px; margin-top: 28px; }
.explore-kicker[b-mde3zw2yli] { margin: 0 0 12px; color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; font-weight: 700; text-transform: uppercase; }
h1[b-mde3zw2yli] { margin: 0; font-size: 50px; font-weight: 650; line-height: 1.12; text-wrap: balance; }
.explore-intro[b-mde3zw2yli] { margin: 18px 0 0; color: var(--rk-text-muted); font-size: 16px; line-height: 1.7; }
.explore-jump[b-mde3zw2yli] { display: flex; flex-wrap: wrap; gap: 4px 24px; margin-top: 16px; }
.explore-jump a[b-mde3zw2yli] { display: inline-flex; align-items: center; min-height: 44px; color: var(--rk-link); font-size: 15px; font-weight: 600; text-decoration: none; }
.explore-step[b-mde3zw2yli] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); align-items: center; gap: 56px; margin-top: 72px; padding-top: 72px; border-top: 1px solid var(--rk-line-subtle); scroll-margin-top: 24px; }
.explore-step:nth-of-type(even)[b-mde3zw2yli] { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
.explore-step:nth-of-type(even) .explore-figure[b-mde3zw2yli] { order: -1; }
.explore-copy[b-mde3zw2yli] { min-width: 0; }
h2[b-mde3zw2yli] { margin: 0; font-size: 34px; font-weight: 550; line-height: 1.2; }
.explore-copy p[b-mde3zw2yli] { margin: 14px 0 0; color: var(--rk-text-muted); font-size: 15px; line-height: 1.7; }
.explore-copy .explore-lead[b-mde3zw2yli] { color: var(--rk-text); font-size: 17px; line-height: 1.6; }
.explore-also[b-mde3zw2yli] { margin: 14px 0 0; padding: 0 0 0 18px; color: var(--rk-text-muted); font-size: 15px; line-height: 1.6; }
.explore-also li + li[b-mde3zw2yli] { margin-top: 6px; }
.explore-copy .explore-coming[b-mde3zw2yli] { font-size: 15px; line-height: 1.6; }
.chip-coming[b-mde3zw2yli] { display: inline-flex; align-items: center; margin-right: 6px; padding: 1px 9px; border: 1px solid var(--rk-selection); border-radius: var(--rk-radius-pill); background: var(--rk-selection-surface); color: var(--rk-link); font-size: 13px; font-weight: 600; line-height: 1.5; vertical-align: 2px; }
.explore-figure[b-mde3zw2yli] { min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-card); background: var(--rk-glass-solid); box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), var(--rk-shadow); cursor: zoom-in; }
.explore-figure picture[b-mde3zw2yli], .explore-figure img[b-mde3zw2yli] { display: block; width: 100%; height: auto; }
.explore-figure figcaption[b-mde3zw2yli] { padding: 10px 14px; border-top: 1px solid var(--rk-line-subtle); color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; }
.explore-more[b-mde3zw2yli] { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(var(--more-count, 3), minmax(0, 1fr)); gap: 18px; align-items: stretch; min-width: 0; }
/* Cards in a row share one height, so their pictures and captions line up. */
.explore-more .explore-figure[b-mde3zw2yli] { display: flex; flex-direction: column; }
.explore-more .explore-figure figcaption[b-mde3zw2yli] { flex: 1; }
.explore-focus[b-mde3zw2yli] { grid-column: 1 / -1; max-width: 760px; scroll-margin-top: 24px; }
.explore-focus h3[b-mde3zw2yli] { margin: 0; font-size: 22px; line-height: 1.3; }
.explore-focus p[b-mde3zw2yli] { color: var(--rk-text-muted); font-size: 15px; line-height: 1.7; }
/* Desktop tidy: an illustration of the idea, not a capture. The base styles are the tidied desktop, the calm still
   for reduced motion and no script. .is-armed (landing.js) plays the 10 s story over it, on transform and opacity only,
   and every last keyframe equals its base style. Places are percentages of the stage, so one set fits every width.
   Lumo is the app's sprites at their own box (69 x 118), with the feather at each pose's grips from LumoSprite.cs. */
.explore-tidy[b-mde3zw2yli] { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); align-items: center; gap: 56px; min-width: 0; scroll-margin-top: 24px; }
.tidy-copy[b-mde3zw2yli] { min-width: 0; }
.tidy-copy h3[b-mde3zw2yli] { margin: 0; font-size: 22px; line-height: 1.3; }
.tidy-copy .tidy-lead[b-mde3zw2yli] { margin: 14px 0 0; color: var(--rk-text); font-size: 17px; line-height: 1.6; }
.tidy-figure[b-mde3zw2yli] { min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-card); background: var(--rk-glass-solid); box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), var(--rk-shadow); }
.tidy-figure figcaption[b-mde3zw2yli] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 4px 14px; border-top: 1px solid var(--rk-line-subtle); color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; }
.tidy-toggle[b-mde3zw2yli] { flex: none; min-height: 44px; padding: 0 2px; border: 0; background: none; color: var(--rk-link); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.tidy-toggle:hover[b-mde3zw2yli] { text-decoration: underline; text-underline-offset: 4px; }
.tidy-toggle:focus-visible[b-mde3zw2yli] { outline: 2px solid var(--rk-focus); outline-offset: 2px; }
.tidy-stage[b-mde3zw2yli] { position: relative; aspect-ratio: 16 / 10; overflow: hidden; container-type: size; contain: strict; background: #1d3a66; }
.tidy-inner[b-mde3zw2yli] { position: absolute; inset: 0; --u: clamp(.78px, .175cqw, 1.2px); --tidy-perch: translate(calc(68cqw + 22 * var(--u)), calc(64cqh - 31 * var(--u))); color: #fff; font-size: 13px; line-height: 1.25; }
.tidy-defs[b-mde3zw2yli] { position: absolute; }
.tidy-wall[b-mde3zw2yli] { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.tidy-bar[b-mde3zw2yli] { position: absolute; left: 0; right: 0; bottom: 0; height: 18px; background: rgb(10 18 32 / 62%); }

.tidy-beacon[b-mde3zw2yli] { position: absolute; left: calc(var(--x) * 1%); top: calc(var(--y) * 1%); width: 0; height: 0; }
.tidy-orb[b-mde3zw2yli] { position: absolute; left: -24px; top: -24px; display: grid; place-items: center; width: 48px; height: 48px; border: 1.5px solid rgb(165 231 255 / 50%); border-radius: 50%; background: rgb(21 38 57 / 82%); box-shadow: 0 0 18px rgb(165 231 255 / 35%); }
.tidy-count[b-mde3zw2yli] { position: absolute; right: -5px; top: -5px; width: 22px; height: 22px; overflow: hidden; border-radius: 11px; background: #a5e7ff; color: #0d1a27; font-weight: 700; }
.tidy-digits[b-mde3zw2yli] { display: block; }
.tidy-digits i[b-mde3zw2yli] { display: block; height: 22px; font-style: normal; line-height: 22px; text-align: center; }
.tidy-digits-docs[b-mde3zw2yli] { transform: translateY(-88px); }
.tidy-digits-pics[b-mde3zw2yli] { transform: translateY(-44px); }
.tidy-pill[b-mde3zw2yli] { position: absolute; left: -52px; top: 28px; width: 104px; padding: 2px 4px; border-radius: 8px; background: rgb(14 22 38 / 84%); font-weight: 600; text-align: center; }

.tidy-file[b-mde3zw2yli] { position: absolute; z-index: 2; left: calc(var(--x) * 1%); top: calc(var(--y) * 1%); width: 0; height: 0; opacity: 0; transform-origin: 0 0; }
.tidy-file-in[b-mde3zw2yli] { position: absolute; left: -38px; top: -18px; width: 76px; text-align: center; text-shadow: 0 1px 3px rgb(0 0 0 / 95%); }
.tidy-file-in svg[b-mde3zw2yli] { display: block; margin: 0 auto 2px; filter: drop-shadow(0 2px 3px rgb(0 0 0 / 45%)); }
.tidy-name[b-mde3zw2yli] { display: block; font-weight: 500; }

.tidy-card[b-mde3zw2yli] { position: absolute; top: 64%; left: 52%; right: 3%; padding: 10px 12px; border: 1px solid rgb(165 231 255 / 24%); border-radius: 10px; background: rgb(14 22 38 / 94%); }
.tidy-card strong[b-mde3zw2yli], .tidy-card > span[b-mde3zw2yli] { display: block; }
.tidy-card strong[b-mde3zw2yli] { font-size: 15px; font-weight: 650; }
.tidy-card > span:not(.tidy-acts)[b-mde3zw2yli] { margin-top: 3px; color: #c7d4e6; }
.tidy-acts[b-mde3zw2yli] { display: flex; gap: 6px; margin-top: 8px; }
.tidy-acts b[b-mde3zw2yli] { padding: 3px 10px; border: 1px solid rgb(255 255 255 / 22%); border-radius: 6px; font-weight: 600; }
.tidy-acts .tidy-done[b-mde3zw2yli] { margin-left: auto; border-color: var(--rk-primary); background: var(--rk-primary); color: var(--rk-primary-text); }

.tidy-lumo[b-mde3zw2yli] { position: absolute; z-index: 1; left: 0; top: 0; width: 0; height: 0; transform: var(--tidy-perch); }
.tidy-bob[b-mde3zw2yli] { position: absolute; left: 0; top: 0; }
.tidy-pose[b-mde3zw2yli] { position: absolute; left: calc(-57 * var(--u)); top: calc(-62 * var(--u)); width: calc(69 * var(--u)); height: calc(118 * var(--u)); opacity: 0; }
.tidy-pose-rest[b-mde3zw2yli] { opacity: 1; }
.tidy-body[b-mde3zw2yli] { position: absolute; inset: 0; width: 100%; height: 100%; }
.tidy-feather[b-mde3zw2yli] { position: absolute; left: calc(var(--fl) * var(--u)); top: calc(var(--ft) * var(--u)); width: calc(var(--fw) * var(--u)); height: calc(var(--fh) * var(--u)); max-width: none; transform-origin: 50% 92%; transform: rotate(var(--fa)); }
.tidy-pose-float .tidy-feather[b-mde3zw2yli] { --fl: 8.797; --ft: -4.005; --fw: 13.886; --fh: 55.19; --fa: 38deg; }
.tidy-pose-carry .tidy-feather[b-mde3zw2yli] { --fl: 1.935; --ft: -8.632; --fw: 14.87; --fh: 59.1; --fa: 40.1deg; }
.tidy-pose-stash .tidy-feather[b-mde3zw2yli] { --fl: 7.629; --ft: -1.629; --fw: 14.062; --fh: 55.89; --fa: 37.5deg; }

.tidy-stage.is-armed:not(.is-playing) *[b-mde3zw2yli] { animation-play-state: paused !important; }
.is-armed .tidy-lumo[b-mde3zw2yli] { will-change: transform; animation: tidy-lumo-b-mde3zw2yli 10s ease-in-out both; }
.is-armed .tidy-bob[b-mde3zw2yli] { animation: tidy-bob-b-mde3zw2yli .75s ease-in-out infinite alternate; }
.is-armed .tidy-pose-float[b-mde3zw2yli] { animation: tidy-float-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-pose-carry[b-mde3zw2yli] { animation: tidy-carry-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-pose-stash[b-mde3zw2yli] { animation: tidy-stash-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-pose-rest[b-mde3zw2yli] { animation: tidy-rest-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-file-carried[b-mde3zw2yli] { animation: tidy-file-carried-b-mde3zw2yli 10s ease-in-out both; }
.is-armed .tidy-file-carried .tidy-name[b-mde3zw2yli] { animation: tidy-name-out-b-mde3zw2yli .2s linear 1.65s both; }
.is-armed .tidy-file-a[b-mde3zw2yli] { animation: tidy-file-stash-b-mde3zw2yli .28s ease-in 3.72s both; }
.is-armed .tidy-file-b[b-mde3zw2yli] { animation: tidy-file-stash-b-mde3zw2yli .28s ease-in 4.42s both; }
.is-armed .tidy-file-c[b-mde3zw2yli] { animation: tidy-file-stash-b-mde3zw2yli .28s ease-in 5.12s both; }
.is-armed .tidy-file-d[b-mde3zw2yli] { animation: tidy-file-stash-b-mde3zw2yli .28s ease-in 7.22s both; }
.is-armed .tidy-file-e[b-mde3zw2yli] { animation: tidy-file-stash-b-mde3zw2yli .28s ease-in 7.92s both; }
.is-armed .tidy-digits-docs[b-mde3zw2yli] { animation: tidy-digits-docs-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-digits-pics[b-mde3zw2yli] { animation: tidy-digits-pics-b-mde3zw2yli 10s linear both; }
.is-armed .tidy-orb-docs[b-mde3zw2yli] { animation: tidy-pulse-b-mde3zw2yli .5s ease-out 2.85s, tidy-pulse-b-mde3zw2yli .5s ease-out 6.25s; }
.is-armed .tidy-orb-pics[b-mde3zw2yli] { animation: tidy-pulse-b-mde3zw2yli .5s ease-out 8.85s; }
.is-armed .tidy-card[b-mde3zw2yli] { animation: tidy-card-b-mde3zw2yli 10s ease-out both; }

@keyframes tidy-lumo-b-mde3zw2yli {
    0%, 6% { transform: translate(118cqw, 135cqh); }
    14%, 17% { transform: translate(13cqw, 19cqh); }
    28%, 30% { transform: translate(74cqw, 16cqh); }
    37%, 39% { transform: translate(58cqw, 24cqh); }
    44%, 46% { transform: translate(40cqw, 48cqh); }
    51%, 53% { transform: translate(16cqw, 52cqh); }
    62%, 66% { transform: translate(74cqw, 16cqh); }
    72%, 74% { transform: translate(36cqw, 15cqh); }
    79%, 81% { transform: translate(26cqw, 78cqh); }
    88%, 90% { transform: translate(74cqw, 45cqh); }
    96%, 100% { transform: var(--tidy-perch); }
}
@keyframes tidy-bob-b-mde3zw2yli { from { transform: translateY(-2px); } to { transform: translateY(3px); } }
@keyframes tidy-float-b-mde3zw2yli {
    0%, 16%, 29%, 37%, 40%, 44%, 47%, 51%, 54%, 61%, 67%, 72%, 75%, 79%, 82%, 87%, 91%, 96% { opacity: 1; }
    17%, 28%, 38%, 39%, 45%, 46%, 52%, 53%, 62%, 66%, 73%, 74%, 80%, 81%, 88%, 90%, 97%, 100% { opacity: 0; }
}
@keyframes tidy-carry-b-mde3zw2yli { 0%, 16%, 29%, 100% { opacity: 0; } 17%, 28% { opacity: 1; } }
@keyframes tidy-stash-b-mde3zw2yli {
    0%, 37%, 40%, 44%, 47%, 51%, 54%, 61%, 67%, 72%, 75%, 79%, 82%, 87%, 91%, 100% { opacity: 0; }
    38%, 39%, 45%, 46%, 52%, 53%, 62%, 66%, 73%, 74%, 80%, 81%, 88%, 90% { opacity: 1; }
}
@keyframes tidy-rest-b-mde3zw2yli { 0%, 96% { opacity: 0; } 97%, 100% { opacity: 1; } }
@keyframes tidy-file-carried-b-mde3zw2yli {
    0%, 16% { opacity: 1; transform: none; }
    17% { opacity: 1; transform: scale(.8); }
    28% { opacity: 1; transform: translate(61cqw, -3cqh) scale(.8); }
    30%, 100% { opacity: 0; transform: translate(71cqw, -4cqh) scale(.2); }
}
@keyframes tidy-name-out-b-mde3zw2yli { from { opacity: 1; } to { opacity: 0; } }
@keyframes tidy-file-stash-b-mde3zw2yli {
    from { opacity: 1; transform: none; }
    to { opacity: 0; transform: translate(calc(-30 * var(--u)), calc(22 * var(--u))) scale(.2); }
}
@keyframes tidy-digits-docs-b-mde3zw2yli {
    0%, 29% { transform: none; }
    30%, 62.5% { transform: translateY(-22px); }
    63.5%, 64% { transform: translateY(-44px); }
    65%, 65.5% { transform: translateY(-66px); }
    66.5%, 100% { transform: translateY(-88px); }
}
@keyframes tidy-digits-pics-b-mde3zw2yli {
    0%, 88.5% { transform: none; }
    89.5%, 90% { transform: translateY(-22px); }
    91%, 100% { transform: translateY(-44px); }
}
@keyframes tidy-pulse-b-mde3zw2yli { 40% { transform: scale(1.14); } }
@keyframes tidy-card-b-mde3zw2yli { 0%, 90% { opacity: 0; transform: translateY(10px); } 94%, 100% { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
    .tidy-stage *[b-mde3zw2yli] { animation: none !important; }
}
@supports not (width: 1cqw) {
    .tidy-lumo[b-mde3zw2yli] { display: none; }
}
.explore-return[b-mde3zw2yli] { margin-top: 56px; }
a:focus-visible[b-mde3zw2yli] { outline: 2px solid var(--rk-focus); outline-offset: 2px; }
@media (max-width: 899px) {
    .explore-step[b-mde3zw2yli], .explore-step:nth-of-type(even)[b-mde3zw2yli] { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-top: 48px; padding-top: 48px; }
    .explore-step:nth-of-type(even) .explore-figure[b-mde3zw2yli] { order: 0; }
    .explore-more[b-mde3zw2yli] { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .explore-tidy[b-mde3zw2yli] { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 640px) {
    .explore[b-mde3zw2yli] { padding: 24px 16px 64px; }
    h1[b-mde3zw2yli] { font-size: 33px; }
    h2[b-mde3zw2yli] { font-size: 28px; }
    .explore-intro[b-mde3zw2yli] { font-size: 15px; }
    .tidy-stage[b-mde3zw2yli] { aspect-ratio: 1; }
    .tidy-inner[b-mde3zw2yli] { --tidy-perch: translate(calc(52cqw + 22 * var(--u)), calc(64cqh - 31 * var(--u))); }
    .tidy-card[b-mde3zw2yli] { left: 34%; }
    .tidy-figure figcaption[b-mde3zw2yli] { align-items: flex-start; padding-top: 8px; }
}
/* /Components/Pages/HealthData.razor.rz.scp.css */
.legal-page[b-vzxayvy4md] {
    padding: 84px 28px;
}

.legal-card[b-vzxayvy4md] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-vzxayvy4md] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-vzxayvy4md] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-vzxayvy4md],
.legal-section p[b-vzxayvy4md],
.legal-section li[b-vzxayvy4md],
.legal-updated[b-vzxayvy4md] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-vzxayvy4md] {
    margin-bottom: 28px;
}

.legal-warning[b-vzxayvy4md] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-vzxayvy4md] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-vzxayvy4md] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-vzxayvy4md] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-vzxayvy4md] {
    margin-bottom: 0;
}

.legal-section ul[b-vzxayvy4md] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-vzxayvy4md] {
    margin-top: 8px;
}

.legal-section a[b-vzxayvy4md],
.legal-card a[b-vzxayvy4md] {
    color: #8ddb8c;
}

.legal-updated[b-vzxayvy4md] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

@media (max-width: 640px) {
    .legal-page[b-vzxayvy4md] {
        padding: 56px 18px;
    }

    .legal-card[b-vzxayvy4md] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-vzxayvy4md] {
        font-size: 34px;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* Colours, shapes and glass come from the app's tokens: see wwwroot/rk-tokens.css. */
/* no-contextual: Inter would otherwise draw the "x" in "x64" as a multiplication sign. */
section[b-f7fk5hscpz] { scroll-margin-top: 92px; font-family: Inter, "Segoe UI", sans-serif; letter-spacing: 0; font-variant-ligatures: no-contextual; }
section *[b-f7fk5hscpz], section *[b-f7fk5hscpz]::before, section *[b-f7fk5hscpz]::after { box-sizing: border-box; letter-spacing: 0; }
.container[b-f7fk5hscpz] { width: 100%; max-width: 1176px; margin: 0 auto; padding: 0 28px; }
h1[b-f7fk5hscpz], h2[b-f7fk5hscpz], h3[b-f7fk5hscpz], p[b-f7fk5hscpz], figure[b-f7fk5hscpz] { margin: 0; }
a[b-f7fk5hscpz] { color: var(--rk-link); }
.button[b-f7fk5hscpz] { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 22px; border: 1px solid transparent; border-radius: var(--rk-radius-control); font: 600 14px/1.4 Inter, "Segoe UI", sans-serif; text-align: center; text-decoration: none; cursor: pointer; transition: border-color var(--rk-motion-fast), box-shadow var(--rk-motion-fast); }
.button-primary[b-f7fk5hscpz] { background: var(--rk-primary); color: var(--rk-primary-text); }
.button-primary:hover:not(:disabled):not(:focus-visible)[b-f7fk5hscpz] { box-shadow: inset 0 0 0 1px currentColor; }
.button-outline[b-f7fk5hscpz] { border-color: var(--rk-line); color: var(--rk-text); background: transparent; }
.button-outline:hover:not(:disabled):not(:focus-visible)[b-f7fk5hscpz] { box-shadow: inset 0 0 0 1px currentColor; }
.button-quiet[b-f7fk5hscpz] { color: var(--rk-link); background: transparent; }
.button-block[b-f7fk5hscpz] { width: 100%; }
.button:disabled[b-f7fk5hscpz] { cursor: wait; opacity: .65; }
a:focus-visible[b-f7fk5hscpz], button:focus-visible[b-f7fk5hscpz], summary:focus-visible[b-f7fk5hscpz], input:focus-visible[b-f7fk5hscpz] { outline: 2px solid var(--rk-focus); outline-offset: 2px; }
section[b-f7fk5hscpz]  .mud-icon-root { width: 20px; height: 20px; flex: 0 0 auto; }

/* Hero and problem are one scene: this painting falls into the page colour like dusk, and the
   problem section's faint painting rises out of the same darkness, overlapping its fade. Masks,
   not overlays, so there is no second colour to leave a seam. Neither blocks a click. */
.opening-scene[b-f7fk5hscpz] { position: relative; isolation: isolate; background: var(--rk-background); }
.hero[b-f7fk5hscpz] { position: relative; color: var(--rk-text); --art-w: clamp(1040px, 86vw, 1320px); --hero-mask: radial-gradient(ellipse calc(var(--art-w) * .58) 470px at calc(50% - var(--art-w) * .27) 300px, #000 34%, rgb(0 0 0 / 60%) 52%, rgb(0 0 0 / 26%) 68%, rgb(0 0 0 / 8%) 84%, transparent 100%); }
.hero-inner[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: center; min-height: 560px; max-width: 1360px; margin: 0 auto; padding: 12px 40px 16px; }
.hero-art[b-f7fk5hscpz] { position: absolute; z-index: -1; inset: 0 0 -200px; overflow: hidden; pointer-events: none; -webkit-mask-image: var(--hero-mask); mask-image: var(--hero-mask); }
.hero-art img[b-f7fk5hscpz] { position: absolute; display: block; width: var(--art-w); max-width: none; height: auto; left: calc(50% - var(--art-w) * .6); top: calc(var(--art-w) * -.15); }
.hero-copy[b-f7fk5hscpz] { position: relative; grid-column: 2; min-width: 0; }
.hero h1[b-f7fk5hscpz] { color: var(--rk-text); font-size: 50px; line-height: 1.12; font-weight: 650; text-wrap: balance; }
.hero-lede[b-f7fk5hscpz] { margin-top: 18px; color: var(--rk-text); font-size: 17px; line-height: 1.65; }
.hero-signup[b-f7fk5hscpz] { max-width: 560px; margin: 24px 0 0; }
.hero-signup > label[b-f7fk5hscpz] { display: block; margin-bottom: 7px; color: var(--rk-text); }
.hero-actions[b-f7fk5hscpz] { display: flex; margin-top: 24px; }
.hero-cta-note[b-f7fk5hscpz] { margin-top: 12px; color: var(--rk-text); font-size: 13px; }
/* Quiet on purpose: a small way down to the real window, beneath the sign-up and never competing with it. */
.hero-peek[b-f7fk5hscpz] { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; margin-top: 4px; color: var(--rk-link); font-size: 14px; text-decoration: none; }
.hero-peek:hover[b-f7fk5hscpz] { text-decoration: underline; text-underline-offset: 4px; }
.hero-peek[b-f7fk5hscpz]  .mud-icon-root { width: 16px; height: 16px; }

.pricing[b-f7fk5hscpz], .faq[b-f7fk5hscpz] { color: var(--rk-text); }
.section-head[b-f7fk5hscpz] { max-width: 760px; margin: 0 auto 36px; text-align: center; }
.section-head-left[b-f7fk5hscpz] { margin-left: 0; text-align: left; }
.kicker[b-f7fk5hscpz] { display: block; color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; font-weight: 700; text-transform: uppercase; margin-bottom: 12px; }
.kicker-earned[b-f7fk5hscpz] { color: var(--rk-earned); }
.section-head h2[b-f7fk5hscpz] { font-size: 34px; line-height: 1.2; font-weight: 550; text-wrap: balance; }
.section-head p[b-f7fk5hscpz] { max-width: 660px; margin: 16px auto 0; font-size: 16px; line-height: 1.7; color: var(--rk-text-muted); }
.section-head-left p[b-f7fk5hscpz] { margin-left: 0; }

/* The app's card: glass, a light top edge and a soft shadow (rk-card in foundation.css). */
.glass-card[b-f7fk5hscpz] { min-width: 0; padding: 20px; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-card); background: var(--rk-glass-surface); backdrop-filter: blur(var(--rk-glass-blur)); -webkit-backdrop-filter: blur(var(--rk-glass-blur)); box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), var(--rk-shadow); }
/* A notice, so periwinkle (the app's rk-chip--selected). */
.chip-coming[b-f7fk5hscpz] { display: inline-flex; align-items: center; padding: 1px 9px; border: 1px solid var(--rk-selection); border-radius: var(--rk-radius-pill); background: var(--rk-selection-surface); color: var(--rk-link); font-size: 13px; font-weight: 600; line-height: 1.5; vertical-align: 2px; }

/* Section 2 is the page's dramatic moment: a story read top to bottom over a faint
   painting. The dim layer deepens the art until the turn, where it brightens. */
.problem[b-f7fk5hscpz] { color: var(--rk-text); }
.problem-story[b-f7fk5hscpz] { position: relative; isolation: isolate; padding: 56px 0 88px; }
/* Reaches up into the hero's fade. Faint until the turn, where the mask lets more through. */
.problem-art[b-f7fk5hscpz] { position: absolute; z-index: -1; inset: -160px 0 0; overflow: hidden; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 0, rgb(0 0 0 / 42%) 320px, rgb(0 0 0 / 58%) 58%, #000 84%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0, rgb(0 0 0 / 42%) 320px, rgb(0 0 0 / 58%) 58%, #000 84%, transparent 100%); }
.problem-art img[b-f7fk5hscpz] { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; opacity: .56; }
.problem-column[b-f7fk5hscpz] { max-width: 860px; text-align: center; }
.problem-column h2[b-f7fk5hscpz] { font-size: 54px; line-height: 1.12; font-weight: 600; text-wrap: balance; }

.pain-list[b-f7fk5hscpz] { width: fit-content; max-width: 100%; margin: 44px auto 0; padding: 0; list-style: none; text-align: left; }
.pain-row[b-f7fk5hscpz] { display: flex; align-items: center; gap: 12px; padding: 5px 0; color: var(--rk-text); font-size: 15px; line-height: 23px; }
.pain-box[b-f7fk5hscpz] { position: relative; flex: none; width: 17px; height: 17px; border: 1.5px solid var(--rk-text-muted); border-radius: 4px; }
/* No border here, so the tick's box is the whole square. Its path spans 4.5 to 12.5 on a 17 grid, both ways. */
.pain-row.is-done .pain-box[b-f7fk5hscpz] { border: 0; background: var(--rk-done); color: var(--rk-done-surface); }
.pain-box svg[b-f7fk5hscpz] { position: absolute; inset: 0; display: block; width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
/* The end state is the default, so it needs neither JS nor motion. */
.pain-row:nth-child(4)[b-f7fk5hscpz] { opacity: .72; }
.pain-row:nth-child(5)[b-f7fk5hscpz] { opacity: .6; }
.pain-row:nth-child(6)[b-f7fk5hscpz] { opacity: .48; }
.pain-row:nth-child(7)[b-f7fk5hscpz] { opacity: .37; }
.pain-row:nth-child(8)[b-f7fk5hscpz] { opacity: .27; }
.pain-row:nth-child(9)[b-f7fk5hscpz] { opacity: .18; }
.pain-row:nth-child(10)[b-f7fk5hscpz] { opacity: .1; }
/* Only when the reveal script is running and motion is welcome: start whole, then fade once. */
@media (prefers-reduced-motion: no-preference) {
    .js-reveal .pain-list:not(.is-revealed) .pain-row[b-f7fk5hscpz] { opacity: 1; }
    .js-reveal .pain-list.is-revealed .pain-row[b-f7fk5hscpz] { transition: opacity 1400ms ease 500ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(5)[b-f7fk5hscpz] { transition-delay: 620ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(6)[b-f7fk5hscpz] { transition-delay: 740ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(7)[b-f7fk5hscpz] { transition-delay: 860ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(8)[b-f7fk5hscpz] { transition-delay: 980ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(9)[b-f7fk5hscpz] { transition-delay: 1100ms; }
    .js-reveal .pain-list.is-revealed .pain-row:nth-child(10)[b-f7fk5hscpz] { transition-delay: 1220ms; }
}

/* Easy to read first, clearly struck second: full text colour, and a thin, soft line through it. */
.story-belief[b-f7fk5hscpz] { margin-top: 72px; color: var(--rk-text); font: italic 450 42px/1.25 Newsreader, Georgia, serif; text-wrap: balance; }
.story-belief s[b-f7fk5hscpz] { text-decoration: line-through; text-decoration-color: rgb(229 138 154 / 70%); text-decoration-thickness: 1.5px; }
.story-plain[b-f7fk5hscpz] { margin-top: 28px; color: var(--rk-text); font-size: 20px; line-height: 1.55; text-wrap: balance; }
/* The planner sits behind the page: the real window rises under the last line and fades into Decisions. */
.problem-window[b-f7fk5hscpz] { position: relative; scroll-margin-top: 92px; width: min(100% - 56px, 1320px); margin: -16px auto -72px; cursor: zoom-in; }
.problem-window figcaption[b-f7fk5hscpz] { margin-bottom: 12px; color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; text-align: center; }
.problem-window picture[b-f7fk5hscpz] { display: block; }
.problem-window img[b-f7fk5hscpz] { display: block; width: 100%; height: auto; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-section) var(--rk-radius-section) 0 0; -webkit-mask-image: linear-gradient(to bottom, #000 96%, transparent 100%); mask-image: linear-gradient(to bottom, #000 96%, transparent 100%); }
.story-turn[b-f7fk5hscpz] { padding-top: 72px; color: var(--rk-primary); font-size: 36px; line-height: 1.25; font-weight: 550; text-wrap: balance; }
/* From 1100 px up: the list on the left and the story on the right, so it fills the width and fits about one screen. */
@media (min-width: 1100px) {
    .problem-story[b-f7fk5hscpz] { padding-bottom: 72px; }
    /* Slides the path's bright core behind the fading rows, clear of the words. */
    .problem-art img[b-f7fk5hscpz] { width: 118%; max-width: none; margin-left: -18%; }
    .problem-column[b-f7fk5hscpz] { max-width: 1176px; }
    .problem-column h2[b-f7fk5hscpz] { font-size: 46px; }
    .problem-grid[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); align-items: center; gap: 72px; max-width: 1040px; margin: 40px auto 0; text-align: left; }
    .pain-list[b-f7fk5hscpz] { margin: 0; justify-self: end; }
    .pain-row[b-f7fk5hscpz] { padding: 6px 0; font-size: 16px; }
    .story-belief[b-f7fk5hscpz] { margin-top: 0; font-size: 38px; }
    .story-plain[b-f7fk5hscpz] { margin-top: 18px; }
    .story-turn[b-f7fk5hscpz] { padding-top: 32px; font-size: 30px; }
}
.visually-hidden[b-f7fk5hscpz] { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* One base colour from header to footer: no section has a background, so there is no stripe and no
   line. Space alone separates them, 152 px from one section's end to the next one's start. */
.pillar[b-f7fk5hscpz] { padding: 76px 0; color: var(--rk-text); }
.pillar-decisions[b-f7fk5hscpz] { padding-top: 112px; }
/* The one exception to "paintings only" (owner, 5 Nov 2026): Focus sits above the sky painting on plain night, so a soft,
   cool light behind its two pictures lifts them off it. Test-LandingUi.ps1 allows this line and no other gradient. */
.pillar-attention[b-f7fk5hscpz] { background: radial-gradient(ellipse 60% 48% at 50% 66%, rgb(126 140 255 / 22%), rgb(126 140 255 / 7%) 55%, transparent 80%); }

/* Deep night: one painted sky behind the three pillars and the sign-up line. --sky-fire-y is how far the painting's
   small campfire sits above this block's bottom edge, whatever the width, so the sign-up line stays between the glow
   and its reflection. The fades are masks on the one base colour, so there is no edge. It never blocks a click. */
.middle-night[b-f7fk5hscpz] { position: relative; isolation: isolate; --sky-w: max(100vw, 1440px); --sky-fire-y: calc(var(--sky-w) * .108 + 5px); }
.middle-sky[b-f7fk5hscpz] { position: absolute; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 64px), transparent 100%); mask-image: linear-gradient(to bottom, #000 calc(100% - 64px), transparent 100%); }
.middle-sky img[b-f7fk5hscpz] { position: absolute; left: calc(50% + var(--sky-x, 0px)); bottom: calc(var(--sky-fire-y) - var(--sky-w) * .3735); display: block; width: var(--sky-w); max-width: none; height: auto; transform: translateX(-50%); -webkit-mask-image: linear-gradient(to bottom, transparent 4%, #000 26%); mask-image: linear-gradient(to bottom, transparent 4%, #000 26%); }

/* Decisions is the page's big moment, told in time: one painting of three lanterns, each brighter than the last, with
   each step's few words centred over its own lantern. The painting is sized from the page's width, and the words follow
   it through --flame, where the lantern's flame sits across the painting, so they stay paired at every width. It rises
   behind the headline and fades by masks. Its top third is the plain night sky the words sit on. */
.decisions-wide[b-f7fk5hscpz] { max-width: 1320px; }
.decisions-head[b-f7fk5hscpz] { margin: 0 auto; text-align: center; }
.decisions-head h2[b-f7fk5hscpz] { font-size: 46px; line-height: 1.14; font-weight: 600; text-wrap: balance; }
.no-break[b-f7fk5hscpz] { display: inline-block; }
.decisions-head .pillar-lead[b-f7fk5hscpz] { margin-top: 16px; color: var(--rk-text); font-size: 19px; line-height: 1.55; }
.decide-stage[b-f7fk5hscpz] { --art-w: min(2400px, max(1060px, 118vw)); --art-h: calc(var(--art-w) * .4444); --words-h: 136px; --block-w: clamp(240px, 23vw, 340px); position: relative; height: calc(var(--words-h) + var(--art-h) * .64); margin-top: 40px; overflow-x: clip; }
.decide-art[b-f7fk5hscpz] { position: absolute; z-index: -1; bottom: 0; left: 50%; width: var(--art-w); height: var(--art-h); margin-left: calc(var(--art-w) / -2); pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 24%, #000 90%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0, #000 24%, #000 90%, transparent 100%); }
.decide-art img[b-f7fk5hscpz] { display: block; width: 100%; height: 100%; }
.decide-steps[b-f7fk5hscpz] { position: relative; height: var(--words-h); margin: 0; padding: 0; list-style: none; }
.decide-step[b-f7fk5hscpz] { position: absolute; top: 0; left: calc(50% + (var(--flame) - .5) * var(--art-w)); width: var(--block-w); margin-left: calc(var(--block-w) / -2); text-align: center; }
.decide-when[b-f7fk5hscpz] { color: var(--rk-primary); font-size: 14px; font-weight: 600; line-height: 1.4; }
.decide-words[b-f7fk5hscpz] { margin: 6px 0 0; color: var(--rk-text); font-size: clamp(20px, 1.7vw, 24px); font-weight: 600; line-height: 1.25; text-wrap: balance; }
.decide-answer[b-f7fk5hscpz] { font: 450 clamp(19px, 1.5vw, 21px)/1.25 Newsreader, Georgia, serif; }
.decide-helped[b-f7fk5hscpz] { color: var(--rk-done); font: 600 1em/1.25 Inter, "Segoe UI", sans-serif; }
.decide-small[b-f7fk5hscpz] { margin-top: 8px; color: var(--rk-text); font-size: 15px; line-height: 1.4; }
.decide-crop[b-f7fk5hscpz] { display: none; }
/* Under the picture, small: the middle stays truly centred because the two sides share the width equally. */
.decisions-foot[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 8px 24px; margin-top: 12px; }
.decisions-foot .pillar-coming[b-f7fk5hscpz] { margin: 0; color: var(--rk-text); font-size: 14px; line-height: 1.6; }
.decide-note[b-f7fk5hscpz] { color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; text-align: center; }
.decisions-foot .decide-note[b-f7fk5hscpz] { justify-self: center; }
.decisions-foot .pillar-link[b-f7fk5hscpz] { justify-self: end; margin-top: 0; }
/* Stacked, words on the plain page colour, and under them a crop of the same file centred on that step's lantern: --crop
   is how much of the painting's width shows. The painting's whole height is .4444 of its width. Reduced transparency
   gets this too, so no words sit on a painting. */
@media (max-width: 899px), (prefers-reduced-transparency: reduce) {
    .decide-stage[b-f7fk5hscpz] { --crop: .39; --crop-ratio: 1.778; height: auto; margin-top: 36px; overflow: visible; }
    .decide-art[b-f7fk5hscpz] { display: none; }
    .decide-steps[b-f7fk5hscpz] { display: grid; gap: 4px; height: auto; }
    .decide-step[b-f7fk5hscpz] { position: static; width: auto; margin-left: 0; }
    .decide-when[b-f7fk5hscpz], .decide-words[b-f7fk5hscpz], .decide-small[b-f7fk5hscpz] { padding-inline: 24px; }
    .decide-crop[b-f7fk5hscpz] { position: relative; display: block; width: min(100%, 760px); margin: 0 auto; overflow: hidden; aspect-ratio: var(--crop-ratio); -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 26%, #000 86%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0, #000 26%, #000 86%, transparent 100%); }
    .decide-crop img[b-f7fk5hscpz] { position: absolute; left: calc(50% - var(--flame) * 100% / var(--crop)); top: calc(100% - .93 * .4444 * var(--crop-ratio) / var(--crop) * 100%); display: block; width: calc(100% / var(--crop)); max-width: none; height: auto; }
    .decide-words[b-f7fk5hscpz] { font-size: 24px; }
    .decide-answer[b-f7fk5hscpz] { font-size: 22px; }
    .decisions-foot[b-f7fk5hscpz] { grid-template-columns: minmax(0, 1fr); justify-items: center; margin-top: 16px; text-align: center; }
    .decisions-foot .pillar-link[b-f7fk5hscpz] { justify-self: center; }
}
@media (max-width: 560px) {
    .decide-stage[b-f7fk5hscpz] { --crop: .3; --crop-ratio: 1.4375; }
}

.pillar-copy[b-f7fk5hscpz] { min-width: 0; }
.pillar-copy h2[b-f7fk5hscpz] { font-size: 34px; line-height: 1.2; font-weight: 550; text-wrap: balance; }
.pillar-copy p[b-f7fk5hscpz] { max-width: 560px; margin-top: 14px; color: var(--rk-text-muted); font-size: 15px; line-height: 1.7; }
.pillar-copy .pillar-lead[b-f7fk5hscpz] { margin-top: 16px; color: var(--rk-text); font-size: 17px; line-height: 1.6; }
.pillar-copy .pillar-coming[b-f7fk5hscpz] { color: var(--rk-text); }
.pillar-link[b-f7fk5hscpz] { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 12px; color: var(--rk-link); font-size: 14px; font-weight: 600; text-decoration: none; }
.pillar-link:hover[b-f7fk5hscpz] { text-decoration: underline; text-underline-offset: 4px; }
.pillar-link[b-f7fk5hscpz]  .mud-icon-root { width: 16px; height: 16px; }
.pillar-journey .pillar-copy[b-f7fk5hscpz] { max-width: 680px; text-align: center; }
.pillar-journey .pillar-copy p[b-f7fk5hscpz] { margin-inline: auto; }
.journey-stack[b-f7fk5hscpz] { display: grid; justify-items: center; gap: 28px; }
.journey-links[b-f7fk5hscpz] { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 24px; margin-top: 12px; }
.journey-links .pillar-link[b-f7fk5hscpz] { margin-top: 0; }
/* Under the painting and the words, so it opens at the width of both. */
.journey-film[b-f7fk5hscpz] { grid-column: 1 / -1; width: 100%; margin-top: -12px; text-align: center; }
.journey-film[open][b-f7fk5hscpz] { text-align: left; }
.journey-film summary[b-f7fk5hscpz] { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--rk-link); font-size: 14px; font-weight: 600; cursor: pointer; list-style: none; }
/* The play mark replaces the browser's own triangle. */
.journey-film summary[b-f7fk5hscpz]::-webkit-details-marker { display: none; }
.film-mark[b-f7fk5hscpz] { flex: none; display: block; width: 11px; height: 11px; fill: currentColor; stroke: currentColor; stroke-width: 1; stroke-linejoin: round; }
.journey-film summary:hover[b-f7fk5hscpz] { text-decoration: underline; text-underline-offset: 4px; }
.journey-film-frame[b-f7fk5hscpz] { aspect-ratio: 16 / 9; margin-top: 8px; overflow: hidden; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-card); background: var(--rk-background); }
.journey-film-frame video[b-f7fk5hscpz] { display: block; width: 100%; height: 100%; object-fit: contain; }
/* The film's description and AI note read as quiet captions, with room below the frame. */
.journey-film p[b-f7fk5hscpz] { max-width: 72ch; margin: 14px 0 0; color: var(--rk-text-muted); font-size: 13px; line-height: 1.6; }
.journey-film p + p[b-f7fk5hscpz] { margin-top: 6px; }
/* The story, large: the app's own painting, whole, with its scene and chapter under it. */
.journey-painting[b-f7fk5hscpz] { width: 100%; min-width: 0; margin: 0; border-radius: var(--rk-radius-section); cursor: zoom-in; }
.journey-painting img[b-f7fk5hscpz] { display: block; width: 100%; height: auto; border-radius: var(--rk-radius-section); box-shadow: var(--rk-shadow); }
.journey-painting figcaption[b-f7fk5hscpz] { margin-top: 12px; text-align: center; }
@media (min-width: 1100px) {
    /* One feature among the others: the painting beside its words, about two-thirds of the width it had. */
    .journey-stack[b-f7fk5hscpz] { grid-template-columns: minmax(0, 2.1fr) minmax(0, 1fr); align-items: center; justify-items: stretch; gap: 56px; }
    .journey-painting[b-f7fk5hscpz] { order: -1; }
    .pillar-journey .pillar-copy[b-f7fk5hscpz] { max-width: none; text-align: left; }
    .pillar-journey .pillar-copy p[b-f7fk5hscpz] { margin-inline: 0; }
    .journey-links[b-f7fk5hscpz] { justify-content: flex-start; }
    .journey-painting figcaption[b-f7fk5hscpz] { text-align: left; }
    .journey-film[b-f7fk5hscpz] { margin-top: -32px; text-align: left; }
}
.journey-scene[b-f7fk5hscpz] { display: block; color: var(--rk-text); font: 450 26px/1.25 Newsreader, Georgia, serif; }
.journey-chapter[b-f7fk5hscpz] { display: block; margin-top: 4px; color: var(--rk-text-muted); font-size: 14px; line-height: 1.5; }

/* One calm loop: choose a step and its large window shows, with no timers. Without the script each step just sits above
   its own picture. From 1100 px up the steps run across the top with one window under them, as wide as the Your week
   window. Below that the picture opens under its row, one at a time. The rows stay in one list either way. */
.loop-wide[b-f7fk5hscpz] { max-width: 1376px; }
.loop-head[b-f7fk5hscpz] { max-width: none; }
.loop-steps[b-f7fk5hscpz] { margin: 28px 0 0; padding: 0; list-style: none; }
.loop-step[b-f7fk5hscpz] { min-width: 0; }
.loop-row[b-f7fk5hscpz] { display: grid; grid-template-columns: 76px minmax(0, 1fr) 12px; gap: 12px; align-items: baseline; align-content: center; width: 100%; padding: 14px 14px; border: 0; border-top: 1px solid var(--rk-line); background: transparent; color: var(--rk-text); font: inherit; text-align: left; }
.loop-step:last-child .loop-row[b-f7fk5hscpz] { border-bottom: 1px solid var(--rk-line); }
.loop-name[b-f7fk5hscpz] { font-size: 16px; font-weight: 600; line-height: 1.5; }
.loop-text[b-f7fk5hscpz] { grid-column: 2; color: var(--rk-text-muted); font-size: 14px; line-height: 1.6; }
button.loop-row[b-f7fk5hscpz] { cursor: pointer; transition: background-color var(--rk-motion-fast); }
button.loop-row:hover[b-f7fk5hscpz] { background: rgb(255 255 255 / 6%); }
button.loop-row:focus-visible[b-f7fk5hscpz] { outline-offset: -2px; }
button.loop-row[b-f7fk5hscpz]::after { content: ""; grid-column: 3; grid-row: 1; align-self: center; justify-self: end; width: 8px; height: 8px; border-top: 1.5px solid var(--rk-text-muted); border-right: 1.5px solid var(--rk-text-muted); transform: rotate(135deg); }
/* Selected: periwinkle, plus a bar that isn't colour alone, and the pressed state for assistive technology. */
.is-selected button.loop-row[b-f7fk5hscpz] { background: var(--rk-selection-surface); box-shadow: inset 4px 0 0 var(--rk-selection); }
.is-selected button.loop-row[b-f7fk5hscpz]::after { border-color: var(--rk-link); transform: rotate(-45deg); }
.is-selected .loop-name[b-f7fk5hscpz] { color: var(--rk-link); }
.is-selected .loop-text[b-f7fk5hscpz] { color: var(--rk-text); }
.loop-panel[b-f7fk5hscpz] { position: relative; min-width: 0; padding: 10px 0 20px; }
.is-enhanced .loop-panel[b-f7fk5hscpz] { display: none; }
.is-enhanced .is-selected .loop-panel[b-f7fk5hscpz] { display: block; }
.loop-window[b-f7fk5hscpz] { min-width: 0; margin: 0; border-radius: var(--rk-radius-section); cursor: zoom-in; }
.loop-window picture[b-f7fk5hscpz] { display: block; }
.loop-window img[b-f7fk5hscpz] { display: block; width: 100%; height: auto; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-section); background: var(--rk-glass-solid); box-shadow: var(--rk-shadow); }
/* One short line above the picture says what it is. Planned things wear the notice colour, like Coming. */
.loop-label[b-f7fk5hscpz] { margin-bottom: 10px; color: var(--rk-text-muted); font-size: 13px; line-height: 1.5; }
.loop-label.is-planned[b-f7fk5hscpz], .loop-label-planned[b-f7fk5hscpz] { color: var(--rk-link); font-weight: 600; }
.loop-more[b-f7fk5hscpz] { margin-top: 4px; }
/* Do's one line about Desktop tidy: the animation itself stays on Explore (owner, 5 Nov). */
.loop-aside[b-f7fk5hscpz] { margin: 10px 0 0; color: var(--rk-text-muted); font-size: 14px; line-height: 1.6; }
.loop-aside-link[b-f7fk5hscpz] { color: var(--rk-link); }
.attention-note[b-f7fk5hscpz] { color: var(--rk-text-muted); font-size: 15px; line-height: 1.65; }
/* 1.45 : 1 gives Activity (1664 × 1100) and the session card (1280 × 1232) one height, so both end on one line. */
.attention-pictures[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); align-items: start; gap: 28px; margin-top: 28px; }
.attention-pictures .loop-label[b-f7fk5hscpz] { padding-right: 0; }
.attention-more[b-f7fk5hscpz] { margin-top: 24px; }
.tracker-direction[b-f7fk5hscpz] { margin: 48px 0 0; max-width: 800px; color: var(--rk-text); font-size: 15px; line-height: 1.8; }
.tracker-direction .chip-coming[b-f7fk5hscpz] { margin-right: 8px; }
@media (max-width: 1199px) {
    .attention-pictures[b-f7fk5hscpz] { grid-template-columns: minmax(0, 1fr); }
    .attention-timer[b-f7fk5hscpz] { width: min(100%, 480px); }
}
@media (max-width: 640px) {
    #loop-panel-plan .loop-window picture[b-f7fk5hscpz], #loop-panel-reflect .loop-window[b-f7fk5hscpz] { overflow: hidden; }
    #loop-panel-plan .loop-window img[b-f7fk5hscpz] { height: clamp(320px, 105vw, 410px); object-fit: cover; object-position: 14% 54%; }
    #loop-panel-reflect .loop-window img[b-f7fk5hscpz] { height: 310px; object-fit: cover; object-position: left center; }
}
.loop-wide-panels[b-f7fk5hscpz] { display: none; }
@media (min-width: 1100px) {
    .loop-wide-panels[b-f7fk5hscpz] { display: block; }
    .loop-wide-panels .loop-panel[b-f7fk5hscpz] { display: none; padding: 16px 0 0; }
    .loop-wide-panels .loop-panel.is-selected[b-f7fk5hscpz] { display: block; }
    .loop-steps.is-enhanced[b-f7fk5hscpz] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: 8px; }
    .is-enhanced .loop-step[b-f7fk5hscpz] { display: contents; }
    /* Name over its one line, with the bar along the top. */
    .is-enhanced .loop-row[b-f7fk5hscpz], .is-enhanced .loop-step:last-child .loop-row[b-f7fk5hscpz] { display: flex; flex-direction: column; justify-content: flex-start; gap: 0; grid-row: 1; align-self: stretch; padding: 14px 16px 16px; border-top: 2px solid var(--rk-line); border-bottom: 0; border-radius: 0 0 var(--rk-radius-control) var(--rk-radius-control); }
    .is-enhanced .loop-step:nth-child(1) .loop-row[b-f7fk5hscpz] { grid-column: 1; }
    .is-enhanced .loop-step:nth-child(2) .loop-row[b-f7fk5hscpz] { grid-column: 2; }
    .is-enhanced .loop-step:nth-child(3) .loop-row[b-f7fk5hscpz] { grid-column: 3; }
    .is-enhanced .loop-step:nth-child(4) .loop-row[b-f7fk5hscpz] { grid-column: 4; }
    .is-enhanced .loop-step:nth-child(5) .loop-row[b-f7fk5hscpz] { grid-column: 5; }
    .is-enhanced .loop-name[b-f7fk5hscpz] { font-size: 17px; }
    .is-enhanced .loop-text[b-f7fk5hscpz] { margin-top: 4px; font-size: 13px; line-height: 1.5; }
    .is-enhanced button.loop-row[b-f7fk5hscpz]::after { content: none; }
    .is-selected button.loop-row[b-f7fk5hscpz] { box-shadow: inset 0 3px 0 var(--rk-selection); }
    .is-enhanced .loop-panel[b-f7fk5hscpz] { grid-row: 2; grid-column: 1 / -1; padding: 16px 0 0; }
    /* The label and the link share the line above the window, so the window stays as large as it can. */
    .loop-label[b-f7fk5hscpz] { min-height: 28px; margin-bottom: 8px; padding-right: 220px; line-height: 28px; }
    .loop-panel .loop-more[b-f7fk5hscpz] { position: absolute; top: 10px; right: 0; min-height: 28px; margin: 0; }
    .is-enhanced .loop-panel .loop-more[b-f7fk5hscpz] { top: 16px; }
}
@media (forced-colors: active) {
    .is-selected button.loop-row[b-f7fk5hscpz] { outline: 2px solid Highlight; outline-offset: -2px; }
}
/* In a sentence, so the underline says it's a link as well as the colour. Quiet, and solid on hover. */
.text-link[b-f7fk5hscpz] { text-decoration: underline; text-decoration-thickness: 1px; text-decoration-color: color-mix(in srgb, var(--rk-link) 45%, transparent); text-underline-offset: 3px; }
.text-link:hover[b-f7fk5hscpz] { text-decoration-color: currentColor; }

/* Where data goes: a warm home on the left, with dashed lines out to what can leave. Icons follow the app's
   line style: a 256 grid, round caps and joins. */
.data-map[b-f7fk5hscpz] { --data-gap: 64px; --data-line: color-mix(in srgb, var(--rk-primary) 72%, transparent); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr); align-items: stretch; gap: var(--data-gap); margin-top: 36px; }
.data-home-icon[b-f7fk5hscpz], .data-icon[b-f7fk5hscpz] { display: block; color: var(--rk-primary); fill: none; stroke: currentColor; stroke-width: 16; stroke-linecap: round; stroke-linejoin: round; }
.data-home[b-f7fk5hscpz] { display: flex; flex-direction: column; justify-content: center; padding: 24px 28px; border: 1px solid color-mix(in srgb, var(--rk-primary) 38%, transparent); border-radius: var(--rk-radius-section); background: var(--rk-glass-solid); box-shadow: 0 0 64px 6px color-mix(in srgb, var(--rk-primary) 15%, transparent), inset 0 0 56px color-mix(in srgb, var(--rk-primary) 9%, transparent); }
.data-home-icon[b-f7fk5hscpz] { flex: none; width: 44px; height: 44px; margin-bottom: 12px; stroke-width: 12; }
.data-home h3[b-f7fk5hscpz] { color: var(--rk-primary); font-size: 30px; font-weight: 600; line-height: 1.2; }
.data-home p[b-f7fk5hscpz] { margin-top: 6px; color: var(--rk-text); font-size: 17px; line-height: 1.5; }
.data-home .data-export[b-f7fk5hscpz] { margin-top: 16px; font-size: 14px; line-height: 1.55; }
.data-home-list[b-f7fk5hscpz] { display: flex; flex-wrap: wrap; gap: 6px; margin: 20px 0 0; padding: 0; list-style: none; }
.data-home-list li[b-f7fk5hscpz] { padding: 5px 10px; border: 1px solid var(--rk-line); border-radius: var(--rk-radius-pill); background: var(--rk-surface-raised); color: var(--rk-text); font-size: 14px; line-height: 1.4; }
.data-away[b-f7fk5hscpz] { display: flex; flex-direction: column; min-width: 0; }
/* Trimmed to its letters, so the words start level with the block's top edge. */
.data-away h3[b-f7fk5hscpz] { color: var(--rk-text); font-size: 18px; font-weight: 600; line-height: 1; text-box: trim-both cap alphabetic; }
.data-away-list[b-f7fk5hscpz] { flex: 1; display: grid; grid-auto-rows: 1fr; gap: 10px; margin: 16px 0 0; padding: 0; list-style: none; }
.data-away-list li[b-f7fk5hscpz] { position: relative; display: grid; grid-template-columns: 22px minmax(0, 1fr); align-items: center; gap: 14px; padding: 9px 16px; }
.data-icon[b-f7fk5hscpz] { width: 22px; height: 22px; }
/* Drawn, not read: the line from the block, and the dot where it reaches the card. */
.data-away-list li[b-f7fk5hscpz]::before { content: ""; position: absolute; top: 50%; left: calc(-1 * var(--data-gap) - 1px); width: var(--data-gap); border-top: 1.5px dashed var(--data-line); pointer-events: none; }
.data-away-list li[b-f7fk5hscpz]::after { content: ""; position: absolute; top: 50%; left: -5px; width: 8px; height: 8px; margin-top: -4px; border-radius: 50%; background: var(--rk-primary); box-shadow: 0 0 0 3px var(--rk-background); pointer-events: none; }
.data-away-list .glass-card[b-f7fk5hscpz] { background: color-mix(in srgb, var(--rk-glass-solid) 74%, transparent); }
.data-away-list h4[b-f7fk5hscpz] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font-size: 16px; font-weight: 600; line-height: 1.4; }
.data-away-list p[b-f7fk5hscpz] { margin-top: 2px; color: color-mix(in srgb, var(--rk-text) 82%, var(--rk-text-muted)); font-size: 14px; line-height: 1.55; }
.privacy-fine[b-f7fk5hscpz] { max-width: 760px; margin-top: 20px; padding: 16px 20px; border-radius: var(--rk-radius-control); background: rgb(14 22 38 / 94%); color: var(--rk-text); font-size: 13px; line-height: 1.7; }

/* A quiet line at the end of the privacy section, on the sky: no band, no card. The glow sits just above it and
   its reflection just below, and the dark tree line between them carries the words. */
.pillar-privacy[b-f7fk5hscpz] { padding-bottom: calc(var(--sky-w) * .1764 - 108px); }
.pillar-journey[b-f7fk5hscpz] { padding-top: 24px; }
.signup-line[b-f7fk5hscpz] { max-width: 600px; margin: calc(var(--sky-w) * .0972) auto 0; }
@media (min-width: 1100px) {
    /* Words at the top of the line, so they clear the small fire below them. */
    .signup-line[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); align-items: start; gap: 64px; max-width: none; }
}
.signup-line h3[b-f7fk5hscpz] { color: var(--rk-text); font-size: 24px; font-weight: 550; line-height: 1.25; text-wrap: balance; }
.signup-line-words p[b-f7fk5hscpz] { margin-top: 8px; color: var(--rk-text); font-size: 15px; line-height: 1.6; text-wrap: pretty; }
/* The answer after a press hangs below the form rather than pushing the page: the sky is anchored to the bottom of
   this block, so a taller line would drag the glow down onto the words. Solid, because it can land on the reflection. */
.signup-line form[b-f7fk5hscpz] { position: relative; }
.signup-line .beta-signup-status[b-f7fk5hscpz] { position: absolute; top: calc(100% + 8px); left: 0; margin: 0; padding: 4px 10px; border-radius: var(--rk-radius-control); background: var(--rk-glass-solid); }
.signup-line-words[b-f7fk5hscpz] { margin-bottom: 16px; }
@media (min-width: 1100px) {
    .signup-line-words[b-f7fk5hscpz] { margin-bottom: 0; }
}
.mid-cta[b-f7fk5hscpz] { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: calc(var(--sky-w) * .0972); padding-bottom: 57px; }
.mid-cta span[b-f7fk5hscpz] { color: var(--rk-text-muted); font-size: 13px; }

.pricing[b-f7fk5hscpz] { padding: 76px 0; }
.pricing-toggle[b-f7fk5hscpz] { display: flex; justify-content: center; margin: 0 auto 24px; }
.pricing-toggle button[b-f7fk5hscpz] { min-height: 44px; padding: 10px 22px; border: 1px solid var(--rk-line); background: transparent; color: var(--rk-text-muted); cursor: pointer; }
.pricing-toggle button.is-active[b-f7fk5hscpz] { border-color: var(--rk-selection); background: var(--rk-selection-surface); color: var(--rk-link); }
.pricing-grid[b-f7fk5hscpz] { max-width: 580px; margin: 0 auto; }
.price-card[b-f7fk5hscpz] { padding: 32px; border: 1px solid var(--rk-glass-edge); border-radius: var(--rk-radius-card); background: var(--rk-glass-surface); backdrop-filter: blur(var(--rk-glass-blur)); -webkit-backdrop-filter: blur(var(--rk-glass-blur)); box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), var(--rk-shadow); }
/* Something earned, so it may wear gold (the app's rk-chip--earned). */
.price-badge[b-f7fk5hscpz] { display: inline-block; margin-bottom: 20px; padding: 3px 10px; border-radius: var(--rk-radius-pill); background: var(--rk-earned-surface); color: var(--rk-earned); font-size: 13px; font-weight: 600; }
.price-head h3[b-f7fk5hscpz] { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
.price-head p[b-f7fk5hscpz], .price-card li[b-f7fk5hscpz], .price-terms[b-f7fk5hscpz] { font-size: 14px; line-height: 1.7; color: var(--rk-text-muted); }
.price-row[b-f7fk5hscpz] { display: flex; align-items: center; gap: 10px; margin: 24px 0; }
.price-row > strong[b-f7fk5hscpz] { font-size: 48px; }
.price-currency[b-f7fk5hscpz] { font-size: 24px; }
.price-cycle[b-f7fk5hscpz] { display: grid; gap: 4px; font-size: 14px; }
.price-cycle small[b-f7fk5hscpz] { max-width: 260px; font-size: 13px; line-height: 1.5; }
.price-card ul[b-f7fk5hscpz] { padding-left: 20px; margin-bottom: 24px; }
.price-terms[b-f7fk5hscpz] { margin-top: 20px; font-size: 13px; }
.pricing-footnote[b-f7fk5hscpz] { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; margin-top: 24px; color: var(--rk-text-muted); font-size: 13px; }
.pricing-footnote span[b-f7fk5hscpz] { display: inline-flex; align-items: center; gap: 6px; }

.faq[b-f7fk5hscpz] { padding: 76px 0; }
.faq-layout[b-f7fk5hscpz] { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 72px; }
.faq .section-head p[b-f7fk5hscpz] { font-size: 14px; }
.faq-contact[b-f7fk5hscpz] { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 18px; color: var(--rk-link); font-size: 13px; text-decoration: none; }
.faq-contact:hover[b-f7fk5hscpz] { text-decoration: underline; text-underline-offset: 4px; }
.faq-contact[b-f7fk5hscpz]  .mud-icon-root { width: 17px; height: 17px; }
.faq-list details[b-f7fk5hscpz] { border-bottom: 1px solid var(--rk-line); }
.faq-list details:first-child[b-f7fk5hscpz] { border-top: 1px solid var(--rk-line); }
.faq-list summary[b-f7fk5hscpz] { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 56px; padding: 16px 0; color: var(--rk-text); font-size: 15px; line-height: 1.5; font-weight: 550; list-style: none; cursor: pointer; }
.faq-list summary[b-f7fk5hscpz]::-webkit-details-marker { display: none; }
.faq-list summary[b-f7fk5hscpz]::marker { content: ""; }
.faq-list summary[b-f7fk5hscpz]  .faq-toggle { width: 18px; height: 18px; flex: 0 0 18px; color: var(--rk-link); transition: transform 160ms ease; }
.faq-list details[open] summary[b-f7fk5hscpz]  .faq-toggle { transform: rotate(45deg); }
.faq-list details[open] summary[b-f7fk5hscpz] { color: var(--rk-text); }
.faq-specs[b-f7fk5hscpz] { display: grid; gap: 0; max-width: 460px; margin: 0 0 14px; }
.faq-specs > div[b-f7fk5hscpz] { display: flex; justify-content: space-between; gap: 16px; padding: 7px 0; border-bottom: 1px solid var(--rk-line); font-size: 13px; line-height: 1.6; }
.faq-specs dt[b-f7fk5hscpz] { color: var(--rk-text-muted); }
.faq-specs dd[b-f7fk5hscpz] { margin: 0; color: var(--rk-text); text-align: right; }
.faq-list p[b-f7fk5hscpz] { max-width: 680px; padding: 0 32px 20px 0; color: var(--rk-text-muted); font-size: 14px; line-height: 1.8; }

.download[b-f7fk5hscpz] { position: relative; isolation: isolate; overflow: hidden; color: var(--rk-text); padding: 0 0 96px; }
.beta-access-box[b-f7fk5hscpz] { margin-top: 24px; container-type: inline-size; }
.beta-signup-form[b-f7fk5hscpz] { container-type: inline-size; }
.beta-signup-form > label:not(.beta-signup-consent)[b-f7fk5hscpz] { display: block; color: var(--rk-text); font-size: 13px; margin-bottom: 8px; }
.beta-signup-row[b-f7fk5hscpz] { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.beta-signup-row input[b-f7fk5hscpz] { width: 100%; min-width: 0; min-height: 48px; border: 1px solid var(--rk-text-muted); border-radius: var(--rk-radius-control); background: var(--rk-glass-solid); color: var(--rk-text); padding: 12px 14px; font: 400 14px/1.5 Inter, sans-serif; }
.beta-signup-row input[b-f7fk5hscpz]::placeholder { color: var(--rk-text-muted); opacity: 1; }
.beta-signup-row input:focus[b-f7fk5hscpz] { border-color: var(--rk-focus); }
.beta-signup-consent[b-f7fk5hscpz] { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; color: var(--rk-text); font-size: 13px; line-height: 1.6; cursor: pointer; }
.beta-signup-checkbox[b-f7fk5hscpz] { position: relative; display: inline-flex; flex: 0 0 16px; width: 16px; height: 16px; margin-top: 3px; }
.beta-signup-consent input[b-f7fk5hscpz] { appearance: none; -webkit-appearance: none; width: 16px; height: 16px; min-height: 16px; margin: 0; padding: 0; border: 1px solid var(--rk-text-muted); border-radius: 3px; background: var(--rk-surface); accent-color: var(--rk-selection); cursor: pointer; }
.beta-signup-consent input:not(:disabled):hover[b-f7fk5hscpz] { border-color: var(--rk-selection); }
.beta-signup-consent input:checked[b-f7fk5hscpz] { background: var(--rk-selection); border-color: var(--rk-selection); }
.beta-signup-consent input:focus-visible[b-f7fk5hscpz] { outline: 2px solid var(--rk-focus); outline-offset: 2px; }
.beta-signup-checkbox[b-f7fk5hscpz]  .beta-signup-check { position: absolute; inset: 2px; width: 12px; height: 12px; color: var(--rk-primary-text); opacity: 0; pointer-events: none; }
.beta-signup-checkbox input:checked[b-f7fk5hscpz] +  .beta-signup-check { opacity: 1; }
.beta-signup-consent input:disabled[b-f7fk5hscpz] { opacity: .6; cursor: not-allowed; }
.beta-signup-checkbox input:disabled:checked[b-f7fk5hscpz] +  .beta-signup-check { opacity: .6; }
.beta-signup-consent a[b-f7fk5hscpz], .beta-signup-help a[b-f7fk5hscpz] { text-underline-offset: 3px; }
.signup-phone-note[b-f7fk5hscpz] { display: none; margin-top: 12px; color: var(--rk-text); font-size: 13px; line-height: 1.6; }
.beta-signup-help[b-f7fk5hscpz] { margin-top: 10px; color: var(--rk-text); font-size: 13px; line-height: 1.6; text-wrap: pretty; }
.beta-signup-status[b-f7fk5hscpz] { margin-top: 12px; color: var(--rk-text); font-size: 13px; line-height: 1.7; }
.beta-signup-status.is-error[b-f7fk5hscpz] { color: var(--rk-missed); }
.beta-signup-status:empty[b-f7fk5hscpz], .beta-access-box .beta-signup-status:empty[b-f7fk5hscpz] { display: none; }
.beta-access-box .release-meta[b-f7fk5hscpz] { font-size: 13px; color: var(--rk-text); margin-top: 16px; }
.beta-email-fallback[b-f7fk5hscpz] { display: block; margin-top: 12px; color: var(--rk-link); font-size: 13px; line-height: 1.7; text-decoration: underline; }
.beta-signup-form.is-enhanced .beta-email-fallback[b-f7fk5hscpz] { display: none; }
.beta-signup-form:not(.is-enhanced) > label[b-f7fk5hscpz],
.beta-signup-form:not(.is-enhanced) > .beta-signup-row[b-f7fk5hscpz],
.beta-signup-form:not(.is-enhanced) > .beta-signup-consent[b-f7fk5hscpz],
.beta-signup-form:not(.is-enhanced) > .beta-signup-help[b-f7fk5hscpz] { display: none; }
.beta-honeypot[b-f7fk5hscpz] { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.release-meta[b-f7fk5hscpz] { margin-top: 14px; color: var(--rk-text); font-size: 13px; line-height: 1.7; }
.download-actions[b-f7fk5hscpz] { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
/* One ending, at first light: the painting's path and Lumo on the left, the two lines and the sign-up in the dark
   hills on the right. Both are sized from the page's width, so the words stay clear of the path and of Lumo.
   The painting fades by masks, and the words run on below it onto the page colour. */
.closing-art[b-f7fk5hscpz] { position: absolute; z-index: -1; top: calc(-.13 * 100vw); left: 0; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent 20%, #000 36%, #000 78%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 20%, #000 36%, #000 78%, transparent 100%); }
.closing-art img[b-f7fk5hscpz] { display: block; width: 100%; height: auto; }
.page-close-inner[b-f7fk5hscpz] { display: grid; justify-items: end; gap: 24px; padding-top: 34vw; }
.page-close-copy[b-f7fk5hscpz], .page-close-action[b-f7fk5hscpz] { width: min(100%, 520px); min-width: 0; }
.page-close-line[b-f7fk5hscpz] { color: var(--rk-text); font-size: 16px; }
.page-close-sub[b-f7fk5hscpz] { margin-top: 10px; color: var(--rk-text); font-size: 34px; font-weight: 550; line-height: 1.2; text-wrap: balance; }
.page-close-lead[b-f7fk5hscpz] { max-width: 620px; color: var(--rk-text); font-size: 15px; line-height: 1.7; }
.page-close-windows[b-f7fk5hscpz] { margin-top: 12px; color: var(--rk-text); font-size: 13px; line-height: 1.6; }

/* Field and button share a line, with the button sized to its words. Stack only when the
   field would get too tight for an email address, and keep the button that size. */
.beta-signup-row .button[b-f7fk5hscpz] { white-space: nowrap; }
@container (max-width: 420px) {
    .beta-signup-row[b-f7fk5hscpz] { grid-template-columns: 1fr; }
    .beta-signup-row .button[b-f7fk5hscpz] { justify-self: start; }
}
@media (max-width: 1099px) {
    /* Stacked: one rail down from the block, a short branch to each card. */
    .data-map[b-f7fk5hscpz] { --data-gap: 20px; grid-template-columns: minmax(0, 1fr); gap: 0; }
    .data-home[b-f7fk5hscpz] { padding: 24px; }
    .data-away[b-f7fk5hscpz] { margin-left: 24px; padding: 24px 0 0 var(--data-gap); }
    .data-away-list[b-f7fk5hscpz] { grid-auto-rows: auto; }
    .data-away-list li[b-f7fk5hscpz] { gap: 12px; padding: 12px 14px; }
    /* One rail, drawn in pieces because nothing may paint over the sky: the heading's piece, then each card's. It
       ends at the last card's branch. */
    .data-away h3[b-f7fk5hscpz] { position: relative; }
    .data-away h3[b-f7fk5hscpz]::before { content: ""; position: absolute; top: -24px; bottom: -16px; left: calc(-1 * var(--data-gap) - 1.5px); border-left: 1.5px dashed var(--data-line); pointer-events: none; }
    .data-away-list li > div[b-f7fk5hscpz]::before { content: ""; position: absolute; top: 0; bottom: -10px; left: calc(-1 * var(--data-gap) - 2.5px); border-left: 1.5px dashed var(--data-line); pointer-events: none; }
    .data-away-list li:last-child > div[b-f7fk5hscpz]::before { bottom: 50%; }
    /* The words are centred over the path here, so the painting is a little fainter. */
    .problem-art img[b-f7fk5hscpz] { opacity: .44; }
    /* Stacked, the line is taller, so the painting is larger, and slides so its small fire stays just off the left edge. */
    .middle-night[b-f7fk5hscpz] { --sky-w: 1900px; --sky-fire-y: 233px; --sky-x: calc(236px - 50vw); }
    .pillar-privacy[b-f7fk5hscpz] { padding-bottom: 150px; }
    /* A little more than in proportion, so the small print stays above the warm clouds. */
    .signup-line[b-f7fk5hscpz] { margin-top: 250px; }
    .signup-line[b-f7fk5hscpz] { margin-inline: 0; }
    /* Stacked, the small print is deeper, so it needs more room to stay above the warm clouds. */
    .mid-cta[b-f7fk5hscpz] { justify-content: flex-start; margin-top: 190px; }
    .middle-night:has(.mid-cta)[b-f7fk5hscpz] { --sky-w: max(100vw, 1440px); --sky-fire-y: calc(var(--sky-w) * .108 + 5px); --sky-x: -80px; }
    .pillar-privacy:has(.mid-cta)[b-f7fk5hscpz] { padding-bottom: calc(var(--sky-w) * .1764 - 108px); }
    /* Stacked, like the hero: the painting first, with the words below it and on the page colour. */
    .closing-art[b-f7fk5hscpz] { position: relative; z-index: auto; top: auto; aspect-ratio: 2 / 1; margin-bottom: -16px; -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 14%, #000 80%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0, #000 14%, #000 80%, transparent 100%); }
    .closing-art img[b-f7fk5hscpz] { position: absolute; left: 0; top: -55%; width: 130%; max-width: none; }
    .page-close-inner[b-f7fk5hscpz] { justify-items: stretch; max-width: 640px; padding-top: 0; }
    .page-close-copy[b-f7fk5hscpz], .page-close-action[b-f7fk5hscpz] { width: 100%; }
    /* Tablet and narrow windows: stack, so Lumo is never squeezed beside the form. */
    .hero-inner[b-f7fk5hscpz] { grid-template-columns: minmax(0, 1fr); max-width: 760px; min-height: 0; padding: 0 28px 28px; }
    .hero-copy[b-f7fk5hscpz] { grid-column: 1; }
    .hero-art[b-f7fk5hscpz] { position: relative; z-index: auto; inset: auto; aspect-ratio: 2 / 1; margin-bottom: -16px; -webkit-mask-image: linear-gradient(to bottom, #000 58%, rgb(0 0 0 / 50%) 80%, transparent 100%); mask-image: linear-gradient(to bottom, #000 58%, rgb(0 0 0 / 50%) 80%, transparent 100%); }
    .hero-art img[b-f7fk5hscpz] { left: -9%; top: -65%; width: 130%; }
}
@media (max-width: 1000px) {
    .faq-layout[b-f7fk5hscpz] { grid-template-columns: 240px minmax(0, 1fr); gap: 40px; }
}
@media (max-width: 760px) {
    .container[b-f7fk5hscpz] { padding: 0 20px; }
    /* Narrow: Lumo and the fire first, zoomed from the same image, with the words and form below. */
    .hero-inner[b-f7fk5hscpz] { padding: 0 20px 24px; }
    .hero-art[b-f7fk5hscpz] { aspect-ratio: 390 / 290; margin-bottom: -24px; }
    .hero-art img[b-f7fk5hscpz] { left: -12%; top: -51%; width: 150%; }
    .hero h1[b-f7fk5hscpz] { font-size: 38px; }
    .signup-phone-note[b-f7fk5hscpz] { display: block; }
    .hero-lede[b-f7fk5hscpz] { font-size: 15px; }
    .pricing[b-f7fk5hscpz], .faq[b-f7fk5hscpz], .pillar[b-f7fk5hscpz] { padding: 56px 0; }
    /* Taller again on a phone, with its phone note. */
    .middle-night[b-f7fk5hscpz] { --sky-w: 2500px; --sky-fire-y: 296px; --sky-x: -80px; }
    .pillar-privacy[b-f7fk5hscpz] { padding-bottom: 100px; }
    .signup-line[b-f7fk5hscpz] { margin-top: 250px; }
    .pillar-journey[b-f7fk5hscpz] { padding-top: 16px; padding-bottom: 44px; }
    /* Edge to edge, a crop of the same window at a size a phone can read. */
    .problem-window[b-f7fk5hscpz] { width: 100%; margin: -8px 0 -48px; }
    .problem-window figcaption[b-f7fk5hscpz] { padding-inline: 20px; }
    .problem-window img[b-f7fk5hscpz] { border-width: 1px 0 0; border-radius: 0; }
    /* Small enough that the second sentence keeps its own line. */
    .decisions-head h2[b-f7fk5hscpz] { font-size: min(34px, 8vw); }
    .decisions-head .pillar-lead[b-f7fk5hscpz] { font-size: 17px; }
    .problem-story[b-f7fk5hscpz] { padding: 40px 0 64px; }
    .problem-column h2[b-f7fk5hscpz] { font-size: 36px; }
    .pain-list[b-f7fk5hscpz] { margin-top: 32px; }
    .pain-row[b-f7fk5hscpz] { font-size: 14px; padding: 4px 0; }
    .story-belief[b-f7fk5hscpz] { margin-top: 52px; font-size: 31px; }
    .story-plain[b-f7fk5hscpz] { margin-top: 22px; font-size: 17px; }
    .story-turn[b-f7fk5hscpz] { padding-top: 52px; font-size: 26px; }
    .pillar-copy h2[b-f7fk5hscpz] { font-size: 28px; }
    .loop-row[b-f7fk5hscpz] { grid-template-columns: 64px minmax(0, 1fr) 12px; padding-inline: 10px; }
    .section-head h2[b-f7fk5hscpz] { font-size: 28px; }
    .section-head p[b-f7fk5hscpz] { font-size: 15px; }
    .faq-layout[b-f7fk5hscpz] { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .faq-list summary[b-f7fk5hscpz] { font-size: 14px; }
    .download[b-f7fk5hscpz] { padding: 0 0 56px; }
    .closing-art[b-f7fk5hscpz] { aspect-ratio: 390 / 290; margin-bottom: -24px; }
    .closing-art img[b-f7fk5hscpz] { left: -6%; top: -36%; width: 150%; }
    .page-close-line[b-f7fk5hscpz] { font-size: 14px; }
    .page-close-sub[b-f7fk5hscpz] { margin-top: 6px; font-size: 24px; }
    .mid-cta[b-f7fk5hscpz] { flex-wrap: wrap; gap: 10px 16px; padding-bottom: 29px; }
}
@media (max-width: 420px) {
    .container[b-f7fk5hscpz] { padding: 0 16px; }
    .hero-inner[b-f7fk5hscpz] { padding: 0 16px 24px; }
    /* Scales with the screen so each sentence of the pain line keeps its own line. */
    .problem-column h2[b-f7fk5hscpz] { font-size: 8vw; }
    .hero h1[b-f7fk5hscpz] { font-size: 33px; }
}
@media (forced-colors: active) {
    .beta-signup-consent input[b-f7fk5hscpz] { appearance: auto; -webkit-appearance: auto; background: revert; border: revert; accent-color: auto; }
    .beta-signup-consent input:focus-visible[b-f7fk5hscpz] { outline-color: Highlight; }
    .beta-signup-checkbox[b-f7fk5hscpz]  .beta-signup-check { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    *[b-f7fk5hscpz], *[b-f7fk5hscpz]::before, *[b-f7fk5hscpz]::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
/* Last on purpose: these have the same specificity as the rules they replace, so order decides.
   Reduced transparency means solid cards and text on the plain page colour, with no painting behind it. */
@media (prefers-reduced-transparency: reduce) {
    .glass-card[b-f7fk5hscpz], .data-away-list .glass-card[b-f7fk5hscpz], .price-card[b-f7fk5hscpz] { background: var(--rk-glass-solid); backdrop-filter: none; -webkit-backdrop-filter: none; }
    .data-home[b-f7fk5hscpz] { box-shadow: none; }
    .problem-art[b-f7fk5hscpz], .middle-sky[b-f7fk5hscpz] { display: none; }
    /* The ending keeps its painting, above the words at every width, so nothing sits behind them. */
    .closing-art[b-f7fk5hscpz] { position: relative; z-index: auto; top: auto; left: auto; aspect-ratio: 2 / 1; -webkit-mask-image: linear-gradient(to bottom, #000 70%, transparent 100%); mask-image: linear-gradient(to bottom, #000 70%, transparent 100%); }
    .closing-art img[b-f7fk5hscpz] { position: absolute; left: 0; top: -40%; width: 100%; }
    .page-close-inner[b-f7fk5hscpz] { justify-items: stretch; max-width: 640px; padding-top: 0; }
    .page-close-copy[b-f7fk5hscpz], .page-close-action[b-f7fk5hscpz] { width: 100%; }
    /* Lumo stays; the painting's fade ends before the words begin. */
    .hero[b-f7fk5hscpz] { --hero-mask: radial-gradient(ellipse calc(var(--art-w) * .3) 400px at calc(50% - var(--art-w) * .27) 300px, #000 55%, transparent 100%); }
}
/* Without masks: the painting keeps to its own half with soft shadowed edges, and the faint one goes. */
@supports not ((mask-image: linear-gradient(#000, #000)) or (-webkit-mask-image: linear-gradient(#000, #000))) {
    .problem-art[b-f7fk5hscpz], .middle-sky[b-f7fk5hscpz], .closing-art[b-f7fk5hscpz] { display: none; }
    /* The window can't fade here, so it keeps its own space rather than running under the next heading. */
    .problem-window[b-f7fk5hscpz] { margin-bottom: 40px; }
    .page-close-inner[b-f7fk5hscpz] { justify-items: stretch; max-width: 640px; padding-top: 0; }
    .page-close-copy[b-f7fk5hscpz], .page-close-action[b-f7fk5hscpz] { width: 100%; }
    .hero-art[b-f7fk5hscpz]::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 -70px 50px -20px var(--rk-background); }
    @media (min-width: 1100px) {
        .hero-art[b-f7fk5hscpz] { right: 50%; bottom: 0; }
        .hero-art[b-f7fk5hscpz]::after { box-shadow: inset 0 -70px 50px -20px var(--rk-background), inset -90px 0 60px -20px var(--rk-background); }
        /* The box is half as wide here, so Lumo would slide off the screen. */
        .hero-art img[b-f7fk5hscpz] { left: calc(100% - var(--art-w) * .6); }
    }
}
/* /Components/Pages/RegionalPrivacy.razor.rz.scp.css */
.legal-page[b-3up1pnpv1w] {
    padding: 84px 28px;
}

.legal-card[b-3up1pnpv1w] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-3up1pnpv1w] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-3up1pnpv1w] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-3up1pnpv1w],
.legal-section p[b-3up1pnpv1w],
.legal-section li[b-3up1pnpv1w],
.legal-updated[b-3up1pnpv1w] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-3up1pnpv1w] {
    margin-bottom: 28px;
}

.legal-warning[b-3up1pnpv1w] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-3up1pnpv1w] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
    scroll-margin-top: 96px;
}

.legal-section h2[b-3up1pnpv1w] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

/* Sub-headings inside the long United States section. */
.legal-section h3[b-3up1pnpv1w] {
    margin: 22px 0 8px;
    color: #e6eaef;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.legal-section h3:first-of-type[b-3up1pnpv1w] {
    margin-top: 12px;
}

.legal-section p[b-3up1pnpv1w] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-3up1pnpv1w] {
    margin-bottom: 0;
}

.legal-section ul[b-3up1pnpv1w] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-3up1pnpv1w] {
    margin-top: 8px;
}

.legal-section a[b-3up1pnpv1w],
.legal-card a[b-3up1pnpv1w] {
    color: #8ddb8c;
}

/* Region index. Wraps to as many rows as the viewport needs. */
.legal-jump[b-3up1pnpv1w] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
    padding: 18px 0 4px;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-jump a[b-3up1pnpv1w] {
    padding: 6px 12px;
    color: #c2c5cc;
    font-size: 13px;
    line-height: 1.3;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 999px;
    background: rgba(255,255,255,0.03);
    transition: border-color .18s ease, color .18s ease, background-color .18s ease;
}

.legal-jump a:hover[b-3up1pnpv1w],
.legal-jump a:focus-visible[b-3up1pnpv1w] {
    color: #8ddb8c;
    border-color: rgba(141, 219, 140, 0.38);
    background: rgba(141, 219, 140, 0.08);
}

/*
 * A jurisdiction we do not serve yet because the statutory appointment is
 * still open. Deliberately quieter than the amber pre-release warning: this is
 * a scope statement, not a defect.
 */
.legal-pending[b-3up1pnpv1w] {
    padding: 12px 14px;
    color: #aab3bf;
    font-size: 15px;
    border-left: 2px solid rgba(255,255,255,0.14);
    border-radius: 0 8px 8px 0;
    background: rgba(255,255,255,0.03);
}

.legal-updated[b-3up1pnpv1w] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

@media (max-width: 640px) {
    .legal-page[b-3up1pnpv1w] {
        padding: 56px 18px;
    }

    .legal-card[b-3up1pnpv1w] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-3up1pnpv1w] {
        font-size: 34px;
    }
}
/* /Components/Pages/WebsitePrivacy.razor.rz.scp.css */
.legal-page[b-rb6vc2ck2u] {
    padding: 84px 28px;
}

.legal-card[b-rb6vc2ck2u] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-rb6vc2ck2u] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-rb6vc2ck2u] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-rb6vc2ck2u],
.legal-section p[b-rb6vc2ck2u],
.legal-section li[b-rb6vc2ck2u],
.legal-updated[b-rb6vc2ck2u] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-rb6vc2ck2u] {
    margin-bottom: 28px;
}

.legal-warning[b-rb6vc2ck2u] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-rb6vc2ck2u] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-rb6vc2ck2u] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-rb6vc2ck2u] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-rb6vc2ck2u] {
    margin-bottom: 0;
}

.legal-section ul[b-rb6vc2ck2u] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-rb6vc2ck2u] {
    margin-top: 8px;
}

.legal-section a[b-rb6vc2ck2u],
.legal-card a[b-rb6vc2ck2u] {
    color: #8ddb8c;
}

.legal-card code[b-rb6vc2ck2u] {
    color: #d9e1e8;
    overflow-wrap: anywhere;
}

.legal-updated[b-rb6vc2ck2u] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

.legal-section h3[b-rb6vc2ck2u] {
    margin: 16px 0 6px;
    color: #e8edf2;
    font-size: 16px;
    line-height: 1.35;
}

.legal-table-wrap[b-rb6vc2ck2u] {
    overflow-x: auto;
    margin-top: 12px;
}

.legal-table[b-rb6vc2ck2u] {
    width: 100%;
    border-collapse: collapse;
    color: #c2c5cc;
    font-size: 14px;
    line-height: 1.5;
}

.legal-table th[b-rb6vc2ck2u],
.legal-table td[b-rb6vc2ck2u] {
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,0.1);
    text-align: left;
    vertical-align: top;
}

.legal-table th[b-rb6vc2ck2u] {
    color: #fff;
    background: rgba(255,255,255,0.04);
}

@media (max-width: 640px) {
    .legal-page[b-rb6vc2ck2u] {
        padding: 56px 18px;
    }

    .legal-card[b-rb6vc2ck2u] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-rb6vc2ck2u] {
        font-size: 34px;
    }
}
/* /Components/Pages/WebsiteTerms.razor.rz.scp.css */
.legal-page[b-sx2g91pib7] {
    padding: 84px 28px;
}

.legal-card[b-sx2g91pib7] {
    max-width: 900px;
    margin: 0 auto;
    padding: 44px 48px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 0%, rgba(51, 147, 96, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(39,49,63,0.72), rgba(30,39,52,0.42));
    box-shadow: 0 24px 70px rgba(0,0,0,0.34);
}

.legal-kicker[b-sx2g91pib7] {
    margin-bottom: 12px;
    color: #8ddb8c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legal-card h1[b-sx2g91pib7] {
    margin: 0 0 18px;
    color: #fff;
    font-size: 44px;
    line-height: 1.08;
}

.legal-lede[b-sx2g91pib7],
.legal-section p[b-sx2g91pib7],
.legal-section li[b-sx2g91pib7],
.legal-updated[b-sx2g91pib7] {
    color: #c2c5cc;
    font-size: 16px;
    line-height: 1.66;
}

.legal-lede[b-sx2g91pib7] {
    margin-bottom: 28px;
}

.legal-warning[b-sx2g91pib7] {
    margin: 0 0 28px;
    padding: 16px 18px;
    color: #f3d8a7;
    border: 1px solid rgba(232, 176, 77, .35);
    border-radius: 12px;
    background: rgba(117, 76, 16, .18);
    line-height: 1.55;
}

.legal-section[b-sx2g91pib7] {
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.legal-section h2[b-sx2g91pib7] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.legal-section p[b-sx2g91pib7] {
    margin: 0 0 12px;
}

.legal-section p:last-child[b-sx2g91pib7] {
    margin-bottom: 0;
}

.legal-section ul[b-sx2g91pib7] {
    margin: 10px 0 0;
    padding-left: 22px;
}

.legal-section li + li[b-sx2g91pib7] {
    margin-top: 8px;
}

.legal-section a[b-sx2g91pib7],
.legal-card a[b-sx2g91pib7] {
    color: #8ddb8c;
}

.legal-card code[b-sx2g91pib7] {
    color: #d9e1e8;
    overflow-wrap: anywhere;
}

.legal-updated[b-sx2g91pib7] {
    margin: 8px 0 0;
    color: #8b95a3;
    font-size: 13px;
}

.legal-section h3[b-sx2g91pib7] {
    margin: 16px 0 6px;
    color: #e8edf2;
    font-size: 16px;
    line-height: 1.35;
}

.legal-table-wrap[b-sx2g91pib7] {
    overflow-x: auto;
    margin-top: 12px;
}

.legal-table[b-sx2g91pib7] {
    width: 100%;
    border-collapse: collapse;
    color: #c2c5cc;
    font-size: 14px;
    line-height: 1.5;
}

.legal-table th[b-sx2g91pib7],
.legal-table td[b-sx2g91pib7] {
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,0.1);
    text-align: left;
    vertical-align: top;
}

.legal-table th[b-sx2g91pib7] {
    color: #fff;
    background: rgba(255,255,255,0.04);
}

@media (max-width: 640px) {
    .legal-page[b-sx2g91pib7] {
        padding: 56px 18px;
    }

    .legal-card[b-sx2g91pib7] {
        padding: 32px 24px;
        border-radius: 14px;
    }

    .legal-card h1[b-sx2g91pib7] {
        font-size: 34px;
    }
}
